/**
 * Est. 1973 city-hub-family component layer (Wave 3.2).
 *
 * Re-skins the EXISTING city-hub DOM (partials/masthead.php + the ACF
 * flexible-content blocks authored on /service-areas/{city}/ pages, plus
 * the mu-plugin-injected trust-bar/answer/local-map/growth/depth/intent/
 * review/link-mesh/captain/NAP sections) onto the Est. 1973 tokens. No
 * content, heading text, or links are introduced by this file — the only
 * new markup it styles is the additive masthead kicker/seal
 * (partials/masthead.php), which is purely decorative, per the SEO-freeze
 * addendum.
 *
 * Scoped under body.ccs-est1973 AND only enqueued on
 * ccs_is_city_hub_family() requests (see ccs-est1973-flag.php), so this
 * never reaches service/combo/blog/booking/offers pages before their own
 * wave.
 */

body.ccs-est1973.page-template-default,
body.ccs-est1973 main#main {
	background: var(--e73-cream);
}

/* ---- trust bar ---- */
body.ccs-est1973 .ccs-trust-bar {
	background: var(--e73-dark);
	font-family: var(--e73-font-slab);
	letter-spacing: .04em;
}

body.ccs-est1973 .ccs-trust-bar__icon {
	color: var(--e73-butter);
}

body.ccs-est1973 .ccs-trust-bar__divider {
	color: rgba(255, 250, 238, .3);
}

/* ---- masthead (duplicated from the critical-CSS variant so the
   non-inlined properties still apply after the full sheet loads) ---- */
body.ccs-est1973 .masthead--innerpage {
	background: var(--e73-dark);
	border-bottom: 3px double var(--e73-line);
}

body.ccs-est1973 .masthead--innerpage__bg img {
	filter: sepia(.15) saturate(.92) contrast(1.02);
}

body.ccs-est1973 .masthead--innerpage__bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(36, 28, 20, .55), rgba(36, 28, 20, .78));
}

body.ccs-est1973 .masthead--innerpage__text h1 {
	font-family: var(--e73-font-slab);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .015em;
	color: var(--e73-porcelain);
}

body.ccs-est1973 .e73-kicker {
	display: block;
	font-family: var(--e73-font-script);
	font-size: clamp(20px, 2.3vw, 28px);
	color: var(--e73-butter);
	margin-bottom: 10px;
	transform: rotate(-2deg);
}

body.ccs-est1973 .masthead--innerpage .breadcrumbs {
	font-family: var(--e73-font-slab);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #C6B694;
}

body.ccs-est1973 .masthead--innerpage .breadcrumbs a,
body.ccs-est1973 .masthead--innerpage .breadcrumbs-link {
	color: var(--e73-butter-2);
}

body.ccs-est1973 .masthead--innerpage__wave path {
	fill: var(--e73-cream);
}

body.ccs-est1973 .e73-seal {
	position: absolute;
	z-index: 4;
	right: clamp(16px, 4vw, 44px);
	bottom: 28px;
	width: 60px;
	height: 60px;
	filter: drop-shadow(0 8px 16px rgba(42, 33, 26, .35));
}

/* ---- generic headings/copy across every ACF block on the page ---- */
body.ccs-est1973 .fx-block h2,
body.ccs-est1973 .fx-block h3:not(.tab-accordion__tab) {
	font-family: var(--e73-font-slab);
	color: var(--e73-ink);
	text-transform: uppercase;
	letter-spacing: .015em;
}

body.ccs-est1973 .fx-block p,
body.ccs-est1973 .fx-block li {
	font-family: var(--e73-font-serif);
	color: var(--e73-body);
}

body.ccs-est1973 .fx-block h2::after {
	content: "";
	display: block;
	width: 64px;
	border-bottom: 2.5px dotted var(--e73-brass);
	margin-top: 10px;
}

/* ---- ink-border content card: image-text ---- */
body.ccs-est1973 .fx-block.image-text {
	background: var(--e73-porcelain) !important;
}

/* ---- image-buttons: medallion treatment (mirrors icons-buttons.bg-dark-blue) ---- */
body.ccs-est1973 .fx-block.image-buttons.bg-dark-blue,
body.ccs-est1973 .fx-block.image-buttons.bg-light-blue {
	background: var(--e73-teal) !important;
}

