/* ============================================================
   Natrul Theme — main.css
   All colours via wp--preset--color--* from theme.json.
   All type sizes via wp--preset--font-size--*.
   Never scatter raw values — always reference tokens.
   ============================================================ */

   @media (prefers-reduced-motion: reduce) {
        *,
        *::before,
        *::after {
                animation: none !important;
                transition: none !important;
        }
}

/* V102 hotel contrast fallback is loaded from style.css. */

/* ─── Reset & base ────────────────────────────────────────────────────────── */

*,
*::before,
*::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

body {
        font-family: var(--wp--preset--font-family--sans);
        background: var(--wp--preset--color--surface);
        color: var(--wp--preset--color--ink);
        font-weight: 300;
        line-height: 1.6;
        overflow-x: hidden;
}

img, video { display: block; max-width: 100%; }
a { color: inherit; }

/* ─── Layout custom properties ─────────────────────────────────────────────
   Single source of truth for section sizing.
   Override via Natrul Settings or inline :root in a child theme.          */

:root {
  --natrul-hero-height:                 92vh;
  --natrul-hero-min-height:             520px;
  --natrul-hero-min-height-mobile:      480px;

  --natrul-feature-height:              60vh;
  --natrul-feature-min-height:          320px;
  --natrul-feature-height-mobile:       50vh;
  --natrul-feature-min-height-mobile:   260px;

  /* Vertical: fluid 80–120px; mobile keeps similar rhythm (not the old 60px floor). */
  --natrul-section-padding:             clamp(5rem, 8vw, 7.5rem);
  --natrul-section-padding-mobile:      clamp(4rem, 6vw, 5rem);
  /* Horizontal gutter — must read clearly vs old 1.8rem (~29px) */
  --natrul-section-padding-inline:      clamp(2rem, 6vw, 3rem);

  /* Brand colour aliases — amber is the signature accent */
  --natrul-amber:                       #c4923a;
  --natrul-surface:                     #faf8f4;
  --natrul-ink:                         #1a1610;
  --natrul-dark:                        #141210;
  --natrul-forest:                      #6b7a4a;
  --natrul-peach:                       #d4a878;
  --natrul-oak-pearl:                   #B99A89;

  /* Legacy aliases so existing CSS doesn't break */
  --wp--preset--color--warm:            #c4923a;
  --wp--preset--color--amber-bg:        #c4923a;
}

/* ─── Reading progress ─────────────────────────────────────────────────────── */

.natrul-reading-progress {
        position: fixed;
        top: 0; left: 0;
        height: 2px; width: 0%;
        background: var(--wp--preset--color--warm);
        z-index: 9999;
        pointer-events: none;
        will-change: width;
}

/* ─── Noise overlay — removed ──────────────────────────────────────────────── */

/* ─── Diagonal rays motif ──────────────────────────────────────────────────── */

.natrul-diag-rays {
        position: absolute; inset: 0;
        pointer-events: none; overflow: hidden; z-index: 0;
}

.natrul-diag-rays::before {
        content: '';
        position: absolute;
        top: -20%; left: -10%;
        width: 120%; height: 140%;
        background: repeating-linear-gradient(
                -55deg,
                transparent 0px, transparent 60px,
                rgba(255, 255, 255, 0.035) 60px, rgba(255, 255, 255, 0.035) 62px
        );
        pointer-events: none;
}

/* ─── Global amber signature — em inside any heading gets brand accent ────── */

h1 em, h2 em, h3 em, h4 em {
        font-style: italic;
        color: var(--natrul-amber, #c4923a);
}

/* ─── NAV ──────────────────────────────────────────────────────────────────── */

.natrul-nav {
        position: fixed; top: 0; left: 0; right: 0;
        z-index: 200;
        display: flex; align-items: center; justify-content: space-between;
        flex-wrap: nowrap !important; /* override WP block flex-wrap */
        padding: 0.8rem 0.75rem;
        gap: 0.5rem;
        transition: background 0.3s ease, backdrop-filter 0.3s ease;
}
@media (min-width: 768px) {
        .natrul-nav { padding: 1rem 2rem; gap: 1rem; }
}

.natrul-nav.is-scrolled {
        background: rgb(250, 248, 244);
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
}


.natrul-nav__logo-wrap {
        background: transparent;
        border-radius: 0;
        padding: 0;
        display: flex; align-items: center; justify-content: center;
        transition: background 0.3s;
        flex-shrink: 0;
        min-width: 0;
}
@media (min-width: 768px) {
        /* logo-wrap padding intentionally removed — transparent, no box */
}

/* Logo link — needs block-level display so it sizes correctly */
.natrul-nav__logo-link {
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 0; /* kill inline whitespace under the img/svg */
}

/* Custom logo image — sharp on high-DPI screens */
.natrul-nav__logo-img {
        display: block;
        width: auto;
        height: auto;
        max-height: 32px;
        max-width: 120px;
        image-rendering: auto;
        -webkit-font-smoothing: antialiased;
}
@media (min-width: 768px) {
        .natrul-nav__logo-img {
                max-height: 40px;
                max-width: 160px;
        }
}
/* Retina hint — if logo is uploaded at 2× or 3×, constrain to logical size */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
        .natrul-nav__logo-img {
                image-rendering: auto;
        }
}

/* Logo swap — only when a scrolled (dark) logo has been uploaded.
   If no scrolled logo exists, the dark logo-wrap stays so the white logo remains visible. */
.natrul-nav__logo-img--scrolled { display: none; }
body.has-scrolled-logo .natrul-nav.is-scrolled .natrul-nav__logo-img--default  { display: none; }
body.has-scrolled-logo .natrul-nav.is-scrolled .natrul-nav__logo-img--scrolled { display: block; }
body.has-scrolled-logo .natrul-nav.is-scrolled .natrul-nav__logo-wrap { background: transparent; }

/* No scrolled logo — logo-wrap stays transparent, nav background handles contrast */
body:not(.has-scrolled-logo) .natrul-nav.is-scrolled .natrul-nav__logo-wrap {
        background: transparent;
}

/* Questions page — always show the dark logo (nav itself stays unchanged) */
body.natrul-questions-page.has-scrolled-logo .natrul-nav__logo-img--default  { display: none; }
body.natrul-questions-page.has-scrolled-logo .natrul-nav__logo-img--scrolled { display: block; }
body.natrul-questions-page.has-scrolled-logo .natrul-nav__logo-wrap { background: transparent; }

/* Non-homepage — light nav always on, dark logo, no dark logo-wrap */
body:not(.home) .natrul-nav {
        background: rgb(250, 248, 244);
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
}
body:not(.home).has-scrolled-logo .natrul-nav .natrul-nav__logo-img--default  { display: none; }
body:not(.home).has-scrolled-logo .natrul-nav .natrul-nav__logo-img--scrolled { display: block; }
body:not(.home).has-scrolled-logo .natrul-nav .natrul-nav__logo-wrap { background: transparent; }
body:not(.home):not(.has-scrolled-logo) .natrul-nav .natrul-nav__logo-wrap { background: var(--wp--preset--color--ink); }

.natrul-nav__right {
        display: flex; align-items: center; gap: 0.4rem;
        flex-wrap: nowrap;
        flex-shrink: 1;
        min-width: 0;
}

.natrul-nav__desktop {
        display: flex;
        align-items: center;
        gap: clamp(0.72rem, 1.2vw, 1.2rem);
}

.natrul-nav__desktop a,
.natrul-nav__sample {
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.66rem;
        font-weight: 600;
        letter-spacing: 0.1em;
        line-height: 1;
        text-transform: uppercase;
        text-decoration: none;
        white-space: nowrap;
        color: rgba(255, 255, 255, 0.74);
        transition: color 0.2s, border-color 0.2s, background 0.2s, opacity 0.2s;
}

.natrul-nav__desktop a:hover { color: var(--wp--preset--color--white); opacity: 1; }

.natrul-nav__sample {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0.68rem 1rem;
        border: 1.5px solid rgba(250,248,244,0.42);
        color: var(--wp--preset--color--surface);
}

.natrul-nav__sample:hover {
        background: rgba(250,248,244,0.08);
        border-color: rgba(250,248,244,0.68);
        color: var(--wp--preset--color--surface);
}

.natrul-nav.is-scrolled .natrul-nav__desktop a,
.natrul-nav.is-scrolled .natrul-nav__sample,
body:not(.home) .natrul-nav .natrul-nav__desktop a,
body:not(.home) .natrul-nav .natrul-nav__sample {
        color: var(--wp--preset--color--ink);
}

.natrul-nav.is-scrolled .natrul-nav__sample,
body:not(.home) .natrul-nav .natrul-nav__sample {
        border-color: rgba(26,22,16,0.25);
}

.natrul-nav.is-scrolled .natrul-nav__desktop a:hover,
body:not(.home) .natrul-nav .natrul-nav__desktop a:hover {
        color: var(--wp--preset--color--warm);
}

.natrul-nav.is-scrolled .natrul-nav__sample:hover,
body:not(.home) .natrul-nav .natrul-nav__sample:hover {
        background: rgba(26,22,16,0.05);
        border-color: rgba(26,22,16,0.5);
}

@media (max-width: 1180px) {
        .natrul-nav { padding-inline: 1rem; }
        .natrul-nav__desktop { gap: 0.58rem; }
        .natrul-nav__desktop a,
        .natrul-nav__sample { font-size: 0.58rem; letter-spacing: 0.08em; }
        .natrul-nav__sample { padding: 0.6rem 0.72rem; }
}

@media (max-width: 900px) {
        .natrul-nav { align-items: flex-start; padding: 0.75rem; }
        .natrul-nav__right {
                flex: 1 1 auto;
                justify-content: flex-end;
                gap: 0.65rem;
                overflow-x: auto;
                padding-bottom: 0.2rem;
                scrollbar-width: none;
        }
        .natrul-nav__right::-webkit-scrollbar { display: none; }
        .natrul-nav__desktop { gap: 0.62rem; }
        .natrul-nav__sample { flex: 0 0 auto; }
}

@media (min-width: 768px) {
        .natrul-nav__right { gap: 0.95rem; }
}

.natrul-nav__cta {
        background: transparent;
        color: var(--wp--preset--color--surface);
        border: 1.5px solid rgba(250,248,244,0.35);
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.6rem;
        font-weight: 400;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        text-decoration: none;
        padding: 0.6rem 0.8rem;
        border-radius: 0;
        transition: background 0.2s, color 0.2s, border-color 0.2s;
        white-space: nowrap;
        flex-shrink: 0;
}
@media (min-width: 768px) {
        .natrul-nav__cta {
                font-size: var(--wp--preset--font-size--micro);
                letter-spacing: 0.14em;
                padding: 0.7rem 1.4rem;
        }
}

.natrul-nav__cta:hover {
        background: rgba(250,248,244,0.08);
        color: var(--wp--preset--color--surface);
        border-color: rgba(250,248,244,0.6);
}

/* Light nav — non-homepage */
body:not(.home) .natrul-nav__cta {
        color: var(--wp--preset--color--ink);
        border: 1.5px solid rgba(26,22,16,0.25);
}
body:not(.home) .natrul-nav__cta:hover {
        background: rgba(26,22,16,0.05);
        border-color: rgba(26,22,16,0.5);
}

/* ─── HAMBURGER BUTTON ──────────────────────────────────────────────────────── */

.natrul-nav__burger {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;
	width: 40px;
	height: 40px;
	background: transparent;
	border: none;
	cursor: pointer;
	padding: 6px;
	flex-shrink: 0;
}
.natrul-nav__burger-bar {
	display: block;
	width: 22px;
	height: 1.5px;
	background: var(--wp--preset--color--white);
	transition: transform 0.3s ease, opacity 0.3s ease;
	transform-origin: center;
}
.natrul-nav.is-scrolled .natrul-nav__burger-bar,
body:not(.home) .natrul-nav .natrul-nav__burger-bar {
	background: var(--wp--preset--color--ink);
}
.natrul-nav__burger.is-open .natrul-nav__burger-bar:nth-child(1) {
	transform: translateY(6.5px) rotate(45deg);
}
.natrul-nav__burger.is-open .natrul-nav__burger-bar:nth-child(2) {
	opacity: 0;
}
.natrul-nav__burger.is-open .natrul-nav__burger-bar:nth-child(3) {
	transform: translateY(-6.5px) rotate(-45deg);
}

@media (max-width: 900px) {
	.natrul-nav__burger { display: flex; }
	.natrul-nav__desktop { display: none; }
	.natrul-nav__sample { display: none; }
}

/* ─── MOBILE MENU ───────────────────────────────────────────────────────────── */

.natrul-mobile-menu {
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: var(--wp--preset--color--ink);
	display: flex;
	flex-direction: column;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.35s ease, visibility 0.35s ease;
}
.natrul-mobile-menu.is-open {
	opacity: 1;
	visibility: visible;
}
.natrul-mobile-menu__inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	height: 100%;
	padding: clamp(3rem, 8vw, 5rem) clamp(2rem, 8vw, 4rem);
	gap: 0;
}
.natrul-mobile-menu__close {
	position: absolute;
	top: 1.4rem;
	right: 1.4rem;
	width: 40px;
	height: 40px;
	background: transparent;
	border: none;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.natrul-mobile-menu__close span {
	display: block;
	width: 22px;
	height: 1.5px;
	background: rgba(255,255,255,0.7);
	position: absolute;
}
.natrul-mobile-menu__close span:nth-child(1) { transform: rotate(45deg); }
.natrul-mobile-menu__close span:nth-child(2) { transform: rotate(-45deg); }
.natrul-mobile-menu__nav {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
}
.natrul-mobile-menu__nav a {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(2rem, 6vw, 2.8rem);
	font-weight: 300;
	color: rgba(255,255,255,0.85);
	text-decoration: none;
	letter-spacing: -0.01em;
	line-height: 1;
	padding: 0.55rem 0;
	border-bottom: 1px solid rgba(255,255,255,0.07);
	display: block;
	transition: color 0.2s ease;
}
.natrul-mobile-menu__nav a:first-child { border-top: 1px solid rgba(255,255,255,0.07); }
.natrul-mobile-menu__nav a:hover { color: var(--natrul-amber, #c4923a); }
.natrul-mobile-menu__sample {
	margin-top: 2.5rem;
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--natrul-amber, #c4923a);
	text-decoration: none;
	border: 1px solid rgba(196,146,58,0.4);
	padding: 0.85rem 1.6rem;
	transition: border-color 0.2s ease, color 0.2s ease;
}
.natrul-mobile-menu__sample:hover {
	border-color: var(--natrul-amber, #c4923a);
}

/* ─── HERO ─────────────────────────────────────────────────────────────────── */

.natrul-hero {
        position: relative;
        height: var(--natrul-hero-height);
        min-height: var(--natrul-hero-min-height);
        overflow: hidden;
        display: flex;
        flex-direction: column;
        align-items: stretch;
}
@media (min-width: 768px) {
        .natrul-hero {
                height: var(--natrul-hero-height);
                min-height: var(--natrul-hero-min-height);
        }
}

.natrul-hero__bg {
        position: absolute; inset: 0;
        background-size: cover;
        background-position: center 30%;
        background-repeat: no-repeat;
        /* background-image set inline in patterns/hero.php (full-size URL via natrul_resolved_image_url) */
}

.natrul-hero__img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center 30%;
        display: block;
}

.natrul-hero__bg--video {
        object-fit: cover;
        width: 100%;
        height: 100%;
}

.natrul-hero__bg::after {
        content: '';
        position: absolute; inset: 0;
        /* FIX: 3-layer gradient — strong dark left for text contrast, soft top, soft bottom */
        background:
                linear-gradient(to right,  rgba(10,8,4,0.78) 0%, rgba(10,8,4,0.45) 42%, rgba(10,8,4,0.12) 100%),
                linear-gradient(to bottom, rgba(10,8,4,0.40) 0%, transparent 28%),
                linear-gradient(to top,    rgba(10,8,4,0.55) 0%, transparent 22%);
}

.natrul-hero__content {
        position: relative; z-index: 2;
        flex: 0 0 auto;
        align-self: center;
        width: 100%;
        max-width: 1200px;
        padding: 7rem clamp(1.5rem, 5vw, 3rem) 2rem;
        color: var(--wp--preset--color--white);
}

.natrul-hero__eyebrow,
.natrul-hero__headline,
.natrul-hero__sub,
.natrul-hero__actions {
        max-width: 560px;
}

.natrul-hero__eyebrow {
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        font-weight: 400;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        color: rgba(255,255,255,0.55);
        margin-bottom: 0.75rem;
}

.natrul-hero__headline {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(2.2rem, 5.5vw, 5rem);
        font-weight: 300;
        line-height: 1.1;
        margin-bottom: 1rem;
        letter-spacing: -0.01em;
        hyphens: none;
}

.natrul-hero__headline em { font-style: italic; }

.natrul-hero__sub {
        font-size: var(--wp--preset--font-size--body);
        line-height: 1.6;
        opacity: 0.85;
        max-width: 340px;
        font-weight: 300;
        margin-bottom: 2rem;
}

.natrul-hero__actions {
        display: flex; gap: 0.8rem; flex-wrap: wrap;
}

/* Buttons */
.natrul-btn {
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        font-weight: 600;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        text-decoration: none;
        padding: 0.8rem 1.6rem;
        border-radius: var(--wp--custom--border--radius);
        display: inline-block;
        transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.natrul-btn--light {
        background: var(--wp--preset--color--white);
        color: var(--wp--preset--color--ink);
}

.natrul-btn--light:hover {
        background: var(--wp--preset--color--warm-light);
}

.natrul-btn--ghost-light {
        background: transparent;
        color: rgba(255, 255, 255, 0.8);
        border: 1px solid rgba(255, 255, 255, 0.35);
}

.natrul-btn--ghost-light:hover {
        border-color: var(--wp--preset--color--white);
        color: var(--wp--preset--color--white);
}

.natrul-btn--amber {
        background: var(--wp--preset--color--amber-bg);
        color: var(--wp--preset--color--ink);
}

.natrul-btn--amber:hover { background: #c8880a; color: var(--wp--preset--color--white); }

/* Ticker — column flex + margin-top:auto keeps strip below CTAs (absolute bottom: overlapped when hero is short) */
.natrul-hero__ticker {
        position: relative;
        margin-top: auto;
        margin-bottom: 3.25rem;
        flex-shrink: 0;
        align-self: stretch;
        overflow: hidden;
        white-space: nowrap;
        pointer-events: none;
        z-index: 3;
}

.natrul-hero__ticker-inner {
        display: inline-flex; gap: 2.5rem;
        animation: natrul-ticker 30s linear infinite;
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.4);
}

.natrul-hero__ticker-inner span::before {
        content: '·';
        margin-right: 2.5rem;
        opacity: 0.4;
}

@keyframes natrul-ticker {
        from { transform: translateX(0); }
        to   { transform: translateX(-50%); }
}

.natrul-hero__scroll-hint {
        position: absolute; bottom: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)); right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
        z-index: 3;
        display: flex; flex-direction: column; align-items: center; gap: 0.5rem;
        color: rgba(255, 255, 255, 0.4);
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
}

.natrul-hero__scroll-hint::after {
        content: '';
        width: 1px; height: 48px;
        background: rgba(255, 255, 255, 0.3);
        animation: natrul-line-pulse 2s ease-in-out infinite;
}

@keyframes natrul-line-pulse {
        0%, 100% { opacity: 0.3; transform: scaleY(0.6); }
        50%       { opacity: 1;   transform: scaleY(1); }
}

/* ─── Hero video thumbnail & lightbox ──────────────────────────────────────── */

.natrul-hero__video-thumb {
        position: fixed;
        bottom: 2rem;
        left: 2rem;
        top: auto;
        right: auto;
        z-index: 200;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border: none;
        outline: none;
        padding: 0;
        margin: 0;
        background: none;
        cursor: pointer;
        border-radius: 0;
        overflow: hidden;
        width: 160px;
        height: 90px;
        box-shadow: 0 4px 24px rgba(0,0,0,0.5);
        transition: transform 0.3s ease, opacity 0.4s ease;
        text-decoration: none;
}
.natrul-hero__video-thumb.is-visible {
        opacity: 1;
}
.natrul-hero__video-thumb:hover {
        transform: scale(1.03);
        box-shadow: 0 8px 32px rgba(0,0,0,0.6);
}
.natrul-hero__video-thumb img {
        position: absolute; inset: 0;
        width: 100%; height: 100%;
        object-fit: cover;
        display: block;
}
.natrul-hero__video-play {
        position: relative; z-index: 1;
        width: 36px; height: 36px;
        border-radius: 50%;
        background: rgba(255,255,255,0.15);
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
        border: 1px solid rgba(255,255,255,0.3);
        display: flex; align-items: center; justify-content: center;
        color: white;
        transition: background 0.2s ease, border-color 0.2s ease;
}
.natrul-hero__video-thumb:hover .natrul-hero__video-play {
        background: rgba(196,146,58,0.85);
        border-color: rgba(196,146,58,0.85);
}
@media (max-width: 767px) {
        .natrul-hero__video-thumb {
                bottom: 1rem;
                left: 1rem;
                width: 100px;
        }
}

/* Lightbox */
.natrul-video-lightbox {
        position: fixed; inset: 0;
        z-index: 9999;
        background: rgba(10,8,4,0.92);
        display: flex; align-items: center; justify-content: center;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
}
.natrul-video-lightbox.is-open {
        opacity: 1;
        pointer-events: all;
}
.natrul-video-lightbox__inner {
        position: relative;
        width: min(90vw, 1100px);
        aspect-ratio: 16 / 9;
}
.natrul-video-lightbox__close {
        position: absolute;
        top: -2.5rem; right: 0;
        background: none; border: none;
        color: rgba(255,255,255,0.6);
        cursor: pointer;
        padding: 0.25rem;
        transition: color 0.2s ease;
}
.natrul-video-lightbox__close:hover { color: white; }

/* ─── MANIFESTO PIN ────────────────────────────────────────────────────────── */

.natrul-manifesto { position: relative; background: var(--wp--preset--color--surface); overflow: hidden; }

.natrul-manifesto__pin-wrap { height: 720vh; position: relative; }

.natrul-manifesto__sticky {
        position: sticky; top: 0; height: 100vh;
        display: flex; flex-direction: column; align-items: center; justify-content: center;
        overflow: hidden;
        transition: background-color 0.3s ease;
}

.natrul-manifesto__icon {
        position: relative; z-index: 1;
        margin-bottom: 1.5rem; opacity: 0.7;
}
.natrul-manifesto__icon img {
        width: 80px; height: 80px;
        object-fit: contain; display: block; margin: 0 auto;
}
.natrul-manifesto__text-wrap {
        position: relative; z-index: 1;
        text-align: center; padding: 2rem;
        max-width: 780px;
}

.natrul-manifesto__line {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.8rem, 6vw, 3.8rem);
        font-weight: 300; line-height: 1.18;
        color: var(--wp--preset--color--ink);
        will-change: opacity, transform;
}

.natrul-manifesto__line em { font-style: italic; }

.natrul-manifesto__fade-word {
        display: inline;
        opacity: 0.18;
        will-change: opacity;
}

.natrul-manifesto__line--2 {
        position: absolute; top: 50%; left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        opacity: 0;
        pointer-events: none;
}

/* ─── WARMTH PIN ───────────────────────────────────────────────────────────── */

.natrul-warmth {
        position: relative;
        background: var(--wp--preset--color--dark, #1a1610);
        padding-bottom: 0;
        margin-top: -1px;
}

/* Taller pin = more scroll for the warmth timeline (Stage 4 + hold are longer in time units) */
.natrul-warmth__pin-wrap { height: 450vh; position: relative; }

.natrul-warmth__sticky {
        position: sticky; top: 0; height: 100vh;
        overflow: hidden;
        display: flex; align-items: center; justify-content: center;
}

.natrul-warmth__bg {
        position: absolute; inset: 0;
        background: #4a5060;
        will-change: background-color;
}

/* .natrul-warmth__bg-img — z-index and opacity defined in V2 block below */

.natrul-warmth__text {
        /* FIX 5: must be absolute so it overlays the bg layers correctly */
        position: absolute; inset: 0;
        display: flex; flex-direction: column;
        align-items: center; justify-content: center;
        z-index: 2;
        color: var(--wp--preset--color--white);
        text-align: center; padding: 2rem;
        pointer-events: none;
}

.natrul-warmth__line1,
.natrul-warmth__line2 {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.8rem, 7vw, 3.2rem);
        font-weight: 300; line-height: 1.2;
        opacity: 0;
        transform: translateY(12px);
        will-change: opacity, transform;
}

.natrul-warmth__line2 em {
        font-style: italic;
        color: var(--wp--preset--color--amber-bg);
}

/* ─── BLOCK EDITOR: Section colours via is-style-natrul-* ─────────────────── */

.wp-block-group.is-style-natrul-dark {
        background: var(--wp--preset--color--dark);
        color: var(--wp--preset--color--white);
}

.wp-block-group.is-style-natrul-dark * {
        --wp--preset--color--ink: #ffffff;
        --wp--preset--color--ink-muted: rgba(255,255,255,0.55);
}

.wp-block-group.is-style-natrul-dark-olive {
        background: var(--wp--preset--color--dark-olive);
        color: var(--wp--preset--color--white);
}

.wp-block-group.is-style-natrul-peach {
        background: #B99A89;
        color: var(--wp--preset--color--ink);
        position: relative; overflow: hidden;
}

/* Peach foot image */
.natrul-peach__foot-img {
        height: var(--natrul-feature-height) !important;
        min-height: var(--natrul-feature-min-height) !important;
        margin-top: 3rem;
        background-repeat: no-repeat;
        background-size: cover !important;
        background-position: center !important;
        filter: brightness(0.85);
        /* Full-width on all breakpoints */
        width: 100vw !important;
        max-width: none !important;
        position: relative !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
}
@supports (width: 100dvw) {
        .natrul-peach__foot-img { width: 100dvw !important; }
}

/* Forest image */
.natrul-forest__img {
        height: var(--natrul-feature-height) !important;
        min-height: var(--natrul-feature-min-height) !important;
        margin-top: 3rem;
        background-size: cover !important;
        background-position: center 70% !important;
        filter: brightness(0.9) saturate(1);
        /* Full-width on all breakpoints */
        width: 100vw !important;
        max-width: none !important;
        position: relative !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: -1px;
}
.natrul-forest__fade {
        display: none;
}
@supports (width: 100dvw) {
        .natrul-forest__img { width: 100dvw !important; }
}

.natrul-forest__img--video {
        display: flex;
        background: none !important;
}

.natrul-forest__img--video video {
        filter: brightness(0.75) saturate(0.85);
}

/* Use-case stack (distraction pattern) — eyebrow + title aligned with forest section rhythm */
.natrul-editorial-heading-block {
        position: relative;
        z-index: 1;
        margin-bottom: 1.75rem;
        max-width: 42rem;
}
.natrul-editorial-heading-block__eyebrow {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
        margin: 0 0 0.85rem;
        padding-left: 0.1rem;
}
.natrul-editorial-heading-block__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.85rem, 3.5vw, 2.85rem);
        font-weight: 300;
        line-height: 1.15;
        letter-spacing: -0.02em;
        color: var(--wp--preset--color--ink);
        margin: 0;
        padding-top: 0.9rem;
        border-top: 1px solid rgba(26, 22, 16, 0.12);
}

/* Saved pages that still use the old inline-styled h2 (no PHP upgrade — e.g. translated title). */
.wp-block-group:has( .natrul-use-case-stack ) .natrul-diag-rays ~ h2[data-animate='fade-up'] {
        font-family: var(--wp--preset--font-family--serif) !important;
        font-size: clamp(1.85rem, 3.5vw, 2.85rem) !important;
        font-weight: 300 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.02em !important;
        color: var(--wp--preset--color--ink) !important;
        max-width: 42rem !important;
        margin: 0 0 1.75rem !important;
        padding-top: 0.9rem !important;
        border-top: 1px solid rgba(26, 22, 16, 0.12) !important;
}

/* Legacy peach inline blocks (not .natrul-peach__foot-img) — keep out of the way of 60vh foot image */
.is-style-natrul-peach [style*='aspect-ratio:4/3'][style*='margin-top:3rem'][role='img']:not(.natrul-peach__foot-img),
.is-style-natrul-peach [style*='aspect-ratio: 4 / 3'][style*='margin-top:3rem'][role='img']:not(.natrul-peach__foot-img) {
        max-height: min(50vh, 480px) !important;
}
@media (min-width: 768px) {
        .is-style-natrul-peach [style*='aspect-ratio:4/3'][style*='margin-top:3rem'][role='img']:not(.natrul-peach__foot-img),
        .is-style-natrul-peach [style*='aspect-ratio: 4 / 3'][style*='margin-top:3rem'][role='img']:not(.natrul-peach__foot-img) {
                aspect-ratio: 16 / 9 !important;
                max-height: min(38vh, 420px) !important;
        }
}

/* ═══════════════════════════════════════════════════════════════════════════
   HOMEPAGE IMAGE SIZING — PHP injects these classes at render time
   ═══════════════════════════════════════════════════════════════════════════ */

/* Full-bleed "grown not made" strip */
.natrul-hp-product-feature {
        height: var(--natrul-feature-height) !important;
        min-height: var(--natrul-feature-min-height) !important;
        max-height: none !important;
        width: 100% !important;
        max-width: none !important;
        background-size: cover !important;
}

/* Full-bleed forest + peach images */
.natrul-hp-fullbleed-img {
        height: var(--natrul-feature-height) !important;
        min-height: var(--natrul-feature-min-height) !important;
        max-height: none !important;
        width: 100% !important;
        max-width: none !important;
        background-size: cover !important;
        background-position: center !important;
}

