/* ==========================================================================
   Look To The Gut Core — Front-end styles
   ==========================================================================
   Structural CSS only. Colors, fonts, radii, and spacing all come from
   CSS custom properties generated by LTG_Design::build_css() (see the
   Design panel in the dashboard) — nothing here should need editing to
   restyle the site.
   ========================================================================== */

.ltg-body,
.ltg-body * {
	box-sizing: border-box;
}

.ltg-body {
	margin: 0;
	background: var( --ltg-color-bg );
	color: var( --ltg-color-text );
	font-family: var( --ltg-font-body );
	line-height: var( --ltg-line-height-body, 1.6 );
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden; /* safety net: nothing should ever be able to make the whole page scroll sideways */
}

.ltg-body img {
	max-width: 100%;
	height: auto;
}

.ltg-body p a,
.ltg-body .ltg-generic-page a {
	color: var( --ltg-color-accent-dark );
	text-decoration: underline;
	text-decoration-color: var( --ltg-color-border );
	text-underline-offset: 2px;
}

.ltg-body p a:hover,
.ltg-body .ltg-generic-page a:hover {
	color: var( --ltg-color-accent-2 );
}

.ltg-container {
	max-width: var( --ltg-container-width, 1200px );
	margin: 0 auto;
	padding: 0 24px;
}

/* ---- Contact page ([ltg_contact]) ---- */

.ltg-contact {
	max-width: 560px;
}

.ltg-contact__intro {
	color: var( --ltg-color-text-muted );
	margin: 0 0 28px;
	font-size: 1.05rem;
}

.ltg-contact__email-row {
	display: flex;
	align-items: center;
	gap: 14px;
	background: var( --ltg-color-surface );
	border: 1px solid var( --ltg-color-border );
	border-radius: var( --ltg-card-radius, 12px );
	padding: 18px 22px;
	margin-bottom: 32px;
}

.ltg-contact__email {
	font-family: var( --ltg-font-heading );
	font-size: 1.15rem;
	color: var( --ltg-color-text );
}

.ltg-contact__copy-btn {
	margin-left: auto;
	flex-shrink: 0;
	background: var( --ltg-color-accent-dark );
	color: #fff;
	border: none;
	border-radius: var( --ltg-button-radius, 999px );
	padding: 0.55em 1.3em;
	font-size: 0.85rem;
	font-weight: 600;
	cursor: pointer;
	transition: background-color 150ms ease, transform 150ms ease;
	min-width: 76px;
}

.ltg-contact__copy-btn:hover {
	background: var( --ltg-color-button-hover );
}

.ltg-contact__copy-btn.is-copied {
	background: var( --ltg-color-accent );
}

.ltg-contact__social {
	display: flex;
	gap: 16px;
}

.ltg-contact__social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: var( --ltg-color-surface );
	border: 1px solid var( --ltg-color-border );
	border-radius: 50%;
	color: var( --ltg-color-accent-dark );
	transition: color 150ms ease, border-color 150ms ease;
}

.ltg-contact__social a:hover {
	color: var( --ltg-color-accent-2 );
	border-color: var( --ltg-color-accent-2 );
}

/* ---- Generic pages (site-wide default template) ---- */

.ltg-generic-page {
	padding: 56px 0 80px;
}

.ltg-generic-page__title {
	font-family: var( --ltg-font-heading );
	font-size: clamp( 2rem, 4vw, 2.8rem );
	font-weight: 600;
	margin: 0 0 32px;
	letter-spacing: var( --ltg-letter-spacing-heading, -0.01em );
	text-align: center;
}

/* ---- Header ---- */

.ltg-header {
	background: var( --ltg-header-bg );
	z-index: 50;
	border-bottom: 1px solid var( --ltg-color-border );
}

.ltg-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 76px;
	gap: 24px;
}

.ltg-header__nav-list {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 28px;
	margin: 0;
	padding: 0;
}

.ltg-header__nav-list a {
	text-decoration: none;
	color: var( --ltg-color-text );
	font-size: 0.92rem;
	font-weight: 500;
}

.ltg-header__nav-list a:hover {
	color: var( --ltg-color-accent );
}

/* Hamburger toggle — hidden on desktop, shown only under the mobile breakpoint below */
.ltg-header__toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 40px;
	height: 40px;
	padding: 0;
	background: none;
	border: none;
	cursor: pointer;
	flex-shrink: 0;
}

.ltg-header__toggle span {
	display: block;
	width: 100%;
	height: 2px;
	background: var( --ltg-color-text );
	border-radius: 2px;
	transition: transform 200ms ease, opacity 200ms ease;
}

.ltg-header__toggle.is-open span:nth-child( 1 ) {
	transform: translateY( 7px ) rotate( 45deg );
}

.ltg-header__toggle.is-open span:nth-child( 2 ) {
	opacity: 0;
}

.ltg-header__toggle.is-open span:nth-child( 3 ) {
	transform: translateY( -7px ) rotate( -45deg );
}

@media ( max-width: 782px ) {
	.ltg-header__toggle {
		display: flex;
	}

	.ltg-header__nav {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		display: none;
		background: var( --ltg-header-bg );
		border-bottom: 1px solid rgba( 0, 0, 0, 0.08 );
		box-shadow: 0 12px 24px -12px rgba( 0, 0, 0, 0.25 );
	}

	.ltg-header__nav.is-open {
		display: block;
	}

	.ltg-header {
		position: relative;
	}

	.ltg-header__nav-list {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 8px 0;
	}

	.ltg-header__nav-list li {
		border-bottom: 1px solid rgba( 0, 0, 0, 0.05 );
	}

	.ltg-header__nav-list li:last-child {
		border-bottom: none;
	}

	.ltg-header__nav-list a,
	.ltg-header__nav-list .ltg-btn {
		display: block;
		padding: 14px 24px;
		width: 100%;
		box-sizing: border-box;
		text-align: left;
	}

	.ltg-header__nav-list .ltg-btn {
		border-radius: 0;
	}
}

.ltg-btn--small {
	padding: 0.55em 1.4em;
	font-size: 0.85rem;
}

.ltg-header__logo {
	text-decoration: none;
	color: var( --ltg-color-text );
	display: flex;
	align-items: center;
}

.ltg-header__logo-img {
	max-height: 40px;
	width: auto;
}

.ltg-header__wordmark {
	font-family: var( --ltg-font-heading );
	font-weight: 600;
	font-size: 1.2rem;
	letter-spacing: 0.01em;
}

/* ---- Sections ---- */

.ltg-section {
	position: relative;
	background-image: var( --ltg-bg-image, none );
}

/* Swaps to a dedicated mobile photo on narrow screens, if one was
   uploaded for this section — falls back to the same desktop image
   (via the nested var() fallback) when no mobile-specific one was
   set, so this is always safe to leave empty. */
@media ( max-width: 782px ) {
	.ltg-section {
		background-image: var( --ltg-bg-image-mobile, var( --ltg-bg-image, none ) );
	}
}

/* Optional darken/blur overlay for a section's background image —
   only added when the site owner sets a Darken and/or Blur amount
   above 0. A ::before layer re-shows the same background image with
   blur applied (blur can't be applied directly to background-image
   without also blurring the section's own text), scaled up slightly
   so the blur doesn't reveal soft edges at the section boundary. An
   ::after layer sits above that as a flat translucent black darkening
   layer. The actual content (.ltg-container) is lifted above both. */
.ltg-has-bg-overlay {
	overflow: hidden; /* contains the blurred ::before layer below, which deliberately extends past the section's own edges */
}

.ltg-has-bg-overlay::before {
	content: '';
	position: absolute;
	inset: -20px;
	background-image: inherit;
	background-size: cover;
	background-position: inherit;
	filter: blur( var( --ltg-overlay-blur, 0px ) ) grayscale( var( --ltg-overlay-grayscale, 0 ) );
	z-index: 0;
}

.ltg-has-bg-overlay::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba( 0, 0, 0, var( --ltg-overlay-opacity, 0 ) );
	z-index: 1;
}

.ltg-has-bg-overlay > .ltg-container {
	position: relative;
	z-index: 2;
}

.ltg-bg--background {
	background-color: var( --ltg-color-bg );
}

.ltg-bg--surface {
	background-color: var( --ltg-color-surface );
}

.ltg-bg--sage {
	background-color: var( --ltg-color-sage-tint );
}

.ltg-bg--charcoal {
	background-color: var( --ltg-color-text );
	color: var( --ltg-color-surface );
}

.ltg-bg--charcoal .ltg-section__subtitle,
.ltg-bg--charcoal .ltg-footer-cta__description {
	color: rgba( 255, 255, 255, 0.72 );
}

.ltg-spacing--sm {
	padding: 40px 0;
}

.ltg-spacing--md {
	padding: 88px 0;
}

.ltg-spacing--lg {
	padding: 140px 0;
}

.ltg-section__heading {
	max-width: 640px;
	margin: 0 auto 40px;
	text-align: center;
}

.ltg-text-align--left .ltg-section__heading,
.ltg-text-align--left .ltg-footer-cta {
	margin-left: 0;
	margin-right: 0;
	text-align: left;
}

.ltg-section__title {
	font-family: var( --ltg-font-heading );
	font-size: clamp( 1.6rem, 3vw, 2.2rem );
	font-weight: 600;
	margin: 0 0 8px;
}

.ltg-section__subtitle {
	margin: 0;
	color: var( --ltg-color-text-muted );
}

.ltg-placeholder-note {
	text-align: center;
	color: var( --ltg-color-text-muted );
	font-style: italic;
	max-width: 480px;
	margin: 0 auto;
}

/* ---- Scroll animation ---- */

.ltg-animate {
	opacity: 0;
	transform: translateY( 24px );
	transition: opacity 600ms cubic-bezier( 0.22, 1, 0.36, 1 ), transform 600ms cubic-bezier( 0.22, 1, 0.36, 1 );
}

.ltg-animate.is-visible {
	opacity: 1;
	transform: none;
}

