/* ==========================================================================
   Body Language Insights Page - Page Banner (title + breadcrumb)
   ========================================================================== */
.page-banner{
	position:relative;
	padding-top:calc(var(--header-height) + 70px);
	padding-bottom:60px;
	background-color:var(--color-bg-soft);
	background-image:var(--page-banner-bg);
	background-size:cover;
	background-position:top;
	overflow:hidden;
}

.page-banner__inner{
	position:relative;
	z-index:2;
}

.page-banner__breadcrumb{
	font-family:var(--font-body);
	font-size:14px;
	margin-bottom:16px;
}

.page-banner__breadcrumb a{
	color:var(--color-text-muted);
	transition:color .25s ease;
}

.page-banner__breadcrumb a:hover{
	color:var(--color-gold-dark);
}

.page-banner__separator{
	margin:0 8px;
	color:var(--color-text-muted);
}

.page-banner__current{
	color:var(--color-gold-dark);
	font-weight:600;
}

.page-banner__title{
	font-family:var(--font-heading);
	font-size:clamp(34px, 4.4vw, 28px);
	font-weight:600;
	line-height:1.15;
	color:var(--color-black);
	margin:0;
}

/* ==========================================================================
   Responsive - Page Banner
   ========================================================================== */
@media (max-width: 768px){

	.page-banner{
		padding-top:calc(var(--header-height) + 40px);
		padding-bottom:44px;
	}
}


/* ==========================================================================
   Body Language Insights Page - Service Hero
   ========================================================================== */
.service-hero{
	background:var(--color-bg);
	padding:60px 0;
	overflow:hidden;
}

.service-hero__inner{
	display:grid;
	grid-template-columns:0.62fr 1fr;
	align-items:center;
	gap:70px;
}

.service-hero__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.service-hero__heading{
	font-family:var(--font-heading);
	font-size:clamp(30px, 3.4vw, 42px);
	font-weight:600;
	line-height:1.18;
	color:var(--color-black);
	margin:0 0 22px;
}

.service-hero__desc{
	font-family:var(--font-body);
	font-size:16.5px;
	line-height:1.8;
	color:var(--color-text-muted);
	max-width:600px;
	margin:0 0 34px;
}

.service-hero__btn{
	display:inline-flex;
}

.service-hero__image{
	max-width:420px;
}

.service-hero__image img{
	width:100%;
	aspect-ratio:4 / 5;
	object-fit:cover;
	border-radius:4px;
}

/* ==========================================================================
   Responsive - Service Hero
   ========================================================================== */
@media (max-width: 1024px){

	.service-hero{
		padding:70px 0;
	}

	.service-hero__inner{
		gap:48px;
	}
}

@media (max-width: 900px){

	.service-hero__inner{
		grid-template-columns:1fr;
	}

	.service-hero__image{
		max-width:340px;
		margin:0 auto;
	}

	.service-hero__desc{
		max-width:100%;
	}
}

@media (max-width: 480px){

	.service-hero{
		padding:56px 0;
	}

	.service-hero__btn{
		width:100%;
		text-align:center;
	}
}

/* ==========================================================================
   Body Language Insights Page - Who This Is For
   ========================================================================== */
.who-its-for{
	background:var(--color-bg-soft);
	padding:60px 0;
}

.who-its-for__head{
	text-align:center;
	max-width:620px;
	margin:0 auto 56px;
}

.who-its-for__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.who-its-for__heading{
	font-family:var(--font-heading);
	font-size:clamp(28px, 3.2vw, 40px);
	font-weight:600;
	color:var(--color-black);
	margin:0;
}

.who-its-for__grid{
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:2px;
	background:var(--color-border);
	border:1px solid var(--color-border);
	border-radius:6px;
	overflow:hidden;
}

.audience-card{
	position:relative;
	background:var(--color-bg);
	padding:38px 30px;
	transition:background .35s ease;
}

.audience-card:hover{
	background:#fff;
}

.audience-card__index{
	display:block;
	font-family:var(--font-heading);
	font-size:34px;
	font-weight:600;
	color:var(--color-border);
	margin-bottom:18px;
	transition:color .35s ease;
	line-height:1;
}