/* Use-case card images — match forest / peach strips (60vh) */
.natrul-hp-usecase-img {
        height: var(--natrul-feature-height) !important;
        min-height: var(--natrul-feature-min-height) !important;
        max-height: none !important;
        aspect-ratio: unset !important;
        overflow: hidden;
}

.natrul-hp-usecase-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
}

/* ── HOMEPAGE LAYOUT ──────────────────────────────────────────
   --natrul-gutter is a hardcoded responsive value that always ensures
   text has proper side padding and full-bleed images can break out.
   WordPress root padding is stripped; each group gets --natrul-gutter. */

:root { --natrul-gutter: clamp(1.5rem, 5vw, 3rem); }

/* Strip WP root-level padding from outer wrappers only */
body.natrul-homepage .wp-site-blocks,
body.natrul-homepage .wp-block-post-content,
main.natrul-homepage .wp-site-blocks,
main.natrul-homepage .wp-block-post-content {
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: none !important;
}

/* Section groups: gutter side padding using physical props to win over WP */
body.natrul-homepage .wp-block-post-content > .wp-block-group,
main.natrul-homepage .wp-block-post-content > .wp-block-group {
        max-width: none !important;
        padding-left: var(--natrul-gutter) !important;
        padding-right: var(--natrul-gutter) !important;
}

/* Groups may also have .has-global-padding — override it specifically */
body.natrul-homepage .wp-block-post-content > .wp-block-group.has-global-padding,
main.natrul-homepage .wp-block-post-content > .wp-block-group.has-global-padding {
        padding-left: var(--natrul-gutter) !important;
        padding-right: var(--natrul-gutter) !important;
}

/* Children inside groups fill the available width */
body.natrul-homepage .wp-block-post-content > .wp-block-group > *,
main.natrul-homepage .wp-block-post-content > .wp-block-group > * {
        max-width: none !important;
}

/* HTML block that wraps icon-list: must not shrink below full column (was causing half-width featured strip) */
body.natrul-homepage .wp-block-post-content .wp-block-html:has(.natrul-icon-list-section),
main.natrul-homepage .wp-block-post-content .wp-block-html:has(.natrul-icon-list-section) {
        max-width: none !important;
        width: 100% !important;
        overflow-x: visible !important;
}

/* Kill block gap between homepage pattern sections */
body.natrul-homepage .wp-block-post-content > *,
main.natrul-homepage .wp-block-post-content > * {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
}

/* Icon rows keep horizontal rhythm; featured strip uses .natrul-bleed-viewport */
.natrul-icon-list-section > .natrul-icon-list {
        padding-left: var(--natrul-gutter) !important;
        padding-right: var(--natrul-gutter) !important;
}

/* ── Viewport full-bleed (mobile / tablet / desktop) ───────────────────────
   margin calc(50% - 50vw) fails when 50% is a padded group’s inner width.
   Centering 100vw with translateX(-50%) + left:50% matches viewport edges when
   the content column is centered (typical WP layout). */
body.natrul-homepage .natrul-bleed-viewport,
body.natrul-homepage .natrul-hp-fullbleed-img,
body.natrul-homepage .natrul-hp-product-feature,
main.natrul-homepage .natrul-bleed-viewport,
main.natrul-homepage .natrul-hp-fullbleed-img,
main.natrul-homepage .natrul-hp-product-feature {
        position: relative !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        width: 100vw !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
}

@supports (width: 100dvw) {
        body.natrul-homepage .natrul-bleed-viewport,
        body.natrul-homepage .natrul-hp-fullbleed-img,
        body.natrul-homepage .natrul-hp-product-feature,
        main.natrul-homepage .natrul-bleed-viewport,
        main.natrul-homepage .natrul-hp-fullbleed-img,
        main.natrul-homepage .natrul-hp-product-feature {
                width: 100dvw !important;
        }
}

/* Standalone wp:html sections (not inside a group) get their own side padding */
body.natrul-homepage .wp-block-post-content > .wp-block-html section:not(.natrul-hero):not(.natrul-manifesto),
main.natrul-homepage .wp-block-post-content > .wp-block-html section:not(.natrul-hero):not(.natrul-manifesto) {
        padding-left: var(--natrul-gutter) !important;
        padding-right: var(--natrul-gutter) !important;
}

/* ── Full-width sections: strip horizontal padding so images hit viewport edges ─
   Applies to every named homepage section that contains full-bleed imagery.
   The group itself keeps its background colour; only inline padding is removed. */
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-manifesto),
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-icon-list-section),
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-use-case-stack),
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-vision),
body.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-forest,
body.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-peach,
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-warmth),
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-dark-feat),
body.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-dark-olive,
body.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-dark,
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-router-section),
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-testi-headline),
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-founder),
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-final-cta),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-manifesto),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-icon-list-section),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-use-case-stack),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-vision),
main.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-forest,
main.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-peach,
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-warmth),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-dark-feat),
main.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-dark-olive,
main.natrul-homepage .wp-block-post-content > .wp-block-group.is-style-natrul-dark,
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-router-section),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-testi-headline),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-founder),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-final-cta) {
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow-x: hidden;
}

/* Standalone wp:html wrapper sections also strip padding when they are full-section blocks */
body.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-warmth),
body.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-manifesto),
body.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-hero),
main.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-warmth),
main.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-manifesto),
main.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-hero) {
        padding-left: 0 !important;
        padding-right: 0 !important;
}

/* Distraction inner wrap — top breathing room only */
body.natrul-homepage .natrul-distract-wrap {
        padding-top: 30px !important;
}

.wp-block-group.is-style-natrul-forest {
        background: var(--wp--preset--color--forest);
        color: var(--wp--preset--color--white);
}

/* Forest: group padding is stripped by full-section rule — restore gutter on inner wrap */
.wp-block-group.is-style-natrul-forest .natrul-section-inner {
        padding-left: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
        padding-right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
        padding-top: clamp(1.5rem, 4vw, 2.5rem) !important;
}

/* ─── ICON LIST (pattern) ──────────────────────────────────────────────────── */

.natrul-icon-list { display: flex; flex-direction: column; }

.natrul-icon-item {
        display: flex; align-items: flex-start; gap: 1.2rem;
        padding: 2rem 0;
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
        opacity: 0; transform: translateY(20px);
        transition: opacity 0.6s ease, transform 0.6s ease;
}

.natrul-icon-item.is-visible { opacity: 1; transform: translateY(0); }
.natrul-icon-item:last-child { border-bottom: none; }

.natrul-icon-item__icon {
        width: 52px; height: 52px; flex-shrink: 0;
}

.natrul-icon-item__icon svg { width: 100%; height: 100%; }

.natrul-icon-item__text h3 {
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--lead);
        font-weight: 500; margin-bottom: 0.3rem;
        color: var(--wp--preset--color--ink);
}

.natrul-icon-item__text p {
        font-size: var(--wp--preset--font-size--small);
        line-height: 1.65;
        color: var(--wp--preset--color--ink-muted);
}

/* Peach variant */
.natrul-icon-item--peach { border-bottom-color: rgba(26, 22, 16, 0.1); }

/* Dark variant */
.natrul-icon-item--dark {
        border-bottom-color: rgba(255, 255, 255, 0.08);
}

.natrul-icon-item--dark h3 { color: var(--wp--preset--color--white); }
.natrul-icon-item--dark p  { color: rgba(255, 255, 255, 0.55); }

/* ─── VISION STARBURST ─────────────────────────────────────────────────────── */

.natrul-starburst-wrap {
        display: flex; justify-content: center;
        padding: 3rem 0 1.5rem;
}

.natrul-starburst {
        width: 200px; height: 200px;
        animation: natrul-starburst-spin 40s linear infinite;
}

@media (prefers-reduced-motion: no-preference) {
        .natrul-starburst { animation: natrul-starburst-spin 40s linear infinite; }
}

@keyframes natrul-starburst-spin {
        from { transform: rotate(0deg); }
        to   { transform: rotate(360deg); }
}

/* ─── ROUTER CARDS ─────────────────────────────────────────────────────────── */

.natrul-router-section {
        padding: clamp(1.25rem, 3vw, 2rem) var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
}

.natrul-router-header {
        margin-bottom: clamp(2rem, 4vw, 3rem);
}

.natrul-router-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: clamp(0.75rem, 2vw, 1rem);
}

.natrul-router-card {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        text-decoration: none;
        aspect-ratio: 1;
        padding: clamp(1rem, 3vw, 1.5rem);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 0;
        background: rgba(255, 255, 255, 0.03);
        transition: background 0.3s ease, border-color 0.3s ease;
}

.natrul-router-card:hover {
        background: rgba(255, 255, 255, 0.07);
        border-color: rgba(255, 255, 255, 0.2);
}

.natrul-router-card__icon {
        width: clamp(32px, 6vw, 44px);
        height: clamp(32px, 6vw, 44px);
        margin-bottom: 0.75rem;
        color: rgba(255, 255, 255, 0.45);
        transition: color 0.3s ease;
}

.natrul-router-card:hover .natrul-router-card__icon {
        color: rgba(255, 255, 255, 0.7);
}

.natrul-router-card__icon svg {
        width: 100%;
        height: 100%;
}

.natrul-router-card__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(0.95rem, 2vw, 1.15rem);
        font-weight: 300;
        color: var(--wp--preset--color--white);
        line-height: 1.3;
}

.natrul-router-card__label {
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.3);
        margin-top: 0.35rem;
}

.natrul-router-card--highlight {
        border-color: rgba(255, 255, 255, 0.15);
}
.natrul-router-card--highlight .natrul-router-card__title {
        color: var(--wp--preset--color--warm);
}
.natrul-router-card--highlight .natrul-router-card__icon {
        color: var(--wp--preset--color--warm);
        opacity: 0.6;
}

@media (min-width: 768px) {
        .natrul-router-grid {
                grid-template-columns: repeat(4, 1fr);
                max-width: 740px;
                margin-inline: auto;
        }
        .natrul-router-header {
                max-width: 740px;
                margin-inline: auto;
        }
}

/* ─── TESTIMONIALS ─────────────────────────────────────────────────────────── */

/* Inner content gutter — keeps text away from viewport edge when outer group padding is stripped */
.is-style-natrul-dark > .wp-block-html > div:has(.natrul-testi-headline),
.wp-block-group.is-style-natrul-dark .natrul-testi-headline,
.wp-block-group.is-style-natrul-dark .natrul-testi-cards {
        padding-left: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
        padding-right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
}
.wp-block-group.is-style-natrul-dark > .wp-block-html > div {
        padding-left: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
        padding-right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
}

/*
 * Dark features (“The full picture”): do NOT rely on > .wp-block-html > div — core often wraps
 * HTML blocks (layout / alignment), which breaks child combinators. Scoped class + !important
 * wins over inline spacing when vars or saved markup disagree across environments.
 */
.wp-block-group.natrul-dark-features-section {
        padding-top: clamp(1rem, 4vw, 2.5rem) !important;
        position: relative;
        overflow: hidden;
}

.wp-block-group.natrul-dark-features-section::before {
        content: '';
        position: absolute;
        inset: 0;
        background: rgba(19, 18, 16, 0.82);
        z-index: 0;
        pointer-events: none;
}

.wp-block-group.natrul-dark-features-section > * {
        position: relative;
        z-index: 1;
}

.wp-block-group.natrul-dark-features-section .natrul-dark-features {
        padding-top: clamp(1.25rem, 3vw, 2rem) !important;
        padding-left: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
        padding-right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
        box-sizing: border-box;
}

/* Stat block with watermark number */
.natrul-dark-features__stat-block {
        position: relative;
        padding: clamp(2.5rem, 6vw, 4rem) 0 clamp(2rem, 5vw, 3.5rem);
        text-align: center;
}

.natrul-dark-features__stat-block::before {
        content: '250,000,000';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-family: var(--wp--preset--font-family--sans);
        font-size: clamp(4.5rem, 25vw, 14rem);
        font-weight: 700;
        letter-spacing: -0.03em;
        color: rgba(255, 255, 255, 0.13);
        white-space: nowrap;
        pointer-events: none;
        user-select: none;
        line-height: 1;
        width: 100%;
        text-align: center;
        z-index: 0;
}

.natrul-dark-features__watermark {
        display: none;
}

.natrul-dark-features__stat-text {
        position: relative;
        z-index: 1;
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.2rem, 2.5vw, 1.7rem);
        font-weight: 300;
        line-height: 1.6;
        color: rgba(255, 255, 255, 0.85);
        max-width: 560px;
        margin: 0 auto;
        font-style: italic;
}


/* Same section, older saved content (no .natrul-dark-features-section on the group yet) */
.wp-block-group.is-style-natrul-dark:not(.natrul-dark-features-section):has(.natrul-dark-features__headline) {
        padding-top: clamp(1rem, 4vw, 2.5rem) !important;
}

.wp-block-group.is-style-natrul-dark:not(.natrul-dark-features-section):has(.natrul-dark-features__headline) .wp-block-html {
        padding-top: clamp(1.25rem, 3vw, 2rem) !important;
}

/* Dark section top padding is handled by the section wrapper — no extra eyebrow padding needed */

.natrul-testi-headline {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(2.8rem, 10vw, 5rem);
        font-weight: 300; color: var(--wp--preset--color--white);
        line-height: 1.05; letter-spacing: -0.02em;
        padding: 3rem 0 2rem;
}

.natrul-testi-cards {
        display: flex; flex-direction: column; gap: 0.8rem;
        padding: 0 0 3rem;
}

.natrul-testi-card {
        background: #2a3020;
        border-radius: 12px; padding: 1.8rem;
        opacity: 0; transform: translateY(20px);
        transition: opacity 0.6s ease, transform 0.6s ease;
}

.natrul-testi-card.is-visible { opacity: 1; transform: translateY(0); }

.natrul-testi-card__top {
        display: flex; align-items: center; gap: 0.8rem;
        margin-bottom: 1.5rem;
}

.natrul-testi-card__avatar {
        width: 40px; height: 40px; border-radius: 50%;
        background: var(--wp--preset--color--amber-bg);
        display: flex; align-items: center; justify-content: center;
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; color: var(--wp--preset--color--ink);
        font-weight: 500; flex-shrink: 0;
        border: 2px solid rgba(255, 255, 255, 0.2);
}

.natrul-testi-card__name {
        font-size: var(--wp--preset--font-size--small);
        font-weight: 500; color: var(--wp--preset--color--white);
}

.natrul-testi-card__role {
        font-size: var(--wp--preset--font-size--micro);
        color: rgba(255, 255, 255, 0.45);
}

.natrul-testi-card__body {
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--lead);
        font-weight: 300; line-height: 1.65;
        color: var(--wp--preset--color--white); margin-bottom: 1rem;
}

.natrul-testi-card__date {
        font-size: var(--wp--preset--font-size--micro);
        color: rgba(255, 255, 255, 0.35);
}

/* ─── AT A GLANCE ──────────────────────────────────────────────────────────── */

.natrul-glance-grid {
        display: grid; grid-template-columns: 1fr 1fr;
        gap: 2rem; padding: 2rem 0 3rem;
}

.natrul-glance-item {
        display: flex; flex-direction: column; align-items: center;
        text-align: center; gap: 0.7rem;
        opacity: 0; transform: translateY(16px);
        transition: opacity 0.5s ease, transform 0.5s ease;
}

.natrul-glance-item.is-visible { opacity: 1; transform: translateY(0); }

.natrul-glance-item__icon { width: 44px; height: 44px; }

.natrul-glance-item__text {
        font-size: var(--wp--preset--font-size--small);
        color: rgba(255, 255, 255, 0.6); line-height: 1.4;
}

/* Full width glance item */
.natrul-glance-item--full { grid-column: 1 / -1; }

/* ─── FINAL CTA ────────────────────────────────────────────────────────────── */

.natrul-final-cta {
        position: relative; background: var(--wp--preset--color--dark);
        overflow: hidden;
        min-height: var(--natrul-hero-min-height, 520px);
        padding: var(--natrul-section-padding, clamp(5rem, 8vw, 7.5rem)) var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) 4rem;
        display: flex; flex-direction: column; align-items: center; justify-content: center;
        text-align: center;
}

.natrul-final-cta__video {
        position: absolute; inset: 0;
        width: 100%; height: 100%;
        object-fit: cover;
        z-index: 0;
        opacity: 0.4;
}

.natrul-final-cta__glow {
        position: absolute; bottom: -20%; left: 50%;
        transform: translateX(-50%);
        width: 300%; height: 60%;
        background: radial-gradient(
                ellipse at center,
                rgba(196, 146, 58, 0.45) 0%,
                rgba(196, 100, 10, 0.2) 35%,
                transparent 70%
        );
        pointer-events: none;
}

.natrul-final-cta__overlay {
        position: absolute; inset: 0;
        background: rgba(20, 18, 16, 0.55);
        z-index: 1;
        pointer-events: none;
}

.natrul-final-cta__tagline {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(2rem, 5vw, 3.5rem);
        font-weight: 400;
        font-style: normal;
        color: var(--wp--preset--color--surface);
        line-height: 1.1;
        position: relative; z-index: 2;
        margin-bottom: 2rem;
        letter-spacing: -0.01em;
}

.natrul-final-cta__tagline em {
        font-style: italic;
        color: var(--wp--preset--color--amber-bg);
}

.natrul-final-cta__btn {
        display: block; width: 100%; max-width: 320px;
        background: transparent;
        color: #ffffff;
        border: 1.5px solid var(--wp--preset--color--amber-bg, #e8a830);
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase;
        text-decoration: none;
        padding: 1.1rem 2rem; border-radius: 0;
        position: relative; z-index: 2; margin-bottom: 0.8rem;
        transition: background 0.2s, border-color 0.2s, color 0.2s;
        -webkit-text-fill-color: #ffffff;
}

.natrul-final-cta__btn:hover {
        background: var(--wp--preset--color--amber-bg, #e8a830);
        color: #1a1610;
        border-color: var(--wp--preset--color--amber-bg, #e8a830);
        text-decoration: none;
        -webkit-text-fill-color: #1a1610;
}

.natrul-final-cta__btn:hover {
        background: var(--wp--preset--color--amber-bg, #e8a830);
        color: #1a1610 !important;
        border-color: var(--wp--preset--color--amber-bg, #e8a830);
        text-decoration: none;
}

.natrul-final-cta__note {
        font-size: var(--wp--preset--font-size--micro);
        color: rgba(255, 255, 255, 0.35);
        position: relative; z-index: 2;
}

/* ─── Certification Strip ───────────────────────────────────────────────────── */

.natrul-certifications {
        background: var(--wp--preset--color--dark);
        border-top: 1px solid rgba(255, 255, 255, 0.06);
        padding: 1.25rem var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
        text-align: center;
}

.natrul-certifications__label {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.22);
        margin-bottom: 0.75rem;
}

.natrul-certifications__list {
        list-style: none;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 0;
        margin: 0;
        padding: 0;
}

.natrul-certifications__list li {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.4);
        font-family: var(--wp--preset--font-family--sans);
        padding: 0 1.5rem;
        position: relative;
}

.natrul-certifications__list li + li::before {
        content: '';
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 1px;
        height: 10px;
        background: rgba(255, 255, 255, 0.15);
}

/* ─── FOOTER ───────────────────────────────────────────────────────────────── */

.natrul-footer {
        background: var(--wp--preset--color--dark);
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        padding: 4rem var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) 2rem;
        position: relative; overflow: hidden;
}

.natrul-footer__glow {
        position: absolute; bottom: 0; left: 50%;
        transform: translateX(-50%);
        width: 200%; height: 50%;
        background: radial-gradient(
                ellipse at bottom,
                rgba(160, 80, 10, 0.3) 0%,
                transparent 70%
        );
        pointer-events: none;
}

.natrul-footer__inner { position: relative; z-index: 1; }

.natrul-footer__brand-name {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.3em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.4); margin-bottom: 0.5rem;
}

.natrul-footer__logo-img {
        display: block;
        width: auto;
        max-height: 28px;
        opacity: 0.45;
        margin-bottom: 1rem;
        filter: brightness(0) invert(1);
}

.natrul-footer__tagline {
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--h4);
        color: rgba(255, 255, 255, 0.8);
        font-style: italic; font-weight: 300; margin-bottom: 3rem;
}

.natrul-footer__grid {
        display: grid; grid-template-columns: 1fr 1fr;
        gap: 2rem; margin-bottom: 3rem;
}

.natrul-footer__col h4 {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.28); margin-bottom: 1rem;
}

.natrul-footer__col ul { list-style: none; }
.natrul-footer__col li { margin-bottom: 0.65rem; color: rgba(255, 255, 255, 0.7); font-family: var(--wp--preset--font-family--serif); font-size: var(--wp--preset--font-size--lead); font-weight: 300; }

.natrul-footer__col a {
        color: rgba(255, 255, 255, 0.7);
        text-decoration: none;
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--lead);
        font-weight: 300; transition: color 0.2s;
}

.natrul-footer__col a:hover { color: var(--wp--preset--color--white); }

.natrul-footer__tagline-col {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.2rem; color: rgba(255, 255, 255, 0.75);
        font-style: italic; font-weight: 300; line-height: 1.35;
}

.natrul-footer__socials { margin-bottom: 2rem; }
.natrul-footer__socials h4 {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.28); margin-bottom: 0.8rem;
}

.natrul-footer__social-icons { display: flex; gap: 1.2rem; align-items: center; }
.natrul-footer__social-icons a {
        color: rgba(255, 255, 255, 0.45);
        text-decoration: none; transition: color 0.2s;
        display: flex; align-items: center;
}
.natrul-footer__social-icons a:hover { color: rgba(255, 255, 255, 0.9); }
.natrul-footer__social-icons svg { display: block; }

.natrul-footer__newsletter h4 {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.28); margin-bottom: 0.8rem;
}

.natrul-footer__newsletter-form {
        display: flex;
        border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 0; overflow: hidden;
}

.natrul-footer__newsletter-form input {
        flex: 1; background: transparent; border: none; outline: none;
        padding: 0.8rem 1rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.06em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.7);
}

.natrul-footer__newsletter-form input::placeholder { color: rgba(255, 255, 255, 0.3); }

.natrul-footer__newsletter-form button {
        background: var(--wp--preset--color--white);
        color: var(--wp--preset--color--dark);
        border: none; padding: 0.8rem 1.2rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase;
        cursor: pointer; transition: background 0.2s;
}

.natrul-footer__newsletter-form button:hover {
        background: var(--wp--preset--color--amber-bg);
}

@media (max-width: 599px) {
        #sib_signup_form_1 { flex-direction: column !important; }
        #sib_signup_form_1 input[type="submit"] { width: 100% !important; }
}

.natrul-footer__bottom {
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        padding-top: 1.5rem; margin-top: 2.5rem;
        font-size: var(--wp--preset--font-size--micro);
        color: rgba(255, 255, 255, 0.25); line-height: 1.6;
}

.natrul-footer__bottom a {
        color: rgba(255, 255, 255, 0.35); text-decoration: none; transition: color 0.2s;
}

.natrul-footer__bottom a:hover { color: rgba(255, 255, 255, 0.6); }

/* ─── Reveal animations (IntersectionObserver) ─────────────────────────────── */

[data-animate="fade-up"] {
        opacity: 0; transform: translateY(24px);
        transition: opacity 0.7s ease, transform 0.7s ease;
}

[data-animate="fade-up"].is-visible {
        opacity: 1; transform: translateY(0);
}

/* ─── Progress dots (shared component) ──────────────────────────────────────── */

.natrul-progress-dots {
        display: flex; gap: 0.5rem;
        justify-content: center; padding: 1.5rem 0;
}

.natrul-pdot {
        width: 10px; height: 10px; border-radius: 50%;
        background: rgba(26, 22, 16, 0.15);
        transition: background 0.3s, transform 0.3s;
}

.natrul-pdot.is-active {
        background: var(--wp--preset--color--ink);
        transform: scale(1.4);
}

.natrul-pdot--light {
        background: rgba(255, 255, 255, 0.2);
}

.natrul-pdot--light.is-active {
        background: var(--wp--preset--color--amber-bg);
        transform: scale(1.4);
}

/* ═══════════════════════════════════════════════════════════════════════════
   V2 UPDATES — appended to main.css
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── HERO v2 fixes ──────────────────────────────────────────────────────── */

/* Headline size set at base declaration above */

/* Sub copy — full white, readable */
.natrul-hero__sub {
        opacity: 1 !important;
        color: rgba(255, 255, 255, 0.92) !important;
        font-size: 1rem !important;
}

/* Ticker — more readable */
.natrul-hero__ticker-inner {
        color: rgba(255, 255, 255, 0.65) !important;
        font-size: 0.7rem !important;
}

/* Hero buttons — prominent */
.natrul-hero__actions { gap: 0.8rem; }

.natrul-btn--light {
        background: white !important;
        color: var(--wp--preset--color--ink) !important;
        padding: 1rem 2rem !important;
        font-size: 0.75rem !important;
        font-weight: 600 !important;
        box-shadow: 0 2px 12px rgba(0,0,0,0.2) !important;
}

/* Order a Sample — visible ghost outline on dark hero */
.natrul-btn--ghost-light {
        background: transparent !important;
        color: white !important;
        border: 1.5px solid rgba(255,255,255,0.8) !important;
        padding: 1rem 2rem !important;
        font-size: 0.75rem !important;
        font-weight: 600 !important;
}
.natrul-btn--ghost-light:hover {
        background: rgba(255,255,255,0.1) !important;
        color: white !important;
}

/* ─── BUTTON SYSTEM v2 — colour pass ────────────────────────────────────── */

/* Primary on light bg → ink */
.natrul-btn--ink,
.wp-block-button.is-style-natrul-primary .wp-block-button__link {
        background: var(--wp--preset--color--ink);
        color: var(--wp--preset--color--white);
}
.natrul-btn--ink:hover,
.wp-block-button.is-style-natrul-primary .wp-block-button__link:hover {
        background: var(--wp--preset--color--ink-mid);
}

/* Forest green — sample CTAs everywhere */
.natrul-btn--forest,
.wp-block-button.is-style-natrul-forest .wp-block-button__link {
        background: var(--wp--preset--color--primary);
        color: white;
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        font-weight: 600;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        padding: 0.9rem 1.8rem;
        border-radius: var(--wp--custom--border--radius);
        border: none;
        cursor: pointer;
        text-decoration: none;
        display: inline-block;
        transition: background 0.2s;
}
.natrul-btn--forest:hover,
.wp-block-button.is-style-natrul-forest .wp-block-button__link:hover {
        background: #2d5a2d;
}

/* Amber — dark backgrounds ONLY */
.natrul-btn--amber,
.wp-block-button.is-style-natrul-amber .wp-block-button__link {
        background: var(--wp--preset--color--amber-bg);
        color: var(--wp--preset--color--ink);
}
.natrul-btn--amber:hover,
.wp-block-button.is-style-natrul-amber .wp-block-button__link:hover {
        background: #c8880a;
        color: white;
}

/* Ghost */
.natrul-btn--ghost,
.wp-block-button.is-style-natrul-ghost .wp-block-button__link {
        background: transparent;
        color: var(--wp--preset--color--ink);
        border: 1.5px solid rgba(26,22,16,0.25);
}
.natrul-btn--ghost:hover,
.wp-block-button.is-style-natrul-ghost .wp-block-button__link:hover {
        border-color: var(--wp--preset--color--warm);
        background: var(--wp--preset--color--surface-warm);
}

/* Core/button default — typography + spacing only; colour set per variant */
.wp-block-button__link {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: var(--wp--preset--font-size--micro) !important;
        font-weight: 600 !important;
        letter-spacing: 0.14em !important;
        text-transform: uppercase !important;
        border-radius: var(--wp--custom--border--radius) !important;
        padding: 0.9rem 1.8rem !important;
        transition: background 0.2s, color 0.2s !important;
}

/* Nav CTA — FIX 1: amber (plain <a> tag, selector scoped to a element) */
/* ─── WARMTH SPLIT-SCREEN v2 (FIX 5) ────────────────────────────────────── */

/*
 * FIX 5: Photo starts opacity:0 in-place. GSAP controls opacity + yPercent.
 * Stage 3: fades in full-screen. Stage 4: parallaxes DOWN (yPercent 0→55).
 */
.natrul-warmth__bg-img {
        position: absolute;
        inset: 0;
        background-size: cover;
        background-position: center 40%;
        /* No hardcoded URL — set via inline style from PHP option */
        opacity: 0; /* FIX 5: GSAP fades this in at Stage 3 */
        z-index: 1;
        will-change: transform, opacity;
        filter: brightness(0.65) sepia(0.5) saturate(1.8) hue-rotate(-10deg);
}

.natrul-warmth__bg-img--video {
        display: flex;
        background: none !important;
}

.natrul-warmth__bg-img--video video {
        filter: brightness(0.65) sepia(0.5) saturate(1.8) hue-rotate(-10deg);
}

/* Overlay panel — FIX 5: starts off-screen above (GSAP sets yPercent:-100).
   Height 58% so photo peeks below. */
.natrul-warmth__overlay {
        position: absolute;
        top: 0; left: 0; right: 0;
        height: 58%;
        background: var(--wp--preset--color--dark);
        z-index: 3;
        display: flex; flex-direction: column;
        justify-content: flex-end; /* push content down to sit right above the photo */
        padding: 5.5rem var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) 2.5rem;
        will-change: transform, opacity;
        opacity: 0;
}
@media (min-width: 768px) {
        .natrul-warmth__overlay {
                justify-content: center;
                padding: 5rem 3.5rem 3rem;
        }
}

.natrul-warmth__overlay-title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.4rem, 5vw, 2.2rem);
        font-weight: 300;
        color: white;
        line-height: 1.15;
        margin-bottom: 0.6rem;
}
.natrul-warmth__overlay-title em { font-style: italic; }

