/*
Theme Name: Eat Well Get Well
Theme URI: https://eatwellgetwell.com
Author: Zaheer Abbas
Description: Custom metabolic health theme — Purple & Lime palette. Large fonts for 50+ readability.
Version: 3.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: Private
Text Domain: ewgw
*/

/* =====================================================
   EWGW v3 — Logo colours
   Deep Purple #5B1F6B + Lime Green #aac874
   Base font: 18px for 50+ readability
   ===================================================== */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

:root {
  /* Primary — Deep Purple (logo text colour) */
  --moss:         #5B1F6B;
  --moss-mid:     #6E2780;
  --moss-lift:    #7F3394;
  --moss-soft:    rgba(91,31,107,0.07);
  --moss-border:  rgba(91,31,107,0.18);
  --moss-glow:    rgba(91,31,107,0.04);

  /* Accent — Lime Green (logo triangle) */
  --clay:         #aac874;
  --clay-light:   #96DC2A;
  --clay-pale:    rgba(126,200,26,0.12);
  --clay-border:  rgba(126,200,26,0.30);

  /* Warm neutrals */
  --wheat:        #F5EDDB;
  --wheat-deep:   #EDE0C4;
  --wheat-mid:    #D4C4A0;
  --wheat-muted:  #A89878;

  /* Darks */
  --bark:         #1A0E20;
  --bark-soft:    #2D1538;
  --bark-muted:   #7A6882;

  /* Backgrounds */
  --cream:        #FDFAF4;
  --cream-warm:   #FAF5EA;
  --white:        #FFFFFF;

  /* Typography */
  --serif-sc: 'Playfair Display SC', Georgia, serif;
  --serif:    'Playfair Display', Georgia, serif;
  --sans:     'Outfit', -apple-system, sans-serif;
  --ease:     cubic-bezier(0.16, 1, 0.3, 1);

  /* Blog palette — purple-toned */
  --color-bg:             #faf9f7;
  --color-bg-alt:         #f4f2ef;
  --color-bg-card:        #ffffff;
  --color-bg-warm:        #f3edf8;
  --color-bg-hero:        #f7f4fb;
  --color-text-primary:   #1A0E20;
  --color-text-secondary: #5a5065;
  --color-text-tertiary:  #9080a0;
  --color-text-inverse:   #faf9f7;
  --color-accent:         #5B1F6B;
  --color-accent-light:   #7F3394;
  --color-accent-hover:   #4A1858;
  --color-border:         #e0d5e8;
  --color-border-light:   #ede5f5;
  --color-tag-bg:         #f0e6f5;
  --color-tag-text:       #5B1F6B;
  --color-badge-bg:       #eaf5d6;
  --color-badge-text:     #4a7010;
  --color-cta-bg:         #3d1f4a;
  --color-cta-hover:      #4e2860;
  --font-heading: 'Playfair Display', Georgia, serif;
  --font-body:    'Inter', -apple-system, sans-serif;
  --shadow-sm:    0 1px 3px rgba(91,31,107,.06);
  --shadow-md:    0 4px 16px rgba(91,31,107,.08);
  --shadow-lg:    0 8px 32px rgba(91,31,107,.10);
  --shadow-xl:    0 16px 48px rgba(91,31,107,.13);
  --shadow-hover: 0 12px 40px rgba(91,31,107,.15);
  --radius-sm: 6px; --radius-md: 10px; --radius-lg: 14px;
  --radius-xl: 20px; --radius-full: 50%;
  --transition-fast: .2s cubic-bezier(.4,0,.2,1);
  --transition-smooth: .35s cubic-bezier(.4,0,.2,1);
}

/* 18px base — all rem values automatically larger */
html { font-size: 18px; scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
body { font-family: var(--sans); background: var(--cream); color: var(--bark); overflow-x: hidden; line-height: 1.75; }
a { text-decoration: none; color: inherit; }
ul { list-style: none; }
img { display: block; max-width: 100%; height: auto; }

/* ── SHARED UTILITIES ── */
.ov {
  font-family: var(--sans); font-size: 0.6rem; font-weight: 600;
  letter-spacing: 0.32em; text-transform: uppercase; color: var(--clay);
  display: inline-flex; align-items: center; gap: 0.9rem; margin-bottom: 1.6rem;
}
.ov::before { content: ''; width: 24px; height: 1px; background: var(--clay); flex-shrink: 0; }
.section-inner { position: relative; z-index: 1; }

/* ── BUTTONS ── */
.btn {
  display: inline-flex; align-items: center; gap: 1rem;
  font-family: var(--sans); font-size: 0.78rem; font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase;
  padding: 1.1rem 2.8rem; transition: all 0.45s var(--ease);
  cursor: pointer; border: none;
}
.btn--moss  { background: var(--moss); color: var(--white); border-radius: 2px; }
.btn--moss:hover  { background: var(--moss-lift); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(91,31,107,0.3); }
.btn--clay  { background: var(--clay); color: var(--bark); border-radius: 2px; }
.btn--clay:hover  { background: var(--clay-light); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(126,200,26,0.35); }
.btn--ghost { background: transparent; color: var(--moss); border: 1.5px solid var(--moss-border); border-radius: 2px; }
.btn--ghost:hover { border-color: var(--moss); background: var(--moss-soft); }
.btn--ghost-w { background: transparent; color: var(--wheat); border: 1.5px solid rgba(255,255,255,0.25); border-radius: 2px; }
.btn--ghost-w:hover { border-color: rgba(255,255,255,0.6); background: rgba(255,255,255,0.06); }
.btn svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2; transition: transform 0.4s var(--ease); }
.btn:hover svg { transform: translateX(5px); }

/* ── REVEAL ANIMATIONS ── */
.r { opacity: 0; transform: translateY(26px); transition: opacity 0.9s var(--ease), transform 0.9s var(--ease); }
.r.on { opacity: 1; transform: translateY(0); }
.d1 { transition-delay: 0.08s; } .d2 { transition-delay: 0.18s; }
.d3 { transition-delay: 0.28s; } .d4 { transition-delay: 0.40s; }

/* =====================================================
   GLOBAL NAV — used everywhere via header.php
   ===================================================== */
.site-nav-global {
  position: fixed; top: 0; left: 0; right: 0; z-index: 900;
  padding: 1.2rem 5%;
  display: flex; align-items: center; justify-content: space-between;
  transition: background 0.5s, box-shadow 0.5s, color 0.5s;
  /* Default: solid white — used on all interior pages */
  background: rgba(253,250,244,0.96);
  backdrop-filter: blur(20px);
  box-shadow: 0 1px 0 var(--moss-border);
}
.site-nav-global.scrolled {
  background: rgba(253,250,244,0.96);
  backdrop-filter: blur(20px);
  box-shadow: 0 1px 0 var(--moss-border);
}
/* Homepage only — nav starts transparent over purple hero */
/* Logo */
.site-nav-global__logo { display: flex; align-items: center; gap: 0.6rem; text-decoration: none; }
.site-nav-global__logo-mark {
  width: 36px; height: 36px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
}
.site-nav-global__logo-text { display: flex; flex-direction: column; gap: 0; }
.site-nav-global__logo-main {
  font-family: var(--serif-sc); font-size: 1rem; font-weight: 400;
  color: var(--moss); letter-spacing: 0.06em; line-height: 1.1;
}
.site-nav-global__logo-sub {
  font-size: 0.5rem; font-weight: 400; letter-spacing: 0.28em;
  text-transform: uppercase; color: var(--wheat-muted); line-height: 1;
}
/* Links */
.site-nav-global__links {
  display: flex; align-items: center; gap: 2.2rem;
}
.site-nav-global__link {
  font-size: 0.72rem; font-weight: 400; letter-spacing: 0.09em;
  text-transform: uppercase; color: var(--bark-muted);
  text-decoration: none; transition: color 0.3s;
}
.site-nav-global__link:hover { color: var(--moss); }
.site-nav-global__cta {
  font-size: 0.68rem; font-weight: 600; letter-spacing: 0.12em;
  text-transform: uppercase; background: var(--moss); color: var(--white);
  padding: 0.7rem 1.8rem; border-radius: 100px;
  text-decoration: none; transition: all 0.4s var(--ease);
}
.site-nav-global__cta:hover { background: var(--clay); color: var(--bark); transform: translateY(-1px); }
/* Mobile hamburger */
.site-nav-global__burger {
  display: none; flex-direction: column; gap: 5px;
  background: none; border: none; cursor: pointer; padding: 4px;
}
.site-nav-global__burger span {
  display: block; width: 24px; height: 2px;
  background: var(--moss); border-radius: 2px;
  transition: all 0.3s;
}
/* Mobile menu */
.site-nav-global__mobile {
  display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
  background: var(--moss); z-index: 899; padding: 6rem 5% 3rem;
  flex-direction: column; gap: 0;
}
.site-nav-global__mobile.open { display: flex; }
.site-nav-global__mobile-link {
  display: block; font-size: 1.2rem; font-weight: 400;
  font-family: var(--serif); color: var(--wheat); padding: 1.2rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.08); text-decoration: none;
  transition: color 0.3s;
}
.site-nav-global__mobile-link:hover { color: var(--clay); }
.site-nav-global__mobile-cta {
  display: inline-block; margin-top: 2rem;
  background: var(--clay); color: var(--bark); padding: 1rem 2.5rem;
  border-radius: 100px; font-size: 0.85rem; font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase; text-decoration: none;
}

/* =====================================================
   GLOBAL FOOTER — used everywhere via footer.php
   ===================================================== */
.site-footer-global {
  background: #f4eddb;
  padding: 4rem 5%;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr;
  gap: 3rem;
}
.site-footer-global__brand { }
.site-footer-global__brand-name {
  font-family: var(--serif-sc); font-size: 1rem; color: var(--moss);
  letter-spacing: 0.06em; margin-bottom: 0.5rem;
}
.site-footer-global__brand-sub {
  font-size: 0.55rem; letter-spacing: 0.24em; text-transform: uppercase;
  color: var(--moss); margin-bottom: 1.2rem;
}
.site-footer-global__brand-text {
  font-size: 0.78rem; line-height: 1.7; color: var(--moss);
  font-weight: 300; max-width: 260px;
}
.site-footer-global__col-title {
  font-size: 0.6rem; font-weight: 600; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--moss);
  margin-bottom: 1.2rem;
}
.site-footer-global__col a {
  display: block; font-size: 0.8rem; color: var(--moss);
  padding: 0.35rem 0; text-decoration: none; transition: color 0.25s;
}
.site-footer-global__col a:hover { color: var(--clay); }
.site-footer-global__bottom {
  background: var(--bark-soft);
  padding: 1.5rem 5%;
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 1rem;
}
.site-footer-global__copy {
  font-size: 0.7rem; color: rgba(255,255,255,0.5); letter-spacing: 0.08em;
}
.site-footer-global__legal {
  display: flex; gap: 2rem;
}
.site-footer-global__legal a {
  font-size: 0.68rem; color: rgba(255,255,255,0.5); text-decoration: none;
  transition: color 0.25s; letter-spacing: 0.06em;
}
.site-footer-global__legal a:hover { color: var(--clay); }

/* =====================================================
   NAV — homepage variant (transparent over hero)
   ===================================================== */
.nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 900;
  padding: 1.3rem 5%;
  display: flex; align-items: center; justify-content: space-between;
  transition: background 0.5s, box-shadow 0.5s;
}
.nav.scrolled {
  background: rgba(253,250,244,0.95);
  backdrop-filter: blur(20px);
  box-shadow: 0 1px 0 var(--moss-border);
}
.nav__logo { display: flex; flex-direction: column; gap: 1px; }
.nav__logo-main { font-family: var(--serif-sc); font-size: 1rem; font-weight: 400; color: var(--moss); letter-spacing: 0.06em; }
.nav__logo-sub  { font-size: 0.52rem; font-weight: 400; letter-spacing: 0.32em; text-transform: uppercase; color: var(--wheat-muted); }
.nav__links { display: flex; align-items: center; gap: 2.2rem; }
.nav__link { font-size: 0.72rem; font-weight: 400; letter-spacing: 0.09em; text-transform: uppercase; color: var(--bark-muted); transition: color 0.3s; }
.nav__link:hover { color: var(--moss); }
.nav__cta {
  font-size: 0.68rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase;
  background: var(--clay); color: var(--bark); padding: 0.7rem 1.8rem; border-radius: 100px;
  transition: all 0.4s var(--ease);
}
.nav__cta:hover { background: var(--moss); color: var(--white); transform: translateY(-1px); }

/* =====================================================
   HERO
   ===================================================== */
.hero {
  min-height: 100vh; position: relative; overflow: hidden;
  background: var(--moss);
  display: grid; grid-template-columns: 1.1fr 1fr;
}
.hero__vein { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.hero__vein svg { position: absolute; right: -5%; top: -10%; width: 70%; height: 120%; opacity: 0.06; }
.hero__left {
  position: relative; z-index: 1;
  padding: 13rem 5% 8rem 7%;
  display: flex; flex-direction: column; justify-content: center;
  border-right: 1px solid rgba(255,255,255,0.07);
}
.hero__eyebrow {
  font-family: var(--sans); font-size: 0.62rem; font-weight: 600;
  letter-spacing: 0.32em; text-transform: uppercase; color: var(--clay);
  display: flex; align-items: center; gap: 1rem; margin-bottom: 3rem;
  opacity: 0; animation: up 1s var(--ease) 0.2s forwards;
}
.hero__eyebrow-tick { width: 24px; height: 1px; background: var(--clay); }
.hero__h1 {
  font-family: var(--serif); font-size: clamp(2.6rem, 5vw, 4.8rem);
  font-weight: 400; line-height: 1.12; letter-spacing: -0.02em;
  color: var(--wheat); margin-bottom: 2rem;
  opacity: 0; animation: up 1.1s var(--ease) 0.35s forwards;
}
.hero__h1 em { font-style: italic; color: var(--clay); }
.hero__sub {
  font-size: 1rem; line-height: 1.85; font-weight: 300;
  color: rgba(245,237,219,0.65); max-width: 460px; margin-bottom: 1rem;
  opacity: 0; animation: up 1s var(--ease) 0.5s forwards;
}
.hero__attribution {
  font-size: 0.82rem; color: rgba(245,237,219,0.45); margin-bottom: 3.5rem;
  opacity: 0; animation: up 1s var(--ease) 0.62s forwards;
}
.hero__attribution strong { color: var(--clay); font-weight: 500; }
.hero__btns {
  display: flex; align-items: center; gap: 1.4rem; flex-wrap: wrap;
  opacity: 0; animation: up 1s var(--ease) 0.78s forwards;
}
.hero__free { font-size: 0.64rem; color: rgba(245,237,219,0.35); letter-spacing: 0.12em; margin-top: 1rem; }
.hero__right {
  position: relative; z-index: 1;
  padding: 13rem 5% 6rem 5%;
  display: flex; flex-direction: column; justify-content: center; gap: 0;
}
.hero__strip {
  border-bottom: 1px solid rgba(255,255,255,0.07);
  padding: 2.4rem 0;
  display: flex; align-items: flex-start; gap: 2rem;
  opacity: 0; animation: left 0.9s var(--ease) forwards;
  transition: background 0.4s var(--ease);
}
.hero__strip:hover { background: rgba(255,255,255,0.03); padding-left: 0.8rem; }
.hero__strip:first-child { border-top: 1px solid rgba(255,255,255,0.07); }
.hero__strip:nth-child(1) { animation-delay: 0.55s; }
.hero__strip:nth-child(2) { animation-delay: 0.7s; }
.hero__strip:nth-child(3) { animation-delay: 0.85s; }
.hero__strip:nth-child(4) { animation-delay: 1s; }
.hero__strip-glyph { font-family: var(--serif); font-size: 1.6rem; font-style: italic; font-weight: 400; color: var(--clay); flex-shrink: 0; width: 30px; line-height: 1; margin-top: 0.15rem; }
.hero__strip-title { font-size: 0.92rem; font-weight: 500; color: var(--wheat); margin-bottom: 0.35rem; }
.hero__strip-text  { font-size: 0.8rem; font-weight: 300; color: rgba(245,237,219,0.5); line-height: 1.65; }
@keyframes up   { from{opacity:0;transform:translateY(22px)} to{opacity:1;transform:translateY(0)} }
@keyframes left { from{opacity:0;transform:translateX(18px)} to{opacity:1;transform:translateX(0)} }

/* =====================================================
   TRUST STRIP
   ===================================================== */
.trust {
  background: var(--wheat-deep);
  border-bottom: 1px solid var(--moss-border);
  display: table;
  width: 100%;
  table-layout: fixed;
}
.trust__item {
  display: table-cell;
  vertical-align: middle;
  padding: 1.8rem 1rem;
  border-right: 1px solid var(--moss-border);
  overflow: hidden;
}
.trust__item:last-child { border-right: none; }
.trust__item-inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
}
.trust__leaf {
  width: 26px; height: 26px;
  flex-shrink: 0;
  background: var(--moss-soft);
  border: 1px solid var(--moss-border);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
}
.trust__leaf svg { width: 11px; height: 11px; stroke: var(--moss); fill: none; stroke-width: 1.5; }
.trust__text {
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bark-muted);
  line-height: 1.3;
}

/* =====================================================
   PROBLEM
   ===================================================== */
.problem { padding: 11rem 5%; position: relative; overflow: hidden; border-bottom: 1px solid var(--moss-border); }
.problem__watermark { position: absolute; top: 4rem; right: 3%; font-family: var(--serif-sc); font-size: 22rem; font-weight: 700; color: transparent; -webkit-text-stroke: 1px var(--moss-border); line-height: 1; user-select: none; pointer-events: none; }
.problem__header { max-width: 640px; margin-bottom: 6rem; }
.problem__headline { font-family: var(--serif); font-size: clamp(2rem, 4vw, 3.6rem); font-weight: 400; line-height: 1.18; letter-spacing: -0.02em; color: var(--moss); }
.problem__headline em { font-style: italic; color: var(--clay); }
.problem__body { font-size: 0.95rem; line-height: 1.9; color: var(--bark-muted); font-weight: 300; margin-top: 2rem; max-width: 580px; }
.problem__body strong { color: var(--bark-soft); font-weight: 500; }
.problem__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 5rem; }
.leaf-card { background: var(--cream-warm); border: 1px solid var(--moss-border); border-radius: 16px 4px 16px 4px; padding: 3rem 2.8rem; position: relative; overflow: hidden; transition: transform 0.45s var(--ease), box-shadow 0.45s var(--ease), border-color 0.4s; }
.leaf-card:hover { transform: translateY(-6px); box-shadow: 0 20px 50px rgba(91,31,107,0.12); border-color: var(--moss-lift); }
.leaf-card::before { content: ''; position: absolute; top: -40px; right: -40px; width: 120px; height: 120px; border-radius: 50%; background: var(--moss-glow); transition: transform 0.6s var(--ease); }
.leaf-card:hover::before { transform: scale(1.5); }
.leaf-card__num { font-family: var(--serif); font-size: 0.78rem; font-style: italic; color: var(--clay); margin-bottom: 2rem; display: block; font-weight: 400; }
.leaf-card__icon { width: 48px; height: 48px; border-radius: 50%; background: var(--moss-soft); border: 1px solid var(--moss-border); display: flex; align-items: center; justify-content: center; margin-bottom: 1.8rem; transition: background 0.4s, border-color 0.4s; }
.leaf-card:hover .leaf-card__icon { background: var(--clay-pale); border-color: var(--clay-border); }
.leaf-card__icon svg { width: 20px; height: 20px; stroke: var(--moss); fill: none; stroke-width: 1.5; transition: stroke 0.4s; }
.leaf-card:hover .leaf-card__icon svg { stroke: var(--clay); }
.leaf-card__title { font-family: var(--serif); font-size: 1.3rem; font-weight: 400; color: var(--moss); margin-bottom: 0.8rem; }
.leaf-card__text  { font-size: 0.85rem; line-height: 1.78; color: var(--bark-muted); font-weight: 300; }
.leaf-card--result { background: var(--moss); border-color: var(--moss); }
.leaf-card--result::before { background: rgba(255,255,255,0.03); }
.leaf-card--result .leaf-card__title { color: var(--wheat); }
.leaf-card--result .leaf-card__text  { color: rgba(245,237,219,0.6); }
.leaf-card--result .leaf-card__num   { color: var(--clay); }
.leaf-card--result .leaf-card__icon  { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.15); }
.leaf-card--result .leaf-card__icon svg { stroke: var(--clay); }
.leaf-card--result:hover { border-color: var(--moss-lift); }

/* =====================================================
   METHOD
   ===================================================== */