.audience-card:hover .audience-card__index{
	color:var(--color-gold);
}

.audience-card__title{
	font-family:var(--font-heading);
	font-size:18.5px;
	font-weight:600;
	color:var(--color-black);
	margin:0 0 10px;
	line-height:1.32;
}

.audience-card__desc{
	font-family:var(--font-body);
	font-size:14.5px;
	line-height:1.7;
	color:var(--color-text-muted);
	margin:0;
}

/* ==========================================================================
   Responsive - Who This Is For
   ========================================================================== */
@media (max-width: 1024px){

	.who-its-for{
		padding:70px 0;
	}

	.who-its-for__grid{
		grid-template-columns:repeat(2, 1fr);
	}
}

@media (max-width: 600px){

	.who-its-for__head{
		margin-bottom:40px;
	}

	.who-its-for__grid{
		grid-template-columns:1fr;
	}

	.audience-card{
		padding:32px 26px;
	}
}

@media (max-width: 480px){

	.who-its-for{
		padding:56px 0;
	}
}


/* ==========================================================================
   Body Language Insights Page - What You'll Learn / Core Areas
   ========================================================================== */
.core-areas{
	background:var(--color-bg);
	padding:60px 0;
}

.core-areas__head{
	text-align:center;
	max-width:620px;
	margin:0 auto 56px;
}

.core-areas__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.core-areas__heading{
	font-family:var(--font-heading);
	font-size:clamp(28px, 3.2vw, 40px);
	font-weight:600;
	color:var(--color-black);
	margin:0 0 16px;
}

.core-areas__intro{
	font-family:var(--font-body);
	font-size:16px;
	line-height:1.75;
	color:var(--color-text-muted);
	margin:0;
}

.core-areas__grid{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:24px;
}

.core-area-card{
	background:var(--color-bg-soft);
	border:1px solid var(--color-border);
	border-radius:10px;
	padding:34px 32px;
	transition:border-color .35s ease, transform .35s ease, box-shadow .35s ease;
}

.core-area-card:hover{
	border-color:var(--color-gold);
	transform:translateY(-6px);
	box-shadow:0 20px 40px rgba(17,17,17,0.08);
}

.core-area-card__top{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:22px;
}

.core-area-card__icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:50px;
	height:50px;
	border-radius:50%;
	background:var(--color-bg);
	transition:background .35s ease, transform .35s ease;
}

.core-area-card__icon img{
	width:50px;
	height:50px;
	object-fit:contain;
}

/*.core-area-card:hover .core-area-card__icon{*/
/*	background:var(--color-black);*/
/*	color:var(--color-gold);*/
/*}*/

.core-area-card__index{
	font-family:var(--font-heading);
	font-size:28px;
	font-weight:600;
	color:var(--color-border);
	line-height:1;
}

.core-area-card__title{
	font-family:var(--font-heading);
	font-size:20px;
	font-weight:600;
	color:var(--color-black);
	margin:0 0 10px;
	line-height:1.3;
}

.core-area-card__desc{
	font-family:var(--font-body);
	font-size:14.5px;
	line-height:1.7;
	color:var(--color-text-muted);
	margin:0 0 20px;
}

.core-area-card__points{
	list-style:none;
	margin:0;
	padding:18px 0 0;
	border-top:1px solid var(--color-border);
	display:flex;
	flex-direction:column;
	gap:10px;
}

.core-area-card__points li{
	display:flex;
	align-items:flex-start;
	gap:10px;
	font-family:var(--font-body);
	font-size:14px;
	line-height:1.5;
	color:var(--color-text);
}

.core-area-card__points li svg{
	flex-shrink:0;
	margin-top:3px;
	color:var(--color-gold-dark);
}

/* ==========================================================================
   Responsive - What You'll Learn
   ========================================================================== */
@media (max-width: 1024px){

	.core-areas{
		padding:70px 0;
	}
}

@media (max-width: 760px){

	.core-areas__head{
		margin-bottom:40px;
	}

	.core-areas__grid{
		grid-template-columns:1fr;
		gap:18px;
	}
}

@media (max-width: 480px){

	.core-areas{
		padding:56px 0;
	}

	.core-area-card{
		padding:28px 24px;
	}
}