.natrul-warmth__overlay-sub {
        font-size: var(--wp--preset--font-size--small);
        color: rgba(255,255,255,0.5);
        line-height: 1.6;
        margin-bottom: 0.8rem;
}

.natrul-warmth__overlay-list {
        display: flex; flex-direction: column; gap: 0.45rem;
}
@media (min-width: 768px) {
        .natrul-warmth__overlay-list { gap: 0.6rem; }
        .natrul-warmth__overlay-sub  { margin-bottom: 1.2rem; }
}

.natrul-warmth__overlay-item {
        display: flex; flex-direction: column; gap: 0.1rem;
}

.natrul-warmth__overlay-item-title {
        font-size: var(--wp--preset--font-size--small);
        font-weight: 500; color: white;
}

.natrul-warmth__overlay-item-body {
        font-size: 0.78rem; color: rgba(255,255,255,0.45); line-height: 1.5;
}

/* Fade-from-left animation for warmth overlay items */
.natrul-warmth__overlay-item--fade-left {
        opacity: 0;
        transform: translateX(-30px);
        transition: opacity 0.7s ease, transform 0.7s ease;
}
.natrul-warmth__overlay-item--fade-left:nth-child(2) { transition-delay: 0.15s; }
.natrul-warmth__overlay-item--fade-left:nth-child(3) { transition-delay: 0.3s; }
.natrul-warmth__overlay.is-visible .natrul-warmth__overlay-item--fade-left {
        opacity: 1;
        transform: translateX(0);
}

/* ─── FAQ PAGE STYLES ────────────────────────────────────────────────────── */

.natrul-page-hero--dark {
        background: var(--wp--preset--color--dark);
        padding: 7rem var(--natrul-section-padding-inline) 4rem;
        position: relative; overflow: hidden;
}
.natrul-page-hero--dark::before {
        content: '';
        position: absolute; inset: 0;
        background: repeating-linear-gradient(-55deg, transparent 0, transparent 60px, rgba(255,255,255,0.025) 60px, rgba(255,255,255,0.025) 62px);
        pointer-events: none;
}
.natrul-page-hero__eyebrow {
        font-size: 0.62rem; letter-spacing: 0.25em; text-transform: uppercase;
        color: rgba(255,255,255,0.3); margin-bottom: 1.5rem;
        position: relative; z-index: 1;
}
.natrul-page-hero__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(2.8rem, 10vw, 5rem);
        font-weight: 300; line-height: 1.05;
        color: white; letter-spacing: -0.02em;
        margin-bottom: 1.2rem;
        position: relative; z-index: 1;
}
.natrul-page-hero__title em { font-style: italic; color: var(--wp--preset--color--amber-bg); }
.natrul-page-hero__sub {
        font-size: var(--wp--preset--font-size--body);
        color: rgba(255,255,255,0.55);
        max-width: 400px; line-height: 1.7;
        position: relative; z-index: 1;
}

/* Category nav */
.natrul-faq-cat-nav {
        background: var(--wp--preset--color--surface-warm);
        border-bottom: 1px solid rgba(26,22,16,0.08);
        padding: 0 var(--natrul-section-padding-inline);
        display: flex; gap: 0; overflow-x: auto;
        scrollbar-width: none;
        position: sticky; top: 60px; z-index: 50;
}
.natrul-faq-cat-nav::-webkit-scrollbar { display: none; }

.natrul-faq-cat-btn {
        background: none; border: none;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.7rem; font-weight: 400;
        letter-spacing: 0.14em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
        cursor: pointer; padding: 1.1rem 1rem;
        white-space: nowrap; flex-shrink: 0;
        border-bottom: 2px solid transparent;
        transition: color 0.2s, border-color 0.2s;
}
.natrul-faq-cat-btn:hover { color: var(--wp--preset--color--ink); }
.natrul-faq-cat-btn.is-active {
        color: var(--wp--preset--color--ink);
        border-bottom-color: var(--wp--preset--color--warm);
        font-weight: 500;
}

/* FAQ categories */
.natrul-faq-category { border-bottom: 1px solid rgba(26,22,16,0.06); }
.natrul-faq-category__header {
        padding: 3rem var(--natrul-section-padding-inline) 1.5rem;
        display: flex; align-items: center; gap: 1rem;
}
.natrul-faq-category__icon {
        width: 36px; height: 36px; border-radius: 50%;
        background: var(--wp--preset--color--surface-warm);
        display: flex; align-items: center; justify-content: center;
        font-size: 1rem; flex-shrink: 0;
}
.natrul-faq-category__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.4rem; font-weight: 300; color: var(--wp--preset--color--ink);
}

/* FAQ items */
.natrul-faq-item {
        border-top: 1px solid rgba(26,22,16,0.07);
        margin: 0 var(--natrul-section-padding-inline);
}
.natrul-faq-item:last-child { margin-bottom: 1.5rem; }

.natrul-faq-question {
        width: 100%; background: none; border: none;
        text-align: left; padding: 1.4rem 0;
        display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--body);
        font-weight: 400; color: var(--wp--preset--color--ink);
        cursor: pointer; line-height: 1.5;
}
.natrul-faq-question:hover { color: var(--wp--preset--color--ink-mid); }

.natrul-faq-toggle {
        width: 22px; height: 22px; border-radius: 50%;
        background: var(--wp--preset--color--surface-warm);
        display: flex; align-items: center; justify-content: center;
        flex-shrink: 0; margin-top: 1px;
        font-size: 0.9rem; color: var(--wp--preset--color--ink-muted);
        transition: background 0.2s, transform 0.3s, color 0.2s;
}
.natrul-faq-item.is-open .natrul-faq-toggle {
        background: var(--wp--preset--color--warm);
        color: white;
        transform: rotate(45deg);
}

.natrul-faq-answer {
        display: none;
        padding: 0 0 1.5rem;
        font-size: var(--wp--preset--font-size--small);
        line-height: 1.8; color: var(--wp--preset--color--ink-muted);
        max-width: 620px;
}
.natrul-faq-item.is-open .natrul-faq-answer { display: block; }

/* Contact section */
.natrul-contact-section {
        background: var(--wp--preset--color--dark);
        padding: 4rem var(--natrul-section-padding-inline);
}
.natrul-contact-section__eyebrow {
        font-size: 0.62rem; letter-spacing: 0.25em; text-transform: uppercase;
        color: rgba(255,255,255,0.3); margin-bottom: 2rem;
}
.natrul-contact-section__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.8rem, 6vw, 2.8rem);
        font-weight: 300; color: white; line-height: 1.2; margin-bottom: 0.8rem;
}
.natrul-contact-section__title em { font-style: italic; color: var(--wp--preset--color--amber-bg); }
.natrul-contact-section__sub {
        font-size: var(--wp--preset--font-size--small);
        line-height: 1.7; color: rgba(255,255,255,0.45);
        margin-bottom: 2.5rem; max-width: 360px;
}
.natrul-contact-direct {
        display: flex; flex-direction: column; gap: 0.8rem; margin-bottom: 2.5rem;
}
.natrul-contact-direct a {
        display: flex; align-items: center; gap: 0.8rem;
        color: rgba(255,255,255,0.7); text-decoration: none;
        font-size: var(--wp--preset--font-size--body); transition: color 0.2s;
}
.natrul-contact-direct a:hover { color: white; }
.natrul-contact-direct__icon {
        width: 34px; height: 34px; border-radius: 50%;
        background: rgba(255,255,255,0.08);
        display: flex; align-items: center; justify-content: center;
        font-size: 0.8rem; flex-shrink: 0;
}
.natrul-contact-divider {
        display: flex; align-items: center; gap: 1rem; margin-bottom: 2rem;
}
.natrul-contact-divider::before,
.natrul-contact-divider::after {
        content: ''; flex: 1; height: 1px; background: rgba(255,255,255,0.1);
}
.natrul-contact-divider span {
        font-size: 0.62rem; letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255,255,255,0.25);
}

/* Contact form */
.natrul-contact-form { display: flex; flex-direction: column; gap: 1rem; }
.natrul-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.natrul-form-field { display: flex; flex-direction: column; gap: 0.4rem; }
.natrul-form-label {
        font-size: 0.62rem; letter-spacing: 0.18em; text-transform: uppercase;
        color: rgba(255,255,255,0.35);
}
.natrul-form-input {
        background: rgba(255,255,255,0.06);
        border: 1px solid rgba(255,255,255,0.12);
        border-radius: 8px; padding: 0.9rem 1rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--small);
        font-weight: 300; color: white; outline: none;
        transition: border-color 0.2s, background 0.2s;
}
.natrul-form-input::placeholder { color: rgba(255,255,255,0.25); }
.natrul-form-input:focus {
        border-color: rgba(232,168,48,0.5);
        background: rgba(255,255,255,0.08);
}
.natrul-form-textarea { resize: vertical; min-height: 120px; }
.natrul-contact-form .natrul-btn--forest { margin-top: 0.5rem; width: 100%; text-align: center; }

/* Sample strip */
.natrul-sample-strip {
        background: var(--wp--preset--color--surface-warm);
        padding: 3rem var(--natrul-section-padding-inline);
        border-top: 1px solid rgba(26,22,16,0.08);
        display: flex; flex-direction: column; gap: 1rem;
}
.natrul-sample-strip__text {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.4rem; font-weight: 300; line-height: 1.3;
        color: var(--wp--preset--color--ink);
}
.natrul-sample-strip__text em { font-style: italic; color: var(--wp--preset--color--primary); }
.natrul-sample-strip__sub {
        font-size: var(--wp--preset--font-size--small);
        color: var(--wp--preset--color--ink-muted); line-height: 1.6;
}

/* ─── CALCULATOR RESKIN ──────────────────────────────────────────────────── */

.natrul-calc {
        max-width: 520px;
        font-family: var(--wp--preset--font-family--sans) !important;
}

.natrul-calc__label {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.2em !important;
        text-transform: uppercase !important;
        color: var(--wp--preset--color--ink-muted) !important;
        font-weight: 400 !important;
        margin: 0 0 12px !important;
        display: block !important;
}

.natrul-calc input[type="number"] {
        font-family: var(--wp--preset--font-family--sans) !important;
        background: var(--wp--preset--color--surface-warm) !important;
        border: 1px solid rgba(26,22,16,0.15) !important;
        border-radius: 8px !important;
        padding: 0.8rem 1rem !important;
        font-size: 0.9rem !important;
        color: var(--wp--preset--color--ink) !important;
        transition: border-color 0.2s, box-shadow 0.2s !important;
}
.natrul-calc input[type="number"]:focus {
        outline: none !important;
        border-color: var(--wp--preset--color--warm) !important;
        box-shadow: 0 0 0 3px rgba(196,146,58,0.12) !important;
}
.natrul-calc input[type="number"]::placeholder { color: var(--wp--preset--color--ink-muted) !important; }

.natrul-calc__input-wrap label {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.65rem !important;
        letter-spacing: 0.12em !important;
        text-transform: uppercase !important;
        color: var(--wp--preset--color--ink-muted) !important;
}

.natrul-calc__divider-text {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.65rem !important;
        letter-spacing: 0.12em !important;
        text-transform: uppercase !important;
        color: var(--wp--preset--color--ink-muted) !important;
}
.natrul-calc__divider-line { background: rgba(26,22,16,0.1) !important; }

/* Toggle rows */
.natrul-calc__toggle-row {
        background: var(--wp--preset--color--surface-warm) !important;
        border: 1px solid rgba(26,22,16,0.1) !important;
        border-radius: 8px !important;
}
.natrul-calc__toggle-row label {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.85rem !important;
        color: var(--wp--preset--color--ink) !important;
}
.natrul-calc__toggle-sub {
        color: var(--wp--preset--color--ink-muted) !important;
        font-size: 0.75rem !important;
}
.natrul-calc__toggle-row input[type="checkbox"] {
        accent-color: var(--wp--preset--color--primary) !important;
}

.natrul-calc__varnish-note {
        background: var(--wp--preset--color--surface-warm) !important;
        border: 1px solid rgba(26,22,16,0.1) !important;
        border-radius: 8px !important;
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.82rem !important;
        color: var(--wp--preset--color--ink-muted) !important;
}

/* Results card */
.natrul-calc__results {
        background: var(--wp--preset--color--surface-warm) !important;
        border: 1px solid rgba(26,22,16,0.1) !important;
        border-radius: 10px !important;
}
.natrul-calc__result-label {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.8rem !important;
        color: var(--wp--preset--color--ink-muted) !important;
}
.natrul-calc__result-value {
        font-family: var(--wp--preset--font-family--serif) !important;
        font-size: 1rem !important;
        color: var(--wp--preset--color--ink) !important;
        font-weight: 300 !important;
}
.natrul-calc__result-row--total .natrul-calc__result-label {
        font-weight: 500 !important;
        color: var(--wp--preset--color--ink) !important;
}
.natrul-calc__result-row--total .natrul-calc__result-value {
        font-size: 1.6rem !important;
        color: var(--wp--preset--color--ink) !important;
}
.natrul-calc__result-row { border-bottom-color: rgba(26,22,16,0.07) !important; }

/* Calculator buttons */
.natrul-calc__btn-add {
        background: var(--wp--preset--color--primary) !important;
        color: white !important;
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.75rem !important;
        font-weight: 600 !important;
        letter-spacing: 0.12em !important;
        text-transform: uppercase !important;
        border-radius: 10px !important;
        height: 52px !important;
        border: none !important;
        transition: background 0.2s !important;
}
.natrul-calc__btn-add:hover { background: #2d5a2d !important; opacity: 1 !important; }

.natrul-calc__btn-sample {
        background: transparent !important;
        color: var(--wp--preset--color--ink) !important;
        border: 1.5px solid rgba(26,22,16,0.2) !important;
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.75rem !important;
        font-weight: 500 !important;
        letter-spacing: 0.1em !important;
        text-transform: uppercase !important;
        border-radius: 10px !important;
        height: 52px !important;
        transition: border-color 0.2s, background 0.2s !important;
}
.natrul-calc__btn-sample:hover {
        border-color: var(--wp--preset--color--warm) !important;
        background: var(--wp--preset--color--surface-warm) !important;
        opacity: 1 !important;
}

.natrul-calc__sample-note {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: 0.72rem !important;
        color: var(--wp--preset--color--ink-muted) !important;
}

/* ─── REMOVE PROGRESS DOTS ───────────────────────────────────────────────── */
.natrul-progress-dots,
.progress-dots { display: none !important; }

/* ═══════════════════════════════════════════════════════════════════════════
   FIX PACK — confirmed via natrul-preview-fixed.html
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── FIX 3: Manifesto text-wrap — bounded + no mid-word breaks ───────────
   width:min(780px,90vw) hard-caps the container; overflow:hidden clips stray chars.
   word-break/overflow-wrap prevent the browser from ever breaking inside a word.
   (The JS word-wrapper handles line breaks at natural spaces only.) */
.natrul-manifesto__text-wrap {
        width: min(780px, 90vw);
        overflow: hidden;
}
.natrul-manifesto__line {
        font-size: clamp(1.5rem, 4.5vw, 3.2rem); /* tighter max so long sentence fits */
        word-break: normal;
        overflow-wrap: normal;
}
/* Pin-wrap height: see .natrul-manifesto__pin-wrap (720vh) */

/* Forest image — height/width: see HOMEPAGE IMAGE SIZING (.natrul-forest__img) */

/* Icon-list product feature — height driven by --natrul-feature-height */
.natrul-product-feature {
        position: relative;
        overflow: hidden;
        display: flex;
        align-items: flex-start;
        width: 100%;
        height: var(--natrul-feature-height, 60vh);
        min-height: var(--natrul-feature-min-height, 35vh);
        max-height: none;
}

/* ─── Use-case stack — 3 columns on desktop ─────────────────────────────
   Mobile: natural stack (1 col). Desktop: 3 equal columns side by side. */
.natrul-use-case-stack {
        display: grid;
        grid-template-columns: 1fr;
        gap: 2rem;
}

/* Force all use-case card image wrappers to same height (60vh — forest / peach) */
.natrul-use-case-stack > div > div:first-child {
        height: var(--natrul-feature-height) !important;
        min-height: var(--natrul-feature-min-height) !important;
        max-height: none !important;
        aspect-ratio: unset !important;
        overflow: hidden;
        border-radius: 0;
}

.natrul-use-case-stack > div > div:first-child img {
        width: 100%;
        height: 100%;
        min-height: 100%;
        object-fit: cover;
        display: block;
}

@media (min-width: 768px) {
        .natrul-use-case-stack {
                grid-template-columns: repeat(3, 1fr);
                gap: 1.8rem;
                align-items: start;
        }
        /* Remove mobile bottom margins so grid gap takes over */
        .natrul-use-case-stack > div {
                margin-bottom: 0 !important;
        }
}

/* ─── Use-case card headings — editorial style ───────────────────────────
   Override inline sans/500 with the serif light treatment used throughout. */
.natrul-use-case-stack h3 {
        font-family: var(--wp--preset--font-family--serif) !important;
        font-size: clamp(1.05rem, 2.5vw, 1.3rem) !important;
        font-weight: 300 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
        color: var(--wp--preset--color--ink) !important;
        margin-bottom: 0.5rem !important;
        padding-top: 0.75rem !important;
        border-top: 1px solid rgba(26, 22, 16, 0.12) !important;
}



/* ═══════════════════════════════════════════════════════════════════════════
   WOOCOMMERCE SHOP (ARCHIVE)
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── Shop page wrapper ──────────────────────────────────────────────────── */

.natrul-shop { padding-top: 60px; }

/* ─── Shop hero ──────────────────────────────────────────────────────────── */

.natrul-shop-hero {
        padding: 4rem var(--natrul-section-padding-inline) 3rem;
        background: var(--wp--preset--color--surface);
        position: relative; overflow: hidden;
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
}

.natrul-shop-hero__eyebrow {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.25em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
        margin-bottom: 1.2rem; position: relative; z-index: 1;
}

.natrul-shop-hero__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(2.2rem, 8vw, 3.8rem);
        font-weight: 300; line-height: 1.08;
        color: var(--wp--preset--color--ink);
        letter-spacing: -0.01em; margin-bottom: 1rem;
        position: relative; z-index: 1;
}

.natrul-shop-hero__title em {
        font-style: italic; color: var(--natrul-amber, #c4923a);
}

.natrul-shop-hero__sub {
        font-size: var(--wp--preset--font-size--body);
        line-height: 1.7; color: var(--wp--preset--color--ink-muted);
        max-width: 360px; position: relative; z-index: 1; margin-bottom: 2rem;
}

.natrul-shop-hero__stats { display: flex; gap: 2rem; position: relative; z-index: 1; }

.natrul-stat { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 0.2rem; }

.natrul-stat__val {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.8rem; font-weight: 300;
        color: var(--wp--preset--color--ink); line-height: 1;
}

.natrul-stat__label {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.16em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
}

/* ─── Filter bar ─────────────────────────────────────────────────────────── */

.natrul-filter-bar {
        background: var(--wp--preset--color--surface);
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
        padding: 0.8rem 1.8rem;
        display: flex; align-items: center; justify-content: space-between;
        gap: 1rem; position: sticky; top: 60px; z-index: 50;
        backdrop-filter: blur(8px);
}

.natrul-filter-bar__count {
        font-size: 0.72rem; letter-spacing: 0.1em;
        color: var(--wp--preset--color--ink-muted); white-space: nowrap;
}

.natrul-filter-bar__sort select,
.woocommerce-ordering select {
        background: none; border: 1px solid rgba(26, 22, 16, 0.15);
        border-radius: 6px; padding: 0.4rem 0.8rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.7rem; color: var(--wp--preset--color--ink);
        cursor: pointer; outline: none;
}

/* ─── Category image grid ────────────────────────────────────────────────── */

.natrul-shop-categories {
        padding: 1.4rem 1.8rem 1rem;
        background: var(--wp--preset--color--surface);
}

.natrul-shop-categories__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.9rem;
}

.natrul-shop-category-card {
        display: block;
        text-decoration: none;
        color: inherit;
}

.natrul-shop-category-card__media {
        display: block;
        aspect-ratio: 4 / 3;
        border-radius: 0;
        overflow: hidden;
        background: var(--wp--preset--color--cream);
}

.natrul-shop-category-card__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
}

.natrul-shop-category-card__name {
        display: block;
        margin-top: 0.45rem;
        font-size: 0.65rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
}

/* ─── Product grid ───────────────────────────────────────────────────────── */

/* WooCommerce’s clearfix ::before/::after breaks CSS Grid (extra “rows” / gaps) */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
        content: none !important;
        display: none !important;
}

.woocommerce ul.products,
.natrul-product-grid {
        list-style: none;
        padding: 1.5rem var(--natrul-section-padding-inline) 4rem;
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        column-gap: 1rem;
        row-gap: 1rem;
        align-items: start;
        width: 100%;
}

/* Reset WooCommerce default float/width overrides on product items */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
        float: none !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        clear: none !important;
}

/* Shop desktop grid — 3 cols at tablet, 4 cols at desktop */
@media (min-width: 640px) {
        .natrul-shop-categories__grid { grid-template-columns: repeat(4, 1fr); }
        .woocommerce ul.products,
        .natrul-product-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 1024px) {
        .natrul-shop-categories { padding: 1.6rem 2.5rem 1.1rem; }
        .natrul-shop .woocommerce ul.products,
        .natrul-shop .natrul-product-grid { grid-template-columns: repeat(3, 1fr); padding: 1.5rem 2.5rem 4rem; }
}

/* Reset WooCommerce typography overrides inside product cards */
.natrul-product-card .price,
.natrul-product-card .woocommerce-loop-product__title,
.natrul-product-card a.button { display: none !important; }

/* Ensure product card fills the li */
.woocommerce ul.products li.product .natrul-product-card {
        display: block;
}

/* ─── Product card ───────────────────────────────────────────────────────── */

.natrul-product-card {
        display: block; text-decoration: none;
        opacity: 0; transform: translateY(16px);
        animation: natrulFadeUp 0.5s ease forwards;
}

@media (prefers-reduced-motion: reduce) {
        .natrul-product-card {
                opacity: 1;
                transform: none;
                animation: none;
        }
}

@media (prefers-reduced-motion: no-preference) {
        .natrul-product-card:nth-child(1) { animation-delay: 0.05s; }
        .natrul-product-card:nth-child(2) { animation-delay: 0.10s; }
        .natrul-product-card:nth-child(3) { animation-delay: 0.15s; }
        .natrul-product-card:nth-child(4) { animation-delay: 0.20s; }
        .natrul-product-card:nth-child(5) { animation-delay: 0.25s; }
        .natrul-product-card:nth-child(6) { animation-delay: 0.30s; }
        @keyframes natrulFadeUp { to { opacity: 1; transform: translateY(0); } }
}

.natrul-product-card__img {
        aspect-ratio: 4 / 3; border-radius: 0; overflow: hidden;
        background: var(--wp--preset--color--cream);
        margin-bottom: 0.8rem; position: relative;
}

.natrul-product-card__img img {
        width: 100%; height: 100%; object-fit: cover;
        object-position: center;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        transform: translateZ( 0 );
        transition: transform 0.6s ease;
}

.natrul-product-card:hover .natrul-product-card__img img {
        transform: translateZ( 0 ) scale( 1.04 );
}

.natrul-product-card__name {
        font-size: 0.78rem; font-weight: 500;
        color: var(--wp--preset--color--ink);
        margin-bottom: 0.2rem; line-height: 1.3;
}

.natrul-product-card__price,
.natrul-product-card__price .amount {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; font-weight: 300;
        color: var(--wp--preset--color--ink);
}

/* ─── Sample nudge (shop bottom CTA) ─────────────────────────────────────── */

.natrul-sample-nudge {
        background: var(--wp--preset--color--dark);
        border-radius: 12px; padding: 1.8rem;
        display: flex; flex-direction: column; gap: 1rem;
}

.natrul-sample-nudge__text {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.2rem; font-weight: 300; color: white; line-height: 1.35;
}

.natrul-sample-nudge__text em {
        font-style: italic; color: var(--wp--preset--color--amber-bg);
}

.natrul-sample-nudge__sub {
        font-size: 0.75rem; color: rgba(255, 255, 255, 0.45); line-height: 1.6;
}

.natrul-sample-nudge__btn {
        display: inline-block;
        background: var(--wp--preset--color--amber-bg); color: var(--wp--preset--color--ink);
        font-size: 0.68rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase;
        text-decoration: none; padding: 0.8rem 1.4rem; border-radius: 8px; align-self: flex-start;
}

/* Bottom nudge on shop page */
.natrul-shop-bottom-nudge {
        padding: 2rem var(--natrul-section-padding-inline) 0;
}

/* Sample CTA when using default WooCommerce shop template (above product grid) */
.natrul-shop-sample-cta {
        max-width: 1200px;
        margin: 2rem auto 3rem;
        padding: 0 1rem;
}

@media (min-width: 1024px) {
        .natrul-shop-sample-cta { padding: 0 1.5rem; }
}

/* Price suffix on archive listings */
.woocommerce ul.products .price .natrul-price-per-m2,
.natrul-price-per-m2 {
        font-size: 0.75em;
        font-weight: 400;
        letter-spacing: 0.04em;
        color: var(--wp--preset--color--ink-muted);
        white-space: nowrap;
}

/* ─── Pagination ─────────────────────────────────────────────────────────── */

.natrul-shop-pagination,
.woocommerce nav.woocommerce-pagination {
        display: flex; justify-content: center; gap: 0.5rem;
        padding: 2rem var(--natrul-section-padding-inline) 4rem;
}

.woocommerce nav.woocommerce-pagination ul { display: flex; gap: 0.5rem; list-style: none; }

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
        width: 36px; height: 36px; border-radius: 0;
        display: flex; align-items: center; justify-content: center;
        font-size: 0.78rem;
        background: none; border: 1px solid rgba(26, 22, 16, 0.15);
        color: var(--wp--preset--color--ink); cursor: pointer; text-decoration: none;
        transition: background 0.2s, border-color 0.2s;
}

/* Space between page numbers and Prev / Next labels */
.woocommerce nav.woocommerce-pagination ul li a.prev { margin-right: 0.75rem; }
.woocommerce nav.woocommerce-pagination ul li a.next { margin-left: 0.75rem; }

.woocommerce nav.woocommerce-pagination ul li a.prev,
.woocommerce nav.woocommerce-pagination ul li a.next {
        width: auto;
        min-width: 36px;
        padding: 0 0.65rem;
        white-space: nowrap;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
        background: var(--wp--preset--color--ink); color: white;
        border-color: var(--wp--preset--color--ink);
}

/* ─── Trust strip ────────────────────────────────────────────────────────── */

.natrul-trust-strip {
        background: var(--wp--preset--color--surface-warm);
        border-top: 1px solid rgba(26, 22, 16, 0.08);
        padding: 2rem var(--natrul-section-padding-inline);
        display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; text-align: center;
}

.natrul-trust-item__val {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.4rem; font-weight: 300;
        color: var(--wp--preset--color--ink); line-height: 1; margin-bottom: 0.3rem;
}

.natrul-trust-item__label {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.14em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted); line-height: 1.4;
}


/* ═══════════════════════════════════════════════════════════════════════════
   WOOCOMMERCE SINGLE PRODUCT
   ═══════════════════════════════════════════════════════════════════════════ */

.natrul-product { padding-top: 60px; }

/* ─── Breadcrumb ─────────────────────────────────────────────────────────── */

.natrul-breadcrumb,
.woocommerce .woocommerce-breadcrumb {
        padding: 0.8rem 1.8rem;
        font-size: 0.65rem; letter-spacing: 0.12em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
        border-bottom: 1px solid rgba(26, 22, 16, 0.07);
}

.natrul-breadcrumb a,
.woocommerce .woocommerce-breadcrumb a { color: var(--wp--preset--color--ink-muted); text-decoration: none; }

/* ─── Gallery ────────────────────────────────────────────────────────────── */

.natrul-product-gallery { position: relative; }

.natrul-product-gallery__main {
        aspect-ratio: 4 / 3;
        background: var(--wp--preset--color--cream); overflow: hidden;
}

.natrul-product-gallery__main img,
.natrul-product-gallery__main-img {
        width: 100%; height: 100%; object-fit: cover;
        object-position: center;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        transform: translateZ( 0 );
        transition: opacity 0.3s ease;
}

.natrul-product-gallery__thumbs {
        display: flex; gap: 0.5rem; padding: 0.8rem 1.8rem;
        overflow-x: auto; scrollbar-width: none;
}

.natrul-product-gallery__thumbs::-webkit-scrollbar { display: none; }

.natrul-product-gallery__thumb {
        width: 60px; height: 60px; flex-shrink: 0;
        border-radius: 0; overflow: hidden;
        border: 2px solid transparent; cursor: pointer;
        transition: border-color 0.2s; background: none; padding: 0;
}

.natrul-product-gallery__thumb.is-active {
        border-color: var(--wp--preset--color--warm);
}

.natrul-product-gallery__thumb img {
        width: 100%; height: 100%; object-fit: cover;
        object-position: center;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
}

/* ─── Product info ───────────────────────────────────────────────────────── */

.natrul-product-info { padding: 1.5rem var(--natrul-section-padding-inline) 0; }

.natrul-product-info__collection {
        font-size: 0.62rem; letter-spacing: 0.2em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted); margin-bottom: 0.5rem;
}

.natrul-product-info__collection a { text-decoration: none; color: inherit; }

.natrul-product-info__name {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.8rem, 6vw, 2.6rem);
        font-weight: 300; line-height: 1.1;
        color: var(--wp--preset--color--ink); margin-bottom: 0.6rem; letter-spacing: -0.01em;
}

