/* ═══════════════════════════════════════════════════
   HOMEPAGE MASTER PLAN v3.0 — Cartier Reframe Spec v1.6
   Per Atlas v3 Implementation Commission 2026-05-02 + Web Ed v1.6 batch RATIFIED
   Layer 1 TRADEMARK CANON (inviolate) + Layer 2 WEBSITE-CREATIVE LATITUDE
   ═══════════════════════════════════════════════════ */

/* W-v3.2 Foglihten canonical WOFF2 — Design v3 commission output (FoglihtenNo06_076.otf → WOFF2 deployed 2026-05-02) */
@font-face {
  font-family: 'Foglihten';
  src: url('/fonts/FoglihtenNo06_076.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* W-v3.3 CANONICAL COLOR TOKENS per Cartier Reframe Spec v1.6 §4 + Paul §5 lockdowns 2026-05-02 */
:root {
  /* Layer 2 website-creative palette (Polish Punch-List §5 P3 — heritage cream warmer; Paul §5 ratified) */
  --color-canvas:               #F5F0E5;  /* Heritage cream (warmer; readable as warm against pure white) */
  --color-canvas-warm:          #F0EAD9;  /* Deeper heritage cream for scroll-shift atmosphere */

  /* Layer 1 trademark color anchors (Paul §5 LOCKED 2026-05-02) */
  --color-ink:                  #1C1F3A;  /* Deep dark navy; typography + brand mark */
  --color-ink-secondary:        rgba(28, 31, 58, 0.78);
  --color-ink-tertiary:         rgba(28, 31, 58, 0.55);

  /* Layer 1 trademark heritage gold (Paul §5 LOCKED 2026-05-02; #CBA372 canonical) */
  --color-heritage-gold:        #CBA372;          /* Layer 1 trademark canonical (rules / large-text + dark-bg accents) */
  --color-heritage-gold-bright: #DDB987;          /* brighter variant for dark-glass surfaces */
  --color-heritage-gold-text:   #6B4F1E;          /* darker text variant for small text on cream (WCAG AA 4.5:1+) */

  /* Layer 1 trademark cobalt (Paul §5 LOCKED 2026-05-02; #163354 canonical) */
  --color-cobalt-glass:         #163354;
  --color-cobalt-glass-bright:  #234A78;

  /* Layer 1 trademark silver ring (M-button signature gesture; top-left → bottom-right per Paul §5 lockdown) */
  --color-silver-edge:          #E8E8E8;
  --color-silver-mid:           #A8A8A8;
  --color-silver-ring:          linear-gradient(135deg, var(--color-silver-edge) 0%, var(--color-silver-mid) 50%, var(--color-silver-edge) 100%);

  /* Hairline atmosphere */
  --color-hairline-atmosphere:  rgba(28, 31, 58, 0.08);  /* navy at 8% */
  --color-hairline-rule:        rgba(203, 163, 114, 0.55);  /* heritage gold 55% */

  /* Dark navy glass card surface (Layer 1 carry-over from iOS Dating Coach screen; 5% inner-glow per Paul §5 lockdown) */
  --color-dark-navy-glass-bg:   #1C1F3A;
  --color-dark-navy-glass-text: #FBF9F5;
  --color-dark-navy-glass-glow: rgba(255, 255, 255, 0.05);

  /* Layer 1 Apple-strip discipline: red badge #E42F2F EXPLICITLY EXCLUDED */

  /* W-v3.2 Typography stack — Paul §5 CONFIRMED Hoefler & Co. Gotham license 2026-05-02
     Foglihten canonical WOFF2 deployed at /fonts/FoglihtenNo06_076.woff2
     Gotham WOFF2 deployment pending follow-up Design v3 cycle; Inter institutional fallback active */
  --font-display: 'Foglihten', 'Cormorant Garamond', Georgia, serif;  /* Polish §7 P5 dedupe — Foglihten No07 Google Fonts fallback dropped (No06 canonical via local WOFF2) */
  --font-body:    'Gotham', 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;

  /* Motion */
  --easing-cinematic: cubic-bezier(.22, .61, .36, 1);
  --easing-ease-out:  cubic-bezier(.16, 1, .3, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--color-canvas); }

body {
  background: var(--color-canvas);
  color: var(--color-ink);
  font-family: var(--font-body);
  font-weight: 400;
  line-height: 1.65;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.v3-skip-link {
  position: absolute; left: -9999px; top: auto;
  width: 1px; height: 1px; overflow: hidden;
}
.v3-skip-link:focus {
  position: fixed; left: 1rem; top: 1rem;
  width: auto; height: auto; padding: .6rem 1rem;
  background: var(--color-ink); color: var(--color-canvas);
  z-index: 9999;
}

/* ═══════════════════════════════════════════════════
   v3.13 PERSISTENT TOP NAV (Polish v2.13 — foundation-of-gold pre-sprint)
   Cross-page navigation; institutional restraint; cream + navy + heritage gold accent
   ═══════════════════════════════════════════════════ */

.v3-topnav {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--color-canvas);
  border-bottom: 1px solid var(--color-hairline-atmosphere);
  padding: 14px clamp(20px, 4vw, 48px);
  backdrop-filter: saturate(140%) blur(8px);
  -webkit-backdrop-filter: saturate(140%) blur(8px);
}

.v3-topnav__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(12px, 2vw, 24px);
}

.v3-topnav__brand {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 1.05rem;
  letter-spacing: -0.005em;
  color: var(--color-ink);
  text-decoration: none;
  white-space: nowrap;
}

.v3-topnav__brand-tm {
  font-size: 0.55em;
  vertical-align: super;
  color: var(--color-heritage-gold);
  margin-left: 1px;
}

.v3-topnav__nav {
  display: flex;
  align-items: center;
  gap: clamp(14px, 2vw, 28px);
}

.v3-topnav__link {
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(28, 31, 58, 0.55);
  text-decoration: none;
  padding: 6px 0;
  transition: color 200ms var(--easing-cinematic);
}

.v3-topnav__link:hover {
  color: var(--color-ink);
}

.v3-topnav__link[aria-current="page"] {
  color: var(--color-ink);
  position: relative;
}

.v3-topnav__link[aria-current="page"]::before {
  content: "·";
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.2em;
  color: var(--color-heritage-gold);
  margin-right: 4px;
  vertical-align: -0.05em;
}

@media (max-width: 767px) {
  .v3-topnav {
    padding: 10px 16px;
  }
  .v3-topnav__nav {
    gap: 12px;
  }
  .v3-topnav__link {
    font-size: 0.62rem;
    letter-spacing: 0.10em;
  }
  /* Hide some links on mobile to prevent overflow */
  .v3-topnav__link--hide-mobile {
    display: none;
  }
}

/* ═══════════════════════════════════════════════════
   v3 SHARED PRIMITIVES
   ═══════════════════════════════════════════════════ */

.v3-movement {
  max-width: 1200px;
  margin: 0 auto;
  padding: 6rem 1.5rem;
  position: relative;
}

.v3-movement__inner {
  max-width: 720px;
  margin: 0 auto;
}

.v3-movement__inner--center { text-align: center; }
.v3-movement--center { /* trigger inner-center via composed class */ }

.v3-eyebrow {
  font-family: var(--font-body);
  font-size: .72rem;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: rgba(28, 31, 58, 0.55);  /* Polish §4 P2: section eyebrows = navy 55% (institutional restraint; heritage gold restrained to signature placements) */
  margin-bottom: 1rem;
  font-weight: 500;
}

.v3-display {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(2rem, 5vw, 3rem);
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--color-ink);
  margin: 0 0 1.6rem;
}

.v3-display em {
  font-style: italic;
  color: var(--color-heritage-gold-text);
}

.v3-body {
  font-size: 1.04rem;
  line-height: 1.7;
  color: var(--color-ink-secondary);
  margin: 0 0 1.4rem;
  max-width: 56ch;
}

.v3-body em {
  font-style: italic;
  color: var(--color-ink);  /* Polish §4 P2: body em = navy italic only (heritage gold restrained to 4 canonical surfaces) */
}

.v3-body--lead {
  font-size: 1.16rem;
  color: var(--color-ink);
  max-width: 60ch;
}

.v3-body--center {
  margin-left: auto;
  margin-right: auto;
}

.v3-rule--hairline-atmosphere {
  border: none;
  border-top: 1px solid var(--color-hairline-atmosphere);
  margin: 0;
}

.v3-rule--heritage-gold {
  border: none;
  border-top: 1px solid var(--color-heritage-gold);
  width: 240px;
  margin: 0 auto;
  opacity: 0.55;
}

.v3-rule--heritage-gold-narrow {
  border: none;
  border-top: 1px solid var(--color-heritage-gold);
  width: 96px;
  margin: 1.4rem 0 2rem;
  opacity: 0.55;
}

.v3-rule--center {
  margin-left: auto;
  margin-right: auto;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 1 — THE ARRIVAL (sub-3s cinematic choreography)
   ═══════════════════════════════════════════════════ */

.v3-arrival {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 4rem 1.5rem 6rem;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}

.v3-arrival__brand-mark {
  margin-bottom: 1rem;
  opacity: 0;
  animation: v3-fade-in 0.5s var(--easing-ease-out) 0.3s forwards;
}

/* Polish Punch-List §3 P1 + Polish v2.6 + v2.7 + v2.8 (Paul §5 staging-smoke 2026-05-03):
   Brand mark deploys as TIGHT-CROPPED + TRANSPARENT-BG PNG (wordmark + tagline only;
   1033x174 px; 50KB; truly transparent background via PIL alpha-conversion of white pixels).
   Replaces full iPhone-canvas logo-screen-white.png (1224x2587) which had excess white BG
   creating layout problem. Anti-aliased edges fade smoothly to transparent — works against
   ANY canvas color (cream, navy, custom). mix-blend-mode no longer needed. */
.v3-arrival__brand-mark-img {
  display: block;
  margin: 0 auto;
  max-width: 480px;
  width: 100%;
  height: auto;
}

@media (max-width: 1023px) {
  .v3-arrival__brand-mark-img { max-width: 360px; }
}
@media (max-width: 767px) {
  .v3-arrival__brand-mark-img { max-width: 280px; }
}

/* Screen-reader-only Layer 1 wordmark + tagline (preserves accessibility/SEO when img is presentational) */
.v3-arrival__wordmark--sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.v3-arrival__hairline {
  width: 0;
  height: 1px;
  background: var(--color-heritage-gold);
  margin: 2rem auto;
  opacity: 0.55;
  animation: v3-rule-grow 0.5s var(--easing-ease-out) 1.5s forwards;
  border: 0;
}

.v3-arrival__anchor {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.8rem, 4.6vw, 3rem);
  line-height: 1.18;
  color: var(--color-ink);
  margin: 0;
  max-width: 760px;
}

.v3-arrival__anchor-line {
  display: block;
  opacity: 0;
  animation: v3-fade-in 0.6s var(--easing-ease-out) forwards;
}

.v3-arrival__anchor-line--1 { animation-delay: 2.0s; }
.v3-arrival__anchor-line--2 { animation-delay: 2.3s; }
.v3-arrival__anchor-line--3 { animation-delay: 2.6s; }

.v3-arrival__anchor-line em {
  font-style: italic;
  color: var(--color-heritage-gold-text);
}

.v3-arrival__scroll-cue {
  position: absolute;
  bottom: 2.4rem;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--font-body);
  font-size: .7rem;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: rgba(28, 31, 58, 0.55);  /* Polish §4 P2: scroll cue = navy 55% (heritage gold restrained) */
  opacity: 0;
  animation: v3-fade-in 0.5s var(--easing-ease-out) 3.2s forwards;
  margin: 0;
}

@keyframes v3-fade-in {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes v3-rule-grow {
  from { width: 0; }
  to   { width: 240px; }
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 2 — THE FRAME (institutional positioning)
   ═══════════════════════════════════════════════════ */

.v3-frame {
  background: linear-gradient(to bottom, var(--color-canvas) 0%, var(--color-canvas-warm) 100%);
}

.v3-frame__theses {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem 3rem;
  margin-top: 3rem;
}

@media (max-width: 767px) {
  .v3-frame__theses { grid-template-columns: 1fr; gap: 2rem; }
}

.v3-thesis__eyebrow {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.18rem;
  color: var(--color-heritage-gold-text);  /* Polish v2.9 (Paul §5 2026-05-03 revert): heritage gold restored — Paul preference */
  margin: 0 0 0.6rem;
}

.v3-thesis__body {
  font-size: 1rem;
  line-height: 1.7;
  color: var(--color-ink-secondary);
  margin: 0;
  max-width: 60ch;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 3 — THE METHODOLOGY ARCHITECTURE
   Cobalt glass cards (Layer 1 carry-over reframed Layer 2)
   ═══════════════════════════════════════════════════ */

.v3-architecture__cards {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1rem;
  margin: 2.4rem 0 3rem;
}

@media (max-width: 1023px) {
  .v3-architecture__cards { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 559px) {
  .v3-architecture__cards { grid-template-columns: 1fr; }
}

.v3-architecture__card {
  background: var(--color-cobalt-glass);
  color: var(--color-canvas);
  padding: 1.6rem 1.2rem;
  border-radius: 6px;
  position: relative;
  overflow: hidden;
}

.v3-architecture__card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, transparent 50%);
  pointer-events: none;
}

.v3-architecture__card-numeral {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: 1.6rem;
  color: var(--color-heritage-gold-bright);
  margin: 0 0 0.4rem;
  line-height: 1;
}

.v3-architecture__card-eyebrow {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.04rem;
  color: var(--color-canvas);
  margin: 0 0 0.4rem;
}

.v3-architecture__card-body {
  font-size: .88rem;
  line-height: 1.55;
  color: rgba(251, 249, 245, 0.85);
  margin: 0;
}

.v3-architecture__intent-list {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.06rem;
  line-height: 1.7;
  color: var(--color-ink);
  text-align: center;
  max-width: 780px;
  margin: 1.6rem auto;
}

.v3-architecture__closing {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.18rem;
  color: var(--color-ink);
  text-align: center;
  max-width: 720px;
  margin: 2rem auto 0;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 4 — THE THREE DOORS (dark navy glass cards)
   ═══════════════════════════════════════════════════ */

.v3-doors__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
  margin: 3rem auto;
  max-width: 1100px;
}

@media (max-width: 1023px) {
  .v3-doors__grid { grid-template-columns: 1fr; gap: 1.2rem; }
}

.v3-door {
  background: var(--color-dark-navy-glass-bg);
  color: var(--color-dark-navy-glass-text);
  padding: 2.2rem 1.8rem;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  min-height: 360px;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  transition: transform 320ms var(--easing-cinematic);
}

.v3-door:hover,
.v3-door:focus-visible {
  transform: translateY(-4px);
  outline: none;
}

.v3-door:focus-visible {
  box-shadow: 0 0 0 2px var(--color-heritage-gold-bright);
}

/* Polish §4 P2 — heritage gold restraint: VIP card edge ONLY (premium tier signal); CC card edge demoted to hairline navy */
.v3-door--heritage-gold-edge::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--color-heritage-gold);
  opacity: 0.55;
  pointer-events: none;
  border-radius: 8px;
}