/* ==========================================================================
   Body Language Insights Page - Format Options
   ========================================================================== */
.format-options{
	background:var(--color-bg-soft);
	padding:60px 0;
}

.format-options__head{
	text-align:center;
	max-width:620px;
	margin:0 auto 56px;
}

.format-options__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.format-options__heading{
	font-family:var(--font-heading);
	font-size:clamp(28px, 3.2vw, 40px);
	font-weight:600;
	color:var(--color-black);
	margin:0;
}

.format-options__grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:28px;
	align-items:stretch;
}

.format-card{
	position:relative;
	display:flex;
	flex-direction:column;
	background:var(--color-bg);
	border:1px solid var(--color-border);
	border-radius:10px;
	padding:36px 30px;
	transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.format-card:hover{
	transform:translateY(-6px);
	box-shadow:0 22px 42px rgba(17,17,17,0.1);
}

.format-card--featured{
	border-color:var(--color-gold);
	background:var(--color-bg);
}

.format-card__badge{
	position:absolute;
	top:-13px;
	left:30px;
	background:var(--color-gold);
	color:var(--color-black);
	font-family:var(--font-heading);
	font-size:12px;
	font-weight:700;
	letter-spacing:0.04em;
	text-transform:uppercase;
	padding:5px 14px;
	border-radius:20px;
}

.format-card__icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:56px;
	height:56px;
	border-radius:50%;
	background:var(--color-bg-soft);
	margin-bottom:22px;
	transition:background .35s ease;
}

/*.format-card:hover .format-card__icon{*/
/*	background:var(--color-black);*/
/*}*/

.format-card__icon img{
	width:50px;
	height:50px;
	object-fit:contain;
}

.format-card__title{
	font-family:var(--font-heading);
	font-size:20px;
	font-weight:600;
	color:var(--color-black);
	margin:0 0 10px;
}

.format-card__desc{
	font-family:var(--font-body);
	font-size:14.5px;
	line-height:1.7;
	color:var(--color-text-muted);
	margin:0 0 22px;
}

.format-card__points{
	list-style:none;
	margin:0 0 26px;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:10px;
	flex:1;
}

.format-card__points li{
	display:flex;
	align-items:flex-start;
	gap:10px;
	font-family:var(--font-body);
	font-size:14px;
	line-height:1.5;
	color:var(--color-text);
}

.format-card__points li svg{
	flex-shrink:0;
	margin-top:3px;
	color:var(--color-gold-dark);
}

.format-card__link{
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-family:var(--font-heading);
	font-size:14.5px;
	font-weight:600;
	color:var(--color-black);
	padding-top:20px;
	border-top:1px solid var(--color-border);
}

.format-card__link svg{
	transition:transform .3s ease;
}

.format-card:hover .format-card__link svg{
	transform:translateX(4px);
}

/* ==========================================================================
   Responsive - Format Options
   ========================================================================== */
@media (max-width: 1024px){

	.format-options{
		padding:70px 0;
	}

	.format-options__grid{
		grid-template-columns:1fr;
		max-width:460px;
		margin:0 auto;
		gap:24px;
	}
}

@media (max-width: 480px){

	.format-options{
		padding:56px 0;
	}

	.format-card{
		padding:30px 24px;
	}
}

/* ==========================================================================
   Body Language Insights Page - Benefits / Outcomes
   ========================================================================== */
.benefits{
	background:var(--color-bg);
	padding:60px 0;
}

.benefits__head{
	text-align:center;
	max-width:620px;
	margin:0 auto 56px;
}

.benefits__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.benefits__heading{
	font-family:var(--font-heading);
	font-size:clamp(28px, 3.2vw, 40px);
	font-weight:600;
	color:var(--color-black);
	margin:0;
}

.benefits__grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:28px;
}

.benefit-card{
	background:var(--color-bg-soft);
	border:1px solid var(--color-border);
	border-radius:8px;
	padding:32px 28px;
	transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.benefit-card:hover{
	transform:translateY(-6px);
	box-shadow:0 20px 40px rgba(17,17,17,0.1);
	border-color:transparent;
}

.benefit-card__icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:52px;
	height:52px;
	border-radius:50%;
	background:var(--color-bg);
	margin-bottom:20px;
	transition:background .35s ease, transform .35s ease;
}