.method { padding: 11rem 5%; background: var(--wheat); border-bottom: 1px solid var(--moss-border); position: relative; overflow: hidden; }
.method__watermark { position: absolute; top: 4rem; left: 2%; font-family: var(--serif-sc); font-size: 22rem; font-weight: 700; color: transparent; -webkit-text-stroke: 1px rgba(91,31,107,0.08); line-height: 1; user-select: none; pointer-events: none; }
.method__header { display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; margin-bottom: 8rem; align-items: end; }
.method__title { font-family: var(--serif); font-size: clamp(2rem, 4vw, 3.6rem); font-weight: 400; line-height: 1.12; letter-spacing: -0.02em; color: var(--moss); }
.method__title em { font-style: italic; color: var(--clay); }
.method__intro { font-size: 0.95rem; line-height: 1.9; color: var(--bark-muted); font-weight: 300; }
.method__vine { position: relative; }
.method__vine svg { width: 100%; height: 24px; overflow: visible; }
.method__steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 2px; background: var(--moss-border); position: relative; z-index: 1; }
.method__step { background: var(--cream); position: relative; overflow: hidden; transition: box-shadow 0.45s var(--ease); }
.method__step:hover { box-shadow: 0 12px 40px rgba(91,31,107,0.12); z-index: 2; }
.method__step-pill { display: flex; align-items: center; gap: 1rem; padding: 2rem 2.5rem 0; }
.method__step-circle { width: 56px; height: 56px; border-radius: 50%; background: var(--moss); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.method__step-circle-num { font-family: var(--serif); font-size: 1.4rem; font-weight: 400; font-style: italic; color: var(--wheat); line-height: 1; }
.method__step-phase-label { font-size: 0.6rem; letter-spacing: 0.28em; text-transform: uppercase; color: var(--bark-muted); font-weight: 500; }
.method__step-body { padding: 2rem 2.5rem 3rem; }
.method__step-title { font-family: var(--serif); font-size: 1.9rem; font-weight: 400; color: var(--moss); margin-bottom: 1rem; }
.method__step-desc  { font-size: 0.88rem; line-height: 1.78; color: var(--bark-muted); font-weight: 300; margin-bottom: 2rem; }
.method__step-points { display: flex; flex-direction: column; gap: 0.7rem; }
.method__step-point { display: flex; align-items: center; gap: 1rem; font-size: 0.82rem; color: var(--bark-muted); font-weight: 300; }
.method__step-point-leaf { width: 18px; height: 18px; flex-shrink: 0; background: var(--moss-soft); border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.method__step-point-leaf svg { width: 9px; height: 9px; stroke: var(--moss); fill: none; stroke-width: 2; }
.method__step-foot { background: var(--moss); padding: 1.3rem 2.5rem; font-family: var(--serif); font-style: italic; font-size: 0.85rem; color: rgba(245,237,219,0.55); font-weight: 300; }

/* =====================================================
   NATURAL APPROACH
   ===================================================== */
.natural { padding: 11rem 5%; border-bottom: 1px solid var(--moss-border); display: grid; grid-template-columns: 1fr 1fr; gap: 8rem; align-items: center; position: relative; overflow: hidden; }
.natural__headline { font-family: var(--serif); font-size: clamp(1.9rem, 3.8vw, 3.2rem); font-weight: 400; line-height: 1.18; letter-spacing: -0.02em; color: var(--moss); margin-bottom: 2rem; }
.natural__headline em { font-style: italic; color: var(--clay); }
.natural__body { font-size: 0.92rem; line-height: 1.9; color: var(--bark-muted); font-weight: 300; margin-bottom: 3rem; }
.natural__petals { display: flex; flex-direction: column; gap: 0.9rem; }
.petal { display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 1.4rem; background: var(--cream-warm); border: 1px solid var(--moss-border); border-radius: 100px; padding: 1rem 1.8rem 1rem 0.9rem; transition: all 0.4s var(--ease); }
.petal:hover { background: var(--moss-soft); border-color: var(--moss); transform: translateX(6px); }
.petal__dot { width: 36px; height: 36px; border-radius: 50%; background: var(--moss); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.petal__dot svg { width: 14px; height: 14px; stroke: var(--wheat); fill: none; stroke-width: 1.8; }
.petal__text { font-size: 0.86rem; color: var(--bark-soft); font-weight: 300; line-height: 1.4; }
.natural__panel { background: var(--moss); padding: 5rem 4.5rem; border-radius: 4px; position: relative; overflow: hidden; }
.natural__panel::after { content: ''; position: absolute; bottom: -60px; right: -60px; width: 200px; height: 200px; border-radius: 50%; background: rgba(255,255,255,0.03); pointer-events: none; }
.natural__panel-label { font-family: var(--serif); font-style: italic; font-size: 1rem; color: var(--clay); margin-bottom: 3rem; font-weight: 400; display: flex; align-items: center; gap: 1rem; }
.natural__panel-label::before { content: ''; width: 20px; height: 1px; background: var(--clay); }
.natural__panel-items { display: flex; flex-direction: column; gap: 2.5rem; }
.natural__panel-item { display: flex; gap: 1.5rem; }
.natural__panel-item-num { font-family: var(--serif); font-size: 2rem; font-weight: 400; font-style: italic; color: rgba(245,237,219,0.12); line-height: 1.1; flex-shrink: 0; width: 32px; }
.natural__panel-item-title { font-size: 0.88rem; font-weight: 500; color: var(--wheat); margin-bottom: 0.3rem; }
.natural__panel-item-text  { font-size: 0.8rem; color: rgba(245,237,219,0.5); font-weight: 300; line-height: 1.65; }

/* =====================================================
   PATHS
   ===================================================== */
.paths { padding: 11rem 5%; background: var(--wheat); border-bottom: 1px solid var(--moss-border); position: relative; overflow: hidden; }
.paths__watermark { position: absolute; bottom: 2rem; right: 2%; font-family: var(--serif-sc); font-size: 22rem; font-weight: 700; color: transparent; -webkit-text-stroke: 1px rgba(91,31,107,0.07); line-height: 1; user-select: none; pointer-events: none; }
.paths__header { max-width: 600px; margin-bottom: 6rem; }
.paths__title { font-family: var(--serif); font-size: clamp(2rem,4vw,3.6rem); font-weight: 400; line-height: 1.18; letter-spacing: -0.02em; color: var(--moss); }
.paths__title em { font-style: italic; color: var(--clay); }
.paths__sub { font-size: 0.92rem; line-height: 1.85; color: var(--bark-muted); font-weight: 300; margin-top: 1.5rem; }
.paths__grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1.5rem; }
.anchor-card { background: var(--cream); border: 1px solid var(--moss-border); border-radius: 4px; overflow: hidden; display: flex; flex-direction: column; transition: box-shadow 0.45s var(--ease), transform 0.45s var(--ease), border-color 0.4s; position: relative; }
.anchor-card:hover { box-shadow: 0 20px 60px rgba(91,31,107,0.14); transform: translateY(-5px); border-color: var(--moss-lift); }
.anchor-card__top { background: linear-gradient(120deg, var(--moss), var(--moss-lift)); padding: 2.5rem 3rem; display: flex; align-items: center; justify-content: space-between; position: relative; overflow: hidden; }
.anchor-card__top::after { content: ''; position: absolute; right: -30px; top: -30px; width: 100px; height: 100px; border-radius: 50%; background: rgba(255,255,255,0.05); }
.anchor-card__num { font-family: var(--serif); font-size: 2.5rem; font-style: italic; color: rgba(255,255,255,0.2); font-weight: 400; line-height: 1; }
.anchor-card__icon { width: 48px; height: 48px; background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.15); border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.anchor-card__icon svg { width: 22px; height: 22px; stroke: var(--wheat); fill: none; stroke-width: 1.5; }
.anchor-card__body { padding: 3rem 3rem 2rem; flex: 1; }
.anchor-card__title { font-family: var(--serif); font-size: 1.4rem; font-weight: 400; color: var(--moss); margin-bottom: 1rem; line-height: 1.3; }
.anchor-card__text  { font-size: 0.85rem; line-height: 1.75; color: var(--bark-muted); font-weight: 300; }
.anchor-card__foot { padding: 1.8rem 3rem; border-top: 1px solid var(--moss-border); display: flex; align-items: center; justify-content: space-between; }
.anchor-card__link { font-size: 0.7rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--clay); display: flex; align-items: center; gap: 0.6rem; transition: gap 0.4s var(--ease); }
.anchor-card:hover .anchor-card__link { gap: 1.2rem; }
.anchor-card__tag { font-size: 0.62rem; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bark-muted); background: var(--wheat-deep); padding: 0.4rem 0.9rem; border-radius: 100px; }

/* =====================================================
   DIFFERENT
   ===================================================== */
.different { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--moss-border); }
.different__col { padding: 9rem 6%; position: relative; }
.different__col--left  { background: var(--cream-warm); border-right: 1px solid var(--moss-border); }
.different__col--right { background: var(--moss); }
.different__label { font-size: 0.62rem; font-weight: 600; letter-spacing: 0.32em; text-transform: uppercase; margin-bottom: 4rem; display: block; }
.different__col--left  .different__label { color: var(--bark-muted); }
.different__col--right .different__label { color: var(--clay); }
.different__title { font-family: var(--serif); font-size: clamp(1.8rem,3vw,2.8rem); font-weight: 400; line-height: 1.18; letter-spacing: -0.02em; margin-bottom: 4rem; }
.different__col--left  .different__title { color: var(--moss); }
.different__col--right .different__title { color: var(--wheat); }
.different__col--right .different__title em { font-style: italic; color: var(--clay); }
.different__items { display: flex; flex-direction: column; gap: 0; }
.different__item { padding: 1.6rem 0; border-bottom: 1px solid; display: grid; grid-template-columns: 28px 1fr; gap: 1.2rem; align-items: start; }
.different__col--left  .different__item { border-color: var(--moss-border); }
.different__col--right .different__item { border-color: rgba(255,255,255,0.08); }
.different__mark { width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-top: 0.1rem; flex-shrink: 0; }
.different__col--left  .different__mark { background: var(--wheat-deep); }
.different__col--right .different__mark { background: rgba(126,200,26,0.18); }
.different__mark svg { width: 11px; height: 11px; stroke-width: 2.5; }
.different__col--left  .different__mark svg { stroke: var(--bark-muted); fill: none; }
.different__col--right .different__mark svg { stroke: var(--clay); fill: none; }
.different__text { font-size: 0.88rem; font-weight: 300; line-height: 1.5; display: block; }
.different__col--left  .different__text { color: var(--bark-muted); text-decoration: line-through; text-decoration-color: var(--wheat-mid); }
.different__col--right .different__text { color: rgba(245,237,219,0.8); }
.different__sub { font-size: 0.75rem; color: rgba(245,237,219,0.38); margin-top: 0.2rem; font-weight: 300; display: block; }
.different__yes-body { display: flex; flex-direction: column; }

/* =====================================================
   STORY
   ===================================================== */
.story { padding: 11rem 5%; border-bottom: 1px solid var(--moss-border); display: grid; grid-template-columns: 1fr 1.1fr; gap: 8rem; align-items: start; }
.story__photo-wrap { position: relative; }
.story__photo { width: 100%; aspect-ratio: 4/5; background: linear-gradient(145deg, var(--wheat-deep) 0%, var(--wheat) 100%); border-radius: 4px 60px 4px 4px; position: relative; overflow: hidden; }
.story__photo img { width: 100%; height: 100%; object-fit: cover; }
.story__photo-clay { position: absolute; bottom: 0; right: 0; width: 70px; height: 70px; background: var(--clay); clip-path: polygon(100% 0, 100% 100%, 0 100%); }
.story__badge { position: absolute; top: -1.5rem; left: 2rem; background: var(--moss); padding: 0.8rem 1.6rem; font-size: 0.62rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--wheat); border-radius: 100px; }
.story__caption { margin-top: 1.5rem; font-size: 0.65rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bark-muted); display: flex; align-items: center; gap: 0.8rem; }
.story__caption::before { content: ''; width: 16px; height: 1px; background: var(--bark-muted); }
.story__journey { position: absolute; right: -3rem; top: 4rem; background: var(--cream); border: 1px solid var(--moss-border); border-radius: 4px; width: 180px; box-shadow: 0 8px 32px rgba(91,31,107,0.1); overflow: hidden; }
.story__journey-step { padding: 1.3rem 1.5rem; border-bottom: 1px solid var(--moss-border); display: flex; align-items: center; gap: 1rem; }
.story__journey-step:last-child { border: none; }
.story__journey-step-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--clay); flex-shrink: 0; }
.story__journey-step-text { font-size: 0.75rem; color: var(--bark-soft); font-weight: 300; line-height: 1.3; }
.story__content { padding-top: 2rem; }
.story__headline { font-family: var(--serif); font-size: clamp(2rem,3.5vw,3.2rem); font-weight: 400; line-height: 1.18; letter-spacing: -0.02em; color: var(--moss); margin-bottom: 2rem; }
.story__headline em { font-style: italic; color: var(--clay); }
.story__body { font-size: 0.95rem; line-height: 1.92; color: var(--bark-muted); font-weight: 300; margin-bottom: 1.5rem; }
.story__body strong { color: var(--bark-soft); font-weight: 500; }
.story__quote { margin: 3rem 0; padding: 2.5rem 3rem; background: var(--wheat); border-radius: 4px; border-left: 3px solid var(--clay); position: relative; }
.story__quote-glyph { font-family: var(--serif); font-size: 5rem; color: var(--clay-pale); position: absolute; top: -0.5rem; left: 2rem; line-height: 1; font-weight: 400; }
.story__quote-text { font-family: var(--serif); font-style: italic; font-size: 1.1rem; line-height: 1.65; color: var(--moss); font-weight: 400; padding-top: 1.5rem; }
.story__creds { display: flex; flex-wrap: wrap; gap: 0.7rem; margin-top: 3rem; }
.story__cred { font-size: 0.65rem; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--moss); background: var(--moss-soft); border: 1px solid var(--moss-border); padding: 0.5rem 1.1rem; border-radius: 100px; }

/* =====================================================
   EDUCATION
   ===================================================== */
.education { padding: 11rem 5%; background: var(--wheat); border-bottom: 1px solid var(--moss-border); }
.education__header { max-width: 620px; margin-bottom: 6rem; }
.education__title { font-family: var(--serif); font-size: clamp(2rem,3.5vw,3.2rem); font-weight: 400; line-height: 1.18; letter-spacing: -0.02em; color: var(--moss); }
.education__title em { font-style: italic; color: var(--clay); }
.education__sub { font-size: 0.95rem; line-height: 1.85; color: var(--bark-muted); font-weight: 300; margin-top: 1.5rem; }
.education__pads { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; }
.pad-card { background: var(--cream); border: 1px solid var(--moss-border); border-radius: 4px; overflow: hidden; transition: transform 0.45s var(--ease), box-shadow 0.45s var(--ease), border-color 0.4s; }
.pad-card:hover { transform: translateY(-6px); box-shadow: 0 20px 50px rgba(91,31,107,0.12); border-color: var(--moss-lift); }
.pad-card__header { padding: 3rem; background: var(--moss); position: relative; overflow: hidden; }
.pad-card__header::before { content: ''; position: absolute; right: -20px; bottom: -20px; width: 80px; height: 80px; border-radius: 50%; background: rgba(255,255,255,0.04); }
.pad-card__header-icon { width: 52px; height: 52px; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.14); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 1.5rem; }
.pad-card__header-icon svg { width: 22px; height: 22px; stroke: var(--clay); fill: none; stroke-width: 1.5; }
.pad-card__header-num { font-family: var(--serif); font-size: 4rem; font-style: italic; color: rgba(255,255,255,0.07); font-weight: 400; line-height: 1; position: absolute; bottom: -0.5rem; right: 1.5rem; }
.pad-card__body { padding: 2.5rem 3rem 3rem; }
.pad-card__title { font-family: var(--serif); font-size: 1.25rem; font-weight: 400; color: var(--moss); margin-bottom: 0.75rem; }
.pad-card__text  { font-size: 0.85rem; line-height: 1.78; color: var(--bark-muted); font-weight: 300; }

/* =====================================================
   OUTCOMES
   ===================================================== */
.outcomes { padding: 11rem 5%; border-bottom: 1px solid var(--moss-border); }
.outcomes__header { display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; margin-bottom: 7rem; align-items: end; }
.outcomes__title { font-family: var(--serif); font-size: clamp(2rem,4vw,3.6rem); font-weight: 400; line-height: 1.18; letter-spacing: -0.02em; color: var(--moss); }
.outcomes__title em { font-style: italic; color: var(--clay); }
.outcomes__sub { font-size: 0.95rem; line-height: 1.9; color: var(--bark-muted); font-weight: 300; }
.outcomes__list { display: flex; flex-direction: column; gap: 2px; }
.outcome-row { display: grid; grid-template-columns: 6px 70px 1fr auto; align-items: stretch; background: var(--cream-warm); transition: background 0.4s var(--ease); cursor: default; }
.outcome-row:hover { background: var(--wheat-deep); }
.outcome-row__bar { background: var(--moss); flex-shrink: 0; }
.outcome-row:nth-child(2) .outcome-row__bar { background: var(--moss-lift); }
.outcome-row:nth-child(3) .outcome-row__bar { background: var(--clay); }
.outcome-row:nth-child(4) .outcome-row__bar { background: var(--moss-mid); }
.outcome-row:nth-child(5) .outcome-row__bar { background: var(--clay-light); }
.outcome-row__num { display: flex; align-items: center; justify-content: center; padding: 2.5rem 1rem; font-family: var(--serif); font-size: 1.1rem; font-style: italic; color: var(--wheat-muted); border-right: 1px solid var(--moss-border); }
.outcome-row__body { padding: 2.5rem 3rem; }
.outcome-row__title { font-family: var(--serif); font-size: 1.15rem; font-weight: 400; color: var(--moss); margin-bottom: 0.3rem; }
.outcome-row__text  { font-size: 0.82rem; line-height: 1.65; color: var(--bark-muted); font-weight: 300; }
.outcome-row__tag { padding: 2.5rem; display: flex; align-items: center; font-size: 0.62rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--wheat-muted); white-space: nowrap; }

/* =====================================================
   CTA SECTION
   ===================================================== */
.cta-section { background: var(--moss); padding: 11rem 5%; position: relative; overflow: hidden; border-bottom: 1px solid var(--moss-lift); }
.cta-section::before { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px); background-size: 48px 48px; }
.cta-section::after { content: ''; position: absolute; right: -15%; bottom: -40%; width: 600px; height: 600px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.04); pointer-events: none; }
.cta-section__inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 8rem; align-items: center; }
.cta-section__headline { font-family: var(--serif); font-size: clamp(2.4rem, 4.5vw, 4rem); font-weight: 400; line-height: 1.1; letter-spacing: -0.03em; color: var(--wheat); margin-bottom: 1.5rem; }
.cta-section__headline em { font-style: italic; color: var(--clay); }
.cta-section__sub { font-size: 0.95rem; line-height: 1.9; color: rgba(245,237,219,0.6); font-weight: 300; max-width: 440px; margin-bottom: 3rem; }
.cta-section__checklist { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 3.5rem; }
.cta-section__check { display: flex; align-items: center; gap: 1rem; font-size: 0.88rem; color: rgba(245,237,219,0.65); font-weight: 300; }
.cta-section__check-dot { width: 22px; height: 22px; border-radius: 50%; background: rgba(126,200,26,0.2); border: 1px solid rgba(126,200,26,0.35); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.cta-section__check-dot svg { width: 10px; height: 10px; stroke: var(--clay); fill: none; stroke-width: 2.5; }
.cta-section__note { font-size: 0.66rem; color: rgba(245,237,219,0.28); letter-spacing: 0.12em; margin-top: 1.5rem; }
.blog-card { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.12); border-radius: 4px; overflow: hidden; transition: border-color 0.4s var(--ease); }
.blog-card:hover { border-color: var(--clay-border); }
.blog-card__img { height: 160px; background: rgba(255,255,255,0.03); position: relative; }
.blog-card__img-label { position: absolute; bottom: 1rem; left: 1.5rem; font-size: 0.56rem; letter-spacing: 0.24em; text-transform: uppercase; color: rgba(245,237,219,0.25); }
.blog-card__body { padding: 2.5rem; }
.blog-card__tag { display: inline-block; font-size: 0.58rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--clay); border: 1px solid var(--clay-border); padding: 0.38rem 0.9rem; border-radius: 100px; margin-bottom: 1.2rem; }
.blog-card__title { font-family: var(--serif); font-size: 1.3rem; font-weight: 400; color: var(--wheat); line-height: 1.35; margin-bottom: 1rem; }
.blog-card__excerpt { font-size: 0.82rem; line-height: 1.75; color: rgba(245,237,219,0.45); font-weight: 300; margin-bottom: 1.5rem; }

/* =====================================================
   CLOSE
   ===================================================== */
.close { padding: 13rem 5%; text-align: center; position: relative; overflow: hidden; background: var(--cream); }
.close__bg { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-family: var(--serif-sc); font-size: clamp(7rem,20vw,22rem); font-weight: 700; color: transparent; -webkit-text-stroke: 1px var(--moss-border); user-select: none; pointer-events: none; white-space: nowrap; line-height: 1; }
.close__content { position: relative; z-index: 1; }
.close__headline { font-family: var(--serif); font-size: clamp(2.8rem,5.5vw,5.5rem); font-weight: 400; line-height: 1.08; letter-spacing: -0.03em; color: var(--moss); margin-bottom: 1.5rem; }
.close__headline em { font-style: italic; color: var(--clay); }
.close__body { font-size: 1rem; line-height: 1.9; color: var(--bark-muted); font-weight: 300; max-width: 560px; margin: 0 auto 4rem; }
.close__ctas { display: flex; align-items: center; justify-content: center; gap: 1.5rem; flex-wrap: wrap; margin-bottom: 2rem; }
.close__note { font-size: 0.68rem; color: var(--wheat-muted); letter-spacing: 0.1em; }

/* =====================================================
   BLOG INDEX
   ===================================================== */
.site-header { background: var(--color-bg-card); border-bottom: 1px solid var(--color-border); padding: 0 5%; }
.site-header__inner { max-width: 1200px; margin: 0 auto; height: 76px; display: flex; align-items: center; justify-content: space-between; }
.site-logo { font-family: var(--font-heading); font-size: 1.3rem; font-weight: 600; color: var(--color-text-primary); letter-spacing: -0.02em; text-decoration: none; }
.site-logo span { color: var(--color-accent); }
.site-nav { display: flex; gap: 2.4rem; align-items: center; }
.site-nav__link { font-size: 0.8rem; font-weight: 500; color: var(--color-text-secondary); text-decoration: none; transition: color 0.25s; letter-spacing: 0.04em; }
.site-nav__link:hover,.site-nav__link--active { color: var(--color-accent); }
.site-nav__cta { background: var(--color-accent); color: #fff; padding: 0.65rem 1.5rem; border-radius: 100px; font-size: 0.75rem; font-weight: 600; text-decoration: none; transition: all 0.3s; }
.site-nav__cta:hover { background: var(--color-accent-hover); transform: translateY(-1px); }
.category-hero { background: var(--color-bg-hero); padding: 7rem 0 5rem; position: relative; overflow: hidden; }
.category-hero::before { content: ''; position: absolute; top: -60%; right: -20%; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(91,31,107,.05) 0%,transparent 70%); pointer-events: none; }
.category-hero__title { font-family: var(--font-heading); font-size: 3rem; font-weight: 700; line-height: 1.15; color: var(--color-text-primary); max-width: 720px; margin-bottom: 1.5rem; letter-spacing: -.02em; }
.category-hero__description { font-size: 1.1rem; line-height: 1.75; color: var(--color-text-secondary); max-width: 580px; margin-bottom: 3rem; }
.category-hero__meta { display: flex; align-items: center; gap: 3rem; padding-top: 2rem; border-top: 1px solid var(--color-border); flex-wrap: wrap; }
.category-hero__meta-value { font-size: 1.1rem; font-weight: 700; color: var(--color-text-primary); font-family: var(--font-heading); }
.category-hero__meta-label { font-size: .72rem; color: var(--color-text-tertiary); text-transform: uppercase; letter-spacing: .1em; font-weight: 500; }
.blog-section { padding: 5rem 0; background: var(--color-bg); }
.blog-section--alt { background: var(--color-bg-alt); }
.section-header { margin-bottom: 4rem; }
.section-eyebrow { font-size: .75rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--color-accent); display: block; margin-bottom: .75rem; }
.section-title-blog { font-family: var(--font-heading); font-size: 2rem; font-weight: 600; line-height: 1.2; color: var(--color-text-primary); margin-bottom: 1rem; }
.section-title { font-family: var(--font-heading); font-size: 2rem; font-weight: 600; line-height: 1.2; color: var(--color-text-primary); }
.section-subtitle { font-size: 1rem; color: var(--color-text-secondary); max-width: 560px; line-height: 1.7; }
.section-divider { width: 48px; height: 2px; background: var(--color-accent-light); border: none; margin-top: 1.5rem; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 5%; }
.section { padding: 5rem 0; background: var(--color-bg); }
.section--alt  { background: var(--color-bg-alt); }
.section--dark { background: var(--color-cta-bg); }
.section--warm { background: var(--color-bg-warm); }