.v3-door--hairline-navy-edge::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(28, 31, 58, 0.16);  /* navy 16% — Connection Code free-tier register */
  pointer-events: none;
  border-radius: 8px;
}

/* Silver ring accent (Studio PRIMARY signature carry-over from iOS M-button) */
.v3-door--silver-ring {
  position: relative;
  z-index: 1;
}

.v3-door--silver-ring::before {
  content: "";
  position: absolute;
  inset: -2px;
  background: var(--color-silver-ring);
  border-radius: 10px;
  z-index: -1;
  opacity: 0.85;
}

.v3-door__embossed-header {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 1.5rem;
  color: var(--color-canvas);
  margin: 0 0 0.6rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.08);
}

.v3-door__embossed-header em {
  font-style: italic;
  color: var(--color-canvas);  /* Polish §4 P2: door title em = cream on dark glass (italic-only emphasis; heritage gold removed) */
}

.v3-door__eyebrow {
  font-family: var(--font-body);
  font-style: italic;
  font-size: .76rem;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: rgba(251, 249, 245, 0.72);  /* Polish §4 P2: door eyebrow = cream 72% on dark glass (institutional restraint) */
  margin: 0 0 1rem;
  font-weight: 500;
}

.v3-door__body {
  font-size: .96rem;
  line-height: 1.6;
  color: rgba(251, 249, 245, 0.82);
  margin: 0 0 1.6rem;
  flex: 1;
}

.v3-door__body em {
  font-style: italic;
  color: var(--color-canvas);  /* Polish §4 P2: door body em = cream italic only (heritage gold removed; restraint) */
}

.v3-door__cta {
  font-family: var(--font-body);
  font-weight: 500;
  font-size: .92rem;
  letter-spacing: 0.04em;
  color: var(--color-canvas);
  background: var(--color-cobalt-glass);
  border: 1px solid var(--color-cobalt-glass);
  padding: 0.85rem 1.4rem;
  border-radius: 999px;
  text-decoration: none;
  align-self: flex-start;
  transition: background 220ms var(--easing-cinematic);
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  margin-top: auto;  /* Polish v2.10 — pushes button to bottom of card; aligns CTA position across all 3 doors uniformly */
}

.v3-door:hover .v3-door__cta,
.v3-door:focus-visible .v3-door__cta {
  background: var(--color-cobalt-glass-bright);
}

.v3-door__cta--italic-gold {
  background: transparent;
  border: 0;
  padding: 0.5rem 0;
  color: var(--color-heritage-gold-bright);
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1rem;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-color: rgba(168, 139, 92, 0.4);
}

.v3-door:hover .v3-door__cta--italic-gold,
.v3-door:focus-visible .v3-door__cta--italic-gold {
  background: transparent;
}

.v3-door__caption {
  font-family: var(--font-display);
  font-style: italic;
  font-size: .82rem;
  color: rgba(251, 249, 245, 0.55);
  margin-top: 0.6rem;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 5 — THE FIVE LEVELS (Polish v2.13; A+C blend; Cartier patrimonial register)
   Roman numerals + heritage-gold hairline strata + Cormorant italic Layer names + "to/with/through" canon-extension
   Replaces Three Levels door grid; supersedes Polish v2.12 "Three Doors → Three Levels" reframe
   ═══════════════════════════════════════════════════ */

.v3-five-levels {
  list-style: none;
  margin: 3rem auto 0;
  padding: 0;
  max-width: 920px;
  counter-reset: levels;
}

.v3-five-levels__stratum {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: clamp(20px, 3vw, 36px);
  align-items: baseline;
  padding: clamp(28px, 4vw, 44px) clamp(8px, 2vw, 16px);
  border-top: 1px solid var(--color-heritage-gold);
}

.v3-five-levels__stratum:last-child {
  border-bottom: 1px solid var(--color-heritage-gold);
}

.v3-five-levels__numeral {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
  color: var(--color-heritage-gold);
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
  align-self: start;
  padding-top: 0.4em;
}

.v3-five-levels__content {
  min-width: 0;
}

.v3-five-levels__layer-name {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 400;
  color: var(--color-ink);
  margin: 0 0 12px;
  line-height: 1.15;
  letter-spacing: -0.005em;
}

.v3-five-levels__subhead {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.05rem;
  color: rgba(28, 31, 58, 0.72);
  margin: 0 0 14px;
  line-height: 1.4;
}

.v3-five-levels__body {
  font-family: var(--font-body);
  font-size: 0.95rem;
  font-weight: 400;
  color: rgba(28, 31, 58, 0.65);
  line-height: 1.65;
  max-width: 56ch;
  margin: 0 0 18px;
}

.v3-five-levels__link {
  display: inline-block;
  font-family: var(--font-display);
  font-style: italic;
  font-size: 0.95rem;
  color: var(--color-heritage-gold);
  text-decoration: none;
  letter-spacing: 0.005em;
  transition: opacity 200ms ease;
}

.v3-five-levels__link:hover,
.v3-five-levels__link:focus-visible {
  opacity: 0.7;
  outline: none;
}

.v3-five-levels__link:focus-visible {
  outline: 1px solid var(--color-heritage-gold);
  outline-offset: 4px;
}

@media (max-width: 700px) {
  .v3-five-levels__stratum {
    grid-template-columns: 40px 1fr;
    gap: 14px;
    padding: clamp(24px, 5vw, 32px) clamp(4px, 1vw, 8px);
  }
  .v3-five-levels__numeral {
    font-size: 1.35rem;
    padding-top: 0.3em;
  }
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 5 — THE CONNECTION CODE (free resource lead magnet)
   ═══════════════════════════════════════════════════ */

.v3-cc__tools {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
  margin: 2.4rem 0;
}

@media (max-width: 767px) {
  .v3-cc__tools { grid-template-columns: 1fr; }
}

.v3-cc__tool {
  border: 1px solid var(--color-hairline-atmosphere);
  padding: 1.6rem 1.4rem;
  background: var(--color-canvas);
  border-radius: 4px;
}

.v3-cc__tool-title {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 1.18rem;
  color: var(--color-ink);
  margin: 0 0 0.6rem;
}

.v3-cc__tool-body {
  font-size: .94rem;
  line-height: 1.6;
  color: var(--color-ink-secondary);
  margin: 0;
}

.v3-cc__cta-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  margin-top: 2rem;
}

/* ═══════════════════════════════════════════════════════════════
   .v3-cta-cobalt — MM_FINALS oval gloss restoration v1.0
   Per Paul §5 directive 2026-05-06 + Homepage Master Plan v3.0 §2
   Cobalt glass pill + silver ring accent — signature carry-over from iOS M-button
   Replaces Polish v2.13.6 wire-frame; class name preserved for HTML stability across 8 v3 surfaces
   ═══════════════════════════════════════════════════════════════ */

.v3-cta-cobalt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;

  /* OVAL — pill shape; MM_FINALS canonical */
  border-radius: 9999px;
  padding: 0.95rem 2.25rem;
  min-height: 48px;

  /* COBALT GLASS — multi-stop vertical gradient catches light at top, settles at bottom */
  background:
    linear-gradient(180deg,
      #1F3A6E 0%,         /* light catch — top edge */
      #163354 48%,        /* canonical cobalt mid */
      #0F2640 100%);      /* settled depth — bottom edge */

  /* TEXT — Inter institutional; cream on cobalt; saddle-stitched */
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  color: #F5F0E5;
  text-decoration: none;
  white-space: nowrap;

  /* SILVER RING + GLASSY POLISH — five-layer shadow stack */
  border: 1px solid transparent;          /* base; silver ring lives in box-shadow stack */
  box-shadow:
    /* glass curvature — light wash across top */
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    /* glass depth — quiet line at bottom */
    inset 0 -1px 0 rgba(8, 20, 38, 0.45),
    /* SILVER RING — signature MM_FINALS carry-over from iOS M-button */
    0 0 0 1px rgba(232, 232, 232, 0.55),
    /* soft drop — barely-there lift */
    0 2px 6px rgba(27, 41, 64, 0.18),
    /* settled depth — institutional weight */
    0 8px 20px rgba(27, 41, 64, 0.08);

  transition:
    transform 280ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 320ms cubic-bezier(0.22, 1, 0.36, 1),
    background 280ms ease;
}

.v3-cta-cobalt:hover,
.v3-cta-cobalt:focus-visible {
  background:
    linear-gradient(180deg,
      #234176 0%,
      #1A3A5E 48%,
      #112A48 100%);
  color: #FFFFFF;
  transform: translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.28),
    inset 0 -1px 0 rgba(8, 20, 38, 0.50),
    /* silver ring brightens on hover — the M-button signature lifting */
    0 0 0 1px rgba(255, 255, 255, 0.65),
    0 4px 10px rgba(27, 41, 64, 0.22),
    0 12px 28px rgba(27, 41, 64, 0.12);
  outline: none;
}

.v3-cta-cobalt:active {
  transform: translateY(0);
  box-shadow:
    /* press state — glass compresses inward */
    inset 0 2px 4px rgba(8, 20, 38, 0.50),
    inset 0 -1px 0 rgba(255, 255, 255, 0.06),
    0 0 0 1px rgba(232, 232, 232, 0.55),
    0 1px 3px rgba(27, 41, 64, 0.14);
}

.v3-cta-cobalt:focus-visible {
  outline: 2px solid rgba(203, 163, 114, 0.6);   /* heritage gold focus ring */
  outline-offset: 4px;
}

/* Honor reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
  .v3-cta-cobalt {
    transition: background 120ms ease;
  }
  .v3-cta-cobalt:hover,
  .v3-cta-cobalt:focus-visible {
    transform: none;
  }
}

/* ═══════════════════════════════════════════════════════════════
   .v3-cta-cobalt--secondary — softer variant for second-position CTAs
   Same oval gloss canon at quieter weight; preserves signature without competing
   ═══════════════════════════════════════════════════════════════ */

.v3-cta-cobalt--secondary {
  background:
    linear-gradient(180deg,
      rgba(31, 58, 110, 0.92) 0%,
      rgba(22, 51, 84, 0.92) 48%,
      rgba(15, 38, 64, 0.92) 100%);
  font-size: 0.9rem;
  padding: 0.8rem 1.85rem;
  min-height: 44px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    inset 0 -1px 0 rgba(8, 20, 38, 0.40),
    /* silver ring slightly softer for secondary */
    0 0 0 1px rgba(232, 232, 232, 0.42),
    0 1px 4px rgba(27, 41, 64, 0.14),
    0 6px 16px rgba(27, 41, 64, 0.06);
}

.v3-cta-subline {
  font-family: var(--font-display);
  font-style: italic;
  font-size: .92rem;
  color: var(--color-ink-tertiary);
  margin: 0;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 6 — THE PLAYBOOK (embossed artifact)
   ═══════════════════════════════════════════════════ */

.v3-playbook__artifact {
  max-width: 480px;
  margin: 3rem auto;
  aspect-ratio: 3 / 4;
  background: var(--color-dark-navy-glass-bg);
  border-radius: 6px;
  position: relative;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.05) inset,
    0 -1px 0 rgba(0, 0, 0, 0.3) inset,
    0 12px 36px rgba(28, 31, 58, 0.18);
  overflow: hidden;
}

.v3-playbook__artifact::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: var(--color-silver-ring);
  opacity: 0.85;
}

.v3-playbook__artifact::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 0;
  bottom: 0;
  width: 1px;
  background: var(--color-heritage-gold);
  opacity: 0.5;
}

.v3-playbook__artifact-title {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 2rem;
  text-align: center;
}

.v3-playbook__artifact-eyebrow {
  font-family: var(--font-body);
  font-size: .68rem;
  letter-spacing: 0.30em;
  text-transform: uppercase;
  color: var(--color-heritage-gold-bright);
  margin: 0 0 1rem;
  font-weight: 500;
}