/*.benefit-card:hover .benefit-card__icon{*/
/*	background:var(--color-black);*/
/*	transform:scale(1.06);*/
/*}*/

.benefit-card__icon img{
	width:50px;
	height:50px;
	object-fit:contain;
}

.benefit-card__title{
	font-family:var(--font-heading);
	font-size:18.5px;
	font-weight:600;
	color:var(--color-black);
	margin:0 0 10px;
	line-height:1.32;
}

.benefit-card__desc{
	font-family:var(--font-body);
	font-size:14.5px;
	line-height:1.7;
	color:var(--color-text-muted);
	margin:0;
}

/* ==========================================================================
   Responsive - Benefits / Outcomes
   ========================================================================== */
@media (max-width: 1024px){

	.benefits{
		padding:70px 0;
	}

	.benefits__grid{
		grid-template-columns:repeat(2, 1fr);
	}
}

@media (max-width: 600px){

	.benefits__head{
		margin-bottom:40px;
	}

	.benefits__grid{
		grid-template-columns:1fr;
		gap:20px;
	}
}

@media (max-width: 480px){

	.benefits{
		padding:56px 0;
	}

	.benefit-card{
		padding:26px 24px;
	}
}


/* ==========================================================================
   Body Language Insights Page - Process / How It Works
   Horizontal numbered flow with connector lines on desktop.
   ========================================================================== */
.process{
	background:var(--color-bg-soft);
	padding:60px 0;
}

.process__head{
	text-align:center;
	max-width:620px;
	margin:0 auto 64px;
}

.process__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.process__heading{
	font-family:var(--font-heading);
	font-size:clamp(28px, 3.2vw, 40px);
	font-weight:600;
	color:var(--color-black);
	margin:0;
}

.process__track{
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:32px;
}

.process-step__top{
	display:flex;
	align-items:center;
	margin-bottom:22px;
}

.process-step__number{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
	width:52px;
	height:52px;
	border-radius:50%;
	background:var(--color-black);
	color:var(--color-gold);
	font-family:var(--font-heading);
	font-size:16px;
	font-weight:700;
	letter-spacing:0.02em;
}

.process-step__line{
	flex:1 1 auto;
	height:1px;
	background:var(--color-border);
	margin-left:16px;
}

.process-step__title{
	font-family:var(--font-heading);
	font-size:18.5px;
	font-weight:600;
	color:var(--color-black);
	margin:0 0 10px;
	line-height:1.32;
}

.process-step__desc{
	font-family:var(--font-body);
	font-size:14.5px;
	line-height:1.7;
	color:var(--color-text-muted);
	margin:0;
}

/* ==========================================================================
   Responsive - Process / How It Works
   ========================================================================== */
@media (max-width: 1024px){

	.process{
		padding:70px 0;
	}

	.process__track{
		grid-template-columns:repeat(2, 1fr);
		row-gap:44px;
	}

	.process-step__line{
		display:none;
	}
}

@media (max-width: 600px){

	.process__head{
		margin-bottom:44px;
	}

	.process__track{
		grid-template-columns:1fr;
		row-gap:36px;
	}
}

@media (max-width: 480px){

	.process{
		padding:56px 0;
	}

	.process-step__number{
		width:46px;
		height:46px;
		font-size:15px;
	}
}


/* ==========================================================================
   Body Language Insights Page - Testimonials / Social Proof (Carousel)
   Same design as the home/clarity mentoring pages.
   ========================================================================== */
.testimonials{
	background:var(--color-bg);
	padding:60px 0;
}

.testimonials__head{
	text-align:center;
	max-width:600px;
	margin:0 auto 56px;
}

.testimonials__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.testimonials__heading{
	font-family:var(--font-heading);
	font-size:clamp(28px, 3.2vw, 40px);
	font-weight:600;
	color:var(--color-black);
	margin:0;
}

.testimonials__carousel{
	position:relative;
}