.featured-article-blog { display: grid; grid-template-columns: 1fr 1fr; background: var(--color-bg-card); border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-lg); transition: box-shadow .35s,transform .35s; }
.featured-article-blog:hover { box-shadow: var(--shadow-xl); transform: translateY(-3px); }
.featured-article__image { position: relative; overflow: hidden; min-height: 420px; }
.featured-article__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.featured-article-blog:hover .featured-article__image img { transform: scale(1.03); }
.featured-article__badge { position: absolute; top: 1.5rem; left: 1.5rem; background: var(--color-badge-bg); color: var(--color-badge-text); font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: .4rem .9rem; border-radius: var(--radius-sm); }
.featured-article__content { padding: 4rem; display: flex; flex-direction: column; justify-content: center; }
.featured-article__tag { font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: var(--color-accent); margin-bottom: 1rem; }
.featured-article__title-blog { font-family: var(--font-heading); font-size: 1.8rem; font-weight: 600; line-height: 1.3; color: var(--color-text-primary); margin-bottom: 1.5rem; }
.featured-article__excerpt { font-size: .98rem; line-height: 1.75; color: var(--color-text-secondary); margin-bottom: 2rem; }
.featured-article__author { display: flex; align-items: center; gap: .75rem; }
.featured-article__author-avatar { width: 40px; height: 40px; border-radius: 50%; background: var(--color-bg-warm); display: flex; align-items: center; justify-content: center; font-size: .78rem; font-weight: 700; color: var(--color-accent); }
.featured-article__author-name { font-size: .88rem; font-weight: 600; color: var(--color-text-primary); }
.featured-article__author-role { font-size: .75rem; color: var(--color-text-tertiary); }
.featured-article__details { display: flex; gap: 1.5rem; font-size: .8rem; color: var(--color-text-tertiary); margin-top: .5rem; }
.topic-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; }
.topic-card { background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 2rem; transition: all .35s; display: block; position: relative; overflow: hidden; }
.topic-card::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: var(--color-accent); transform: scaleX(0); transform-origin: left; transition: transform .35s; }
.topic-card:hover { border-color: var(--color-accent-light); box-shadow: var(--shadow-md); transform: translateY(-2px); }
.topic-card:hover::after { transform: scaleX(1); }
.topic-card__icon { width: 44px; height: 44px; border-radius: var(--radius-md); background: var(--color-bg-warm); display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; font-size: 1.2rem; }
.topic-card__title { font-family: var(--font-heading); font-size: 1.1rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: .5rem; }
.topic-card__description { font-size: .88rem; color: var(--color-text-secondary); line-height: 1.65; margin-bottom: 1rem; }
.topic-card__count { font-size: .72rem; font-weight: 600; color: var(--color-accent); text-transform: uppercase; letter-spacing: .1em; }
.filter-bar { background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 1.5rem 2rem; display: flex; align-items: center; gap: 2rem; margin-bottom: 4rem; flex-wrap: wrap; }
.filter-bar__label { font-size: .78rem; font-weight: 600; color: var(--color-text-tertiary); text-transform: uppercase; letter-spacing: .1em; white-space: nowrap; }
.filter-bar__group { display: flex; gap: .75rem; flex-wrap: wrap; }
.filter-btn { font-family: var(--font-body); font-size: .82rem; font-weight: 500; color: var(--color-text-secondary); background: var(--color-bg-alt); border: 1px solid transparent; border-radius: var(--radius-sm); padding: .5rem 1.1rem; cursor: pointer; transition: all .2s; text-decoration: none; }
.filter-btn:hover { background: var(--color-bg-warm); border-color: var(--color-border); color: var(--color-text-primary); }
.filter-btn--active { background: var(--color-cta-bg); color: var(--color-text-inverse); border-color: var(--color-cta-bg); }
.articles-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 2rem; }
.article-card { background: var(--color-bg-card); border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-sm); border: 1px solid var(--color-border-light); transition: all .35s; display: block; }
.article-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-4px); border-color: var(--color-border); }
.article-card__image { position: relative; height: 220px; overflow: hidden; }
.article-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.article-card:hover .article-card__image img { transform: scale(1.05); }
.article-card__tag { position: absolute; top: 1rem; left: 1rem; background: var(--color-tag-bg); color: var(--color-tag-text); font-size: .7rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; padding: .3rem .7rem; border-radius: var(--radius-sm); }
.article-card__body { padding: 1.8rem 2rem 2rem; }
.article-card__title { font-family: var(--font-heading); font-size: 1.15rem; font-weight: 600; line-height: 1.35; color: var(--color-text-primary); margin-bottom: .75rem; }
.article-card__excerpt { font-size: .9rem; line-height: 1.65; color: var(--color-text-secondary); margin-bottom: 1.5rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.article-card__meta { display: flex; align-items: center; justify-content: space-between; font-size: .78rem; color: var(--color-text-tertiary); padding-top: 1rem; border-top: 1px solid var(--color-border-light); }
.article-card__author-name { font-weight: 600; color: var(--color-text-secondary); }
.most-read-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1.5rem; }
.most-read-card { background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 2rem; transition: all .35s; display: block; }
.most-read-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); border-color: var(--color-accent-light); }
.most-read-card__rank { font-family: var(--font-heading); font-size: 2.2rem; font-weight: 700; color: var(--color-border); line-height: 1; margin-bottom: 1rem; }
.most-read-card__title { font-family: var(--font-heading); font-size: 1rem; font-weight: 600; line-height: 1.4; color: var(--color-text-primary); margin-bottom: .5rem; }
.most-read-card__meta { font-size: .78rem; color: var(--color-text-tertiary); }
.contributors-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 2rem; }
.contributor-card { text-align: center; padding: 3rem 1.5rem; background: var(--color-bg-card); border-radius: var(--radius-lg); border: 1px solid var(--color-border-light); transition: all .35s; }
.contributor-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.contributor-card__avatar { width: 80px; height: 80px; border-radius: 50%; background: var(--color-bg-warm); margin: 0 auto 1rem; display: flex; align-items: center; justify-content: center; font-family: var(--font-heading); font-size: 1.4rem; font-weight: 700; color: var(--color-accent); }
.contributor-card__name { font-family: var(--font-heading); font-size: 1.1rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 4px; }
.contributor-card__specialty { font-size: .88rem; color: var(--color-text-secondary); margin-bottom: 1rem; }
.contributor-card__articles { font-size: .75rem; font-weight: 600; color: var(--color-accent); text-transform: uppercase; letter-spacing: .08em; }
.newsletter { text-align: center; max-width: 600px; margin: 0 auto; }
.newsletter__title { font-family: var(--font-heading); font-size: 2.2rem; font-weight: 700; color: var(--color-text-inverse); margin-bottom: 1rem; }
.newsletter__description { font-size: 1rem; color: rgba(250,249,247,.7); margin-bottom: 3rem; line-height: 1.7; }
.newsletter__form { display: flex; gap: .75rem; max-width: 460px; margin: 0 auto; }
.newsletter__input { flex: 1; font-family: var(--font-body); font-size: .92rem; padding: .9rem 1.2rem; border: 1px solid rgba(250,249,247,.15); border-radius: var(--radius-sm); background: rgba(250,249,247,.08); color: var(--color-text-inverse); outline: none; }
.newsletter__input::placeholder { color: rgba(250,249,247,.4); }
.newsletter__submit { font-family: var(--font-body); font-size: .88rem; font-weight: 600; color: var(--color-cta-bg); background: var(--color-bg); border: none; border-radius: var(--radius-sm); padding: .9rem 1.6rem; cursor: pointer; white-space: nowrap; transition: all .2s; }
.newsletter__submit:hover { background: var(--color-bg-warm); }
.newsletter__trust { margin-top: 1.5rem; font-size: .78rem; color: rgba(250,249,247,.4); }
.consultation { text-align: center; max-width: 640px; margin: 0 auto; }
.consultation__label { display: inline-block; font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: var(--color-accent); margin-bottom: 1rem; }
.consultation__title { font-family: var(--font-heading); font-size: 2rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 1rem; }
.consultation__description { font-size: 1rem; line-height: 1.7; color: var(--color-text-secondary); margin-bottom: 2.5rem; }
.consultation__btn { display: inline-block; padding: 1rem 2.4rem; background: var(--color-accent); color: #fff; font-size: .9rem; font-weight: 600; border-radius: var(--radius-sm); transition: all .25s; text-decoration: none; }
.consultation__btn:hover { background: var(--color-accent-hover); transform: translateY(-1px); box-shadow: var(--shadow-md); }
.consultation__note { margin-top: 1.5rem; font-size: .8rem; color: var(--color-text-tertiary); }
.site-footer { background: var(--color-bg-card); border-top: 1px solid var(--color-border); padding: 2rem 0; }
.site-footer__inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
.site-footer__copy { font-size: .82rem; color: var(--color-text-tertiary); }
.site-footer__links { display: flex; gap: 2rem; }
.site-footer__link { font-size: .82rem; color: var(--color-text-tertiary); text-decoration: none; transition: color .2s; }
.site-footer__link:hover { color: var(--color-text-primary); }

/* =====================================================
   SINGLE POST
   ===================================================== */
.post-site-header { background: var(--color-bg-card); border-bottom: 1px solid var(--color-border); position: sticky; top: 0; z-index: 100; }
.post-header-inner { max-width: 1200px; margin: 0 auto; padding: 0 5%; height: 76px; display: flex; align-items: center; justify-content: space-between; }
.post-logo { font-family: var(--font-heading); font-size: 1.3rem; font-weight: 600; color: var(--color-text-primary); letter-spacing: -.02em; text-decoration: none; }
.post-logo span { color: var(--color-accent); }
.post-nav { display: flex; gap: 2.4rem; align-items: center; }
.post-nav a { font-size: .8rem; font-weight: 500; color: var(--color-text-secondary); text-decoration: none; }
.post-nav a:hover { color: var(--color-accent); }
.article-hero-wp { background: var(--color-bg-card); border-bottom: 1px solid var(--color-border-light); }
.article-hero-inner-wp { max-width: 900px; margin: 0 auto; padding: 72px 5% 56px; text-align: center; }
.article-category-label { display: inline-block; font-size: .78rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--color-accent); margin-bottom: 24px; padding: 7px 18px; border: 1px solid var(--color-border); border-radius: 100px; }
.article-title-wp { font-family: var(--font-heading); font-size: 3rem; font-weight: 600; line-height: 1.15; letter-spacing: -.025em; color: var(--color-text-primary); margin-bottom: 20px; }
.article-subtitle-wp { font-size: 1.15rem; line-height: 1.7; color: var(--color-text-secondary); max-width: 680px; margin: 0 auto 40px; font-weight: 300; }
.article-meta-row { display: flex; align-items: center; justify-content: center; gap: 28px; flex-wrap: wrap; margin-bottom: 28px; }
.author-block-wp { display: flex; align-items: center; gap: 12px; }
.author-avatar-wp { width: 48px; height: 48px; border-radius: 50%; background: linear-gradient(135deg,var(--color-bg-warm),var(--color-border)); display: flex; align-items: center; justify-content: center; font-family: var(--font-heading); font-size: 1rem; font-weight: 600; color: var(--color-accent); }
.author-info-wp { display: flex; flex-direction: column; text-align: left; }
.author-name-wp { font-size: .92rem; font-weight: 600; color: var(--color-text-primary); }
.author-title-wp { font-size: .8rem; color: var(--color-text-tertiary); }
.meta-divider-v { width: 1px; height: 32px; background: var(--color-border); }
.meta-details-wp { display: flex; gap: 20px; }
.meta-item-wp { display: inline-flex; align-items: center; gap: 6px; font-size: .85rem; color: var(--color-text-tertiary); }
.article-badges { display: flex; justify-content: center; gap: 12px; }
.badge-wp { display: inline-flex; align-items: center; gap: 6px; font-size: .78rem; font-weight: 600; padding: 8px 18px; border-radius: 100px; }
.badge-evidence { background: var(--color-bg-alt); color: var(--color-text-secondary); }
.badge-expert   { background: var(--color-badge-bg); color: var(--color-badge-text); }
.hero-image-section { padding: 0 5%; max-width: 1080px; margin: -20px auto 0; position: relative; z-index: 1; }
.hero-image-wrap { border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-lg); }
.hero-image-wp { width: 100%; height: 480px; object-fit: cover; display: block; }
.image-caption-wp { padding: 16px 24px; font-size: .85rem; color: var(--color-text-tertiary); background: var(--color-bg-card); font-style: italic; border-top: 1px solid var(--color-border-light); }
.summary-section-wp { max-width: 900px; margin: 56px auto 0; padding: 0 5%; }
.summary-box { background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: 44px 48px; box-shadow: var(--shadow-md); }
.summary-heading { font-family: var(--font-heading); font-size: 1.4rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 28px; padding-bottom: 16px; border-bottom: 2px solid var(--color-accent); display: inline-block; }
.summary-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 32px; }
.summary-label { display: block; font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; color: var(--color-accent); margin-bottom: 10px; }
.summary-item p { font-size: .95rem; line-height: 1.65; color: var(--color-text-secondary); }
.article-layout-wp { max-width: 1200px; margin: 64px auto 0; padding: 0 5%; display: grid; grid-template-columns: 250px 1fr; gap: 64px; }
.toc-sidebar { position: relative; }
.toc-nav { position: sticky; top: 100px; }
.toc-heading { display: block; font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: var(--color-text-tertiary); margin-bottom: 20px; padding-bottom: 12px; border-bottom: 1px solid var(--color-border); }
.toc-link { display: block; font-size: .9rem; color: var(--color-text-tertiary); padding: 8px 0 8px 16px; border-left: 2px solid transparent; transition: all .25s; }
.toc-link:hover { color: var(--color-accent); border-left-color: var(--color-accent); padding-left: 20px; }
.article-body-wp { max-width: 720px; }
.article-section-wp { margin-bottom: 64px; }
.article-section-wp h2 { font-family: var(--font-heading); font-size: 1.9rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 24px; line-height: 1.25; }
.article-section-wp h3 { font-family: var(--font-heading); font-size: 1.35rem; font-weight: 600; color: var(--color-text-primary); margin-top: 40px; margin-bottom: 16px; }
.article-section-wp p { font-size: 1.05rem; line-height: 1.85; color: var(--color-text-secondary); margin-bottom: 20px; }
.pull-quote { margin: 44px 0; padding: 32px 36px; border-left: 3px solid var(--color-accent); background: var(--color-bg-warm); border-radius: 0 var(--radius-md) var(--radius-md) 0; }
.pull-quote p { font-family: var(--font-heading); font-size: 1.25rem; font-style: italic; line-height: 1.6; color: var(--color-text-primary); margin-bottom: 12px; }
.pull-quote cite { font-size: .85rem; font-style: normal; color: var(--color-text-tertiary); font-weight: 500; }
.dual-perspectives { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 40px 0; }
.perspective-card { padding: 32px; border-radius: var(--radius-md); border: 1px solid var(--color-border); }
.perspective-nutrition { background: #f3edf8; border-color: rgba(91,31,107,.12); }
.perspective-behaviour { background: #f5f2f8; border-color: rgba(91,31,107,.1); }
.perspective-label { display: inline-block; font-size: .7rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; margin-bottom: 14px; padding: 4px 12px; border-radius: 100px; }
.perspective-nutrition .perspective-label { background: rgba(91,31,107,.1); color: #5B1F6B; }
.perspective-behaviour .perspective-label { background: rgba(126,200,26,.15); color: #4a7010; }
.perspective-card h3 { font-family: var(--font-heading); font-size: 1.15rem; font-weight: 600; margin-bottom: 14px; color: var(--color-text-primary); }
.perspective-card p { font-size: .95rem; line-height: 1.7; color: var(--color-text-secondary); }
.action-panel { margin: 44px 0; padding: 44px; background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); }
.action-panel-title { font-family: var(--font-heading); font-size: 1.45rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 8px; }
.action-panel-intro { font-size: .98rem; color: var(--color-text-tertiary); margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid var(--color-border-light); }
.action-steps { display: flex; flex-direction: column; gap: 28px; }
.action-step { display: flex; gap: 24px; align-items: flex-start; }
.step-number { font-family: var(--font-heading); font-size: 1.6rem; font-weight: 600; color: var(--color-accent-light); flex-shrink: 0; width: 44px; line-height: 1; }
.step-content h4 { font-size: 1rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 6px; }
.step-content p { font-size: .95rem; line-height: 1.65; color: var(--color-text-secondary); }
.specialist-quote { margin: 48px 0; padding: 40px 44px; background: var(--color-bg-warm); border-radius: var(--radius-lg); position: relative; }
.specialist-quote-mark { font-family: var(--font-heading); font-size: 5rem; color: var(--color-accent-light); opacity: .25; line-height: 1; position: absolute; top: 16px; left: 32px; }
.specialist-quote-text { font-family: var(--font-heading); font-size: 1.2rem; font-style: italic; line-height: 1.7; color: var(--color-text-primary); margin-bottom: 24px; position: relative; z-index: 1; }
.specialist-quote-author { display: flex; align-items: center; gap: 14px; }
.specialist-avatar { width: 52px; height: 52px; border-radius: 50%; background: linear-gradient(135deg,var(--color-border),var(--color-accent-light)); display: flex; align-items: center; justify-content: center; font-family: var(--font-heading); font-size: 1rem; font-weight: 600; color: #fff; }
.specialist-name { display: block; font-size: .92rem; font-weight: 600; color: var(--color-text-primary); }
.specialist-role-text { font-size: .8rem; color: var(--color-text-tertiary); }
.takeaways-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 8px; }
.takeaway-card { padding: 28px; background: var(--color-bg-card); border: 1px solid var(--color-border); border-radius: var(--radius-md); display: flex; gap: 18px; align-items: flex-start; transition: box-shadow .3s,transform .3s; }
.takeaway-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.takeaway-number { font-family: var(--font-heading); font-size: 1.5rem; font-weight: 600; color: var(--color-accent-light); flex-shrink: 0; line-height: 1; }
.takeaway-card p { font-size: .95rem; line-height: 1.65; color: var(--color-text-secondary); }
.trust-footer-wp { margin-top: 64px; padding: 40px; background: var(--color-bg-warm); border-radius: var(--radius-lg); }
.trust-footer-wp h3 { font-family: var(--font-heading); font-size: 1.25rem; font-weight: 600; margin-bottom: 24px; color: var(--color-text-primary); }
.trust-items { display: flex; flex-direction: column; gap: 20px; }
.trust-item { display: flex; gap: 16px; align-items: flex-start; }
.trust-item svg { flex-shrink: 0; color: var(--color-accent); margin-top: 2px; }
.trust-item strong { display: block; font-size: .92rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 4px; }
.trust-item p { font-size: .88rem; line-height: 1.6; color: var(--color-text-tertiary); margin: 0; }
.related-section-wp { padding: 80px 0; background: var(--color-bg-card); margin-top: 80px; border-top: 1px solid var(--color-border-light); }
.related-inner { max-width: 1200px; margin: 0 auto; padding: 0 5%; }
.section-title-related { font-family: var(--font-heading); font-size: 1.9rem; font-weight: 600; color: var(--color-text-primary); text-align: center; margin-bottom: 48px; }
.related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }
.related-card { background: var(--color-bg); border-radius: var(--radius-md); overflow: hidden; border: 1px solid var(--color-border-light); transition: box-shadow .3s,transform .3s; display: block; }
.related-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-4px); }
.related-card-image { height: 200px; overflow: hidden; }
.related-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.related-card:hover .related-card-image img { transform: scale(1.04); }
.related-card-body { padding: 28px; }
.related-tag { display: inline-block; font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--color-accent); margin-bottom: 12px; }
.related-card-body h3 { font-family: var(--font-heading); font-size: 1.15rem; font-weight: 600; line-height: 1.35; color: var(--color-text-primary); margin-bottom: 10px; }
.related-card-body p { font-size: .9rem; line-height: 1.6; color: var(--color-text-tertiary); margin-bottom: 16px; }
.related-card-meta { display: flex; justify-content: space-between; font-size: .8rem; color: var(--color-text-tertiary); padding-top: 14px; border-top: 1px solid var(--color-border-light); }
.resource-section-wp { padding: 0 0 80px; background: var(--color-bg-card); }
.resource-inner { max-width: 900px; margin: 0 auto; padding: 0 5%; }
.resource-box { display: grid; grid-template-columns: 1fr auto; gap: 48px; align-items: center; padding: 48px 52px; background: var(--color-bg-warm); border: 1px solid var(--color-border); border-radius: var(--radius-lg); }
.resource-label { display: inline-block; font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; color: var(--color-accent); margin-bottom: 12px; }
.resource-content h2 { font-family: var(--font-heading); font-size: 1.55rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 12px; }
.resource-content p { font-size: .98rem; line-height: 1.65; color: var(--color-text-secondary); margin-bottom: 24px; }
.resource-btn { display: inline-block; padding: 14px 32px; background: var(--color-accent); color: #fff; font-size: .9rem; font-weight: 600; border-radius: var(--radius-sm); transition: all .25s; text-decoration: none; }
.resource-btn:hover { background: var(--color-accent-hover); transform: translateY(-1px); }
.resource-visual { display: flex; flex-direction: column; gap: 8px; align-items: center; padding: 32px 28px; background: var(--color-bg-card); border-radius: var(--radius-md); border: 1px solid var(--color-border); min-width: 120px; }
.resource-visual span { font-size: .82rem; color: var(--color-text-tertiary); font-weight: 500; }
.resource-visual span:first-child { font-size: 1.1rem; font-weight: 700; color: var(--color-accent); }
.post-cta-section { padding: 80px 5%; text-align: center; background: var(--color-bg-warm); border-top: 1px solid var(--color-border-light); }
.post-cta-inner { max-width: 640px; margin: 0 auto; }
.post-cta-label { display: inline-block; font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: var(--color-accent); margin-bottom: 16px; }
.post-cta-section h2 { font-family: var(--font-heading); font-size: 2rem; font-weight: 600; color: var(--color-text-primary); margin-bottom: 16px; }
.post-cta-section p { font-size: 1rem; line-height: 1.7; color: var(--color-text-secondary); margin-bottom: 28px; }
.post-cta-features { display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; margin-bottom: 36px; }
.post-cta-features span { font-size: .85rem; color: var(--color-text-tertiary); padding: 7px 18px; background: var(--color-bg-card); border-radius: 100px; border: 1px solid var(--color-border); }
.post-cta-btn { display: inline-block; padding: 16px 40px; background: var(--color-accent); color: #fff; font-size: .98rem; font-weight: 600; border-radius: var(--radius-sm); transition: all .25s; text-decoration: none; }
.post-cta-btn:hover { background: var(--color-accent-hover); transform: translateY(-2px); box-shadow: var(--shadow-md); }
.post-footer { background: var(--color-text-primary); color: rgba(255,255,255,.7); padding: 64px 5% 32px; }
.post-footer__inner { max-width: 1200px; margin: 0 auto; }
.post-footer__brand { margin-bottom: 40px; }
.post-footer__logo { font-family: var(--font-heading); font-size: 1.3rem; font-weight: 600; color: #fff; }
.post-footer__logo span { color: var(--clay); }
.post-footer__brand p { font-size: .9rem; margin-top: 10px; max-width: 360px; line-height: 1.6; }
.post-footer__links { display: grid; grid-template-columns: repeat(3,auto); gap: 64px; margin-bottom: 48px; }
.post-footer__col h4 { font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; color: rgba(255,255,255,.4); margin-bottom: 16px; }
.post-footer__col a { display: block; font-size: .9rem; color: rgba(255,255,255,.65); padding: 5px 0; transition: color .2s; text-decoration: none; }
.post-footer__col a:hover { color: var(--clay); }
.post-footer__bottom { padding-top: 24px; border-top: 1px solid rgba(255,255,255,.1); }
.post-footer__bottom p { font-size: .8rem; color: rgba(255,255,255,.35); }

/* =====================================================
   GLOBAL FOOTER (homepage style)
   ===================================================== */
.foot { background: var(--bark); padding: 4rem 5%; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; }
.foot__brand-main { font-family: var(--serif-sc); font-size: 0.95rem; color: var(--wheat-deep); letter-spacing: 0.06em; }
.foot__brand-sub  { font-size: 0.56rem; letter-spacing: 0.28em; text-transform: uppercase; color: var(--bark-muted); margin-top: 0.2rem; }
.foot__links { display: flex; gap: 2rem; justify-content: center; }
.foot__link { font-size: 0.65rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bark-muted); transition: color 0.3s; text-decoration: none; }
.foot__link:hover { color: var(--clay); }
.foot__copy { font-size: 0.65rem; letter-spacing: 0.1em; color: var(--bark-muted); text-align: right; }

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width: 1100px) {
  .hero { grid-template-columns: 1fr; }
  .hero__right { padding: 3rem 5% 8rem; }
  .problem__cards { grid-template-columns: 1fr 1fr; }
  .method__header { grid-template-columns: 1fr; gap: 3rem; }
  .method__steps { grid-template-columns: 1fr; }
  .natural { grid-template-columns: 1fr; gap: 5rem; }
  .paths__grid { grid-template-columns: 1fr; }
  .different { grid-template-columns: 1fr; }
  .story { grid-template-columns: 1fr; gap: 5rem; }
  .story__journey { display: none; }
  .education__pads { grid-template-columns: 1fr; }
  .outcomes__header { grid-template-columns: 1fr; }
  .outcome-row { grid-template-columns: 6px 50px 1fr; }
  .outcome-row__tag { display: none; }
  .cta-section__inner { grid-template-columns: 1fr; gap: 5rem; }
  .foot { grid-template-columns: 1fr; text-align: center; }
  .foot__copy { text-align: center; }
  .topic-grid,.articles-grid,.related-grid,.dual-perspectives,.summary-grid { grid-template-columns: repeat(2,1fr); }
  .most-read-grid,.contributors-grid { grid-template-columns: repeat(2,1fr); }
  .featured-article-blog,.resource-box { grid-template-columns: 1fr; }
  .featured-article__image { min-height: 300px; }
  .article-layout-wp { grid-template-columns: 1fr; gap: 0; }
  .toc-sidebar { display: none; }
  .post-footer__links { grid-template-columns: 1fr; gap: 32px; }
  .site-footer-global { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
  .nav__links,.site-nav-global__links { display: none; }
  .site-nav-global__burger { display: flex; }
  .problem__cards { grid-template-columns: 1fr; }
  .trust { display: block; }
  .trust__item { display: flex; border-right: none; border-bottom: 1px solid var(--moss-border); width: 100%; }
  .trust__item:last-child { border-bottom: none; }
  .close__ctas { flex-direction: column; align-items: center; }
  .education__pads { grid-template-columns: 1fr; }
  .category-hero__title,.article-title-wp { font-size: 2.2rem; }
  .topic-grid,.articles-grid,.related-grid,.most-read-grid,.contributors-grid,.takeaways-grid { grid-template-columns: 1fr; }
  .newsletter__form { flex-direction: column; }
  .article-meta-row { flex-direction: column; gap: 16px; }
  .meta-divider-v { display: none; }
  .hero-image-wp { height: 280px; }
  .post-nav { display: none; }
  .site-footer-global { grid-template-columns: 1fr; }
  .site-footer-global__bottom { flex-direction: column; text-align: center; }
}

/* =====================================================
   HERO — Full width single column
   ===================================================== */
.hero--full {
  display: block;
  min-height: 90vh;
  padding: 10rem 5% 7rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero--full .hero__vein svg {
  position: absolute;
  right: -5%; top: -10%;
  width: 55%; height: 120%;
  opacity: 0.05;
}
.hero__center {
  position: relative;
  z-index: 1;
  max-width: 900px;
  text-align: center;
  margin: 0 auto;
}
.hero--full .hero__eyebrow {
  justify-content: center;
}
.hero--full .hero__h1 {
  font-size: clamp(2.8rem, 6vw, 5.5rem);
  margin-bottom: 2rem;
}
.hero--full .hero__sub {
  font-size: 1.05rem;
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.2rem;
}
.hero--full .hero__attribution {
  margin-bottom: 3rem;
}
.hero--full .hero__btns {
  justify-content: center;
}
.hero--full .hero__free {
  text-align: center;
}

/* =====================================================
   FEATURE CARDS — after trust strip
   ===================================================== */
.features-section {
  padding: 7rem 5%;
  background: var(--cream);
  border-bottom: 1px solid var(--moss-border);
}
.features-section__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.features-section__header {
  text-align: center;
  max-width: 600px;
  margin: 0 auto 5rem;
}
.features-section__title {
  font-family: var(--serif);
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -0.02em;
  color: var(--moss);
  margin-top: 0.5rem;
}
.features-section__title em { font-style: italic; color: var(--clay); }
.features-section__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
.feature-card {
  background: var(--white);
  border: 1px solid var(--moss-border);
  border-radius: 12px 4px 12px 4px;
  padding: 2.5rem 2rem;
  position: relative;
  overflow: hidden;
  transition: transform 0.45s var(--ease), box-shadow 0.45s var(--ease), border-color 0.4s;
}
.feature-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 50px rgba(91,31,107,0.12);
  border-color: var(--moss-lift);
}
.feature-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: var(--clay);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s var(--ease);
}
.feature-card:hover::before { transform: scaleX(1); }
.feature-card__icon {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: var(--moss-soft);
  border: 1px solid var(--moss-border);
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 1.2rem;
  transition: background 0.4s, border-color 0.4s;
}
.feature-card:hover .feature-card__icon {
  background: var(--clay-pale);
  border-color: var(--clay-border);
}
.feature-card__icon svg {
  width: 20px; height: 20px;
  stroke: var(--moss);
  transition: stroke 0.4s;
}
.feature-card:hover .feature-card__icon svg { stroke: var(--clay); }
.feature-card__num {
  font-family: var(--serif);
  font-size: 0.7rem;
  font-style: italic;
  color: var(--clay);
  margin-bottom: 0.5rem;
  display: block;
  letter-spacing: 0.1em;
}
.feature-card__title {
  font-family: var(--serif);
  font-size: 1.15rem;
  font-weight: 400;
  color: var(--moss);
  margin-bottom: 0.75rem;
  line-height: 1.3;
}
.feature-card__text {
  font-size: 0.85rem;
  line-height: 1.75;
  color: var(--bark-muted);
  font-weight: 300;
}

/* =====================================================
   LOGO — lime green W accent
   ===================================================== */
.site-nav-global__logo-accent {
  color: var(--clay); /* lime green */
  font-style: normal;
}
.site-nav-global__logo-main {
  font-family: var(--serif-sc);
  font-size: 1rem;
  font-weight: 400;
  color: var(--moss);
  letter-spacing: 0.04em;
  line-height: 1.1;
  display: block;
}

/* =====================================================
   SINGLE POST — spacing fixes
   ===================================================== */
.trust-footer-wp {
  margin-top: 48px;
  margin-bottom: 0;
}
.resource-section-wp {
  padding-top: 5rem !important;
}

/* =====================================================
   FLEXIBLE PAGE — padding for global nav
   ===================================================== */
.fp-page-wrap { padding-top: 0; }

/* =====================================================
   RESPONSIVE — feature cards
   ===================================================== */
@media (max-width: 1100px) {
  .features-section__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .features-section__grid { grid-template-columns: 1fr; }
  .hero--full { padding: 8rem 5% 5rem; }
  .hero--full .hero__h1 { font-size: clamp(2.2rem, 8vw, 3.5rem); }
}

/* ═══ FROM page-services.php ═══ */
/* ── Services page ── */
.svc-nav { position: fixed; top:0; left:0; right:0; z-index:900; padding:1.3rem 5%; display:flex; align-items:center; justify-content:space-between; transition:background .5s,box-shadow .5s; }
.svc-nav.scrolled { background:rgba(253,250,244,.95); backdrop-filter:blur(20px); box-shadow:0 1px 0 var(--moss-border); }
.svc-nav__logo { display:flex; flex-direction:column; gap:1px; text-decoration:none; }
.svc-nav__logo-main { font-family:var(--serif-sc); font-size:1rem; font-weight:400; color:var(--moss); letter-spacing:0.06em; }
.svc-nav__logo-sub  { font-size:0.52rem; letter-spacing:0.32em; text-transform:uppercase; color:var(--wheat-muted); }
.svc-nav__links { display:flex; align-items:center; gap:2.2rem; }
.svc-nav__link { font-size:0.68rem; font-weight:400; letter-spacing:0.1em; text-transform:uppercase; color:var(--bark-muted); text-decoration:none; transition:color .3s; }
.svc-nav__link:hover { color:var(--moss); }
.svc-nav__cta { font-size:0.65rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; background:var(--clay); color:#fff; padding:0.65rem 1.6rem; border-radius:100px; text-decoration:none; transition:all .4s var(--ease); }
.svc-nav__cta:hover { background:var(--moss); }

/* Hero */
.svc-hero { min-height: 70vh; background: var(--moss); display: flex; align-items: center; position: relative; overflow: hidden; padding: 10rem 5% 7rem; }
.svc-hero::before { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.025) 1px,transparent 1px); background-size:48px 48px; pointer-events:none; }
.svc-hero::after { content:''; position:absolute; right:-10%; bottom:-30%; width:500px; height:500px; border-radius:50%; border:1px solid rgba(255,255,255,0.04); pointer-events:none; }
.svc-hero__inner { position:relative; z-index:1; max-width:720px; }
.svc-hero__eyebrow { font-size:0.58rem; font-weight:600; letter-spacing:0.38em; text-transform:uppercase; color:var(--clay-light); display:flex; align-items:center; gap:1rem; margin-bottom:2rem; }
.svc-hero__eyebrow::before { content:''; width:24px; height:1px; background:var(--clay); }
.svc-hero__title { font-family:var(--serif); font-size:clamp(2.8rem,5vw,4.5rem); font-weight:400; line-height:1.1; letter-spacing:-0.02em; color:var(--wheat); margin-bottom:1.5rem; }
.svc-hero__title em { font-style:italic; color:var(--clay-light); }
.svc-hero__sub { font-size:1rem; line-height:1.85; color:rgba(245,237,219,.55); font-weight:300; max-width:560px; margin-bottom:3rem; }
.svc-hero__stats { display:flex; gap:3rem; padding-top:2.5rem; border-top:1px solid rgba(255,255,255,.07); }
.svc-hero__stat-num { font-family:var(--serif); font-size:2rem; font-weight:400; color:var(--wheat); line-height:1; }
.svc-hero__stat-label { font-size:0.6rem; letter-spacing:0.2em; text-transform:uppercase; color:rgba(245,237,219,.35); margin-top:0.3rem; }

