/*
 * At Their Age — Site Chrome v1
 * Header + release-owned editorial footer for the approved visual identity.
 */

/* =========================================================
   HEADER
   ========================================================= */

#header,
.ct-header {
	--theme-text-color: var(--ata-ink, #1F2A33);
	--theme-link-initial-color: var(--ata-ink, #1F2A33);
	--theme-link-hover-color: var(--ata-clay-action, #A8523E);
	position: relative;
	z-index: 1000;
	background: var(--ata-cream, #F8F4EC);
}

#header [data-row*="middle"],
.ct-header [data-row*="middle"] {
	min-height: 78px;
	background: var(--ata-cream, #F8F4EC) !important;
	border-bottom: 1px solid var(--ata-border, #D9D2C6);
	box-shadow: none;
}

#header [data-row*="middle"] > div,
#header .ct-container {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	padding-inline: 24px;
}

[data-header*="type-1"] .ct-header [data-id="logo"],
#header [data-id="logo"] {
	display: flex;
	align-items: center;
	height: 78px;
}

[data-header*="type-1"] .ct-header [data-id="logo"] .site-logo-container,
#header [data-id="logo"] .site-logo-container {
	display: flex;
	align-items: center;
	height: 100%;
}

[data-header*="type-1"] .ct-header [data-id="logo"] .site-logo-container img,
#header .site-logo-container img,
.ct-header .site-logo-container img {
	display: block;
	width: 210px !important;
	height: auto !important;
	max-width: 210px !important;
	max-height: 52px !important;
	margin: 0 !important;
	object-fit: contain;
	transform: none !important;
}

#header .menu {
	gap: 0;
}

#header .menu > li > a,
.ct-header .menu > li > a {
	min-height: 78px;
	padding-inline: 13px;
	font-family: var(--ata-font-body, Inter, system-ui, sans-serif);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	color: var(--ata-ink, #1F2A33);
}

#header .menu > li > a:hover,
#header .menu > li > a:focus-visible,
#header .menu > li.current-menu-item > a,
#header .menu > li.current-menu-ancestor > a {
	color: var(--ata-clay-action, #A8523E);
}

#header .sub-menu {
	min-width: 220px;
	padding: 8px;
	border: 1px solid var(--ata-border, #D9D2C6);
	border-radius: 10px;
	background: #FFFFFF;
	box-shadow: 0 14px 38px rgba(31, 42, 51, .10);
}

#header .sub-menu li > a {
	min-height: 0;
	padding: 10px 12px;
	border-radius: 6px;
	font-family: var(--ata-font-body, Inter, system-ui, sans-serif);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
	color: var(--ata-ink, #1F2A33);
}

#header .sub-menu li > a:hover,
#header .sub-menu li > a:focus-visible,
#header .sub-menu li.current-menu-item > a {
	background: var(--ata-cream, #F8F4EC);
	color: var(--ata-clay-action, #A8523E);
}

#header .ct-search-initiator {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	color: var(--ata-ink, #1F2A33);
}

#header .menu-item.ata-nav-cta > a {
	min-height: 42px;
	margin-left: 10px;
	padding-inline: 17px;
	border: 1px solid var(--ata-ink, #1F2A33);
	border-radius: 8px;
	background: var(--ata-ink, #1F2A33) !important;
	color: #FFFFFF !important;
	font-weight: 600;
}

#header .menu-item.ata-nav-cta > a:hover,
#header .menu-item.ata-nav-cta > a:focus-visible {
	border-color: #33424C;
	background: #33424C !important;
	color: #FFFFFF !important;
}

#header [data-sticky*="yes"] [data-row*="middle"],
#header [data-sticky*="fixed"] [data-row*="middle"] {
	box-shadow: 0 8px 28px rgba(31, 42, 51, .07);
}

/* =========================================================
   MOBILE HEADER / OFF-CANVAS
   ========================================================= */

@media (max-width: 999px) {
	#header [data-row*="middle"],
	.ct-header [data-row*="middle"] {
		min-height: 68px;
	}

	#header [data-row*="middle"] > div,
	#header .ct-container {
		padding-inline: 20px;
	}

	[data-header*="type-1"] .ct-header [data-id="logo"],
	#header [data-id="logo"] {
		height: 68px;
	}

	[data-header*="type-1"] .ct-header [data-id="logo"] .site-logo-container img,
	#header .site-logo-container img,
	.ct-header .site-logo-container img {
		width: 172px !important;
		max-width: 172px !important;
		max-height: 44px !important;
	}

	#header .ct-header-trigger {
		display: inline-grid;
		place-items: center;
		min-width: 44px;
		min-height: 44px;
		color: var(--ata-ink, #1F2A33);
	}

	#offcanvas,
	[data-behaviour*="side"] {
		--theme-text-color: var(--ata-ink, #1F2A33);
		--theme-link-initial-color: var(--ata-ink, #1F2A33);
		background: var(--ata-cream, #F8F4EC);
	}

	#offcanvas .mobile-menu > li > a {
		font-family: var(--ata-font-body, Inter, system-ui, sans-serif);
		font-size: 17px;
		font-weight: 500;
	}

	#offcanvas .sub-menu a {
		font-size: 15px;
	}
}

/* =========================================================
   RELEASE-OWNED EDITORIAL FOOTER
   ========================================================= */

/*
 * v1.10.5 owns the footer markup in the plugin. Hide Blocksy's fallback footer
 * whenever the release renderer is active, without relying on :has(). Also
 * suppress any older WPCode-rendered .ata-footer so there is exactly one footer.
 */
body.ata-release-footer-active #footer,
body.ata-release-footer-active .ct-footer,
body.ata-release-footer-active .ata-footer:not(#ata-release-footer) {
	display: none !important;
}

.ata-footer {
	position: relative;
	width: 100%;
	background: var(--ata-ink, #1F2A33);
	color: var(--ata-cream, #F8F4EC);
	border-top: 1px solid rgba(255,255,255,.08);
}

.ata-footer__inner {
	width: min(calc(100% - 48px), 1200px);
	margin-inline: auto;
	padding: 52px 0 22px;
}

.ata-footer__lead {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(320px, .85fr);
	gap: clamp(40px, 6vw, 68px);
	align-items: start;
}

.ata-footer__brand {
	max-width: 450px;
}

.ata-footer__logo-link {
	display: inline-block;
	text-decoration: none !important;
}

.ata-footer__wordmark {
	display: block;
	font-family: var(--ata-font-heading, "Source Serif 4", Georgia, serif);
	font-size: clamp(2rem, 4vw, 2.55rem);
	font-weight: 600;
	line-height: 1;
	color: #FFFFFF;
}

.ata-footer__tagline {
	margin: 17px 0 9px;
	font-family: var(--ata-font-heading, "Source Serif 4", Georgia, serif);
	font-size: clamp(1.25rem, 2vw, 1.5rem);
	font-weight: 600;
	line-height: 1.2;
	color: #FFFFFF;
}

.ata-footer__intro {
	max-width: 430px;
	margin: 0;
	font-size: .94rem;
	line-height: 1.65;
	color: rgba(248, 244, 236, .74);
}

.ata-footer__newsletter {
	padding: 25px 26px;
	border: 1px solid rgba(255,255,255,.13);
	border-radius: 12px;
	background: rgba(248,244,236,.055);
}

.ata-footer__eyebrow {
	margin: 0 0 8px;
	font-size: .7rem;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--ata-sand, #E8E0D2);
}

.ata-footer__newsletter h2 {
	margin: 0 0 9px;
	font-family: var(--ata-font-heading, "Source Serif 4", Georgia, serif);
	font-size: clamp(1.55rem, 2.5vw, 1.9rem);
	line-height: 1.12;
	color: #FFFFFF;
}

.ata-footer__newsletter > p:not(.ata-footer__eyebrow) {
	margin: 0 0 18px;
	font-size: .92rem;
	line-height: 1.6;
	color: rgba(248,244,236,.76);
}

.ata-footer__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 9px 16px;
	border: 1px solid #FFFFFF;
	border-radius: 8px;
	background: #FFFFFF;
	color: var(--ata-ink, #1F2A33) !important;
	font-weight: 600;
	text-decoration: none !important;
}

.ata-footer__cta:hover,
.ata-footer__cta:focus-visible {
	background: var(--ata-sand, #E8E0D2);
	border-color: var(--ata-sand, #E8E0D2);
	color: var(--ata-ink, #1F2A33) !important;
}

.ata-footer__rule {
	width: 100%;
	height: 1px;
	margin-block: 34px;
	background: rgba(255,255,255,.13);
}

.ata-footer__links {
	display: grid;
	grid-template-columns: .8fr 1.35fr .9fr;
	gap: clamp(30px, 5vw, 60px);
}

.ata-footer__column h3 {
	margin: 0 0 13px;
	font-family: var(--ata-font-body, Inter, system-ui, sans-serif);
	font-size: .72rem;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: .11em;
	text-transform: uppercase;
	color: var(--ata-sand, #E8E0D2);
}

.ata-footer__nav,
.ata-footer__menu {
	margin: 0;
	padding: 0;
}

.ata-footer__menu {
	display: grid;
	gap: 7px 22px;
	list-style: none;
}

.ata-footer__column--topics .ata-footer__menu {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ata-footer__menu li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ata-footer__menu a {
	display: inline-block;
	color: rgba(248,244,236,.78) !important;
	text-decoration: none !important;
	line-height: 1.45;
}

.ata-footer__menu a:hover,
.ata-footer__menu a:focus-visible {
	color: #FFFFFF !important;
	text-decoration: underline !important;
	text-underline-offset: .18em;
}

.ata-footer__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
	margin-top: 34px;
	padding-top: 18px;
	border-top: 1px solid rgba(255,255,255,.13);
	font-size: .82rem;
	color: rgba(248,244,236,.58);
}

.ata-footer__bottom p {
	margin: 0;
	color: inherit;
}

.ata-footer__legal {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
}

.ata-footer__legal a {
	color: rgba(248,244,236,.64) !important;
	text-decoration: none !important;
}

.ata-footer__legal a:hover,
.ata-footer__legal a:focus-visible {
	color: #FFFFFF !important;
}

@media (max-width: 900px) {
	.ata-footer__lead,
	.ata-footer__links {
		grid-template-columns: 1fr;
	}

	.ata-footer__lead {
		gap: 32px;
	}

	.ata-footer__links {
		gap: 28px;
	}

	.ata-footer__column--topics .ata-footer__menu {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.ata-footer__inner {
		width: calc(100% - 40px);
		padding-top: 42px;
	}

	.ata-footer__newsletter {
		padding: 22px;
	}

	.ata-footer__column--topics .ata-footer__menu {
		grid-template-columns: 1fr;
	}

	.ata-footer__bottom {
		flex-direction: column;
		align-items: flex-start;
	}

	.ata-footer__legal {
		flex-direction: column;
		gap: 7px;
	}
}