.v3-playbook__artifact-name {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(2.2rem, 4.4vw, 2.8rem);
  color: var(--color-canvas);
  margin: 0 0 0.4rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.06);
  line-height: 1.05;
}

.v3-playbook__artifact-name em {
  font-style: italic;
  color: var(--color-heritage-gold-bright);
}

.v3-playbook__artifact-cardinality {
  font-family: var(--font-display);
  font-style: italic;
  font-size: .92rem;
  color: rgba(251, 249, 245, 0.65);
  margin: 0;
}

.v3-playbook__closing {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.16rem;
  color: var(--color-ink);
  text-align: center;
  max-width: 600px;
  margin: 2rem auto 0;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 7 — THE STUDIO (PRIMARY conversion + silver ring CTA)
   ═══════════════════════════════════════════════════ */

.v3-studio__tools {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
  margin: 2.4rem 0;
}

@media (max-width: 767px) {
  .v3-studio__tools { grid-template-columns: 1fr; }
}

.v3-studio__tool {
  background: var(--color-dark-navy-glass-bg);
  color: var(--color-dark-navy-glass-text);
  padding: 1.8rem 1.4rem;
  border-radius: 6px;
  border: 1px solid rgba(168, 139, 92, 0.22);
}

.v3-studio__tool-name {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 1.4rem;
  color: var(--color-canvas);
  margin: 0 0 0.5rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.06);
}

.v3-studio__tool-eyebrow {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1rem;
  color: rgba(245, 240, 229, 0.78);  /* Polish §4 P2: studio tool eyebrow = cream 78% on dark glass (heritage gold removed) */
  margin: 0 0 0.4rem;
}

.v3-studio__tool-body {
  font-size: .94rem;
  line-height: 1.55;
  color: rgba(251, 249, 245, 0.78);
  margin: 0;
}

.v3-studio__conversion {
  text-align: center;
  margin-top: 2.6rem;
}

.v3-studio__conversion-headline {
  font-family: var(--font-display);
  font-style: italic;
  font-size: clamp(1.4rem, 3vw, 1.8rem);
  color: var(--color-ink);
  margin: 0 0 0.6rem;
}

.v3-studio__conversion-sub {
  font-size: 1rem;
  color: var(--color-ink-secondary);
  max-width: 540px;
  margin: 0 auto 1.6rem;
}

/* Polish Punch-List §2 P0 YELLOW BOX FIX (Web Ed RATIFIED 2026-05-02 + Paul §5):
   .v3-cta-silver-ring class REMOVED — silver ring relocates from BUTTON to CARD frame.
   Studio CTA in Movement 7 + cross-page now uses .v3-cta-cobalt (canonical primary CTA).
   Silver ring at CARD level preserved on .v3-door--silver-ring (Three Doors Studio card; iOS M-button signature). */

/* ═══════════════════════════════════════════════════
   THE ARC (Polish v2.13.7 — three-arm methodology architecture per Paul §5 ratify 2026-05-04)
   The Foundation · The Search · The Practice — same Cartier hairline strata register as Five Levels
   ═══════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────────────────
   Premium embedded link — replaces button-chrome for navigation CTAs
   site-wide (transaction-initiating buttons preserved per Homepage
   Refinements Amendment v1 §1.2 discipline).
   ───────────────────────────────────────────────────────────────────────── */
.v3-link-premium {
  display: inline-flex;
  align-items: baseline;
  gap: 0.5rem;
  padding: 0.85rem 0.25rem;
  min-height: 44px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: clamp(1rem, 1.2vw + 0.85rem, 1.15rem);
  color: var(--color-ink);
  text-decoration: none;
  border-bottom: 2px solid var(--color-heritage-gold);
  letter-spacing: 0.01em;
  transition: color 250ms cubic-bezier(0.4, 0, 0.2, 1),
              border-bottom-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  cursor: pointer;
  background: transparent;
  border-radius: 0;
}

.v3-link-premium::after {
  content: "→";
  font-weight: 400;
  display: inline-block;
  transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1),
              color 250ms cubic-bezier(0.4, 0, 0.2, 1);
  color: var(--color-heritage-gold);
  font-size: 0.95em;
}

.v3-link-premium:hover,
.v3-link-premium:focus-visible {
  color: var(--color-heritage-gold);
  border-bottom-color: var(--color-ink);
}

.v3-link-premium:hover::after,
.v3-link-premium:focus-visible::after {
  transform: translateX(4px);
  color: var(--color-ink);
}

.v3-link-premium:focus-visible {
  outline: 2px solid var(--color-heritage-gold);
  outline-offset: 4px;
  border-radius: 2px;
}

.v3-link-premium:active {
  transform: translateY(1px);
}

.v3-link-premium--hero {
  font-size: clamp(1.15rem, 1.5vw + 1rem, 1.4rem);
  padding: 1rem 0.25rem;
  border-bottom-width: 3px;
}

.v3-link-premium--supporting {
  font-weight: 500;
  font-size: clamp(0.92rem, 0.9vw + 0.78rem, 1rem);
  border-bottom-width: 1px;
  border-bottom-color: rgba(203, 163, 114, 0.6);
}

.v3-link-premium--ghost {
  font-weight: 500;
  color: rgba(28, 31, 58, 0.75);
  border-bottom-color: rgba(28, 31, 58, 0.15);
  font-size: 0.92rem;
}

.v3-link-premium--ghost:hover,
.v3-link-premium--ghost:focus-visible {
  color: var(--color-ink);
  border-bottom-color: var(--color-heritage-gold);
}

@media (max-width: 600px) {
  .v3-link-premium {
    padding: 1rem 0.25rem;
    font-size: 1.05rem;
  }
  .v3-link-premium--hero {
    font-size: 1.2rem;
    padding: 1.15rem 0.25rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .v3-link-premium,
  .v3-link-premium::after {
    transition: none;
  }
  .v3-link-premium:hover::after,
  .v3-link-premium:focus-visible::after {
    transform: none;
  }
}

/* ─────────────────────────────────────────────────────────────────────────
   Global Refinement Pass v1 — extended embedded-link variants
   (per Wave 1 Global Refinement Pass v1 §2.1 + §3.1)
   ───────────────────────────────────────────────────────────────────────── */

/* Top-nav small embedded link variant (refits .v3-cta-cobalt-glass--small per §0.8 ratify) */
.v3-link-premium--small {
  font-size: 0.88rem;
  padding: 0.5rem 0.25rem;
  min-height: 32px;
  border-bottom-width: 1px;
  font-weight: 600;
}

/* "5 min" inline time-framing pill (per §6.3 Voice Register v1.5 §5.N) */
.v3-link-premium__time-framing {
  display: inline-block;
  margin-left: 0.5rem;
  padding: 0.15rem 0.5rem;
  background: rgba(203, 163, 114, 0.15);
  color: var(--color-heritage-gold-text);
  font-size: 0.78rem;
  font-weight: 500;
  border-radius: 999px;
  letter-spacing: 0.04em;
  vertical-align: baseline;
  font-style: normal;
}

/* Embedded navigation box (replaces button-chrome bottom-section + cross-pillar nav) */
.v3-link-premium-box {
  display: block;
  padding: 1.5rem 1.75rem;
  background: rgba(203, 163, 114, 0.05);
  border: 1px solid rgba(203, 163, 114, 0.6);
  border-radius: 4px;
  text-decoration: none;
  color: var(--color-ink);
  transition: background 250ms cubic-bezier(0.4, 0, 0.2, 1),
              border-color 250ms cubic-bezier(0.4, 0, 0.2, 1),
              transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}

.v3-link-premium-box::after {
  content: "→";
  position: absolute;
  right: 1.75rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-heritage-gold);
  font-size: 1.1em;
  transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

.v3-link-premium-box:hover,
.v3-link-premium-box:focus-visible {
  background: rgba(203, 163, 114, 0.1);
  border-color: var(--color-heritage-gold);
  transform: translateY(-2px);
  outline: none;
}

.v3-link-premium-box:hover::after,
.v3-link-premium-box:focus-visible::after {
  transform: translateY(-50%) translateX(4px);
}

.v3-link-premium-box:focus-visible {
  outline: 2px solid var(--color-heritage-gold);
  outline-offset: 2px;
}

.v3-link-premium-box__label {
  display: block;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 1.05rem;
  color: var(--color-ink);
  margin: 0 0 0.25rem;
  padding-right: 2rem;
}

.v3-link-premium-box__sublabel {
  display: block;
  font-family: var(--font-body);
  font-size: 0.88rem;
  color: rgba(28, 31, 58, 0.65);
  font-style: italic;
  margin: 0;
  padding-right: 2rem;
}

/* Bottom section grid layout (per §5 standardized) */
.v3-bottom-section-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1rem;
  margin: 2rem auto 0;
  max-width: 960px;
  padding: 0 clamp(1rem, 4vw, 2rem);
}

/* Hero embedded link grid (Foundation/Search/Practice/Playbook/Studio top per §4) */
.v3-hero-link-grid {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(1rem, 3vw, 2rem);
  justify-content: center;
  margin-top: 2rem;
}

.v3-hero-link-grid--column {
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}

/* CC page two-tier hero (per §0.6 ratify) */
.v3-hero-link-grid--two-tier {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
  margin-top: 2rem;
}

.v3-hero-link-grid__tier-label {
  font-family: var(--font-body);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-heritage-gold-text);
  margin: 0;
  text-align: center;
  font-weight: 500;
}

.v3-hero-link-grid__tier {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.75rem, 2vw, 1.5rem);
  justify-content: center;
  align-items: baseline;
}

.v3-hero-link-grid__tier--secondary .v3-link-premium {
  font-weight: 500;
  font-size: 0.95rem;
}

/* Cartier-discreet section break (replaces heavy .v3-rule--hairline-atmosphere where transitions over-dense) */
.v3-section-break-cartier {
  display: block;
  text-align: center;
  margin: clamp(1.5rem, 3vw, 2.5rem) auto;
  color: rgba(203, 163, 114, 0.6);
  font-size: 0.85em;
  border: none;
}

.v3-section-break-cartier::before {
  content: "·   ·   ·";
  letter-spacing: 0.5em;
}

@media (max-width: 600px) {
  .v3-link-premium-box {
    padding: 1.25rem 1.5rem;
  }
  .v3-link-premium-box::after {
    right: 1.5rem;
    font-size: 1em;
  }
  .v3-link-premium-box__label {
    font-size: 1rem;
  }
  .v3-bottom-section-grid {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }
  .v3-hero-link-grid {
    flex-direction: column;
    gap: 0.75rem;
    align-items: stretch;
  }
  .v3-hero-link-grid__tier {
    flex-direction: column;
    gap: 0.75rem;
  }
}

/* ─────────────────────────────────────────────────────────────────────────
   The Arc — sequential 5-rung layer progression (homepage Movement 3).
   Each rung carries: numeral · cost · name · body · access link, with a
   gold hairline connector pulling the eye downward to the next layer.
   ───────────────────────────────────────────────────────────────────────── */
.v3-arc {
  list-style: none;
  padding: 0;
  margin: 2.5rem auto 0;
  max-width: 720px;
  display: flex;
  flex-direction: column;
}

.v3-arc__rung {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.v3-arc__rung-inner {
  padding: 1.75rem 1.75rem 2rem;
  background: var(--color-canvas);
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto auto auto;
  gap: 0.4rem 1.25rem;
  align-items: baseline;
  position: relative;
  z-index: 2;
}

.v3-arc__numeral {
  grid-row: 1 / span 4;
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 4vw + 1rem, 3.4rem);
  font-style: italic;
  color: var(--color-heritage-gold);
  line-height: 1;
  margin: 0;
  padding-top: 0.15rem;
}

.v3-arc__cost {
  font-family: var(--font-body);
  font-size: 0.92rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-heritage-gold);
  margin: 0;
  font-weight: 500;
}

.v3-arc__cost strong {
  color: var(--color-ink);
  font-weight: 600;
  letter-spacing: 0.03em;
}

.v3-arc__name {
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 2vw + 0.8rem, 1.85rem);
  margin: 0.15rem 0 0.5rem;
  color: var(--color-ink);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.005em;
}

.v3-arc__body {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.6;
  color: rgba(28, 31, 58, 0.85);
  margin: 0 0 0.75rem;
  max-width: none;
}

.v3-arc__body em {
  font-style: italic;
}

.v3-arc__connector {
  display: none;
}

.v3-arc__rung-inner .v3-link-premium {
  margin-top: 0.5rem;
  grid-column: 2;
  align-self: flex-start;
}

.v3-arc__close {
  margin: 2.5rem auto 0;
  font-style: italic;
  max-width: 640px;
  color: rgba(28, 31, 58, 0.7);
  text-align: center;
}

@media (max-width: 640px) {
  .v3-arc__rung-inner {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto auto auto;
    gap: 0.4rem;
    padding: 1.5rem 1.25rem 1.75rem;
  }
  .v3-arc__numeral {
    grid-row: auto;
    grid-column: 1;
    font-size: 2.2rem;
    margin-bottom: 0.25rem;
  }
  .v3-arc__rung-inner .v3-link-premium {
    grid-column: 1;
  }
}

/* The Foundation — 5 Framework strata register (mirrors v3-five-levels) */
.v3-foundation-frameworks {
  list-style: none;
  margin: 3rem auto 0;
  padding: 0;
  max-width: 920px;
}

.v3-foundation-frameworks__stratum {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: clamp(20px, 3vw, 36px);
  align-items: baseline;
  padding: clamp(28px, 4vw, 44px) clamp(8px, 2vw, 16px);
  border-top: 1px solid var(--color-heritage-gold);
}