.testimonials__track{
	display:flex;
	gap:28px;
	overflow-x:auto;
	scroll-snap-type:x mandatory;
	scroll-behavior:smooth;
	-webkit-overflow-scrolling:touch;
	padding-bottom:4px;
	scrollbar-width:none;
	-ms-overflow-style:none;
}

.testimonials__track::-webkit-scrollbar{
	display:none;
}

.testimonial-card{
	flex:0 0 calc((100% - 56px) / 3);
	scroll-snap-align:start;
	background:var(--color-bg-soft);
	border:1px solid var(--color-border);
	border-radius:6px;
	padding:38px 32px;
	display:flex;
	flex-direction:column;
	transition:transform .35s ease, box-shadow .35s ease;
}

.testimonial-card:hover{
	transform:translateY(-6px);
}

.testimonial-card__quote-icon{
	color:var(--color-gold);
	margin-bottom:18px;
}

.testimonial-card__rating{
	display:flex;
	gap:4px;
	color:var(--color-gold);
	margin-bottom:16px;
}

.testimonial-card__quote{
	font-family:var(--font-body);
	font-size:15.5px;
	line-height:1.8;
	color:var(--color-text);
	margin:0 0 28px;
	flex:1;
}

.testimonial-card__author{
	display:flex;
	align-items:center;
	gap:14px;
	padding-top:22px;
	border-top:1px solid var(--color-border);
}

.testimonial-card__avatar{
	width:48px;
	height:48px;
	border-radius:50%;
	object-fit:cover;
	flex-shrink:0;
}

.testimonial-card__author-info{
	display:flex;
	flex-direction:column;
}

.testimonial-card__name{
	font-family:var(--font-heading);
	font-size:16px;
	font-weight:600;
	color:var(--color-black);
}

.testimonial-card__role{
	font-family:var(--font-body);
	font-size:13px;
	color:var(--color-text-muted);
}

.testimonials__nav{
	display:flex;
	justify-content:center;
	gap:16px;
	margin-top:36px;
}

.testimonials__arrow{
	width:48px;
	height:48px;
	border-radius:50%;
	border:1px solid var(--color-border);
	background:var(--color-bg);
	color:var(--color-black);
	display:flex;
	align-items:center;
	justify-content:center;
	transition:background .3s ease, border-color .3s ease, color .3s ease;
}

.testimonials__arrow:hover:not(:disabled){
	background:var(--color-black);
	border-color:var(--color-black);
	color:var(--color-gold);
}

.testimonials__arrow:disabled{
	opacity:0.35;
	cursor:not-allowed;
}

/* ==========================================================================
   Responsive - Testimonials Carousel
   ========================================================================== */
@media (max-width: 1024px){

	.testimonials{
		padding:70px 0;
	}

	.testimonial-card{
		flex:0 0 calc((100% - 28px) / 2);
	}
}

@media (max-width: 700px){

	.testimonials__head{
		margin-bottom:40px;
	}

	.testimonial-card{
		flex:0 0 85%;
		padding:28px 24px;
	}
}

@media (max-width: 480px){

	.testimonials{
		padding:56px 0;
	}

	.testimonial-card{
		flex:0 0 92%;
	}
}


/* ==========================================================================
   Body Language Insights Page - FAQ
   Native <details>/<summary> accordion, no JS required.
   ========================================================================== */
.faq{
	background:var(--color-bg-soft);
	padding:60px 0;
}

.faq__head{
	text-align:center;
	max-width:620px;
	margin:0 auto 48px;
}

.faq__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 12px;
}

.faq__heading{
	font-family:var(--font-heading);
	font-size:clamp(28px, 3.2vw, 40px);
	font-weight:600;
	color:var(--color-black);
	margin:0;
}

.faq__list{
	max-width:800px;
	margin:0 auto;
	display:flex;
	flex-direction:column;
	gap:14px;
}

.faq-item{
	background:var(--color-bg);
	border:1px solid var(--color-border);
	border-radius:8px;
	overflow:hidden;
	transition:border-color .3s ease;
}

.faq-item[open]{
	border-color:var(--color-gold);
}

