/* ==========================================================================
   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, #4A5672 );
	margin: 0 0 20px;
}

.ltg-directory-banner {
	background: var( --ltg-color-bg, #FFFFFF );
	border: 1px solid var( --ltg-color-border, #D5DDEF );
	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, #1F2A44 );
	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, #4A5672 );
}

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

/* ---- 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, #1F2A44 ) !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, #4A5672 );
	text-decoration: none;
}

.ltg-back-to-directory:hover {
	color: var( --ltg-color-text, #1F2A44 );
	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, #FFFFFF );
	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, #1F2A44 );
	margin-bottom: 12px;
}

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

/* ---- "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, #1F2A44 ) !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, #1F2A44 ) !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(20,36,92,.2);background:linear-gradient(155deg,#fff,#F4F6F9)}
.ltg-explore-grid .ltg-card--start-here.is-featured{border-color:rgba(58,98,184,.48);box-shadow:0 12px 30px rgba(35,49,45,.08);background:linear-gradient(155deg,#FFFFFF,#F4F6F9)}
.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:#3A62B8}
.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,#F4F6F9,#f5f7fb);border-color:rgba(58,98,184,.35)}
.ltg-guide-product-card>span{font-size:.68rem;font-weight:850;letter-spacing:.11em;color:#3A62B8}
.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:#4A5672}

.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:#14245C;
	--ltg-brand-muted-blue:#4A5672;
	--ltg-brand-pale-blue:#C9D3EA;
	--ltg-brand-gold:#3A62B8;
	--ltg-brand-cream:#DFE5F3;
	--ltg-brand-sage:#4A5672;
	--ltg-hero-champagne:#3A62B8;
}
body{background:#FFFFFF;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(201,211,234,.7)!important;box-shadow:0 4px 18px rgba(20,36,92,.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(20,36,92,.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(201,211,234,.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,#14245C 0%,var(--ltg-brand-navy) 55%,#14245C 100%)!important;border-bottom:1px solid rgba(58,98,184,.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,#3A62B8)!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,#3A62B8) 0 42%,transparent 42% 58%,var(--ltg-hero-tagline-color,#3A62B8) 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,#3A62B8);box-shadow:0 0 10px rgba(58,98,184,.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,#3A62B8)!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,#FFFFFF)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-hero-tagline-color,#3A62B8)!important;box-shadow:none!important}
#section-hero .ltg-btn--primary:hover,#section-hero .ltg-btn--primary:focus-visible{background:var(--ltg-hero-tagline-color,#3A62B8)!important;color:var(--ltg-brand-navy)!important;border-color:var(--ltg-hero-tagline-color,#3A62B8)!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:#FFFFFF!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(201,211,234,.78)!important;background:#fff!important;box-shadow:0 10px 26px rgba(20,36,92,.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(201,211,234,.76)!important;background:#fff!important;box-shadow:0 10px 26px rgba(20,36,92,.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:#3A62B8!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(74,86,114,.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(201,211,234,.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(201,211,234,.76);border-radius:14px;background:rgba(201,211,234,.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(201,211,234,.72)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 30px rgba(20,36,92,.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(58,98,184,.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:#14245C;
 --ltg-brand-muted-blue:#4A5672;
 --ltg-brand-pale-blue:#C9D3EA;
 --ltg-brand-gold:#3A62B8;
 --ltg-brand-champagne:#3A62B8;
 --ltg-brand-cream:#DFE5F3;
 --ltg-brand-sage:#4A5672;
}

/* 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,#FFFFFF 0%,#F4F6F9 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,#14245C 0%,#14245C 62%,#14245C 100%)!important;
 border:1px solid rgba(201,211,234,.30)!important;
 border-radius:18px!important;
 box-shadow:0 12px 32px rgba(20,36,92,.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:#FFFFFF!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:#FFFFFF!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(201,211,234,.78)!important;background:#fff!important;box-shadow:0 10px 26px rgba(20,36,92,.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:#F4F6F9!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(201,211,234,.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. */