.natrul-product-info__tagline {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; font-weight: 300;
        margin-bottom: 1.2rem; line-height: 1.6;
}
.natrul-product-info__tagline p {
        font-style: normal; color: var(--wp--preset--color--ink); margin-bottom: 0.6rem;
}
.natrul-product-info__tagline p:first-child {
        font-style: italic; color: var(--wp--preset--color--warm);
}

.natrul-product-info__price {
        display: flex; align-items: baseline; gap: 0.5rem;
        margin-bottom: 1.5rem; padding-bottom: 1.5rem;
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
}

.natrul-product-price__val,
.natrul-product-info__price .woocommerce-Price-amount {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 2rem; font-weight: 300; color: var(--wp--preset--color--ink);
}

.natrul-product-price__unit {
        font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
}

/* ─── Quick specs ────────────────────────────────────────────────────────── */

.natrul-quick-specs {
        display: grid; grid-template-columns: 1fr 1fr; gap: 0;
        margin-bottom: 1.5rem;
        border: 1px solid rgba(26, 22, 16, 0.08); border-radius: 0; overflow: hidden;
}

.natrul-spec-item {
        padding: 0.9rem 1rem;
        border-right: 1px solid rgba(26, 22, 16, 0.08);
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
}

.natrul-spec-item:nth-child(2n) { border-right: none; }
.natrul-spec-item:nth-last-child(-n+2) { border-bottom: none; }

.natrul-spec-item__label {
        font-size: 0.58rem; letter-spacing: 0.16em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted); margin-bottom: 0.2rem;
}

.natrul-spec-item__val { font-size: 0.82rem; font-weight: 500; color: var(--wp--preset--color--ink); }

/* ─── Calculator ─────────────────────────────────────────────────────────── */

.natrul-calculator {
        background: var(--wp--preset--color--surface-warm);
        border-radius: 0; padding: 1.4rem; margin-bottom: 1rem;
        border: 1px solid rgba(196, 146, 58, 0.2);
}

.natrul-calculator__label {
        font-size: 0.62rem; letter-spacing: 0.18em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted); margin-bottom: 1rem;
        display: flex; align-items: center; gap: 0.5rem;
}

.natrul-calculator__label::before {
        content: ''; width: 16px; height: 1px;
        background: var(--wp--preset--color--warm);
}

.natrul-calculator__inputs {
        display: grid; grid-template-columns: 1fr auto 1fr;
        gap: 0.5rem; align-items: center; margin-bottom: 1rem;
}

.natrul-calc-input {
        background: white; border: 1px solid rgba(26, 22, 16, 0.15);
        border-radius: 6px; padding: 0.7rem 0.8rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.85rem; color: var(--wp--preset--color--ink);
        outline: none; width: 100%; text-align: center;
        transition: border-color 0.2s;
}

.natrul-calc-input:focus { border-color: var(--wp--preset--color--warm); }

.natrul-calc-x {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.2rem; color: var(--wp--preset--color--ink-muted); text-align: center;
}

.natrul-calculator__result {
        display: flex; justify-content: space-between; align-items: center;
        padding-top: 0.8rem; border-top: 1px solid rgba(26, 22, 16, 0.08);
}

.natrul-calc-result__label { font-size: 0.72rem; color: var(--wp--preset--color--ink-muted); }

.natrul-calc-result__val {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.4rem; font-weight: 300; color: var(--wp--preset--color--ink);
}

/* ─── CTAs ───────────────────────────────────────────────────────────────── */

.natrul-product-ctas { display: flex; flex-direction: column; gap: 0.7rem; margin-bottom: 1.5rem; }

/* Hide default WC quantity input on product pages (calculator handles qty) */
.natrul-product-ctas .quantity,
.natrul-product .quantity { display: none !important; }

/* WooCommerce add to cart button */
.natrul-product-ctas .single_add_to_cart_button,
.natrul-product-ctas .button.alt {
        width: 100%; background: var(--wp--preset--color--primary); color: white;
        border: none; border-radius: 10px; padding: 1.1rem;
        font-family: var(--wp--preset--font-family--sans); font-size: 0.78rem; font-weight: 600;
        letter-spacing: 0.12em; text-transform: uppercase;
        cursor: pointer; transition: background 0.2s; text-decoration: none;
        display: block; text-align: center;
}

.natrul-product-ctas .single_add_to_cart_button:hover,
.natrul-product-ctas .button.alt:hover { background: #2d5a2d; }

.natrul-btn-sample {
        width: 100%; background: transparent; color: var(--wp--preset--color--ink);
        border: 1.5px solid rgba(26, 22, 16, 0.2); border-radius: 10px; padding: 1rem;
        font-family: var(--wp--preset--font-family--sans); font-size: 0.78rem; font-weight: 500;
        letter-spacing: 0.1em; text-transform: uppercase;
        cursor: pointer; transition: border-color 0.2s, background 0.2s;
        display: flex; align-items: center; justify-content: center; gap: 0.6rem;
        text-decoration: none;
}

.natrul-btn-sample:hover {
        border-color: var(--wp--preset--color--warm);
        background: var(--wp--preset--color--surface-warm);
}

.natrul-btn-sample__price {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; font-style: italic;
        color: var(--wp--preset--color--warm); font-weight: 300;
}

/* ─── Trust badges ───────────────────────────────────────────────────────── */

.natrul-trust-badges {
        display: grid; grid-template-columns: 1fr 1fr 1fr;
        gap: 1rem; margin-top: 2rem; margin-bottom: 2.5rem;
}

.natrul-trust-badge {
        display: flex; flex-direction: column; align-items: center;
        gap: 0.75rem; text-align: center;
        padding: 1.4rem 0.75rem;
        background: var(--wp--preset--color--surface-warm); border-radius: 0;
}

.natrul-trust-badge__icon { display: flex; align-items: center; justify-content: center; line-height: 1; }
.natrul-trust-badge__icon svg { width: 22px; height: 22px; stroke: var(--wp--preset--color--ink); stroke-width: 1.25; fill: none; stroke-linecap: round; stroke-linejoin: round; }

.natrul-trust-badge__text {
        font-size: 0.62rem; letter-spacing: 0.08em;
        color: var(--wp--preset--color--ink-muted); line-height: 1.3;
}

.natrul-trust-badge__text strong {
        color: var(--wp--preset--color--ink); font-weight: 500; display: block;
}

/* ─── Accordions ─────────────────────────────────────────────────────────── */

.natrul-product-accordions { border-top: 1px solid rgba(26, 22, 16, 0.08); }

.natrul-accordion-item { border-bottom: 1px solid rgba(26, 22, 16, 0.08); }

.natrul-accordion-btn {
        width: 100%; background: none; border: none;
        padding: 1.2rem 1.8rem;
        display: flex; justify-content: space-between; align-items: center;
        font-family: var(--wp--preset--font-family--sans); font-size: 0.72rem; font-weight: 500;
        letter-spacing: 0.14em; text-transform: uppercase;
        color: var(--wp--preset--color--ink); cursor: pointer; text-align: left;
}

.natrul-accordion-icon {
        width: 20px; height: 20px;
        display: flex; align-items: center; justify-content: center;
        flex-shrink: 0; font-size: 0.9rem; color: var(--wp--preset--color--ink-muted);
        transition: transform 0.3s;
}

.natrul-accordion-item.is-open .natrul-accordion-icon { transform: rotate(45deg); }

.natrul-accordion-body {
        padding: 0 var(--natrul-section-padding-inline) 1.5rem;
        font-size: 0.84rem; line-height: 1.8; color: var(--wp--preset--color--ink-muted);
}

.natrul-accordion-body[hidden] { display: none; }
.natrul-accordion-item.is-open .natrul-accordion-body { display: block; }

.natrul-accordion-body ul { padding-left: 1rem; display: flex; flex-direction: column; gap: 0.4rem; }
.natrul-accordion-body ul li { padding-left: 0.3rem; }

/* ─── Spec table ─────────────────────────────────────────────────────────── */

.natrul-spec-table { width: 100%; border-collapse: collapse; }

.natrul-spec-table td {
        padding: 0.5rem 0; font-size: 0.82rem;
        border-bottom: 1px solid rgba(26, 22, 16, 0.06);
}

.natrul-spec-table td:first-child { color: var(--wp--preset--color--ink-muted); width: 45%; }
.natrul-spec-table td:last-child { font-weight: 400; color: var(--wp--preset--color--ink); }

/* ─── Provenance ─────────────────────────────────────────────────────────── */

.natrul-provenance {
        background: var(--wp--preset--color--forest); color: white;
        padding: 3rem var(--natrul-section-padding-inline); margin-top: 2rem;
}

.natrul-provenance__eyebrow {
        font-size: 0.62rem; letter-spacing: 0.22em; text-transform: uppercase;
        opacity: 0.55; margin-bottom: 1.2rem;
}

.natrul-provenance__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.6rem; font-weight: 300; line-height: 1.25; margin-bottom: 1rem;
}

.natrul-provenance__title em { font-style: italic; }

.natrul-provenance__body { font-size: 0.84rem; line-height: 1.8; opacity: 0.8; margin-bottom: 1.5rem; }

.natrul-provenance__img {
        width: calc(100% + 2 * var(--natrul-section-padding-inline));
        margin-left: calc(-1 * var(--natrul-section-padding-inline));
        aspect-ratio: 16 / 9;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        /* background-image from single-product.php (natrul_resolved_image_url) */
        filter: brightness(0.65) saturate(1.2) hue-rotate(25deg);
        margin-top: 1.5rem;
}

/* ─── Related products ───────────────────────────────────────────────────── */

.natrul-related { padding: 3rem var(--natrul-section-padding-inline); }

.natrul-related__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.4rem; font-weight: 300; margin-bottom: 1.5rem;
}

.natrul-related__title em { font-style: italic; color: var(--wp--preset--color--warm); }

.natrul-related-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }

.natrul-related-card { text-decoration: none; }

.natrul-related-card__img {
        aspect-ratio: 1; border-radius: 0; overflow: hidden;
        background: var(--wp--preset--color--cream); margin-bottom: 0.6rem;
}

.natrul-related-card__img img {
        width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s;
}

.natrul-related-card:hover .natrul-related-card__img img { transform: scale(1.04); }

.natrul-related-card__name {
        font-size: 0.78rem; font-weight: 500;
        color: var(--wp--preset--color--ink); margin-bottom: 0.2rem;
}

.natrul-related-card__price,
.natrul-related-card__price .amount {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 0.95rem; font-weight: 300; color: var(--wp--preset--color--ink);
}


/* ═══════════════════════════════════════════════════════════════════════════
   QUESTIONS PAGE — Apple-style. Clean. Editorial. No icons.
   All classes use .nq- prefix (natrul questions).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── Page wrapper ───────────────────────────────────────────────────────── */

.nq { padding-top: 60px; }

/* ─── Questions page — warm theming ─────────────────────────────────────── */
body.natrul-questions-page {
        background: var(--wp--preset--color--surface-warm);
}

/* ─── Hero (dark) ────────────────────────────────────────────────────────── */

.nq-hero {
        padding: 6rem var(--natrul-section-padding-inline) 4rem;
        background: var(--wp--preset--color--dark);
        border-bottom: none;
}

.nq-hero__eyebrow {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.22em; text-transform: uppercase;
        color: rgba(255,255,255,0.4);
        margin-bottom: 1.2rem;
}

.nq-hero__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(3.5rem, 12vw, 7rem);
        font-weight: 300; line-height: 1;
        color: var(--wp--preset--color--white);
        letter-spacing: -0.025em;
        margin-bottom: 1.5rem;
}

.nq-hero__sub {
        font-size: var(--wp--preset--font-size--body);
        line-height: 1.7;
        color: rgba(255,255,255,0.5);
        max-width: 440px;
}

/* ─── Category tabs ──────────────────────────────────────────────────────── */

.nq-tabs {
        position: sticky; top: 60px; z-index: 50;
        background: var(--wp--preset--color--surface-warm);
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
}

.nq-tabs__inner {
        display: flex; overflow-x: auto; scrollbar-width: none;
        padding: 0 var(--natrul-section-padding-inline); gap: 0;
}

.nq-tabs__inner::-webkit-scrollbar { display: none; }

.nq-tab {
        background: none; border: none; border-bottom: 2px solid transparent;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.78rem; font-weight: 400;
        color: var(--wp--preset--color--ink-muted);
        letter-spacing: 0.04em;
        padding: 1.1rem 1.2rem 1rem;
        white-space: nowrap; flex-shrink: 0;
        cursor: pointer;
        transition: color 0.2s, border-color 0.2s;
}

.nq-tab:hover { color: var(--wp--preset--color--ink); }

.nq-tab.is-active {
        color: var(--wp--preset--color--ink);
        border-bottom-color: var(--wp--preset--color--ink);
        font-weight: 500;
}

/* ─── FAQ body ───────────────────────────────────────────────────────────── */

.nq-body {
        max-width: 780px; margin: 0 auto;
        padding: 0 var(--natrul-section-padding-inline) 6rem;
}

/* ─── Section ────────────────────────────────────────────────────────────── */

.nq-section {
        padding-top: 4rem;
        border-bottom: 1px solid rgba(26, 22, 16, 0.07);
        padding-bottom: 1rem;
}

.nq-section__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.5rem, 4vw, 2rem);
        font-weight: 300; line-height: 1.15;
        color: var(--wp--preset--color--ink);
        margin-bottom: 2rem;
        letter-spacing: -0.01em;
}

/* ─── FAQ item ───────────────────────────────────────────────────────────── */

.nq-item {
        border-top: 1px solid rgba(26, 22, 16, 0.07);
}

.nq-item__q {
        width: 100%; background: none; border: none;
        display: flex; align-items: center; justify-content: space-between; gap: 1.5rem;
        padding: 1.4rem 0;
        text-align: left; cursor: pointer;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.92rem; font-weight: 400; line-height: 1.5;
        color: var(--wp--preset--color--ink);
        transition: color 0.2s;
}

.nq-item__q:hover { color: var(--wp--preset--color--ink-muted); }

/* SVG chevron — pure CSS, no icon font */
.nq-item__chevron {
        flex-shrink: 0;
        width: 18px; height: 18px;
        position: relative;
}

.nq-item__chevron::before,
.nq-item__chevron::after {
        content: '';
        position: absolute;
        top: 50%; left: 50%;
        width: 8px; height: 1.5px;
        background: var(--wp--preset--color--ink-muted);
        border-radius: 2px;
        transition: transform 0.25s ease, opacity 0.25s ease;
}

.nq-item__chevron::before { transform: translate(-50%, -50%) rotate(45deg) translateX(-3px); }
.nq-item__chevron::after  { transform: translate(-50%, -50%) rotate(-45deg) translateX(3px); }

/* Open state — chevron becomes × */
.nq-item.is-open .nq-item__chevron::before { transform: translate(-50%, -50%) rotate(45deg); }
.nq-item.is-open .nq-item__chevron::after  { transform: translate(-50%, -50%) rotate(-45deg); }

.nq-item__a {
        padding: 0 0 1.8rem;
        font-size: 0.88rem; line-height: 1.85;
        color: var(--wp--preset--color--ink-muted);
        max-width: 600px;
}

.nq-item__a[hidden] { display: none; }

/* ─── Contact section ────────────────────────────────────────────────────── */

.nq-contact {
        background: var(--wp--preset--color--dark);
        padding: var(--natrul-section-padding) var(--natrul-section-padding-inline);
}

.nq-contact__inner {
        max-width: 900px; margin: 0 auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: 3rem;
}

@media (min-width: 720px) {
        .nq-contact__inner {
                grid-template-columns: 1fr 1fr;
                gap: 4rem;
                align-items: start;
        }
}

.nq-contact__eyebrow {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.22em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.3);
        margin-bottom: 1.5rem;
}

.nq-contact__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(2rem, 6vw, 3rem);
        font-weight: 300; line-height: 1.15;
        color: white; margin-bottom: 1rem;
        letter-spacing: -0.015em;
}

.nq-contact__title em { font-style: italic; color: var(--wp--preset--color--amber-bg); }

.nq-contact__sub {
        font-size: 0.85rem; line-height: 1.75;
        color: rgba(255, 255, 255, 0.45);
        margin-bottom: 2rem;
}

.nq-contact__direct {
        display: flex; flex-direction: column; gap: 0.6rem;
}

.nq-contact__direct a {
        font-size: 0.9rem; color: rgba(255, 255, 255, 0.6);
        text-decoration: none; transition: color 0.2s;
        letter-spacing: 0.01em;
}

.nq-contact__direct a:hover { color: white; }

/* ─── Contact form ───────────────────────────────────────────────────────── */

.nq-form { display: flex; flex-direction: column; gap: 1.2rem; }

.nq-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }

.nq-form__field { display: flex; flex-direction: column; gap: 0.4rem; }

.nq-form__field label {
        font-size: 0.62rem; letter-spacing: 0.18em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.3);
}

.nq-form__field input,
.nq-form__field textarea {
        background: rgba(255, 255, 255, 0.06);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 8px; padding: 0.9rem 1rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.85rem; font-weight: 300; color: white; outline: none;
        transition: border-color 0.2s, background 0.2s;
        -webkit-appearance: none;
}

.nq-form__field input::placeholder,
.nq-form__field textarea::placeholder { color: rgba(255, 255, 255, 0.2); }

.nq-form__field input:focus,
.nq-form__field textarea:focus {
        border-color: rgba(232, 168, 48, 0.45);
        background: rgba(255, 255, 255, 0.09);
}

.nq-form__field textarea { resize: vertical; min-height: 130px; }

.nq-form__submit {
        align-self: flex-start;
        background: white; color: var(--wp--preset--color--ink);
        border: none; border-radius: 8px;
        padding: 0.9rem 2rem;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.72rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase;
        cursor: pointer; transition: background 0.2s, color 0.2s;
}

.nq-form__submit:hover {
        background: var(--wp--preset--color--amber-bg);
        color: var(--wp--preset--color--ink);
}

/* ─── Sample strip ───────────────────────────────────────────────────────── */

.nq-sample {
        background: var(--wp--preset--color--surface-warm);
        border-top: 1px solid rgba(26, 22, 16, 0.07);
        padding: 3.5rem var(--natrul-section-padding-inline);
}

.nq-sample__inner {
        max-width: 900px; margin: 0 auto;
        display: flex; flex-direction: column; gap: 1.5rem;
}

@media (min-width: 600px) {
        .nq-sample__inner {
                flex-direction: row; align-items: center; justify-content: space-between;
        }
}

.nq-sample__title {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.3rem, 4vw, 1.7rem);
        font-weight: 300; line-height: 1.3; color: var(--wp--preset--color--ink);
}

.nq-sample__title em { font-style: italic; color: var(--wp--preset--color--primary); }

.nq-sample__sub {
        font-size: 0.82rem; line-height: 1.7;
        color: var(--wp--preset--color--ink-muted);
        margin-top: 0.5rem; max-width: 380px;
}

.nq-sample__btn {
        flex-shrink: 0;
        display: inline-block;
        background: var(--wp--preset--color--ink); color: white;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.72rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase;
        text-decoration: none; padding: 1rem 2rem; border-radius: 8px;
        transition: background 0.2s;
        white-space: nowrap;
}

.nq-sample__btn:hover { background: var(--wp--preset--color--primary); }


/* ═══════════════════════════════════════════════════════════════════════════
   FOOTER STYLES
   ═══════════════════════════════════════════════════════════════════════════ */

.natrul-footer {
        background: var(--wp--preset--color--dark);
        position: relative; overflow: hidden;
}

.natrul-footer__inner {
        padding: 3rem var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) 2rem; position: relative; z-index: 1;
}

.natrul-footer__brand-name {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(2.5rem, 8vw, 5rem);
        font-weight: 300; color: rgba(255, 255, 255, 0.18);
        letter-spacing: -0.02em; line-height: 1; margin-bottom: 0.5rem;
}

.natrul-footer__logo-img {
        display: block;
        max-height: clamp(36px, 8vw, 56px);
        width: auto;
        margin-bottom: 0.8rem;
        opacity: 0.7;
        filter: brightness(0) invert(1); /* white on the dark footer */
}

.natrul-footer__tagline {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1.1rem; font-style: italic; font-weight: 300;
        color: rgba(255, 255, 255, 0.5); margin-bottom: 3rem;
}

.natrul-footer__grid {
        display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-bottom: 2rem;
}

.natrul-footer__col h4 {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.25); margin-bottom: 1rem;
        font-family: var(--wp--preset--font-family--sans); font-weight: 400;
}

.natrul-footer__col ul { list-style: none; display: flex; flex-direction: column; gap: 0.6rem; }

.natrul-footer__col ul li a {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; font-weight: 300;
        color: rgba(255, 255, 255, 0.6); text-decoration: none;
        transition: color 0.2s;
}

.natrul-footer__col ul li a:hover { color: white; }

.natrul-footer__tagline-col {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; font-weight: 300; font-style: italic;
        color: rgba(255, 255, 255, 0.3); line-height: 1.5;
}

.natrul-footer__socials { margin-bottom: 2rem; }

.natrul-footer__socials h4 {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.25); margin-bottom: 0.8rem;
        font-family: var(--wp--preset--font-family--sans); font-weight: 400;
}

.natrul-footer__social-icons { display: flex; gap: 0.8rem; }

.natrul-footer__social-icons a {
        width: 36px; height: 36px; border-radius: 50%;
        border: 1px solid rgba(255, 255, 255, 0.12);
        display: flex; align-items: center; justify-content: center;
        font-size: 0.7rem; font-weight: 600;
        color: rgba(255, 255, 255, 0.5); text-decoration: none; text-transform: uppercase;
        transition: border-color 0.2s, color 0.2s;
}

.natrul-footer__social-icons a:hover {
        border-color: rgba(255, 255, 255, 0.3); color: white;
}

.natrul-footer__newsletter { margin-bottom: 3rem; }

.natrul-footer__newsletter h4 {
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.2em; text-transform: uppercase;
        color: rgba(255, 255, 255, 0.25); margin-bottom: 0.8rem;
        font-family: var(--wp--preset--font-family--sans); font-weight: 400;
}


.natrul-footer__bottom {
        border-top: 1px solid rgba(255, 255, 255, 0.06); padding-top: 1.5rem;
        font-size: 0.7rem; color: rgba(255, 255, 255, 0.2); line-height: 1.6;
}

.natrul-footer__bottom a { color: rgba(255, 255, 255, 0.3); text-decoration: none; }


/* ═══════════════════════════════════════════════════════════════════════════
   PRODUCT PAGE — top: desktop two-column + sticky gallery; bottom: full-width
   ═══════════════════════════════════════════════════════════════════════════ */

@media (min-width: 900px) {

        .natrul-product {
                padding-top: 0;
        }

        /* Gallery + info + accordions — restored split layout */
        .natrul-product__top {
                display: grid;
                grid-template-columns: 1fr 1fr;
                max-width: 1280px;
                margin-left: auto;
                margin-right: auto;
                align-items: start;
                padding-top: 80px;
        }

        .natrul-product-gallery {
                grid-column: 1;
                grid-row: 1 / 3;
                align-self: start;
                position: sticky;
                top: 80px;
                max-height: calc(100vh - 100px);
                overflow-y: hidden;
                overflow-x: hidden;
                display: flex;
                flex-direction: column;
        }

        .natrul-product-gallery__main {
                aspect-ratio: 1 / 1;
                flex-shrink: 0;
        }

        .natrul-product-gallery__thumbs {
                flex-shrink: 0;
        }

        .natrul-product-info {
                grid-column: 2;
                grid-row: 1;
                padding: 2rem 3rem 0;
        }

        .natrul-product-accordions {
                grid-column: 2;
                grid-row: 2;
                padding: 0 3rem 2rem;
                border-top: none;
        }

        .natrul-related-grid {
                grid-template-columns: repeat(4, 1fr);
        }

        .natrul-provenance__img {
                aspect-ratio: 21 / 6;
                max-height: 360px;
        }
}

/* Block / page content images — avoid soft scaling where possible */
.entry-content .wp-block-image img,
.entry-content .wp-block-post-featured-image img,
.wp-block-image img,
.wp-block-post-featured-image img {
        max-width: 100%;
        height: auto;
        border-radius: 0 !important;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
}

.wp-block-image figure,
.wp-block-image .wp-block-image__crop-area {
        border-radius: 0 !important;
}


/* ═══════════════════════════════════════════════════════════════════════════
   CART ICON IN NAV
   ═══════════════════════════════════════════════════════════════════════════ */

.natrul-nav__cart {
        position: relative;
        display: flex; align-items: center; justify-content: center;
        width: 38px; height: 38px; border-radius: 50%;
        color: white; text-decoration: none;
        transition: background 0.2s;
        flex-shrink: 0;
}

.natrul-nav__cart:hover { background: rgba(255, 255, 255, 0.1); }

.natrul-nav__cart svg { width: 20px; height: 20px; stroke: white; fill: none; }

.natrul-nav__cart-count {
        position: absolute; top: 2px; right: 2px;
        min-width: 16px; height: 16px;
        background: var(--wp--preset--color--warm);
        color: white; border-radius: 99px;
        font-size: 0.6rem; font-weight: 700; letter-spacing: 0;
        display: flex; align-items: center; justify-content: center;
        padding: 0 3px; line-height: 1;
        opacity: 0; transition: opacity 0.2s;
}

.natrul-nav__cart-count.has-items { opacity: 1; }


/* ═══════════════════════════════════════════════════════════════════════════
   PACK PRICE DISPLAY (product page)
   ═══════════════════════════════════════════════════════════════════════════ */

.natrul-pack-price-wrap {
        margin-top: -0.8rem; margin-bottom: 1.5rem;
        padding-bottom: 1.5rem;
        border-bottom: 1px solid rgba(26, 22, 16, 0.08);
        display: flex; align-items: baseline; gap: 0.6rem; flex-wrap: wrap;
}

.natrul-pack-price__val {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; font-weight: 300; color: var(--wp--preset--color--ink);
}

.natrul-pack-price__label {
        font-size: 0.62rem; letter-spacing: 0.1em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
}

.natrul-pack-price__note {
        font-size: 0.62rem; color: var(--wp--preset--color--ink-muted);
        width: 100%; margin-top: 0.15rem;
}


/* ═══════════════════════════════════════════════════════════════════════════
   MULTI-ROOM CALCULATOR (v5 additions)
   ═══════════════════════════════════════════════════════════════════════════ */

.natrul-calc-rooms { display: flex; flex-direction: column; gap: 0.6rem; margin-bottom: 0.8rem; }

.natrul-calc-room {
        display: grid; grid-template-columns: 1fr auto 1fr auto;
        gap: 0.4rem; align-items: center;
}

.natrul-calc-room__label {
        grid-column: 1 / -1;
        font-size: 0.58rem; letter-spacing: 0.14em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted); margin-bottom: 0.2rem;
}

.natrul-calc-room__remove {
        background: none; border: none; cursor: pointer; padding: 0 0.3rem;
        font-size: 1rem; line-height: 1; color: var(--wp--preset--color--ink-muted);
        opacity: 0.5; transition: opacity 0.2s;
}
.natrul-calc-room__remove:hover { opacity: 1; }

.natrul-calc-add-room {
        background: none; border: 1.5px dashed rgba(26, 22, 16, 0.2);
        border-radius: 6px; padding: 0.55rem; width: 100%;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.68rem; letter-spacing: 0.1em; text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted); cursor: pointer;
        transition: border-color 0.2s, color 0.2s; margin-bottom: 0.8rem;
        display: flex; align-items: center; justify-content: center; gap: 0.4rem;
}

.natrul-calc-add-room:hover {
        border-color: var(--wp--preset--color--warm);
        color: var(--wp--preset--color--warm);
}

.natrul-calculator__results {
        border-top: 1px solid rgba(26, 22, 16, 0.08);
        padding-top: 0.8rem;
        display: flex; flex-direction: column; gap: 0.5rem;
}

.natrul-calc-result-row {
        display: flex; justify-content: space-between; align-items: baseline;
}

.natrul-calc-result-row__label { font-size: 0.68rem; color: var(--wp--preset--color--ink-muted); }

.natrul-calc-result-row__val {
        font-family: var(--wp--preset--font-family--serif);
        font-size: 1rem; font-weight: 300; color: var(--wp--preset--color--ink);
}

.natrul-calc-result-row--total .natrul-calc-result-row__label {
        font-weight: 500; color: var(--wp--preset--color--ink);
        font-size: 0.72rem;
}

.natrul-calc-result-row--total .natrul-calc-result-row__val {
        font-size: 1.5rem; color: var(--wp--preset--color--ink);
}

.natrul-calc-pack-note {
        font-size: 0.6rem; color: var(--wp--preset--color--ink-muted);
        opacity: 0.7; text-align: right; margin-top: 0.2rem;
}


/* ═══════════════════════════════════════════════════════════════════════════
   CART & CHECKOUT TRUST SIGNALS
   ═══════════════════════════════════════════════════════════════════════════ */

.natrul-checkout-trust {
        display: flex; flex-direction: column; gap: 0.5rem;
        padding: 1.2rem 0; margin-top: 1rem;
        border-top: 1px solid rgba(26, 22, 16, 0.06);
}

.natrul-checkout-trust__item {
        display: flex; align-items: center; gap: 0.7rem;
        font-size: 0.72rem; color: var(--wp--preset--color--ink-muted);
        letter-spacing: 0.02em;
}

.natrul-checkout-trust__item svg {
        width: 14px; height: 14px; flex-shrink: 0;
        stroke: var(--wp--preset--color--primary); fill: none; stroke-width: 1.5;
}

/* ─── MANIFESTO fluid fixes ─────────────────────────────────────────────────
   Pin height is set on .natrul-manifesto__pin-wrap above (720vh).
   Remove the CSS transition — GSAP owns motion; transition was double-firing. */
.natrul-manifesto__sticky {
        transition: none;
}