body.ccs-est1973 .fx-block.image-buttons.bg-dark-blue .image-buttons__headlines *,
body.ccs-est1973 .fx-block.image-buttons.bg-light-blue .image-buttons__headlines * {
	color: var(--e73-porcelain);
}

body.ccs-est1973 .image-button-item {
	text-align: center;
}

body.ccs-est1973 .image-button {
	display: block;
	border-radius: var(--e73-radius-lg);
	overflow: hidden;
	border: 1.5px solid rgba(232, 184, 75, .5);
	transition: transform .18s ease;
}

body.ccs-est1973 .image-button:hover {
	transform: translateY(-4px);
}

/* ---- tab-accordion ---- */
body.ccs-est1973 .fx-block.tab-accordion {
	background: var(--e73-cream) !important;
}

body.ccs-est1973 .tab-accordion__tab {
	font-family: var(--e73-font-slab);
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--e73-body);
	border-bottom: 2.5px solid var(--e73-line);
}

body.ccs-est1973 .tab-accordion__tab.is-active {
	color: var(--e73-teal);
	border-bottom-color: var(--e73-teal);
}

body.ccs-est1973 .tab-accordion__panel,
body.ccs-est1973 .tab-accordion__accordion-item {
	border: 2px solid var(--e73-ink);
	border-radius: 9px;
	background: var(--e73-porcelain);
}

/* ---- testimonial-cards ---- */
body.ccs-est1973 .fx-block.testimonial-cards.bg-dark-blue {
	background: var(--e73-dark) !important;
}

body.ccs-est1973 .testimonial-card-left .sub-heading {
	font-family: var(--e73-font-script);
	color: var(--e73-butter);
}

body.ccs-est1973 .testimonial-card-left h2 {
	color: var(--e73-porcelain) !important;
}

body.ccs-est1973 .testimonial-card-left__bttn .btn {
	background: var(--e73-teal);
	box-shadow: var(--e73-shadow-btn-teal);
}

body.ccs-est1973 .testimonial-card {
	border: 2px solid var(--e73-ink);
	border-radius: var(--e73-radius-lg);
	background: var(--e73-porcelain);
}

body.ccs-est1973 .testimonial-card__star {
	color: var(--e73-butter);
}

/* ---- fx-accordion (service-location "Where Captain Right Away Serves") ---- */
body.ccs-est1973 .fx-accordion--service-location {
	background: var(--e73-cream) !important;
}

body.ccs-est1973 .fx-accordion__panel {
	border: 2px solid var(--e73-ink);
	border-radius: 9px;
	margin-bottom: 12px;
	background: var(--e73-cream);
	overflow: hidden;
}

body.ccs-est1973 .fx-accordion__panel.is-expanded {
	background: var(--e73-porcelain);
}

body.ccs-est1973 .fx-accordion__panel__toggle {
	font-family: var(--e73-font-slab);
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--e73-ink);
}

/* ---- final CTA (dark) ---- */
body.ccs-est1973 .fx-block.full-width-cta {
	background: var(--e73-dark) !important;
}

body.ccs-est1973 .fx-block.full-width-cta .full-width-cta__text * {
	color: #D9CDB4;
}

body.ccs-est1973 .fx-block.full-width-cta h2,
body.ccs-est1973 .fx-block.full-width-cta h3 {
	color: var(--e73-porcelain) !important;
	font-family: var(--e73-font-slab);
}

body.ccs-est1973 .fx-block.full-width-cta .btn.btn-primary {
	background: var(--e73-teal);
	border-color: var(--e73-teal);
	box-shadow: var(--e73-shadow-btn-teal);
	font-family: var(--e73-font-slab);
}

body.ccs-est1973 .fx-block.full-width-cta .btn.btn-secondary {
	border-color: #F1E7CF;
	color: #F6EFDE;
	background: transparent;
	font-family: var(--e73-font-slab);
}

/* ---- mu-plugin growth / answer / local-map / NAP sections ---- */
body.ccs-est1973 .ccs-answer-card,
body.ccs-est1973 .ccs-seo-content,
body.ccs-est1973 .ccs-growth-faq,
body.ccs-est1973 .ccs-growth-links,
body.ccs-est1973 .ccs-local-map,
body.ccs-est1973 .ccs-city-depth,
body.ccs-est1973 .ccs-city-service-intent {
	background: var(--e73-porcelain);
	border: 2.5px solid var(--e73-line);
	border-radius: var(--e73-radius-lg);
}

