/* =====================================================================
   LIFEVYNE — THEMES  (colours and typography for each concept)
   ---------------------------------------------------------------------
   Each concept is a set of named colours ("--name: value;").
   To adjust a colour, change only the value after the colon,
   for example:   --navy: #0f1d33;   →   --navy: #102240;

   Fonts use built-in system typefaces (no downloads), so they load
   instantly on Hostinger and when opened from disk. Exact letterforms
   vary slightly between Windows and Mac.
   ===================================================================== */

/* =====================================================================
   CONCEPT A — PRIVATE WEALTH
   Deep navy · ivory · champagne
   ===================================================================== */
.theme-pw {
  /* Palette */
  --navy:        #0f1d33;
  --navy-2:      #172a47;
  --navy-deep:   #0a1424;
  --ivory:       #f8f4ec;
  --ivory-2:     #f0e9db;
  --champagne:   #d8c39a;
  --champagne-2: #e6d6b5;
  --gold-text:   #7a5f30;   /* champagne darkened for readable text on ivory */
  --ink:         #18233a;
  --ink-soft:    #4a5468;

  /* Typography */
  --font-display: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", "GFS Baskerville", Georgia, "Times New Roman", serif;
  --font-wordmark: var(--font-display);
  --font-body:   "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-label:  var(--font-body);
  --font-subhead: var(--font-display);
  --display-weight: 400;
  --display-tracking: -0.005em;
  --display-leading: 1.1;
  --subhead-weight: 400;
  --text-hero: clamp(2.5rem, 5.6vw, 4.5rem);
  --text-h2:   clamp(2rem, 3.8vw, 3.125rem);
  --text-h3:   1.5rem;
  --text-h4:   1.3125rem;
  --label-tracking: 0.24em;
  --wordmark-size: 1.375rem;
  --wordmark-tracking: 0.34em;
  --wordmark-desc-tracking: 0.26em;
  --btn-case: uppercase;
  --btn-tracking: 0.14em;
  --btn-tracking-compact: 0.1em;
  --radius-btn: 0;
  --radius-media: 0;
  --container: 1240px;
  --eyebrow-rule: 32px;
  --icon-size: 26px;
  --icon-stroke: 1.25px;

  /* Light sections (default) */
  --c-bg: var(--ivory);
  --c-surface: #fbf8f2;
  --c-ink: var(--ink);
  --c-heading: var(--navy);
  --c-ink-soft: var(--ink-soft);
  --c-ink-faint: #5b6476;
  --c-accent: var(--gold-text);
  --c-line: rgba(15, 29, 51, 0.13);
  --c-line-strong: rgba(15, 29, 51, 0.28);
  --c-focus: #8a6a2f;
  --c-note-bg: rgba(216, 195, 154, 0.18);
  --c-btn-bg: var(--navy);
  --c-btn-bg-hover: var(--navy-2);
  --c-btn-ink: var(--ivory);
  --c-btn-line: rgba(15, 29, 51, 0.4);
  --c-btn-ghost-hover: rgba(15, 29, 51, 0.04);
  --c-demo-bg: #8a2c1d;
  --c-demo-ink: #ffffff;

  /* Placeholders */
  --c-ph-bg: var(--navy-2);
  --ph-fill: linear-gradient(160deg, #22385c 0%, #172a47 55%, #101f37 100%);
  --c-ph-ink: var(--champagne-2);
  --c-ph-line: rgba(216, 195, 154, 0.35);
  --c-ph-hatch: rgba(216, 195, 154, 0.07);

  /* Chrome */
  --c-header-bg: rgba(248, 244, 236, 0.97);
  --c-header-line: rgba(15, 29, 51, 0.1);
  --c-wordmark: var(--navy);
  --c-wordmark-desc: var(--gold-text);
  --c-nav: var(--ink);
  --c-nav-active: var(--navy);
  --c-menu-bg: var(--ivory);
  --c-menu-ink: var(--navy);
  --c-preview-bg: var(--navy-deep);
  --c-preview-ink: var(--champagne-2);
  --c-footer-bg: var(--navy-deep);
  --c-footer-ink: #e9e3d6;
  --c-footer-heading: var(--ivory);
  --c-footer-soft: #b3b9c6;
  --c-footer-accent: var(--champagne);
  --c-footer-line: rgba(216, 195, 154, 0.2);
  --c-footer-line-strong: rgba(216, 195, 154, 0.45);
}

/* Dark (navy) sections in Concept A */
.theme-pw .hero,
.theme-pw .section--program,
.theme-pw .section--founder {
  --c-bg: var(--navy);
  --c-surface: var(--navy-2);
  --c-ink: #ece6da;
  --c-heading: var(--ivory);
  --c-ink-soft: #c3c8d2;
  --c-ink-faint: #a7aebb;
  --c-accent: var(--champagne);
  --c-line: rgba(216, 195, 154, 0.18);
  --c-line-strong: rgba(216, 195, 154, 0.38);
  --c-focus: var(--champagne);
  --c-btn-bg: var(--champagne);
  --c-btn-bg-hover: var(--champagne-2);
  --c-btn-ink: var(--navy-deep);
  --c-btn-line: rgba(216, 195, 154, 0.6);
  --c-btn-ghost-hover: rgba(216, 195, 154, 0.08);
  --c-note-bg: rgba(255, 255, 255, 0.04);
}
.theme-pw .section--program .ph,
.theme-pw .section--founder .ph,
.theme-pw .hero .ph {
  --ph-fill: linear-gradient(160deg, #2a4168 0%, #1b3052 60%, #14243f 100%);
}
.theme-pw .section--employers,
.theme-pw .section--how { --c-bg: var(--ivory-2); --c-surface: var(--ivory); }
.theme-pw .hero { background:
  radial-gradient(120% 80% at 85% 10%, rgba(216, 195, 154, 0.10), transparent 60%),
  var(--navy); }
.theme-pw .hero .display { font-size: var(--text-hero); }
.theme-pw .hero .display em { color: var(--champagne); }
.theme-pw .section-title em { color: inherit; }
.theme-pw .wordmark-name { font-weight: 400; }
.theme-pw .site-header { border-bottom-color: rgba(216, 195, 154, 0.55); }
.theme-pw .final-inner { border-color: rgba(122, 95, 48, 0.45); outline-color: rgba(122, 95, 48, 0.2); }
.theme-pw .eyebrow { font-weight: 600; }

/* How It Works badges — Concept A: gold numerals and champagne outlines on the light section */
.theme-pw .section--how {
  --c-step-ink: #6f5428;              /* darker champagne/gold for readable numerals (≥4.5:1) */
  --c-step-line: #b39459;             /* champagne outline */
  --c-step-connector: rgba(122, 95, 48, 0.35);
}
/* Lining figures from the sans family stay crisp at badge size on every system */
.theme-pw .step-num { font-family: var(--font-label); font-size: 1rem; font-weight: 500; letter-spacing: 0.02em; }

/* =====================================================================
   CONCEPT B — CONTEMPORARY LUXURY
   Forest green · cream · warm neutrals
   ===================================================================== */
.theme-cl {
  /* Palette */
  --forest:      #1f3b2d;
  --forest-2:    #2b4a3a;
  --forest-deep: #132519;
  --cream:       #f6f1e7;
  --cream-2:     #fbf8f1;
  --sand:        #e8dfcd;
  --stone:       #cdbfa6;
  --clay:        #77502b;   /* warm accent, readable on cream */
  --sage:        #b9c7b0;   /* soft accent on green */
  --ink:         #1c2620;
  --ink-soft:    #4b554e;

  /* Typography */
  --font-display: "Avenir Next", Avenir, "Segoe UI Variable Display", "Segoe UI", "Helvetica Neue", Inter, Helvetica, Arial, sans-serif;
  --font-accent: "Didot", "Bodoni 72", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --accent-style: italic;
  --font-wordmark: var(--font-display);
  --font-body:   "Avenir Next", Avenir, "Segoe UI", "Helvetica Neue", Inter, Helvetica, Arial, sans-serif;
  --font-label:  var(--font-body);
  --font-subhead: var(--font-display);
  --display-weight: 300;
  --display-tracking: -0.025em;
  --display-leading: 1.04;
  --subhead-weight: 500;
  --subhead-tracking: -0.01em;
  --text-hero: clamp(2.625rem, 5.2vw, 4.75rem);
  --text-h2:   clamp(2.125rem, 4.4vw, 3.75rem);
  --text-h3:   1.3125rem;
  --text-h4:   1.125rem;
  --label-tracking: 0.16em;
  --wordmark-size: 1.3125rem;
  --wordmark-weight: 300;
  --wordmark-tracking: 0.42em;
  --wordmark-desc-tracking: 0.2em;
  --btn-case: none;
  --btn-tracking: 0.01em;
  --btn-weight: 500;
  --radius-btn: 999px;
  --radius-media: 6px;
  --container: 1320px;
  --eyebrow-rule: 18px;
  --icon-size: 28px;
  --icon-stroke: 1.5px;
  --nav-tracking: 0.02em;

  /* Light sections (default) */
  --c-bg: var(--cream);
  --c-surface: var(--sand);
  --c-ink: var(--ink);
  --c-heading: var(--forest-deep);
  --c-heading-accent: var(--forest);
  --c-ink-soft: var(--ink-soft);
  --c-ink-faint: #59625b;
  --c-accent: var(--clay);
  --c-line: rgba(28, 38, 32, 0.13);
  --c-line-strong: rgba(28, 38, 32, 0.26);
  --c-focus: #77502b;
  --c-note-bg: rgba(205, 191, 166, 0.25);
  --c-btn-bg: var(--forest);
  --c-btn-bg-hover: var(--forest-2);
  --c-btn-ink: var(--cream-2);
  --c-btn-line: rgba(28, 38, 32, 0.35);
  --c-btn-ghost-hover: rgba(31, 59, 45, 0.05);
  --c-demo-bg: #9b3a1c;
  --c-demo-ink: #ffffff;
  --c-block: var(--forest);
  --c-on-block: var(--cream-2);
  --c-on-block-soft: #d5ddd0;
  --c-on-block-accent: var(--sage);

  /* Placeholders */
  --c-ph-bg: var(--stone);
  --ph-fill: linear-gradient(165deg, #ddd2bd 0%, #cfc1a7 55%, #bfae90 100%);
  --c-ph-ink: #2a3a2f;
  --c-ph-line: rgba(31, 59, 45, 0.28);
  --c-ph-hatch: rgba(31, 59, 45, 0.06);

  /* Chrome */
  --c-header-bg: rgba(246, 241, 231, 0.96);
  --c-header-line: rgba(28, 38, 32, 0.08);
  --c-wordmark: var(--forest-deep);
  --c-wordmark-desc: var(--clay);
  --c-nav: var(--ink-soft);
  --c-nav-active: var(--forest-deep);
  --c-menu-bg: var(--cream);
  --c-menu-ink: var(--forest-deep);
  --c-preview-bg: var(--forest-deep);
  --c-preview-ink: var(--sand);
  --c-footer-bg: var(--forest-deep);
  --c-footer-ink: #e6e2d6;
  --c-footer-heading: var(--cream);
  --c-footer-soft: #aebaa9;
  --c-footer-accent: var(--sage);
  --c-footer-line: rgba(185, 199, 176, 0.18);
  --c-footer-line-strong: rgba(185, 199, 176, 0.45);
  --header-shadow: 0 1px 0 rgba(28, 38, 32, 0.08);
}

/* Green sections in Concept B */
.theme-cl .section--why,
.theme-cl .section--how,
.theme-cl .section--final {
  --c-bg: var(--forest);
  --c-surface: var(--forest-2);
  --c-ink: #ece8dc;
  --c-heading: var(--cream-2);
  --c-heading-accent: var(--sage);
  --c-ink-soft: #c9d2c4;
  --c-ink-faint: #b3bfae;
  --c-accent: var(--sage);
  --c-line: rgba(233, 228, 214, 0.16);
  --c-line-strong: rgba(233, 228, 214, 0.32);
  --c-focus: var(--sage);
  --c-btn-bg: var(--cream);
  --c-btn-bg-hover: #ffffff;
  --c-btn-ink: var(--forest-deep);
  --c-btn-line: rgba(233, 228, 214, 0.55);
  --c-btn-ghost-hover: rgba(233, 228, 214, 0.08);
}
.theme-cl .section--how {
  --c-bg: var(--forest-deep);
  /* How It Works badges — Concept B: cream numerals and outlines on dark green */
  --c-step-ink: var(--cream);
  --c-step-line: rgba(246, 241, 231, 0.7);
  --c-step-connector: rgba(246, 241, 231, 0.22);
  --step-num-weight: 300;
}
.theme-cl .section--program,
.theme-cl .section--founder { --c-bg: var(--sand); --c-surface: var(--cream); --c-ph-bg: var(--stone); }
.theme-cl .section--program .ph,
.theme-cl .section--founder .ph { --ph-fill: linear-gradient(165deg, #c9baa0 0%, #b9a685 60%, #a8946f 100%); }
.theme-cl .hero .ph { --ph-fill: linear-gradient(165deg, #d9ccb4 0%, #c8b796 55%, #b5a07c 100%); }

.theme-cl .eyebrow { font-weight: 600; }
.theme-cl .display em, .theme-cl .section-title em { font-weight: 400; letter-spacing: -0.01em; }
.theme-cl .section-intro, .theme-cl .lead { font-weight: 400; }
.theme-cl .wordmark-name { font-weight: 300; }
.theme-cl .btn { padding-inline: 1.9em; }
.theme-cl .btn--primary:hover { transform: translateY(-1px); }
.theme-cl .group-label { border-bottom-color: var(--c-line-strong); }
.theme-cl .hr-note { border-left: 0; border-radius: var(--radius-media); background: var(--sand); }
.theme-cl .final-inner .section-title { font-size: clamp(2.25rem, 5vw, 4.25rem); }