/* Make sure WooCommerce notices don't fight our nav */
.woocommerce-store-notice,
.demo_store { display: none !important; }
/* ─── HERO desktop fix — button containment ─────────────────────────────── */
@media (min-width: 768px) {
    .natrul-hero__content {
        padding-top: 5rem;
    }
}


/* ============================================================
   TYPE SYSTEM — natrul
   Single source of truth. All sizing flows from theme.json tokens.
   Never add raw px/rem/clamp font-size values to pattern files.
   Change a size here and it updates everywhere.

   Token reference (theme.json fontSizes):
   --wp--preset--font-size--display  = clamp(3rem, 15vw, 9rem)
   --wp--preset--font-size--h1       = clamp(3rem, 5vw, 4rem)         48–64px
   --wp--preset--font-size--h2       = clamp(2rem, 3.5vw, 2.5rem)     32–40px
   --wp--preset--font-size--h3       = clamp(1.5rem, 2.5vw, 1.75rem)  24–28px
   --wp--preset--font-size--h4       = clamp(1.1rem, 1.5vw, 1.35rem)  17.6–21.6px
   --wp--preset--font-size--lead     = 1.15rem
   --wp--preset--font-size--body     = 1rem
   --wp--preset--font-size--small    = 0.875rem
   --wp--preset--font-size--micro    = 0.72rem
   ============================================================ */


/* ─── SEMANTIC TYPOGRAPHY CLASSES ────────────────────────────
   Used in all pattern .php files instead of inline styles.
   This is the only place font sizes are declared.            */

/* Eyebrow — micro label above headings */
.natrul-eyebrow {
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        font-weight: 400;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: var(--wp--preset--color--ink-muted);
        margin-bottom: 1.2rem;
        display: block;
}

.natrul-eyebrow--light { color: rgba(255, 255, 255, 0.5); }

.natrul-eyebrow--icon {
        display: flex;
        align-items: center;
        gap: 0.8rem;
        opacity: 0.65;
}

/* Section heading — H2 level, used for all primary section titles */
.natrul-section-heading {
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--h2);
        font-weight: 300;
        line-height: 1.15;
        letter-spacing: -0.015em;
        color: var(--wp--preset--color--ink);
        margin-bottom: 1.5rem;
}

.natrul-section-heading em { font-style: italic; }
.natrul-section-heading--light { color: white; }
.natrul-section-heading--center { text-align: center; }

/* Subsection heading — H3-equivalent, e.g. podcast title */
.natrul-subsection-heading {
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--h3);
        font-weight: 300;
        line-height: 1.2;
        color: var(--wp--preset--color--ink);
        margin-bottom: 0.8rem;
}

.natrul-subsection-heading--light { color: white; }

/* Section body — standard body copy within sections */
.natrul-section-body {
        font-size: var(--wp--preset--font-size--body);
        line-height: 1.65;
        color: var(--wp--preset--color--ink);
        margin-bottom: 1.5rem;
}

.natrul-section-body--light   { color: rgba(255, 255, 255, 0.9); }
.natrul-section-body--muted   { color: rgba(255, 255, 255, 0.5); }
.natrul-section-body--ink-muted { color: var(--wp--preset--color--ink-muted); }
.natrul-section-body--constrained { max-width: 560px; margin-left: auto; margin-right: auto; }
.natrul-section-body--center  { text-align: center; max-width: 480px; margin-left: auto; margin-right: auto; }

/* Vision statement — large serif quote, centred */
.natrul-vision-statement {
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--h3);
        font-weight: 300;
        line-height: 1.45;
        text-align: center;
        max-width: 620px;
        padding: 0;
        color: var(--wp--preset--color--ink);
        position: relative;
        z-index: 1;
        margin-bottom: 2rem;
}

/* Founder signature */
.natrul-founder-sig {
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--lead);
        font-style: italic;
        color: rgba(255, 255, 255, 0.7);
}

/* Testimonials headline — large display heading */
.natrul-testi-headline {
        font-family: var(--wp--preset--font-family--serif);
        font-size: var(--wp--preset--font-size--h2);
        font-weight: 300;
        line-height: 1.1;
        letter-spacing: -0.02em;
        color: var(--wp--preset--color--white);
        padding: 3rem 0 2rem;
}


/* ─── SECTION LAYOUT HELPERS ──────────────────────────────────
   Consistent inner padding for pattern content blocks.        */

.natrul-section-inner {
        padding: 0 var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
}

.natrul-section-inner--padded {
        padding: 4rem var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
}


/* ─── PRODUCT FEATURE (icon-list hero image) ─────────────────  */

.natrul-product-feature__bg {
        position: absolute;
        inset: 0;
        background-size: cover;
        background-position: center 40%;
        filter: brightness(0.6) saturate(0.9);
}

.natrul-product-feature__content {
        position: relative;
        z-index: 2;
        padding: 60px var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem));
        color: white;
        max-width: 520px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        height: 100%;
}

.natrul-product-feature__eyebrow {
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.6);
        margin-bottom: 0.75rem;
}

.natrul-product-feature__heading {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.85rem, 4vw, 2.85rem);
        font-weight: 300;
        line-height: 1.15;
        letter-spacing: -0.02em;
        color: white;
}

/* Amber em treatment on icon-list full-bleed image heading */
.natrul-icon-list-section ~ * h2 em,
.natrul-icon-list-section h2 em {
        color: var(--natrul-amber, #c4923a);
        font-style: italic;
}

.natrul-product-feature__heading em { font-style: italic; color: var(--natrul-amber, #c4923a); }


/* ─── USE CASE CARDS (distraction pattern) ───────────────────  */

.natrul-use-case-card { margin-bottom: 2.5rem; }
.natrul-use-case-card:last-child { margin-bottom: 1rem; }

.natrul-use-case-card__img {
        width: 100%;
        height: var(--natrul-feature-height);
        min-height: var(--natrul-feature-min-height);
        max-height: none;
        border-radius: 0;
        overflow: hidden;
        margin-bottom: 0;
}

.natrul-use-case-card__img img {
        width: 100%;
        height: 100%;
        min-height: 100%;
        object-fit: cover;
        transition: transform 0.6s ease;
}

.natrul-use-case-card:hover .natrul-use-case-card__img img {
        transform: scale(1.03);
}

/* use-case caption area */
.natrul-use-case-card h3 {
        font-family: var(--wp--preset--font-family--serif);
        font-size: clamp(1.1rem, 1.8vw, 1.4rem);
        font-weight: 300;
        font-style: italic;
        line-height: 1.3;
        letter-spacing: -0.01em;
        color: var(--wp--preset--color--ink-muted);
        margin-bottom: 0.4rem;
        padding-top: 1.25rem;
}

.natrul-use-case-card p {
        font-size: var(--wp--preset--font-size--small);
        color: var(--wp--preset--color--ink-muted);
        line-height: 1.7;
        padding-bottom: 1.5rem;
        border-bottom: 1px solid rgba(26, 22, 16, 0.1);
}

@media (min-width: 768px) {
        .natrul-use-case-stack {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 1.8rem;
                align-items: start;
        }
        .natrul-use-case-card,
        .natrul-use-case-card:last-child { margin-bottom: 0; }
}


/* ─── PODCAST BADGES (benefit pattern) ───────────────────────  */

.natrul-podcast-row {
        padding: 0 1.25rem 4rem;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
        max-width: 640px;
}

.natrul-podcast-badges {
        display: flex;
        gap: 1rem;
        flex-wrap: wrap;
        align-items: center;
}

.natrul-podcast-badge {
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-radius: 8px;
        padding: 0.6rem 1.1rem;
        text-decoration: none;
        transition: background 0.2s;
}

.natrul-podcast-badge:hover { background: rgba(255, 255, 255, 0.14); }

.natrul-podcast-badge__label {
        font-family: var(--wp--preset--font-family--sans);
        font-size: var(--wp--preset--font-size--micro);
        font-weight: 500;
        letter-spacing: 0.06em;
        color: rgba(255, 255, 255, 0.7);
}

.natrul-founder-block {
        padding: 4rem 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
}

.natrul-founder-icon {
        opacity: 0.3;
        margin-bottom: 2rem;
}


/* ─── VISION SECTION layout ───────────────────────────────────  */

.natrul-vision-section {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        position: relative;
        overflow: hidden;
        justify-content: center;
        padding-bottom: clamp(3rem, 6vw, 5rem);
}


/* ─── SECTION PADDING SYSTEM ─────────────────────────────────
   Applied to section wrappers that need consistent rhythm.
   Block groups with spacing set via theme.json spacing scale
   don't need this — only custom <section> wrappers do.       */

.natrul-icon-list-section {
        padding-top: clamp(0px, 0vw, 0px); /* image-led section — no top pad */
}


/* ─── HEADING → BODY GAP ──────────────────────────────────────
   Consistent breathing room between heading and following copy. */

.natrul-section-heading + .natrul-section-body,
.natrul-section-heading + p {
        margin-top: 0;
}

.natrul-section-body + .natrul-section-body {
        margin-top: 0;
}


/* ─── MANIFESTO / WARMTH — cinematic scale, not heading scale ─
   These are storytelling elements, not section headings.      */

.natrul-manifesto__line,
.natrul-warmth__line1,
.natrul-warmth__line2 {
        line-height: 1.2;
}


/* ─── OVERLAY LEGIBILITY ──────────────────────────────────────
   Headings over image/dark backgrounds: floor at H3 minimum.  */

.wp-block-cover h1,
.wp-block-cover h2,
.wp-block-cover h3 {
        font-size: max(var(--wp--preset--font-size--h2), 1.75rem);
}



/* ============================================================
   INLINE STYLE OVERRIDES
   Block patterns save HTML to the database. These rules beat
   the inline font-size/line-height values already in post content.
   DO NOT remove — required until pages are re-saved with the
   updated patterns.
   ============================================================ */

/* ─── All section h2 headings: lock to h2 token ─────────────── */

.is-style-natrul-forest h2,
.is-style-natrul-dark h2,
.is-style-natrul-dark-olive h2,
.wp-block-group.is-style-natrul-forest h2,
.wp-block-group.is-style-natrul-dark h2,
.wp-block-group.is-style-natrul-dark-olive h2 {
  font-size: var(--wp--preset--font-size--h2) !important;
  line-height: 1.15 !important;
  font-weight: 300 !important;
}

/* ─── Icon-list product feature h2 (cream background) ───────── */

.natrul-product-feature h2,
.natrul-hp-product-feature h2 {
  font-size: var(--wp--preset--font-size--h2) !important;
  line-height: 1.12 !important;
  font-weight: 300 !important;
}

/* ─── Hero h2 (kept intentionally larger — display scale) ────── */

.natrul-hero h2[data-animate="fade-up"] {
  font-size: var(--wp--preset--font-size--h1) !important;
  line-height: 1.1 !important;
}

/* ─── Section body copy — floor at body token ────────────────── */

.is-style-natrul-dark p[data-animate="fade-up"],
.is-style-natrul-dark-olive p[data-animate="fade-up"],
.is-style-natrul-forest p[data-animate="fade-up"] {
  font-size: var(--wp--preset--font-size--body) !important;
  line-height: 1.65 !important;
}

/* ─── Vision statement (peach section) ──────────────────────── */

p[data-animate="fade-up"][style*="clamp(1.3rem"] {
  font-size: var(--wp--preset--font-size--h3) !important;
  line-height: 1.45 !important;
}


/* ============================================================
   SECTION SPACING v4 — attribute-selector approach
   ---
   WordPress bakes padding directly into each <section> element's
   style attribute. Classes on outer block wrappers cannot reach
   these values. Attribute selectors + !important IS the only
   reliable CSS-only fix.

   Target map (live page):
     padding:4rem … → final-cta sections (64px — below floor)
     padding:5rem … → all other content sections (80px — fixed)
   Goal: uniform fluid 80–120px top/bottom across all sections.
   Image heights use --natrul-hero-height / --natrul-feature-height
   custom properties — belt-and-braces rules below keep them locked.
   ============================================================ */

/* ─── Content sections: fluid 80–120px padding ────────────────
   Targets every <section> with hardcoded 4rem or 5rem padding.
   !important beats the inline style attribute.               */

section[style*="padding:4rem"],
section[style*="padding: 4rem"] {
  padding-top:    var(--natrul-section-padding) !important;
  padding-bottom: var(--natrul-section-padding) !important;
}

section[style*="padding:5rem"],
section[style*="padding: 5rem"] {
  padding-top:    var(--natrul-section-padding) !important;
  padding-bottom: var(--natrul-section-padding) !important;
}

/* Demo / legacy <section> blocks — horizontal gutter (inline style wins without !important) */
section[style*="1.8rem"] {
  padding-left:  var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
  padding-right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
}

/* ─── Spacing preset CSS variable override ────────────────────
   Belt-and-braces: any block still using var(--wp--preset--spacing--50)
   as an inline style will also get the fluid value.          */

:root {
  --wp--preset--spacing--50: var(--natrul-section-padding) !important;
  --wp--preset--spacing--60: clamp(7rem, 10vw, 9rem)      !important;
}

/* ─── Image sections: lock heights ────────────────────────────
   All values driven by --natrul-* custom properties.
   Change once in :root (or via Natrul Settings) — done.      */

.natrul-hero {
  height:           var(--natrul-hero-height)     !important;
  min-height:       var(--natrul-hero-min-height) !important;
  display:          flex                          !important;
  flex-direction:   column                        !important;
  align-items:      stretch                       !important;
}

.natrul-forest__img,
.natrul-hp-fullbleed-img,
.natrul-hp-product-feature,
.natrul-peach__foot-img {
  height:     var(--natrul-feature-height)     !important;
  min-height: var(--natrul-feature-min-height) !important;
  max-height: none                             !important;
}

/* ─── Mobile: reduce section padding & feature heights ────────
   Custom properties swap to mobile values.                    */

@media (max-width: 767px) {
  :root {
    --natrul-section-padding:      var(--natrul-section-padding-mobile);
    --natrul-hero-min-height:      var(--natrul-hero-min-height-mobile);
    --natrul-feature-height:       var(--natrul-feature-height-mobile);
    --natrul-feature-min-height:   var(--natrul-feature-min-height-mobile);
  }

  /* 60vh here only — not .natrul-hp-product-feature (icon-list strip uses same image as hero) */
  .natrul-forest__img,
  .natrul-peach__foot-img,
  .natrul-hp-fullbleed-img,
  .natrul-use-case-stack > div > div:first-child,
  .natrul-hp-usecase-img,
  .natrul-use-case-card__img {
    height:     60vh !important;
    min-height: var(--natrul-feature-min-height) !important;
  }

  section[style*="padding:4rem"],
  section[style*="padding: 4rem"],
  section[style*="padding:5rem"],
  section[style*="padding: 5rem"] {
    padding-top:    var(--natrul-section-padding) !important;
    padding-bottom: var(--natrul-section-padding) !important;
  }
}


/* ─── ICON LIST FEATURE IMAGE — contentSize bleed fix ───────────────────────
   left:50% calculates against the constrained parent (760px contentSize).
   margin-left approach works regardless of parent width.                    */

body.natrul-homepage .natrul-hp-product-feature,
main.natrul-homepage .natrul-hp-product-feature {
        left: auto !important;
        transform: none !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        width: 100vw !important;
        max-width: none !important;
}

@supports (width: 100dvw) {
        body.natrul-homepage .natrul-hp-product-feature,
        main.natrul-homepage .natrul-hp-product-feature {
                width: 100dvw !important;
                margin-left: calc(50% - 50dvw) !important;
                margin-right: calc(50% - 50dvw) !important;
        }
}



/* ─── FOREST section inner padding — group padding is stripped, restore gutter */
/* Rule already fixed inline above at line 823 */

/* ─── PEACH section inner padding — group padding stripped, restore gutter ─── */
.wp-block-group.is-style-natrul-peach > .wp-block-html > div:not(.natrul-transition-line--peach-quote) {
        padding-left: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
        padding-right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
        padding-top: clamp(2rem, 4vw, 3rem) !important;
}

/* ─── ICON LIST feature image — viewport bleed fix ───────────────────────────
   The wp:html wrapper gets max-width:760px from contentSize and is left-aligned,
   so left:50% calculates from the wrong origin. Using margin-left calc approach
   scoped without body class so it fires regardless of template context.        */
.natrul-hp-product-feature {
        position: relative !important;
        left: auto !important;
        transform: none !important;
        width: 100vw !important;
        max-width: none !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
}

@supports (width: 100dvw) {
        .natrul-hp-product-feature {
                width: 100dvw !important;
                margin-left: calc(50% - 50dvw) !important;
        }
}


/* ─── ICON LIST — kill the 70.12% width WP applies to the group wrapper ─────
   WordPress core sets wp-block-group-is-layout-flow to contentSize width.
   Force the group containing the icon list section to full width so the
   bleed calculation has a 100vw origin to work from.                        */

.natrul-icon-list-section,
section.natrul-icon-list-section,
.wp-block-group:has(.natrul-icon-list-section),
.wp-block-group-is-layout-flow:has(.natrul-icon-list-section) {
        width: 100% !important;
        max-width: none !important;
        background: #faf8f4 !important;
}

/* Also force the direct wp-block-html wrapper */
.wp-block-html:has(.natrul-icon-list-section) {
        width: 100% !important;
        max-width: none !important;
}

/* Peach — inner div needs gutter since group padding is stripped.
   Target only the content wrapper, not the foot image div.       */
.wp-block-group.is-style-natrul-peach .wp-block-html > div:not(.natrul-peach__foot-img):not(.natrul-hp-fullbleed-img):not(.natrul-transition-line--peach-quote) {
        padding-left: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
        padding-right: var(--natrul-gutter, clamp(1.5rem, 5vw, 3rem)) !important;
        padding-top: clamp(2rem, 4vw, 3rem) !important;
}

/* Peach → surface quote band: extra vertical rhythm (not the icon-list gutter rule above) */
.wp-block-group.is-style-natrul-peach .wp-block-html > div.natrul-transition-line--peach-quote {
        padding-top: clamp(3.25rem, 8vw, 5rem) !important;
        padding-bottom: clamp(3.25rem, 8vw, 5rem) !important;
        padding-left: var(--natrul-section-padding-inline) !important;
        padding-right: var(--natrul-section-padding-inline) !important;
}


/* ─── ICON LIST image — now a standalone wp:html direct child of post-content
   No overflow:hidden parent. Simple full-width + bleed.                      */
body.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-hp-product-feature),
main.natrul-homepage .wp-block-post-content > .wp-block-html:has(.natrul-hp-product-feature) {
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: none !important;
        width: 100% !important;
}

/* Reset any previous bleed overrides on the image itself */
.natrul-hp-product-feature {
        position: relative !important;
        left: auto !important;
        transform: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: none !important;
}


/* ═══════════════════════════════════════════════════════════════════════════
   WHY CORK PAGE (.wc-)
   All classes use .wc- prefix (why cork).
   ═══════════════════════════════════════════════════════════════════════════ */

.wc-page { padding-top: 60px; }

/* ── Shared buttons ───────────────────────────────────────────────────── */
.wc-btn {
	display: inline-block;
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--micro);
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 0.85rem 2rem;
	border-radius: 8px;
	transition: background 0.3s, color 0.3s;
}
.wc-btn--primary {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--white);
}
.wc-btn--primary:hover { background: var(--wp--preset--color--ink-mid); color: var(--wp--preset--color--white); }
.wc-btn--ghost {
	background: transparent;
	color: var(--wp--preset--color--white);
	border: 1.5px solid rgba(255,255,255,0.75);
}
.wc-btn--ghost:hover { background: rgba(255,255,255,0.08); color: var(--wp--preset--color--white); }

/* ── Hero ─────────────────────────────────────────────────────────────── */
.wc-hero {
	min-height: 80vh;
	display: flex;
	align-items: center;
	padding: 0 clamp(1.5rem,5vw,3rem);
	background-color: var(--wp--preset--color--dark);
	background-size: cover;
	background-position: center;
	position: relative;
}
.wc-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(20,18,16,0.7) 0%, rgba(20,18,16,0.3) 60%, transparent 100%);
	pointer-events: none;
}
.wc-hero__inner { position: relative; z-index: 1; max-width: 720px; }
.wc-hero__eyebrow {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--micro);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.5);
	margin-bottom: 1rem;
}
.wc-hero__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(2.2rem, 4.5vw, 3.8rem);
	font-weight: 300;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--white);
	margin-bottom: 1.5rem;
}
.wc-hero__body {
	max-width: 560px;
}
.wc-hero__body p {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.75;
	color: rgba(255,255,255,0.65);
	margin-bottom: 0.75rem;
}
.wc-hero__cta {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	margin-top: 2rem;
}

/* ── Scroll Sections ──────────────────────────────────────────────────── */
.wc-scroll {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2rem,4vw,4rem);
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--surface);
	border-bottom: 1px solid rgba(26,22,16,0.06);
}
@media (min-width: 800px) {
	.wc-scroll { grid-template-columns: 1fr 1fr; align-items: center; }
	.wc-scroll--alt .wc-scroll__media { order: -1; }
}
.wc-scroll--dark {
	background: var(--wp--preset--color--dark);
}
.wc-scroll--dark .wc-scroll__eyebrow { color: rgba(255,255,255,0.4); }
.wc-scroll--dark .wc-scroll__title { color: var(--wp--preset--color--white); }
.wc-scroll--dark .wc-scroll__body p { color: rgba(255,255,255,0.6); }
.wc-scroll--dark .wc-scroll__emphasis { color: rgba(255,255,255,0.85); }

.wc-scroll__eyebrow {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--micro);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
	margin-bottom: 1rem;
}
.wc-scroll__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h2);
	font-weight: 300;
	line-height: 1.15;
	letter-spacing: -0.015em;
	color: var(--wp--preset--color--ink);
	margin-bottom: 1.5rem;
}
.wc-scroll__body p {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.75;
	color: var(--wp--preset--color--ink-muted);
	margin-bottom: 1rem;
}
.wc-scroll__emphasis {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--lead);
	font-style: italic;
	color: var(--natrul-amber, #c4923a);
	margin-top: 0.5rem;
}

/* Amber em treatment — applies to all inner page headings */
.wc-scroll__title em,
.wc-hero__title em,
.natrul-page-hero__title em,
.natrul-section-heading em,
.natrul-subsection-heading em {
	font-style: italic;
	color: var(--natrul-amber, #c4923a);
}
.wc-scroll__media {
	border-radius: 0;
	overflow: hidden;
}
.wc-scroll__media img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	display: block;
	object-fit: cover;
	filter: sepia(0.08) brightness(0.92);
}

/* ── Accordion ────────────────────────────────────────────────────────── */
.wc-accordion-section {
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--surface-warm);
}
.wc-accordion-section__inner { max-width: 760px; margin: 0 auto; }
.wc-accordion-section__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h2);
	font-weight: 300;
	line-height: 1.15;
	color: var(--wp--preset--color--ink);
	margin-bottom: 2.5rem;
}
.wc-acc { border-bottom: 1px solid rgba(26,22,16,0.1); }
.wc-acc__q {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 1.25rem 0;
	background: none;
	border: none;
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--lead);
	font-weight: 500;
	color: var(--wp--preset--color--ink);
	cursor: pointer;
	text-align: left;
	transition: color 0.2s;
}
.wc-acc__q:hover { color: var(--wp--preset--color--ink-muted); }

.wc-acc__chevron {
	position: relative;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}
.wc-acc__chevron::before,
.wc-acc__chevron::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 9px;
	height: 1.5px;
	background: currentColor;
	transition: transform 0.3s var(--wp--custom--motion--ease-out-expo);
}
.wc-acc__chevron::before { transform: translate(-50%, -50%) rotate(45deg) translateX(-3px); }
.wc-acc__chevron::after  { transform: translate(-50%, -50%) rotate(-45deg) translateX(3px); }

.wc-acc.is-open .wc-acc__chevron::before { transform: translate(-50%, -50%) rotate(45deg); }
.wc-acc.is-open .wc-acc__chevron::after  { transform: translate(-50%, -50%) rotate(-45deg); }

.wc-acc__a {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.75;
	color: var(--wp--preset--color--ink-muted);
	padding: 0 0 1.5rem;
	max-width: 640px;
}
.wc-acc__a[hidden] { display: none; }

/* ── Comparison Table ─────────────────────────────────────────────────── */
.wc-compare {
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--surface);
}
.wc-compare__inner { max-width: 1100px; margin: 0 auto; }
.wc-compare__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h2);
	font-weight: 300;
	line-height: 1.15;
	color: var(--wp--preset--color--ink);
	margin-bottom: 0.75rem;
}
.wc-compare__sub {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.75;
	color: var(--wp--preset--color--ink-muted);
	max-width: 640px;
	margin-bottom: 2.5rem;
}
.wc-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin-bottom: 2rem;
}
.wc-table {
	width: 100%;
	min-width: 700px;
	border-collapse: collapse;
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.6;
}
.wc-table thead {
	border-bottom: 2px solid var(--wp--preset--color--ink);
}
.wc-table th {
	text-align: left;
	padding: 0.75rem 1rem;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
	white-space: nowrap;
}
.wc-table td {
	padding: 0.75rem 1rem;
	color: var(--wp--preset--color--ink-muted);
	border-bottom: 1px solid rgba(26,22,16,0.08);
	vertical-align: top;
}
.wc-table__prop {
	font-weight: 500;
	color: var(--wp--preset--color--ink);
	white-space: nowrap;
	min-width: 140px;
}
.wc-table__cork {
	color: var(--wp--preset--color--ink);
	font-weight: 400;
}
.wc-compare__note {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.65;
	color: var(--wp--preset--color--ink-muted);
	font-style: italic;
	max-width: 640px;
}

/* ── Why Cork CTA ─────────────────────────────────────────────────────── */
.wc-cta {
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--dark);
	text-align: center;
}
.wc-cta__inner { max-width: 560px; margin: 0 auto; }
.wc-cta__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h2);
	font-weight: 300;
	line-height: 1.15;
	color: var(--wp--preset--color--white);
	margin-bottom: 0.75rem;
}
.wc-cta__sub {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	color: rgba(255,255,255,0.55);
	margin-bottom: 2rem;
}
.wc-cta__buttons {
	display: flex;
	gap: 1rem;
	justify-content: center;
	flex-wrap: wrap;
}


/* ═══════════════════════════════════════════════════════════════════════════
   OUR COMPANY PAGE (.co-)
   All classes use .co- prefix (company).
   ═══════════════════════════════════════════════════════════════════════════ */

.co-page { padding-top: 60px; }

/* ── Hero ─────────────────────────────────────────────────────────────── */
.co-hero {
	min-height: 80vh;
	display: flex;
	align-items: center;
	padding: 0 clamp(1.5rem,5vw,3rem);
	background-color: var(--wp--preset--color--dark);
	background-size: cover;
	background-position: center;
	position: relative;
}
.co-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(20,18,16,0.7) 0%, rgba(20,18,16,0.3) 60%, transparent 100%);
	pointer-events: none;
}
.co-hero__inner { position: relative; z-index: 1; max-width: 640px; }
.co-hero__eyebrow {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--micro);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.5);
	margin-bottom: 1rem;
}
.co-hero__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(2.2rem, 4.5vw, 3.8rem);
	font-weight: 300;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--white);
	margin-bottom: 1.25rem;
}
.co-hero__title em,
.co-founder__title em,
.co-cta__title em {
	font-style: italic;
	font-size: 0.85em;
	color: var(--natrul-amber, #c4923a);
}
.co-hero__sub {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h3);
	font-weight: 300;
	font-style: italic;
	line-height: 1.4;
	color: rgba(255,255,255,0.6);
}

/* ── Founder Story ────────────────────────────────────────────────────── */
.co-founder {
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--surface);
}
.co-founder__inner {
	max-width: 800px;
	margin: 0 auto;
}
.co-founder__inner--has-image {
	max-width: 1100px;
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2rem,4vw,4rem);
}
@media (min-width: 800px) {
	.co-founder__inner--has-image {
		grid-template-columns: 1.2fr 0.8fr;
		align-items: start;
	}
}
.co-founder__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h2);
	font-weight: 300;
	line-height: 1.15;
	letter-spacing: -0.015em;
	color: var(--wp--preset--color--ink);
	margin-bottom: 2rem;
}
.co-founder__body p {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.75;
	color: var(--wp--preset--color--ink-muted);
	margin-bottom: 1.25rem;
}
.co-founder__sig {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--lead);
	font-style: italic;
	color: var(--wp--preset--color--ink);
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(26,22,16,0.12);
}
.co-founder__image {
	border-radius: 0;
	overflow: hidden;
}
.co-founder__image img {
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 4;
	display: block;
	object-fit: cover;
	filter: sepia(0.08) brightness(0.92);
}
@media (min-width: 800px) {
	.co-founder__image { position: sticky; top: 100px; }
}

/* ── Podcast ──────────────────────────────────────────────────────────── */
.co-podcast {
	position: relative;
	padding: clamp(5rem,10vw,8rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--dark);
	overflow: hidden;
}

/* Large ambient background word */
.co-podcast__watermark {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(6rem, 22vw, 16rem);
	font-weight: 300;
	font-style: italic;
	letter-spacing: -0.02em;
	color: rgba(255, 255, 255, 0.04);
	white-space: nowrap;
	pointer-events: none;
	user-select: none;
	line-height: 1;
	z-index: 0;
}

.co-podcast__inner {
	position: relative;
	z-index: 1;
	max-width: 900px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2.5rem,5vw,4rem);
	align-items: center;
}

@media (min-width: 640px) {
	.co-podcast__inner { grid-template-columns: auto 1fr; }
}

.co-podcast__artwork {
	width: clamp(160px, 22vw, 220px);
	border-radius: 4px;
	overflow: hidden;
	box-shadow:
		0 0 0 1px rgba(196, 146, 58, 0.2),
		0 20px 60px rgba(0, 0, 0, 0.5),
		0 4px 16px rgba(0, 0, 0, 0.4);
	flex-shrink: 0;
}