.v3-foundation-frameworks__stratum:last-child {
  border-bottom: 1px solid var(--color-heritage-gold);
}

.v3-foundation-frameworks__numeral {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
  color: var(--color-heritage-gold);
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
  align-self: start;
  padding-top: 0.4em;
}

.v3-foundation-frameworks__name {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 400;
  color: var(--color-ink);
  margin: 0 0 12px;
  line-height: 1.15;
}

.v3-foundation-frameworks__subhead {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.05rem;
  color: rgba(28, 31, 58, 0.72);
  margin: 0 0 14px;
  line-height: 1.4;
}

.v3-foundation-frameworks__body {
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: rgba(28, 31, 58, 0.65);
  line-height: 1.65;
  max-width: 56ch;
  margin: 0;
}

@media (max-width: 700px) {
  .v3-foundation-frameworks__stratum {
    grid-template-columns: 40px 1fr;
    gap: 14px;
    padding: clamp(24px, 5vw, 32px) clamp(4px, 1vw, 8px);
  }
  .v3-foundation-frameworks__numeral {
    font-size: 1.35rem;
    padding-top: 0.3em;
  }
}

/* ═══════════════════════════════════════════════════
   WAYFINDING STRIP (Polish v2.13.4 — Cartier menu register; 3-card hairline-separated)
   Placed high on Homepage / CC / Studio for immediate action surface; mirrors institutional brochure cadence
   ═══════════════════════════════════════════════════ */

.v3-wayfinding {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  max-width: 1100px;
  margin: clamp(40px, 5vw, 64px) auto;
  padding: 0 clamp(20px, 4vw, 40px);
  border-top: 1px solid var(--color-heritage-gold);
  border-bottom: 1px solid var(--color-heritage-gold);
}

.v3-wayfinding__card {
  display: flex;
  flex-direction: column;
  padding: clamp(28px, 4vw, 40px) clamp(20px, 3vw, 28px);
  text-decoration: none;
  color: var(--color-ink);
  transition: background 200ms ease;
  min-height: 200px;
}

.v3-wayfinding__card:hover,
.v3-wayfinding__card:focus-visible {
  background: rgba(203, 163, 114, 0.06);
  outline: none;
}

.v3-wayfinding__card:focus-visible {
  outline: 1px solid var(--color-heritage-gold);
  outline-offset: -1px;
}

.v3-wayfinding__card:not(:first-child) {
  border-left: 1px solid rgba(203, 163, 114, 0.4);
}

.v3-wayfinding__card[aria-current="page"] {
  background: rgba(203, 163, 114, 0.08);
}

.v3-wayfinding__eyebrow {
  font-family: var(--font-body);
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(28, 31, 58, 0.5);
  margin: 0 0 12px;
}

.v3-wayfinding__name {
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 2.2vw, 1.75rem);
  font-weight: 400;
  color: var(--color-ink);
  margin: 0 0 12px;
  line-height: 1.15;
}

.v3-wayfinding__body {
  font-family: var(--font-body);
  font-size: 0.92rem;
  color: rgba(28, 31, 58, 0.65);
  line-height: 1.55;
  margin: 0 0 auto;
  flex-grow: 1;
}

.v3-wayfinding__cta {
  font-family: var(--font-body);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--color-heritage-gold);
  margin-top: clamp(20px, 3vw, 28px);
  display: inline-block;
}

@media (max-width: 700px) {
  .v3-wayfinding {
    grid-template-columns: 1fr;
  }
  .v3-wayfinding__card {
    min-height: auto;
    padding: clamp(24px, 5vw, 32px) clamp(16px, 4vw, 24px);
  }
  .v3-wayfinding__card:not(:first-child) {
    border-left: none;
    border-top: 1px solid rgba(203, 163, 114, 0.4);
  }
}

/* ═══════════════════════════════════════════════════
   VIP CONTENT RESTORATION (Polish v2.13.6 per Paul §5 directive 2026-05-03 — pull from legacy + adapt to Path α)
   For Whom · The Process · What's Included
   ═══════════════════════════════════════════════════ */

/* ── For Whom (eligibility) — 2-column register ── */
.vip-for-whom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(20px, 3vw, 36px);
  max-width: 920px;
  margin: clamp(40px, 5vw, 56px) auto 0;
  padding: 0 clamp(20px, 4vw, 40px);
}

.vip-for-whom__card {
  padding: clamp(28px, 4vw, 36px);
  border-top: 1px solid var(--color-heritage-gold);
}

.vip-for-whom__card--for {
  border-top-color: var(--color-heritage-gold);
}

.vip-for-whom__card--not {
  border-top-color: rgba(28, 31, 58, 0.25);
}

.vip-for-whom__label {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.05rem;
  color: var(--color-heritage-gold);
  margin: 0 0 1.2rem;
  letter-spacing: 0.005em;
}

.vip-for-whom__card--not .vip-for-whom__label {
  color: rgba(28, 31, 58, 0.55);
}

.vip-for-whom__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.vip-for-whom__list li {
  font-family: var(--font-body);
  font-size: 0.92rem;
  color: rgba(28, 31, 58, 0.78);
  line-height: 1.6;
  padding: 0.7rem 0 0.7rem 1.4rem;
  position: relative;
  border-top: 1px solid rgba(203, 163, 114, 0.15);
}

.vip-for-whom__list li:first-child {
  border-top: none;
  padding-top: 0;
}

.vip-for-whom__list li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: var(--color-heritage-gold);
  font-style: italic;
}

.vip-for-whom__card--not .vip-for-whom__list li::before {
  color: rgba(28, 31, 58, 0.4);
}

@media (max-width: 700px) {
  .vip-for-whom {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

/* ── The Process — Cartier numbered hairline strata ── */
.vip-process {
  list-style: none;
  margin: clamp(40px, 5vw, 56px) auto 0;
  padding: 0;
  max-width: 880px;
}

.vip-process__step {
  display: grid;
  grid-template-columns: 76px 1fr;
  gap: clamp(20px, 3vw, 32px);
  align-items: baseline;
  padding: clamp(28px, 4vw, 40px) clamp(20px, 4vw, 32px);
  border-top: 1px solid var(--color-heritage-gold);
}

.vip-process__step:last-child {
  border-bottom: 1px solid var(--color-heritage-gold);
}

.vip-process__num {
  font-family: var(--font-display);
  font-style: italic;
  font-size: clamp(1.4rem, 2.2vw, 1.7rem);
  color: var(--color-heritage-gold);
  letter-spacing: 0.02em;
  align-self: start;
  padding-top: 0.3em;
}

.vip-process__content {
  min-width: 0;
}

.vip-process__label {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 0.9rem;
  color: rgba(28, 31, 58, 0.55);
  margin: 0 0 8px;
  letter-spacing: 0.005em;
}

.vip-process__title {
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  font-weight: 400;
  color: var(--color-ink);
  margin: 0 0 12px;
  line-height: 1.2;
}

.vip-process__body {
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: rgba(28, 31, 58, 0.7);
  line-height: 1.65;
  max-width: 60ch;
  margin: 0;
}

@media (max-width: 700px) {
  .vip-process__step {
    grid-template-columns: 48px 1fr;
    gap: 16px;
    padding: clamp(24px, 5vw, 32px) clamp(8px, 2vw, 16px);
  }
  .vip-process__num { font-size: 1.3rem; }
}

/* ── What's Included — card grid (Cartier hairline-edge cards) ── */
.vip-includes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  max-width: 1100px;
  margin: clamp(40px, 5vw, 56px) auto 0;
  padding: 0 clamp(20px, 4vw, 40px);
  border-top: 1px solid var(--color-heritage-gold);
  border-bottom: 1px solid var(--color-heritage-gold);
}

.vip-includes__card {
  padding: clamp(28px, 4vw, 36px) clamp(20px, 3vw, 28px);
  border-left: 1px solid rgba(203, 163, 114, 0.4);
  border-top: 1px solid rgba(203, 163, 114, 0.4);
}

.vip-includes__card:nth-child(-n+3) {
  border-top: none;
}

.vip-includes__card:nth-child(3n+1) {
  border-left: none;
}

.vip-includes__label {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 0.85rem;
  color: var(--color-heritage-gold);
  margin: 0 0 10px;
  letter-spacing: 0.005em;
}

.vip-includes__title {
  font-family: var(--font-display);
  font-size: clamp(1.15rem, 1.8vw, 1.35rem);
  font-weight: 400;
  color: var(--color-ink);
  margin: 0 0 12px;
  line-height: 1.25;
}

.vip-includes__body {
  font-family: var(--font-body);
  font-size: 0.92rem;
  color: rgba(28, 31, 58, 0.68);
  line-height: 1.6;
  margin: 0;
}

@media (max-width: 900px) {
  .vip-includes {
    grid-template-columns: 1fr 1fr;
  }
  .vip-includes__card:nth-child(-n+3) {
    border-top: 1px solid rgba(203, 163, 114, 0.4);
  }
  .vip-includes__card:nth-child(-n+2) {
    border-top: none;
  }
  .vip-includes__card:nth-child(3n+1) {
    border-left: 1px solid rgba(203, 163, 114, 0.4);
  }
  .vip-includes__card:nth-child(2n+1) {
    border-left: none;
  }
}

@media (max-width: 600px) {
  .vip-includes {
    grid-template-columns: 1fr;
  }
  .vip-includes__card {
    border-left: none !important;
    border-top: 1px solid rgba(203, 163, 114, 0.4) !important;
  }
  .vip-includes__card:first-child {
    border-top: none !important;
  }
}

/* ═══════════════════════════════════════════════════
   VIP CARTIER DISCIPLINE STRIP + CONTINUITY CALLOUT (Polish v2.13 alignment per VIP audit §6.1)
   Path α canonical: "Suitors are reviewed, not curated"
   ═══════════════════════════════════════════════════ */

.v3-vip__discipline-strip {
  text-align: center;
  padding: clamp(20px, 3vw, 32px) clamp(24px, 5vw, 64px);
  border-top: 1px solid var(--color-heritage-gold);
  border-bottom: 1px solid var(--color-heritage-gold);
  margin: 0;
  background: rgba(245, 240, 229, 0.6);
}

.v3-vip__discipline-line {
  font-family: var(--font-display);
  font-style: italic;
  font-size: clamp(0.95rem, 1.6vw, 1.1rem);
  color: rgba(28, 31, 58, 0.78);
  letter-spacing: 0.005em;
  margin: 0;
  max-width: 720px;
  margin-inline: auto;
  line-height: 1.5;
}

.v3-vip__continuity-callout {
  font-family: var(--font-display);
  font-style: italic;
  font-size: clamp(0.95rem, 1.6vw, 1.05rem);
  color: var(--color-heritage-gold);
  text-align: center;
  margin: clamp(28px, 4vw, 48px) auto 0;
  max-width: 640px;
  letter-spacing: 0.01em;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 8 — THE VIP LAYER (CLOSE SECOND + heritage gold edge)
   ═══════════════════════════════════════════════════ */

.v3-vip__transition-rule {
  width: 320px;
  height: 1px;
  background: var(--color-heritage-gold);
  opacity: 0.55;
  margin: 0 auto 3rem;
  border: 0;
}

.v3-vip__tiers {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
  margin: 2.4rem 0;
}

@media (max-width: 1023px) {
  .v3-vip__tiers { grid-template-columns: 1fr; }
}

.v3-vip__tier {
  background: var(--color-dark-navy-glass-bg);
  color: var(--color-dark-navy-glass-text);
  padding: 1.8rem 1.4rem;
  border-radius: 6px;
  position: relative;
}

.v3-vip__tier::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--color-heritage-gold);
  opacity: 0.55;
  border-radius: 6px;
  pointer-events: none;
}

.v3-vip__tier-name {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 1.4rem;
  color: var(--color-canvas);
  margin: 0 0 0.4rem;
}

.v3-vip__tier-eyebrow {
  font-family: var(--font-display);
  font-style: italic;
  font-size: .98rem;
  color: var(--color-heritage-gold-bright);  /* Polish §4 P2: VIP tier eyebrow PRESERVED — VIP retains heritage gold per restraint matrix (premium tier signal) */
  margin: 0 0 0.4rem;
}

.v3-vip__tier-body {
  font-size: .94rem;
  line-height: 1.55;
  color: rgba(251, 249, 245, 0.78);
  margin: 0;
}

.v3-vip__provenance {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.16rem;
  color: var(--color-ink);
  text-align: center;
  margin: 2rem auto 0.8rem;
  max-width: 640px;
}

.v3-vip__sub {
  font-size: 1rem;
  color: var(--color-ink-secondary);
  text-align: center;
  max-width: 560px;
  margin: 0 auto 1.6rem;
}

.v3-vip__cta-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6rem;
  margin-top: 1rem;
}

