/* Rafiq Visual Direction v2.0 — Sacred Modernism
   Presentation-only layer. Canonical journey/state ownership remains unchanged. */
:root{
  --sacred-ivory:#f8f5ee;--sacred-stone:#e9e3d8;--sacred-charcoal:#202522;
  --sacred-green:#0b3d32;--sacred-sage:#708f80;--guidance-gold:#b99a5b;
  --sacred-white:#fffdf8;--sacred-muted:#66716b;--sacred-line:rgba(11,61,50,.14);
  --sacred-shadow:0 22px 60px rgba(11,61,50,.08);--sacred-radius:22px;
}
html{background:var(--sacred-ivory)}
body{background:var(--sacred-ivory);color:var(--sacred-charcoal);font-family:'DM Sans',system-ui,sans-serif}
header{background:rgba(248,245,238,.94);border-color:var(--sacred-line);box-shadow:0 8px 30px rgba(11,61,50,.035)}
.brand{color:var(--sacred-green)}.brand span,.eyebrow{color:var(--guidance-gold)}
main section{position:relative}
.hero{min-height:82svh;background:var(--sacred-green);color:var(--sacred-ivory)}
.hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.035),transparent 34%),linear-gradient(90deg,transparent 49.8%,rgba(185,154,91,.12) 50%,transparent 50.2%)}
.hero h1{max-width:900px}.hero h1 em{color:#d5bd88}.hero .lead,.hero .trust{color:rgba(248,245,238,.72)}
.hero .primary{background:var(--sacred-ivory);color:var(--sacred-green)}.hero .secondary{border-color:rgba(248,245,238,.45);color:var(--sacred-ivory)}
.hero-sacred-visual{border-radius:260px 260px 24px 24px;box-shadow:0 32px 90px rgba(0,0,0,.22);isolation:isolate}
.hero-sacred-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,61,50,.04),rgba(11,61,50,.34));pointer-events:none}
.journey,.focus-panel{background:var(--sacred-green)}
.guide,.cards,.video{background:var(--sacred-ivory)}.check{background:var(--sacred-stone)}.sources{background:var(--sacred-white)}
.primary{background:var(--sacred-green)}.secondary{border-color:var(--sacred-green)}
.grid article,.route-card,.ready-card,.question-card,.next-card,.todo label{border:1px solid var(--sacred-line);box-shadow:var(--sacred-shadow)}
.grid article,.route-card,.ready-card,.question-card,.next-card,.todo label,.all-prep span{background:var(--sacred-white)}
.grid .featured,.now-card{background:#e4ebe5}
.route-options button{background:var(--sacred-ivory)}.route-options button.selected,.success-mark{background:var(--sacred-green)}
/* Functional Path: straight, quiet, directional. */
.journey-path{position:relative}.journey-path::before{content:'';position:absolute;left:6%;right:6%;top:7px;height:1px;background:var(--sacred-line)}
.journey-path li::before{display:none}.journey-path li>span{border-radius:2px;transform:rotate(45deg);background:var(--sacred-ivory)}
.journey-path li[data-status="completed"]>span{background:var(--sacred-green);border-color:var(--sacred-green)}
.journey-path li[data-status="available"]>span{border-color:var(--guidance-gold);box-shadow:0 0 0 4px rgba(185,154,91,.13)}
.journey-phase-card{background:var(--sacred-white);border-color:var(--sacred-line);box-shadow:var(--sacred-shadow)}
.journey-phase-card h3,.journey-progress strong{color:var(--sacred-green)}
.journey-action{background:var(--sacred-green)}
/* The Embrace: restrained companion motif; two quiet arcs, never a decorative logo wall. */
.sacred-embrace{width:38px;height:30px;position:relative;margin:0 auto 12px}.sacred-embrace::before,.sacred-embrace::after{content:'';position:absolute;top:2px;width:18px;height:24px;border:1.5px solid var(--guidance-gold);border-top-color:transparent;border-radius:50%}.sacred-embrace::before{left:4px;transform:rotate(-22deg)}.sacred-embrace::after{right:4px;transform:rotate(22deg)}
footer{background:#092e27;color:var(--sacred-ivory)}
:focus-visible{outline:3px solid rgba(185,154,91,.55);outline-offset:3px}
@media(max-width:650px){.hero{min-height:auto}.hero::before{background:linear-gradient(160deg,rgba(255,255,255,.035),transparent 40%)}.hero-sacred-visual{border-radius:180px 180px 20px 20px}.journey-path::before{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