.co-podcast__artwork img {
	width: 100%;
	height: auto;
	display: block;
}

.co-podcast__eyebrow {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--micro);
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--wp--preset--color--amber, #c4923a);
	margin-bottom: 0.6rem;
}

.co-podcast__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h3);
	font-weight: 300;
	color: var(--wp--preset--color--white);
	margin-bottom: 0.9rem;
	line-height: 1.15;
}

/* Amber italic on "Podcast" */
.co-podcast__title em {
	font-style: italic;
	color: var(--wp--preset--color--amber, #c4923a);
}

.co-podcast__body {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.5);
	margin-bottom: 2rem;
	max-width: 480px;
}

.co-podcast__platforms {
	display: flex;
	gap: 0.75rem;
	flex-wrap: wrap;
	margin-bottom: 2rem;
}

.co-podcast__platform {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-decoration: none;
	padding: 0.6rem 1.1rem;
	border-radius: 3px;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.co-podcast__platform--apple {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.75);
}

.co-podcast__platform--apple:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.25);
	color: var(--wp--preset--color--white);
}

.co-podcast__platform--spotify {
	background: rgba(196, 146, 58, 0.1);
	border: 1px solid rgba(196, 146, 58, 0.3);
	color: var(--wp--preset--color--amber, #c4923a);
}

.co-podcast__platform--spotify:hover {
	background: rgba(196, 146, 58, 0.18);
	border-color: rgba(196, 146, 58, 0.55);
	color: var(--wp--preset--color--amber, #c4923a);
}

.co-podcast__social {
	display: flex;
	gap: 1rem;
	align-items: center;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.co-social-link {
	color: rgba(255, 255, 255, 0.3);
	transition: color 0.2s;
	display: flex;
	align-items: center;
}

.co-social-link:hover { color: rgba(255, 255, 255, 0.75); }

/* ── Beliefs ──────────────────────────────────────────────────────────── */
.co-beliefs {
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--surface);
}
.co-beliefs__inner { max-width: 1100px; margin: 0 auto; }
.co-beliefs__eyebrow {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--micro);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
	margin-bottom: 2.5rem;
}
.co-beliefs__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2rem,4vw,3rem);
}
@media (min-width: 768px) {
	.co-beliefs__grid { grid-template-columns: repeat(3, 1fr); }
}
.co-belief__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h3);
	font-weight: 300;
	line-height: 1.2;
	color: var(--wp--preset--color--ink);
	margin-bottom: 0.75rem;
}
.co-belief__body {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.75;
	color: var(--wp--preset--color--ink-muted);
}

/* ── Company CTA ──────────────────────────────────────────────────────── */
.co-cta {
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--dark);
	text-align: center;
}
.co-cta__inner { max-width: 560px; margin: 0 auto; }
.co-cta__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--h2);
	font-weight: 300;
	line-height: 1.15;
	color: var(--wp--preset--color--white);
	margin-bottom: 2rem;
}
.co-cta__buttons {
	display: flex;
	gap: 1rem;
	justify-content: center;
	flex-wrap: wrap;
}

/* ── CTA sub ──────────────────────────────────────────────────────────── */
.co-cta__sub {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	color: rgba(255,255,255,0.5);
	margin-bottom: 2rem;
	margin-top: -1rem;
}

/* ── Body Sections ────────────────────────────────────────────────────── */
.co-body-section {
	padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--surface);
}
.co-body-section--alt {
	background: var(--wp--preset--color--white, #faf8f4);
}
.co-body-section__inner {
	max-width: 800px;
	margin: 0 auto;
}
.co-body-section__inner--has-image {
	max-width: 1100px;
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2.5rem,5vw,5rem);
	align-items: center;
}
@media (min-width: 800px) {
	.co-body-section__inner--has-image {
		grid-template-columns: 1fr 1fr;
	}
}
.co-body-section__eyebrow {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--micro);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
	margin-bottom: 1rem;
}
.co-body-section__title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--natrul-type-fact-title, clamp(2rem, 4vw, 3rem));
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0;
	color: var(--wp--preset--color--ink);
	margin: 0 0 1.35rem;
}
.co-body-section__title em {
	color: var(--natrul-amber, #c4923a);
	font-style: italic;
}
.co-body-section__body p {
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.8;
	color: var(--wp--preset--color--ink);
	margin-bottom: 1.25rem;
}
.co-body-section__body p:last-child { margin-bottom: 0; }
.co-body-section__media {
	border-radius: 0;
	overflow: hidden;
}
.co-body-section__media img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	aspect-ratio: 4 / 3;
	filter: sepia(0.06) brightness(0.94);
}

/* ── Pull Quotes ──────────────────────────────────────────────────────── */
.co-pull-quote {
	padding: clamp(3rem,6vw,5rem) clamp(1.5rem,5vw,3rem);
	background: var(--wp--preset--color--surface);
	text-align: center;
}
.co-pull-quote--dark {
	background: var(--wp--preset--color--dark);
}
.co-pull-quote__inner {
	max-width: 780px;
	margin: 0 auto;
}
.co-pull-quote__text {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(1.35rem, 2.8vw, 2.2rem);
	font-weight: 300;
	font-style: italic;
	line-height: 1.4;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--ink);
	margin: 0;
	padding: 0;
	border: none;
	position: relative;
}
.co-pull-quote--dark .co-pull-quote__text {
	color: var(--wp--preset--color--white);
}
.co-pull-quote__text::before {
	content: '';
	display: block;
	width: 32px;
	height: 1px;
	background: var(--natrul-amber, #c4923a);
	margin: 0 auto 1.5rem;
}

/* ── Scroll animation (both pages) ────────────────────────────────────── */
@media (prefers-reduced-motion: no-preference) {
	.wc-animate {
		opacity: 0;
		transform: translateY(32px);
		transition: opacity 0.7s var(--wp--custom--motion--ease-out-expo),
		            transform 0.7s var(--wp--custom--motion--ease-out-expo);
	}
	.wc-animate.is-visible {
		opacity: 1;
		transform: translateY(0);
	}
}


/* ── Articles — Archive & Single ─────────────────────────────────────────── */

/* Archive hero */
.natrul-articles-hero {
	background: var(--wp--preset--color--dark);
	padding: 7rem var(--natrul-section-padding-inline) 0;
	position: relative;
	overflow: hidden;
}

.natrul-articles-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(-55deg, transparent 0, transparent 60px, rgba(255,255,255,0.025) 60px, rgba(255,255,255,0.025) 62px);
	pointer-events: none;
}

.natrul-articles-hero__inner {
	max-width: 860px;
	position: relative;
	z-index: 1;
	padding-bottom: 4rem;
}

.natrul-articles-hero .natrul-eyebrow {
	color: rgba(255,255,255,0.3);
}

.natrul-articles-hero .natrul-page-hero__title {
	color: white;
}

.natrul-articles-hero .natrul-page-hero__sub {
	color: rgba(255,255,255,0.5);
	max-width: 420px;
}

.natrul-articles-hero__rule {
	height: 3px;
	background: var(--wp--preset--color--amber-bg);
	width: 60px;
	margin: 0;
}

/* Archive grid section */
.natrul-articles-grid-section {
	padding: var(--natrul-section-padding) var(--natrul-gutter) !important;
	max-width: 1200px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.natrul-articles-grid {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr);
	gap: clamp(2rem, 4vw, 3.5rem);
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

@media (max-width: 640px) {
	.natrul-articles-grid {
		grid-template-columns: 1fr;
	}
}

/* Article card */
.natrul-article-card {
	display: flex;
	flex-direction: column;
}

.natrul-article-card__link {
	text-decoration: none;
	color: inherit;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.natrul-article-card__image-wrap {
	overflow: hidden;
	background: var(--wp--preset--color--surface-warm);
	aspect-ratio: 3/2;
}

.natrul-article-card__image-wrap img,
.natrul-article-card__image-wrap .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.5s ease;
}

.natrul-article-card__link:hover .natrul-article-card__image-wrap img {
	transform: scale(1.03);
}

.natrul-article-card__body {
	padding: 1.5rem 0 0;
	flex: 1;
	display: flex;
	flex-direction: column;
}

.natrul-article-card__date,
.natrul-article-card__date .wp-block-post-date {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.68rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
	margin: 0 0 0.75rem;
}

.natrul-article-card__title,
.natrul-article-card__title .wp-block-post-title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	font-weight: 300;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--ink);
	margin: 0 0 0.75rem;
}

.natrul-article-card__excerpt,
.natrul-article-card__excerpt .wp-block-post-excerpt__excerpt {
	font-size: 0.9rem;
	line-height: 1.65;
	color: var(--wp--preset--color--ink-muted);
	margin: 0 0 1.25rem;
	flex: 1;
}

.natrul-article-card__cta {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.68rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--amber-bg);
	margin-top: auto;
	display: inline-block;
	border-bottom: 1px solid transparent;
	transition: border-color 0.2s;
}

.natrul-article-card__link:hover .natrul-article-card__cta {
	border-color: var(--wp--preset--color--amber-bg);
}

/* Small card variant — related articles */
.natrul-article-card--small .natrul-article-card__title,
.natrul-article-card--small .natrul-article-card__title .wp-block-post-title {
	font-size: clamp(1rem, 1.5vw, 1.2rem);
}

/* Pagination */
.natrul-articles-pagination {
	margin-top: clamp(3rem, 5vw, 5rem) !important;
	display: flex;
	justify-content: center;
	gap: 0.5rem;
}

.natrul-articles-pagination .wp-block-query-pagination-numbers a,
.natrul-articles-pagination .wp-block-query-pagination-previous a,
.natrul-articles-pagination .wp-block-query-pagination-next a {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.7rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
	text-decoration: none;
	padding: 0.5rem 0.9rem;
	border: 1px solid rgba(26,22,16,0.15);
	transition: border-color 0.2s, color 0.2s;
}

.natrul-articles-pagination .wp-block-query-pagination-numbers a:hover,
.natrul-articles-pagination .wp-block-query-pagination-previous a:hover,
.natrul-articles-pagination .wp-block-query-pagination-next a:hover {
	color: var(--wp--preset--color--ink);
	border-color: var(--wp--preset--color--amber-bg);
}

.natrul-articles-empty {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.85rem;
	color: var(--wp--preset--color--ink-muted);
	letter-spacing: 0.06em;
	text-align: center;
	padding: 4rem 0;
}

/* Social + podcast strip */
.natrul-articles-social {
	background: var(--wp--preset--color--surface-warm);
	border-top: 1px solid rgba(26,22,16,0.08);
	border-bottom: 1px solid rgba(26,22,16,0.08);
	padding: 3rem var(--natrul-gutter);
}

.natrul-articles-social--article {
	margin-top: var(--natrul-section-padding);
}

.natrul-articles-social__inner {
	max-width: 860px;
	margin: 0 auto;
	text-align: center;
}

.natrul-articles-social__links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem 1rem;
	margin-top: 0.75rem;
}

.natrul-articles-social__dot {
	color: rgba(26,22,16,0.2);
	font-size: 0.7rem;
}

.natrul-articles-social__link {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.68rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
	text-decoration: none;
	transition: color 0.2s;
}

.natrul-articles-social__link:hover {
	color: var(--wp--preset--color--ink);
}

.natrul-articles-social__link--podcast {
	color: var(--wp--preset--color--amber-bg);
}

.natrul-articles-social__link--podcast:hover {
	color: #a87830;
}

/* ── Single article ──────────────────────────────────────────────────────── */

.natrul-single-article__header {
	background: var(--wp--preset--color--dark);
	padding: 7rem var(--natrul-section-padding-inline) 0;
	position: relative;
	overflow: hidden;
}

.natrul-single-article__header::before {
	content: '';
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(-55deg, transparent 0, transparent 60px, rgba(255,255,255,0.025) 60px, rgba(255,255,255,0.025) 62px);
	pointer-events: none;
}

.natrul-single-article__header-inner {
	max-width: 760px;
	position: relative;
	z-index: 1;
	padding-bottom: 4rem;
}

.natrul-single-article__back {
	text-decoration: none;
	color: rgba(255,255,255,0.35);
	transition: color 0.2s;
}

.natrul-single-article__back:hover {
	color: rgba(255,255,255,0.7);
}

.natrul-single-article__title.wp-block-post-title,
.natrul-single-article__header .wp-block-post-title {
	font-family: var(--wp--preset--font-family--serif) !important;
	font-size: clamp(2.2rem, 6vw, 4rem) !important;
	font-weight: 300 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.02em !important;
	color: white !important;
	margin: 0.5rem 0 1.5rem !important;
}

.natrul-single-article__date,
.natrul-single-article__date .wp-block-post-date {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.68rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.3);
	margin: 0;
}

.natrul-single-article__rule {
	height: 3px;
	background: var(--wp--preset--color--amber-bg);
	width: 60px;
	margin-top: 0;
}

/* Featured image */
.natrul-single-article__image-wrap {
	width: 100%;
	max-height: 520px;
	overflow: hidden;
}

.natrul-single-article__image-wrap img,
.natrul-single-article__image-wrap .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	max-height: 520px;
}

/* Body — reading column */
.natrul-single-article__body {
	max-width: 720px;
	margin: 0 auto;
	padding: clamp(3rem, 6vw, 5rem) var(--natrul-gutter);
}

.natrul-single-article__content p {
	font-size: clamp(1rem, 1.5vw, 1.05rem);
	line-height: 1.85;
	color: var(--wp--preset--color--ink);
	margin-bottom: 1.6rem;
}

.natrul-single-article__content h2 {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(1.4rem, 3vw, 1.9rem);
	font-weight: 300;
	letter-spacing: -0.01em;
	line-height: 1.2;
	color: var(--wp--preset--color--ink);
	margin: 2.5rem 0 1rem;
}

.natrul-single-article__content h3 {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.72rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
	margin: 2rem 0 0.75rem;
}

.natrul-single-article__content a {
	color: var(--wp--preset--color--amber-bg);
	text-decoration: none;
	border-bottom: 1px solid rgba(196,146,58,0.4);
	transition: border-color 0.2s;
}

.natrul-single-article__content a:hover {
	border-color: var(--wp--preset--color--amber-bg);
}

.natrul-single-article__content blockquote {
	border-left: 2px solid var(--wp--preset--color--amber-bg);
	padding: 0.25rem 0 0.25rem 1.5rem;
	margin: 2rem 0;
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(1.1rem, 2vw, 1.3rem);
	font-weight: 300;
	font-style: italic;
	line-height: 1.5;
	color: var(--wp--preset--color--ink);
}

.natrul-single-article__content img {
	width: 100%;
	height: auto;
	display: block;
	margin: 2rem 0;
}

/* Related articles */
.natrul-related-articles {
	background: var(--wp--preset--color--surface-warm);
	border-top: 1px solid rgba(26,22,16,0.08);
	padding: var(--natrul-section-padding) var(--natrul-gutter);
}

.natrul-related-articles__inner {
	max-width: 1200px;
	margin: 0 auto;
}

.natrul-related-articles__grid,
.natrul-related-articles__list {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: clamp(1.5rem, 3vw, 2.5rem) !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 1.5rem 0 0 !important;
}

@media (max-width: 768px) {
	.natrul-related-articles__grid,
	.natrul-related-articles__list {
		grid-template-columns: 1fr !important;
	}
}

/* Dark features — quote above eyebrow */
.natrul-dark-features__quote {
	font-family: var(--wp--preset--font-family--serif);
	font-size: clamp(1.1rem, 2vw, 1.35rem);
	font-weight: 300;
	font-style: italic;
	color: rgba(255,255,255,0.5);
	text-align: center;
	margin: 0 auto clamp(2.5rem, 5vw, 4rem);
	max-width: 640px;
	line-height: 1.5;
}

/* Footer podcast section */
.natrul-footer__contact {
        list-style: none;
        margin: 0;
        padding: 0;
}

.natrul-footer__contact li {
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.8rem;
        font-weight: 300;
        color: rgba(255, 255, 255, 0.45) !important;
        line-height: 1.7;
        margin-bottom: 0.4rem;
}

.natrul-footer__contact a {
        color: rgba(255, 255, 255, 0.45) !important;
        text-decoration: none;
        font-family: var(--wp--preset--font-family--sans);
        font-size: 0.8rem;
        font-weight: 300;
}

.natrul-footer__contact a:hover {
        color: rgba(255, 255, 255, 0.75);
}

.natrul-footer__podcast {
	margin-bottom: 2rem;
}

.natrul-footer__podcast h4 {
	font-size: var(--wp--preset--font-size--micro);
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: rgba(255,255,255,0.3);
	margin-bottom: 0.6rem;
}

.natrul-footer__podcast-name {
	font-family: var(--wp--preset--font-family--serif);
	font-size: 1rem;
	font-weight: 300;
	font-style: italic;
	color: rgba(255,255,255,0.75);
	margin: 0 0 0.75rem;
}

.natrul-footer__podcast-links {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

.natrul-footer__podcast-link {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.68rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--amber-bg);
	text-decoration: none;
	border-bottom: 1px solid rgba(196,146,58,0.35);
	padding-bottom: 2px;
	transition: border-color 0.2s, color 0.2s;
}

.natrul-footer__podcast-link:hover {
	color: #d4a84a;
	border-color: rgba(196,146,58,0.8);
}

/* Footer podcast icon links */
.natrul-footer__podcast-links {
	display: flex;
	gap: 1rem;
	align-items: center;
	margin-top: 0.5rem;
}

.natrul-footer__podcast-link {
	color: rgba(255,255,255,0.4);
	text-decoration: none;
	border-bottom: none;
	display: flex;
	align-items: center;
	transition: color 0.2s;
}

.natrul-footer__podcast-link:hover {
	color: rgba(255,255,255,0.8);
}

/* Footer podcast — refined text treatment */
.natrul-footer__podcast-name {
	font-family: var(--wp--preset--font-family--serif) !important;
	font-size: clamp(1.1rem, 2vw, 1.4rem) !important;
	font-weight: 300 !important;
	font-style: italic !important;
	color: rgba(255,255,255,0.85) !important;
	margin: 0 0 0.6rem !important;
	line-height: 1.3 !important;
}

.natrul-footer__podcast-links {
	display: flex !important;
	align-items: center !important;
	gap: 0.6rem !important;
}

.natrul-footer__podcast-link {
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: 0.65rem !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--amber-bg) !important;
	text-decoration: none !important;
	border-bottom: none !important;
	transition: opacity 0.2s !important;
}

.natrul-footer__podcast-link:hover {
	opacity: 0.7 !important;
}

.natrul-footer__podcast-dot {
	color: rgba(255,255,255,0.2);
	font-size: 0.7rem;
}

/* -- CTA visibility hotfixes (2026-04-15) ----------------------------- */
body.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-final-cta),
main.natrul-homepage .wp-block-post-content > .wp-block-group:has(.natrul-final-cta) {
	background: var(--wp--preset--color--dark);
}

.natrul-final-cta {
	isolation: isolate;
	background:
		linear-gradient(180deg, rgba(20,18,16,0.88) 0%, rgba(20,18,16,0.96) 100%),
		radial-gradient(ellipse at bottom, rgba(196,146,58,0.34) 0%, rgba(196,146,58,0.16) 38%, rgba(20,18,16,0) 72%),
		var(--wp--preset--color--dark);
	border-top: 1px solid rgba(255,255,255,0.08);
	color: var(--wp--preset--color--white);
}

.natrul-final-cta__overlay {
	background: linear-gradient(180deg, rgba(20,18,16,0.26) 0%, rgba(20,18,16,0.58) 100%);
}

.natrul-final-cta__btn {
	box-shadow: 0 18px 40px rgba(0,0,0,0.18);
}

.wc-cta .wc-btn,
.co-cta .wc-btn,
.nct-close .wc-btn {
	border: 1.5px solid transparent;
}

.wc-cta .wc-btn--primary,
.co-cta .wc-btn--primary,

.wc-cta .wc-btn--ghost,
.co-cta .wc-btn--ghost,
.nct-close .wc-btn--ghost {
	background: rgba(255,255,255,0.03);
	border-color: rgba(255,255,255,0.62);
	color: var(--wp--preset--color--white);
}

.wc-cta .wc-btn--ghost:hover,
.co-cta .wc-btn--ghost:hover,
.nct-close .wc-btn--ghost:hover {
	background: rgba(255,255,255,0.08);
	border-color: rgba(255,255,255,0.85);
	color: var(--wp--preset--color--white);
}

/* -- CTA visibility hotfixes v2 (2026-04-15) --------------------------- */
.wc-hero .wc-btn,
.wc-cta .wc-btn,
.co-cta .wc-btn,
.nct-close .wc-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 54px !important;
	padding: 0.95rem 2rem !important;
	border-width: 1.5px !important;
	border-style: solid !important;
	text-decoration: none !important;
}

.wc-hero .wc-btn--ghost,
.wc-cta .wc-btn--ghost,
.co-cta .wc-btn--ghost,
.nct-close .wc-btn--ghost {
	background: rgba(255,255,255,0.04) !important;
	border-color: rgba(255,255,255,0.82) !important;
	color: #ffffff !important;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08) !important;
}

.wc-hero .wc-btn--ghost:hover,
.wc-cta .wc-btn--ghost:hover,
.co-cta .wc-btn--ghost:hover,
.nct-close .wc-btn--ghost:hover {
	background: rgba(255,255,255,0.1) !important;
	border-color: #ffffff !important;
	color: #ffffff !important;
}

.wc-hero .wc-btn--primary,
.wc-cta .wc-btn--primary,
.co-cta .wc-btn--primary,

/* ─── Order a Sample page ─────────────────────────────────────────── */

.natrul-sample-grid {
	list-style: none;
	margin: 0;
	padding: 2rem var(--wp--preset--spacing--40, 1.5rem) 3rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.5rem;
}

@media (min-width: 640px) {
	.natrul-sample-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 1024px) {
	.natrul-sample-grid {
		grid-template-columns: repeat(4, 1fr);
		padding-left: var(--wp--preset--spacing--50, 2.5rem);
		padding-right: var(--wp--preset--spacing--50, 2.5rem);
	}
}

.natrul-sample-card {
	display: flex;
	flex-direction: column;
}

.natrul-sample-card__img-wrap {
	flex: 1;
	text-decoration: none;
}