.v3-cta-italic-gold {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.04rem;
  color: var(--color-heritage-gold-text);
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-color: rgba(168, 139, 92, 0.4);
  transition: color 200ms var(--easing-cinematic);
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.v3-cta-italic-gold:hover,
.v3-cta-italic-gold:focus-visible {
  color: var(--color-ink);
  text-decoration-color: var(--color-heritage-gold);
  outline: none;
}

.v3-cta-italic-gold:focus-visible {
  outline: 2px solid var(--color-heritage-gold);
  outline-offset: 4px;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 9 — TRUST + PROVABILITY
   ═══════════════════════════════════════════════════ */

.v3-trust__anchors {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.6rem;
  margin: 2.4rem 0;
}

@media (max-width: 767px) {
  .v3-trust__anchors { grid-template-columns: 1fr; }
}

.v3-trust__anchor {
  border: 1px solid var(--color-hairline-atmosphere);
  padding: 1.4rem 1.4rem;
  border-radius: 4px;
}

.v3-trust__anchor-eyebrow {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.02rem;
  color: rgba(28, 31, 58, 0.55);  /* Polish §4 P2: trust anchor eyebrow = navy 55% (heritage gold removed; institutional restraint) */
  margin: 0 0 0.4rem;
}

.v3-trust__anchor-title {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 1.16rem;
  color: var(--color-ink);
  margin: 0 0 0.6rem;
}

.v3-trust__anchor-body {
  font-size: .94rem;
  line-height: 1.6;
  color: var(--color-ink-secondary);
  margin: 0;
}

.v3-trust__anchor-body em {
  font-style: italic;
  color: var(--color-heritage-gold-text);
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 10 — ORIGIN
   ═══════════════════════════════════════════════════ */

.v3-origin {
  text-align: center;
  padding: 8rem 1.5rem;
}

.v3-origin__eyebrow { margin-bottom: 1.4rem; }

.v3-origin__paragraph {
  font-size: 1rem;
  line-height: 1.78;
  color: var(--color-ink-secondary);
  max-width: 480px;
  margin: 0 auto 2rem;
}

.v3-origin__closing {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.16rem;
  color: var(--color-ink);
  max-width: 600px;
  margin: 0 auto;
}

/* ═══════════════════════════════════════════════════
   MOVEMENT 11 — FOOTER (institutional close)
   ═══════════════════════════════════════════════════ */

.v3-footer {
  border-top: 1px solid var(--color-heritage-gold);
  border-top-color: rgba(168, 139, 92, 0.55);
  padding: 4rem 1.5rem 2.4rem;
  text-align: center;
  max-width: 1200px;
  margin: 0 auto;
}

.v3-footer__rotation {
  list-style: none;
  padding: 0;
  margin: 0 auto 2.4rem;
  max-width: 640px;
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.04rem;
  line-height: 1.85;
  color: var(--color-ink);
}

.v3-footer__rotation li { padding: 0.2rem 0; }

.v3-footer__nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.6rem;
  font-family: var(--font-body);
  font-size: .76rem;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  margin-bottom: 2rem;
  font-weight: 500;
}

.v3-footer__nav a {
  color: var(--color-ink);
  text-decoration: none;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

.v3-footer__nav a:hover,
.v3-footer__nav a:focus-visible {
  color: var(--color-heritage-gold-text);
  outline: none;
}

.v3-footer__nav a:focus-visible {
  outline: 2px solid var(--color-heritage-gold);
  outline-offset: 4px;
}

.v3-footer__institutional {
  font-family: var(--font-body);
  font-style: italic;
  font-size: .82rem;
  color: var(--color-ink-tertiary);
  margin: 0 0 0.6rem;
}

/* Connection Code Engine canonical footer line (per VIP audit §6.1; Polish v2.13 alignment) */
.v3-footer__powered {
  font-family: var(--font-display);
  font-style: italic;
  font-size: .82rem;
  color: var(--color-heritage-gold);
  letter-spacing: 0.015em;
  margin: 0 0 2rem;
}

.v3-footer__wordmark {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 1.6rem;
  color: var(--color-ink);
  margin: 0;
  letter-spacing: 0.01em;
}

.v3-footer__wordmark-tm {
  font-size: .35em;
  vertical-align: super;
  margin-left: 0.04em;
  color: var(--color-heritage-gold-text);
}

/* ═══════════════════════════════════════════════════
   Reduced-motion + responsive
   ═══════════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
  .v3-arrival__brand-mark,
  .v3-arrival__tagline,
  .v3-arrival__hairline,
  .v3-arrival__anchor-line,
  .v3-arrival__scroll-cue {
    animation: none;
    opacity: 1;
  }
  .v3-arrival__hairline { width: 240px; }
  .v3-door,
  .v3-door:hover,
  .v3-door:focus-visible {
    transition: none;
    transform: none;
  }
  html { scroll-behavior: auto; }
}

@media (max-width: 767px) {
  .v3-movement { padding: 4rem 1.25rem; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   POLISH v2 AMENDMENT — VISUAL TREATMENT (per Web Ed POLISH v2 amendment 2026-05-02)
   v2.1 navy spine + footer (Option M)
   v2.2 cream warmer alt section variants (.v3-section--warm)
   v2.3 Cormorant Garamond Layer 2 editorial canonical (replaces Foglihten Layer 2; Foglihten preserved Layer 1 only)
   v2.3 Gotham right-sizing (body 300 / 17px / 1.72)
   v2.3 navy softening #252948 architectural variant (cream-blend surfaces)
   v2.3 thesis eyebrows full navy
   v2.3 heritage gold layered preservation (4 canonical surfaces; restraint matrix unchanged)
   v2.4 S-spin codified (Option B deferred until transparent-BG SVG)
   PURELY ADDITIVE — preserves all current canon per Paul §5 binding ("never stray too far")
   ═══════════════════════════════════════════════════════════════════════════ */

:root {
  /* v2.3 navy softening — architectural variant for cream-blend surfaces (spine / footer) */
  --color-ink-architectural: #252948;

  /* v2.3 three-register typography canon (Polish v2 §3) — neutral var name post Stage A AMEND batch 4 MINOR rename
     Layer 1 trademark: Foglihten (brand mark hero ONLY; preserved via --font-display fallback chain at line 55)
     Layer 2 editorial display: Cormorant Garamond (canonical for v3-display, thesis eyebrows italic, problem stanzas)
     Layer 2 body: Gotham → Inter institutional fallback (canonical at line 56) */
}

/* v2.3 Gotham right-sizing — body Light 300 at 17px / 1.72 line-height */
body {
  font-weight: 300;
  font-size: 17px;
  line-height: 1.72;
}

/* v2.1 navy spine — fixed 3px navy hairline along left viewport edge (Option M) */
body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 3px;
  height: 100vh;
  background: var(--color-ink-architectural);
  z-index: 100;
  pointer-events: none;
}
@media (max-width: 767px) {
  body::before { width: 2px; }
}

/* v2.2 cream warmer alt section variants — Movements 3 / 7 / 10 per Homepage v3.1 §5 */
.v3-section--warm {
  background: var(--color-canvas-warm);
}

/* v2.3 Cormorant Garamond Layer 2 editorial display canonical — overrides Foglihten lead at Layer 2 */
.v3-display {
  font-family: var(--font-display);
  font-weight: 400;
  line-height: 1.14;
  letter-spacing: -0.005em;
}

/* Polish v2.9 thesis eyebrows REVERTED to heritage gold per Paul §5 2026-05-03 */
.v3-thesis__eyebrow {
  font-family: var(--font-display);
  font-style: italic;
  color: var(--color-heritage-gold-text);
}

/* ═══════════════════════════════════════════════════
   v2.9 — SILVER METALLIC CTA (Studio PRIMARY signature; relocates iOS M-button silver from
   CARD frame to BUTTON treatment per Paul §5 2026-05-03 staging-smoke directive
   "I really like the silver buttons you had at one point... more metallic looking")
   Three Doors visual hierarchy: uniform dark navy glass cards + 3 differentiated CTAs:
   - Connection Code: cobalt navy pill (free tier)
   - Studio: silver metallic gradient (PRIMARY conversion signature)
   - VIP: italic-gold subordinate link (premium tier)
   ═══════════════════════════════════════════════════ */
.v3-door__cta--silver-metallic {
  background: linear-gradient(135deg,
    #E0E0E0 0%,
    #F8F8F8 18%,
    #C0C0C0 50%,
    #F8F8F8 82%,
    #DCDCDC 100%);
  color: var(--color-ink);
  border: 1px solid #909090;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.65),
    inset 0 -1px 0 rgba(0, 0, 0, 0.18),
    0 2px 6px rgba(0, 0, 0, 0.18);
  font-weight: 600;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
  transition: background 240ms var(--easing-cinematic), box-shadow 240ms var(--easing-cinematic);
}

.v3-door:hover .v3-door__cta--silver-metallic,
.v3-door:focus-visible .v3-door__cta--silver-metallic {
  background: linear-gradient(135deg,
    #EAEAEA 0%,
    #FFFFFF 18%,
    #CCCCCC 50%,
    #FFFFFF 82%,
    #E8E8E8 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.8),
    inset 0 -1px 0 rgba(0, 0, 0, 0.20),
    0 4px 10px rgba(0, 0, 0, 0.22);
}

@media (prefers-reduced-motion: reduce) {
  .v3-door__cta--silver-metallic {
    transition: none;
  }
}

/* ═══════════════════════════════════════════════════
   v3.1 — MOVEMENT 2 "THE PROBLEM" (NEW per Homepage Master Plan v3.1 §5.3)
   3-stanza cinematic + closing per Cartier Reframe Spec v1.7 §2.2
   ═══════════════════════════════════════════════════ */

.v3-problem {
  /* uses primary cream canvas; v3-movement padding inherited */
}

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

.v3-problem__rule {
  border: 0;
  border-top: 1px solid var(--color-heritage-gold);
  width: 240px;
  opacity: 0.55;
  margin: 1.4rem auto 2rem;
}

.v3-problem__stanza {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.32rem, 2.8vw, 1.76rem);
  line-height: 1.4;
  color: var(--color-ink);
  margin: 0 auto 1.6rem;
  max-width: 640px;
}

.v3-problem__stanza--3 {
  font-style: italic;
  font-size: clamp(1.4rem, 3vw, 1.92rem);
  margin-top: 0.6rem;
  margin-bottom: 1.8rem;
}

.v3-problem__break {
  border: 0;
  border-top: 1px solid var(--color-hairline-atmosphere);
  margin: 1.6rem auto;
  max-width: 320px;
}

.v3-problem__closing {
  font-family: var(--font-body);
  font-weight: 300;
  font-size: 1.04rem;
  line-height: 1.72;
  color: var(--color-ink-secondary);
  max-width: 560px;
  margin: 2rem auto 0;
}

/* v2.1 footer navy band — institutional close on architectural navy with cream typography (Option M) */
.v3-footer {
  background: var(--color-ink-architectural);
  color: var(--color-canvas);
}

.v3-footer .v3-footer__rotation li {
  color: var(--color-canvas);
}

.v3-footer .v3-footer__nav a {
  color: var(--color-canvas);
}

.v3-footer .v3-footer__institutional {
  color: rgba(245, 240, 229, 0.62);
}

.v3-footer .v3-footer__wordmark {
  color: var(--color-canvas);
}

.v3-footer .v3-footer__wordmark-tm {
  color: var(--color-heritage-gold-bright);
}

/* v2.4 S-spin codified — single-axis cinematic rotation primitive (Option B deferred until transparent-BG SVG; arrival ends at 3.0s settle until SVG lands) */
@keyframes v3-s-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* End — Polish v2 amendment block */

/* ═══════════════════════════════════════════════════════════════════════════
   WAVE 1 v3.2 ECOSYSTEM REBUILD — 8 CLASS FAMILIES (Design Meridian 2026-05-05)
   Per Atlas commission atlas_to_design_WAVE_1_CSS_LANE_FIRE_2026-05-05.md
   Cartier baseline §5 + canon v1.4 + Ecosystem Audit §4.5 (Hermès restraint).
   Token system EXTENDED, never overridden. Mobile responsive across all 8.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── #3 .v3-arrival__brand-mark--wordmark-only ──────────────────────────────
   Canon v1.4 §3.1(b): hero wordmark variant — NO inline tagline in lockup.
   Modifier on .v3-arrival__brand-mark; preserves base fade-in animation.
   Asset re-render to wordmark-only canon pending Paul §5 (per Step 2 verdict). */
.v3-arrival__brand-mark--wordmark-only .v3-arrival__brand-mark-img {
  max-width: 520px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
@media (max-width: 1023px) {
  .v3-arrival__brand-mark--wordmark-only .v3-arrival__brand-mark-img { max-width: 380px; }
}
@media (max-width: 767px) {
  .v3-arrival__brand-mark--wordmark-only .v3-arrival__brand-mark-img { max-width: 280px; }
}

/* ── #4 .v3-arrival__anchor--positioning ────────────────────────────────────
   Hero positioning subhead variant on the H1 anchor.
   The em child carries the lead positioning sentence (display register, block);
   institutional restraint per canon v1.4 §3.1(b) — meaning carried by sentence,
   not visual ornament. Base anchor sizing inherited; em becomes block-line lead. */
.v3-arrival__anchor--positioning {
  max-width: 760px;
  margin: 0 auto;
}

.v3-arrival__anchor--positioning em {
  font-style: italic;
  color: var(--color-heritage-gold-text);
  display: block;
  margin-bottom: 1rem;
}

/* ── #5 .v3-arrival__anchor-extension ───────────────────────────────────────
   Secondary positioning sentence inside the H1 — body register beneath the lead.
   Resets inherited display typography from .v3-arrival__anchor parent. */
.v3-arrival__anchor-extension {
  display: block;
  font-family: var(--font-body);
  font-style: normal;
  font-weight: 300;
  font-size: clamp(1rem, 1.6vw, 1.16rem);
  line-height: 1.6;
  color: var(--color-ink-secondary);
  letter-spacing: 0;
  max-width: 56ch;
  margin: 0.6rem auto 0;
}

/* ── #1 .v3-three-cards ─────────────────────────────────────────────────────
   3-arm grid: Foundation / Search / Practice (Movement 2; CC Section parallel).
   Identical structure per arm — visual symmetry telegraphs system unity
   per canon v1.4 §1.2. Cream canvas + hairline navy frames + heritage gold
   on hover (restraint matrix preserved; gold reserved for premium signal). */
.v3-three-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
  margin: 3rem auto 0;
  max-width: 1120px;
}

@media (max-width: 1023px) {
  .v3-three-cards { grid-template-columns: 1fr; gap: 1.2rem; }
}

.v3-three-cards__card {
  background: var(--color-canvas);
  color: var(--color-ink);
  padding: 2.2rem 1.8rem;
  border: 1px solid rgba(28, 31, 58, 0.16);
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  position: relative;
  transition: transform 320ms var(--easing-cinematic),
              border-color 240ms var(--easing-cinematic),
              box-shadow 320ms var(--easing-cinematic);
}

.v3-three-cards__card:hover,
.v3-three-cards__card:focus-visible {
  transform: translateY(-3px);
  border-color: var(--color-heritage-gold);
  box-shadow: 0 8px 24px rgba(28, 31, 58, 0.08);
  outline: none;
}

.v3-three-cards__card:focus-visible {
  outline: 2px solid var(--color-heritage-gold);
  outline-offset: 4px;
}

.v3-three-cards__eyebrow {
  font-family: var(--font-body);
  font-size: 0.72rem;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: rgba(28, 31, 58, 0.55);
  font-weight: 500;
  margin: 0 0 0.8rem;
}

.v3-three-cards__name {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.6rem, 2.6vw, 1.92rem);
  line-height: 1.15;
  color: var(--color-ink);
  margin: 0 0 0.6rem;
}

.v3-three-cards__name em {
  font-style: italic;
  color: var(--color-heritage-gold-text);
}

.v3-three-cards__subhead {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.04rem;
  line-height: 1.45;
  color: var(--color-ink);
  margin: 0 0 1rem;
}

.v3-three-cards__body {
  font-size: 0.96rem;
  line-height: 1.65;
  color: var(--color-ink-secondary);
  margin: 0 0 1.2rem;
  flex: 1;
}

.v3-three-cards__for-who {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 0.92rem;
  line-height: 1.5;
  color: var(--color-ink-tertiary);
  margin: 0 0 1.4rem;
  border-top: 1px solid var(--color-hairline-atmosphere);
  padding-top: 1rem;
}

.v3-three-cards__for-who em {
  font-style: italic;
  color: var(--color-ink-secondary);
}

.v3-three-cards__cta {
  font-family: var(--font-body);
  font-size: 0.78rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 500;
  color: var(--color-heritage-gold-text);
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 44px;
}

@media (prefers-reduced-motion: reduce) {
  .v3-three-cards__card,
  .v3-three-cards__card:hover,
  .v3-three-cards__card:focus-visible {
    transition: none;
    transform: none;
  }
}

/* ── #2 .v3-layer-stack ─────────────────────────────────────────────────────
   Single composed table: Entry / Education / Execution / Deployment (Movement 4).
   Hermès restraint per Ecosystem Audit §4.5 — one table beats four cards on
   scan-time. Cream canvas + heritage-gold thead rule + hairline navy row
   dividers. Mobile collapses thead and re-flows as label + product + price block. */
.v3-layer-stack {
  width: 100%;
  max-width: 1080px;
  margin: 3rem auto 0;
  border-collapse: collapse;
  background: var(--color-canvas);
  font-family: var(--font-body);
}

.v3-layer-stack thead th {
  font-family: var(--font-body);
  font-size: 0.72rem;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: rgba(28, 31, 58, 0.55);
  font-weight: 500;
  padding: 0 1.2rem 1rem;
  text-align: left;
  border-bottom: 1px solid var(--color-heritage-gold);
}

.v3-layer-stack__row td {
  padding: 1.6rem 1.2rem;
  border-bottom: 1px solid var(--color-hairline-atmosphere);
  vertical-align: top;
  font-size: 1rem;
  line-height: 1.6;
  color: var(--color-ink-secondary);
}

.v3-layer-stack__row:last-child td {
  border-bottom: none;
}

.v3-layer-stack__layer {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.16rem;
  color: var(--color-heritage-gold-text);
  width: 16%;
  white-space: nowrap;
}

.v3-layer-stack__product {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 1.16rem;
  color: var(--color-ink);
  width: 24%;
}

.v3-layer-stack__inline-note {
  font-family: var(--font-body);
  font-style: italic;
  font-size: 0.86rem;
  color: var(--color-ink-tertiary);
  margin-left: 0.4rem;
}

.v3-layer-stack__body {
  color: var(--color-ink-secondary);
  width: 40%;
}

.v3-layer-stack__price {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1rem;
  color: var(--color-ink);
  width: 20%;
  text-align: right;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .v3-layer-stack thead { display: none; }

  .v3-layer-stack,
  .v3-layer-stack tbody,
  .v3-layer-stack tr,
  .v3-layer-stack td {
    display: block;
    width: 100%;
  }

  .v3-layer-stack__row {
    padding: 1.6rem 0;
    border-bottom: 1px solid var(--color-hairline-atmosphere);
  }

  .v3-layer-stack__row:last-child {
    border-bottom: none;
  }

  .v3-layer-stack__row td {
    padding: 0.2rem 0;
    border-bottom: none;
    text-align: left;
    white-space: normal;
    width: 100%;
  }

  .v3-layer-stack__layer {
    font-family: var(--font-body);
    font-style: normal;
    font-size: 0.72rem;
    letter-spacing: 0.20em;
    text-transform: uppercase;
    color: rgba(28, 31, 58, 0.55);
    margin-bottom: 0.4rem;
  }

  .v3-layer-stack__product { font-size: 1.32rem; margin-bottom: 0.4rem; }

  .v3-layer-stack__price { text-align: left; margin-top: 0.4rem; }
}

/* ── #6 .v3-footer__tagline ─────────────────────────────────────────────────
   Single canonical footer tagline: "The operating system behind every real connection."
   Sits at top of footer (architectural-navy background per v2.1 footer band).
   Cream italic Cormorant; institutional anchor. */
.v3-footer__tagline {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.16rem, 2.4vw, 1.4rem);
  line-height: 1.5;
  color: var(--color-canvas);
  text-align: center;
  max-width: 560px;
  margin: 0 auto 2.4rem;
}

/* ── #7 .v3-footer__legal ───────────────────────────────────────────────────
   Footer legal line: "© MatchMakers · Privacy · Terms"
   Single line; small body register; cream-tertiary against architectural navy. */
.v3-footer__legal {
  font-family: var(--font-body);
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  color: rgba(245, 240, 229, 0.62);
  text-align: center;
  margin: 0 0 1.6rem;
}

.v3-footer__legal a {
  color: rgba(245, 240, 229, 0.78);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding: 0 0.2rem;
  min-height: 44px;
  display: inline-block;
  line-height: 44px;
}

.v3-footer__legal a:hover,
.v3-footer__legal a:focus-visible {
  color: var(--color-heritage-gold-bright);
  border-bottom-color: var(--color-heritage-gold-bright);
  outline: none;
}

.v3-footer__legal a:focus-visible {
  outline: 2px solid var(--color-heritage-gold);
  outline-offset: 3px;
}

/* ── #8 .v3-footer__dmca ────────────────────────────────────────────────────
   DMCA badge container — w250-5x1-11 horizontal bar (Paul-approved 2026-05-05).
   Centered; constrained scale; 0.75 opacity dim to fit cream + navy palette
   without clash; full opacity on hover/focus for utility-grade interaction. */
.v3-footer__dmca {
  text-align: center;
  margin: 0 0 1.6rem;
}

.v3-footer__dmca .dmca-badge {
  display: inline-block;
  min-height: 44px;
  line-height: 0;
  padding: 4px 0;
  opacity: 0.75;
  transition: opacity 240ms var(--easing-cinematic);
}

.v3-footer__dmca .dmca-badge:hover,
.v3-footer__dmca .dmca-badge:focus-visible {
  opacity: 1;
  outline: none;
}

.v3-footer__dmca .dmca-badge:focus-visible {
  outline: 2px solid var(--color-heritage-gold);
  outline-offset: 3px;
}

.v3-footer__dmca .dmca-badge img {
  max-width: 250px;
  width: 100%;
  height: auto;
  display: inline-block;
}

@media (prefers-reduced-motion: reduce) {
  .v3-footer__dmca .dmca-badge {
    transition: none;
  }
}

/* End — Wave 1 v3.2 8 class families authored against Cartier baseline */

/* === DMCA badge — Cartier palette per canon §5.1 ============================
   Overrides DMCA's CDN dmca.css with cream + navy + heritage gold.
   Result: badge reads as part of the design, not a bolted-on compliance badge.
   Per Wave 1 Amendments Batch 1 (Atlas G1 ✅ + Paul §5 ratify 2026-05-05).
   ============================================================================ */
#DMCA-badge .dm-1,
#DMCA-badge .dm-2 {
  background-color: #F5F0E5 !important;   /* cream — canon §5.1 */
  border-color: #CBA372 !important;        /* heritage gold — canon §5.1 */
}
#DMCA-badge .dm-1 a,
#DMCA-badge .dm-2 a {
  color: #1C1F3A !important;               /* navy — canon §5.1 */
  text-decoration: none;
}