.faq-item__question{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	padding:22px 26px;
	cursor:pointer;
	font-family:var(--font-heading);
	font-size:17px;
	font-weight:600;
	color:var(--color-black);
	list-style:none;
	-webkit-tap-highlight-color:transparent;
}

.faq-item__question::-webkit-details-marker{
	display:none;
}

.faq-item__icon{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
	width:30px;
	height:30px;
	border-radius:50%;
	background:var(--color-bg-soft);
	border:1px solid var(--color-border);
	color:var(--color-gold-dark);
	transition:background .3s ease, color .3s ease, transform .3s ease;
}

.faq-item[open] .faq-item__icon{
	background:var(--color-black);
	color:var(--color-gold);
	transform:rotate(45deg);
}

.faq-item__answer{
	padding:0 26px 24px;
}

.faq-item__answer p{
	font-family:var(--font-body);
	font-size:15px;
	line-height:1.75;
	color:var(--color-text-muted);
	margin:0;
	max-width:640px;
}

/* Smooth open/close animation */
.faq-item__answer{
	animation:faq-fade-in .3s ease;
}

@keyframes faq-fade-in{
	from{ opacity:0; transform:translateY(-6px); }
	to{ opacity:1; transform:translateY(0); }
}

/* ==========================================================================
   Responsive - FAQ
   ========================================================================== */
@media (max-width: 768px){

	.faq{
		padding:70px 0;
	}

	.faq__head{
		margin-bottom:40px;
	}
}

@media (max-width: 480px){

	.faq{
		padding:56px 0;
	}

	.faq-item__question{
		padding:18px 20px;
		font-size:15.5px;
		gap:14px;
	}

	.faq-item__answer{
		padding:0 20px 20px;
	}

	.faq-item__icon{
		width:26px;
		height:26px;
	}
}


/* ==========================================================================
   Body Language Insights Page - CTA Banner (Book a Call)
   Same background image, white overlay, and styling as home/about/clarity mentoring.
   No bottom padding — sits flush against the footer directly below it.
   ========================================================================== */
.cta-banner{
	position:relative;
	padding:120px 0 60px;
	overflow:hidden;
	text-align:center;
}

.cta-banner__bg{
	position:absolute;
	inset:0;
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
	background-attachment:fixed;
	z-index:1;
}

.cta-banner__overlay{
	position:absolute;
	inset:0;
	background:linear-gradient(180deg, rgba(255,255,255,0.88) 0%, rgba(255,255,255,0.94) 100%);
	z-index:2;
}

.cta-banner__inner{
	position:relative;
	z-index:3;
	max-width:680px;
	margin:0 auto;
}

.cta-banner__eyebrow{
	font-family:var(--font-heading);
	font-size:14px;
	font-weight:400;
	letter-spacing:0.22em;
	text-transform:uppercase;
	color:var(--color-gold-dark);
	margin:0 0 14px;
}

.cta-banner__heading{
	font-family:var(--font-heading);
	font-size:clamp(30px, 4vw, 46px);
	font-weight:600;
	line-height:1.2;
	color:var(--color-black);
	margin:0 0 20px;
}

.cta-banner__desc{
	font-family:var(--font-body);
	font-size:16.5px;
	line-height:1.75;
	color:var(--color-text-muted);
	margin:0 0 38px;
}

.cta-banner__btn{
	display:inline-flex;
	background:var(--color-gold);
	border-color:var(--color-gold);
	color:var(--color-black);
}

.cta-banner__btn:hover{
	background:var(--color-black);
	border-color:var(--color-gold);
	color:#fff;
}

/* ==========================================================================
   Responsive - CTA Banner
   ========================================================================== */
@media (max-width: 768px){

	.cta-banner{
		padding:90px 0 44px;
	}

	.cta-banner__bg{
		background-position:63%;
	}

	.cta-banner__overlay{
		opacity:0.9;
	}
}

@media (max-width: 480px){

	.cta-banner{
		padding:70px 0 36px;
	}

	.cta-banner__desc{
		font-size:15px;
	}

	.cta-banner__btn{
		width:100%;
		text-align:center;
	}

	.cta-banner__bg{
		background-position:63%;
	}

	.cta-banner__overlay{
		opacity:0.9;
	}
}