.natrul-sample-card__btn {
	display: block;
	width: 100%;
	margin-top: 0.6rem;
	padding: 0.65rem 1rem;
	background: var(--wp--preset--color--primary, #3a6b3a);
	color: #fff;
	font-family: inherit;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: opacity 0.2s;
}

.natrul-sample-card__btn:hover { opacity: 0.85; }
.natrul-sample-card__btn:disabled { opacity: 0.5; cursor: wait; }

/* Hero variant — slightly different eyebrow colour on sample page */
.natrul-sample-hero .natrul-shop-hero__eyebrow {
	color: var(--wp--preset--color--primary, #3a6b3a);
}

/* ─── Sample page hero ────────────────────────────────────────────── */
.natrul-sample-page-hero {
	position: relative;
	background: var(--wp--preset--color--surface, #faf8f4);
	padding: 5rem var(--wp--preset--spacing--40, 1.5rem) 3.5rem;
	text-align: center;
	overflow: hidden;
}

@media (min-width: 1024px) {
	.natrul-sample-page-hero {
		padding-left: var(--wp--preset--spacing--50, 2.5rem);
		padding-right: var(--wp--preset--spacing--50, 2.5rem);
	}
}

.natrul-sample-page-hero__eyebrow {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary, #3a6b3a);
	margin: 0 0 1rem;
}

.natrul-sample-page-hero__title {
	font-family: var(--wp--preset--font-family--cormorant-garamond, serif);
	font-size: clamp(2.4rem, 5vw, 4rem);
	font-weight: 500;
	line-height: 1.1;
	color: var(--wp--preset--color--ink, #1a1610);
	margin: 0 0 1.25rem;
}

.natrul-sample-page-hero__sub {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 1rem;
	line-height: 1.7;
	color: var(--wp--preset--color--ink-muted, #7a6a50);
	max-width: 560px;
	margin: 0 auto 2.5rem;
}

.natrul-sample-page-hero__stats {
	display: flex;
	justify-content: center;
	gap: 2.5rem;
	flex-wrap: wrap;
}

/* ─── Contact page (.natrul-cp) ───────────────────────────────────── */

.natrul-cp__hero {
	position: relative;
	background: var(--wp--preset--color--dark, #141210);
	padding: 5rem var(--wp--preset--spacing--40, 1.5rem) 4rem;
	text-align: center;
	overflow: hidden;
}

.natrul-cp__eyebrow {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--warm, #c4923a);
	margin: 0 0 1rem;
}

.natrul-cp__title {
	font-family: var(--wp--preset--font-family--cormorant-garamond, serif);
	font-size: clamp(2.4rem, 5vw, 4rem);
	font-weight: 500;
	line-height: 1.1;
	color: var(--wp--preset--color--surface, #faf8f4);
	margin: 0 0 1.25rem;
}

.natrul-cp__title em { font-style: italic; color: var(--wp--preset--color--warm, #c4923a); }

.natrul-cp__sub {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 1rem;
	line-height: 1.7;
	color: rgba(250,248,244,0.65);
	max-width: 520px;
	margin: 0 auto;
}

/* Body layout */
.natrul-cp__body {
	display: grid;
	grid-template-columns: 1fr;
	gap: 3rem;
	max-width: 1000px;
	margin: 0 auto;
	padding: 4rem var(--wp--preset--spacing--40, 1.5rem);
}

@media (min-width: 768px) {
	.natrul-cp__body {
		grid-template-columns: 1fr 1fr;
		gap: 5rem;
		padding: 5rem var(--wp--preset--spacing--50, 2.5rem);
	}
}

/* Column titles */
.natrul-cp__col-title {
	font-family: var(--wp--preset--font-family--cormorant-garamond, serif);
	font-size: 1.7rem;
	font-weight: 500;
	color: var(--wp--preset--color--ink, #1a1610);
	margin: 0 0 2.5rem;
}

/* Direct contact methods */
.natrul-cp__method {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	margin-bottom: 2rem;
}

.natrul-cp__method-icon {
	font-size: 1.3rem;
	flex-shrink: 0;
	margin-top: 0.15rem;
}

.natrul-cp__method-label {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted, #7a6a50);
	margin: 0 0 0.3rem;
}

.natrul-cp__method-value {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 1rem;
	font-weight: 500;
	color: var(--wp--preset--color--ink, #1a1610);
	text-decoration: none;
	display: block;
	margin-bottom: 0.3rem;
}

.natrul-cp__method-value--text {
	font-weight: 400;
	font-size: 0.9rem;
	color: var(--wp--preset--color--ink-muted, #7a6a50);
	line-height: 1.6;
}

a.natrul-cp__method-value:hover { text-decoration: underline; }

.natrul-cp__method-note {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.8rem;
	color: var(--wp--preset--color--ink-muted, #7a6a50);
	margin: 0;
	line-height: 1.5;
}

a.natrul-cp__method-note--link {
	display: inline-block;
	margin-top: 0.4rem;
	color: var(--wp--preset--color--primary, #3a6b3a);
	text-decoration: underline;
}

/* Form */
.natrul-cp__form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.natrul-cp__form-field {
	display: flex;
	flex-direction: column;
	margin-bottom: 1.25rem;
}

.natrul-cp__form-field:last-child { margin-bottom: 0; }

.natrul-cp__form-field label {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink, #1a1610);
	margin-bottom: 0.5rem;
}

.natrul-cp__optional {
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
	color: var(--wp--preset--color--ink-muted, #7a6a50);
	font-size: 0.9em;
}

.natrul-cp__form input,
.natrul-cp__form textarea {
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.95rem;
	color: var(--wp--preset--color--ink, #1a1610);
	background: var(--wp--preset--color--surface, #faf8f4);
	border: 1.5px solid #d8cfc4;
	border-radius: 8px;
	padding: 0.75rem 1rem;
	width: 100%;
	box-sizing: border-box;
	transition: border-color 0.2s;
	-webkit-appearance: none;
}

.natrul-cp__form input:focus,
.natrul-cp__form textarea:focus {
	outline: none;
	border-color: var(--wp--preset--color--primary, #3a6b3a);
}

.natrul-cp__form textarea { resize: vertical; min-height: 140px; }

.natrul-cp__submit {
	display: block;
	width: 100%;
	margin-top: 1.5rem;
	padding: 0.9rem 2rem;
	background: var(--wp--preset--color--primary, #3a6b3a);
	color: #fff;
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: opacity 0.2s;
}

.natrul-cp__submit:hover { opacity: 0.85; }

.natrul-cp__success {
	background: #eef6ee;
	border: 1.5px solid var(--wp--preset--color--primary, #3a6b3a);
	border-radius: 0;
	padding: 1.5rem;
	color: var(--wp--preset--color--primary, #3a6b3a);
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.95rem;
	line-height: 1.6;
}

.natrul-cp__form-error {
	background: #fdf0f0;
	border: 1.5px solid #c0392b;
	border-radius: 0;
	padding: 0.8rem 1rem;
	color: #c0392b;
	font-family: var(--wp--preset--font-family--jost, sans-serif);
	font-size: 0.875rem;
	margin-bottom: 1.25rem;
}

/* Email reveal shared style */
.natrul-email-reveal {
	cursor: pointer;
	color: var(--wp--preset--color--primary, #3a6b3a);
	border-bottom: 1px dashed currentColor;
	text-decoration: none;
}

/* ─── Order problem tab ───────────────────────────────────────────── */
.nq-tab--order {
	margin-left: auto;
	background: var(--wp--preset--color--primary, #3a6b3a);
	color: #fff;
	border-radius: 6px;
	padding: 0.4rem 1rem;
	text-decoration: none;
	font-weight: 600;
	white-space: nowrap;
	flex-shrink: 0;
}

.nq-tab--order:hover { opacity: 0.85; }

/* ─── Anti-scrape contact links ───────────────────────────────────── */
.natrul-anti-scrape { cursor: pointer; text-decoration: none; }
.natrul-anti-scrape:hover { text-decoration: underline; }
.nas-b { font-size: 0; }
.nas-b::after { content: '@'; font-size: 1rem; }

/* ─── Split sections (Rooted / Sanctuary / Memory) ───────────────── */
@media (max-width: 767px) {
	.natrul-split__inner {
		grid-template-columns: 1fr !important;
		gap: 0 !important;
	}
	.natrul-split__media {
		width: 100vw;
		position: relative;
		left: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
	}
	.natrul-split__media img {
		height: auto !important;
		aspect-ratio: 4 / 3;
		width: 100%;
		object-fit: cover;
	}
	.natrul-split__copy {
		padding-top: 2rem;
	}
	.natrul-split--sanctuary .natrul-split__media {
		order: -1;
	}
}

/* ─── Samples page ────────────────────────────────────────────────────────── */
.natrul-samples__grid li {
	margin: 0;
	padding: 0;
	float: none;
	width: auto;
}

@media (max-width: 1023px) {
	.natrul-samples__grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}

@media (max-width: 639px) {
	.natrul-samples__grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

.natrul-product-card--sample {
	display: flex;
	flex-direction: column;
}

.natrul-product-card--sample .natrul-product-card__link {
	display: flex;
	flex-direction: column;
	flex: 1;
	text-decoration: none;
	color: inherit;
}

.natrul-product-card--sample .natrul-product-card__link:hover .natrul-product-card__img img {
	transform: scale(1.03);
}

.natrul-sample-card-btn {
	display: block;
	margin: 1rem 0 0;
	padding: 0.75rem 1.25rem;
	background: var(--wp--preset--color--ink, #1a1610);
	border: 1px solid var(--wp--preset--color--ink, #1a1610);
	color: #fff;
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.72rem;
	font-weight: 400;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	text-align: center;
	text-decoration: none;
	transition: background 0.2s ease, border-color 0.2s ease;
	cursor: pointer;
}

.natrul-sample-card-btn:hover {
	background: var(--natrul-amber, #c4923a);
	border-color: var(--natrul-amber, #c4923a);
	color: #fff;
}



/* ============================================================
   NATRUL — My Account Pages
   ============================================================ */

/* Clear fixed nav on account pages */
body.woocommerce-account .wp-block-group > .entry-content,
body.woocommerce-account .wp-block-post-content,
body.woocommerce-account .woocommerce {
	padding-top: 5rem !important;
}

/* ── Main layout: nav left, content right ── */
.woocommerce-account .woocommerce-MyAccount-navigation ~ *,
.woocommerce-account .woocommerce {
	padding-top: 0;
}

/* Clear the fixed nav on account pages */
.woocommerce-account .entry-content,
.woocommerce-account .wp-block-post-content {
	padding-top: 5rem !important;
}

.woocommerce-account .woocommerce {
	display: grid !important;
	grid-template-columns: 200px 1fr !important;
	gap: 3rem !important;
	align-items: start !important;
	max-width: 1200px;
	margin: 3rem auto 6rem !important;
	padding: 0 clamp(1.5rem, 5vw, 3rem) !important;
	box-sizing: border-box;
}

/* Kill WooCommerce default floats */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	padding: 0 !important;
}

/* ── Nav ── */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-top: 1px solid rgba(26,22,16,0.1);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	border-bottom: 1px solid rgba(26,22,16,0.1);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: block !important;
	padding: 0.85rem 0 !important;
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: 0.72rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	color: var(--natrul-amber, #c4923a) !important;
	font-weight: 500 !important;
}

/* ── Content ── */
.woocommerce-account .woocommerce-MyAccount-content {
	min-width: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
	font-family: var(--wp--preset--font-family--serif) !important;
	font-size: 1.4rem !important;
	font-weight: 400 !important;
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	margin: 0 0 1.5rem !important;
}

.woocommerce-account .woocommerce-MyAccount-content > p {
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: 0.9rem !important;
	line-height: 1.7 !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
}

.woocommerce-account .woocommerce-MyAccount-content p a {
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	text-decoration: underline !important;
	text-underline-offset: 3px !important;
}

/* ── Info / no orders message ── */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
	background: transparent !important;
	border: none !important;
	border-left: 3px solid var(--natrul-amber, #c4923a) !important;
	padding: 1rem 1.25rem !important;
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: 0.85rem !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before {
	display: none !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button {
	float: none !important;
	display: inline-block !important;
	margin-left: 1rem !important;
	padding: 0.4rem 1rem !important;
	font-size: 0.65rem !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	background: transparent !important;
	border: 1px solid var(--wp--preset--color--midnight-soil, #1a1610) !important;
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	text-decoration: none !important;
}

/* ── Orders table ── */
.woocommerce-account .woocommerce-orders-table {
	width: 100% !important;
	border-collapse: collapse !important;
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: 0.85rem !important;
}

.woocommerce-account .woocommerce-orders-table thead th {
	font-size: 0.65rem !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	font-weight: 400 !important;
	padding: 0 1rem 0.75rem 0 !important;
	border-bottom: 1px solid rgba(26,22,16,0.15) !important;
	text-align: left !important;
}

.woocommerce-account .woocommerce-orders-table tbody td {
	padding: 1rem 1rem 1rem 0 !important;
	border-bottom: 1px solid rgba(26,22,16,0.08) !important;
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
}

.woocommerce-account .woocommerce-orders-table a.button {
	display: inline-block !important;
	padding: 0.5rem 1rem !important;
	font-size: 0.65rem !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	background: transparent !important;
	border: 1px solid var(--wp--preset--color--midnight-soil, #1a1610) !important;
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	text-decoration: none !important;
}

/* ── Addresses ── */
.woocommerce-account .woocommerce-Addresses {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 2rem !important;
}

.woocommerce-account .woocommerce-Address-title {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	border-bottom: 1px solid rgba(26,22,16,0.1) !important;
	padding-bottom: 0.75rem !important;
	margin-bottom: 1rem !important;
}

.woocommerce-account .woocommerce-Address-title h3 {
	font-family: var(--wp--preset--font-family--serif) !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	margin: 0 !important;
}

.woocommerce-account .woocommerce-Address-title .edit {
	font-size: 0.65rem !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	text-decoration: none !important;
}

.woocommerce-account address {
	font-style: normal !important;
	font-size: 0.85rem !important;
	line-height: 1.8 !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
}

/* ── Forms ── */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row,
.woocommerce-account .woocommerce-MyAccount-content p.form-row {
	margin: 0 0 1.25rem !important;
}

.woocommerce-account .woocommerce-MyAccount-content label {
	display: block !important;
	font-size: 0.65rem !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	margin-bottom: 0.4rem !important;
}

.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content select {
	width: 100% !important;
	padding: 0.75rem 1rem !important;
	font-size: 0.85rem !important;
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	background: #fff !important;
	border: 1px solid rgba(26,22,16,0.2) !important;
	border-radius: 0 !important;
	box-sizing: border-box !important;
	-webkit-appearance: none !important;
}

.woocommerce-account .woocommerce-MyAccount-content input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px #fff inset !important;
	-webkit-text-fill-color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
}

.woocommerce-account .woocommerce-MyAccount-content fieldset {
	border: 1px solid rgba(26,22,16,0.1) !important;
	padding: 1.5rem !important;
	margin: 2rem 0 1.5rem !important;
}

.woocommerce-account .woocommerce-MyAccount-content fieldset legend {
	font-size: 0.65rem !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	padding: 0 0.5rem !important;
}

.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"] {
	padding: 0.85rem 2rem !important;
	font-size: 0.72rem !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase !important;
	background: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	border: 1px solid var(--wp--preset--color--midnight-soil, #1a1610) !important;
	color: #fff !important;
	cursor: pointer !important;
	border-radius: 0 !important;
	-webkit-appearance: none !important;
}

.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:hover {
	background: var(--natrul-amber, #c4923a) !important;
	border-color: var(--natrul-amber, #c4923a) !important;
}

/* ── Login page ── */
.woocommerce-account:not(.logged-in) .woocommerce {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 4rem !important;
	max-width: 1000px !important;
	margin: 3rem auto 6rem !important;
	padding: 0 clamp(1.5rem, 5vw, 3rem) !important;
	box-sizing: border-box !important;
}

.woocommerce-account:not(.logged-in) .woocommerce-form-login,
.woocommerce-account:not(.logged-in) .woocommerce-form-register {
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

.woocommerce-account:not(.logged-in) h2 {
	font-family: var(--wp--preset--font-family--serif) !important;
	font-size: 1.4rem !important;
	font-weight: 400 !important;
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	margin: 0 0 1.75rem !important;
}

.woocommerce-account:not(.logged-in) label {
	display: block !important;
	font-size: 0.65rem !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	margin-bottom: 0.4rem !important;
}

.woocommerce-account:not(.logged-in) .woocommerce-form-row {
	margin: 0 0 1.25rem !important;
}

.woocommerce-account:not(.logged-in) input[type="text"],
.woocommerce-account:not(.logged-in) input[type="email"],
.woocommerce-account:not(.logged-in) input[type="password"] {
	width: 100% !important;
	padding: 0.75rem 1rem !important;
	font-size: 0.85rem !important;
	color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	background: #fff !important;
	border: 1px solid rgba(26,22,16,0.2) !important;
	border-radius: 0 !important;
	box-sizing: border-box !important;
	-webkit-appearance: none !important;
}

.woocommerce-account:not(.logged-in) input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px #fff inset !important;
	-webkit-text-fill-color: var(--wp--preset--color--midnight-soil, #1a1610) !important;
}

.woocommerce-account:not(.logged-in) button[type="submit"],
.woocommerce-account:not(.logged-in) input[type="submit"] {
	padding: 0.85rem 2rem !important;
	font-size: 0.72rem !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase !important;
	background: var(--wp--preset--color--midnight-soil, #1a1610) !important;
	border: 1px solid var(--wp--preset--color--midnight-soil, #1a1610) !important;
	color: #fff !important;
	cursor: pointer !important;
	border-radius: 0 !important;
	-webkit-appearance: none !important;
	margin-top: 0.5rem !important;
}

.woocommerce-account:not(.logged-in) button[type="submit"]:hover {
	background: var(--natrul-amber, #c4923a) !important;
	border-color: var(--natrul-amber, #c4923a) !important;
}

.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
	display: flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
	font-size: 0.75rem !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	margin-bottom: 1rem !important;
}

.woocommerce-account:not(.logged-in) .woocommerce-LostPassword,
.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text {
	font-size: 0.72rem !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
	line-height: 1.6 !important;
	margin-top: 0.75rem !important;
}

/* ============================================================
   TYPE CONSISTENCY v62
   Final cascade pass: collapse legacy one-off sizes into a
   smaller set of visual roles across content, shop, product,
   account, footer, forms, and calculator surfaces.
   ============================================================ */

:root {
        --natrul-type-label: var(--wp--preset--font-size--micro);
        --natrul-type-meta: var(--wp--preset--font-size--small);
        --natrul-type-kicker: var(--wp--preset--font-size--small);
        --natrul-type-body: var(--wp--preset--font-size--body);
        --natrul-type-lead: var(--wp--preset--font-size--lead);
        --natrul-type-card-title: var(--wp--preset--font-size--h4);
        --natrul-type-subtitle: var(--wp--preset--font-size--h3);
        --natrul-type-section-title: var(--wp--preset--font-size--h2);
        --natrul-type-fact-title: clamp(2rem, 4vw, 3rem);
        --natrul-type-page-title: var(--wp--preset--font-size--h1);
        --natrul-type-display: var(--wp--preset--font-size--display);
}

body {
        font-size: var(--natrul-type-body);
        line-height: 1.65;
}

h1, h2, h3, h4,
.natrul-section-heading,
.natrul-subsection-heading,
.natrul-product-feature__heading,
.natrul-shop-hero__title,
.natrul-product-info__name,
.natrul-articles-hero__title,
.natrul-samples-hero__title,
.natrul-sample-category-title,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account:not(.logged-in) h2 {
        font-family: var(--wp--preset--font-family--serif) !important;
        font-weight: 300 !important;
        letter-spacing: -0.01em !important;
}

h1,
.natrul-hero__headline,
.natrul-hero h2[data-animate="fade-up"],
.natrul-product-info__name,
.natrul-shop-hero__title,
.natrul-articles-hero__title,
.natrul-samples-hero__title {
        font-size: var(--natrul-type-page-title) !important;
        line-height: 1.1 !important;
}

h2,
.natrul-section-heading,
.natrul-product-feature__heading,
.natrul-hp-product-feature h2,
.natrul-product-feature h2,
.is-style-natrul-forest h2,
.is-style-natrul-dark h2,
.is-style-natrul-dark-olive h2,
.wp-block-group.is-style-natrul-forest h2,
.wp-block-group.is-style-natrul-dark h2,
.wp-block-group.is-style-natrul-dark-olive h2,
.natrul-shop-section-title,
.natrul-related h2,
.natrul-sample-category-title {
        font-size: var(--natrul-type-section-title) !important;
        line-height: 1.15 !important;
}

h3,
.natrul-subsection-heading,
.natrul-vision-statement,
.natrul-use-case-stack h3,
.natrul-use-case-card h3,
.natrul-product-card__name,
.natrul-shop-category-card__title,
.natrul-footer__podcast-name,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account:not(.logged-in) h2 {
        font-size: var(--natrul-type-subtitle) !important;
        line-height: 1.2 !important;
}

h4,
.natrul-icon-item__text h3,
.natrul-product-card__price,
.natrul-product-card__price .amount,
.natrul-stat__val,
.natrul-product-price__val,
.natrul-product-info__price .woocommerce-Price-amount,
.natrul-calc__result-value,
.woocommerce-account .woocommerce-Address-title h3 {
        font-size: var(--natrul-type-card-title) !important;
        line-height: 1.25 !important;
}

p,
.natrul-section-body,
.natrul-hero__sub,
.natrul-shop-hero__sub,
.natrul-product-info__tagline,
.natrul-product-info__tagline p,
.natrul-product-accordion__content,
.natrul-product-accordion__content p,
.natrul-footer__tagline,
.woocommerce-account .woocommerce-MyAccount-content > p,
.woocommerce-account address,
.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text {
        font-size: var(--natrul-type-body) !important;
        line-height: 1.65 !important;
}

.natrul-section-body--large,
.natrul-founder-sig,
.natrul-footer__tagline-col,
.natrul-product-info__lead,
.natrul-calc-result__value,
.natrul-calc__result-row--total .natrul-calc__result-value {
        font-size: var(--natrul-type-lead) !important;
        line-height: 1.45 !important;
}

.natrul-eyebrow,
.natrul-hero__eyebrow,
.natrul-product-feature__eyebrow,
.natrul-shop-hero__eyebrow,
.natrul-stat__label,
.natrul-filter-bar__count,
.natrul-shop-category-card__name,
.natrul-product-info__collection,
.natrul-product-price__unit,
.natrul-spec-item__label,
.natrul-calc__label,
.natrul-calc__input-wrap label,
.natrul-calc__divider-text,
.natrul-calc__sample-note,
.natrul-footer__brand-name,
.natrul-footer__col h4,
.natrul-footer__socials h4,
.natrul-footer__newsletter h4,
.natrul-footer__podcast h4,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a,
.woocommerce-account .woocommerce-orders-table thead th,
.woocommerce-account .woocommerce-MyAccount-content label,
.woocommerce-account .woocommerce-Address-title .edit,
.woocommerce-account .woocommerce-MyAccount-content fieldset legend,
.woocommerce-account:not(.logged-in) label {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: var(--natrul-type-label) !important;
        line-height: 1.25 !important;
        letter-spacing: 0.14em !important;
        text-transform: uppercase !important;
}

.natrul-product-card__meta,
.natrul-product-card__caption,
.natrul-calc__toggle-row label,
.natrul-calc__toggle-sub,
.natrul-calc__varnish-note,
.natrul-calc__result-label,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme,
.woocommerce-account:not(.logged-in) .woocommerce-LostPassword {
        font-size: var(--natrul-type-meta) !important;
        line-height: 1.55 !important;
}

.natrul-btn,
.wp-block-button__link,
.wp-block-button.is-style-natrul-forest .wp-block-button__link,
.natrul-product-ctas .single_add_to_cart_button,
.natrul-product-ctas .button.alt,
.natrul-btn-sample,
.natrul-sample-card-btn,
.natrul-calc__btn-add,
.natrul-calc__btn-sample,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-orders-table a.button,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"],
.woocommerce-account:not(.logged-in) button[type="submit"],
.woocommerce-account:not(.logged-in) input[type="submit"] {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: var(--natrul-type-label) !important;
        line-height: 1.2 !important;
        letter-spacing: 0.12em !important;
        text-transform: uppercase !important;
}

input,
select,
textarea,
.natrul-calc input[type="number"],
.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content select,
.woocommerce-account:not(.logged-in) input[type="text"],
.woocommerce-account:not(.logged-in) input[type="email"],
.woocommerce-account:not(.logged-in) input[type="password"] {
        font-family: var(--wp--preset--font-family--sans) !important;
        font-size: var(--natrul-type-body) !important;
        line-height: 1.4 !important;
}

.natrul-manifesto__line,
.natrul-warmth__line1,
.natrul-warmth__line2 {
        font-size: var(--natrul-type-section-title) !important;
        line-height: 1.15 !important;
}

@media (min-width: 768px) {
        .natrul-fact-panel__number,
        .natrul-fact-panel__number--quiet {
                font-size: var(--natrul-type-fact-title) !important;
                line-height: 1 !important;
                letter-spacing: -0.02em !important;
        }

        .natrul-split__copy h2,
        .natrul-split--rooted .natrul-split__copy h2,
        .natrul-split--memory .natrul-split__copy h2,
        .natrul-split--sanctuary .natrul-split__copy h2 {
                font-size: var(--natrul-type-section-title) !important;
                line-height: 1.15 !important;
        }

        .natrul-split__copy p:not([class]),
        .natrul-split--rooted .natrul-split__copy p:not(:first-child),
        .natrul-split--memory .natrul-split__copy p:not(:first-child),
        .natrul-split--sanctuary .natrul-split__copy p:not(:first-child),
        .natrul-fact-panel__body,
        .natrul-dark-features__stat-text,
        .natrul-dark-features__quote,
        .natrul-testi-card__body {
                font-size: var(--natrul-type-lead) !important;
                line-height: 1.6 !important;
        }

        .natrul-router-card__title,
        .natrul-glance-item__text,
        .natrul-warmth-static p[style*="font-size:var(--wp--preset--font-size--lead)"] {
                font-size: var(--natrul-type-card-title) !important;
                line-height: 1.35 !important;
        }

        .natrul-faq-question,
        .nq-question,
        .natrul-testi-card__name,
        .natrul-testi-card__role,
        .natrul-faq-answer,
        .nq-answer {
                font-size: var(--natrul-type-body) !important;
                line-height: 1.6 !important;
        }

        .natrul-fact-panel__section-label,
        .natrul-editorial-heading-block__eyebrow,
        .natrul-page-hero__eyebrow,
        .natrul-contact-section__eyebrow,
        .natrul-manifesto-static__eyebrow,
        .natrul-router-header .natrul-eyebrow,
        .natrul-split__copy > p:first-child,
        .natrul-warmth-static > div > p:first-child,
        .wc-hero__eyebrow,
        .wc-scroll__eyebrow,
        .co-hero__eyebrow,
        .co-podcast__eyebrow,
        .co-beliefs__eyebrow,
        .co-body-section__eyebrow {
                font-size: var(--natrul-type-kicker) !important;
                line-height: 1.25 !important;
                letter-spacing: 0.14em !important;
        }

        .natrul-fact-panel__label,
        .natrul-router-card__label,
        .natrul-glance-item p:first-child,
        .natrul-warmth-static [style*="font-size:var(--wp--preset--font-size--micro)"] {
                font-size: var(--natrul-type-label) !important;
                line-height: 1.25 !important;
                letter-spacing: 0.14em !important;
        }
}

@media (max-width: 767px) {
        .natrul-hero__headline,
        .natrul-hero h2[data-animate="fade-up"],
        .natrul-shop-hero__title,
        .natrul-product-info__name,
        .natrul-articles-hero__title,
        .natrul-samples-hero__title {
                font-size: var(--natrul-type-section-title) !important;
        }

        .natrul-vision-statement,
        .natrul-use-case-stack h3,
        .natrul-use-case-card h3,
        .woocommerce-account .woocommerce-MyAccount-content h2,
        .woocommerce-account .woocommerce-MyAccount-content h3,
        .woocommerce-account:not(.logged-in) h2 {
                font-size: var(--natrul-type-card-title) !important;
        }
}

/* ── Responsive ── */
@media (max-width: 768px) {
	.woocommerce-account .woocommerce {
		grid-template-columns: 1fr !important;
		gap: 2rem !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 0.25rem !important;
		border-top: none !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul li {
		border-bottom: none !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
		padding: 0.4rem 0.85rem !important;
		border: 1px solid rgba(26,22,16,0.15) !important;
	}

	.woocommerce-account .woocommerce-Addresses {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-account:not(.logged-in) .woocommerce {
		grid-template-columns: 1fr !important;
		gap: 3rem !important;
	}
}


/* ═══════════════════════════════════════════════════════════════════════════
   MOBILE PADDING — cart, checkout, single product
   page.html wraps content in wp-block-group with spacing|40 (3rem) on all
   sides. On mobile that needs reducing horizontally. Targeting the body
   class + wrapper is the reliable fix.
   ═══════════════════════════════════════════════════════════════════════════ */

@media (max-width: 767px) {

    /* Cart and checkout pages */
    .woocommerce-cart .wp-block-group,
    .woocommerce-checkout .wp-block-group {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

    /* Single product — info/accordion only; gallery stays edge-to-edge */
    .natrul-product-info,
    .natrul-product-accordions {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    /* Mini cart drawer — exact selector from dev tools */
    table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }
    .wc-block-mini-cart__contents,
    .wc-block-mini-cart__footer {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }

}


/* ─── Mini cart — hide WooCommerce "Cart" heading ───────────────────────── */
.wc-block-mini-cart__title,
.wc-block-mini-cart__drawer .wc-block-components-drawer__screen-controls-close ~ h2 {
    display: none !important;
}


/* Contract flooring page: align typography and editorial sections with the other inner pages. */
.nct-page {
    background: var(--wp--preset--color--cream);
    color: var(--wp--preset--color--ink);
    overflow-x: clip;
}

.nct-hero {
    min-height: 80vh;
    display: flex;
    align-items: center;
    padding: 0 clamp(1.5rem,5vw,3rem);
    background-color: var(--wp--preset--color--dark);
    background-size: cover;
    background-position: center;
    position: relative;
}

.nct-hero::after,
.nct-hero__overlay {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(20,18,16,0.7) 0%, rgba(20,18,16,0.3) 60%, transparent 100%);
    pointer-events: none;
}

.nct-hero__inner {
    position: relative;
    z-index: 1;
    max-width: 760px;
}

.nct-eyebrow {
    font-family: var(--wp--preset--font-family--sans);
    font-size: var(--wp--preset--font-size--micro);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.5);
    margin-bottom: 1rem;
}

.nct-hero__title {
    font-family: var(--wp--preset--font-family--serif);
    font-size: clamp(2.8rem, 6vw, 5rem);
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0;
    color: var(--wp--preset--color--white);
    margin: 0 0 1.5rem;
}

.nct-hero__title em {
    color: var(--natrul-amber, #c4923a);
    font-style: italic;
    font-size: 1em;
}

.nct-hero__intro {
    max-width: 560px;
    font-family: var(--wp--preset--font-family--sans);
    font-size: var(--wp--preset--font-size--body);
    line-height: 1.75;
    color: rgba(255,255,255,0.65);
    margin: 0;
}

.nct-section {
    padding: clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,3rem);
}

.nct-section__inner {
    max-width: 1100px;
    margin: 0 auto;
}

.nct-section__inner--narrow {
    max-width: 800px;
}

.nct-section__title {
    font-family: var(--wp--preset--font-family--serif);
    font-size: var(--natrul-type-fact-title, clamp(2rem, 4vw, 3rem));
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0;
    color: var(--wp--preset--color--ink);
    margin: 0 0 1.35rem;
}

.nct-section__title em,
.nct-close__title em {
    color: var(--natrul-amber, #c4923a);
    font-style: italic;
    font-size: 1em;
}

.nct-audience__body,
.nct-section p,
.nct-split__text p,
.nct-offer p,
.nct-close__body {
    font-family: var(--wp--preset--font-family--sans);
    font-size: var(--wp--preset--font-size--body);
    line-height: 1.8;
    color: var(--wp--preset--color--ink);
    margin: 0 0 1.25rem;
}

.nct-section p:last-child,
.nct-split__text p:last-child {
    margin-bottom: 0;
}

.nct-split {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(2.5rem,5vw,5rem);
    align-items: center;
    max-width: none;
}

.nct-split__text {
    max-width: 560px;
    width: 100%;
    justify-self: center;
}

.nct-split__image {
    position: relative;
    overflow: hidden;
    background: rgba(26,22,16,0.08);
    aspect-ratio: 4 / 3;
    min-height: 360px;
    align-self: stretch;
}

.nct-split__image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    filter: sepia(0.06) brightness(0.94);
}

.nct-split__image--placeholder {
    width: 100%;
    min-height: 360px;
    display: block;
}

.nct-pull {
    font-family: var(--wp--preset--font-family--serif) !important;
    font-size: var(--wp--preset--font-size--lead) !important;
    font-style: italic;
    line-height: 1.45 !important;
    color: var(--natrul-amber, #c4923a) !important;
    margin-top: 0.5rem !important;
}

.nct-split--dark,
.nct-offer--dark,
.nct-close {
    background: var(--wp--preset--color--dark);
}

.nct-split--mid {
    background: rgba(26,22,16,0.04);
}

.nct-split--dark .nct-section__title,
.nct-offer--dark .nct-section__title,
.nct-close__title {
    color: var(--wp--preset--color--white);
}

.nct-split--dark p,
.nct-offer--dark p,
.nct-close__body {
    color: rgba(255,255,255,0.6);
}

.nct-close {
    text-align: center;
}

.nct-close__inner {
    max-width: 560px;
}

.nct-close__title {
    font-family: var(--wp--preset--font-family--serif);
    font-size: var(--natrul-type-fact-title, clamp(2rem, 4vw, 3rem));
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0;
    margin: 0 0 0.75rem;
}

.nct-close__buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 0.75rem;
}

.nct-close__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 0.75rem;
}

@media (min-width: 800px) {
    .nct-split {
        grid-template-columns: 1fr 1fr;
    }

    .nct-split--image-left .nct-split__image {
        order: -1;
    }
}

@media (max-width: 767px) {
    .nct-hero__title {
        font-size: clamp(2.6rem, 12vw, 4rem);
    }

    .nct-section__title,
    .nct-close__title {
        font-size: clamp(2.1rem, 11vw, 3.2rem);
    }

    .nct-split__image {
        width: 100vw;
        max-width: none;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
}

/* Inner-page hero titles: one shared scale for non-home page heroes. */
.wc-hero__title,
.co-hero__title,
.nct-hero__title,
.nq-hero__title,
.natrul-shop-hero__title,
.natrul-articles-hero__title,
.natrul-samples-hero__title,
.natrul-sample-page-hero__title,
.natrul-cp__title,
.natrul-page-hero__title {
    font-family: var(--wp--preset--font-family--serif) !important;
    font-size: clamp(2.8rem, 6vw, 5rem) !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
}

.wc-hero__title em,
.wc-hero__title span,
.co-hero__title em,
.co-hero__title span,
.nct-hero__title em,
.nct-hero__title span,
.nq-hero__title em,
.nq-hero__title span,
.natrul-shop-hero__title em,
.natrul-shop-hero__title span,
.natrul-articles-hero__title em,
.natrul-articles-hero__title span,
.natrul-samples-hero__title em,
.natrul-samples-hero__title span,
.natrul-sample-page-hero__title em,
.natrul-sample-page-hero__title span,
.natrul-cp__title em,
.natrul-cp__title span,
.natrul-page-hero__title em,
.natrul-page-hero__title span {
    font-style: italic !important;
    font-size: 1em !important;
    color: var(--natrul-amber, #c4923a) !important;
}

/* Editorial inner-page headings: match the homepage fact-heading scale where the page is telling a story. */
.wc-scroll__title,
.wc-accordion-section__title,
.wc-compare__title,
.wc-cta__title,
.nct-section__title,
.nct-close__title,
.co-body-section__title,
.co-founder__title,
.co-podcast__title,
.co-cta__title,
.nq-contact__title {
    font-family: var(--wp--preset--font-family--serif) !important;
    font-size: var(--natrul-type-fact-title, clamp(2rem, 4vw, 3rem)) !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
}

.wc-scroll__title em,
.wc-accordion-section__title em,
.wc-compare__title em,
.wc-cta__title em,
.nct-section__title em,
.nct-close__title em,
.co-body-section__title em,
.co-founder__title em,
.co-podcast__title em,
.co-cta__title em,
.nq-contact__title em {
    color: var(--natrul-amber, #c4923a) !important;
    font-style: italic !important;
    font-size: 1em !important;
}

@media (max-width: 767px) {
    .wc-hero__title,
    .co-hero__title,
    .nct-hero__title,
    .nq-hero__title,
    .natrul-shop-hero__title,
    .natrul-articles-hero__title,
    .natrul-samples-hero__title,
    .natrul-sample-page-hero__title,
    .natrul-cp__title,
    .natrul-page-hero__title {
        font-size: clamp(2.6rem, 12vw, 4rem) !important;
    }

    .wc-scroll__title,
    .wc-accordion-section__title,
    .wc-compare__title,
    .wc-cta__title,
    .nct-section__title,
    .nct-close__title,
    .co-body-section__title,
    .co-founder__title,
    .co-podcast__title,
    .co-cta__title,
    .nq-contact__title {
        font-size: clamp(2.1rem, 11vw, 3.2rem) !important;
    }
}

/* About pages: keep hero typography aligned with the rest of the site. */
.wc-hero__inner,
.co-hero__inner,
.nct-hero__inner {
    max-width: 760px !important;
}

.wc-hero__title,
.co-hero__title,
.nct-hero__title {
    font-size: clamp(2.8rem, 6vw, 5rem) !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
}

.wc-hero__title em,
.co-hero__title em,
.nct-hero__title em {
    color: var(--natrul-amber, #c4923a) !important;
    font-style: italic !important;
    font-size: 1em !important;
}

@media (max-width: 767px) {
    .wc-hero__title,
    .co-hero__title,
    .nct-hero__title {
        font-size: clamp(2.6rem, 12vw, 4rem) !important;
    }

    .wc-scroll,
    .co-body-section,
    .nct-section {
        overflow-x: clip;
    }

    .wc-scroll__media,
    .co-body-section__media,
    .nct-split__image {
        width: 100vw;
        max-width: none;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }

    .wc-scroll__media img,
    .co-body-section__media img,
    .nct-split__image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

/* Button consistency + product trust polish (v85) */
:root {
        --natrul-button-min-height: 52px;
        --natrul-button-padding-x: 1.65rem;
}

.natrul-btn,
.wp-block-button__link,
.natrul-final-cta__btn,
.wc-btn,
.nct-close__btn,
.natrul-product-ctas .single_add_to_cart_button,
.natrul-product-ctas .button.alt,
.natrul-btn-sample,
.natrul-sample-card-btn,
.natrul-calc__btn-add,
.natrul-calc__btn-sample,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-orders-table a.button,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"],
.woocommerce-account:not(.logged-in) button[type="submit"],
.woocommerce-account:not(.logged-in) input[type="submit"] {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: var(--natrul-button-min-height) !important;
        padding: 0.88rem var(--natrul-button-padding-x) !important;
        border-radius: 8px !important;
        line-height: 1.2 !important;
        text-align: center !important;
        box-sizing: border-box !important;
}

.natrul-product-ctas .single_add_to_cart_button,
.natrul-product-ctas .button.alt,
.natrul-btn-sample,
.natrul-calc__btn-add,
.natrul-calc__btn-sample {
        width: 100% !important;
}

.natrul-final-cta__btn {
        width: 100% !important;
        max-width: 320px !important;
}

.natrul-trust-badges {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.85rem;
        margin-top: 1.8rem;
        margin-bottom: 2.35rem;
}

.natrul-trust-badge {
        position: relative;
        min-height: 132px;
        padding: 1.35rem 0.85rem;
        background: linear-gradient(180deg, rgba(255,255,255,0.72) 0%, rgba(250,248,244,0.94) 100%);
        border: 1px solid rgba(196,146,58,0.22);
        box-shadow: 0 18px 38px rgba(26,22,16,0.07), inset 0 1px 0 rgba(255,255,255,0.65);
}

.natrul-trust-badge::before {
        content: '';
        position: absolute;
        top: 0;
        left: 18%;
        right: 18%;
        height: 1px;
        background: linear-gradient(90deg, transparent, rgba(196,146,58,0.65), transparent);
}

.natrul-trust-badge__icon {
        width: 42px;
        height: 42px;
        border-radius: 999px;
        background: rgba(255,255,255,0.82);
        border: 1px solid rgba(196,146,58,0.28);
        box-shadow: 0 10px 22px rgba(26,22,16,0.06);
        color: var(--natrul-amber, #c4923a);
}

.natrul-trust-badge__icon svg {
        width: 20px;
        height: 20px;
        stroke: currentColor;
        stroke-width: 1.35;
}

.natrul-trust-badge__text {
        max-width: 9.5rem;
        margin: 0 auto;
        font-size: 0.6rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: rgba(26,22,16,0.58);
}

.natrul-trust-badge__text strong {
        margin-bottom: 0.18rem;
        font-weight: 600;
        letter-spacing: 0.11em;
        color: var(--wp--preset--color--ink);
}

@media (max-width: 520px) {
        :root { --natrul-button-padding-x: 1.25rem; }

        .natrul-trust-badges {
                grid-template-columns: 1fr;
                gap: 0.65rem;
        }

        .natrul-trust-badge {
                min-height: auto;
                flex-direction: row;
                justify-content: flex-start;
                text-align: left;
                padding: 1rem;
        }

        .natrul-trust-badge__text {
                max-width: none;
                margin: 0;
        }
}
/* Button width consistency refinement (v86) */
:root {
        --natrul-button-width: 220px;
}

.natrul-btn,
.wp-block-button__link,
.wc-btn,
.nct-close__btn,
.natrul-final-cta__btn,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-orders-table a.button,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"],
.woocommerce-account:not(.logged-in) button[type="submit"],
.woocommerce-account:not(.logged-in) input[type="submit"] {
        width: var(--natrul-button-width) !important;
        max-width: 100% !important;
        white-space: nowrap !important;
}

.natrul-hero__actions .natrul-btn,
.wc-hero .wc-btn,
.wc-cta .wc-btn,
.co-cta .wc-btn,
.nct-close .wc-btn {
        flex: 0 0 var(--natrul-button-width) !important;
}

.natrul-product-ctas .single_add_to_cart_button,
.natrul-product-ctas .button.alt,
.natrul-btn-sample,
.natrul-calc__btn-add,
.natrul-calc__btn-sample,
.natrul-sample-card-btn {
        width: 100% !important;
        max-width: none !important;
        white-space: normal !important;
}

@media (max-width: 420px) {
        :root { --natrul-button-width: 100%; }

        .natrul-hero__actions,
        .wc-hero__buttons,
        .wc-cta__buttons,
        .co-cta__buttons,
        .nct-close__buttons {
                width: 100%;
        }
}
/* Final button sizing fix (v87): loaded from style.css to avoid stale imported main.css caches. */
:root {
        --natrul-button-width: 280px;
        --natrul-button-min-height: 52px;
        --natrul-button-padding-x: 1.5rem;
}

.natrul-hero__actions {
        align-items: stretch !important;
}

.natrul-hero__actions .natrul-btn,
.natrul-btn,
.wp-block-button__link,
.wc-btn,
.nct-close__btn,
.natrul-final-cta__btn,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-orders-table a.button,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"],
.woocommerce-account:not(.logged-in) button[type="submit"],
.woocommerce-account:not(.logged-in) input[type="submit"] {
        width: var(--natrul-button-width) !important;
        min-width: var(--natrul-button-width) !important;
        max-width: var(--natrul-button-width) !important;
        min-height: var(--natrul-button-min-height) !important;
        padding: 0.88rem var(--natrul-button-padding-x) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 var(--natrul-button-width) !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
        text-align: center !important;
        line-height: 1.2 !important;
}

.natrul-product-ctas .single_add_to_cart_button,
.natrul-product-ctas .button.alt,
.natrul-btn-sample,
.natrul-calc__btn-add,
.natrul-calc__btn-sample,
.natrul-sample-card-btn {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: 1 1 auto !important;
        white-space: normal !important;
}

.natrul-nav__sample,
.natrul-nav__cta,
.natrul-mobile-menu__sample,
.natrul-nav__burger,
.natrul-mobile-menu__close,
.natrul-accordion-btn {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        flex-basis: auto !important;
}

.natrul-nav__sample {
        min-height: 44px !important;
        padding: 0.68rem 1.15rem !important;
}

@media (max-width: 520px) {
        :root { --natrul-button-width: 100%; }

        .natrul-hero__actions,
        .wc-hero__buttons,
        .wc-cta__buttons,
        .co-cta__buttons,
        .nct-close__buttons {
                width: 100%;
        }

        .natrul-hero__actions .natrul-btn,
        .natrul-btn,
        .wp-block-button__link,
        .wc-btn,
        .nct-close__btn,
        .natrul-final-cta__btn {
                min-width: 0 !important;
                max-width: 100% !important;
        }
}
/* Final CTA column-flex correction (v88). */
.natrul-final-cta .natrul-final-cta__btn,
.wp-block-group .natrul-final-cta .natrul-final-cta__btn {
        width: var(--natrul-button-width, 280px) !important;
        min-width: var(--natrul-button-width, 280px) !important;
        max-width: var(--natrul-button-width, 280px) !important;
        min-height: var(--natrul-button-min-height, 52px) !important;
        height: auto !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        padding: 0.88rem var(--natrul-button-padding-x, 1.5rem) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
}

@media (max-width: 520px) {
        .natrul-final-cta .natrul-final-cta__btn,
        .wp-block-group .natrul-final-cta .natrul-final-cta__btn {
                width: 100% !important;
                min-width: 0 !important;
                max-width: 100% !important;
        }
}
/* ============================================================
   Homepage considered hero/nav refinement (v91)
   Aligns the homepage with the quieter hospitality page rhythm.
   ============================================================ */
@media (min-width: 900px) {
        body.home .natrul-nav,
        body.natrul-homepage .natrul-nav {
                min-height: 92px !important;
                padding-left: clamp(3rem, 4.8vw, 4.75rem) !important;
                padding-right: clamp(3rem, 4.8vw, 4.75rem) !important;
        }

        body.home .natrul-nav__desktop,
        body.natrul-homepage .natrul-nav__desktop {
                gap: clamp(1.5rem, 2.35vw, 2.75rem) !important;
        }

        body.home .natrul-nav__desktop a,
        body.natrul-homepage .natrul-nav__desktop a,
        body.home .natrul-nav__sample,
        body.natrul-homepage .natrul-nav__sample {
                font-size: 0.72rem !important;
                font-weight: 500 !important;
                letter-spacing: 0.14em !important;
        }

        body.home .natrul-nav__desktop a:nth-last-child(-n+2),
        body.natrul-homepage .natrul-nav__desktop a:nth-last-child(-n+2) {
                display: none !important;
        }

        body.home .natrul-nav__sample,
        body.natrul-homepage .natrul-nav__sample {
                padding: 0.88rem 1.65rem !important;
                border-width: 1px !important;
                min-height: 48px !important;
        }

        body.home .natrul-nav__logo-img,
        body.natrul-homepage .natrul-nav__logo-img {
                max-width: 190px !important;
                max-height: 42px !important;
        }

        body.home .natrul-hero,
        body.natrul-homepage .natrul-hero {
                min-height: 760px !important;
        }

        body.home .natrul-hero__bg,
        body.natrul-homepage .natrul-hero__bg {
                background-position: center center !important;
        }

        body.home .natrul-hero__bg::after,
        body.natrul-homepage .natrul-hero__bg::after {
                background:
                        linear-gradient(to right, rgba(10,8,5,0.76) 0%, rgba(10,8,5,0.44) 38%, rgba(10,8,5,0.08) 100%),
                        linear-gradient(to bottom, rgba(10,8,5,0.28) 0%, transparent 32%),
                        linear-gradient(to top, rgba(10,8,5,0.46) 0%, transparent 28%) !important;
        }

        body.home .natrul-hero__content,
        body.natrul-homepage .natrul-hero__content {
                max-width: none !important;
                padding: clamp(10rem, 17vh, 13rem) clamp(4rem, 5.8vw, 6rem) 3rem !important;
        }

        body.home .natrul-hero__eyebrow,
        body.home .natrul-hero__headline,
        body.home .natrul-hero__sub,
        body.home .natrul-hero__actions,
        body.natrul-homepage .natrul-hero__eyebrow,
        body.natrul-homepage .natrul-hero__headline,
        body.natrul-homepage .natrul-hero__sub,
        body.natrul-homepage .natrul-hero__actions {
                max-width: 760px !important;
        }

        body.home .natrul-hero__eyebrow,
        body.natrul-homepage .natrul-hero__eyebrow {
                margin-bottom: 1.55rem !important;
                color: rgba(250,248,244,0.58) !important;
        }

        body.home .natrul-hero__headline,
        body.natrul-homepage .natrul-hero__headline {
                font-size: clamp(4.4rem, 6.2vw, 7rem) !important;
                line-height: 0.98 !important;
                letter-spacing: 0 !important;
                margin-bottom: 1.8rem !important;
                max-width: 820px !important;
        }

        body.home .natrul-hero__sub,
        body.natrul-homepage .natrul-hero__sub {
                max-width: 650px !important;
                font-size: clamp(1.05rem, 1.25vw, 1.3rem) !important;
                line-height: 1.75 !important;
                color: rgba(250,248,244,0.76) !important;
                margin-bottom: 0 !important;
        }

        body.home .natrul-hero__actions,
        body.natrul-homepage .natrul-hero__actions {
                margin-top: 2.25rem !important;
                gap: 1.35rem !important;
                align-items: center !important;
        }

        body.home .natrul-hero__actions .natrul-btn,
        body.natrul-homepage .natrul-hero__actions .natrul-btn {
                width: auto !important;
                min-width: 0 !important;
                max-width: none !important;
                min-height: 0 !important;
                flex: 0 0 auto !important;
                padding: 0.95rem 1.55rem !important;
                box-shadow: none !important;
                border-radius: 0 !important;
                font-size: 0.7rem !important;
                font-weight: 500 !important;
                letter-spacing: 0.16em !important;
        }

        body.home .natrul-hero__actions .natrul-btn--light,
        body.natrul-homepage .natrul-hero__actions .natrul-btn--light {
                background: rgba(250,248,244,0.96) !important;
                color: #1a1610 !important;
        }

        body.home .natrul-hero__actions .natrul-btn--ghost-light,
        body.natrul-homepage .natrul-hero__actions .natrul-btn--ghost-light {
                border: 1px solid rgba(250,248,244,0.62) !important;
                color: rgba(250,248,244,0.9) !important;
        }
}

@media (max-width: 899px) {
        body.home .natrul-hero__actions .natrul-btn,
        body.natrul-homepage .natrul-hero__actions .natrul-btn {
                width: auto !important;
                min-width: min(100%, 18rem) !important;
                flex-basis: auto !important;
                box-shadow: none !important;
                border-radius: 0 !important;
        }
}
/* ============================================================
   Homepage section composition refinement (v91.1)
   Brings the homepage fact/warmth sections closer to the hotel page.
   ============================================================ */
@media (min-width: 900px) {
        body.home .natrul-warmth-static,
        body.natrul-homepage .natrul-warmth-static {
                min-height: 760px !important;
                justify-content: flex-end !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(1),
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(1) {
                background:
                        linear-gradient(to right, rgba(8,7,5,0.72) 0%, rgba(8,7,5,0.34) 42%, rgba(8,7,5,0.12) 100%),
                        linear-gradient(to bottom, rgba(8,7,5,0.18) 0%, rgba(8,7,5,0.76) 100%) !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(2),
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(2) {
                padding-left: clamp(4rem, 5.8vw, 6rem) !important;
                padding-bottom: 0 !important;
                max-width: 1120px !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(2) h2,
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(2) h2 {
                font-size: clamp(3.6rem, 4.8vw, 5.45rem) !important;
                font-weight: 300 !important;
                line-height: 1.02 !important;
                letter-spacing: 0 !important;
                max-width: 680px !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(2) p:first-child,
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(2) p:first-child {
                color: rgba(250,248,244,0.58) !important;
                letter-spacing: 0.22em !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(2) p:last-child,
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(2) p:last-child {
                color: rgba(250,248,244,0.68) !important;
                max-width: 610px !important;
                font-size: clamp(1rem, 1.1vw, 1.16rem) !important;
                line-height: 1.85 !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(3),
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(3) {
                min-height: 168px !important;
                border-top: 1px solid rgba(250,248,244,0.2) !important;
                border-bottom: 1px solid rgba(250,248,244,0.2) !important;
                background: rgba(8,7,5,0.28) !important;
                backdrop-filter: blur(1px) !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(3) > div,
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(3) > div {
                padding: 2.15rem clamp(2rem, 3.5vw, 3.75rem) !important;
                border-color: rgba(250,248,244,0.18) !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(3) p:first-child,
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(3) p:first-child {
                color: rgba(250,248,244,0.56) !important;
                letter-spacing: 0.28em !important;
                margin-bottom: 1.55rem !important;
        }

        body.home .natrul-warmth-static > div:nth-of-type(3) p:last-child,
        body.natrul-homepage .natrul-warmth-static > div:nth-of-type(3) p:last-child {
                font-size: clamp(1.05rem, 1.35vw, 1.38rem) !important;
                font-weight: 300 !important;
                line-height: 1.45 !important;
                color: rgba(250,248,244,0.9) !important;
        }

        body.home .natrul-fact-panels,
        body.natrul-homepage .natrul-fact-panels {
                display: grid !important;
                grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
                min-height: 430px !important;
                background: #0b0a08 !important;
                border-top: 1px solid rgba(250,248,244,0.13) !important;
                border-bottom: 1px solid rgba(250,248,244,0.13) !important;
        }

        body.home .natrul-fact-panel,
        body.natrul-homepage .natrul-fact-panel {
                min-height: 430px !important;
                padding: clamp(3.1rem, 4vw, 4.25rem) clamp(2rem, 3.7vw, 4.5rem) !important;
                justify-content: center !important;
                border-right: 1px solid rgba(250,248,244,0.14) !important;
        }

        body.home .natrul-fact-panel:last-child,
        body.natrul-homepage .natrul-fact-panel:last-child {
                border-right: 0 !important;
        }

        body.home .natrul-fact-panel__overlay,
        body.natrul-homepage .natrul-fact-panel__overlay {
                background:
                        linear-gradient(to right, rgba(7,6,5,0.8), rgba(7,6,5,0.58)),
                        rgba(0,0,0,0.34) !important;
                mix-blend-mode: normal !important;
        }

        body.home .natrul-fact-panel__content,
        body.natrul-homepage .natrul-fact-panel__content {
                max-width: 520px !important;
        }

        body.home .natrul-fact-panel__section-label,
        body.natrul-homepage .natrul-fact-panel__section-label {
                color: rgba(250,248,244,0.5) !important;
                letter-spacing: 0.26em !important;
                margin-bottom: 2.2rem !important;
        }

        body.home .natrul-fact-panel__label,
        body.natrul-homepage .natrul-fact-panel__label {
                color: rgba(196,146,58,0.9) !important;
                opacity: 1 !important;
                letter-spacing: 0.24em !important;
                margin-bottom: 1.2rem !important;
        }

        body.home .natrul-fact-panel__number,
        body.natrul-homepage .natrul-fact-panel__number {
                font-size: clamp(3rem, 4vw, 4.7rem) !important;
                font-weight: 300 !important;
                line-height: 1.02 !important;
                letter-spacing: 0 !important;
                color: rgba(250,248,244,0.95) !important;
                margin-bottom: 1rem !important;
        }

        body.home .natrul-fact-panel__number em,
        body.natrul-homepage .natrul-fact-panel__number em {
                color: rgba(196,146,58,0.96) !important;
        }

        body.home .natrul-fact-panel__rule,
        body.natrul-homepage .natrul-fact-panel__rule {
                width: 38px !important;
                margin-bottom: 1.55rem !important;
                opacity: 0.88 !important;
        }

        body.home .natrul-fact-panel__body,
        body.natrul-homepage .natrul-fact-panel__body {
                font-family: var(--wp--preset--font-family--sans) !important;
                font-size: clamp(0.98rem, 1.05vw, 1.12rem) !important;
                font-weight: 300 !important;
                line-height: 1.9 !important;
                color: rgba(250,248,244,0.66) !important;
                max-width: 470px !important;
        }

        body.home .natrul-fact-panel__bg-ghost,
        body.natrul-homepage .natrul-fact-panel__bg-ghost {
                font-size: clamp(8rem, 14vw, 16rem) !important;
                right: -0.12em !important;
                bottom: -0.22em !important;
                color: rgba(250,248,244,0.025) !important;
        }
}

@media (max-width: 899px) {
        body.home .natrul-fact-panel__body,
        body.natrul-homepage .natrul-fact-panel__body {
                font-family: var(--wp--preset--font-family--sans) !important;
                color: rgba(250,248,244,0.7) !important;
        }
}


/* Variable products: catalogue and installation selector */
.natrul-shop .natrul-product-card__price,
.natrul-shop .natrul-product-card__price .amount {
	display: none !important;
}

.natrul-product-card__name {
	margin-bottom: 0 !important;
}

.natrul-variation-toggle {
	margin: 0 0 1.25rem;
	padding-bottom: 1.25rem;
	border-bottom: 1px solid rgba(26, 22, 16, 0.08);
}

.natrul-variation-toggle__label {
	margin: 0 0 0.65rem;
	font-size: 0.62rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-muted);
}

.natrul-variation-toggle__options {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.natrul-variation-toggle__button {
	min-height: 48px;
	padding: 0.8rem 1rem;
	border: 1px solid rgba(26, 22, 16, 0.16);
	border-radius: 8px;
	background: #fff;
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--sans);
	font-size: 0.72rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.natrul-variation-toggle__button:hover,
.natrul-variation-toggle__button.is-active {
	background: var(--wp--preset--color--ink);
	border-color: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--surface);
}

@media (max-width: 639px) {
	.natrul-variation-toggle__options {
		grid-template-columns: 1fr;
	}
}


/* v104g product critical fixes: variable buttons and visible gallery */
.single-product .natrul-product-gallery {
	position: sticky !important;
	top: 80px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	min-height: min(760px, calc(100vh - 100px)) !important;
	overflow: visible !important;
}

.single-product .natrul-product-gallery__main {
	display: block !important;
	width: 100% !important;
	aspect-ratio: 1 / 1 !important;
	min-height: 520px !important;
	background: var(--wp--preset--color--cream, #f0e8d8) !important;
	overflow: hidden !important;
}

.single-product .natrul-product-gallery__main img,
.single-product .natrul-product-gallery__main-img,
.single-product #natrulMainImg {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: inherit !important;
	object-fit: cover !important;
	object-position: center !important;
	opacity: 1;
}

.single-product .natrul-product-gallery__thumbs {
	display: flex !important;
	gap: 0.75rem !important;
	padding: 1rem 0 0 !important;
	overflow-x: auto !important;
}

.single-product .natrul-product-gallery__thumb {
	appearance: none !important;
	-webkit-appearance: none !important;
	width: 72px !important;
	height: 72px !important;
	padding: 0 !important;
	border: 1px solid rgba(26,22,16,.14) !important;
	background: transparent !important;
	border-radius: 0 !important;
	overflow: hidden !important;
}

.single-product .natrul-product-gallery__thumb.is-active {
	border-color: var(--wp--preset--color--amber, #c4923a) !important;
	box-shadow: 0 0 0 1px var(--wp--preset--color--amber, #c4923a) !important;
}

.single-product .natrul-variation-toggle {
	margin: 0 0 1.4rem !important;
	padding: 0 0 1.4rem !important;
	border-bottom: 1px solid rgba(26,22,16,.08) !important;
}

.single-product .natrul-variation-toggle__label {
	margin: 0 0 .7rem !important;
	font-family: var(--wp--preset--font-family--sans, Jost, sans-serif) !important;
	font-size: .68rem !important;
	font-weight: 500 !important;
	letter-spacing: .18em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
}

.single-product .natrul-variation-toggle__options {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: .75rem !important;
}

.single-product .natrul-variation-toggle__button {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 54px !important;
	padding: .9rem 1rem !important;
	border: 1px solid rgba(26,22,16,.18) !important;
	border-radius: 8px !important;
	background: #fff !important;
	color: var(--wp--preset--color--ink, #1a1610) !important;
	font-family: var(--wp--preset--font-family--sans, Jost, sans-serif) !important;
	font-size: .72rem !important;
	font-weight: 600 !important;
	letter-spacing: .12em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

.single-product .natrul-variation-toggle__button.is-active,
.single-product .natrul-variation-toggle__button[aria-checked="true"] {
	background: var(--wp--preset--color--ink, #1a1610) !important;
	border-color: var(--wp--preset--color--ink, #1a1610) !important;
	color: var(--wp--preset--color--surface, #faf8f4) !important;
}

@media (max-width: 899px) {
	.single-product .natrul-product-gallery { position: relative !important; top: auto !important; min-height: 0 !important; }
	.single-product .natrul-product-gallery__main { min-height: 0 !important; aspect-ratio: 4 / 3 !important; }
}


/* v104h desktop-only product gallery refinement. Mobile rules above remain unchanged. */
@media (min-width: 900px) {
	.single-product .natrul-product-gallery {
		position: sticky !important;
		top: 80px !important;
		display: flex !important;
		flex-direction: column !important;
		min-height: 0 !important;
		max-height: none !important;
		height: auto !important;
		overflow: visible !important;
	}

	.single-product .natrul-product-gallery__main {
		aspect-ratio: auto !important;
		height: clamp(360px, calc(100vh - 250px), 540px) !important;
		min-height: 0 !important;
		max-height: none !important;
		pointer-events: none !important;
	}

	.single-product .natrul-product-gallery__main img,
	.single-product .natrul-product-gallery__main-img,
	.single-product #natrulMainImg {
		height: 100% !important;
		min-height: 0 !important;
		pointer-events: none !important;
	}

	.single-product .natrul-product-gallery__thumbs {
		position: static !important;
		left: auto !important;
		right: auto !important;
		bottom: auto !important;
		display: flex !important;
		padding: 0.85rem 0 0 !important;
		margin: 0 !important;
		background: transparent !important;
		z-index: auto !important;
		pointer-events: auto !important;
	}

	.single-product .natrul-product-gallery__thumb {
		width: 68px !important;
		height: 68px !important;
		pointer-events: auto !important;
	}
}


/* v104i softer installation toggle state */
.single-product .natrul-variation-toggle__button.is-active,
.single-product .natrul-variation-toggle__button[aria-checked="true"] {
	background: var(--wp--preset--color--surface-warm, #f5ede0) !important;
	border-color: var(--wp--preset--color--amber, #c4923a) !important;
	color: var(--wp--preset--color--ink, #1a1610) !important;
	box-shadow: inset 0 0 0 1px var(--wp--preset--color--amber, #c4923a) !important;
}

.single-product .natrul-variation-toggle__button:hover {
	background: rgba(196, 146, 58, 0.10) !important;
	border-color: rgba(196, 146, 58, 0.65) !important;
	color: var(--wp--preset--color--ink, #1a1610) !important;
}


/* v104j single-product service strip refinement */
.single-product .natrul-trust-badges {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 0 !important;
	margin: 1.35rem 0 1.8rem !important;
	padding: 0.85rem 0 !important;
	border-top: 1px solid rgba(26, 22, 16, 0.08) !important;
	border-bottom: 1px solid rgba(26, 22, 16, 0.08) !important;
	background: transparent !important;
}

.single-product .natrul-trust-badge {
	display: grid !important;
	grid-template-columns: 34px minmax(0, 1fr) !important;
	align-items: center !important;
	gap: 0.75rem !important;
	min-height: 0 !important;
	padding: 0.35rem 1rem !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	text-align: left !important;
}

.single-product .natrul-trust-badge + .natrul-trust-badge {
	border-left: 1px solid rgba(26, 22, 16, 0.08) !important;
}

.single-product .natrul-trust-badge::before,
.single-product .natrul-trust-badge::after {
	content: none !important;
	display: none !important;
}

.single-product .natrul-trust-badge__icon {
	width: 34px !important;
	height: 34px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: 1px solid rgba(196, 146, 58, 0.32) !important;
	border-radius: 999px !important;
	background: rgba(196, 146, 58, 0.06) !important;
	color: var(--wp--preset--color--amber, #c4923a) !important;
}

.single-product .natrul-trust-badge__icon svg {
	width: 17px !important;
	height: 17px !important;
	stroke: currentColor !important;
	stroke-width: 1.55 !important;
	fill: none !important;
}

.single-product .natrul-trust-badge__text {
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--sans, Jost, sans-serif) !important;
	font-size: 0.76rem !important;
	font-weight: 300 !important;
	letter-spacing: 0.02em !important;
	line-height: 1.35 !important;
	text-transform: none !important;
	color: var(--wp--preset--color--ink-muted, #7a6a50) !important;
}

.single-product .natrul-trust-badge__text strong {
	display: block !important;
	margin: 0 0 0.1rem !important;
	font-family: var(--wp--preset--font-family--sans, Jost, sans-serif) !important;
	font-size: 0.78rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.045em !important;
	line-height: 1.2 !important;
	text-transform: none !important;
	color: var(--wp--preset--color--ink, #1a1610) !important;
}

@media (max-width: 899px) {
	.single-product .natrul-trust-badges {
		grid-template-columns: 1fr !important;
		gap: 0.65rem !important;
		padding: 0.9rem 0 !important;
	}

	.single-product .natrul-trust-badge {
		padding: 0.2rem 0 !important;
	}

	.single-product .natrul-trust-badge + .natrul-trust-badge {
		border-left: 0 !important;
	}
}

#co-solution .co-body-section__inner--has-image {
	align-items: start;
}
#co-solution .co-body-section__body p {
	line-height: 1.72;
	margin-bottom: 1rem;
}
@media (min-width: 800px) {
	#co-solution .co-body-section__media {
		position: sticky;
		top: 100px;
	}
}

@media (max-width: 799px) {
	.natrul-company-page .co-body-section__media {
		aspect-ratio: 4 / 3;
		min-height: clamp(260px, 72vw, 430px);
		height: auto;
	}

	.natrul-company-page .co-body-section__media img {
		width: 100% !important;
		height: 100% !important;
		display: block;
		object-fit: cover;
		aspect-ratio: auto;
	}
}