/* === Playbook purchase — what-you-receive list (Stage A Amendment 6b) ====
   Per REBUILT_PLAYBOOK_STANDALONE_PRODUCT_HTML_v1 §3
   Cream + navy + heritage-gold palette per canon §5.1.
   ============================================================================ */
.v3-purchase-receive {
  list-style: none;
  padding: 0;
  margin: 2rem 0 0;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.v3-purchase-receive__item {
  display: grid;
  grid-template-columns: minmax(140px, 200px) 1fr;
  gap: 1.5rem;
  padding: 1rem 0;
  border-top: 1px solid rgba(28, 31, 58, 0.12);
}

.v3-purchase-receive__item:last-child {
  border-bottom: 1px solid rgba(28, 31, 58, 0.12);
}

.v3-purchase-receive__label {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.1rem;
  color: #1C1F3A;
  letter-spacing: 0.02em;
}

.v3-purchase-receive__body {
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  line-height: 1.6;
  color: #1C1F3A;
}

.v3-purchase-receive__body code {
  font-family: 'Inter', monospace;
  font-size: 0.92rem;
  background: rgba(203, 163, 114, 0.12);
  padding: 0.1rem 0.4rem;
  border-radius: 2px;
}

@media (max-width: 640px) {
  .v3-purchase-receive__item {
    grid-template-columns: 1fr;
    gap: 0.4rem;
  }
}

/* === FAQ — Stage A Amendment 6b ============================================ */
.v3-faq {
  margin: 2rem 0 0;
}

.v3-faq__q {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.25rem;
  color: #1C1F3A;
  margin: 1.75rem 0 0.5rem;
  line-height: 1.4;
}

.v3-faq__a {
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  line-height: 1.7;
  color: #1C1F3A;
  margin: 0;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid rgba(28, 31, 58, 0.12);
}

.v3-faq__a:last-child {
  border-bottom: none;
}

/* === Trust + Provability 4-anchor block (sole placement on /about/) — Wave 2 polish === */
.v3-trust-anchors {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  max-width: 900px;
  margin: 3rem auto 0;
}
.v3-trust-anchor {
  padding: 1.5rem 1.5rem 1.5rem 0;
  border-left: 1px solid var(--color-heritage-gold-soft);
  padding-left: 1.5rem;
}
.v3-trust-anchor__label {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.25rem;
  color: var(--color-navy);
  margin: 0 0 0.5rem;
  letter-spacing: -0.005em;
}
.v3-trust-anchor__body {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--color-navy-soft);
  margin: 0;
  letter-spacing: 0.005em;
}