/* Who it's for strip */
.svc-who { background:var(--wheat-deep); border-bottom:1px solid var(--moss-border); padding:4rem 5%; }
.svc-who__inner { max-width:1100px; margin:0 auto; }
.svc-who__label { font-size:0.6rem; font-weight:600; letter-spacing:0.3em; text-transform:uppercase; color:var(--bark-muted); margin-bottom:2rem; display:block; }
.svc-who__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }
.svc-who__item { display:flex; align-items:center; gap:0.9rem; }
.svc-who__dot { width:8px; height:8px; border-radius:50%; background:var(--clay); flex-shrink:0; }
.svc-who__text { font-size:0.82rem; color:var(--bark-soft); font-weight:300; line-height:1.4; }

/* Programs grid */
.svc-programs { padding:8rem 5%; background:var(--cream); }
.svc-programs__header { max-width:600px; margin-bottom:5rem; }
.svc-programs__eyebrow { font-size:0.58rem; font-weight:600; letter-spacing:0.38em; text-transform:uppercase; color:var(--clay); display:inline-flex; align-items:center; gap:0.9rem; margin-bottom:1.5rem; }
.svc-programs__eyebrow::before { content:''; width:24px; height:1px; background:var(--clay); }
.svc-programs__title { font-family:var(--serif); font-size:clamp(2rem,3.5vw,3rem); font-weight:400; color:var(--moss); line-height:1.18; letter-spacing:-0.02em; }
.svc-programs__title em { font-style:italic; color:var(--clay); }
.svc-programs__sub { font-size:0.9rem; line-height:1.85; color:var(--bark-muted); font-weight:300; margin-top:1.5rem; }
.svc-programs__grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.5rem; }

/* Program card — large, editorial */
.prog-card { background:var(--cream-warm); border:1px solid var(--moss-border); border-radius:4px; overflow:hidden; display:flex; flex-direction:column; transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .4s; }
.prog-card:hover { transform:translateY(-6px); box-shadow:0 24px 60px rgba(45,74,45,.14); border-color:var(--moss-lift); }
.prog-card__top { background:linear-gradient(135deg,var(--moss),var(--moss-lift)); padding:2.5rem 3rem; position:relative; overflow:hidden; display:flex; align-items:flex-start; justify-content:space-between; }
.prog-card__top::after { content:''; position:absolute; right:-20px; bottom:-20px; width:120px; height:120px; border-radius:50%; background:rgba(255,255,255,.04); }
.prog-card__num { font-family:var(--serif); font-size:3rem; font-style:italic; color:rgba(255,255,255,.15); font-weight:400; line-height:1; }
.prog-card__tag { font-size:0.55rem; font-weight:600; letter-spacing:0.22em; text-transform:uppercase; background:rgba(184,92,56,.25); color:var(--clay-light); border:1px solid rgba(184,92,56,.3); padding:0.35rem 0.9rem; border-radius:100px; align-self:flex-start; }
.prog-card__body { padding:3rem; flex:1; }
.prog-card__title { font-family:var(--serif); font-size:1.5rem; font-weight:400; color:var(--moss); margin-bottom:0.75rem; line-height:1.25; }
.prog-card__desc { font-size:0.85rem; line-height:1.75; color:var(--bark-muted); font-weight:300; margin-bottom:2rem; }
.prog-card__points { display:flex; flex-direction:column; gap:0.6rem; margin-bottom:2.5rem; }
.prog-card__point { display:flex; align-items:center; gap:0.9rem; font-size:0.78rem; color:var(--bark-muted); font-weight:300; }
.prog-card__point-dot { width:16px; height:16px; border-radius:50%; background:var(--moss-soft); border:1px solid var(--moss-border); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.prog-card__point-dot svg { width:8px; height:8px; stroke:var(--moss); fill:none; stroke-width:2; }
.prog-card__foot { padding:2rem 3rem; border-top:1px solid var(--moss-border); display:flex; align-items:center; justify-content:space-between; }
.prog-card__link { font-size:0.65rem; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--clay); text-decoration:none; display:flex; align-items:center; gap:0.6rem; transition:gap .4s var(--ease); }
.prog-card:hover .prog-card__link { gap:1.2rem; }
.prog-card__duration { font-size:0.58rem; font-weight:500; letter-spacing:0.18em; text-transform:uppercase; color:var(--bark-muted); background:var(--wheat-deep); padding:0.35rem 0.85rem; border-radius:100px; }

/* Method summary */
.svc-method { background:var(--wheat); padding:8rem 5%; border-top:1px solid var(--moss-border); border-bottom:1px solid var(--moss-border); }
.svc-method__header { display:grid; grid-template-columns:1fr 1fr; gap:6rem; align-items:end; margin-bottom:5rem; }
.svc-method__title { font-family:var(--serif); font-size:clamp(2rem,3.5vw,3rem); font-weight:400; color:var(--moss); line-height:1.18; }
.svc-method__title em { font-style:italic; color:var(--clay); }
.svc-method__intro { font-size:0.9rem; line-height:1.9; color:var(--bark-muted); font-weight:300; }
.svc-method__steps { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--moss-border); }
.svc-method__step { background:var(--cream); padding:3rem; }
.svc-method__step-num { font-family:var(--serif); font-size:1rem; font-style:italic; color:var(--clay); margin-bottom:1rem; display:block; }
.svc-method__step-title { font-family:var(--serif); font-size:1.5rem; font-weight:400; color:var(--moss); margin-bottom:0.75rem; }
.svc-method__step-text { font-size:0.82rem; line-height:1.75; color:var(--bark-muted); font-weight:300; }

/* Guarantee strip */
.svc-guarantee { background:var(--moss); padding:5rem 5%; }
.svc-guarantee__inner { max-width:800px; margin:0 auto; text-align:center; }
.svc-guarantee__title { font-family:var(--serif); font-size:clamp(1.8rem,3vw,2.5rem); font-weight:400; color:var(--wheat); margin-bottom:1rem; }
.svc-guarantee__text { font-size:0.9rem; line-height:1.85; color:rgba(245,237,219,.55); font-weight:300; margin-bottom:2.5rem; max-width:580px; margin-left:auto; margin-right:auto; }
.svc-guarantee__badges { display:flex; justify-content:center; gap:1rem; flex-wrap:wrap; }
.svc-guarantee__badge { font-size:0.62rem; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--moss); background:rgba(245,237,219,.08); border:1px solid rgba(245,237,219,.15); padding:0.6rem 1.4rem; border-radius:100px; }

/* CTA */
.svc-cta { padding:8rem 5%; background:var(--cream); text-align:center; }
.svc-cta__inner { max-width:640px; margin:0 auto; }
.svc-cta__eyebrow { font-size:0.58rem; font-weight:600; letter-spacing:0.38em; text-transform:uppercase; color:var(--clay); display:inline-flex; align-items:center; gap:0.9rem; margin-bottom:1.5rem; }
.svc-cta__eyebrow::before { content:''; width:24px; height:1px; background:var(--clay); }
.svc-cta__title { font-family:var(--serif); font-size:clamp(2rem,4vw,3.5rem); font-weight:400; line-height:1.15; color:var(--moss); margin-bottom:1.2rem; }
.svc-cta__title em { font-style:italic; color:var(--clay); }
.svc-cta__sub { font-size:0.9rem; line-height:1.85; color:var(--bark-muted); font-weight:300; margin-bottom:3rem; }
.svc-cta__note { font-size:0.62rem; color:var(--wheat-muted); letter-spacing:0.1em; margin-top:1.2rem; }

/* Footer */
.svc-foot { background:var(--bark); padding:3rem 5%; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:2rem; }
.svc-foot__brand-main { font-family:var(--serif-sc); font-size:0.9rem; color:var(--wheat-deep); }
.svc-foot__brand-sub  { font-size:0.52rem; letter-spacing:0.28em; text-transform:uppercase; color:var(--bark-muted); margin-top:0.2rem; }
.svc-foot__links { display:flex; gap:2rem; justify-content:center; }
.svc-foot__link { font-size:0.6rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--bark-muted); text-decoration:none; transition:color .3s; }
.svc-foot__link:hover { color:var(--clay-light); }
.svc-foot__copy { font-size:0.6rem; color:var(--bark-muted); text-align:right; }

@media(max-width:1024px) { .svc-programs__grid,.svc-method__steps { grid-template-columns:1fr; } .svc-who__grid { grid-template-columns:repeat(2,1fr); } .svc-method__header { grid-template-columns:1fr; gap:3rem; } }
@media(max-width:768px) { .svc-nav__links { display:none; } .svc-hero__stats { flex-direction:column; gap:1.5rem; } .svc-foot { grid-template-columns:1fr; text-align:center; } .svc-foot__copy { text-align:center; } }