/* v1.27.7: homepage library feature. These selectors affect the homepage only. */
#section-hero .ltg-hero{padding:19px 32px 22px!important}
#section-hero .ltg-hero__title{font-size:clamp(2rem,3.7vw,3rem)!important;margin-bottom:10px!important}
#section-hero .ltg-hero__description{max-width:700px!important;margin-bottom:16px!important}
#section-hero .ltg-hero__supporting,#section-hero .ltg-hero__closing{display:none!important}
#section-hero .ltg-btn--primary{background:var(--ltg-brand-gold,#3A62B8)!important;border-color:var(--ltg-brand-gold,#3A62B8)!important;color:var(--ltg-brand-navy,#14245C)!important}
#section-mast_cell_library{padding:32px 0 46px!important;background:#FFFFFF!important}
#section-mast_cell_library>.ltg-container{max-width:1170px!important}
.ltg-library-feature{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:38px;align-items:center;padding:clamp(26px,4vw,48px);border-radius:20px;background:linear-gradient(135deg,#14245C,#0a233e);box-shadow:0 18px 40px rgba(20,36,92,.14);color:#fff;text-align:left}
.ltg-library-feature__eyebrow,.ltg-library-feature__preview-label{margin:0 0 13px;color:#A9BDE8;font-size:.77rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.ltg-library-feature h2{margin:0 0 17px;color:#fff;font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.16;max-width:670px}
.ltg-library-feature__description{max-width:670px;margin:0 0 20px;color:#e7edf4;font-size:1.03rem;line-height:1.65}
.ltg-library-feature__topics{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 22px}
.ltg-library-feature__topics li{padding:7px 12px;border:1px solid rgba(255,255,255,.28);border-radius:50px;color:#f6f8fa;font-size:.82rem}
.ltg-library-feature__offer{color:#14245C;font-size:.94rem;margin:0 0 17px}
.ltg-library-feature__offer strong{font-size:1.19rem;color:#fff}
.ltg-library-feature__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.ltg-library-feature__primary{background:#14245C!important;color:#14245C!important;border:1px solid #14245C!important;font-weight:800!important;text-decoration:none!important}
.ltg-library-feature__primary:hover,.ltg-library-feature__primary:focus-visible{background:#3A62B8!important;color:#14245C!important}
.ltg-library-feature__sample-link{color:#fff!important;text-underline-offset:4px;font-weight:700}
.ltg-library-feature__preview{padding:25px;border-radius:14px;background:#fff;color:#17334f;box-shadow:0 12px 26px rgba(0,0,0,.14)}
.ltg-library-feature__preview-label{color:#3A62B8}
.ltg-library-feature__preview h3{margin:0 0 13px;color:#14245C;font-size:1.42rem;line-height:1.25}
.ltg-library-feature__preview p:not(.ltg-library-feature__preview-label){margin:0 0 18px;line-height:1.6}
.ltg-library-feature__preview a{color:#14245C;font-weight:800;text-underline-offset:4px}
#section-start_here{padding-top:8px!important}
#section-start_here .ltg-explore-grid--after-feature{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:782px){.ltg-library-feature{grid-template-columns:1fr;gap:22px}.ltg-library-feature__actions{align-items:stretch;flex-direction:column}.ltg-library-feature__primary{text-align:center}#section-start_here .ltg-explore-grid--after-feature{grid-template-columns:1fr}}

.ltg-contact{max-width:760px!important;margin:0 auto!important;padding:28px!important;border:1px solid rgba(201,211,234,.72)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 30px rgba(20,36,92,.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(58,98,184,.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:#F4F6F9!important;
}
body.ltg-legal-page .ltg-generic-page{
 background:#F4F6F9!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(201,211,234,.62)!important;
 border-radius:18px!important;
 box-shadow:0 10px 34px rgba(20,36,92,.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(58,98,184,.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,#F4F6F9)!important;
}
body.ltg-legal-page .ltg-generic-page{
 background:linear-gradient(180deg,#F4F6F9 0,#FFFFFF 240px,#F4F6F9 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(20,36,92,.11)!important;
 border-radius:20px!important;
 box-shadow:0 16px 50px rgba(20,36,92,.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,#14245C) 0 72%,var(--ltg-brand-gold,#3A62B8) 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,#14245C)!important;
 border-bottom:1px solid rgba(58,98,184,.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,#14245C)!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,#14245C)!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,#3A62B8)!important;
 font-weight:700!important;
}
body.ltg-legal-page .ltg-generic-page a{
 color:#315B78!important;
 text-decoration-color:rgba(58,98,184,.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,#14245C)!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(20,36,92,.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:#F4F6F9!important;
 border-left:3px solid var(--ltg-brand-gold,#3A62B8)!important;
 color:#334858!important;
}
/* Guides & Research: quiet free guide path after the product roadmap. */
.ltg-guides-research__free-guide{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px;border:1px solid rgba(20,36,92,.18);border-radius:14px;background:#F4F6F9}
.ltg-guides-research__free-guide h3{margin:0 0 6px;color:#14245C;font-size:1.16rem}
.ltg-guides-research__free-guide p{margin:0;color:#334858;line-height:1.5}
.ltg-guides-research__free-guide-link{flex-shrink:0;color:#14245C;font-weight:750;text-underline-offset:4px}
.ltg-guides-research__free-guide-link:hover,.ltg-guides-research__free-guide-link:focus-visible{color:#315b78}
@media(max-width:700px){.ltg-guides-research__free-guide{display:block}.ltg-guides-research__free-guide-link{display:inline-block;margin-top:15px}}
@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}
}

/* ---- WooCommerce checkout width repair (v1.27.9) ----
   Scope: checkout only. Prevents Gutenberg/WooCommerce wide-alignment rules
   from extending the checkout beyond the LTG content container. */
body.woocommerce-checkout .ltg-generic-page > .ltg-container {
	padding-left: 36px;
	padding-right: 36px;
}

body.woocommerce-checkout .ltg-generic-page .entry-content,
body.woocommerce-checkout .ltg-generic-page .wp-block-post-content,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-checkout,
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout .wc-block-components-sidebar-layout {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box;
}

body.woocommerce-checkout .alignwide,
body.woocommerce-checkout .alignfull {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.woocommerce-checkout .wc-block-components-express-payment,
body.woocommerce-checkout .wc-block-components-express-payment__content,
body.woocommerce-checkout .wc-block-components-express-payment__event-buttons,
body.woocommerce-checkout .wc-block-components-express-payment-continue-rule {
	max-width: 100%;
	box-sizing: border-box;
}

@media ( max-width: 782px ) {
	body.woocommerce-checkout .ltg-generic-page > .ltg-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	body.woocommerce-checkout .wc-block-components-main,
	body.woocommerce-checkout .wc-block-components-sidebar,
	body.woocommerce-checkout form.checkout .col2-set,
	body.woocommerce-checkout form.checkout .col-1,
	body.woocommerce-checkout form.checkout .col-2,
	body.woocommerce-checkout form.checkout #order_review,
	body.woocommerce-checkout form.checkout #order_review_heading {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		box-sizing: border-box;
	}
}


/* ---- v1.28.0: founder block + Library sales page layout ---- */
.ltg-founder { max-width: 720px; margin: 0 auto; text-align: left; padding: 8px 0; }
.ltg-founder__eyebrow { font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #3A62B8; margin: 0 0 10px; }
.ltg-founder__title { color: var(--ltg-brand-navy, #14245C); margin: 0 0 14px; }
.ltg-founder__text { font-size: 1.08rem; line-height: 1.7; color: var(--ltg-brand-navy, #14245C); }
.ltg-founder__link { display: inline-block; margin-top: 6px; font-weight: 800; color: var(--ltg-brand-navy, #14245C) !important; text-decoration: underline !important; text-underline-offset: 4px; }

body .ltg-generic-page--sales > .ltg-container { max-width: none !important; width: 100% !important; padding: 0 !important; }
body .ltg-generic-page--sales { padding-top: 0 !important; padding-bottom: 0 !important; }

/* v1.28.0: buy buttons use the same antique metallic gold as the Library sales page. */
#section-hero .ltg-btn--primary,
.ltg-library-feature__primary {
	background: linear-gradient(135deg, #A9BDE8 0%, #3A62B8 50%, #3A62B8 100%) !important;
	border-color: #3A62B8 !important;
	color: #14245C !important;
}
#section-hero .ltg-btn--primary:hover,
#section-hero .ltg-btn--primary:focus-visible,
.ltg-library-feature__primary:hover,
.ltg-library-feature__primary:focus-visible {
	background: linear-gradient(135deg, #3A62B8 0%, #3A62B8 60%, #3A62B8 100%) !important;
	border-color: #3A62B8 !important;
	color: #14245C !important;
}
.ltg-founder__eyebrow { color: #3A62B8; }

/* v1.28.0: the Library card is light so it doesn't stack a second dark block
   under the dark hero. Navy text, antique gold button, white preview card. */
#section-mast_cell_library{background:#FFFFFF!important}
.ltg-library-feature{background:#EEF2F7!important;color:#14245C!important;border:1px solid rgba(20,36,92,.12);box-shadow:0 14px 34px rgba(20,36,92,.08)!important}
.ltg-library-feature h2{color:#14245C!important}
.ltg-library-feature__eyebrow{color:#3A62B8!important}
.ltg-library-feature__description{color:#33475e!important}
.ltg-library-feature__topics li{border-color:rgba(20,36,92,.18)!important;color:#14245C!important;background:#fff}
.ltg-library-feature__offer{color:#14245C!important;font-weight:700}
.ltg-library-feature__sample-link{color:#14245C!important}
.ltg-library-feature__preview{border:1px solid rgba(20,36,92,.1)}
.ltg-library-feature__preview-label{color:#3A62B8!important}

/* v1.29.0: Links page + Shop My Picks */
.ltg-sl{--sl-navy:#14245C;--sl-gold:#3A62B8;--sl-goldd:#3A62B8;--sl-line:#d6dde8;--sl-muted:#5b6678;color:var(--sl-navy);margin:0 auto}
.ltg-sl *{box-sizing:border-box}
.ltg-sl-kicker{font:700 12px/1.2 var(--ltg-font-body,Inter,sans-serif)!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:var(--sl-goldd)!important;margin:0 0 10px!important}
.ltg-sl-disclosure{font-size:12.5px!important;line-height:1.5!important;color:var(--sl-muted)!important;text-align:center;margin:28px auto 0!important;max-width:560px}
.ltg-sl-btn{display:inline-block;background:var(--sl-navy);color:#fff!important;text-decoration:none!important;font:700 15px/1 var(--ltg-font-body,Inter,sans-serif);padding:15px 22px;border-radius:10px;transition:background .15s}
.ltg-sl-btn:hover{background:var(--sl-goldd);color:#fff!important}
.ltg-sl-btn--gold{background:linear-gradient(180deg,#A9BDE8,#3A62B8 55%,#3A62B8);color:var(--sl-navy)!important}
.ltg-sl-btn--gold:hover{filter:brightness(1.05);color:var(--sl-navy)!important}
.ltg-links{max-width:560px;padding:8px 0 40px}
.ltg-links__head{text-align:center;margin-bottom:26px}
.ltg-links__title{font-family:var(--ltg-font-heading,Georgia,serif)!important;font-size:clamp(26px,6vw,34px)!important;line-height:1.2!important;margin:0 0 12px!important;color:var(--sl-navy)!important}
.ltg-links__by{font-size:14px!important;color:var(--sl-muted)!important;margin:0!important}
.ltg-links__list{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:12px}
.ltg-links__list li{margin:0!important;padding:0!important}
.ltg-links__list li::before{content:none!important}
.ltg-links__btn{display:block;background:#fff;border:1px solid var(--sl-line);border-radius:14px;padding:16px 20px;text-align:center;text-decoration:none!important;color:var(--sl-navy)!important;box-shadow:0 4px 14px rgba(20,36,92,.06);transition:transform .15s,border-color .15s}
.ltg-links__btn:hover{transform:translateY(-1px);border-color:var(--sl-gold)}
.ltg-links__label{display:block;font:700 17px/1.3 var(--ltg-font-body,Inter,sans-serif)}
.ltg-links__note{display:block;font-size:13.5px;line-height:1.4;color:var(--sl-muted);margin-top:4px}
.ltg-links__btn--feature{background:var(--sl-navy);border-color:var(--sl-navy)}
.ltg-links__btn--feature .ltg-links__label{color:#fff}
.ltg-links__btn--feature .ltg-links__note{color:#A9BDE8;font-weight:600}
.ltg-shop{max-width:980px;padding:8px 0 48px}
.ltg-shop__head{text-align:center;max-width:640px;margin:0 auto 34px}
.ltg-shop__title{font-family:var(--ltg-font-heading,Georgia,serif)!important;font-size:clamp(30px,5vw,44px)!important;line-height:1.15!important;margin:0 0 12px!important;color:var(--sl-navy)!important}
.ltg-shop__intro{color:var(--sl-muted)!important;font-size:17px!important;margin:0!important}
.ltg-shop__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ltg-shop__card{background:#fff;border:1px solid var(--sl-line);border-radius:16px;padding:28px;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(20,36,92,.06)}
.ltg-shop__card h2{font-family:var(--ltg-font-heading,Georgia,serif)!important;font-size:26px!important;margin:0 0 10px!important;color:var(--sl-navy)!important}
.ltg-shop__card p{color:var(--sl-muted);flex:1;margin:0 0 20px!important}
.ltg-shop__card .ltg-sl-kicker{flex:0}
.ltg-shop__card .ltg-sl-btn{align-self:flex-start}
.ltg-shop__library{margin-top:22px;background:var(--sl-navy);color:#fff;border-radius:16px;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.ltg-shop__library h2{font-family:var(--ltg-font-heading,Georgia,serif)!important;font-size:22px!important;color:#fff!important;margin:0 0 6px!important}
.ltg-shop__library p{color:#c9d3e3!important;margin:0!important}
.ltg-shop__library .ltg-sl-btn{flex:0 0 auto}
@media(max-width:700px){.ltg-shop__grid{grid-template-columns:1fr}.ltg-shop__library{flex-direction:column;align-items:flex-start}}
/* v1.29.1 */
.ltg-shop__library--top{margin:0 0 22px}
.ltg-shop__library--top h2{font-size:26px!important}
.ltg-shop__grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.ltg-shop__card{position:relative}
.ltg-shop__card--feature{border:2px solid var(--sl-gold)}
.ltg-shop__badge{position:absolute;top:-13px;right:20px;background:linear-gradient(180deg,#A9BDE8,#3A62B8 55%,#3A62B8);color:var(--sl-navy);font:700 12px/1 var(--ltg-font-body,Inter,sans-serif);letter-spacing:.08em;text-transform:uppercase;padding:8px 12px;border-radius:999px}
.ltg-shop__free{margin-top:26px;background:#fff;border:1px solid var(--sl-line);border-radius:16px;padding:24px 26px}
.ltg-shop__free-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.ltg-shop__free-grid a{display:block;border:1px solid var(--sl-line);border-radius:12px;padding:16px 18px;text-decoration:none!important;color:var(--sl-navy)!important}
.ltg-shop__free-grid a:hover{border-color:var(--sl-gold)}
.ltg-shop__free-grid strong{display:block;font-size:17px;margin-bottom:4px}
.ltg-shop__free-grid span{display:block;font-size:14px;color:var(--sl-muted)}

/* v1.29.4 — Explore Now with four cards (SAAT directory added): four across on desktop, two by two on tablets, stacked on phones. */
#section-start_here .ltg-explore-grid--after-feature.ltg-explore-grid--count-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
#section-start_here .ltg-explore-grid--count-4 .ltg-card--start-here{min-height:0;padding-left:20px;padding-right:20px}
#section-start_here .ltg-explore-grid--count-4 .ltg-card--start-here .ltg-btn{margin-top:auto;align-self:flex-start;white-space:normal!important;text-align:center}
@media(max-width:1100px){#section-start_here .ltg-explore-grid--after-feature.ltg-explore-grid--count-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){#section-start_here .ltg-explore-grid--after-feature.ltg-explore-grid--count-4{grid-template-columns:1fr}}


/* v1.29.6: homepage hero. Navy runs edge to edge with no box around it.
   One large headline, a smaller gold line, one short sentence, then the buttons. */
#section-hero{background:radial-gradient(circle at 50% 20%,rgba(104,129,165,.18),transparent 60%),linear-gradient(180deg,#14245C 0%,#14245C 62%,#14245C 100%)!important;border:0!important;padding:0!important}
#section-hero>.ltg-container{max-width:1160px!important;padding:0 24px!important}
#section-hero .ltg-hero{max-width:900px!important;margin:0 auto!important;padding:76px 0 68px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;text-align:center!important}
#section-hero .ltg-hero__eyebrow{margin:0 0 18px!important;color:var(--ltg-brand-champagne,#3A62B8)!important;font-size:.78rem!important}
#section-hero .ltg-hero__title{margin:0 auto 22px!important}
#section-hero .ltg-hero__title-main{font-size:clamp(2.6rem,5vw,4.1rem)!important;line-height:1.05!important}
#section-hero .ltg-hero__title-line{display:block}
#section-hero .ltg-hero__title-accent{max-width:760px!important;margin:.75em auto 0!important;font-family:var(--ltg-font-body,Inter,system-ui,sans-serif)!important;font-size:clamp(1.15rem,1.9vw,1.5rem)!important;font-weight:600!important;line-height:1.35!important;letter-spacing:0!important}
#section-hero .ltg-hero__rule{display:none!important}
#section-hero .ltg-hero__description{max-width:600px!important;margin:0 auto 26px!important;font-size:1.06rem!important;line-height:1.55!important}
@media (max-width:782px){
 #section-hero>.ltg-container{padding:0 20px!important}
 #section-hero .ltg-hero{padding:54px 0 50px!important;border-radius:0!important}
 #section-hero .ltg-hero__title{margin-bottom:20px!important}
 #section-hero .ltg-hero__title-main{font-size:clamp(2.25rem,10vw,2.7rem)!important}
 #section-hero .ltg-hero__title-accent{font-size:1.14rem!important}
 #section-hero .ltg-hero__description{font-size:1.02rem!important;margin-bottom:24px!important}
}
#section-start_here{padding-top:30px!important}
@media (max-width:782px){#section-start_here{padding-top:24px!important}}


/* v1.29.10: seller details. Footer line, Refund Policy page, checkout. */
.ltg-footer__seller{display:block;margin-top:4px}
.ltg-seller-note{margin:0 0 22px;padding:14px 18px;border:1px solid rgba(201,211,234,.62);border-radius:12px;background:#FFFFFF;color:#14245C;font-size:.92rem;line-height:1.55}
.ltg-seller-note p{margin:0}
.ltg-seller-note p+p{margin-top:4px;color:#44566b}
.ltg-seller-note a{color:#14245C;text-decoration:underline;text-decoration-color:#3A62B8;text-underline-offset:3px}
.ltg-seller-note--refund{margin:32px 0 0}
.ltg-seller-note--checkout:last-child{margin:26px 0 0}


/* ---- v1.29.12: commission note under the Shop My Picks intro ---- */
.ltg-shop__intro.ltg-shop__intro--note{margin-top:10px!important;font-size:15px!important}

/* ---- v1.29.12: footer layout ----
 * The link columns were squeezed so narrow that each link wrapped onto
 * two or three lines, which made Explore look very long. The link area
 * now gets the room it needs so every link sits on one line, and the
 * Legal list always spans the full width underneath.
 */
.ltg-footer__legal,.ltg-footer__copyright{grid-column:1 / -1!important}
@media (min-width:900px){
	.ltg-footer__inner{grid-template-columns:minmax(220px,1fr) minmax(0,2.1fr)!important;grid-template-rows:auto 1fr;column-gap:56px!important}
	.ltg-footer__social{margin-top:-12px}
	.ltg-footer__brand{grid-column:1;grid-row:1}
	.ltg-footer__nav{grid-column:2;grid-row:1 / span 2}
	.ltg-footer__social{grid-column:1;grid-row:2;align-self:start;justify-content:flex-start}
	.ltg-footer__nav-groups{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr)!important}
	.ltg-footer__nav-list a{white-space:nowrap}
}
@media (min-width:721px) and (max-width:899px){
	.ltg-footer__inner{grid-template-columns:1fr!important}
}


/* ---- v1.29.14: WooCommerce cart width repair ----
   Same repair the checkout got in v1.27.9, now for the cart page. The cart
   block is "wide aligned", and the theme's wide-alignment rule pushed it
   past the page container, so the left side (product column) was cut off. */
body.woocommerce-cart .ltg-generic-page > .ltg-container {
	padding-left: 36px;
	padding-right: 36px;
	overflow-x: clip;
}
body.woocommerce-cart .ltg-generic-page .entry-content,
body.woocommerce-cart .ltg-generic-page .wp-block-post-content,
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wp-block-woocommerce-filled-cart-block,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
body.woocommerce-cart .wc-block-cart,
body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-cart .alignwide,
body.woocommerce-cart .alignfull {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	left: auto !important;
	right: auto !important;
	transform: none !important;
	box-sizing: border-box;
}
body.woocommerce-cart .wc-block-components-express-payment,
body.woocommerce-cart .wc-block-components-express-payment__content,
body.woocommerce-cart .wc-block-components-express-payment__event-buttons,
body.woocommerce-cart .wc-block-cart__payment-options {
	max-width: 100%;
	box-sizing: border-box;
}
/* The checkout button picked up the page's link colour (navy text on a
   dark button, underlined). Brand navy with white text, no underline. */
body.woocommerce-cart .ltg-generic-page a.wc-block-cart__submit-button,
body.woocommerce-cart .ltg-generic-page .wc-block-cart__submit-container a.wc-block-components-button {
	background: var( --ltg-brand-navy, #10294a ) !important;
	color: #fff !important;
	text-decoration: none !important;
	border-radius: 8px;
}
body.woocommerce-cart .ltg-generic-page a.wc-block-cart__submit-button .wc-block-components-button__text {
	color: #fff !important;
	text-decoration: none !important;
}
body.woocommerce-cart .ltg-generic-page a.wc-block-cart__submit-button:hover {
	filter: brightness( 1.12 );
}
@media ( max-width: 782px ) {
	body.woocommerce-cart .ltg-generic-page > .ltg-container {
		padding-left: 16px;
		padding-right: 16px;
	}
	body.woocommerce-cart .wc-block-components-main,
	body.woocommerce-cart .wc-block-components-sidebar {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box;
	}
}


/* ---- v1.29.15: quieter checkout ----
   1. The seller / refund note is one small grey line right above the
      Place order button, the way most stores show their fine print.
   2. "Returning customer?" and "Have a coupon?" are small plain lines,
      not large tan bars.
   3. Section headings and the privacy line are sized to match. */
.ltg-seller-fineprint{margin:0 0 14px!important;padding:0!important;font-size:.82rem!important;line-height:1.55!important;color:#5c6b7d!important;text-align:left}
.ltg-seller-fineprint a{color:inherit!important;text-decoration:underline!important;text-underline-offset:2px}
.ltg-generic-page > .ltg-container > .ltg-seller-fineprint{margin-top:22px!important}

body.woocommerce-checkout .woocommerce-form-login-toggle,
body.woocommerce-checkout .woocommerce-form-coupon-toggle{margin:0!important;padding:0!important}
body.woocommerce-checkout .woocommerce-form-coupon-toggle{margin-bottom:22px!important}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
	background:transparent!important;
	border:0!important;
	border-radius:0!important;
	box-shadow:none!important;
	padding:0!important;
	margin:0 0 6px!important;
	font-size:.92rem!important;
	line-height:1.5!important;
	color:#5c6b7d!important;
	display:block!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{display:none!important;content:none!important}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a{
	color:var(--ltg-brand-navy,#14245C)!important;
	text-decoration:underline!important;
	text-decoration-color:var(--ltg-brand-gold,#3A62B8)!important;
	text-underline-offset:3px;
	font-weight:500;
}
body.woocommerce-checkout #wc-stripe-express-checkout-button-separator{font-size:.85rem!important;color:#5c6b7d!important;letter-spacing:.06em;margin:18px 0 6px!important}
body.woocommerce-checkout .ltg-generic-page .woocommerce-billing-fields > h3,
body.woocommerce-checkout .ltg-generic-page .woocommerce-additional-fields > h3,
body.woocommerce-checkout .ltg-generic-page #order_review_heading{font-size:clamp(1.3rem,2.1vw,1.6rem)!important;line-height:1.25!important;margin:0 0 14px!important}
body.woocommerce-checkout .woocommerce-privacy-policy-text p{font-size:.82rem!important;line-height:1.55!important;color:#5c6b7d!important;margin:0 0 10px!important}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text{font-size:.95rem!important;line-height:1.5!important}


/* ---- v1.29.16: store polish ----
   1. Page titles: navy on every page. The theme coloured them gold,
      which is hard to read on a light background.
   2. Store messages ("Order received", "added to cart", errors): a
      light card with a thin gold edge, not a heavy tan bar.
   3. Empty cart: one line and one button. */
.ltg-generic-page .ltg-generic-page__title{color:var(--ltg-brand-navy,#14245C)!important}

.ltg-generic-page .woocommerce-message,
.ltg-generic-page .woocommerce-info,
.ltg-generic-page .woocommerce-error,
.ltg-generic-page .wc-block-components-notice-banner{
	background:#FFFFFF!important;
	border:1px solid rgba(201,211,234,.62)!important;
	border-left:3px solid var(--ltg-brand-gold,#3A62B8)!important;
	border-radius:10px!important;
	box-shadow:none!important;
	padding:12px 16px!important;
	margin:0 0 18px!important;
	font-size:.95rem!important;
	line-height:1.5!important;
	color:var(--ltg-brand-navy,#14245C)!important;
	list-style:none!important;
}
.ltg-generic-page .woocommerce-error,
.ltg-generic-page .wc-block-components-notice-banner.is-error{border-left-color:#b82105!important}
.ltg-generic-page .woocommerce-message::before,
.ltg-generic-page .woocommerce-info::before,
.ltg-generic-page .woocommerce-error::before{display:none!important;content:none!important}
.ltg-generic-page .woocommerce-error li{margin:0!important;padding:0!important;list-style:none!important}
.ltg-generic-page .woocommerce-message a:not(.button),
.ltg-generic-page .woocommerce-info a:not(.button),
.ltg-generic-page .woocommerce-error a:not(.button){
	color:var(--ltg-brand-navy,#14245C)!important;
	text-decoration:underline!important;
	text-decoration-color:var(--ltg-brand-gold,#3A62B8)!important;
	text-underline-offset:3px;
}

.wp-block-woocommerce-empty-cart-block{text-align:center;padding:10px 0 30px}
.wp-block-woocommerce-empty-cart-block .wc-block-grid,
.wp-block-woocommerce-empty-cart-block .wp-block-separator,
.wp-block-woocommerce-empty-cart-block h2.wp-block-heading:not(.wc-block-cart__empty-cart__title){display:none!important}
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{font-size:clamp(1.3rem,2.4vw,1.7rem)!important;color:var(--ltg-brand-navy,#14245C)!important;margin:0 0 20px!important}
.ltg-generic-page .ltg-empty-cart__actions{margin:0!important}
.ltg-generic-page .ltg-empty-cart__actions a.ltg-btn{
	background:var(--ltg-brand-navy,#14245C)!important;
	color:#fff!important;
	text-decoration:none!important;
	border-radius:8px;
}
.ltg-generic-page .ltg-empty-cart__actions a.ltg-btn:hover{filter:brightness(1.12)}

/* v1.29.16: on legal pages every bold run is a heading, not only the first
   one in a paragraph. Before, only the first bold word of a paragraph was
   drawn bold ("Sharing" in "Sharing Your Personal Information"). */
body.ltg-legal-page .ltg-generic-page p strong,
body.ltg-legal-page .ltg-generic-page li strong{
	color:var(--ltg-brand-navy,#14245C)!important;
	font-weight:700!important;
}


/* ---- v1.29.17: store messages and product pages, everywhere ----
   Product pages use the theme's own layout and do not carry the
   "ltg-body" class, so rules scoped to it never reached them (v1.29.16
   and v1.29.17 both missed for that reason). These rules are scoped to
   <body> alone and apply on every page. */
html body .woocommerce-message,
html body .woocommerce-info,
html body .woocommerce-error,
html body .wc-block-components-notice-banner{
	background:#FFFFFF!important;
	border:1px solid rgba(201,211,234,.62)!important;
	border-left:3px solid var(--ltg-brand-gold,#3A62B8)!important;
	border-radius:10px!important;
	box-shadow:none!important;
	outline:none!important;
	padding:12px 16px!important;
	margin:0 0 18px!important;
	font-family:var(--ltg-font-body,inherit)!important;
	font-size:.95rem!important;
	line-height:1.5!important;
	letter-spacing:0!important;
	color:var(--ltg-brand-navy,#14245C)!important;
	list-style:none!important;
	display:flex!important;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:8px 16px;
}
html body .woocommerce-error,
html body .wc-block-components-notice-banner.is-error{border-left-color:#b82105!important;display:block!important}
html body .woocommerce-message::before,
html body .woocommerce-info::before,
html body .woocommerce-error::before,
html body .woocommerce-message::after,
html body .woocommerce-info::after{display:none!important;content:none!important}
html body .woocommerce-error li{margin:0!important;padding:0!important;list-style:none!important}
html body .woocommerce-message a:not(.button),
html body .woocommerce-info a:not(.button),
html body .woocommerce-error a:not(.button){
	color:var(--ltg-brand-navy,#14245C)!important;
	text-decoration:underline!important;
	text-decoration-color:var(--ltg-brand-gold,#3A62B8)!important;
	text-underline-offset:3px;
}
/* The "View cart" style button inside a message: small, navy, on the right. */
html body .woocommerce-message .button,
html body .woocommerce-info .button,
html body .woocommerce-error .button{
	order:2;
	float:none!important;
	margin:0!important;
	padding:8px 16px!important;
	background:var(--ltg-brand-navy,#14245C)!important;
	color:#fff!important;
	border:0!important;
	border-radius:6px!important;
	box-shadow:none!important;
	font-size:.78rem!important;
	line-height:1.2!important;
	letter-spacing:.08em!important;
	text-decoration:none!important;
	white-space:nowrap;
}
html body .woocommerce-message .button:hover,
html body .woocommerce-info .button:hover{filter:brightness(1.12)}
/* Keep the two checkout helper lines plain (they are .woocommerce-info too). */
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
	background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0 0 6px!important;
	font-size:.92rem!important;color:#5c6b7d!important;display:block!important;
}

/* Product pages: navy title, navy button, no "Home / Blog / Uncategorized" trail. */
html body.single-product .product_title,
html body .woocommerce div.product .product_title{
	color:var(--ltg-brand-navy,#14245C)!important;
	font-size:clamp(1.8rem,3.4vw,2.6rem)!important;
	line-height:1.15!important;
	letter-spacing:0!important;
}
html body .single_add_to_cart_button,
html body .woocommerce div.product form.cart .button{
	background:var(--ltg-brand-navy,#14245C)!important;
	color:#fff!important;
	border-color:var(--ltg-brand-navy,#14245C)!important;
	border-radius:8px!important;
}
html body .single_add_to_cart_button:hover{filter:brightness(1.12)}
html body.single-product .woocommerce-breadcrumb,
html body.single-product .kadence-breadcrumbs,
html body.single-product .product_meta{display:none!important}

/* Checkout: the payment heading is plain text, not a tan bar. */
html body.woocommerce-checkout #payment,
html body.woocommerce-checkout #payment ul.payment_methods,
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{background:transparent!important}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label{
	background:transparent!important;
	padding:0 0 10px!important;
	margin:0!important;
	font-size:1rem!important;
	font-weight:600!important;
	color:var(--ltg-brand-navy,#14245C)!important;
}

/* My Account, logged out: quieter "Login" and "Register" headings and small print. */
html body.woocommerce-account #customer_login h2{
	font-size:clamp(1.3rem,2.1vw,1.6rem)!important;
	line-height:1.25!important;
	letter-spacing:0!important;
	color:var(--ltg-brand-navy,#14245C)!important;
	margin:0 0 12px!important;
}
html body.woocommerce-account .woocommerce-privacy-policy-text p{font-size:.88rem!important;line-height:1.55!important;color:#5c6b7d!important}
html body.woocommerce-account .woocommerce-LostPassword,
html body.woocommerce-account .woocommerce-LostPassword a{font-size:.95rem!important}



/* ==========================================================================
   v1.30.0 — Clean palette (approved Oct 12, 2026)
   Navy #14245C · whitish gray #F4F6F9 · ice blue #E7ECF8 · white
   Brand blue #3A62B8 (the H, F, R in the logo) for small accents only.
   ========================================================================== */
:root,body{
	--ltg-brand-navy:#14245C;
	--ltg-brand-muted-blue:#4A5672;
	--ltg-brand-pale-blue:#D5DDEF;
	--ltg-brand-gold:#3A62B8;
	--ltg-brand-champagne:#3A62B8;
	--ltg-hero-champagne:#3A62B8;
	--ltg-brand-cream:#E7ECF8;
	--ltg-brand-sage:#4A5672;
	--ltg-brand-blue:#3A62B8;
	--ltg-gray:#F4F6F9;
	--ltg-ice:#E7ECF8;
}

/* Logo */
.ltg-header__logo{display:flex!important;align-items:center!important}
.ltg-header__logo-img.ltg-brand-logo{height:54px!important;max-height:none!important;width:auto!important;display:block}
.ltg-footer__logo-img.ltg-brand-logo{height:auto!important;max-height:none!important;width:250px!important;max-width:100%!important;display:block}
@media(max-width:782px){.ltg-header__logo-img.ltg-brand-logo{height:40px!important}}
@media(max-width:380px){.ltg-header__logo-img.ltg-brand-logo{height:36px!important}}

/* Header button: navy, brand blue on hover */
.ltg-btn--header-cta{background:#14245C!important;border-color:#14245C!important;color:#fff!important}
.ltg-btn--header-cta:hover,.ltg-btn--header-cta:focus-visible{background:#3A62B8!important;border-color:#3A62B8!important;color:#fff!important}

/* Buttons everywhere: navy primary, outlined secondary */
.ltg-btn--primary:hover,.ltg-btn--primary:focus-visible{background:#3A62B8!important;border-color:#3A62B8!important;color:#fff!important}
.ltg-explore-grid .ltg-card--start-here .ltg-btn:hover,.ltg-explore-grid .ltg-card--start-here .ltg-btn:focus-visible,
.ltg-guide-product-card .ltg-btn--primary:hover{background:#3A62B8!important;border-color:#3A62B8!important;color:#fff!important}

/* Hero: whitish gray, navy type */
#section-hero{background:#F4F6F9!important;background-image:none!important;border-bottom:1px solid #E3E7EF!important}
#section-hero .ltg-hero__eyebrow{color:#3A62B8!important}
#section-hero .ltg-hero__title-main{color:#14245C!important}
#section-hero .ltg-hero__title-accent{color:#33405E!important}
#section-hero .ltg-hero__description,#section-hero .ltg-hero__supporting{color:#4A5672!important}
#section-hero .ltg-hero__closing{color:#14245C!important}
#section-hero .ltg-hero__rule,#section-hero .ltg-hero__rule::after{background:#3A62B8!important;box-shadow:none!important}
#section-hero .ltg-btn--primary{background:#14245C!important;background-image:none!important;border:1.5px solid #14245C!important;color:#fff!important}
#section-hero .ltg-btn--primary:hover,#section-hero .ltg-btn--primary:focus-visible{background:#3A62B8!important;background-image:none!important;border-color:#3A62B8!important;color:#fff!important}
#section-hero .ltg-btn--secondary{background:#fff!important;color:#14245C!important;border:1.5px solid #14245C!important}
#section-hero .ltg-btn--secondary:hover,#section-hero .ltg-btn--secondary:focus-visible{background:#14245C!important;color:#fff!important;border-color:#14245C!important}

/* Mast Cell Support Library band: ice blue, edge to edge */
#section-mast_cell_library{background:#E7ECF8!important}
.ltg-library-feature{background:transparent!important;border:0!important;box-shadow:none!important;color:#14245C!important}
.ltg-library-feature h2{color:#14245C!important}
.ltg-library-feature__eyebrow,.ltg-library-feature__preview-label{color:#3A62B8!important}
.ltg-library-feature__description{color:#33405E!important}
.ltg-library-feature__topics li{background:#fff!important;border-color:#C9D3EA!important;color:#14245C!important}
.ltg-library-feature__primary{background:#14245C!important;background-image:none!important;border:1px solid #14245C!important;color:#fff!important}
.ltg-library-feature__primary:hover,.ltg-library-feature__primary:focus-visible{background:#3A62B8!important;background-image:none!important;border-color:#3A62B8!important;color:#fff!important}
.ltg-library-feature__preview{background:#fff!important;border:1px solid #D5DDEF!important;box-shadow:0 10px 28px rgba(20,36,92,.07)!important}
.ltg-library-feature__preview h3,.ltg-library-feature__preview a,.ltg-library-feature__sample-link,.ltg-library-feature__offer{color:#14245C!important}

/* Founder: whitish gray band */
#section-founder{background:#F4F6F9!important;border-top:1px solid #E3E7EF;border-bottom:1px solid #E3E7EF}
.ltg-founder__eyebrow{color:#3A62B8!important}

/* Section eyebrows and small labels */
.ltg-guides-research__eyebrow{color:#3A62B8!important}

/* Cards */
.ltg-explore-grid .ltg-card--start-here{border-color:#D5DDEF!important}
.ltg-explore-grid .ltg-card--start-here.is-featured,.ltg-guide-product-card--featured{border-top-color:#3A62B8!important}

/* Footer: navy, light text, no gold */
.ltg-footer{background:#14245C!important;color:#DFE5F3!important}
.ltg-footer__nav-groups h3,.ltg-footer__legal h3{color:#C7D4F0!important}
.ltg-footer__social a:hover{color:#A9BDE8!important}

/* Library sales page + Links + Shop My Picks: gold becomes navy / brand blue */
.ltg-sl{--sl-navy:#14245C;--sl-gold:#3A62B8;--sl-goldd:#3A62B8}
.ltg-sl-btn:hover{background:#3A62B8!important;color:#fff!important}
.ltg-sl-btn--gold,.ltg-shop__badge{background:#14245C!important;background-image:none!important;color:#fff!important}
.ltg-sl-btn--gold:hover,.ltg-sl-btn--gold:focus-visible{background:#3A62B8!important;color:#fff!important}
.ltg-links__btn--feature .ltg-links__note{color:#A9BDE8!important}

/* Seller note */
.ltg-seller-note{background:#F4F6F9!important;border-color:#D5DDEF!important}

/* v1.30.0: founder photo */
.ltg-founder.ltg-founder--with-photo{max-width:980px!important;display:grid!important;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:48px;align-items:center}
.ltg-founder__photo{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:18px;display:block;box-shadow:0 14px 34px rgba(20,36,92,.10)}
@media(max-width:782px){
	.ltg-founder.ltg-founder--with-photo{grid-template-columns:1fr;gap:24px}
	.ltg-founder__photo{max-width:240px!important;margin:0 auto!important}
}

/* v1.30.0: Doctor Discussion Summary example beside the Library copy */
.ltg-library-feature__side{display:flex;flex-direction:column;gap:18px;min-width:0}
.ltg-library-feature__summary{margin:0;background:#fff;border:1px solid #D5DDEF;border-radius:16px;padding:12px;box-shadow:0 10px 28px rgba(20,36,92,.07)}
.ltg-library-feature__summary img{display:block;width:100%;height:auto;border-radius:10px}
.ltg-library-feature__summary figcaption{margin:10px 4px 2px;font-size:.88rem;line-height:1.45;color:#33405E}

/* v1.30.0: "I've lived this" is the one dark band in the middle of the homepage (approved Oct 12). */
#section-founder{background:#14245C!important;border:0!important}
#section-founder .ltg-founder__eyebrow{color:#A9BDE8!important}
#section-founder .ltg-founder__title,#section-founder .ltg-founder__text,#section-founder .ltg-founder__link{color:#fff!important}
#section-founder .ltg-founder__link:hover,#section-founder .ltg-founder__link:focus-visible{color:#C7D4F0!important}
#section-founder .ltg-founder__photo{box-shadow:0 14px 34px rgba(0,0,0,.25)!important}

/* v1.30.1 — "Join the early access list" (Guides & Research) is a clear navy
   button, not the browser's gray button with blue text. */
html body .ltg-card__link.ltg-card__link--button,
html body button.ltg-card__link--button{
	display:inline-flex;align-items:center;gap:.4rem;margin-top:6px;
	padding:.7rem 1.15rem;min-height:44px;border:1px solid #14245C!important;border-radius:999px;
	background:#14245C!important;color:#fff!important;font:inherit;font-size:.9rem;font-weight:700;
	text-decoration:none;cursor:pointer;box-shadow:none!important;
}
html body button.ltg-card__link--button:hover,
html body button.ltg-card__link--button:focus-visible{background:#3A62B8!important;border-color:#3A62B8!important;color:#fff!important}
.ltg-tracker-interest [data-ltg-tracker-message]{color:#14245C}

/* v1.30.2 — click-to-enlarge pictures */
a.ltg-zoom{position:relative;display:block;cursor:zoom-in;text-decoration:none!important}
a.ltg-zoom img{display:block;width:100%;height:auto}
.ltg-zoom__hint{position:absolute;right:10px;bottom:10px;padding:5px 10px;border-radius:999px;background:rgba(20,36,92,.88);color:#fff;font-size:12px;font-weight:700;line-height:1.2;pointer-events:none}
.ltg-zoom-overlay{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:56px 16px 16px;background:rgba(10,18,46,.88);overflow:auto;cursor:zoom-out}
.ltg-zoom-overlay img{max-width:min(1100px,100%);max-height:none;width:100%;height:auto;margin:auto;border-radius:6px;background:#fff;box-shadow:0 10px 40px rgba(0,0,0,.4);cursor:default}
.ltg-zoom-overlay__close{position:fixed;top:12px;right:14px;width:40px;height:40px;border:0;border-radius:999px;background:#fff;color:#14245C;font-size:26px;line-height:40px;padding:0;cursor:pointer}
html.ltg-zoom-open{overflow:hidden}
@media (max-width:700px){.ltg-zoom-overlay{align-items:flex-start;justify-content:flex-start}.ltg-zoom-overlay img{width:1000px;max-width:none}}
.ltg-zoom-overlay{background:rgba(10,18,46,.92)!important}

/* v1.30.3 (Oct 17): homepage top section is white, so it stands apart from the light-blue Library band. */
#section-hero{background:#FFFFFF!important;background-image:none!important}

/* v1.30.4 (Oct 17): Learning Hub article pages have a white page background
   (was the light gray-blue), so the ice-blue Quick Answer box stands out. */
body.single-ltg_article{background:#FFFFFF}

/* v1.30.4 (Oct 17): Option 2 colors. The ice-blue boxes written into articles
   (Quick answer, Next step) show in the Learning Hub gray with a matching border,
   the navy left edge stays. No article text is changed. */
body.single-ltg_article .wp-block-group.has-background[style*="#EFF5FB" i],
body.single-ltg_article .wp-block-group.has-background[style*="239, 245, 251"]{
	background-color:#F4F6F9!important;
	border-top-color:#DCE2EC!important;
	border-right-color:#DCE2EC!important;
	border-bottom-color:#DCE2EC!important;
}
/* v1.30.5: version number only, so browsers load the new stylesheet instead of a saved copy. */

/* v1.30.6 (Oct 17): the featured image is for Google and social sharing only.
   It repeats the title, so it is not shown at the top of the article page. */
body.single-ltg_article figure.ltg-article__image{display:none!important}


/* v1.30.7 homepage Library section: paragraphs, highlight list, closing line, line under the button */
.ltg-library-feature__description + .ltg-library-feature__description{margin-top:-6px}
.ltg-library-feature__highlights{list-style:none;margin:4px 0 20px;padding:0;display:grid;gap:12px;max-width:670px}
.ltg-library-feature__highlights li{position:relative;padding:0 0 0 32px;color:#33405E;font-size:1rem;line-height:1.55}
.ltg-library-feature__highlights li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:#14245C url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.ltg-library-feature__highlights strong{color:#14245C;font-weight:800}
.ltg-library-feature__closing{max-width:670px;margin:0 0 20px;color:#14245C!important;font-weight:700;font-size:1.03rem;line-height:1.6}
.ltg-library-feature__note{margin:10px 0 0;color:#4A5672;font-size:.9rem}
@media(max-width:782px){.ltg-library-feature__note{text-align:center}}

/* v1.30.8 symptom search screenshot: even 4:5 preview */
.ltg-library-feature__summary img.ltg-library-feature__shot{aspect-ratio:4/5;object-fit:cover;object-position:top;width:100%;height:auto}

/* v1.30.9 picture links to the sales page; direct checkout link */
.ltg-library-feature__shot-link{display:block;text-decoration:none!important;border-radius:inherit}
.ltg-library-feature__shot-link:focus-visible{outline:3px solid #3A62B8;outline-offset:3px}
.ltg-library-feature__direct{margin:8px 0 0}
.ltg-library-feature__direct a{color:#14245C!important;font-weight:800;font-size:.95rem;text-decoration:underline!important;text-underline-offset:4px}
.ltg-library-feature__direct a:hover,.ltg-library-feature__direct a:focus-visible{color:#3A62B8!important}
@media(max-width:782px){.ltg-library-feature__direct{text-align:center}}