@media ( prefers-reduced-motion: reduce ) {
	.ltg-animate {
		opacity: 1;
		transform: none;
		transition: none;
	}

	html {
		scroll-behavior: auto;
	}
}

/* Smooth in-page scrolling, e.g. the "What's Coming" card jumping to
   the homepage's Coming Soon section. Only affects pages where this
   stylesheet is loaded. */
html {
	scroll-behavior: smooth;
}

.ltg-section__link {
	text-align: center;
	margin: -8px 0 32px;
}

.ltg-section__link a {
	font-size: 0.86rem;
	font-weight: 600;
	color: var( --ltg-color-accent );
	text-decoration: none;
}

.ltg-section__link a:hover {
	text-decoration: underline;
}

.ltg-coming-soon-teaser {
	text-align: center;
	padding: 8px 0 16px;
}

.ltg-coming-soon-teaser__count {
	font-size: 1.05rem;
	color: var( --ltg-color-text-muted, #6b6255 );
	margin: 0 0 20px;
}

.ltg-directory-banner {
	background: var( --ltg-color-bg, #faf7f2 );
	border: 1px solid var( --ltg-color-border, #e4ddd2 );
	border-radius: 8px;
	padding: 14px 20px;
	margin: 0 auto 20px;
	max-width: 900px;
}

.ltg-directory-banner p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.5;
	color: var( --ltg-color-text, #2b2620 );
	text-align: center;
}

.ltg-card__icon--emoji {
	display: block;
	font-size: 1.8rem;
	line-height: 1;
	margin-bottom: 10px;
}

/* ---- Dedicated "What's Coming" page ([ltg_whats_coming]) ---- */

.ltg-whats-coming {
	max-width: var( --ltg-container-width, 1200px );
	margin: 0 auto;
	padding: 56px 24px;
}

.ltg-whats-coming__intro {
	max-width: 640px;
	margin: 0 auto 40px;
	text-align: center;
	font-size: 1.05rem;
	line-height: 1.7;
	color: var( --ltg-color-text-muted, #635c52 );
}

.ltg-whats-coming__empty {
	text-align: center;
	color: var( --ltg-color-text-muted, #635c52 );
}

/* ---- Hero ---- */

.ltg-hero {
	max-width: 720px;
	margin: 0 auto;
	text-align: center;
}

.ltg-hero__title {
	font-family: var( --ltg-font-heading );
	font-size: clamp( 2.6rem, 6vw, 4.4rem );
	font-weight: 600;
	line-height: 1.05;
	margin: 0 0 14px;
	letter-spacing: var( --ltg-letter-spacing-heading, -0.01em );
	color: var( --ltg-color-accent-dark );
}

.ltg-hero__subtitle {
	font-family: var( --ltg-font-heading );
	font-style: italic;
	font-size: clamp( 1.1rem, 2vw, 1.5rem );
	margin: 0 0 22px;
	color: var( --ltg-color-text-muted );
}

.ltg-hero__rule {
	width: 64px;
	height: 3px;
	margin: 0 auto 26px;
	background: var( --ltg-color-accent-2 );
	border-radius: 2px;
}

.ltg-hero__description {
	max-width: 52ch;
	margin: 0 auto 36px;
	font-size: 1.05rem;
	color: var( --ltg-color-text-muted );
}

/* When the Hero has a dark photo overlay behind it (grayscale and/or
   darken turned on), its text needs to be light regardless of the
   site's normal light-background text colors — otherwise "muted gray"
   text, correct everywhere else on a white background, goes almost
   invisible against a dark photo. Falls back to the normal tokens
   automatically if the overlay is ever turned off. */
.ltg-has-bg-overlay .ltg-hero__title,
.ltg-has-bg-overlay .ltg-hero__subtitle,
.ltg-has-bg-overlay .ltg-hero__description {
	color: #ffffff;
}

.ltg-has-bg-overlay .ltg-hero__subtitle,
.ltg-has-bg-overlay .ltg-hero__description {
	opacity: 0.92;
}

.ltg-hero__actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	flex-wrap: wrap;
}

.ltg-hero--left {
	text-align: left;
	margin: 0;
}

.ltg-hero--left .ltg-hero__rule {
	margin: 0 0 26px;
}

.ltg-hero--left .ltg-hero__actions {
	justify-content: flex-start;
}

.ltg-card__icon {
	display: block;
	font-size: 32px;
	width: 32px;
	height: 32px;
	color: var( --ltg-color-accent );
	margin-bottom: 14px;
}

/* ---- Buttons ---- */

.ltg-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0.9em 2em;
	border-radius: var( --ltg-button-radius, 999px );
	font-family: var( --ltg-font-body );
	font-size: 0.95rem;
	font-weight: 500;
	text-decoration: none;
	border: 2px solid transparent;
	cursor: pointer;
	transition: transform 200ms ease, background-color 200ms ease, opacity 200ms ease;
}

.ltg-btn--primary {
	background: var( --ltg-color-accent-dark );
	color: var( --ltg-color-surface );
	box-shadow: 0 10px 20px -8px rgba( 0, 0, 0, 0.35 );
}

.ltg-btn--primary:hover {
	background: var( --ltg-color-button-hover, #000 );
	transform: translateY( -2px );
}

.ltg-btn--secondary {
	background: transparent;
	color: var( --ltg-color-secondary, var( --ltg-color-accent-dark ) );
	border-color: var( --ltg-color-accent );
}

.ltg-btn--secondary:hover {
	background: var( --ltg-secondary-button-hover-bg );
}

/* ---------------------------------------------------------------
 * Independently-controlled elements — each pulls from its own
 * dedicated color variable (set on the Design page under
 * "Independent Colors"), not from the shared tokens above, so
 * changing one of these can never accidentally change anything else.
 * --------------------------------------------------------------- */

.ltg-hero__title {
	color: var( --ltg-hero-title-color );
}

.ltg-hero__subtitle {
	color: var( --ltg-hero-tagline-color );
}

.ltg-hero__rule {
	background: var( --ltg-hero-tagline-color );
}

.ltg-btn--header-cta {
	background: var( --ltg-header-button-bg );
	color: var( --ltg-header-button-text );
	box-shadow: 0 10px 20px -8px rgba( 0, 0, 0, 0.25 );
}

.ltg-btn--header-cta:hover {
	opacity: 0.88;
	transform: translateY( -2px );
}

.ltg-btn--secondary {
	border-color: var( --ltg-secondary-button-border );
	color: var( --ltg-secondary-button-text );
}

.ltg-header__nav-list a:hover {
	color: var( --ltg-nav-hover-color );
}


/* ---- Grids & cards ---- */

.ltg-grid {
	display: grid;
	gap: 24px;
}

.ltg-grid--3 {
	grid-template-columns: repeat( 3, minmax( 0, 340px ) );
	justify-content: center;
}

@media ( max-width: 860px ) {
	.ltg-grid--3 {
		grid-template-columns: 1fr;
	}
}

.ltg-card {
	background: var( --ltg-color-surface );
	border: 1px solid var( --ltg-color-border );
	border-radius: var( --ltg-card-radius, 12px );
	padding: 26px 22px;
	box-shadow: 0 6px 16px -12px rgba( 0, 0, 0, 0.12 );
}

.ltg-card__media {
	margin: -26px -22px 18px;
	overflow: hidden;
	border-radius: var( --ltg-card-radius, 8px ) var( --ltg-card-radius, 8px ) 0 0;
}

.ltg-card__media img {
	width: 100%;
	height: auto;
	display: block;
}

.ltg-card__eyebrow {
	display: inline-block;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var( --ltg-color-accent );
	margin-bottom: 10px;
}

.ltg-card__eyebrow--in_progress {
	color: var( --ltg-color-accent-2 );
}

.ltg-card__title {
	font-family: var( --ltg-font-heading );
	font-size: 1.2rem;
	font-weight: 600;
	margin: 0 0 8px;
}

.ltg-card__description {
	color: var( --ltg-color-text-muted );
	font-size: 0.94rem;
	margin: 0 0 14px;
}

.ltg-card__link {
	font-size: 0.86rem;
	font-weight: 600;
	color: var( --ltg-color-accent );
	text-decoration: none;
}

.ltg-card__link:hover {
	text-decoration: underline;
}

/* ---- Inline signup form (Newsletter section) ---- */

.ltg-inline-form {
	max-width: 460px;
	margin: 0 auto;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: center;
}

.ltg-inline-form input[type='email'] {
	flex: 1;
	min-width: 220px;
	padding: 0.85em 1.1em;
	border: 1px solid rgba( 0, 0, 0, 0.15 );
	border-radius: var( --ltg-button-radius, 999px );
	font-family: var( --ltg-font-body );
	font-size: 0.95rem;
}

.ltg-inline-form__message {
	width: 100%;
	text-align: center;
	font-size: 0.86rem;
	margin: 8px 0 0;
	min-height: 1.2em;
}

.ltg-inline-form__message.is-error {
	color: #b3261e;
}

.ltg-inline-form__message.is-success {
	color: #1e6b32;
}

/* ---- Footer CTA ---- */

.ltg-footer-cta {
	text-align: center;
	max-width: 620px;
	margin: 0 auto;
}

.ltg-footer-cta__title {
	font-family: var( --ltg-font-heading );
	font-size: clamp( 1.6rem, 3.4vw, 2.4rem );
	margin: 0 0 14px;
}

.ltg-footer-cta__description {
	margin: 0 0 26px;
	color: var( --ltg-color-text-muted );
}

/* ---- Footer ---- */

.ltg-footer {
	background: var( --ltg-footer-bg );
	color: var( --ltg-footer-text );
}

.ltg-footer__inner {
	padding: 56px 24px 28px;
	display: grid;
	grid-template-columns: 1.4fr 1fr auto;
	gap: 32px;
	align-items: start;
}

.ltg-footer__logo {
	display: inline-block;
	color: inherit;
	text-decoration: none;
	font-family: var( --ltg-font-heading );
	font-weight: 600;
	font-size: 1.1rem;
	margin-bottom: 10px;
}

.ltg-footer__logo-img {
	max-height: 32px;
	width: auto;
}

.ltg-footer__description {
	margin: 0;
	max-width: 40ch;
	font-size: 0.9rem;
	opacity: 0.75;
}

.ltg-footer__nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.ltg-footer__nav-list a {
	color: inherit;
	text-decoration: none;
	font-size: 0.9rem;
	opacity: 0.85;
}

.ltg-footer__nav-list a:hover {
	opacity: 1;
	text-decoration: underline;
}

.ltg-footer__social {
	display: flex;
	gap: 14px;
}

.ltg-footer__social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	color: inherit;
	opacity: 0.85;
	text-decoration: none;
	transition: color 150ms ease, opacity 150ms ease;
}

.ltg-footer__social a:hover {
	color: var( --ltg-color-accent-2 );
	opacity: 1;
}

.ltg-footer__social .dashicons {
	font-size: 20px;
	width: 20px;
	height: 20px;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ltg-footer__social svg {
	width: 20px;
	height: 20px;
	display: block;
}

.ltg-footer__legal-list {
	grid-column: 1 / -1;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
	margin: 18px 0 0;
	padding: 0;
	font-size: 0.78rem;
	opacity: 0.65;
}

.ltg-footer__legal-list a {
	color: inherit;
	text-decoration: underline;
}

.ltg-footer__copyright {
	grid-column: 1 / -1;
	margin: 12px 0 0;
	padding-top: 20px;
	border-top: 1px solid rgba( 255, 255, 255, 0.12 );
	font-size: 0.8rem;
	opacity: 0.65;
}

@media ( max-width: 720px ) {
	.ltg-footer__inner {
		grid-template-columns: 1fr;
	}
}

/* ---- Popup modal ---- */

.ltg-popup {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ltg-popup[hidden] {
	display: none;
}

.ltg-popup__backdrop {
	position: absolute;
	inset: 0;
	background: rgba( 20, 18, 16, 0.55 );
}

.ltg-popup__panel {
	position: relative;
	width: min( 440px, 92vw );
	background: var( --ltg-color-surface );
	border-radius: var( --ltg-card-radius, 8px );
	padding: 40px 32px;
	text-align: center;
	box-shadow: 0 40px 80px rgba( 0, 0, 0, 0.35 );
}

.ltg-popup__close {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: rgba( 0, 0, 0, 0.06 ) !important;
	border: none !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	font-size: 1.3rem !important;
	line-height: 1 !important;
	cursor: pointer;
	color: var( --ltg-color-text, #1d1a17 ) !important;
	transition: background-color 150ms ease;
}

.ltg-popup__close:hover {
	background: rgba( 0, 0, 0, 0.12 ) !important;
}

.ltg-popup__heading {
	font-family: var( --ltg-font-heading );
	font-size: 1.5rem;
	margin: 0 0 10px;
	padding-right: 36px; /* keeps text clear of the close button (top:12px right:12px, 32px wide) */
}

.ltg-popup__description {
	color: var( --ltg-color-text-muted );
	margin: 0 0 22px;
	font-size: 0.95rem;
	padding-right: 36px;
}

.ltg-popup__form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ltg-popup__form input[type='email'] {
	padding: 0.85em 1.1em;
	border: 1px solid rgba( 0, 0, 0, 0.15 );
	border-radius: var( --ltg-button-radius, 999px );
	font-family: var( --ltg-font-body );
	font-size: 0.95rem;
}

.ltg-popup__form .ltg-btn {
	justify-content: center;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect( 1px, 1px, 1px, 1px );
}

/* ==========================================================================
   General mobile responsiveness pass
   ========================================================================== */

.ltg-body {
	overflow-x: hidden;
}

@media ( max-width: 782px ) {
	.ltg-container {
		padding: 0 18px;
	}

	.ltg-header__inner {
		height: 64px;
	}

	.ltg-spacing--sm {
		padding: 28px 0;
	}

	.ltg-spacing--md {
		padding: 56px 0;
	}

	.ltg-spacing--lg {
		padding: 80px 0;
	}

	.ltg-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.ltg-hero__actions .ltg-btn {
		width: 100%;
		text-align: center;
		justify-content: center;
	}

	.ltg-inline-form {
		flex-direction: column;
		align-items: stretch;
	}

	.ltg-inline-form .ltg-btn {
		width: 100%;
		justify-content: center;
	}

	.ltg-popup__panel {
		padding: 32px 20px;
	}

	.ltg-card__media img {
		height: auto;
	}
}

@media ( max-width: 480px ) {
	.ltg-hero__title {
		font-size: clamp( 2.1rem, 9vw, 2.6rem );
	}

	.ltg-section__title {
		font-size: clamp( 1.4rem, 7vw, 1.7rem );
	}

	.ltg-btn {
		width: 100%;
		justify-content: center;
	}

	.ltg-footer-cta .ltg-btn,
	.ltg-card .ltg-btn {
		width: auto;
	}
}

/* ==========================================================================
   Product Directory — "Filter by Attribute" dropdown, mobile positioning
   ==========================================================================
   Confirmed markup: .lttg-attribute-dropdown > .lttg-attribute-dropdown-toggle
   (button) + .lttg-attribute-dropdown-panel (the checkbox list). On narrow
   screens the panel was extending partly off-screen, making some
   checkboxes hard/impossible to tap. This keeps the panel exactly where
   the site's own CSS already puts it relative to the button — attached
   directly below it, scrolling with the page — and just constrains its
   width/position so it can never overflow off-screen. Deliberately does
   NOT use position:fixed and does NOT add any custom open/close
   JavaScript: the Product Library plugin's own click-outside-to-close
   behavior already works correctly (confirmed on desktop) — an earlier
   version of this fix used position:fixed and custom JS, which fought
   with that native behavior instead of working alongside it.
   ========================================================================== */

@media ( max-width: 900px ) {
	.lttg-attribute-dropdown {
		position: relative;
	}

	.lttg-attribute-dropdown-panel:not( [hidden] ) {
		position: absolute !important;
		left: 0 !important;
		right: auto !important;
		top: 100% !important;
		bottom: auto !important;
		margin-top: 8px;
		width: calc( 100vw - 48px ) !important;
		max-width: 400px !important;
		height: auto !important;
		max-height: 70vh !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		z-index: 1000;
		box-sizing: border-box;
		border-radius: var( --ltg-card-radius, 8px );
		box-shadow: 0 20px 50px rgba( 0, 0, 0, 0.3 );
	}
}

/* ==========================================================================
   Theme chrome override
   ==========================================================================
   For pages still rendered by the theme's own template (e.g. product
   pages with their own display logic — see LTG_Frontend::
   maybe_inject_into_theme_template()), this plugin's header/footer is
   injected alongside the theme's original ones. Hide the originals so
   only the injected, correctly-linked versions show. Confirmed via the
   site's actual markup: Kadence's header is #masthead, footer is
   #colophon.
   ========================================================================== */

#masthead,
#colophon {
	display: none !important;
}

/* ==========================================================================
   Product Directory — product page redesign
   ==========================================================================
   Targets the site's own confirmed markup (product-template.css):
   .lttg-product-header > .lttg-product-brand (h1) / .lttg-product-title (h2)
   .lttg-product-meta > three <span> children: Brand, Category, Last reviewed
   .lttg-product-top (CSS Grid) > .lttg-product-image + .lttg-product-summary
   .lttg-product-summary > .lttg-at-a-glance + .lttg-where-to-buy
   ========================================================================== */

/* The standalone brand heading is redundant — the brand is already the
   start of the product title right below it. Removed at all sizes. */
/* ---- Custom Sections (unlimited, user-added, image/video content) ---- */

.ltg-custom-section__grid {
	display: grid;
	gap: 40px;
	align-items: center;
	text-align: left;
}

@media ( min-width: 701px ) {
	.ltg-custom-section__grid--image_left,
	.ltg-custom-section__grid--image_right {
		grid-template-columns: 1fr 1fr;
	}
}

.ltg-custom-section__media img,
.ltg-custom-section__media video {
	width: 100%;
	height: auto;
	border-radius: var( --ltg-card-radius, 12px );
	display: block;
}

.ltg-custom-section__media img {
	aspect-ratio: 4 / 3;
	height: 100%;
	object-fit: cover;
}

.ltg-custom-section__video-wrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%; /* 16:9 */
	border-radius: var( --ltg-card-radius, 12px );
	overflow: hidden;
}

.ltg-custom-section__video-wrap iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: none;
}

.ltg-custom-section__title {
	font-family: var( --ltg-font-heading );
	font-size: clamp( 1.7rem, 3.2vw, 2.4rem );
	font-weight: 600;
	margin: 0 0 10px;
	color: var( --ltg-color-accent-dark );
}

.ltg-custom-section__subtitle {
	font-family: var( --ltg-font-heading );
	font-style: italic;
	font-size: 1.05rem;
	color: var( --ltg-color-text-muted );
	margin: 0 0 14px;
}

.ltg-custom-section__description {
	margin: 0 0 20px;
	line-height: 1.7;
}

.ltg-custom-section__description p:last-child {
	margin-bottom: 0;
}

/* "Image background" layout: the image is the section's own
   background (see section_style()) — a dark overlay + light text
   keeps whatever's on top legible regardless of the photo. */
.ltg-custom-section--bg-image {
	position: relative;
	color: #fff;
}

.ltg-custom-section--bg-image::before {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba( 0, 0, 0, 0.4 );
}

.ltg-custom-section--bg-image .ltg-container {
	position: relative;
	z-index: 1;
}

.ltg-custom-section--bg-image .ltg-custom-section__title,
.ltg-custom-section--bg-image .ltg-custom-section__subtitle,
.ltg-custom-section--bg-image .ltg-custom-section__description {
	color: #fff;
}

@media ( max-width: 700px ) {
	.ltg-custom-section__grid {
		text-align: center;
	}
}

/* ---- Back to Product Directory link (injected by frontend.js) ---- */

.ltg-back-to-directory {
	display: inline-block;
	margin-bottom: 20px;
	font-size: 0.85rem;
	font-weight: 600;
	color: var( --ltg-color-text-muted, #6b6355 );
	text-decoration: none;
}

.ltg-back-to-directory:hover {
	color: var( --ltg-color-text, #1d1a17 );
	text-decoration: underline;
}

/* ---- Unified card: ties the image and attributes/buttons together
   instead of two columns floating separately on plain white ---- */

.lttg-product-record .lttg-product-top {
	background: var( --ltg-color-surface, #faf7f0 );
	border-radius: 16px;
	padding: 32px;
	box-shadow: 0 10px 30px rgba( 0, 0, 0, 0.06 );
}

.lttg-product-image {
	background: #fff;
	border-radius: 12px;
	padding: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

/* ---- Checklist: reads as a feature list, not a disclosure ---- */

.lttg-check-list li {
	font-weight: 500;
	color: var( --ltg-color-text, #1d1a17 );
	margin-bottom: 12px;
}

.lttg-check-list li::marker {
	color: var( --ltg-color-accent, #7f9273 );
}

/* ---- "Where to Buy" buttons: match the site's actual button style
   (rounded pill, soft shadow) instead of generic outlined rectangles.
   First button reads as the primary retailer; the rest are secondary. ---- */

.lttg-where-to-buy a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	border-radius: 999px !important;
	border: 1.5px solid var( --ltg-color-text, #1d1a17 ) !important;
	font-weight: 600 !important;
	font-size: 0.85rem !important;
	padding: 0.6em 1.4em !important;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, 0.08 );
	transition: transform 150ms ease, box-shadow 150ms ease;
}

.lttg-where-to-buy a:hover {
	transform: translateY( -2px );
	box-shadow: 0 8px 18px rgba( 0, 0, 0, 0.14 );
}

.lttg-where-to-buy a:first-child {
	background: var( --ltg-color-text, #1d1a17 ) !important;
	color: #fff !important;
}

/* Brand shows once, as the big heading above the product title. The
   small "Brand:" line in the meta row underneath stays hidden below
   so it isn't shown twice. */

/* Meta line: Brand (redundant, hidden) / Category (smaller line) /
   Last reviewed (smallest, muted) — stacked instead of run together. */
.lttg-product-meta {
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 3px !important;
}

.lttg-product-meta span:nth-child( 1 ) {
	display: none;
}

.lttg-product-meta span:nth-child( 2 ) {
	font-size: 0.92rem;
	color: var( --ltg-color-text-muted, #666 );
}

.lttg-product-meta span:nth-child( 3 ) {
	font-size: 0.76rem;
	color: var( --ltg-color-text-muted, #888 );
	opacity: 0.75;
}

/* The image and the attributes/buy-buttons column were vertically
   centering against each other, making the (taller) text column push
   the (shorter) image down — which then dragged everything below it
   (Ingredients, Manufacturer) further down the page too. Aligning
   both to the top of the row fixes all of that at once, at every
   screen size. Selector includes the product wrapper for extra
   specificity, so this reliably wins over the site's own rules. */
.lttg-product-record .lttg-product-top {
	align-items: start !important;
}

/* Desktop: give the image more visual weight and the text/buttons
   column less width, rather than the site's default narrow-image
   split. Mobile (900px and under) keeps its own ratio, set below. */
@media ( min-width: 901px ) {
	.lttg-product-record .lttg-product-top {
		grid-template-columns: 50% 1fr !important;
		column-gap: 56px !important;
	}
}

/* Mobile: single column instead of a squeezed 2-column grid, in this
   order — attributes, then a centered image (now free to be genuinely
   bigger since it's not sharing a row with anything), then Where to
   Buy. .lttg-product-summary is "dissolved" via display:contents so
   its two children (.lttg-at-a-glance, .lttg-where-to-buy) become
   independently orderable alongside .lttg-product-image, even though
   they're nested one level deeper in the real markup. */
@media ( max-width: 900px ) {
	.lttg-product-record .lttg-product-top {
		display: flex !important;
		flex-direction: column;
		gap: 20px;
		padding: 20px !important;
	}

	.lttg-product-summary {
		display: contents;
	}

	.lttg-at-a-glance {
		order: 1;
	}

	.lttg-product-image {
		order: 2;
		width: 100%;
		max-width: 320px;
		margin: 0 auto;
		padding: 16px !important;
	}

	.lttg-where-to-buy {
		order: 3;
	}

	/* Checkmarks flow left-to-right, wrapping to a new row only when
	   they run out of horizontal room — much more compact than one
	   item per line, which matters more now that vertical space is at
	   a premium in the reordered single-column layout. */
	.lttg-check-list {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 10px 20px !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.lttg-check-list li {
		margin-bottom: 0 !important;
		white-space: nowrap;
	}

	/* Save vertical space on small screens — the checkmarks alone are
	   self-explanatory without a heading above them. */
	.lttg-at-a-glance > h2,
	.lttg-at-a-glance > h3,
	.lttg-at-a-glance > h4 {
		display: none;
	}

	/* "Where to Buy" buttons were sized for a wide desktop column;
	   smaller font/padding, tighter gap, and wrapping so multiple fit
	   per row instead of stacking one-per-row. */
	.lttg-purchase-links {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 8px !important;
	}

	.lttg-where-to-buy a {
		flex: 0 1 auto;
		font-size: 0.78rem !important;
		font-weight: 600 !important;
		padding: 7px 12px !important;
		min-width: 0 !important;
	}
}

/* Only below this, a centered image genuinely stops being practical —
   340px covers legacy/very small devices only; standard modern phones
   (iPhone SE at 375pt and up) keep the layout above. */
@media ( max-width: 340px ) {
	.lttg-product-image {
		max-width: 100%;
	}
}


/* v1.23.0 editable Resources dropdown and uncluttered header */
.ltg-header__logo:empty{display:none}
.ltg-header__logo:empty + .ltg-header__nav{margin-left:auto}
.ltg-nav-dropdown{position:relative}
.ltg-nav-dropdown__toggle{border:0;background:transparent;color:var(--ltg-color-text);font:inherit;font-size:.92rem;font-weight:500;padding:8px 0;cursor:pointer}
.ltg-nav-dropdown__menu{display:none;position:absolute;top:100%;left:0;min-width:220px;list-style:none;margin:0;padding:8px;background:var(--ltg-header-bg);border:1px solid var(--ltg-color-border);box-shadow:0 12px 28px rgba(0,0,0,.12);z-index:100}
.ltg-nav-dropdown:hover .ltg-nav-dropdown__menu,.ltg-nav-dropdown:focus-within .ltg-nav-dropdown__menu{display:block}
.ltg-nav-dropdown__menu li{margin:0}
.ltg-nav-dropdown__menu a{display:block;padding:10px 12px;white-space:nowrap}
@media(max-width:782px){
 .ltg-nav-dropdown__toggle{display:block;width:100%;padding:14px 24px;text-align:left}
 .ltg-nav-dropdown__menu{display:block;position:static;min-width:0;border:0;box-shadow:none;padding:0 0 6px 18px;background:transparent}
 .ltg-nav-dropdown__menu a{padding:11px 24px}
}

/* ========================================================================
 * v1.25.0 — unified launch experience
 * ====================================================================== */
.ltg-header{border-bottom:1px solid rgba(83,104,94,.14);box-shadow:0 3px 18px rgba(31,47,43,.035)}
.ltg-header__inner{min-height:68px;gap:18px}
.ltg-header__logo:empty{display:none!important}
.ltg-header__logo:empty + .ltg-header__nav{margin-left:auto}
.ltg-header__nav-list{gap:clamp(10px,1.5vw,22px)}
.ltg-header__nav-list>li>a,.ltg-nav-dropdown__toggle{font-weight:650;letter-spacing:.01em}
.ltg-btn--header-cta{border-radius:999px!important}

.ltg-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ltg-explore-grid .ltg-card--start-here{display:flex;flex-direction:column;min-height:310px;border-color:rgba(93,124,103,.2);background:linear-gradient(155deg,#fff,#f8faf7)}
.ltg-explore-grid .ltg-card--start-here.is-featured{border-color:rgba(173,135,76,.48);box-shadow:0 12px 30px rgba(35,49,45,.08);background:linear-gradient(155deg,#fbfcf8,#f7f4eb)}
.ltg-explore-grid .ltg-card__description{flex:1}
.ltg-explore-grid .ltg-btn{align-self:flex-start;min-height:44px;padding:12px 18px;font-weight:750}
.ltg-explore-grid .ltg-card--start-here:nth-child(2) .ltg-btn{padding:13px 21px;font-size:.94rem}

.ltg-guides-research{max-width:1040px;margin:0 auto;padding:18px 0 54px}
.ltg-guides-research__hero{max-width:780px;margin:0 auto 42px;text-align:center}
.ltg-guides-research__eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.14em;color:#708d71}
.ltg-guides-research__hero h2{margin:.35rem 0 .7rem;font-size:clamp(2.1rem,5vw,3.8rem);color:#14245c}
.ltg-guides-research__hero p{font-size:1.06rem;color:var(--ltg-color-text-muted)}
.ltg-guides-research>section{margin-top:36px}
.ltg-guides-research>section>h3{margin:0 0 14px;color:#14245c;font-size:1.2rem}
.ltg-guides-research__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ltg-guide-product-card{padding:28px;border:1px solid rgba(91,119,99,.2);border-radius:16px;background:#fff;box-shadow:0 10px 26px rgba(35,49,45,.045)}
.ltg-guide-product-card--featured{background:linear-gradient(145deg,#f4f8f1,#f5f7fb);border-color:rgba(173,135,76,.35)}
.ltg-guide-product-card>span{font-size:.68rem;font-weight:850;letter-spacing:.11em;color:#88703e}
.ltg-guide-product-card h4{margin:.45rem 0 .6rem;color:#14245c;font-size:1.55rem}
.ltg-guide-product-card p{line-height:1.65}
.ltg-card__link--button{appearance:none;border:0;background:none;padding:0;cursor:pointer;font:inherit}
.ltg-tracker-interest{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--ltg-color-border)}
.ltg-tracker-interest[hidden]{display:none!important}
.ltg-tracker-interest label{display:grid;gap:6px;font-size:.82rem;font-weight:700}
.ltg-tracker-interest input,.ltg-tracker-interest select{width:100%;padding:11px 12px;border:1px solid var(--ltg-color-border);border-radius:8px;background:#fff;font:inherit}
.ltg-tracker-interest [data-ltg-tracker-message]{min-height:1.2em;margin:0;font-size:.8rem;color:#587058}

.ltg-footer__nav{width:100%}
.ltg-footer__nav-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.ltg-footer__nav-groups h3,.ltg-footer__legal h3{margin:0 0 10px;color:inherit;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;opacity:.72}
.ltg-footer__nav-list{display:grid!important;gap:7px!important;margin:0!important}
.ltg-footer__legal{width:100%}
.ltg-footer__legal-list{justify-content:flex-start!important;gap:10px 18px!important}
.ltg-footer__legal-list [data-ltg-cookie-preferences]{cursor:pointer}
.ltg-cookie-revisit-hidden{display:none!important}

/* Legal documents: presentation only. WordPress page content remains untouched/editable. */
.ltg-legal-page .ltg-generic-page>.ltg-container{max-width:900px;padding-top:46px;padding-bottom:70px}
.ltg-legal-page .ltg-generic-page__title{margin:0 0 28px;color:#14245c;font-size:clamp(2rem,5vw,3.2rem)}
.ltg-legal-page .ltg-generic-page>.ltg-container{line-height:1.72}
.ltg-legal-page .ltg-generic-page>.ltg-container>p,
.ltg-legal-page .ltg-generic-page>.ltg-container>ul,
.ltg-legal-page .ltg-generic-page>.ltg-container>ol,
.ltg-legal-page .ltg-generic-page>.ltg-container>h2,
.ltg-legal-page .ltg-generic-page>.ltg-container>h3{max-width:780px;margin-left:auto;margin-right:auto}
.ltg-legal-page .ltg-generic-page h2{margin-top:2.1rem;color:#263c48;font-size:1.45rem}
.ltg-legal-page .ltg-generic-page h3{margin-top:1.6rem;color:#314a50;font-size:1.15rem}
.ltg-legal-page .ltg-generic-page li{margin:.35rem 0}

@media(max-width:980px){.ltg-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.ltg-explore-grid .ltg-card--start-here{min-height:260px}}
@media(max-width:700px){
 .ltg-grid--4,.ltg-guides-research__grid,.ltg-footer__nav-groups{grid-template-columns:1fr}
 .ltg-explore-grid .ltg-card--start-here{min-height:0}
 .ltg-guides-research{padding-top:0}.ltg-guide-product-card{padding:22px}
 .ltg-footer__nav-groups{gap:24px}.ltg-footer__legal-list{display:grid!important;gap:7px!important}
}


/* ==========================================================================
   v1.27.0 — CLEAN CONCEPT A REFRESH
   Rebuilt directly from the stable v1.25.0 baseline. One consolidated
   visual layer only. No WooCommerce account overrides. No consent-manager
   observers. The only consent integration is a narrow SEOPress revisit
   control bridge so preferences live quietly in the footer.
   ========================================================================== */
:root{
	--ltg-brand-navy:#0E2C4C;
	--ltg-brand-muted-blue:#6881A5;
	--ltg-brand-pale-blue:#B3C0D3;
	--ltg-brand-gold:#CD943C;
	--ltg-brand-cream:#F3E2CD;
	--ltg-brand-sage:#A1A786;
	--ltg-hero-champagne:#D9B56D;
}
body{background:#fffdf9;color:var(--ltg-brand-navy)}

/* SEOPress consent revisit control: SEOPress owns consent. We only hide its
 * persistent floating edit button; the footer Cookie Preferences link
 * programmatically clicks that same native control when it exists. */
.seopress-edit-choice{display:none!important}

/* Header */
.ltg-header{background:#fff!important;border-bottom:1px solid rgba(179,192,211,.7)!important;box-shadow:0 4px 18px rgba(14,44,76,.045)!important}
.ltg-header__inner{min-height:68px!important;height:auto!important;gap:18px!important}
.ltg-header__logo{display:inline-flex!important;align-items:center!important;min-width:max-content!important;text-decoration:none!important;color:var(--ltg-brand-navy)!important}
.ltg-header__wordmark{font-family:var(--ltg-font-heading)!important;font-size:clamp(1.05rem,1.8vw,1.35rem)!important;font-weight:650!important;letter-spacing:-.015em!important;color:var(--ltg-brand-navy)!important;white-space:nowrap!important}
.ltg-header__nav-list{gap:clamp(10px,1.5vw,22px)!important}
.ltg-header__nav-list>li>a,.ltg-nav-dropdown__toggle{font-family:var(--ltg-font-body)!important;font-size:.92rem!important;font-weight:650!important;letter-spacing:.01em!important;text-transform:none!important;color:var(--ltg-brand-navy)!important}
.ltg-header__nav-list>li>a:hover,.ltg-nav-dropdown__toggle:hover{color:var(--ltg-brand-muted-blue)!important}
.ltg-nav-dropdown__toggle{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;padding:8px 0;cursor:pointer}
.ltg-nav-dropdown__toggle span{color:var(--ltg-brand-muted-blue)!important;font-size:.7em!important;line-height:1}
.ltg-nav-dropdown__menu{border-color:var(--ltg-brand-pale-blue)!important;box-shadow:0 16px 36px rgba(14,44,76,.10)!important;background:#fff!important}
.ltg-btn--header-cta{background:var(--ltg-header-button-bg)!important;color:var(--ltg-header-button-text)!important;border-color:var(--ltg-header-button-bg)!important;border-radius:999px!important;box-shadow:none!important}
.ltg-btn--header-cta:hover{background:var(--ltg-brand-navy)!important;color:#fff!important;border-color:var(--ltg-brand-navy)!important}

/* Mobile Resources submenu: closed until explicitly tapped. */
@media(max-width:782px){
	.ltg-header__inner{min-height:64px!important}
	.ltg-header__nav{background:#fff!important;border-top:1px solid rgba(179,192,211,.6)!important}
	.ltg-nav-dropdown__toggle{display:flex!important;width:100%!important;justify-content:space-between!important;padding:14px 24px!important;text-align:left!important}
	.ltg-nav-dropdown__menu{display:none!important;position:static!important;min-width:0!important;border:0!important;box-shadow:none!important;padding:0 0 6px 18px!important;background:transparent!important}
	.ltg-nav-dropdown.is-open>.ltg-nav-dropdown__menu{display:block!important}
	.ltg-nav-dropdown__menu a{padding:11px 24px!important}
}

/* Hero — mobile-first, calm, no image dependency. */
#section-hero{background-color:var(--ltg-brand-navy)!important;background-image:radial-gradient(circle at 50% 38%,rgba(104,129,165,.15),transparent 58%),linear-gradient(180deg,#0B2948 0%,var(--ltg-brand-navy) 55%,#0A2541 100%)!important;border-bottom:1px solid rgba(217,181,109,.18)!important}
#section-hero>.ltg-container{padding-top:48px!important;padding-bottom:54px!important}
#section-hero .ltg-hero{max-width:850px!important;margin:0 auto!important;text-align:center!important;background:transparent!important;padding:0!important}
#section-hero .ltg-hero__title{margin:0 auto 16px!important;font-size:clamp(2.65rem,5vw,4.05rem)!important;line-height:1.04!important;letter-spacing:-.025em!important;text-shadow:none!important}
#section-hero .ltg-hero__title-main,#section-hero .ltg-hero__title-accent{display:block}
#section-hero .ltg-hero__title-main{color:var(--ltg-hero-title-color,#fff)!important}
#section-hero .ltg-hero__title-accent{color:var(--ltg-hero-tagline-color,#D9B56D)!important;margin-top:.07em}
#section-hero .ltg-hero__rule{position:relative;width:72px!important;height:1px!important;margin:0 auto 21px!important;border:0!important;border-radius:0!important;background:linear-gradient(to right,var(--ltg-hero-tagline-color,#D9B56D) 0 42%,transparent 42% 58%,var(--ltg-hero-tagline-color,#D9B56D) 58% 100%)!important}
#section-hero .ltg-hero__rule::after{content:'';position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;transform:translate(-50%,-50%);background:var(--ltg-hero-tagline-color,#D9B56D);box-shadow:0 0 10px rgba(217,181,109,.36)}
#section-hero .ltg-hero__description,#section-hero .ltg-hero__supporting{max-width:720px!important;margin-left:auto!important;margin-right:auto!important;font-size:1rem!important;line-height:1.62!important;color:rgba(255,255,255,.84)!important;opacity:1!important}
#section-hero .ltg-hero__description--lead{margin-bottom:14px!important;font-weight:560!important}
#section-hero .ltg-hero__supporting{margin-top:0!important;margin-bottom:17px!important;color:rgba(255,255,255,.73)!important}
#section-hero .ltg-hero__closing{margin:0 auto 24px!important;color:var(--ltg-hero-tagline-color,#D9B56D)!important;font-family:var(--ltg-font-heading)!important;font-size:1.06rem!important;font-weight:600!important;letter-spacing:.002em!important}
#section-hero .ltg-hero__actions{display:flex!important;justify-content:center!important;gap:12px!important;margin:0 auto!important}
#section-hero .ltg-hero__actions .ltg-btn{min-width:190px!important;justify-content:center!important;border-radius:12px!important;padding:.84em 1.4em!important;font-weight:650!important}
#section-hero .ltg-btn--primary{background:var(--ltg-hero-primary-button,#FFF9EF)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-hero-tagline-color,#D9B56D)!important;box-shadow:none!important}
#section-hero .ltg-btn--primary:hover,#section-hero .ltg-btn--primary:focus-visible{background:var(--ltg-hero-tagline-color,#D9B56D)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-hero-tagline-color,#D9B56D)!important;transform:none!important}
#section-hero .ltg-btn--secondary{background:transparent!important;color:var(--ltg-hero-secondary-button,#fff)!important;border-color:rgba(255,255,255,.58)!important}
#section-hero .ltg-btn--secondary:hover,#section-hero .ltg-btn--secondary:focus-visible{background:#fff!important;color:var(--ltg-brand-navy)!important;border-color:#fff!important}
@media(max-width:782px){
	#section-hero>.ltg-container{padding:34px 20px 38px!important}
	#section-hero .ltg-hero__title{font-size:clamp(2.2rem,10.2vw,2.95rem)!important;margin-bottom:15px!important}
	#section-hero .ltg-hero__rule{margin-bottom:18px!important}
	#section-hero .ltg-hero__description,#section-hero .ltg-hero__supporting{font-size:.95rem!important;line-height:1.56!important}
	#section-hero .ltg-hero__closing{font-size:1rem!important;margin-bottom:21px!important}
	#section-hero .ltg-hero__actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;max-width:420px!important;gap:10px!important}
	#section-hero .ltg-hero__actions .ltg-btn{width:100%!important;min-width:0!important;min-height:48px!important}
}

/* Explore Now — stronger consistency, no gold/beige featured block. */
#section-start_here{padding-top:52px!important;padding-bottom:58px!important;background:#fffdf9!important}
#section-start_here .ltg-section__heading{margin-bottom:28px!important}
#section-start_here .ltg-section__title{color:var(--ltg-brand-navy)!important}
.ltg-explore-grid .ltg-card--start-here,.ltg-explore-grid .ltg-card--start-here.is-featured{border:1px solid rgba(179,192,211,.78)!important;background:#fff!important;box-shadow:0 10px 26px rgba(14,44,76,.055)!important}
.ltg-explore-grid .ltg-card--start-here.is-featured{border-top:3px solid var(--ltg-brand-gold)!important}
.ltg-explore-grid .ltg-card__icon{color:var(--ltg-brand-muted-blue)!important}
.ltg-explore-grid .ltg-card--start-here .ltg-btn{background:var(--ltg-brand-navy)!important;color:#fff!important;border-color:var(--ltg-brand-navy)!important}
.ltg-explore-grid .ltg-card--start-here .ltg-btn:hover{background:var(--ltg-brand-gold)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-brand-gold)!important;transform:none!important}
@media(max-width:782px){#section-start_here{padding-top:38px!important;padding-bottom:44px!important}#section-start_here .ltg-section__heading{margin-bottom:22px!important}}

/* Guides & Research */
.ltg-generic-page--guides-research{padding-top:24px!important}
.ltg-generic-page--guides-research>.ltg-container{max-width:1120px!important}
.ltg-guides-research{color:var(--ltg-brand-navy)!important;padding-top:0!important}
.ltg-guides-research__eyebrow{color:var(--ltg-brand-gold)!important}
.ltg-guides-research__hero h2,.ltg-guides-research>section>h3,.ltg-guide-product-card h4{color:var(--ltg-brand-navy)!important}
.ltg-guide-product-card{border:1px solid rgba(179,192,211,.76)!important;background:#fff!important;box-shadow:0 10px 26px rgba(14,44,76,.05)!important}
.ltg-guide-product-card--featured{background:#fff!important;border-top:3px solid var(--ltg-brand-gold)!important}
.ltg-guide-product-card>span,.ltg-guides-research__planned-grid span{color:#8F6425!important}
.ltg-guide-product-card .ltg-btn--primary{background:var(--ltg-brand-navy)!important;color:#fff!important;border-color:var(--ltg-brand-navy)!important}
.ltg-guide-product-card .ltg-btn--primary:hover{background:var(--ltg-brand-gold)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-brand-gold)!important}
.ltg-guide-product-card--tracker{background:linear-gradient(145deg,#fff,rgba(161,167,134,.10))!important}
.ltg-guide-product-card--tracker>.ltg-card__link--button{display:inline-flex!important;padding:.65rem 1rem!important;border:1px solid var(--ltg-brand-sage)!important;border-radius:999px!important;background:var(--ltg-brand-sage)!important;color:var(--ltg-brand-navy)!important;text-decoration:none!important}
.ltg-tracker-interest,.ltg-guide-request{border-top:1px solid rgba(179,192,211,.75)!important;margin-top:18px;padding-top:18px}
.ltg-tracker-interest input,.ltg-tracker-interest textarea,.ltg-guide-request textarea{width:100%;box-sizing:border-box;padding:12px 13px;border:1px solid var(--ltg-brand-pale-blue)!important;border-radius:10px;background:#fff;font:inherit;color:var(--ltg-brand-navy);resize:vertical}
.ltg-tracker-interest textarea{min-height:132px}.ltg-guide-request textarea{min-height:108px}
.ltg-guides-research__planned{padding-top:8px}
.ltg-guides-research__planned-intro{margin:-4px 0 18px;color:var(--ltg-brand-muted-blue)}
.ltg-guides-research__planned-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ltg-guides-research__planned-grid article{padding:20px;border:1px solid rgba(179,192,211,.76);border-radius:14px;background:rgba(179,192,211,.10)}
.ltg-guides-research__planned-grid span{font-size:.66rem;font-weight:850;letter-spacing:.10em}.ltg-guides-research__planned-grid h4{margin:.35rem 0 0;color:var(--ltg-brand-navy);font-size:1.15rem}
.ltg-guide-request h4{margin:0 0 10px;color:var(--ltg-brand-navy)}
.ltg-guide-request form{display:grid;gap:10px}.ltg-guide-request .ltg-btn{justify-self:start;background:var(--ltg-brand-navy)!important;color:#fff!important}
@media(max-width:782px){.ltg-guides-research__grid,.ltg-guides-research__planned-grid{grid-template-columns:1fr!important}}

/* Contact + legal presentation only. */
.ltg-contact{max-width:760px!important;margin:0 auto!important;padding:28px!important;border:1px solid rgba(179,192,211,.72)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 30px rgba(14,44,76,.05)!important}
.ltg-contact__copy-btn{border-color:var(--ltg-brand-navy)!important;color:var(--ltg-brand-navy)!important}
.ltg-legal-page .ltg-generic-page>.ltg-container{max-width:900px!important}
.ltg-legal-page .ltg-generic-page__title{color:var(--ltg-brand-navy)!important;text-align:left!important;padding-bottom:18px;border-bottom:1px solid rgba(205,148,60,.34)}
.ltg-legal-page .ltg-generic-page{line-height:1.72}.ltg-legal-page .ltg-generic-page p{margin:0 0 1.15em}.ltg-legal-page .ltg-generic-page h2,.ltg-legal-page .ltg-generic-page h3{color:var(--ltg-brand-navy)!important;margin-top:1.65em}.ltg-legal-page .ltg-generic-page a{color:var(--ltg-brand-muted-blue)!important;text-underline-offset:3px}

/* Footer — approved deep navy/gold/cream direction. */
.ltg-footer{background:var(--ltg-footer-bg)!important;color:var(--ltg-footer-text)!important}
.ltg-footer__logo,.ltg-footer__description,.ltg-footer__nav-list a,.ltg-footer__legal-list a,.ltg-footer__copyright{color:var(--ltg-footer-text)!important}
.ltg-footer__logo{font-family:var(--ltg-font-heading)!important;font-size:1.28rem!important;font-weight:650!important}
.ltg-footer__nav-groups{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:34px!important}
.ltg-footer__nav-groups h3,.ltg-footer__legal h3{color:var(--ltg-brand-gold)!important;opacity:1!important}
.ltg-footer__nav-list a:hover,.ltg-footer__legal-list a:hover{color:#fff!important}.ltg-footer__social a{color:var(--ltg-footer-text)!important}.ltg-footer__social a:hover{color:var(--ltg-brand-gold)!important}
.ltg-footer__legal{padding-top:18px;border-top:1px solid rgba(243,226,205,.18)}
@media(max-width:782px){.ltg-footer__nav-groups{grid-template-columns:1fr 1fr!important;gap:24px!important}}@media(max-width:520px){.ltg-footer__nav-groups{grid-template-columns:1fr!important}}

/* ========================================================================
 * v1.27.3 — final contained navy homepage hero
 * ====================================================================== */

:root{
 --ltg-brand-navy:#0E2C4C;
 --ltg-brand-muted-blue:#6881A5;
 --ltg-brand-pale-blue:#B3C0D3;
 --ltg-brand-gold:#CD943C;
 --ltg-brand-champagne:#D9B56D;
 --ltg-brand-cream:#F3E2CD;
 --ltg-brand-sage:#A1A786;
}

/* SEOPress remains the consent owner. Hide only its persistent revisit
   control; the footer Cookie Preferences link invokes the native button. */
.seopress-edit-choice,
.seopress-edit-choice.ltg-cookie-revisit-hidden{
 position:fixed!important;
 left:-10000px!important;
 bottom:auto!important;
 width:1px!important;
 height:1px!important;
 overflow:hidden!important;
 opacity:0!important;
 pointer-events:none!important;
}
.ltg-footer__legal-list [data-ltg-cookie-preferences]{cursor:pointer}

/* Resources must look exactly like its sibling nav labels. The chevron alone
   communicates the dropdown, with no circle, highlight, or special color. */
.ltg-header__wordmark{font-family:var(--ltg-font-heading)!important;color:var(--ltg-brand-navy)!important}
.ltg-nav-dropdown__toggle{display:inline-flex!important;align-items:center!important;gap:6px!important;font:inherit!important;font-size:inherit!important;font-weight:inherit!important;color:inherit!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.ltg-nav-dropdown__indicator{display:inline!important;width:auto!important;height:auto!important;border:0!important;border-radius:0!important;background:transparent!important;color:currentColor!important;font-size:.88em!important;font-weight:800!important;line-height:1!important;transform:translateY(-1px)!important;transition:transform .18s ease!important}
.ltg-nav-dropdown__toggle:hover .ltg-nav-dropdown__indicator,.ltg-nav-dropdown__toggle:focus-visible .ltg-nav-dropdown__indicator{color:currentColor!important}
.ltg-nav-dropdown.is-open>.ltg-nav-dropdown__toggle .ltg-nav-dropdown__indicator{transform:translateY(-1px) rotate(180deg)!important}

/* Homepage: return to the approved contained navy box while keeping the
   tighter editorial spacing learned from Guides & Research. */
#section-hero{
 background:linear-gradient(180deg,#FFFDF9 0%,#FAF7F1 100%)!important;
 border:0!important;
 padding:0!important;
}
#section-hero>.ltg-container{max-width:1160px!important;padding:18px 24px 8px!important}
#section-hero .ltg-hero{
 max-width:none!important;
 margin:0 auto!important;
 padding:25px 44px 28px!important;
 background:radial-gradient(circle at 50% 24%,rgba(104,129,165,.15),transparent 58%),linear-gradient(180deg,#0B2948 0%,#0E2C4C 62%,#0A2541 100%)!important;
 border:1px solid rgba(179,192,211,.30)!important;
 border-radius:18px!important;
 box-shadow:0 12px 32px rgba(14,44,76,.08)!important;
 text-align:center!important;
}
#section-hero .ltg-hero__eyebrow{margin:0 0 11px!important;color:var(--ltg-brand-sage)!important;font-size:.72rem!important;font-weight:850!important;letter-spacing:.15em!important;text-transform:uppercase!important}
#section-hero .ltg-hero__title{margin:0 auto 13px!important;font-size:clamp(2.48rem,5vw,4.1rem)!important;line-height:1.04!important;letter-spacing:-.028em!important;text-shadow:none!important}
#section-hero .ltg-hero__title-main,#section-hero .ltg-hero__title-accent{display:block!important}
#section-hero .ltg-hero__title-main{color:#fff!important}
#section-hero .ltg-hero__title-accent{color:var(--ltg-brand-champagne)!important;margin-top:.06em!important}
#section-hero .ltg-hero__rule{position:relative!important;width:74px!important;height:1px!important;margin:0 auto 17px!important;border:0!important;background:linear-gradient(to right,var(--ltg-brand-champagne) 0 43%,transparent 43% 57%,var(--ltg-brand-champagne) 57% 100%)!important}
#section-hero .ltg-hero__rule::after{content:'';position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;transform:translate(-50%,-50%);background:var(--ltg-brand-champagne)}
#section-hero .ltg-hero__description,#section-hero .ltg-hero__supporting{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;color:rgba(255,255,255,.82)!important;font-size:1rem!important;font-weight:450!important;line-height:1.58!important;opacity:1!important}
#section-hero .ltg-hero__description--lead{margin-bottom:11px!important}
#section-hero .ltg-hero__supporting{margin-top:0!important;margin-bottom:15px!important}
#section-hero .ltg-hero__closing{margin:0 auto 20px!important;color:var(--ltg-brand-champagne)!important;font-family:var(--ltg-font-heading)!important;font-size:1rem!important;font-weight:650!important;line-height:1.35!important}
#section-hero .ltg-hero__closing-part{display:inline}
#section-hero .ltg-hero__actions{display:flex!important;justify-content:center!important;gap:12px!important;margin:0!important}
#section-hero .ltg-hero__actions .ltg-btn{min-width:0!important;white-space:nowrap!important;border-radius:10px!important;padding:.82em 1.25em!important;font-size:.92rem!important;font-weight:700!important}
#section-hero .ltg-btn--primary{background:#FFF9EF!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-brand-champagne)!important;box-shadow:none!important}
#section-hero .ltg-btn--primary:hover,#section-hero .ltg-btn--primary:focus-visible{background:var(--ltg-brand-champagne)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-brand-champagne)!important;transform:none!important}
#section-hero .ltg-btn--secondary{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.60)!important}
#section-hero .ltg-btn--secondary:hover,#section-hero .ltg-btn--secondary:focus-visible{background:#fff!important;color:var(--ltg-brand-navy)!important;border-color:#fff!important;transform:none!important}

/* Explore Now remains immediately visible beneath the contained hero. */
#section-start_here{padding-top:12px!important;padding-bottom:42px!important;background:#FFFDF9!important}
#section-start_here.ltg-animate{opacity:1!important;transform:none!important;transition:none!important}
#section-start_here .ltg-section__heading{margin-bottom:18px!important}
#section-start_here .ltg-section__title{color:var(--ltg-brand-navy)!important}
.ltg-explore-grid .ltg-card--start-here,.ltg-explore-grid .ltg-card--start-here.is-featured{border:1px solid rgba(179,192,211,.78)!important;background:#fff!important;box-shadow:0 10px 26px rgba(14,44,76,.045)!important}
.ltg-explore-grid .ltg-card--start-here.is-featured{border-top:3px solid var(--ltg-brand-gold)!important}
.ltg-explore-grid .ltg-card__icon{color:var(--ltg-brand-muted-blue)!important}
.ltg-explore-grid .ltg-card--start-here .ltg-btn{white-space:nowrap!important;background:var(--ltg-brand-navy)!important;color:#fff!important;border-color:var(--ltg-brand-navy)!important;font-size:.86rem!important;padding:.75em 1em!important}
.ltg-explore-grid .ltg-card--start-here .ltg-btn:hover{background:var(--ltg-brand-gold)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-brand-gold)!important;transform:none!important}

/* Coming Soon: two active products fill the row. */
#section-coming_soon{background:#FAF7F1!important}
.ltg-coming-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.ltg-coming-grid--1{grid-template-columns:minmax(0,720px)!important;justify-content:center!important}
#section-coming_soon .ltg-card{background:#fff!important;border-color:rgba(179,192,211,.74)!important}
#section-coming_soon .ltg-card__eyebrow{color:var(--ltg-brand-sage)!important}

/* Keep Guides & Research and the approved footer family intact. */
.ltg-guides-research__planned-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.ltg-footer{background:var(--ltg-footer-bg)!important;color:var(--ltg-footer-text)!important}

/* Contact + legal presentation from the approved Concept A system. */
.ltg-contact{max-width:760px!important;margin:0 auto!important;padding:28px!important;border:1px solid rgba(179,192,211,.72)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 30px rgba(14,44,76,.05)!important}
.ltg-contact__copy-btn{border-color:var(--ltg-brand-navy)!important;color:var(--ltg-brand-navy)!important}
.ltg-legal-page .ltg-generic-page>.ltg-container{max-width:900px!important}
.ltg-legal-page .ltg-generic-page__title{color:var(--ltg-brand-navy)!important;text-align:left!important;padding-bottom:18px;border-bottom:1px solid rgba(205,148,60,.34)}
.ltg-legal-page .ltg-generic-page{line-height:1.72}.ltg-legal-page .ltg-generic-page p{margin:0 0 1.15em}.ltg-legal-page .ltg-generic-page h2,.ltg-legal-page .ltg-generic-page h3{color:var(--ltg-brand-navy)!important;margin-top:1.65em}.ltg-legal-page .ltg-generic-page a{color:var(--ltg-brand-muted-blue)!important;text-underline-offset:3px}

@media(max-width:782px){
 #section-hero>.ltg-container{padding:12px 12px 8px!important}
 #section-hero .ltg-hero{padding:20px 18px 23px!important;border-radius:14px!important}
 #section-hero .ltg-hero__eyebrow{margin-bottom:10px!important;font-size:.68rem!important;letter-spacing:.12em!important}
 #section-hero .ltg-hero__title{font-size:clamp(2.18rem,10vw,3rem)!important;margin-bottom:13px!important}
 #section-hero .ltg-hero__rule{margin-bottom:15px!important}
 #section-hero .ltg-hero__description,#section-hero .ltg-hero__supporting{font-size:.95rem!important;line-height:1.52!important}
 #section-hero .ltg-hero__closing{font-size:clamp(.88rem,3.8vw,.98rem)!important;margin-bottom:18px!important}
 #section-hero .ltg-hero__closing-part--1{display:block!important;margin-bottom:2px!important}
 #section-hero .ltg-hero__closing-part--2,#section-hero .ltg-hero__closing-part--3{white-space:nowrap!important}
 #section-hero .ltg-hero__actions{flex-direction:column!important;align-items:stretch!important;max-width:330px!important;margin-left:auto!important;margin-right:auto!important}
 #section-hero .ltg-hero__actions .ltg-btn{width:100%!important;justify-content:center!important}
 #section-start_here{padding-top:8px!important}
 .ltg-coming-grid--2{grid-template-columns:1fr!important}
 .ltg-nav-dropdown__indicator{font-size:1em!important}
}

/* ========================================================================
 * v1.27.4 — final homepage/nav typography + spacing refinement
 * ====================================================================== */

/* Resources: the word itself must look exactly like every sibling nav item.
   Only the chevron is larger so the dropdown affordance is obvious. */
.ltg-header__nav-list>li>a,
.ltg-header__nav-list>li>.ltg-nav-dropdown__toggle{
 font-family:var(--ltg-font-body)!important;
 font-size:.92rem!important;
 font-weight:650!important;
 letter-spacing:.01em!important;
 text-transform:none!important;
 color:var(--ltg-brand-navy)!important;
}
.ltg-header__nav-list>li>.ltg-nav-dropdown__toggle{
 display:inline-flex!important;
 align-items:center!important;
 gap:5px!important;
 background:transparent!important;
 border:0!important;
 padding:8px 0!important;
 box-shadow:none!important;
}
.ltg-header__nav-list>li>.ltg-nav-dropdown__toggle .ltg-nav-dropdown__indicator{
 color:currentColor!important;
 font-size:1.22em!important;
 font-weight:800!important;
 line-height:1!important;
 transform:translateY(-1px)!important;
}
.ltg-nav-dropdown.is-open>.ltg-nav-dropdown__toggle .ltg-nav-dropdown__indicator{
 transform:translateY(-1px) rotate(180deg)!important;
}

/* Match the homepage headline to the typography source Christina likes on
   Guides & Research instead of forcing Core's separate Fraunces treatment. */
#section-hero .ltg-hero__title{
 font-family:var(--global-heading-font-family,var(--ltg-font-heading))!important;
 font-weight:700!important;
 letter-spacing:-.02em!important;
}

/* Coming Soon gets the same tight section rhythm as Explore Now. */
#section-coming_soon{
 padding-top:12px!important;
 padding-bottom:42px!important;
}
#section-coming_soon .ltg-section__heading{margin-bottom:18px!important}
#section-coming_soon .ltg-section__title{color:var(--ltg-brand-navy)!important}

@media(max-width:782px){
 .ltg-header__nav-list>li>.ltg-nav-dropdown__toggle{
  display:flex!important;
  width:100%!important;
  justify-content:space-between!important;
  padding:14px 24px!important;
  text-align:left!important;
 }
 .ltg-header__nav-list>li>.ltg-nav-dropdown__toggle .ltg-nav-dropdown__indicator{
  font-size:1.28em!important;
 }
 #section-coming_soon{padding-top:8px!important;padding-bottom:36px!important}
 #section-coming_soon .ltg-section__heading{margin-bottom:16px!important}
}


/* ================================================================
 * v1.27.5 — public legal-page source correction + homepage finish
 * ================================================================ */

/* The actual public legal pages now use the authoritative page IDs set by
   migration v17. Presentation only: source wording remains untouched. */
body.ltg-legal-page{
 background:#FAF7F1!important;
}
body.ltg-legal-page .ltg-generic-page{
 background:#FAF7F1!important;
 padding:18px 0 28px!important;
}
body.ltg-legal-page .ltg-generic-page>.ltg-container{
 max-width:920px!important;
 margin-top:18px!important;
 margin-bottom:18px!important;
 padding:clamp(28px,4.5vw,52px)!important;
 background:#fff!important;
 border:1px solid rgba(179,192,211,.62)!important;
 border-radius:18px!important;
 box-shadow:0 10px 34px rgba(14,44,76,.07)!important;
 line-height:1.72!important;
}
body.ltg-legal-page .ltg-generic-page__title{
 margin:0 0 28px!important;
 padding:0 0 18px!important;
 color:var(--ltg-brand-navy)!important;
 border-bottom:1px solid rgba(205,148,60,.34)!important;
 font-family:var(--global-heading-font-family,var(--ltg-font-heading))!important;
 font-size:clamp(2rem,4.5vw,3rem)!important;
 line-height:1.1!important;
}
body.ltg-legal-page .ltg-generic-page p,
body.ltg-legal-page .ltg-generic-page ul,
body.ltg-legal-page .ltg-generic-page ol{
 max-width:780px!important;
 margin-left:auto!important;
 margin-right:auto!important;
}
body.ltg-legal-page .ltg-generic-page p{margin-top:0!important;margin-bottom:1.12em!important}
body.ltg-legal-page .ltg-generic-page p>strong:first-child{
 color:var(--ltg-brand-navy)!important;
 font-weight:700!important;
}
body.ltg-legal-page .ltg-generic-page a{
 color:var(--ltg-brand-muted-blue)!important;
 text-decoration-thickness:1px!important;
 text-underline-offset:3px!important;
}

/* Remove the unnecessary blank runway between the last homepage content and
   the approved footer. Keep a little breathing room, but bring the footer up. */
body.home .ltg-main>.ltg-section:last-child{
 padding-bottom:18px!important;
 margin-bottom:0!important;
}
body.home #section-coming_soon{
 padding-bottom:18px!important;
 margin-bottom:0!important;
}
body.home .ltg-footer{margin-top:0!important}

@media(max-width:782px){
 body.ltg-legal-page .ltg-generic-page{padding:10px 0 18px!important}
 body.ltg-legal-page .ltg-generic-page>.ltg-container{
  margin-top:10px!important;
  margin-bottom:10px!important;
  padding:24px 20px!important;
  border-radius:14px!important;
 }
 body.home .ltg-main>.ltg-section:last-child,
 body.home #section-coming_soon{padding-bottom:12px!important}
}


/* ================================================================
 * v1.27.6 — LEGAL PAGES: PRESENTATION ONLY
 * Core never writes or transforms legal wording. These rules only
 * style whatever Christina has saved in the WordPress page editor.
 * ================================================================ */
body.ltg-legal-page{
 background:var(--ltg-brand-cream,#FAF7F1)!important;
}
body.ltg-legal-page .ltg-generic-page{
 background:linear-gradient(180deg,#F8F4EC 0,#FCFAF6 240px,#FAF7F1 100%)!important;
 padding:clamp(24px,4vw,48px) 0 clamp(42px,6vw,76px)!important;
}
body.ltg-legal-page .ltg-generic-page>.ltg-container{
 position:relative!important;
 max-width:960px!important;
 margin:0 auto!important;
 padding:clamp(34px,5vw,64px) clamp(26px,6vw,72px)!important;
 background:#fff!important;
 border:1px solid rgba(14,44,76,.11)!important;
 border-radius:20px!important;
 box-shadow:0 16px 50px rgba(14,44,76,.08)!important;
 color:#263746!important;
 font-size:clamp(1rem,.96rem + .12vw,1.075rem)!important;
 line-height:1.82!important;
 overflow:hidden!important;
}
body.ltg-legal-page .ltg-generic-page>.ltg-container:before{
 content:"";
 position:absolute;
 top:0;left:0;right:0;
 height:5px;
 background:linear-gradient(90deg,var(--ltg-brand-navy,#0E2C4C) 0 72%,var(--ltg-brand-gold,#CD943C) 72% 100%);
}
body.ltg-legal-page .ltg-generic-page__title{
 max-width:790px!important;
 margin:0 auto 34px!important;
 padding:0 0 22px!important;
 color:var(--ltg-brand-navy,#0E2C4C)!important;
 border-bottom:1px solid rgba(205,148,60,.42)!important;
 font-family:var(--global-heading-font-family,var(--ltg-font-heading),Georgia,serif)!important;
 font-size:clamp(2.05rem,4.2vw,3.15rem)!important;
 font-weight:650!important;
 line-height:1.08!important;
 letter-spacing:-.018em!important;
 text-wrap:balance!important;
}
body.ltg-legal-page .ltg-generic-page .entry-content,
body.ltg-legal-page .ltg-generic-page .wp-block-post-content{
 max-width:790px!important;
 margin-inline:auto!important;
}
body.ltg-legal-page .ltg-generic-page p,
body.ltg-legal-page .ltg-generic-page ul,
body.ltg-legal-page .ltg-generic-page ol,
body.ltg-legal-page .ltg-generic-page blockquote,
body.ltg-legal-page .ltg-generic-page h2,
body.ltg-legal-page .ltg-generic-page h3,
body.ltg-legal-page .ltg-generic-page h4{
 max-width:790px!important;
 margin-left:auto!important;
 margin-right:auto!important;
}
body.ltg-legal-page .ltg-generic-page p{
 margin-top:0!important;
 margin-bottom:1.25em!important;
 color:#334858!important;
}
body.ltg-legal-page .ltg-generic-page h2{
 margin-top:2.15em!important;
 margin-bottom:.72em!important;
 color:var(--ltg-brand-navy,#0E2C4C)!important;
 font-family:var(--global-heading-font-family,var(--ltg-font-heading),Georgia,serif)!important;
 font-size:clamp(1.42rem,2.4vw,1.78rem)!important;
 line-height:1.22!important;
}
body.ltg-legal-page .ltg-generic-page h3,
body.ltg-legal-page .ltg-generic-page h4{
 margin-top:1.75em!important;
 margin-bottom:.62em!important;
 color:#274B63!important;
 font-size:1.12rem!important;
 line-height:1.35!important;
}
body.ltg-legal-page .ltg-generic-page p>strong:first-child{
 color:var(--ltg-brand-navy,#0E2C4C)!important;
 font-weight:750!important;
}
body.ltg-legal-page .ltg-generic-page ul,
body.ltg-legal-page .ltg-generic-page ol{
 margin-top:.6em!important;
 margin-bottom:1.45em!important;
 padding-left:1.45em!important;
 color:#334858!important;
}
body.ltg-legal-page .ltg-generic-page li{
 margin:.48em 0!important;
 padding-left:.15em!important;
}
body.ltg-legal-page .ltg-generic-page li::marker{
 color:var(--ltg-brand-gold,#CD943C)!important;
 font-weight:700!important;
}
body.ltg-legal-page .ltg-generic-page a{
 color:#315B78!important;
 text-decoration-color:rgba(205,148,60,.65)!important;
 text-decoration-thickness:1px!important;
 text-underline-offset:3px!important;
}
body.ltg-legal-page .ltg-generic-page a:hover{color:var(--ltg-brand-navy,#0E2C4C)!important}
body.ltg-legal-page .ltg-generic-page hr{
 max-width:790px!important;
 margin:2rem auto!important;
 border:0!important;
 border-top:1px solid rgba(14,44,76,.11)!important;
}
body.ltg-legal-page .ltg-generic-page blockquote{
 margin-top:1.4em!important;
 margin-bottom:1.6em!important;
 padding:18px 22px!important;
 background:#F7F3E9!important;
 border-left:3px solid var(--ltg-brand-gold,#CD943C)!important;
 color:#334858!important;
}
@media(max-width:782px){
 body.ltg-legal-page .ltg-generic-page{padding:14px 0 30px!important}
 body.ltg-legal-page .ltg-generic-page>.ltg-container{
  width:calc(100% - 24px)!important;
  padding:34px 20px 30px!important;
  border-radius:15px!important;
  font-size:1rem!important;
  line-height:1.72!important;
 }
 body.ltg-legal-page .ltg-generic-page__title{
  margin-bottom:26px!important;
  padding-bottom:18px!important;
  font-size:clamp(1.85rem,9vw,2.45rem)!important;
 }
 body.ltg-legal-page .ltg-generic-page h2{margin-top:1.8em!important}
}