/* ═══ FROM page-subservice.php ═══ */
/* ── Subservice page ── */
.sub-nav { position:fixed; top:0; left:0; right:0; z-index:900; padding:1.3rem 5%; display:flex; align-items:center; justify-content:space-between; transition:background .5s,box-shadow .5s; }
.sub-nav.scrolled { background:rgba(253,250,244,.95); backdrop-filter:blur(20px); box-shadow:0 1px 0 var(--moss-border); }
.sub-nav__logo { display:flex; flex-direction:column; gap:1px; text-decoration:none; }
.sub-nav__logo-main { font-family:var(--serif-sc); font-size:1rem; color:var(--moss); letter-spacing:0.06em; }
.sub-nav__logo-sub  { font-size:0.52rem; letter-spacing:0.32em; text-transform:uppercase; color:var(--wheat-muted); }
.sub-nav__links { display:flex; align-items:center; gap:2rem; }
.sub-nav__link { font-size:0.68rem; font-weight:400; letter-spacing:0.1em; text-transform:uppercase; color:var(--bark-muted); text-decoration:none; transition:color .3s; }
.sub-nav__link:hover { color:var(--moss); }
.sub-nav__cta { font-size:0.65rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; background:var(--clay); color:#fff; padding:0.65rem 1.6rem; border-radius:100px; text-decoration:none; transition:all .4s var(--ease); }
.sub-nav__cta:hover { background:var(--moss); }

/* Hero */
.sub-hero { min-height: 80vh; background: var(--moss); display:flex; align-items:center; position:relative; overflow:hidden; padding:11rem 5% 7rem; }
.sub-hero__bg { position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size:48px 48px; pointer-events:none; }
.sub-hero__ring { position:absolute; right:-10%; bottom:-20%; width:600px; height:600px; border-radius:50%; border:1px solid rgba(255,255,255,.04); pointer-events:none; }
.sub-hero__inner { position:relative; z-index:1; max-width:800px; }
.sub-hero__back { display:inline-flex; align-items:center; gap:0.6rem; font-size:0.62rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:rgba(245,237,219,.35); text-decoration:none; margin-bottom:3rem; transition:color .3s; }
.sub-hero__back:hover { color:var(--clay-light); }
.sub-hero__tag { font-size:0.58rem; font-weight:600; letter-spacing:0.32em; text-transform:uppercase; color:var(--clay-light); background:rgba(184,92,56,.15); border:1px solid rgba(184,92,56,.25); padding:0.45rem 1.1rem; border-radius:100px; display:inline-block; margin-bottom:2rem; }
.sub-hero__title { font-family:var(--serif); font-size:clamp(2.5rem,5vw,4.5rem); font-weight:400; line-height:1.1; letter-spacing:-0.02em; color:var(--wheat); margin-bottom:1.5rem; }
.sub-hero__title em { font-style:italic; color:var(--clay-light); }
.sub-hero__sub { font-size:1rem; line-height:1.85; color:rgba(245,237,219,.55); font-weight:300; max-width:580px; margin-bottom:3rem; }
.sub-hero__meta { display:flex; gap:2.5rem; padding-top:2.5rem; border-top:1px solid rgba(255,255,255,.07); flex-wrap:wrap; }
.sub-hero__meta-item { display:flex; flex-direction:column; gap:0.25rem; }
.sub-hero__meta-val { font-family:var(--serif); font-size:1.1rem; font-weight:400; color:var(--wheat); }
.sub-hero__meta-label { font-size:0.55rem; letter-spacing:0.2em; text-transform:uppercase; color:rgba(245,237,219,.35); }

/* Who section */
.sub-who { padding:7rem 5%; background:var(--cream); border-bottom:1px solid var(--moss-border); display:grid; grid-template-columns:1fr 1fr; gap:8rem; align-items:center; }
.sub-who__title { font-family:var(--serif); font-size:clamp(1.8rem,3vw,2.8rem); font-weight:400; color:var(--moss); line-height:1.2; margin-bottom:1.5rem; }
.sub-who__title em { font-style:italic; color:var(--clay); }
.sub-who__text { font-size:0.9rem; line-height:1.9; color:var(--bark-muted); font-weight:300; }
.sub-who__signs { display:flex; flex-direction:column; gap:0.8rem; }
.sub-who__sign { display:flex; align-items:center; gap:1.2rem; padding:1rem 1.5rem; background:var(--cream-warm); border:1px solid var(--moss-border); border-radius:100px; font-size:0.82rem; color:var(--bark-soft); font-weight:300; transition:all .4s var(--ease); }
.sub-who__sign:hover { background:var(--moss-soft); border-color:var(--moss); transform:translateX(6px); }
.sub-who__sign-dot { width:8px; height:8px; border-radius:50%; background:var(--clay); flex-shrink:0; }

/* Approach section */
.sub-approach { padding:7rem 5%; background:var(--wheat); border-bottom:1px solid var(--moss-border); }
.sub-approach__header { max-width:600px; margin-bottom:5rem; }
.sub-approach__steps { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--moss-border); }
.sub-approach__step { background:var(--cream); padding:3rem 2.5rem; }
.sub-approach__step-num { font-family:var(--serif); font-size:0.75rem; font-style:italic; color:var(--clay); margin-bottom:1.5rem; display:block; }
.sub-approach__step-title { font-family:var(--serif); font-size:1.4rem; font-weight:400; color:var(--moss); margin-bottom:0.75rem; }
.sub-approach__step-text { font-size:0.82rem; line-height:1.75; color:var(--bark-muted); font-weight:300; }

/* What's included */
.sub-includes { padding:7rem 5%; background:var(--cream); border-bottom:1px solid var(--moss-border); }
.sub-includes__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:4rem; }
.sub-include-card { background:var(--cream-warm); border:1px solid var(--moss-border); border-radius:16px 4px 16px 4px; padding:2.5rem; transition:transform .45s var(--ease),box-shadow .45s var(--ease); position:relative; overflow:hidden; }
.sub-include-card:hover { transform:translateY(-5px); box-shadow:0 20px 50px rgba(45,74,45,.1); }
.sub-include-card::before { content:''; position:absolute; top:-30px; right:-30px; width:80px; height:80px; border-radius:50%; background:var(--moss-glow); }
.sub-include-card__icon { width:40px; height:40px; border-radius:50%; background:var(--moss-soft); border:1px solid var(--moss-border); display:flex; align-items:center; justify-content:center; margin-bottom:1.5rem; }
.sub-include-card__icon svg { width:16px; height:16px; stroke:var(--moss); fill:none; stroke-width:1.5; }
.sub-include-card__title { font-family:var(--serif); font-size:1.1rem; font-weight:400; color:var(--moss); margin-bottom:0.5rem; }
.sub-include-card__text { font-size:0.78rem; line-height:1.7; color:var(--bark-muted); font-weight:300; }

/* Results */
.sub-results { padding:7rem 5%; background:var(--moss); }
.sub-results__inner { max-width:900px; margin:0 auto; }
.sub-results__header { margin-bottom:4rem; }
.sub-results__title { font-family:var(--serif); font-size:clamp(2rem,3.5vw,3rem); font-weight:400; color:var(--wheat); line-height:1.18; }
.sub-results__title em { font-style:italic; color:var(--clay-light); }
.sub-results__sub { font-size:0.9rem; line-height:1.85; color:rgba(245,237,219,.5); font-weight:300; margin-top:1rem; }
.sub-results__list { display:flex; flex-direction:column; gap:2px; }
.sub-result-row { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06); padding:1.8rem 2.5rem; display:flex; align-items:center; gap:2rem; transition:background .3s; }
.sub-result-row:hover { background:rgba(255,255,255,.05); }
.sub-result-row__num { font-family:var(--serif); font-size:1rem; font-style:italic; color:var(--clay-light); flex-shrink:0; width:32px; }
.sub-result-row__title { font-size:0.88rem; font-weight:500; color:var(--wheat); margin-bottom:0.2rem; }
.sub-result-row__text { font-size:0.75rem; color:rgba(245,237,219,.4); font-weight:300; line-height:1.5; }

/* Quote */
.sub-quote { padding:7rem 5%; background:var(--cream-warm); border-top:1px solid var(--moss-border); border-bottom:1px solid var(--moss-border); }
.sub-quote__inner { max-width:760px; margin:0 auto; position:relative; }
.sub-quote__mark { font-family:var(--serif); font-size:6rem; color:var(--clay-pale); line-height:1; position:absolute; top:-1rem; left:-1rem; font-weight:400; }
.sub-quote__text { font-family:var(--serif); font-style:italic; font-size:1.3rem; line-height:1.65; color:var(--moss); padding:2rem 0 2rem 3rem; }
.sub-quote__author { display:flex; align-items:center; gap:1.2rem; padding-left:3rem; margin-top:1rem; }
.sub-quote__avatar { width:44px; height:44px; border-radius:50%; background:linear-gradient(135deg,var(--wheat-deep),var(--wheat-mid)); display:flex; align-items:center; justify-content:center; font-family:var(--serif); font-size:0.9rem; color:var(--moss); font-weight:400; }
.sub-quote__name { font-size:0.85rem; font-weight:500; color:var(--bark-soft); }
.sub-quote__role { font-size:0.68rem; color:var(--bark-muted); margin-top:0.1rem; }

/* CTA */
.sub-cta { padding:8rem 5%; background:var(--cream); text-align:center; }
.sub-cta__inner { max-width:640px; margin:0 auto; }
.sub-cta__title { font-family:var(--serif); font-size:clamp(2rem,4vw,3.5rem); font-weight:400; line-height:1.15; color:var(--moss); margin-bottom:1.2rem; }
.sub-cta__title em { font-style:italic; color:var(--clay); }
.sub-cta__sub { font-size:0.9rem; line-height:1.85; color:var(--bark-muted); font-weight:300; margin-bottom:3rem; }
.sub-cta__checks { display:flex; flex-direction:column; gap:0.7rem; margin-bottom:3rem; text-align:left; max-width:400px; margin-left:auto; margin-right:auto; }
.sub-cta__check { display:flex; align-items:center; gap:0.9rem; font-size:0.82rem; color:var(--bark-muted); font-weight:300; }
.sub-cta__check-dot { width:18px; height:18px; border-radius:50%; background:rgba(184,92,56,.12); border:1px solid var(--clay-border); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.sub-cta__check-dot svg { width:8px; height:8px; stroke:var(--clay); fill:none; stroke-width:2.5; }
.sub-cta__note { font-size:0.62rem; color:var(--wheat-muted); letter-spacing:0.1em; margin-top:1.2rem; }

/* Footer */
.sub-foot { background:var(--bark); padding:3rem 5%; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:2rem; }
.sub-foot__brand-main { font-family:var(--serif-sc); font-size:0.85rem; color:var(--wheat-deep); }
.sub-foot__brand-sub { font-size:0.5rem; letter-spacing:0.28em; text-transform:uppercase; color:var(--bark-muted); margin-top:0.2rem; }
.sub-foot__links { display:flex; gap:2rem; justify-content:center; }
.sub-foot__link { font-size:0.6rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--bark-muted); text-decoration:none; transition:color .3s; }
.sub-foot__link:hover { color:var(--clay-light); }
.sub-foot__copy { font-size:0.6rem; color:var(--bark-muted); text-align:right; }

@media(max-width:1024px) {
  .sub-who,.sub-approach__steps,.sub-includes__grid { grid-template-columns:1fr; }
}
@media(max-width:768px) {
  .sub-nav__links { display:none; }
  .sub-foot { grid-template-columns:1fr; text-align:center; }
  .sub-foot__copy { text-align:center; }
  .sub-hero__meta { flex-direction:column; gap:1.5rem; }
}

/* ═══ FROM page-method.php ═══ */
.mth-nav { position:fixed;top:0;left:0;right:0;z-index:900;padding:1.3rem 5%;display:flex;align-items:center;justify-content:space-between;transition:background .5s,box-shadow .5s; }
.mth-nav.scrolled { background:rgba(253,250,244,.95);backdrop-filter:blur(20px);box-shadow:0 1px 0 var(--moss-border); }
.mth-nav__logo { display:flex;flex-direction:column;gap:1px;text-decoration:none; }
.mth-nav__logo-main { font-family:var(--serif-sc);font-size:1rem;color:var(--moss);letter-spacing:.06em; }
.mth-nav__logo-sub { font-size:.52rem;letter-spacing:.32em;text-transform:uppercase;color:var(--wheat-muted); }
.mth-nav__links { display:flex;align-items:center;gap:2rem; }
.mth-nav__link { font-size:.68rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.mth-nav__link:hover { color:var(--moss); }
.mth-nav__cta { font-size:.65rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;background:var(--clay);color:#fff;padding:.65rem 1.6rem;border-radius:100px;text-decoration:none;transition:all .4s var(--ease); }
.mth-nav__cta:hover { background:var(--moss); }

/* Hero */
.mth-hero { background:var(--moss);min-height:75vh;display:flex;align-items:center;padding:11rem 5% 7rem;position:relative;overflow:hidden; }
.mth-hero::before { content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;pointer-events:none; }
.mth-hero__vein { position:absolute;right:0;top:0;width:50%;height:100%;opacity:.04;pointer-events:none; }
.mth-hero__inner { position:relative;z-index:1;max-width:760px; }
.mth-hero__eyebrow { font-size:.58rem;font-weight:600;letter-spacing:.38em;text-transform:uppercase;color:var(--clay-light);display:flex;align-items:center;gap:1rem;margin-bottom:2rem; }
.mth-hero__eyebrow::before { content:'';width:24px;height:1px;background:var(--clay); }
.mth-hero__title { font-family:var(--serif);font-size:clamp(2.8rem,5vw,4.5rem);font-weight:400;line-height:1.1;letter-spacing:-.02em;color:var(--wheat);margin-bottom:1.5rem; }
.mth-hero__title em { font-style:italic;color:var(--clay-light); }
.mth-hero__sub { font-size:1rem;line-height:1.85;color:rgba(245,237,219,.55);font-weight:300;max-width:580px;margin-bottom:3rem; }
.mth-hero__phases { display:flex;gap:1.5rem;flex-wrap:wrap; }
.mth-hero__phase { background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:100px;padding:.6rem 1.4rem;font-size:.65rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,237,219,.6); }

/* Principle strip */
.mth-principle { background:var(--wheat-deep);border-bottom:1px solid var(--moss-border);padding:4rem 5%; }
.mth-principle__inner { max-width:900px;margin:0 auto;text-align:center; }
.mth-principle__quote { font-family:var(--serif);font-style:italic;font-size:clamp(1.2rem,2.5vw,1.8rem);font-weight:400;color:var(--moss);line-height:1.55; }
.mth-principle__quote em { color:var(--clay); }

/* Why section */
.mth-why { padding:8rem 5%;background:var(--cream);border-bottom:1px solid var(--moss-border); }
.mth-why__inner { display:grid;grid-template-columns:1fr 1fr;gap:8rem;align-items:center;max-width:1100px;margin:0 auto; }
.mth-why__title { font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);font-weight:400;color:var(--moss);line-height:1.18;margin-bottom:1.5rem; }
.mth-why__title em { font-style:italic;color:var(--clay); }
.mth-why__text { font-size:.9rem;line-height:1.9;color:var(--bark-muted);font-weight:300;margin-bottom:1.5rem; }
.mth-why__panel { background:var(--moss);border-radius:4px;padding:3.5rem; }
.mth-why__panel-label { font-family:var(--serif);font-style:italic;font-size:.9rem;color:var(--clay-light);margin-bottom:2rem;display:flex;align-items:center;gap:.8rem; }
.mth-why__panel-label::before { content:'';width:16px;height:1px;background:var(--clay); }
.mth-why__items { display:flex;flex-direction:column;gap:1.8rem; }
.mth-why__item { display:flex;gap:1.2rem; }
.mth-why__item-num { font-family:var(--serif);font-size:1.5rem;font-style:italic;color:rgba(255,255,255,.1);flex-shrink:0;width:24px;line-height:1.1; }
.mth-why__item-title { font-size:.85rem;font-weight:500;color:var(--wheat);margin-bottom:.25rem; }
.mth-why__item-text { font-size:.78rem;color:rgba(245,237,219,.45);font-weight:300;line-height:1.6; }

/* Phases — large panels */
.mth-phases { background:var(--wheat);border-bottom:1px solid var(--moss-border); }
.mth-phase-panel { display:grid;grid-template-columns:1fr 1fr;min-height:520px;border-bottom:1px solid var(--moss-border); }
.mth-phase-panel:last-child { border-bottom:none; }
.mth-phase-panel--alt { direction:rtl; }
.mth-phase-panel--alt > * { direction:ltr; }
.mth-phase-panel__left { background:var(--moss);padding:6rem;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden; }
.mth-phase-panel__left::after { content:'';position:absolute;right:-40px;bottom:-40px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.03);pointer-events:none; }
.mth-phase-panel__num { font-family:var(--serif);font-size:6rem;font-style:italic;color:rgba(255,255,255,.06);font-weight:400;line-height:1;margin-bottom:-.5rem; }
.mth-phase-panel__phase { font-size:.58rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--clay-light);margin-bottom:1rem;display:block; }
.mth-phase-panel__title { font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.5rem);font-weight:400;color:var(--wheat);line-height:1.1;margin-bottom:1.5rem; }
.mth-phase-panel__week { font-size:.62rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:rgba(245,237,219,.3);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);padding:.5rem 1.2rem;border-radius:100px;display:inline-block; }
.mth-phase-panel__right { background:var(--cream);padding:6rem; }
.mth-phase-panel__desc { font-size:.95rem;line-height:1.9;color:var(--bark-muted);font-weight:300;margin-bottom:3rem; }
.mth-phase-panel__points { display:flex;flex-direction:column;gap:1rem;margin-bottom:3rem; }
.mth-phase-panel__point { display:flex;gap:1.2rem;align-items:flex-start; }
.mth-phase-panel__point-icon { width:22px;height:22px;border-radius:50%;background:var(--moss-soft);border:1px solid var(--moss-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.1rem; }
.mth-phase-panel__point-icon svg { width:9px;height:9px;stroke:var(--moss);fill:none;stroke-width:2.5; }
.mth-phase-panel__point-body {}
.mth-phase-panel__point-title { font-size:.85rem;font-weight:500;color:var(--bark-soft);margin-bottom:.2rem; }
.mth-phase-panel__point-text { font-size:.78rem;line-height:1.6;color:var(--bark-muted);font-weight:300; }
.mth-phase-panel__outcome { background:var(--wheat);border-radius:4px;padding:1.5rem 2rem;font-size:.82rem;line-height:1.65;color:var(--bark-muted);font-weight:300;border-left:3px solid var(--clay); }
.mth-phase-panel__outcome strong { color:var(--bark-soft);font-weight:500; }

/* Science section */
.mth-science { padding:8rem 5%;background:var(--cream);border-bottom:1px solid var(--moss-border); }
.mth-science__inner { max-width:1100px;margin:0 auto; }
.mth-science__header { max-width:600px;margin-bottom:5rem; }
.mth-science__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem; }
.mth-science__card { background:var(--cream-warm);border:1px solid var(--moss-border);border-radius:16px 4px 16px 4px;padding:2.5rem;position:relative;overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease); }
.mth-science__card:hover { transform:translateY(-5px);box-shadow:0 20px 50px rgba(45,74,45,.1); }
.mth-science__card-num { font-family:var(--serif);font-size:.75rem;font-style:italic;color:var(--clay);margin-bottom:1.5rem;display:block; }
.mth-science__card-title { font-family:var(--serif);font-size:1.1rem;font-weight:400;color:var(--moss);margin-bottom:.6rem; }
.mth-science__card-text { font-size:.8rem;line-height:1.75;color:var(--bark-muted);font-weight:300; }

/* Different */
.mth-different { background:var(--moss);padding:8rem 5%; }
.mth-different__inner { max-width:1000px;margin:0 auto; }
.mth-different__title { font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);font-weight:400;color:var(--wheat);margin-bottom:1rem; }
.mth-different__title em { font-style:italic;color:var(--clay-light); }
.mth-different__sub { font-size:.9rem;line-height:1.85;color:rgba(245,237,219,.5);font-weight:300;max-width:600px;margin-bottom:4rem; }
.mth-different__rows { display:flex;flex-direction:column;gap:2px; }
.mth-different__row { display:grid;grid-template-columns:1fr 1fr;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);overflow:hidden; }
.mth-different__col { padding:1.5rem 2rem;font-size:.85rem;font-weight:300;line-height:1.5; }
.mth-different__col--no { color:rgba(245,237,219,.35);text-decoration:line-through;text-decoration-color:rgba(255,255,255,.1); }
.mth-different__col--yes { color:rgba(245,237,219,.75);border-left:1px solid rgba(255,255,255,.06); }

/* CTA */
.mth-cta { padding:8rem 5%;background:var(--cream);text-align:center; }
.mth-cta__inner { max-width:640px;margin:0 auto; }
.mth-cta__title { font-family:var(--serif);font-size:clamp(2rem,4vw,3.5rem);font-weight:400;line-height:1.15;color:var(--moss);margin-bottom:1.2rem; }
.mth-cta__title em { font-style:italic;color:var(--clay); }
.mth-cta__sub { font-size:.9rem;line-height:1.85;color:var(--bark-muted);font-weight:300;margin-bottom:3rem; }
.mth-cta__note { font-size:.62rem;color:var(--wheat-muted);letter-spacing:.1em;margin-top:1.2rem; }

