/* Cup of Air — homepage section cohesion
   Scoped to body.coa-home (set in templates/flex/index.php). */

body.coa-home {
	--coa-hp-navy: #013a58;
	--coa-hp-teal: #0b8b91;
	--coa-hp-accent: #73c3c4;
	--coa-hp-body: #5a6f7c;
	--coa-hp-mist: #f4f8fb;
	--coa-hp-mist-2: #eef5f8;
	--coa-hp-wrap: 1180px;
	--coa-hp-pad-y: clamp(48px, 6vw, 72px);
}

/* ——— Shared section titles ——— */
body.coa-home .sp-page-builder .page-content .sppb-title-heading,
body.coa-home .sp-page-builder .page-content .sppb-addon-articles .sppb-addon-title,
body.coa-home .coa-ben-title {
	font-family: "Sofia Sans", "Segoe UI", sans-serif !important;
	font-size: clamp(28px, 3.2vw, 36px) !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: var(--coa-hp-navy) !important;
	letter-spacing: 0;
}

body.coa-home .sp-page-builder .page-content .sppb-title-subheading {
	font-family: "Sofia Sans", "Segoe UI", sans-serif;
	font-size: 17px !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
	color: var(--coa-hp-body) !important;
	max-width: 65ch;
	margin-left: auto;
	margin-right: auto;
}

body.coa-home .sp-page-builder .page-content .sppb-section-title {
	margin-bottom: 36px !important;
}

/* Dark solutions band — white titles */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-solutions .sppb-title-heading {
	color: #fff !important;
}

body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-solutions .sppb-title-subheading {
	color: rgba(255, 255, 255, 0.85) !important;
}

/* ——— Mist bands ——— */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-models,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-compare,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-articles {
	background-color: var(--coa-hp-mist) !important;
	background-image: linear-gradient(180deg, var(--coa-hp-mist) 0%, var(--coa-hp-mist-2) 100%) !important;
}

/* Content width helper */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-models .sppb-row-container,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-compare .sppb-row-container,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-articles .sppb-row-container,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-solutions .sppb-row-container,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-models .sppb-container-inner,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-compare .sppb-container-inner,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-articles .sppb-container-inner,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-solutions .sppb-container-inner {
	max-width: var(--coa-hp-wrap) !important;
	width: min(var(--coa-hp-wrap), calc(100% - 48px)) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Models */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-models {
	padding: var(--coa-hp-pad-y) 0 !important;
}

/* Compare — continues benefits mist; tighter top join */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-compare {
	padding: 28px 0 var(--coa-hp-pad-y) !important;
}

body.coa-home .compare-table-wrap {
	width: 100%;
	max-width: var(--coa-hp-wrap);
	margin: 0 auto;
	padding: 0;
}

/* Articles */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-articles {
	padding: var(--coa-hp-pad-y) 0 !important;
}

/* Solutions navy — keep dark; normalize pad/width */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-solutions {
	padding: var(--coa-hp-pad-y) 0 !important;
}

/* How-it-works / why-choose — white bands, consistent vertical pad */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-how,
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-why {
	padding-top: var(--coa-hp-pad-y) !important;
	padding-bottom: var(--coa-hp-pad-y) !important;
}

/* Button under how-it-works (separate SPPB section) */
body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-how-cta {
	padding-top: 8px !important;
	padding-bottom: 40px !important;
}

/* ——— Homepage primary CTAs → coa-btn feel ——— */
body.coa-home .sp-page-builder .page-content .sppb-btn.sppb-btn-custom {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 12px 22px !important;
	border-radius: 10px !important;
	border: 2px solid transparent !important;
	font-family: "Sofia Sans", "Segoe UI", sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.01em;
	background-color: var(--coa-hp-navy) !important;
	color: #fff !important;
	box-shadow: 0 8px 20px rgba(1, 58, 88, 0.18);
	transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

body.coa-home .sp-page-builder .page-content .sppb-btn.sppb-btn-custom:hover,
body.coa-home .sp-page-builder .page-content .sppb-btn.sppb-btn-custom:focus {
	background-color: #012a40 !important;
	color: #fff !important;
	transform: translateY(-1px);
	box-shadow: 0 10px 24px rgba(1, 58, 88, 0.22);
}

/* Benefits joins compare */
body.coa-home .coa-ben {
	padding-bottom: 40px;
	background: linear-gradient(180deg, #f7fafb 0%, var(--coa-hp-mist-2) 100%);
}

body.coa-home .coa-ben-title {
	font-family: "Sofia Sans", "Segoe UI", sans-serif !important;
}

@media (max-width: 991px) {
	body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-models .sppb-row-container,
	body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-compare .sppb-row-container,
	body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-articles .sppb-row-container,
	body.coa-home .sp-page-builder .page-content > .sppb-section.coa-hp-solutions .sppb-row-container {
		width: min(var(--coa-hp-wrap), calc(100% - 32px)) !important;
	}
}
