/*
 * TIS Call To Action. Desktop: Figma frame 1672 x 941 on #001426 — copy + buttons + benefits on the left,
 * a 747 x 738 photo bleeding off the right edge.
 */

.tis-cta {
	background: #001426;
	color: #fff;
	overflow: hidden;
}

.tis-cta__inner {
	position: relative;
	padding-right: 0;
	padding-left: calc(82 * var(--tis-u));
}

.tis-cta__photo {
	--fl: 52%;
	--fb: 18%;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
	width: calc(800 * var(--tis-u));
	height: calc(738 * var(--tis-u));
	overflow: hidden;
}

.tis-cta__photo .tis-cta__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tis-cta__fade {
	--tis-fade: #001426;
	position: absolute;
	top: calc(155 * var(--tis-u));
	right: calc(693 * var(--tis-u));
	z-index: 1;
	width: calc(180 * var(--tis-u));
	height: calc(366 * var(--tis-u));
	background: linear-gradient(90deg, var(--tis-fade) 0%, transparent 100%);
	pointer-events: none;
}

.tis-cta__content {
	position: relative;
	z-index: 2;
	max-width: calc(880 * var(--tis-u));
}

.tis-cta__eyebrow { color: #98bff7; }
.tis-cta__eyebrow .tis-eyebrow__line { width: calc(83 * var(--tis-u)); background: var(--tis-primary); }

.tis-cta__title {
	margin: calc(24.6 * var(--tis-u)) 0 0 calc(-4 * var(--tis-u));
	font-family: var(--tis-font-display);
	font-size: max(32px, calc(73 * var(--tis-u)));
	font-weight: 900;
	line-height: 1.06;
	color: #fff;
}

.tis-cta__text {
	max-width: calc(750 * var(--tis-u));
	margin-top: calc(27.2 * var(--tis-u));
	font-size: max(16px, calc(23 * var(--tis-u)));
	font-weight: 400;
	line-height: 1.5;
	color: #cfd6e4;
}

.tis-cta__text p { margin: 0 0 0.5em; }
.tis-cta__text p:last-child { margin-bottom: 0; }

.tis-cta__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: calc(28 * var(--tis-u));
	margin-top: var(--tis-gap);
}

.tis-cta__btn {
	min-height: calc(78 * var(--tis-u));
	border-radius: calc(12 * var(--tis-u));
	font-size: max(15px, calc(21 * var(--tis-u)));
}

.tis-cta__btn--primary { min-width: calc(342 * var(--tis-u)); padding: 0 calc(24 * var(--tis-u)); }

.tis-cta__btn--secondary {
	min-width: calc(262 * var(--tis-u));
	padding: 0 calc(24 * var(--tis-u));
	border: 1.3px solid #fff;
	background: rgba(0, 20, 38, 0.19);
}

.tis-cta__btn--secondary:hover,
.tis-cta__btn--secondary:focus-visible { background: #fff; color: #001426; box-shadow: none; }

/* Benefits */
.tis-cta__benefits {
	display: grid;
	grid-template-columns: var(--tis-cols, repeat(4, auto));
	align-items: start;
	margin: var(--tis-gap) 0 0;
	padding: 0;
	list-style: none;
}

.tis-cta__benefit { display: flex; align-items: flex-start; gap: calc(27 * var(--tis-u)); }

.tis-cta__benefit-icon {
	width: max(54px, calc(82 * var(--tis-u)));
	height: max(54px, calc(82 * var(--tis-u)));
	background: #062348;
	color: #a9c4ff;
}

.tis-cta__benefit-icon svg {
	width: max(28px, calc(43 * var(--tis-u)));
	height: max(28px, calc(43 * var(--tis-u)));
}

.tis-cta__benefit-copy { display: flex; flex-direction: column; margin-top: calc(9 * var(--tis-u)); }

.tis-cta__benefit-title {
	font-size: max(16px, calc(23 * var(--tis-u)));
	font-weight: 600;
	line-height: 1.4;
	color: #fff;
}

.tis-cta__benefit-text {
	margin-top: calc(2.6 * var(--tis-u));
	font-size: max(14px, calc(19 * var(--tis-u)));
	font-weight: 400;
	line-height: 1.4;
	color: #ced9ed;
}

/* ---------------------------------------------------------------------
 * Tablet
 * ------------------------------------------------------------------ */
@media (max-width: 1024px) {
	.tis-cta__inner { display: flex; flex-direction: column; padding-left: var(--tis-gutter); padding-right: var(--tis-gutter); }
	.tis-cta__content { order: 1; max-width: none; }
	.tis-cta__title { margin: 14px 0 0; font-size: 54px; }
	.tis-cta__text { max-width: 680px; margin-top: 20px; font-size: 19px; }
	.tis-cta__actions { margin-top: var(--tis-gap); gap: 16px; }
	.tis-cta__btn { min-height: 58px; font-size: 17px; }
	.tis-cta__btn--primary,
	.tis-cta__btn--secondary { min-width: 0; padding: 0 32px; }
	.tis-cta__photo { --fl: 0%; --ft: 30%; --fb: 18%; position: relative; order: 2; width: calc(100% + 2 * var(--tis-gutter)); height: clamp(280px, 56vw, 460px); margin: 44px calc(-1 * var(--tis-gutter)) 0; }
	.tis-cta__fade { display: none; }
	.tis-cta__benefits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; margin-top: var(--tis-gap); }
	.tis-cta__content .tis-cta__benefits { order: 3; }
	.tis-cta__benefit { gap: 18px; }
	.tis-cta__benefit-icon { width: 64px; height: 64px; }
	.tis-cta__benefit-icon svg { width: 32px; height: 32px; }
	.tis-cta__benefit-copy { margin-top: 6px; }
	.tis-cta__benefit-title { font-size: 19px; }
	.tis-cta__benefit-text { font-size: 16px; }
}

/* ---------------------------------------------------------------------
 * Mobile
 * ------------------------------------------------------------------ */
@media (max-width: 767px) {
	.tis-cta__title { font-size: 36px; }
	.tis-cta__text { font-size: 16px; }
	.tis-cta__actions { flex-direction: column; align-items: stretch; }
	.tis-cta__btn--primary,
	.tis-cta__btn--secondary { width: 100%; }
	.tis-cta__photo { height: clamp(220px, 64vw, 320px); }
	.tis-cta__benefits { grid-template-columns: 1fr 1fr; gap: 22px 14px; }
	.tis-cta__benefit { gap: 12px; }
	.tis-cta__benefit-icon { width: 52px; height: 52px; }
	.tis-cta__benefit-icon svg { width: 26px; height: 26px; }
	.tis-cta__benefit-title { font-size: 16px; }
	.tis-cta__benefit-text { font-size: 14px; }
}