.mth-foot { background:var(--bark);padding:3rem 5%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem; }
.mth-foot__brand-main { font-family:var(--serif-sc);font-size:.85rem;color:var(--wheat-deep); }
.mth-foot__brand-sub { font-size:.5rem;letter-spacing:.28em;text-transform:uppercase;color:var(--bark-muted);margin-top:.2rem; }
.mth-foot__links { display:flex;gap:2rem;justify-content:center; }
.mth-foot__link { font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.mth-foot__link:hover { color:var(--clay-light); }
.mth-foot__copy { font-size:.6rem;color:var(--bark-muted);text-align:right; }

@media(max-width:1024px) { .mth-why__inner,.mth-phase-panel { grid-template-columns:1fr; } .mth-phase-panel--alt { direction:ltr; } .mth-science__grid { grid-template-columns:1fr; } .mth-different__row { grid-template-columns:1fr; } }
@media(max-width:768px) { .mth-nav__links { display:none; } .mth-foot { grid-template-columns:1fr;text-align:center; } .mth-foot__copy { text-align:center; } }

/* ═══ FROM page-consultation.php ═══ */
.con-nav { position:fixed;top:0;left:0;right:0;z-index:900;padding:1.3rem 5%;display:flex;align-items:center;justify-content:space-between;transition:background .5s,box-shadow .5s; }
.con-nav.scrolled { background:rgba(253,250,244,.95);backdrop-filter:blur(20px);box-shadow:0 1px 0 var(--moss-border); }
.con-nav__logo { display:flex;flex-direction:column;gap:1px;text-decoration:none; }
.con-nav__logo-main { font-family:var(--serif-sc);font-size:1rem;color:var(--moss);letter-spacing:.06em; }
.con-nav__logo-sub  { font-size:.52rem;letter-spacing:.32em;text-transform:uppercase;color:var(--wheat-muted); }
.con-nav__links { display:flex;align-items:center;gap:2rem; }
.con-nav__link { font-size:.68rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.con-nav__link:hover { color:var(--moss); }

/* Hero */
.con-hero { background:var(--moss);padding:11rem 5% 6rem;position:relative;overflow:hidden; }
.con-hero::before { content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;pointer-events:none; }
.con-hero__inner { position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;max-width:1100px;margin:0 auto; }
.con-hero__eyebrow { font-size:.58rem;font-weight:600;letter-spacing:.38em;text-transform:uppercase;color:var(--clay-light);display:flex;align-items:center;gap:1rem;margin-bottom:2rem; }
.con-hero__eyebrow::before { content:'';width:24px;height:1px;background:var(--clay); }
.con-hero__title { font-family:var(--serif);font-size:clamp(2.5rem,4.5vw,4rem);font-weight:400;line-height:1.1;letter-spacing:-.02em;color:var(--wheat);margin-bottom:1.5rem; }
.con-hero__title em { font-style:italic;color:var(--clay-light); }
.con-hero__sub { font-size:.95rem;line-height:1.85;color:rgba(245,237,219,.55);font-weight:300;margin-bottom:2.5rem; }
.con-hero__checks { display:flex;flex-direction:column;gap:.75rem; }
.con-hero__check { display:flex;align-items:center;gap:1rem;font-size:.82rem;color:rgba(245,237,219,.6);font-weight:300; }
.con-hero__check-dot { width:18px;height:18px;border-radius:50%;background:rgba(184,92,56,.2);border:1px solid rgba(184,92,56,.35);display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.con-hero__check-dot svg { width:8px;height:8px;stroke:var(--clay-light);fill:none;stroke-width:2.5; }
/* Stats on right */
.con-hero__stats { display:grid;grid-template-columns:1fr 1fr;gap:1.5rem; }
.con-hero__stat { background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:2rem; }
.con-hero__stat-num { font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--wheat);line-height:1;margin-bottom:.4rem; }
.con-hero__stat-label { font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,237,219,.35); }

/* Main layout */
.con-body { padding:7rem 5%;display:grid;grid-template-columns:1fr 420px;gap:6rem;align-items:start;max-width:1200px;margin:0 auto; }

/* Form */
.con-form-wrap { }
.con-form-title { font-family:var(--serif);font-size:1.8rem;font-weight:400;color:var(--moss);margin-bottom:.5rem; }
.con-form-sub { font-size:.85rem;color:var(--bark-muted);font-weight:300;margin-bottom:2.5rem;line-height:1.7; }
.con-form { display:flex;flex-direction:column;gap:1.2rem; }
.con-form__row { display:grid;grid-template-columns:1fr 1fr;gap:1.2rem; }
.con-form__group { display:flex;flex-direction:column;gap:.5rem; }
.con-form__label { font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bark-muted); }
.con-form__input,.con-form__select,.con-form__textarea {
  font-family:var(--sans);font-size:.88rem;color:var(--bark);background:var(--cream-warm);
  border:1px solid var(--moss-border);border-radius:2px;padding:.9rem 1.2rem;
  transition:border-color .3s,box-shadow .3s;outline:none;width:100%;
}
.con-form__input:focus,.con-form__select:focus,.con-form__textarea:focus {
  border-color:var(--moss);box-shadow:0 0 0 3px rgba(45,74,45,.08);
}
.con-form__textarea { min-height:130px;resize:vertical; }
.con-form__select { appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B7A6B' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center; }
.con-form__submit { display:inline-flex;align-items:center;justify-content:center;gap:1rem;background:var(--clay);color:#fff;border:none;padding:1.1rem 2.8rem;font-family:var(--sans);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border-radius:2px;cursor:pointer;transition:all .45s var(--ease);margin-top:.5rem; }
.con-form__submit:hover { background:var(--clay-light);transform:translateY(-2px);box-shadow:0 8px 24px rgba(184,92,56,.3); }
.con-form__note { font-size:.62rem;color:var(--bark-muted);margin-top:.5rem;letter-spacing:.08em; }
.con-success { display:none;background:var(--moss-soft);border:1px solid var(--moss-border);border-radius:4px;padding:2rem;text-align:center; }
.con-success.active { display:block; }
.con-success h3 { font-family:var(--serif);font-size:1.3rem;color:var(--moss);margin-bottom:.5rem; }
.con-success p { font-size:.85rem;color:var(--bark-muted);font-weight:300; }

/* WhatsApp divider */
.con-divider { display:flex;align-items:center;gap:1.5rem;margin:2rem 0; }
.con-divider::before,.con-divider::after { content:'';flex:1;height:1px;background:var(--moss-border); }
.con-divider__text { font-size:.62rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--bark-muted);white-space:nowrap; }
.con-whatsapp { display:flex;align-items:center;gap:1rem;background:#25d366;color:#fff;border-radius:2px;padding:1rem 2rem;text-decoration:none;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:all .4s var(--ease);justify-content:center; }
.con-whatsapp:hover { background:#1ebe5d;transform:translateY(-2px);box-shadow:0 8px 20px rgba(37,211,102,.3); }
.con-whatsapp svg { width:20px;height:20px;fill:currentColor; }

/* Info panel */
.con-info { display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:100px; }
.con-info-card { background:var(--cream-warm);border:1px solid var(--moss-border);border-radius:4px;padding:2rem 2.5rem; }
.con-info-card--moss { background:var(--moss); }
.con-info-card__icon { width:40px;height:40px;border-radius:50%;background:var(--moss-soft);border:1px solid var(--moss-border);display:flex;align-items:center;justify-content:center;margin-bottom:1.2rem; }
.con-info-card--moss .con-info-card__icon { background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12); }
.con-info-card__icon svg { width:16px;height:16px;stroke:var(--moss);fill:none;stroke-width:1.5; }
.con-info-card--moss .con-info-card__icon svg { stroke:var(--clay-light); }
.con-info-card__title { font-family:var(--serif);font-size:1.05rem;font-weight:400;color:var(--moss);margin-bottom:.4rem; }
.con-info-card--moss .con-info-card__title { color:var(--wheat); }
.con-info-card__text { font-size:.82rem;line-height:1.65;color:var(--bark-muted);font-weight:300; }
.con-info-card--moss .con-info-card__text { color:rgba(245,237,219,.5); }
.con-info-card__val { font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--clay);margin-top:.5rem; }
.con-info-card--moss .con-info-card__val { color:var(--clay-light); }

/* What to expect */
.con-expect { background:var(--wheat);padding:7rem 5%;border-top:1px solid var(--moss-border); }
.con-expect__inner { max-width:900px;margin:0 auto; }
.con-expect__steps { display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:4rem; }
.con-expect__step { text-align:center;padding:3rem 2rem; }
.con-expect__step-num { font-family:var(--serif);font-size:3rem;font-style:italic;color:var(--moss-border);line-height:1;margin-bottom:1.5rem;display:block; }
.con-expect__step-title { font-family:var(--serif);font-size:1.15rem;font-weight:400;color:var(--moss);margin-bottom:.75rem; }
.con-expect__step-text { font-size:.82rem;line-height:1.7;color:var(--bark-muted);font-weight:300; }
.con-expect__connector { display:none; }

/* Footer */
.con-foot { background:var(--bark);padding:3rem 5%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem; }
.con-foot__brand-main { font-family:var(--serif-sc);font-size:.85rem;color:var(--wheat-deep); }
.con-foot__brand-sub { font-size:.5rem;letter-spacing:.28em;text-transform:uppercase;color:var(--bark-muted);margin-top:.2rem; }
.con-foot__links { display:flex;gap:2rem;justify-content:center; }
.con-foot__link { font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.con-foot__link:hover { color:var(--clay-light); }
.con-foot__copy { font-size:.6rem;color:var(--bark-muted);text-align:right; }

@media(max-width:1024px) { .con-hero__inner,.con-body { grid-template-columns:1fr; } .con-info { position:static; } .con-expect__steps { grid-template-columns:1fr; } }
@media(max-width:768px) { .con-nav__links { display:none; } .con-form__row { grid-template-columns:1fr; } .con-foot { grid-template-columns:1fr;text-align:center; } .con-foot__copy { text-align:center; } }

/* ═══ FROM page-ebook.php ═══ */
.eb-nav { position:fixed;top:0;left:0;right:0;z-index:900;padding:1.3rem 5%;display:flex;align-items:center;justify-content:space-between;transition:background .5s,box-shadow .5s; }
.eb-nav.scrolled { background:rgba(253,250,244,.95);backdrop-filter:blur(20px);box-shadow:0 1px 0 var(--moss-border); }
.eb-nav__logo-main { font-family:var(--serif-sc);font-size:1rem;color:var(--moss);letter-spacing:.06em;text-decoration:none; }
.eb-nav__back { font-size:.65rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.eb-nav__back:hover { color:var(--clay); }

/* Hero — split layout */
.eb-hero { min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:var(--moss);padding-top:5rem; }
.eb-hero__left { padding:8rem 5% 6rem 7%;display:flex;flex-direction:column;justify-content:center;border-right:1px solid rgba(255,255,255,.07);position:relative;overflow:hidden; }
.eb-hero__left::before { content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;pointer-events:none; }
.eb-hero__badge { display:inline-flex;align-items:center;gap:.75rem;background:rgba(184,92,56,.2);border:1px solid rgba(184,92,56,.3);border-radius:100px;padding:.5rem 1.2rem;font-size:.58rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--clay-light);margin-bottom:2.5rem;width:fit-content;position:relative;z-index:1; }
.eb-hero__badge-dot { width:6px;height:6px;border-radius:50%;background:var(--clay-light); }
.eb-hero__title { font-family:var(--serif);font-size:clamp(2.5rem,4.5vw,4rem);font-weight:400;line-height:1.1;letter-spacing:-.02em;color:var(--wheat);margin-bottom:1.5rem;position:relative;z-index:1; }
.eb-hero__title em { font-style:italic;color:var(--clay-light); }
.eb-hero__sub { font-size:.95rem;line-height:1.85;color:rgba(245,237,219,.55);font-weight:300;max-width:480px;margin-bottom:3rem;position:relative;z-index:1; }
.eb-hero__bullets { display:flex;flex-direction:column;gap:.75rem;margin-bottom:3rem;position:relative;z-index:1; }
.eb-hero__bullet { display:flex;align-items:center;gap:1rem;font-size:.82rem;color:rgba(245,237,219,.6);font-weight:300; }
.eb-hero__bullet-dot { width:18px;height:18px;border-radius:50%;background:rgba(184,92,56,.2);border:1px solid rgba(184,92,56,.3);display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.eb-hero__bullet-dot svg { width:8px;height:8px;stroke:var(--clay-light);fill:none;stroke-width:2.5; }
.eb-hero__free { font-size:.62rem;color:rgba(245,237,219,.25);letter-spacing:.15em;text-transform:uppercase;position:relative;z-index:1; }

/* Right — book visual + form */
.eb-hero__right { padding:8rem 5% 6rem;display:flex;flex-direction:column;justify-content:center;gap:3rem; }
.eb-book { background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:3rem;text-align:center;position:relative; }
.eb-book__cover { width:160px;height:220px;background:linear-gradient(145deg,var(--wheat-deep),var(--wheat-mid));border-radius:4px 12px 12px 4px;margin:0 auto 2rem;display:flex;align-items:center;justify-content:center;box-shadow:8px 8px 24px rgba(0,0,0,.3),-2px 0 8px rgba(0,0,0,.2);position:relative;overflow:hidden; }
.eb-book__cover::before { content:'';position:absolute;left:0;top:0;width:8px;height:100%;background:rgba(0,0,0,.15); }
.eb-book__cover-inner { padding:1.5rem;text-align:left; }
.eb-book__cover-label { font-size:.48rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--bark-muted);margin-bottom:.75rem;display:block; }
.eb-book__cover-title { font-family:var(--serif);font-size:.85rem;font-weight:700;color:var(--moss);line-height:1.3; }
.eb-book__cover-author { font-size:.52rem;color:var(--bark-muted);margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--moss-border); }
.eb-book__details { display:flex;justify-content:center;gap:2rem;margin-top:.5rem; }
.eb-book__detail { text-align:center; }
.eb-book__detail-val { font-family:var(--serif);font-size:1.2rem;color:var(--wheat);line-height:1; }
.eb-book__detail-label { font-size:.55rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(245,237,219,.3);margin-top:.25rem; }

/* Email capture form */
.eb-form-wrap { background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:2.5rem; }
.eb-form-title { font-family:var(--serif);font-size:1.1rem;font-weight:400;color:var(--wheat);margin-bottom:.4rem; }
.eb-form-sub { font-size:.78rem;color:rgba(245,237,219,.4);font-weight:300;margin-bottom:1.8rem;line-height:1.55; }
.eb-form { display:flex;flex-direction:column;gap:.9rem; }
.eb-form__input { font-family:var(--sans);font-size:.88rem;color:var(--bark);background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.15);border-radius:2px;padding:.9rem 1.2rem;outline:none;transition:all .3s;width:100%; }
.eb-form__input:focus { background:#fff;box-shadow:0 0 0 3px rgba(184,92,56,.2); }
.eb-form__submit { background:var(--clay);color:#fff;border:none;padding:1rem 2rem;font-family:var(--sans);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border-radius:2px;cursor:pointer;transition:all .4s var(--ease);display:flex;align-items:center;justify-content:center;gap:.8rem; }
.eb-form__submit:hover { background:var(--clay-light);transform:translateY(-1px); }
.eb-form__note { font-size:.6rem;color:rgba(245,237,219,.25);text-align:center;letter-spacing:.1em; }
.eb-success { display:none;text-align:center;padding:2rem; }
.eb-success.active { display:block; }
.eb-success h3 { font-family:var(--serif);font-size:1.2rem;color:var(--wheat);margin-bottom:.5rem; }
.eb-success p { font-size:.82rem;color:rgba(245,237,219,.5);font-weight:300; }
.eb-success a { color:var(--clay-light);text-decoration:none; }

/* What's inside */
.eb-inside { padding:8rem 5%;background:var(--cream);border-bottom:1px solid var(--moss-border); }
.eb-inside__header { max-width:600px;margin-bottom:5rem; }
.eb-inside__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem; }
.eb-chapter { background:var(--cream-warm);border:1px solid var(--moss-border);border-radius:4px;padding:2.5rem;transition:transform .45s var(--ease),box-shadow .45s var(--ease); }
.eb-chapter:hover { transform:translateY(-4px);box-shadow:0 16px 40px rgba(45,74,45,.1); }
.eb-chapter__num { font-family:var(--serif);font-size:.75rem;font-style:italic;color:var(--clay);margin-bottom:1.2rem;display:block; }
.eb-chapter__title { font-family:var(--serif);font-size:1.05rem;font-weight:400;color:var(--moss);margin-bottom:.6rem; }
.eb-chapter__text { font-size:.8rem;line-height:1.7;color:var(--bark-muted);font-weight:300; }

/* Who it's for */
.eb-who { padding:7rem 5%;background:var(--wheat);border-bottom:1px solid var(--moss-border);display:grid;grid-template-columns:1fr 1fr;gap:8rem;align-items:center; }
.eb-who__title { font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:400;color:var(--moss);line-height:1.2;margin-bottom:1.5rem; }
.eb-who__title em { font-style:italic;color:var(--clay); }
.eb-who__text { font-size:.9rem;line-height:1.85;color:var(--bark-muted);font-weight:300; }
.eb-who__list { display:flex;flex-direction:column;gap:.8rem; }
.eb-who__item { display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:var(--cream);border:1px solid var(--moss-border);border-radius:100px;font-size:.82rem;color:var(--bark-soft);font-weight:300;transition:all .4s var(--ease); }
.eb-who__item:hover { background:var(--moss-soft);border-color:var(--moss);transform:translateX(5px); }
.eb-who__item::before { content:'✓';color:var(--clay);font-weight:600;font-size:.75rem;flex-shrink:0; }

/* Author */
.eb-author { padding:7rem 5%;background:var(--cream);border-bottom:1px solid var(--moss-border); }
.eb-author__inner { display:grid;grid-template-columns:auto 1fr;gap:5rem;align-items:center;max-width:900px;margin:0 auto; }
.eb-author__avatar { width:120px;height:120px;border-radius:50%;background:linear-gradient(145deg,var(--wheat-deep),var(--wheat-mid));display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--moss);flex-shrink:0; }
.eb-author__name { font-family:var(--serif);font-size:1.5rem;font-weight:400;color:var(--moss);margin-bottom:.3rem; }
.eb-author__role { font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--bark-muted);margin-bottom:1.5rem; }
.eb-author__text { font-size:.9rem;line-height:1.85;color:var(--bark-muted);font-weight:300; }
.eb-author__creds { display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem; }
.eb-author__cred { font-size:.58rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--moss);background:var(--moss-soft);border:1px solid var(--moss-border);padding:.4rem 1rem;border-radius:100px; }

/* Bottom CTA */
.eb-cta { background:var(--moss);padding:8rem 5%;text-align:center;position:relative;overflow:hidden; }
.eb-cta::before { content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;pointer-events:none; }
.eb-cta__inner { position:relative;z-index:1;max-width:600px;margin:0 auto; }
.eb-cta__title { font-family:var(--serif);font-size:clamp(2rem,4vw,3.2rem);font-weight:400;color:var(--wheat);margin-bottom:1rem;line-height:1.15; }
.eb-cta__title em { font-style:italic;color:var(--clay-light); }
.eb-cta__sub { font-size:.9rem;line-height:1.85;color:rgba(245,237,219,.5);font-weight:300;margin-bottom:2.5rem; }
.eb-cta__note { font-size:.62rem;color:rgba(245,237,219,.25);margin-top:1rem;letter-spacing:.1em; }

.eb-foot { background:var(--bark);padding:3rem 5%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem; }
.eb-foot__brand-main { font-family:var(--serif-sc);font-size:.85rem;color:var(--wheat-deep); }
.eb-foot__brand-sub { font-size:.5rem;letter-spacing:.28em;text-transform:uppercase;color:var(--bark-muted);margin-top:.2rem; }
.eb-foot__links { display:flex;gap:2rem;justify-content:center; }
.eb-foot__link { font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.eb-foot__link:hover { color:var(--clay-light); }
.eb-foot__copy { font-size:.6rem;color:var(--bark-muted);text-align:right; }

@media(max-width:1024px) { .eb-hero { grid-template-columns:1fr; } .eb-hero__left,.eb-hero__right { padding:5rem 5%; } .eb-who { grid-template-columns:1fr; gap:4rem; } .eb-inside__grid { grid-template-columns:1fr; } .eb-author__inner { grid-template-columns:1fr; text-align:center; } .eb-author__creds { justify-content:center; } }
@media(max-width:768px) { .eb-foot { grid-template-columns:1fr;text-align:center; } .eb-foot__copy { text-align:center; } }

/* ═══ FROM page-legal.php ═══ */
/* ── Legal page styles ── */
.legal-nav { background: #fff; border-bottom: 1px solid rgba(45,74,45,0.12); position: sticky; top: 0; z-index: 100; padding: 1.2rem 5%; display: flex; align-items: center; justify-content: space-between; }
.legal-nav__logo { font-family: var(--serif-sc); font-size: 1rem; color: var(--moss); letter-spacing: 0.06em; text-decoration: none; }
.legal-nav__back { font-size: 0.65rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bark-muted); text-decoration: none; transition: color 0.25s; }
.legal-nav__back:hover { color: var(--clay); }

.legal-hero { background: var(--moss); padding: 6rem 5% 4rem; position: relative; overflow: hidden; }
.legal-hero::before { content: ''; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.025) 1px,transparent 1px); background-size: 48px 48px; pointer-events: none; }
.legal-hero__inner { position: relative; z-index: 1; max-width: 760px; }
.legal-hero__eyebrow { font-size: 0.58rem; font-weight: 600; letter-spacing: 0.32em; text-transform: uppercase; color: var(--clay-light); margin-bottom: 1rem; display: block; }
.legal-hero__title { font-family: var(--serif); font-size: clamp(2rem,4vw,3.2rem); font-weight: 400; color: var(--wheat); line-height: 1.15; margin-bottom: 1rem; }
.legal-hero__meta { font-size: 0.75rem; color: rgba(245,237,219,0.4); letter-spacing: 0.1em; }

.legal-body { max-width: 760px; margin: 5rem auto; padding: 0 5% 6rem; }

/* TOC */
.legal-toc { background: var(--cream-warm); border: 1px solid var(--moss-border); border-radius: 8px; padding: 2rem 2.5rem; margin-bottom: 4rem; }
.legal-toc__title { font-family: var(--serif); font-size: 1rem; font-weight: 400; color: var(--moss); margin-bottom: 1.2rem; }
.legal-toc__list { list-style: none; display: flex; flex-direction: column; gap: 0.5rem; }
.legal-toc__link { font-size: 0.82rem; color: var(--clay); text-decoration: none; transition: color 0.2s; display: flex; align-items: center; gap: 0.5rem; }
.legal-toc__link::before { content: '→'; font-size: 0.7rem; }
.legal-toc__link:hover { color: var(--moss); }

/* Prose typography */
.legal-prose h2 { font-family: var(--serif); font-size: 1.5rem; font-weight: 400; color: var(--moss); margin: 3rem 0 1rem; padding-top: 3rem; border-top: 1px solid var(--moss-border); }
.legal-prose h2:first-child { border-top: none; padding-top: 0; margin-top: 0; }
.legal-prose h3 { font-family: var(--serif); font-size: 1.1rem; font-weight: 400; color: var(--bark-soft); margin: 2rem 0 0.75rem; }
.legal-prose p { font-size: 0.92rem; line-height: 1.85; color: var(--bark-muted); margin-bottom: 1.2rem; font-weight: 300; }
.legal-prose ul, .legal-prose ol { margin: 0.5rem 0 1.5rem 1.5rem; display: flex; flex-direction: column; gap: 0.4rem; }
.legal-prose li { font-size: 0.88rem; line-height: 1.7; color: var(--bark-muted); font-weight: 300; }
.legal-prose strong { color: var(--bark-soft); font-weight: 500; }
.legal-prose a { color: var(--clay); }
.legal-prose a:hover { color: var(--moss); }