@media (max-width: 720px) {
  .v3-trust-anchors {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}

/* ═══════════════════════════════════════════════════════════════
   HERMÈS POLISH v1.0 — FOUNDATION (Wave 2 Pre-Phase-0 cascade)
   80/15/4/1/0 color discipline binding
   Cream canvas · Navy ink · Heritage gold accent · Cobalt CTA
   ═══════════════════════════════════════════════════════════════ */

/* ---- Color token alignment (Atrium Face v1 doctrine) ---- */
:root {
  --color-cream: #F5F0E5;
  --color-cream-soft: #F7F2E8;
  --color-cream-paper: #EFE9DA;
  --color-navy: #1B2940;
  --color-navy-soft: rgba(27, 41, 64, 0.72);
  --color-navy-whisper: rgba(27, 41, 64, 0.12);
  --color-navy-gossamer: rgba(27, 41, 64, 0.06);
  --color-heritage-gold-soft: rgba(203, 163, 114, 0.6);
  --color-cobalt-glass-deep: #0E2542;
}

/* ---- Movement 1: Arrival polish ---- */
.v3-arrival--polished {
  background: linear-gradient(180deg, #F7F2E8 0%, #F5F0E5 100%);
  padding: 8rem 1.5rem 6rem;
  text-align: center;
}
.v3-arrival__brand-mark-img--soft {
  opacity: 0.92;
  filter: contrast(0.96);
}
.v3-arrival__anchor em {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 400;
  font-style: italic;
  font-size: clamp(2.4rem, 5vw, 3.6rem);
  color: var(--color-navy);
  letter-spacing: -0.005em;
  display: block;
  margin: 1.5rem auto;
  max-width: 18ch;
  line-height: 1.18;
}
.v3-arrival__subhead {
  font-family: 'Inter', sans-serif;
  font-size: 1.15rem;
  font-weight: 400;
  color: var(--color-navy-soft);
  margin: 1rem auto 2.5rem;
  max-width: 32ch;
  line-height: 1.55;
}
.v3-arrival__cta {
  margin: 2.5rem auto 1.5rem;
}

/* ---- Cobalt glass CTA — glassy polish ---- */
.v3-cta-cobalt-glass {
  display: inline-block;
  padding: 0.95rem 2rem;
  background: var(--color-cobalt-glass);
  color: #F5F0E5;
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 2px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    inset 0 -1px 0 rgba(14, 37, 66, 0.5),
    0 1px 2px rgba(27, 41, 64, 0.08);
  transition: background 280ms ease, transform 200ms ease, box-shadow 280ms ease;
}
.v3-cta-cobalt-glass:hover {
  background: var(--color-cobalt-glass-deep);
  transform: translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -1px 0 rgba(14, 37, 66, 0.55),
    0 3px 6px rgba(27, 41, 64, 0.12);
}
.v3-cta-cobalt-glass:active {
  transform: translateY(0);
}
.v3-cta-cobalt-glass--secondary {
  padding: 0.7rem 1.5rem;
  font-size: 0.9rem;
}

/* ---- Heritage gold metallic rule ---- */
.v3-rule--metallic-gold {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(203, 163, 114, 0.85) 18%, rgba(203, 163, 114, 0.95) 50%, rgba(203, 163, 114, 0.85) 82%, transparent 100%);
  margin: 1.5rem auto;
  width: 100%;
  max-width: 280px;
}
.v3-rule--metallic-gold.v3-rule--center { margin-left: auto; margin-right: auto; }
.v3-rule--metallic-gold.v3-rule--narrow { max-width: 80px; }

/* ---- Whisper rule (between movements) ---- */
.v3-rule--whisper {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(27, 41, 64, 0.08) 30%, rgba(27, 41, 64, 0.08) 70%, transparent 100%);
  margin: 0;
}

/* ---- Movement 2: Soft cards (cream tonal variation; NO navy blocks) ---- */
.v3-soft-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.75rem;
  max-width: 1100px;
  margin: 3rem auto 0;
  padding: 0 1.5rem;
}
.v3-soft-card {
  background: linear-gradient(180deg, #F7F2E8 0%, #F5F0E5 100%);
  border: 1px solid var(--color-navy-gossamer);
  border-radius: 2px;
  padding: 2.5rem 2rem;
  text-align: left;
  position: relative;
  box-shadow: 0 1px 3px rgba(27, 41, 64, 0.04);
  transition: box-shadow 320ms ease, transform 240ms ease, border-color 320ms ease;
}
.v3-soft-card:hover {
  box-shadow: 0 6px 20px rgba(27, 41, 64, 0.07);
  transform: translateY(-2px);
  border-color: rgba(203, 163, 114, 0.25);
}
.v3-soft-card__numeral {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 2.2rem;
  font-weight: 400;
  color: var(--color-heritage-gold);
  display: block;
  margin-bottom: 1rem;
  line-height: 1;
}
.v3-soft-card__name {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--color-navy);
  margin: 0 0 0.4rem;
  letter-spacing: 0;
}
.v3-soft-card__subhead {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--color-navy);
  margin: 0 0 1rem;
  letter-spacing: 0.005em;
}
.v3-soft-card__body {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--color-navy-soft);
  margin: 0 0 1.5rem;
}
.v3-soft-card__cta {
  font-family: 'Inter', sans-serif;
  font-size: 0.92rem;
  font-weight: 500;
  color: var(--color-heritage-gold);
  text-decoration: none;
  border-bottom: 1px solid var(--color-heritage-gold-soft);
  padding-bottom: 1px;
  letter-spacing: 0.02em;
  transition: color 240ms ease, border-color 240ms ease;
}
.v3-soft-card__cta:hover {
  color: var(--color-navy);
  border-color: var(--color-navy);
}
.v3-soft-card__price {
  font-family: 'Inter', sans-serif;
  font-size: 0.92rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-heritage-gold);
  margin: 0 0 0.4rem;
  font-feature-settings: 'kern' 1, 'liga' 1, 'tnum' 1, 'lnum' 1;
}
.v3-soft-card--featured {
  border-color: rgba(203, 163, 114, 0.35);
  background: linear-gradient(180deg, #F8F4EB 0%, #F5F0E5 100%);
}
.v3-soft-card--featured .v3-soft-card__numeral {
  color: var(--color-cobalt-glass);
}

@media (max-width: 880px) {
  .v3-soft-cards { grid-template-columns: 1fr; gap: 1.25rem; }
  .v3-soft-card { padding: 2rem 1.5rem; }
}

/* ---- Movement 3: System Flow visual ---- */
.v3-system-flow {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  max-width: 1100px;
  margin: 3rem auto 1.5rem;
  padding: 2.5rem 1.5rem;
}
.v3-system-flow__station {
  flex: 1 1 180px;
  min-width: 160px;
  text-align: center;
  padding: 1.25rem 0.5rem;
}
.v3-system-flow__cost {
  font-family: 'Inter', sans-serif;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-heritage-gold);
  margin: 0 0 0.5rem;
}
.v3-system-flow__name {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.45rem;
  color: var(--color-navy);
  margin: 0 0 0.4rem;
  line-height: 1.2;
}
.v3-system-flow__role {
  font-family: 'Inter', sans-serif;
  font-size: 0.88rem;
  color: var(--color-navy-soft);
  margin: 0;
  font-style: italic;
}
.v3-system-flow__arrow {
  align-self: center;
  font-family: 'Inter', sans-serif;
  font-size: 1.25rem;
  color: var(--color-heritage-gold);
  padding: 0 0.5rem;
  flex-shrink: 0;
}
.v3-body--ghost {
  font-style: italic;
  color: rgba(27, 41, 64, 0.55);
  font-size: 0.92rem;
}

@media (max-width: 880px) {
  .v3-system-flow { flex-direction: column; gap: 0.5rem; padding: 1.5rem 1rem; }
  .v3-system-flow__arrow { padding: 0; transform: rotate(90deg); }
}

/* ---- Movement 4: Layer Stack polished ---- */
.v3-layer-stack--polished {
  width: 100%;
  border-collapse: collapse;
  margin: 2.5rem 0 0;
  background: transparent;
  font-family: 'Inter', sans-serif;
}
.v3-layer-stack--polished thead th {
  background: transparent;
  color: var(--color-heritage-gold);
  font-family: 'Inter', sans-serif;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-align: left;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid var(--color-heritage-gold-soft);
}
.v3-layer-stack--polished tbody tr {
  border-bottom: 1px solid var(--color-navy-whisper);
  transition: background 320ms ease;
}
.v3-layer-stack--polished tbody tr:last-child { border-bottom: none; }
.v3-layer-stack--polished tbody tr:hover {
  background: linear-gradient(90deg, transparent 0%, rgba(247, 242, 232, 0.7) 50%, transparent 100%);
}
.v3-layer-stack--polished td {
  padding: 1.5rem 1rem;
  vertical-align: top;
  color: var(--color-navy);
  font-size: 0.98rem;
  line-height: 1.6;
}
.v3-layer-stack--polished .v3-layer-stack__layer em {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.15rem;
  color: var(--color-navy);
  font-weight: 500;
}
.v3-layer-stack--polished .v3-layer-stack__product {
  font-weight: 500;
  color: var(--color-navy);
}
.v3-layer-stack--polished .v3-layer-stack__body {
  color: var(--color-navy-soft);
  font-size: 0.92rem;
}
.v3-layer-stack--polished .v3-layer-stack__price {
  font-family: 'Inter', sans-serif;
  font-size: 0.92rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--color-navy);
  white-space: nowrap;
}
.v3-layer-stack--polished .v3-layer-stack__inline-note {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  color: var(--color-navy-soft);
  font-size: 0.92rem;
  margin-left: 0.3rem;
}

@media (max-width: 720px) {
  .v3-layer-stack--polished thead { display: none; }
  .v3-layer-stack--polished tbody tr {
    display: block;
    padding: 1.5rem 0;
    border-bottom: 1px solid var(--color-navy-whisper);
  }
  .v3-layer-stack--polished td {
    display: block;
    padding: 0.25rem 0;
  }
  .v3-layer-stack--polished td.v3-layer-stack__layer { padding-bottom: 0.5rem; }
  .v3-layer-stack--polished td.v3-layer-stack__price { padding-top: 0.5rem; font-size: 0.85rem; color: var(--color-heritage-gold); }
}

/* ---- Footer polish ---- */
.v3-footer--polished {
  background: linear-gradient(180deg, #F5F0E5 0%, #EFE9DA 100%);
  padding: 4rem 1.5rem 3rem;
  text-align: center;
  border-top: 1px solid var(--color-navy-whisper);
}
.v3-footer--polished .v3-footer__tagline {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.15rem;
  color: var(--color-navy);
  margin: 0 0 2rem;
}
.v3-footer--polished .v3-footer__nav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.5rem 2rem;
  margin: 0 0 2rem;
}
.v3-footer--polished .v3-footer__nav a {
  font-family: 'Inter', sans-serif;
  font-size: 0.88rem;
  color: var(--color-navy);
  text-decoration: none;
  letter-spacing: 0.02em;
  transition: color 240ms ease;
}
.v3-footer--polished .v3-footer__nav a:hover {
  color: var(--color-heritage-gold);
}

/* ---- Movement / section warm tonal variant ---- */
.v3-section--warm {
  background: linear-gradient(180deg, #F7F2E8 0%, #F5F0E5 100%);
  padding: 5rem 1.5rem;
  margin: 4rem 0 0;
}

/* ---- Display variant (smaller; for VIP Movement 2 'The wall') ---- */
.v3-display--small {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: clamp(1.4rem, 3vw, 1.85rem);
  color: var(--color-navy);
  letter-spacing: 0;
  line-height: 1.25;
  margin: 0 0 1rem;
}

/* ---- Arrival eyebrow above H1 (vip + arm-pages pattern) ---- */
.v3-arrival__eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--color-heritage-gold);
  margin: 1.5rem auto 0.5rem;
  text-align: center;
}

/* ---- LB-6 system-context block on arm pages Movement 1 ---- */
.v3-arrival__system-context {
  margin: 2.5rem auto 1.5rem;
  max-width: 36rem;
  padding: 1.5rem 1.5rem;
  border-top: 1px solid var(--color-navy-whisper);
  border-bottom: 1px solid var(--color-navy-whisper);
  text-align: center;
}
.v3-arrival__system-context .v3-body {
  font-style: italic;
  color: var(--color-navy-soft);
  font-size: 0.95rem;
  margin: 0 0 1.25rem;
}

/* ---- /playbook/ Movement 2 source-of-truth hierarchy visual ---- */
.v3-source-of-truth-flow {
  margin: 3rem 0 0;
  padding: 2rem 1.5rem;
  border-top: 1px solid var(--color-navy-whisper);
  border-bottom: 1px solid var(--color-navy-whisper);
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.v3-source-of-truth-flow__row {
  display: grid;
  grid-template-columns: minmax(140px, 200px) 30px 1fr;
  gap: 1rem;
  align-items: baseline;
}
.v3-source-of-truth-flow__source {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.15rem;
  font-weight: 500;
  color: var(--color-navy);
  text-align: right;
  padding-right: 0.5rem;
}
.v3-source-of-truth-flow__row:first-child .v3-source-of-truth-flow__source {
  color: var(--color-heritage-gold);
  font-weight: 600;
}
.v3-source-of-truth-flow__arrow {
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  color: var(--color-heritage-gold);
  text-align: center;
}
.v3-source-of-truth-flow__derived {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  font-style: italic;
  color: var(--color-navy-soft);
  letter-spacing: 0.005em;
}

@media (max-width: 640px) {
  .v3-source-of-truth-flow__row {
    grid-template-columns: 1fr;
    gap: 0.25rem;
    text-align: center;
  }
  .v3-source-of-truth-flow__source { text-align: center; padding-right: 0; }
  .v3-source-of-truth-flow__arrow { display: none; }
}

/* ---- /connection-code/ Methodology Search Phase 0 demo ---- */
.v3-methodology-search {
  max-width: 640px;
  margin: 2.5rem auto 0;
  padding: 0 1rem;
}
.v3-methodology-search__label {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-heritage-gold);
  margin: 0 0 0.5rem;
  text-align: left;
}
.v3-methodology-search__input {
  width: 100%;
  padding: 0.95rem 1rem;
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.15rem;
  color: var(--color-navy);
  background: linear-gradient(180deg, #F7F2E8 0%, #F5F0E5 100%);
  border: 1px solid var(--color-navy-gossamer);
  border-radius: 2px;
  margin: 0 0 1rem;
  transition: border-color 240ms ease, box-shadow 240ms ease;
}
.v3-methodology-search__input:focus {
  outline: none;
  border-color: var(--color-heritage-gold);
  box-shadow: 0 0 0 3px rgba(203, 163, 114, 0.15);
}
.v3-methodology-search__output {
  margin: 2rem auto 0;
  max-width: 720px;
  padding: 1.5rem 2rem;
  background: linear-gradient(180deg, #F7F2E8 0%, #F5F0E5 100%);
  border: 1px solid var(--color-navy-gossamer);
  border-radius: 2px;
  min-height: 4rem;
}

/* ═══════════════════════════════════════════════════════════════
   HOMEPAGE WOW UPLIFT v2.0 — MAX WEB ED institutional gravitas
   Per Paul §5 directive 2026-05-06 ("our design needs to WOW")
   Bundles with CTA Oval Gloss Restoration v1.0 (single dispatch)
   ENHANCE not REGRESS — surgical uplifts; zero canonical class renames

   ADAPTATION NOTE (Web Ed scope reconciliation 2026-05-06): spec authored
   against pre-Hermès-polish state targeting .v3-three-cards / .v3-cta-cobalt /
   .v3-arrival__anchor-extension / .v3-rule--hairline-atmosphere. Post-Pre-
   Phase-0 homepage uses .v3-soft-card / .v3-cta-cobalt-glass / .v3-arrival__
   subhead / .v3-rule--whisper. Spec applied literally (.v3-three-cards rules
   apply to /studio/ + /contact/ + /connection-code/ which still use that
   class) PLUS oval gloss extended to .v3-cta-cobalt-glass for homepage hero
   parity per Paul §5 directive intent.
   ═══════════════════════════════════════════════════════════════ */

/* ── §2.1 Paper-grain Hermès stationery texture (body::before overlay) ── */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: 0.035;
  z-index: 1;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/><feColorMatrix values='0 0 0 0 0.11 0 0 0 0 0.12 0 0 0 0 0.23 0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  background-size: 200px 200px;
}

/* ── §2.2 Letterpress signature asterism class ── */
.v3-asterism {
  display: block;
  text-align: center;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 0.7rem;
  letter-spacing: 0.5em;
  color: rgba(203, 163, 114, 0.45);
  margin: 3rem auto;
  user-select: none;
}
.v3-asterism--page-close {
  font-size: 0.95rem;
  color: rgba(203, 163, 114, 0.55);
  margin: 4rem auto 1.5rem;
}

/* Origin brand saddle close */
.v3-origin__brand-saddle {
  text-align: center;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-style: italic;
  font-size: 1.05rem;
  color: var(--color-ink-secondary);
  margin: 0 auto 3rem;
  letter-spacing: 0.02em;
}
.v3-origin__brand-saddle em { font-style: italic; }

/* ── §2.3 Heritage gold metallic taper rule (between movements + within layer stack) ── */
.v3-rule--metallic-gold-taper {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(203, 163, 114, 0.28) 25%, rgba(203, 163, 114, 0.28) 75%, transparent 100%);
  margin: 5rem auto;
  width: 60%;
  max-width: 480px;
}
@media (max-width: 767px) {
  .v3-rule--metallic-gold-taper { width: 80%; margin: 3.5rem auto; }
}