body.ccs-est1973 .ccs-answer-card__eyebrow,
body.ccs-est1973 .ccs-local-map__eyebrow,
body.ccs-est1973 .ccs-about-proof__eyebrow,
body.ccs-est1973 .ccs-captain__eyebrow {
	font-family: var(--e73-font-script);
	color: var(--e73-red);
	text-transform: none;
}

body.ccs-est1973 .ccs-answer-card h2,
body.ccs-est1973 .ccs-local-map h2,
body.ccs-est1973 .ccs-city-depth h2,
body.ccs-est1973 .ccs-city-service-intent h2 {
	font-family: var(--e73-font-slab);
	color: var(--e73-ink);
	text-transform: uppercase;
}

body.ccs-est1973 .ccs-city-depth__grid h3 {
	font-family: var(--e73-font-slab);
	color: var(--e73-teal);
	text-transform: uppercase;
	font-size: 15px;
	letter-spacing: .04em;
}

/* ---- pill-style action links (answer card / local map / intent / growth-links CTAs) ---- */
body.ccs-est1973 .ccs-answer-card__actions a,
body.ccs-est1973 .ccs-local-map__actions a,
body.ccs-est1973 .ccs-city-service-intent__actions a,
body.ccs-est1973 .ccs-growth-links__actions a {
	font-family: var(--e73-font-slab);
	font-weight: 700;
	letter-spacing: .04em;
	background: var(--e73-teal);
	border-radius: var(--e73-radius-sm);
	box-shadow: var(--e73-shadow-btn-teal);
}

body.ccs-est1973 .ccs-answer-card__actions a:last-child,
body.ccs-est1973 .ccs-local-map__actions a:last-child,
body.ccs-est1973 .ccs-city-service-intent__actions a:last-child,
body.ccs-est1973 .ccs-growth-links__actions a:last-child {
	background: var(--e73-red);
	box-shadow: 0 6px 0 var(--e73-red-2);
}

/* ---- ccs-linkfold (details/summary priority-services list inside growth-links) ---- */
body.ccs-est1973 .ccs-linkfold {
	border: 2px solid var(--e73-ink);
	border-radius: 9px;
	margin-bottom: 12px;
	background: var(--e73-cream);
	overflow: hidden;
}

body.ccs-est1973 .ccs-linkfold summary {
	font-family: var(--e73-font-slab);
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--e73-ink);
}

body.ccs-est1973 .ccs-linkfold a,
body.ccs-est1973 .ccs-growth-faq a,
body.ccs-est1973 .ccs-virtual-guide__links a,
body.ccs-est1973 .ccs-link-mesh a {
	color: var(--e73-teal-2);
	font-family: var(--e73-font-serif);
}

/* ---- review meta + related-links nav (additive footer strip) ---- */
body.ccs-est1973 .ccs-review-meta {
	color: var(--e73-muted);
	font-family: var(--e73-font-serif);
	border-top: 1px solid var(--e73-line);
}

body.ccs-est1973 .ccs-link-mesh {
	background: var(--e73-porcelain);
	border: 2.5px solid var(--e73-line);
	border-radius: var(--e73-radius-lg);
}

body.ccs-est1973 .ccs-link-mesh h2 {
	font-family: var(--e73-font-slab);
	color: var(--e73-ink);
	text-transform: uppercase;
}

/* ---- captain mascot card ---- */
body.ccs-est1973 .ccs-captain {
	background: var(--e73-teal);
	color: #D9EAE6;
}

body.ccs-est1973 .ccs-captain__cta {
	font-family: var(--e73-font-slab);
	background: var(--e73-butter);
	color: var(--e73-ink);
}

/* ---- NAP block ---- */
body.ccs-est1973 .ccs-seo-nap-location h3 {
	font-family: var(--e73-font-slab);
	color: var(--e73-ink);
	text-transform: uppercase;
}

body.ccs-est1973 .ccs-seo-nap-location address,
body.ccs-est1973 .ccs-seo-nap-links {
	font-family: var(--e73-font-serif);
	color: var(--e73-body);
}

/* ---- generic buttons everywhere inside the recipe ---- */
body.ccs-est1973 main#main .btn.btn-primary,
body.ccs-est1973 .header-btn .btn.btn-primary {
	font-family: var(--e73-font-slab);
	letter-spacing: .06em;
}