.legal-footer-strip { background: var(--bark); padding: 3rem 5%; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
.legal-footer-strip__brand { font-family: var(--serif-sc); font-size: 0.85rem; color: var(--wheat-deep); }
.legal-footer-strip__links { display: flex; gap: 2rem; }
.legal-footer-strip__link { font-size: 0.6rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--bark-muted); text-decoration: none; transition: color 0.25s; }
.legal-footer-strip__link:hover { color: var(--clay-light); }
.legal-footer-strip__copy { font-size: 0.6rem; color: var(--bark-muted); }

/* ═══ FROM page-flexible.php ═══ */
/* ══════════════════════════════════════
   FLEXIBLE PAGE — Mix style
   Moss/clay accents on warm neutral base
   ══════════════════════════════════════ */

/* Nav */
.fp-nav { position:fixed;top:0;left:0;right:0;z-index:900;padding:1.2rem 5%;display:flex;align-items:center;justify-content:space-between;transition:background .5s,box-shadow .5s; }
.fp-nav.scrolled { background:rgba(253,250,244,.96);backdrop-filter:blur(20px);box-shadow:0 1px 0 rgba(45,74,45,.12); }
.fp-nav__logo { display:flex;flex-direction:column;gap:1px;text-decoration:none; }
.fp-nav__logo-main { font-family:var(--serif-sc);font-size:.95rem;font-weight:400;color:var(--moss);letter-spacing:.06em; }
.fp-nav__logo-sub  { font-size:.5rem;letter-spacing:.3em;text-transform:uppercase;color:var(--wheat-muted); }
.fp-nav__links { display:flex;align-items:center;gap:2rem; }
.fp-nav__link { font-size:.65rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.fp-nav__link:hover { color:var(--moss); }
.fp-nav__cta { font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;background:var(--clay);color:#fff;padding:.6rem 1.5rem;border-radius:100px;text-decoration:none;transition:all .4s var(--ease); }
.fp-nav__cta:hover { background:var(--moss); }

/* ── SECTION 1: HERO ── */
.fp-hero { padding:10rem 4% 6rem;position:relative;overflow:hidden; }
.fp-hero--moss  { background:var(--moss); }
.fp-hero--wheat { background:var(--wheat); }
.fp-hero--cream { background:var(--cream); }
.fp-hero--white { background:#fff; }
.fp-hero__inner { max-width:800px;position:relative;z-index:1; }
.fp-hero__eyebrow {
  font-size:.58rem;font-weight:600;letter-spacing:.38em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.9rem;margin-bottom:1.8rem;
}
.fp-hero__eyebrow::before { content:'';width:24px;height:1px;flex-shrink:0; }
.fp-hero--moss  .fp-hero__eyebrow { color:var(--clay-light); }
.fp-hero--moss  .fp-hero__eyebrow::before { background:var(--clay); }
.fp-hero--wheat .fp-hero__eyebrow,.fp-hero--cream .fp-hero__eyebrow,.fp-hero--white .fp-hero__eyebrow { color:var(--clay); }
.fp-hero--wheat .fp-hero__eyebrow::before,.fp-hero--cream .fp-hero__eyebrow::before,.fp-hero--white .fp-hero__eyebrow::before { background:var(--clay); }
.fp-hero__title { font-family:var(--serif);font-size:clamp(2.4rem,5vw,4.2rem);font-weight:400;line-height:1.1;letter-spacing:-.02em;margin-bottom:1.5rem; }
.fp-hero--moss  .fp-hero__title { color:var(--wheat); }
.fp-hero--wheat .fp-hero__title,.fp-hero--cream .fp-hero__title,.fp-hero--white .fp-hero__title { color:var(--moss); }
.fp-hero__title em { font-style:italic; }
.fp-hero--moss  .fp-hero__title em { color:var(--clay-light); }
.fp-hero--wheat .fp-hero__title em,.fp-hero--cream .fp-hero__title em,.fp-hero--white .fp-hero__title em { color:var(--clay); }
.fp-hero__sub { font-size:1rem;line-height:1.85;font-weight:300;max-width:620px; }
.fp-hero--moss  .fp-hero__sub { color:rgba(245,237,219,.55); }
.fp-hero--wheat .fp-hero__sub,.fp-hero--cream .fp-hero__sub,.fp-hero--white .fp-hero__sub { color:var(--bark-muted); }
/* Grid overlay on moss */
.fp-hero--moss::before { content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;pointer-events:none; }

/* ── SECTION 2: INTRO ── */
.fp-intro { padding:5rem 3% 0;max-width:1000px;margin:0 auto; }
.fp-intro__text { font-size:1.15rem;line-height:1.85;color:var(--bark-soft);font-weight:300;border-left:3px solid var(--clay);padding-left:2rem; }

/* ── SECTION 3: IMAGE ── */
.fp-image { padding:5rem 3%; }
.fp-image--full img { width:100%;border-radius:4px;display:block; }
.fp-image--full .fp-image__caption { font-size:.75rem;color:var(--bark-muted);font-style:italic;margin-top:.8rem;text-align:center; }
.fp-image--side { display:grid;gap:5rem;align-items:center; }
.fp-image--left  { grid-template-columns:1fr 1fr; }
.fp-image--right { grid-template-columns:1fr 1fr; }
.fp-image--right .fp-image__img  { order:2; }
.fp-image--right .fp-image__text { order:1; }
.fp-image__img img { width:100%;border-radius:4px;display:block; }
.fp-image__text { font-size:.95rem;line-height:1.85;color:var(--bark-muted);font-weight:300; }

/* ── SECTION 4: CONTENT BODY ── */
.fp-body { max-width:900px;margin:0 auto;padding:5rem 3%; }
.fp-body h2 { font-family:var(--serif);font-size:1.8rem;font-weight:400;color:var(--moss);margin:3rem 0 1.2rem;padding-top:3rem;border-top:1px solid var(--moss-border); }
.fp-body h2:first-child { border-top:none;padding-top:0;margin-top:0; }
.fp-body h3 { font-family:var(--serif);font-size:1.25rem;font-weight:400;color:var(--bark-soft);margin:2rem 0 .75rem; }
.fp-body p  { font-size:.95rem;line-height:1.85;color:var(--bark-muted);font-weight:300;margin-bottom:1.2rem; }
.fp-body ul,.fp-body ol { margin:.5rem 0 1.5rem 1.2rem;display:flex;flex-direction:column;gap:.4rem; }
.fp-body li { font-size:.92rem;line-height:1.7;color:var(--bark-muted);font-weight:300; }
.fp-body strong { color:var(--bark-soft);font-weight:500; }
.fp-body a { color:var(--clay); }
.fp-body blockquote { border-left:3px solid var(--clay);padding:1.5rem 2rem;margin:2rem 0;background:var(--wheat);border-radius:0 4px 4px 0; }
.fp-body blockquote p { font-family:var(--serif);font-style:italic;font-size:1rem;color:var(--moss);margin:0; }

/* ── SECTION 5: FEATURE CARDS ── */
.fp-cards { padding:6rem 3%;background:var(--wheat);border-top:1px solid var(--moss-border);border-bottom:1px solid var(--moss-border); }
.fp-cards__header { max-width:580px;margin-bottom:4rem; }
.fp-cards__title { font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:400;color:var(--moss);line-height:1.2; }
.fp-cards__title em { font-style:italic;color:var(--clay); }
.fp-cards__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem; }
.fp-card { background:var(--cream);border:1px solid var(--moss-border);border-radius:16px 4px 16px 4px;padding:2.5rem;position:relative;overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .4s; }
.fp-card:hover { transform:translateY(-5px);box-shadow:0 20px 50px rgba(45,74,45,.1);border-color:var(--moss-lift); }
.fp-card::before { content:'';position:absolute;top:-30px;right:-30px;width:80px;height:80px;border-radius:50%;background:var(--moss-glow);transition:transform .6s var(--ease); }
.fp-card:hover::before { transform:scale(2); }
.fp-card__icon { width:42px;height:42px;border-radius:50%;background:var(--moss-soft);border:1px solid var(--moss-border);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;font-size:1.2rem;transition:background .4s,border-color .4s; }
.fp-card:hover .fp-card__icon { background:var(--clay-pale);border-color:var(--clay-border); }
.fp-card__title { font-family:var(--serif);font-size:1.1rem;font-weight:400;color:var(--moss);margin-bottom:.6rem; }
.fp-card__text  { font-size:.8rem;line-height:1.75;color:var(--bark-muted);font-weight:300; }

/* ── SECTION 6: QUOTE ── */
.fp-quote { padding:6rem 3%;background:var(--cream-warm); }
.fp-quote__inner { max-width:960px;margin:0 auto;border-left:3px solid var(--clay);padding:2.5rem 3.5rem;position:relative; }
.fp-quote__mark { font-family:var(--serif);font-size:5rem;color:var(--clay-pale);position:absolute;top:-.5rem;left:1.5rem;line-height:1;font-weight:400; }
.fp-quote__text { font-family:var(--serif);font-style:italic;font-size:1.3rem;line-height:1.65;color:var(--moss);padding-top:1.5rem;margin-bottom:1.5rem; }
.fp-quote__author { font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--bark-muted);display:flex;align-items:center;gap:.8rem; }
.fp-quote__author::before { content:'';width:20px;height:1px;background:var(--bark-muted); }

/* ── SECTION 7: STEPS ── */
.fp-steps { padding:6rem 3%; }
.fp-steps__title { font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:400;color:var(--moss);margin-bottom:4rem;max-width:560px; }
.fp-steps__title em { font-style:italic;color:var(--clay); }
.fp-steps__list { display:flex;flex-direction:column;gap:2px;max-width:1100px; }
.fp-step { display:grid;grid-template-columns:80px 1fr;background:var(--cream-warm);border:1px solid var(--moss-border);transition:background .4s var(--ease); }
.fp-step:hover { background:var(--wheat-deep); }
.fp-step__num { display:flex;align-items:center;justify-content:center;padding:2rem;border-right:1px solid var(--moss-border);font-family:var(--serif);font-size:1.5rem;font-style:italic;color:var(--wheat-muted);font-weight:400; }
.fp-step__body { padding:2rem 3rem; }
.fp-step__title { font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--moss);margin-bottom:.3rem; }
.fp-step__text  { font-size:.82rem;line-height:1.65;color:var(--bark-muted);font-weight:300; }

/* ── SECTION 8: TWO-COLUMN SPLIT ── */
.fp-split { padding:6rem 3%;border-top:1px solid var(--moss-border); }
.fp-split__inner { display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;max-width:1300px;margin:0 auto; }
.fp-split__title { font-family:var(--serif);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:400;color:var(--moss);margin-bottom:1.5rem;line-height:1.25; }
.fp-split__title em { font-style:italic;color:var(--clay); }
.fp-split__text { font-size:.9rem;line-height:1.85;color:var(--bark-muted);font-weight:300; }
.fp-split__col h2 { font-family:var(--serif);font-size:1.4rem;font-weight:400;color:var(--moss);margin-bottom:1rem; }
.fp-split__col h3 { font-family:var(--serif);font-size:1.1rem;font-weight:400;color:var(--bark-soft);margin:.75rem 0; }
.fp-split__col p  { font-size:.88rem;line-height:1.8;color:var(--bark-muted);font-weight:300;margin-bottom:1rem; }
.fp-split__col ul { margin:.5rem 0 1rem 1rem;display:flex;flex-direction:column;gap:.35rem; }
.fp-split__col li { font-size:.85rem;line-height:1.65;color:var(--bark-muted);font-weight:300; }
.fp-split__col img { width:100%;border-radius:4px;display:block; }

/* ── SECTION 9: FAQ ACCORDION ── */
.fp-faq { padding:6rem 3%;background:var(--wheat);border-top:1px solid var(--moss-border);border-bottom:1px solid var(--moss-border); }
.fp-faq__title { font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:400;color:var(--moss);margin-bottom:3rem;max-width:560px; }
.fp-faq__title em { font-style:italic;color:var(--clay); }
.fp-faq__list { max-width:1000px;display:flex;flex-direction:column;gap:2px; }
.fp-faq__item { background:var(--cream);border:1px solid var(--moss-border); }
.fp-faq__q { width:100%;background:none;border:none;padding:1.8rem 2rem;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:2rem;font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--moss);transition:background .3s; }
.fp-faq__q:hover { background:var(--moss-soft); }
.fp-faq__q-icon { width:24px;height:24px;border-radius:50%;background:var(--moss-soft);border:1px solid var(--moss-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s,transform .3s; }
.fp-faq__q-icon svg { width:10px;height:10px;stroke:var(--moss);fill:none;stroke-width:2;transition:transform .3s; }
.fp-faq__item.open .fp-faq__q { background:var(--moss-soft); }
.fp-faq__item.open .fp-faq__q-icon { background:var(--clay-pale);border-color:var(--clay-border);transform:rotate(45deg); }
.fp-faq__item.open .fp-faq__q-icon svg { stroke:var(--clay); }
.fp-faq__a { display:none;padding:0 2rem 1.8rem 2rem;font-size:.88rem;line-height:1.8;color:var(--bark-muted);font-weight:300; }
.fp-faq__item.open .fp-faq__a { display:block; }

/* ── SECTION 10: CTA BLOCK ── */
.fp-cta { padding:7rem 3%;text-align:center;position:relative;overflow:hidden; }
.fp-cta--moss  { background:var(--moss); }
.fp-cta--wheat { background:var(--wheat); }
.fp-cta--cream { background:var(--cream); }
.fp-cta--moss::before { content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;pointer-events:none; }
.fp-cta__inner { position:relative;z-index:1;max-width:600px;margin:0 auto; }
.fp-cta__eyebrow { font-size:.58rem;font-weight:600;letter-spacing:.38em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.9rem;margin-bottom:1.5rem; }
.fp-cta__eyebrow::before { content:'';width:24px;height:1px;flex-shrink:0; }
.fp-cta--moss  .fp-cta__eyebrow { color:var(--clay-light); }
.fp-cta--moss  .fp-cta__eyebrow::before { background:var(--clay); }
.fp-cta--wheat .fp-cta__eyebrow,.fp-cta--cream .fp-cta__eyebrow { color:var(--clay); }
.fp-cta--wheat .fp-cta__eyebrow::before,.fp-cta--cream .fp-cta__eyebrow::before { background:var(--clay); }
.fp-cta__title { font-family:var(--serif);font-size:clamp(2rem,4vw,3.2rem);font-weight:400;line-height:1.15;margin-bottom:1.2rem; }
.fp-cta--moss  .fp-cta__title { color:var(--wheat); }
.fp-cta--wheat .fp-cta__title,.fp-cta--cream .fp-cta__title { color:var(--moss); }
.fp-cta__title em { font-style:italic; }
.fp-cta--moss  .fp-cta__title em { color:var(--clay-light); }
.fp-cta--wheat .fp-cta__title em,.fp-cta--cream .fp-cta__title em { color:var(--clay); }
.fp-cta__sub { font-size:.9rem;line-height:1.85;font-weight:300;margin-bottom:2.5rem; }
.fp-cta--moss  .fp-cta__sub { color:rgba(245,237,219,.5); }
.fp-cta--wheat .fp-cta__sub,.fp-cta--cream .fp-cta__sub { color:var(--bark-muted); }
.fp-cta__note { font-size:.62rem;letter-spacing:.12em;margin-top:1rem; }
.fp-cta--moss  .fp-cta__note { color:rgba(245,237,219,.25); }
.fp-cta--wheat .fp-cta__note,.fp-cta--cream .fp-cta__note { color:var(--wheat-muted); }

/* ── SECTION 11: CUSTOM HTML ── */
.fp-html { padding:3rem 3%;max-width:1100px;margin:0 auto; }

/* ── FOOTER ── */
.fp-foot { background:var(--bark);padding:3rem 5%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem; }
.fp-foot__brand-main { font-family:var(--serif-sc);font-size:.85rem;color:var(--wheat-deep); }
.fp-foot__brand-sub  { font-size:.5rem;letter-spacing:.28em;text-transform:uppercase;color:var(--bark-muted);margin-top:.2rem; }
.fp-foot__links { display:flex;gap:2rem;justify-content:center; }
.fp-foot__link { font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bark-muted);text-decoration:none;transition:color .3s; }
.fp-foot__link:hover { color:var(--clay-light); }
.fp-foot__copy { font-size:.6rem;color:var(--bark-muted);text-align:right; }

@media(max-width:1024px) {
  .fp-cards__grid { grid-template-columns:repeat(2,1fr); }
  .fp-split__inner { grid-template-columns:1fr; gap:3rem; }
  .fp-image--side { grid-template-columns:1fr; }
  .fp-image--right .fp-image__img,.fp-image--right .fp-image__text { order:unset; }
}
@media(max-width:768px) {
  .fp-nav__links { display:none; }
  .fp-cards__grid { grid-template-columns:1fr; }
  .fp-steps__list .fp-step { grid-template-columns:60px 1fr; }
  .fp-foot { grid-template-columns:1fr;text-align:center; }
  .fp-foot__copy { text-align:center; }
}
/* ── Universal top padding for fixed nav — removed per client preference ── */
.page-content-wrap,
.fp-page-wrap,
.post-content-wrap { padding-top: 0; }

/* =====================================================
   FOOTER — Dynamic column grid
   Columns auto-adjust based on how many menus are assigned
   ===================================================== */

/* Base footer layout */
.site-footer-global {
  background: #f4eddb;
  padding: 4rem 5%;
  display: grid;
  gap: 3rem;
  /* Default: brand only */
  grid-template-columns: 1fr;
}

/* 1 column menu assigned */
.site-footer-global--cols-1 {
  grid-template-columns: 1.4fr 1fr;
}
/* 2 column menus assigned */
.site-footer-global--cols-2 {
  grid-template-columns: 1.4fr 1fr 1fr;
}
/* 3 column menus assigned */
.site-footer-global--cols-3 {
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
}
/* 4 column menus assigned */
.site-footer-global--cols-4 {
  grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr;
}

/* Brand */
.site-footer-global__brand {}
.site-footer-global__brand-logo { text-decoration: none; display: inline-block; margin-bottom: 0.6rem; }
.site-footer-global__brand-name {
  font-family: var(--serif-sc);
  font-size: 1rem;
  color: var(--wheat-deep);
  letter-spacing: 0.06em;
  display: block;
}
.site-footer-global__logo-w { color: var(--clay); }
.site-footer-global__brand-sub {
  font-size: 0.55rem;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--bark-muted);
  margin-bottom: 1rem;
  display: block;
}
.site-footer-global__brand-text {
  font-size: 0.8rem;
  line-height: 1.7;
  color: var(--bark-muted);
  font-weight: 300;
  max-width: 280px;
}

/* Columns */
.site-footer-global__col {}
.site-footer-global__col-title {
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--moss);
  margin-bottom: 1.2rem;
  display: block;
}
/* Menu links inside footer columns */
.site-footer-global__menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.site-footer-global__menu li { display: block; }
.site-footer-global__menu a,
.site-footer-global__col a {
  display: block;
  font-size: 0.85rem;
  color: var(--moss);
  padding: 0.4rem 0;
  text-decoration: none;
  transition: color 0.25s;
  font-weight: 300;
}
.site-footer-global__menu a:hover,
.site-footer-global__col a:hover { color: var(--clay); }

/* Bottom legal bar */
.site-footer-global__bottom {
  background: var(--bark-soft);
  padding: 1.4rem 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
}
.site-footer-global__copy {
  font-size: 0.72rem;
  color: var(--bark-muted);
  letter-spacing: 0.06em;
}
/* Legal menu */
.site-footer-global__legal {
  display: flex;
  gap: 2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer-global__legal li { display: inline; }
.site-footer-global__legal a,
.site-footer-global__legal li a {
  font-size: 0.7rem;
  color: var(--bark-muted);
  text-decoration: none;
  transition: color 0.25s;
  letter-spacing: 0.06em;
}
.site-footer-global__legal a:hover,
.site-footer-global__legal li a:hover { color: var(--clay); }

/* Custom logo sizing in footer */
.site-footer-global .custom-logo { max-height: 50px; width: auto; }
.site-footer-global .custom-logo-link { display: inline-block; margin-bottom: 0.8rem; }

/* ── Responsive ── */
@media (max-width: 1100px) {
  .site-footer-global--cols-4 { grid-template-columns: 1fr 1fr 1fr; }
  .site-footer-global--cols-3 { grid-template-columns: 1fr 1fr 1fr; }
}
@media (max-width: 768px) {
  .site-footer-global,
  .site-footer-global--cols-1,
  .site-footer-global--cols-2,
  .site-footer-global--cols-3,
  .site-footer-global--cols-4 {
    grid-template-columns: 1fr;
  }
  .site-footer-global__bottom {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
  .site-footer-global__legal { flex-wrap: wrap; justify-content: center; gap: 1rem; }
}

/* =====================================================
   CONTACT PAGE TEMPLATE
   ===================================================== */

.ct-wrap { padding-top: 0; }

/* ── Hero ── */
.ct-hero {
  background: var(--moss);
  padding: 7rem 5% 5rem;
  position: relative;
  overflow: hidden;
  text-align: center;
}
.ct-hero__bg {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
                    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}
.ct-hero__ring {
  position: absolute; right: -10%; bottom: -30%;
  width: 500px; height: 500px; border-radius: 50%;
  border: 1px solid rgba(255,255,255,.04);
  pointer-events: none;
}
.ct-hero__inner { position: relative; z-index: 1; max-width: 760px; margin: 0 auto; }
.ct-hero__eyebrow {
  font-size: .62rem; font-weight: 600; letter-spacing: .32em;
  text-transform: uppercase; color: var(--clay);
  display: inline-flex; align-items: center; gap: .9rem;
  margin-bottom: 1.8rem;
}
.ct-hero__eyebrow-line { width: 24px; height: 1px; background: var(--clay); display: block; }
.ct-hero__title {
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5vw, 4rem);
  font-weight: 400; line-height: 1.1; letter-spacing: -.02em;
  color: var(--wheat); margin-bottom: 1.5rem;
}
.ct-hero__title em { font-style: italic; color: var(--clay); }
.ct-hero__sub {
  font-size: 1rem; line-height: 1.85; font-weight: 300;
  color: rgba(245,237,219,.6); max-width: 560px;
  margin: 0 auto 2.5rem;
}
.ct-hero__badges {
  display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap;
}
.ct-hero__badge {
  display: inline-flex; align-items: center; gap: .5rem;
  font-size: .68rem; font-weight: 500; letter-spacing: .1em;
  text-transform: uppercase; color: rgba(245,237,219,.5);
  background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1);
  padding: .55rem 1.2rem; border-radius: 100px;
}
.ct-hero__badge svg { opacity: .6; }