/* ── §2.5 Three Cards (Movement 2) — Hermès editorial object register
   Applies to /studio/ + /contact/ + /connection-code/ surfaces still on
   .v3-three-cards class (homepage uses .v3-soft-cards post-Pre-Phase-0) ── */
.v3-three-cards {
  gap: 2rem;
  margin-top: 4rem;
}
@media (max-width: 1023px) { .v3-three-cards { gap: 1.6rem; } }

.v3-three-cards__card {
  background: linear-gradient(180deg, #F7F2E8 0%, #F5F0E5 100%);
  padding: 2.8rem 2.2rem;
  border: 1px solid rgba(28, 31, 58, 0.08);
  border-radius: 4px;
  box-shadow: 0 1px 3px rgba(27, 41, 64, 0.04);
  position: relative;
  overflow: hidden;
  transition:
    transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 320ms cubic-bezier(0.22, 1, 0.36, 1),
    background 320ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (max-width: 767px) {
  .v3-three-cards__card { padding: 2.2rem 1.6rem; }
}

.v3-three-cards__card::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(203, 163, 114, 0.85) 50%, transparent 100%);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.v3-three-cards__card:hover,
.v3-three-cards__card:focus-visible {
  transform: translateY(-4px);
  background: linear-gradient(180deg, #F8F4EC 0%, #F6F1E7 100%);
  box-shadow: 0 12px 32px rgba(27, 41, 64, 0.10);
  border-color: rgba(28, 31, 58, 0.08);
  outline: none;
}
.v3-three-cards__card:hover::before,
.v3-three-cards__card:focus-visible::before {
  transform: scaleX(1);
}

.v3-three-cards__numeral {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-style: italic;
  font-size: 0.95rem;
  color: rgba(203, 163, 114, 0.85);
  letter-spacing: 0.08em;
  margin: 0 0 0.5rem;
  font-feature-settings: 'smcp' 1;
}

.v3-three-cards__cta {
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.02rem;
  letter-spacing: 0.01em;
  text-transform: none;
  font-weight: 400;
  color: #5A4118;
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  transition: color 240ms ease;
}
.v3-three-cards__card:hover .v3-three-cards__cta,
.v3-three-cards__card:focus-visible .v3-three-cards__cta {
  color: var(--color-ink);
}
.v3-three-cards__cta span[aria-hidden] {
  transition: transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
}
.v3-three-cards__card:hover .v3-three-cards__cta span[aria-hidden],
.v3-three-cards__card:focus-visible .v3-three-cards__cta span[aria-hidden] {
  transform: translateX(4px);
}

/* ── §2.7 Layer Stack (Movement 4) editorial product catalog register ── */
.v3-layer-stack__numeral {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-style: italic;
  font-size: 1.4rem;
  color: rgba(203, 163, 114, 0.85);
  width: 60px;
  padding-left: 0;
  text-align: center;
  letter-spacing: 0.04em;
}

@media (max-width: 767px) {
  .v3-layer-stack__numeral {
    width: auto;
    text-align: left;
    padding-left: 0;
    font-size: 1.2rem;
    margin-bottom: 0.4rem;
  }
}

/* ── §2.10 Motion choreography (per Atrium Face v1 §1.5.1.A) ── */

/* Brand mark + hero arrival fade-up sequence */
.v3-arrival--polished .v3-arrival__brand-mark {
  opacity: 0;
  transform: translateY(4px);
  animation: v3-fade-up 600ms cubic-bezier(0.22, 1, 0.36, 1) 200ms forwards;
}
.v3-arrival--polished hr.v3-rule--metallic-gold {
  transform: scaleX(0);
  animation: v3-rule-taper 1100ms cubic-bezier(0.22, 1, 0.36, 1) 700ms forwards;
}
.v3-arrival--polished .v3-arrival__anchor {
  opacity: 0;
  animation: v3-fade-in 800ms cubic-bezier(0.22, 1, 0.36, 1) 1100ms forwards;
}
.v3-arrival--polished .v3-arrival__scroll-cue {
  opacity: 0;
  animation: v3-fade-in 600ms cubic-bezier(0.22, 1, 0.36, 1) 1500ms forwards;
}

@keyframes v3-fade-up {
  to { opacity: 0.94; transform: translateY(0); }
}
@keyframes v3-fade-in {
  to { opacity: 1; }
}
@keyframes v3-rule-taper {
  to { transform: scaleX(1); }
}
@keyframes v3-scroll-pulse {
  0%, 100% { transform: translateY(0); opacity: 0.55; }
  50% { transform: translateY(3px); opacity: 1; }
}

.v3-arrival__scroll-cue::after {
  display: inline-block;
  margin-left: 0.4rem;
  animation: v3-scroll-pulse 4s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* Three Cards stagger fade-in (intersection observer triggered via .is-in-view) */
.v3-three-cards__card,
.v3-soft-card {
  opacity: 0;
  transform: translateY(8px);
  transition:
    opacity 500ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 500ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 320ms cubic-bezier(0.22, 1, 0.36, 1),
    background 320ms cubic-bezier(0.22, 1, 0.36, 1);
}
.v3-three-cards__card.is-in-view,
.v3-soft-card.is-in-view {
  opacity: 1;
  transform: translateY(0);
}
.v3-three-cards__card.is-in-view:nth-child(1),
.v3-soft-card.is-in-view:nth-child(1) { transition-delay: 0ms; }
.v3-three-cards__card.is-in-view:nth-child(2),
.v3-soft-card.is-in-view:nth-child(2) { transition-delay: 100ms; }
.v3-three-cards__card.is-in-view:nth-child(3),
.v3-soft-card.is-in-view:nth-child(3) { transition-delay: 200ms; }

/* Layer Stack rows stagger */
.v3-layer-stack__row {
  opacity: 0;
  transform: translateY(6px);
  transition:
    opacity 400ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.v3-layer-stack__row.is-in-view {
  opacity: 1;
  transform: translateY(0);
}
.v3-layer-stack__row.is-in-view:nth-child(1) { transition-delay: 0ms; }
.v3-layer-stack__row.is-in-view:nth-child(2) { transition-delay: 80ms; }
.v3-layer-stack__row.is-in-view:nth-child(3) { transition-delay: 160ms; }
.v3-layer-stack__row.is-in-view:nth-child(4) { transition-delay: 240ms; }
.v3-layer-stack__row.is-in-view:nth-child(5) { transition-delay: 320ms; }

/* Cobalt CTA first-arrival glassy pulse — fires once via JS .is-arrived class
   (covers both .v3-cta-cobalt legacy class + .v3-cta-cobalt-glass Hermès polish) */
.v3-cta-cobalt.is-arrived,
.v3-cta-cobalt-glass.is-arrived {
  animation: v3-cobalt-arrive 1500ms cubic-bezier(0.4, 0, 0.6, 1) 1 forwards;
}
@keyframes v3-cobalt-arrive {
  0%, 100% { box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -1px 0 rgba(8, 20, 38, 0.45),
    0 0 0 1px rgba(232, 232, 232, 0.55),
    0 2px 6px rgba(27, 41, 64, 0.18),
    0 8px 20px rgba(27, 41, 64, 0.08); }
  50% { box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.32),
    inset 0 -1px 0 rgba(8, 20, 38, 0.50),
    0 0 0 1px rgba(255, 255, 255, 0.75),
    0 4px 12px rgba(27, 41, 64, 0.22),
    0 12px 28px rgba(27, 41, 64, 0.12); }
}

/* ── §2.4 / §2.6 Hero + warm-section refinements applied via .v3-arrival--polished
   already implements +breathing per Hermès polish v1.0; spec section
   .v3-section--warm extends with editorial border treatment at v2 ── */
.v3-section--warm {
  border: 1px solid rgba(28, 31, 58, 0.06);
  border-radius: 12px;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px) {
  .v3-section--warm { border-radius: 8px; }
}

/* ── Oval gloss extension to .v3-cta-cobalt-glass — Hermès polish v1.0
   homepage hero CTA receives the MM_FINALS oval gloss treatment per Paul §5
   directive intent (the homepage hero button is the Paul §5 "sample button");
   class name preserved per ENHANCE-not-REGRESS binding ── */
.v3-cta-cobalt-glass {
  border-radius: 9999px;
  padding: 0.95rem 2.25rem;
  min-height: 48px;
  background:
    linear-gradient(180deg,
      #1F3A6E 0%,
      #163354 48%,
      #0F2640 100%);
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  color: #F5F0E5;
  border: 1px solid transparent;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -1px 0 rgba(8, 20, 38, 0.45),
    0 0 0 1px rgba(232, 232, 232, 0.55),
    0 2px 6px rgba(27, 41, 64, 0.18),
    0 8px 20px rgba(27, 41, 64, 0.08);
  transition:
    transform 280ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 320ms cubic-bezier(0.22, 1, 0.36, 1),
    background 280ms ease;
}
.v3-cta-cobalt-glass:hover,
.v3-cta-cobalt-glass:focus-visible {
  background:
    linear-gradient(180deg,
      #234176 0%,
      #1A3A5E 48%,
      #112A48 100%);
  color: #FFFFFF;
  transform: translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.28),
    inset 0 -1px 0 rgba(8, 20, 38, 0.50),
    0 0 0 1px rgba(255, 255, 255, 0.65),
    0 4px 10px rgba(27, 41, 64, 0.22),
    0 12px 28px rgba(27, 41, 64, 0.12);
  outline: none;
}
.v3-cta-cobalt-glass:active {
  transform: translateY(0);
  box-shadow:
    inset 0 2px 4px rgba(8, 20, 38, 0.50),
    inset 0 -1px 0 rgba(255, 255, 255, 0.06),
    0 0 0 1px rgba(232, 232, 232, 0.55),
    0 1px 3px rgba(27, 41, 64, 0.14);
}
.v3-cta-cobalt-glass:focus-visible {
  outline: 2px solid rgba(203, 163, 114, 0.6);
  outline-offset: 4px;
}

/* Reduced motion preference: disable all animations */
@media (prefers-reduced-motion: reduce) {
  body::before { display: none; }
  .v3-arrival--polished .v3-arrival__brand-mark,
  .v3-arrival--polished hr.v3-rule--metallic-gold,
  .v3-arrival--polished .v3-arrival__anchor,
  .v3-arrival--polished .v3-arrival__scroll-cue,
  .v3-three-cards__card,
  .v3-soft-card,
  .v3-layer-stack__row,
  .v3-cta-cobalt.is-arrived,
  .v3-cta-cobalt-glass.is-arrived,
  .v3-arrival__scroll-cue::after {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  .v3-arrival--polished hr.v3-rule--metallic-gold { transform: scaleX(1); }
  .v3-three-cards__card,
  .v3-soft-card { transition: none; }
  .v3-cta-cobalt-glass {
    transition: background 120ms ease;
  }
  .v3-cta-cobalt-glass:hover,
  .v3-cta-cobalt-glass:focus-visible {
    transform: none;
  }
}