/* ── Body: Form + Info ── */
.ct-body { padding: 6rem 4% 5rem; background: var(--cream); }
.ct-body__inner {
  max-width: 1280px; margin: 0 auto;
  display: grid; grid-template-columns: 1.1fr .9fr; gap: 5rem; align-items: start;
}

/* ── Form column ── */
.ct-form-col {}
.ct-form-box {
  background: var(--white);
  border: 1px solid var(--moss-border);
  border-radius: 12px;
  padding: 3rem;
  box-shadow: 0 4px 24px rgba(91,31,107,.06);
}
.ct-form-box__title {
  font-family: var(--serif); font-size: 1.6rem; font-weight: 400;
  color: var(--moss); margin-bottom: .5rem;
}
.ct-form-box__sub {
  font-size: .9rem; color: var(--bark-muted); font-weight: 300;
  margin-bottom: 2rem; line-height: 1.6;
}

/* Form plugin overrides — works with WPForms, CF7, Fluent Forms */
.ct-form-box__form .wpcf7-form,
.ct-form-box__form .wpforms-form,
.ct-form-box__form form {
  display: flex; flex-direction: column; gap: 1.2rem;
}
.ct-form-box__form input[type="text"],
.ct-form-box__form input[type="email"],
.ct-form-box__form input[type="tel"],
.ct-form-box__form textarea,
.ct-form-box__form select {
  width: 100%;
  font-family: var(--sans); font-size: .95rem;
  color: var(--bark); background: var(--cream-warm);
  border: 1px solid var(--moss-border); border-radius: 4px;
  padding: .9rem 1.2rem; outline: none;
  transition: border-color .3s, box-shadow .3s;
}
.ct-form-box__form input:focus,
.ct-form-box__form textarea:focus,
.ct-form-box__form select:focus {
  border-color: var(--moss);
  box-shadow: 0 0 0 3px rgba(91,31,107,.08);
}
.ct-form-box__form textarea { min-height: 130px; resize: vertical; }
.ct-form-box__form label {
  font-size: .72rem; font-weight: 600; letter-spacing: .1em;
  text-transform: uppercase; color: var(--bark-muted);
  display: block; margin-bottom: .4rem;
}
/* Submit button — works with most plugins */
.ct-form-box__form input[type="submit"],
.ct-form-box__form button[type="submit"],
.ct-form-box__form .wpforms-submit,
.ct-form-box__form .wpcf7-submit {
  background: var(--moss); color: var(--white);
  border: none; border-radius: 4px;
  font-family: var(--sans); font-size: .8rem;
  font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
  padding: 1.1rem 2.8rem; cursor: pointer;
  transition: all .4s var(--ease); width: auto;
}
.ct-form-box__form input[type="submit"]:hover,
.ct-form-box__form button[type="submit"]:hover,
.ct-form-box__form .wpforms-submit:hover,
.ct-form-box__form .wpcf7-submit:hover {
  background: var(--clay); color: var(--bark);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(126,200,26,.3);
}

/* Placeholder (no shortcode yet) */
.ct-form-placeholder {
  background: var(--cream-warm); border: 2px dashed var(--moss-border);
  border-radius: 8px; padding: 3rem; text-align: center;
}
.ct-form-placeholder__icon {
  width: 60px; height: 60px; border-radius: 50%;
  background: var(--moss-soft); border: 1px solid var(--moss-border);
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 1.5rem;
}
.ct-form-placeholder__icon svg { stroke: var(--moss); }
.ct-form-placeholder h3 {
  font-family: var(--serif); font-size: 1.2rem; color: var(--moss);
  margin-bottom: .75rem; font-weight: 400;
}
.ct-form-placeholder p {
  font-size: .85rem; color: var(--bark-muted); line-height: 1.7;
  font-weight: 300; margin-bottom: .5rem;
}
.ct-form-placeholder code {
  background: var(--wheat-deep); padding: .2rem .5rem;
  border-radius: 3px; font-size: .8rem; color: var(--moss);
}

/* WhatsApp button */
.ct-whatsapp-alt {
  margin-top: 1.5rem; text-align: center;
}
.ct-whatsapp-alt__label {
  display: block; font-size: .68rem; font-weight: 500;
  letter-spacing: .12em; text-transform: uppercase;
  color: var(--bark-muted); margin-bottom: .8rem;
}
.ct-whatsapp-btn {
  display: inline-flex; align-items: center; gap: .9rem;
  background: #25d366; color: #fff;
  padding: 1rem 2rem; border-radius: 4px;
  font-size: .8rem; font-weight: 600; letter-spacing: .1em;
  text-transform: uppercase; text-decoration: none;
  transition: all .4s var(--ease);
}
.ct-whatsapp-btn:hover {
  background: #1ebe5d; transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(37,211,102,.3);
}
.ct-whatsapp-btn svg { width: 20px; height: 20px; flex-shrink: 0; }

/* ── Info column ── */
.ct-info-col { display: flex; flex-direction: column; gap: 1rem; position: sticky; top: 100px; }

.ct-info-card {
  background: var(--white); border: 1px solid var(--moss-border);
  border-radius: 10px; padding: 1.5rem 1.8rem;
  display: flex; align-items: flex-start; gap: 1.2rem;
  transition: box-shadow .4s, transform .4s;
}
.ct-info-card:hover { box-shadow: 0 8px 30px rgba(91,31,107,.1); transform: translateX(4px); }
.ct-info-card__icon {
  width: 44px; height: 44px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.ct-info-card__icon--purple { background: var(--moss-soft); border: 1px solid var(--moss-border); }
.ct-info-card__icon--purple svg { stroke: var(--moss); width: 18px; height: 18px; }
.ct-info-card__icon--lime { background: var(--clay-pale); border: 1px solid var(--clay-border); }
.ct-info-card__icon--lime svg { stroke: var(--clay); width: 18px; height: 18px; }
.ct-info-card__body {}
.ct-info-card__label {
  font-size: .62rem; font-weight: 600; letter-spacing: .18em;
  text-transform: uppercase; color: var(--bark-muted); margin-bottom: .3rem;
}
.ct-info-card__value {
  font-size: .95rem; font-weight: 400; color: var(--bark-soft); line-height: 1.4;
}
.ct-info-card__value--link { color: var(--moss); text-decoration: none; }
.ct-info-card__value--link:hover { color: var(--clay); }
.ct-info-card__note {
  font-size: .75rem; color: var(--bark-muted); margin-top: .25rem;
  font-weight: 300;
}

/* Zaheer personal note */
.ct-zaheer-note {
  background: var(--moss); border-radius: 10px;
  padding: 1.8rem; display: flex; gap: 1.2rem; align-items: flex-start;
  margin-top: .5rem;
}
.ct-zaheer-note__avatar {
  width: 48px; height: 48px; border-radius: 50%;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--serif); font-size: .95rem;
  color: var(--wheat); flex-shrink: 0;
}
.ct-zaheer-note__name {
  font-size: .88rem; font-weight: 500; color: var(--wheat);
  margin-bottom: .1rem;
}
.ct-zaheer-note__role {
  font-size: .65rem; letter-spacing: .12em; text-transform: uppercase;
  color: rgba(245,237,219,.4); margin-bottom: .75rem;
}
.ct-zaheer-note__text {
  font-size: .8rem; line-height: 1.65; color: rgba(245,237,219,.55);
  font-weight: 300;
}

/* ── Trust strip ── */
.ct-trust { background: var(--wheat); border-top: 1px solid var(--moss-border); border-bottom: 1px solid var(--moss-border); padding: 4rem 4%; }
.ct-trust__inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: repeat(3,1fr); gap: 3rem; }
.ct-trust__item { display: flex; gap: 1.4rem; align-items: flex-start; }
.ct-trust__item-icon {
  width: 48px; height: 48px; border-radius: 50%;
  background: var(--moss-soft); border: 1px solid var(--moss-border);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.ct-trust__item-icon svg { width: 20px; height: 20px; stroke: var(--moss); }
.ct-trust__item-title {
  font-family: var(--serif); font-size: 1.05rem; font-weight: 400;
  color: var(--moss); margin-bottom: .4rem;
}
.ct-trust__item-text { font-size: .85rem; line-height: 1.7; color: var(--bark-muted); font-weight: 300; }

/* ── Bottom CTA ── */
.ct-cta {
  background: var(--moss); padding: 6rem 4%;
  text-align: center; position: relative; overflow: hidden;
}
.ct-cta::before {
  content: ''; position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
                    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size: 48px 48px; pointer-events: none;
}
.ct-cta__inner { position: relative; z-index: 1; max-width: 600px; margin: 0 auto; }
.ct-cta__title {
  font-family: var(--serif); font-size: clamp(2rem,4vw,3.2rem);
  font-weight: 400; line-height: 1.15; color: var(--wheat);
  margin-bottom: 1rem;
}
.ct-cta__title em { font-style: italic; color: var(--clay); }
.ct-cta__sub { font-size: .95rem; line-height: 1.8; color: rgba(245,237,219,.55); font-weight: 300; margin-bottom: 2.5rem; }
.ct-cta__note { font-size: .65rem; color: rgba(245,237,219,.28); letter-spacing: .12em; margin-top: 1.2rem; }

/* ── Responsive ── */
@media (max-width: 1100px) {
  .ct-body__inner { grid-template-columns: 1fr; gap: 3rem; }
  .ct-info-col { position: static; }
  .ct-trust__inner { grid-template-columns: 1fr; gap: 2rem; }
}
@media (max-width: 768px) {
  .ct-hero { padding: 5rem 5% 4rem; }
  .ct-hero__badges { flex-direction: column; align-items: center; }
  .ct-form-box { padding: 2rem; }
  .ct-body { padding: 4rem 5% 3rem; }
}

/* ── Method page editor content ── */
.mth-editor-content {
  padding: 5rem 5%;
  background: var(--cream);
  border-bottom: 1px solid var(--moss-border);
}
.mth-editor-content__inner {
  max-width: 860px;
  margin: 0 auto;
}
.mth-editor-content__inner h2 {
  font-family: var(--serif); font-size: 1.8rem; font-weight: 400;
  color: var(--moss); margin: 2.5rem 0 1rem; line-height: 1.25;
}
.mth-editor-content__inner h3 {
  font-family: var(--serif); font-size: 1.3rem; font-weight: 400;
  color: var(--moss); margin: 2rem 0 0.75rem;
}
.mth-editor-content__inner p {
  font-size: 0.95rem; line-height: 1.85;
  color: var(--bark-muted); font-weight: 300; margin-bottom: 1.2rem;
}
.mth-editor-content__inner strong { color: var(--bark-soft); font-weight: 500; }
.mth-editor-content__inner ul,
.mth-editor-content__inner ol {
  padding-left: 1.5rem; margin-bottom: 1.2rem;
}
.mth-editor-content__inner li {
  font-size: 0.95rem; line-height: 1.8;
  color: var(--bark-muted); font-weight: 300; margin-bottom: 0.4rem;
}

/* =====================================================
   DESKTOP DROPDOWN SUBMENU
   ===================================================== */
.ewgw-nav-item {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.ewgw-nav-parent {
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--bark-muted);
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0;
  transition: color 0.3s;
}
.ewgw-nav-parent:hover { color: var(--moss); }
.ewgw-nav-arrow {
  transition: transform 0.3s var(--ease);
  flex-shrink: 0;
}
.ewgw-nav-item--has-dropdown:hover .ewgw-nav-arrow,
.ewgw-nav-item--has-dropdown.open .ewgw-nav-arrow {
  transform: rotate(180deg);
}

/* Dropdown panel */
.ewgw-dropdown {
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  transform: translateX(-50%);
  min-width: 220px;
  background: var(--white);
  border: 1px solid var(--moss-border);
  border-radius: 8px;
  box-shadow: 0 12px 40px rgba(91,31,107,0.12);
  padding: 0.6rem 0;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-50%) translateY(-6px);
  transition: opacity 0.25s var(--ease), transform 0.25s var(--ease), visibility 0.25s;
  z-index: 999;
}
/* Small arrow pointer at top */
.ewgw-dropdown::before {
  content: '';
  position: absolute;
  top: -6px;
  left: 50%;
  transform: translateX(-50%);
  width: 12px;
  height: 6px;
  background: var(--white);
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  border-left: 1px solid var(--moss-border);
  border-right: 1px solid var(--moss-border);
}
/* Show on hover */
.ewgw-nav-item--has-dropdown:hover .ewgw-dropdown,
.ewgw-nav-item--has-dropdown.open .ewgw-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
/* Dropdown links */
.ewgw-dropdown-link {
  display: block;
  padding: 0.75rem 1.4rem;
  font-size: 0.78rem;
  color: var(--bark-soft);
  text-decoration: none;
  font-weight: 300;
  transition: background 0.2s, color 0.2s, padding-left 0.2s;
  white-space: nowrap;
}
.ewgw-dropdown-link:hover {
  background: var(--moss-soft);
  color: var(--moss);
  padding-left: 1.8rem;
}

/* =====================================================
   MOBILE SUBMENU
   ===================================================== */
.ewgw-mobile-item--parent {
  display: flex;
  flex-direction: column;
}
.ewgw-mobile-toggle {
  background: none;
  border: none;
  cursor: pointer;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--serif);
  font-size: 1.2rem;
  font-weight: 400;
  color: var(--wheat);
  padding: 1.2rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.ewgw-mobile-toggle svg {
  transition: transform 0.3s;
  flex-shrink: 0;
}
.ewgw-mobile-toggle[aria-expanded="true"] svg {
  transform: rotate(180deg);
}
.ewgw-mobile-submenu {
  padding: 0.5rem 0 0.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.ewgw-mobile-submenu[hidden] { display: none; }
.ewgw-mobile-sub-link {
  display: block;
  font-size: 1rem;
  color: rgba(245,237,219,0.65);
  padding: 0.7rem 0;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,0.04);
  transition: color 0.25s;
}
.ewgw-mobile-sub-link:hover { color: var(--clay); }

/* =====================================================
   LOGO CUSTOMIZER — custom-logo sizing baseline
   ===================================================== */
.site-nav-global .custom-logo-link {
  display: flex;
  align-items: center;
}
.site-nav-global .custom-logo {
  width: 160px;
  height: auto;
  max-height: 80px;
  object-fit: contain;
  display: block;
}
@media (max-width: 768px) {
  .site-nav-global .custom-logo { width: 120px; }
}

/* =====================================================
   PRIMARY NAV MENU — WordPress default classes
   Desktop dropdowns + Mobile responsive
   ===================================================== */

/* ── Desktop menu list ── */
.ewgw-menu {
  list-style: none;
  margin: 0; padding: 0;
  display: flex;
  align-items: center;
  gap: 0.2rem;
}

/* ── Top level items ── */
.ewgw-menu > .menu-item {
  position: relative;
}
.ewgw-menu > .menu-item > a {
  display: block;
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--bark-muted);
  text-decoration: none;
  padding: 0.5rem 0.8rem;
  border-radius: 4px;
  transition: color 0.3s, background 0.3s;
  white-space: nowrap;
}
.ewgw-menu > .menu-item > a:hover,
.ewgw-menu > .menu-item:hover > a {
  color: var(--moss);
  background: var(--moss-soft);
}

/* ── CTA button item ── */
.ewgw-menu > .menu-item.ewgw-menu__cta > a,
.ewgw-menu > .menu-item.nav__cta > a {
  background: var(--moss);
  color: var(--white) !important;
  padding: 0.65rem 1.4rem;
  border-radius: 100px;
}
.ewgw-menu > .menu-item.ewgw-menu__cta > a:hover,
.ewgw-menu > .menu-item.nav__cta > a:hover {
  background: var(--clay);
  color: var(--bark) !important;
}

/* ── Dropdown arrow indicator ── */
.ewgw-menu > .menu-item-has-children > a::after {
  content: '';
  display: inline-block;
  width: 0; height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid currentColor;
  margin-left: 5px;
  vertical-align: middle;
  transition: transform 0.3s;
}
.ewgw-menu > .menu-item-has-children:hover > a::after {
  transform: rotate(180deg);
}

/* ── Dropdown panel ── */
.ewgw-menu .sub-menu {
  list-style: none;
  margin: 0; padding: 0.5rem 0;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 220px;
  background: var(--white);
  border: 1px solid var(--moss-border);
  border-radius: 8px;
  box-shadow: 0 12px 40px rgba(91,31,107,0.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
  z-index: 999;
}
/* Small triangle pointer */
.ewgw-menu .sub-menu::before {
  content: '';
  position: absolute;
  top: -6px; left: 20px;
  width: 0; height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid var(--moss-border);
}
.ewgw-menu .sub-menu::after {
  content: '';
  position: absolute;
  top: -5px; left: 21px;
  width: 0; height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid var(--white);
}
/* Show on hover */
.ewgw-menu .menu-item-has-children:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
/* Dropdown links */
.ewgw-menu .sub-menu .menu-item > a {
  display: block;
  padding: 0.7rem 1.4rem;
  font-size: 0.82rem;
  color: var(--bark-soft);
  text-decoration: none;
  font-weight: 300;
  white-space: nowrap;
  transition: background 0.2s, color 0.2s, padding-left 0.2s;
}
.ewgw-menu .sub-menu .menu-item > a:hover {
  background: var(--moss-soft);
  color: var(--moss);
  padding-left: 1.8rem;
}
.ewgw-menu .sub-menu .menu-item {
  border-bottom: 1px solid var(--moss-border);
}
.ewgw-menu .sub-menu .menu-item:last-child {
  border-bottom: none;
}

/* =====================================================
   MOBILE MENU — WordPress default classes
   ===================================================== */
.ewgw-mobile-menu {
  list-style: none;
  margin: 0; padding: 0;
  display: flex;
  flex-direction: column;
}
/* Top level mobile links */
.ewgw-mobile-menu > .menu-item > a {
  display: block;
  font-family: var(--serif);
  font-size: 1.2rem;
  font-weight: 400;
  color: var(--wheat);
  padding: 1.1rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  text-decoration: none;
  transition: color 0.25s;
}
.ewgw-mobile-menu > .menu-item > a:hover {
  color: var(--clay);
}
/* Mobile CTA */
.ewgw-mobile-menu > .menu-item.ewgw-mobile-menu__cta > a,
.ewgw-mobile-menu > .menu-item.nav__cta > a {
  display: inline-block;
  margin-top: 1.5rem;
  background: var(--clay);
  color: var(--bark) !important;
  padding: 0.9rem 2rem;
  border-radius: 100px;
  font-family: var(--sans);
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-bottom: none;
}
/* Mobile submenu */
.ewgw-mobile-menu .sub-menu {
  list-style: none;
  margin: 0; padding: 0 0 0.5rem 1.2rem;
  display: none; /* hidden by default — JS toggles open class */
}
.ewgw-mobile-menu .sub-menu.open {
  display: block;
}
.ewgw-mobile-menu .sub-menu .menu-item > a {
  display: block;
  font-size: 1rem;
  color: rgba(245,237,219,0.6);
  padding: 0.6rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  text-decoration: none;
  transition: color 0.25s;
}
.ewgw-mobile-menu .sub-menu .menu-item > a:hover {
  color: var(--clay);
}
/* Parent item arrow in mobile */
.ewgw-mobile-menu .menu-item-has-children > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ewgw-mobile-menu .menu-item-has-children > a::after {
  content: '+';
  font-size: 1.4rem;
  font-weight: 300;
  color: rgba(245,237,219,0.5);
  line-height: 1;
  transition: transform 0.3s;
  display: inline-block;
}
.ewgw-mobile-menu .menu-item-has-children.open > a::after {
  content: '−';
}

/* =====================================================
   NAV JS — update script targets ewgw-menu classes
   ===================================================== */

/* ── Nav logo always left, links always right ── */
.site-nav-global { justify-content: space-between !important; }
.site-nav-global__logo { order: 1; }
.site-nav-global__links { order: 2; }
.site-nav-global__burger { order: 3; }

/* Different section — yes items text layout */
.different__yes-body {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

/* =====================================================
   DEFAULT PAGE — page.php
   Used by Elementor and Classic Editor pages
   ===================================================== */
.default-page-wrap {
  min-height: 60vh;
}
/* Elementor full width / canvas — no extra padding needed */
.elementor-page .default-page-wrap {
  padding-top: 0;
}

/* ── Natural panel — reduce side padding on mobile ── */
@media (max-width: 768px) {
  .natural__panel { padding: 3rem 1.5rem; }
}

/* ── Mobile menu close button ── */
.ewgw-mobile-close {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0 0 1.5rem 0;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.ewgw-mobile-close svg {
  width: 28px;
  height: 28px;
  stroke: rgba(245,237,219,0.6);
  transition: stroke 0.2s;
}
.ewgw-mobile-close:hover svg {
  stroke: var(--clay);
}

/* ── Nested submenus (3rd level and beyond) ── */
.ewgw-mobile-menu .sub-menu .sub-menu {
  padding-left: 1rem;
  border-left: 2px solid rgba(255,255,255,0.08);
  margin-left: 0.5rem;
  margin-top: 0.3rem;
}
.ewgw-mobile-menu .sub-menu .sub-menu .menu-item > a {
  font-size: 0.9rem;
  color: rgba(245,237,219,0.45);
  padding: 0.5rem 0;
}
.ewgw-mobile-menu .sub-menu .menu-item-has-children > a::after {
  content: '+';
  font-size: 1.2rem;
  font-weight: 300;
  color: rgba(245,237,219,0.4);
  display: inline-block;
  transition: none;
}
.ewgw-mobile-menu .sub-menu .menu-item-has-children.open > a::after {
  content: '−';
}
