:root {
  --ink: #050a11;
  --ink-soft: #091421;
  --navy: #0d1d2d;
  --navy-light: #132a40;
  --gold: #b88333;
  --gold-bright: #d8aa59;
  --ivory: #f4efe5;
  --paper: #ebe5d9;
  --paper-soft: #f3eee5;
  --muted: #8f9ba7;
  --line: rgba(216, 170, 89, 0.2);
  --dark-line: rgba(9, 18, 28, 0.17);
  --success: #70a78f;
  --warning: #d8aa59;
  --danger: #bd716d;
  --shadow: 0 30px 80px rgba(0,0,0,.28);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ink);
  color: var(--ivory);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
img, svg { display:block; max-width:100%; }

.shell { width: min(1180px, calc(100% - 56px)); margin-inline:auto; }
.serif { font-family: Georgia, "Times New Roman", serif; }
.gold { color: var(--gold-bright); }
.muted { color: var(--muted); }
.hidden { display:none !important; }

.skip-link { position:fixed; left:12px; top:-100px; z-index:1000; padding:12px 16px; background:var(--gold); color:var(--ink); }
.skip-link:focus { top:12px; }

.site-header {
  position:sticky; top:0; z-index:100;
  background:rgba(5,10,17,.9); backdrop-filter: blur(18px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:14px; min-width:max-content; }
.brand-logo { min-width:0; }
.brand-lockup { width:min(340px,31vw); height:auto; object-fit:contain; }
.footer-logo .brand-lockup { width:min(370px,78vw); }
.brand-mark { width:44px; height:44px; border:1px solid rgba(216,170,89,.45); background:linear-gradient(145deg,#07111c,#102438); display:grid; place-items:center; }
.brand-mark svg { width:30px; height:30px; }
.brand-copy strong { display:block; font-family:Georgia,serif; font-weight:400; font-size:16px; letter-spacing:.02em; }
.brand-copy span { display:block; margin-top:4px; color:#788693; font-size:8px; letter-spacing:.15em; text-transform:uppercase; }
.nav-links { display:flex; align-items:center; gap:26px; color:#aab5bf; font-size:12px; }
.nav-links a { transition:color .2s ease; }
.nav-links a:hover,.nav-links a:focus-visible { color:var(--gold-bright); }
.nav-cta { display:inline-flex; min-height:44px; align-items:center; gap:16px; padding:0 17px; border:1px solid rgba(216,170,89,.58); color:var(--gold-bright); font-size:12px; }
.nav-cta:hover { background:var(--gold); color:#08111b; }
.menu-button { display:none; width:44px; height:44px; border:1px solid var(--line); background:transparent; cursor:pointer; }
.menu-button span { width:20px; height:1px; background:var(--ivory); display:block; margin:5px auto; }

.hero {
  position:relative; overflow:hidden; min-height:calc(100svh - 82px);
  background:
    linear-gradient(90deg,rgba(5,10,17,.98) 0%,rgba(5,10,17,.92) 49%,rgba(6,14,23,.58) 100%),
    radial-gradient(circle at 83% 35%,rgba(32,72,104,.66),transparent 35%),
    linear-gradient(145deg,#050c15,#0d1e31 72%,#050a11);
}
.hero::before { position:absolute; inset:0; content:""; opacity:.07; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px); background-size:78px 78px; mask-image:linear-gradient(90deg,transparent 10%,#000 95%); }
.hero-grid { position:relative; z-index:2; min-height:calc(100svh - 82px); display:grid; grid-template-columns:1.08fr .92fr; gap:70px; align-items:center; padding-block:68px 82px; }
.eyebrow,.section-kicker { display:flex; align-items:center; gap:12px; margin:0; color:var(--gold-bright); font-size:10px; font-weight:600; letter-spacing:.19em; text-transform:uppercase; }
.eyebrow::before { content:""; width:38px; height:1px; background:var(--gold); }
h1 { max-width:760px; margin:28px 0 0; font-family:Georgia,serif; color:#fff; font-size:clamp(4rem,7vw,7rem); font-weight:400; letter-spacing:-.058em; line-height:.9; }
h1 span { display:block; margin-top:26px; color:var(--gold-bright); font-family:Inter,ui-sans-serif,sans-serif; font-size:clamp(.95rem,1.9vw,1.58rem); font-weight:450; letter-spacing:.12em; line-height:1.25; text-transform:uppercase; }
.hero-lead { max-width:660px; margin:34px 0 0; color:#c0c9d1; font-size:clamp(1.05rem,1.65vw,1.34rem); font-weight:350; line-height:1.65; }
.hero-role { margin:20px 0 0; color:#74818e; font-size:9px; letter-spacing:.11em; line-height:1.7; text-transform:uppercase; }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:34px; }
.button { display:inline-flex; min-height:54px; align-items:center; justify-content:space-between; gap:30px; padding:0 24px; border:1px solid transparent; cursor:pointer; font-size:13px; font-weight:600; transition:transform .18s ease,background .18s ease,border-color .18s ease; }
.button:hover,.button:focus-visible { transform:translateY(-2px); }
.button-gold { background:var(--gold); color:#07101a; }
.button-gold:hover { background:var(--gold-bright); }
.button-ghost { border-color:rgba(255,255,255,.2); color:#d8dfe6; background:transparent; }
.button-ghost:hover { border-color:rgba(216,170,89,.68); }
.trust-line { display:flex; align-items:center; flex-wrap:wrap; gap:13px; margin:32px 0 0; color:#71808d; font-size:9px; letter-spacing:.11em; text-transform:uppercase; }
.trust-line i { width:3px; height:3px; border-radius:50%; background:var(--gold); }

.hero-visual { position:relative; min-height:560px; align-self:stretch; display:grid; place-items:center; }
.hero-visual::before { position:absolute; z-index:-1; top:22px; right:0; width:72%; height:74%; content:""; border-top:1px solid rgba(216,170,89,.55); border-right:1px solid rgba(216,170,89,.55); }
.dashboard-stage { width:min(100%,480px); padding:26px; border:1px solid rgba(255,255,255,.12); background:rgba(5,12,20,.82); box-shadow:0 42px 70px rgba(0,0,0,.42); backdrop-filter:blur(14px); }
.dashboard-stage-head { display:flex; justify-content:space-between; align-items:flex-start; padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.08); }
.dashboard-stage-head strong { font-family:Georgia,serif; font-size:21px; font-weight:400; }
.live-pill { display:flex; align-items:center; gap:7px; color:#8fbda6; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.live-pill::before { content:""; width:7px; height:7px; background:#70a78f; border-radius:50%; box-shadow:0 0 0 5px rgba(112,167,143,.1); }
.kpi-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:20px; background:rgba(255,255,255,.08); }
.kpi { min-height:112px; padding:18px; background:#07111c; }
.kpi span { display:block; color:#6f7d89; font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.kpi strong { display:block; margin-top:15px; color:var(--gold-bright); font-family:Georgia,serif; font-size:29px; font-weight:400; }
.kpi em { display:block; margin-top:6px; color:#74a28d; font-style:normal; font-size:10px; }
.mini-chart { height:112px; margin-top:20px; position:relative; border:1px solid rgba(255,255,255,.07); background:linear-gradient(180deg,rgba(19,42,64,.35),rgba(5,10,17,.12)); overflow:hidden; }
.mini-chart svg { width:100%; height:100%; }
.stage-note { display:flex; justify-content:space-between; gap:18px; margin-top:18px; color:#71808d; font-size:9px; line-height:1.5; text-transform:uppercase; letter-spacing:.08em; }

.proof-section { border-block:1px solid rgba(216,170,89,.16); background:#07111c; }
.proof-grid { display:grid; grid-template-columns:repeat(5,1fr); }
.proof-point { min-height:154px; display:flex; flex-direction:column; justify-content:center; padding:27px; border-right:1px solid rgba(216,170,89,.14); }
.proof-point:first-child { border-left:1px solid rgba(216,170,89,.14); }
.proof-point strong { color:var(--gold-bright); font-family:Georgia,serif; font-size:clamp(2rem,3vw,3.3rem); font-weight:400; letter-spacing:-.04em; }
.proof-point span { max-width:190px; margin-top:10px; color:#7f8b96; font-size:8px; letter-spacing:.1em; line-height:1.55; text-transform:uppercase; }

.section { padding-block:122px; }
.section-light { background:var(--paper-soft); color:#0b1622; }
.section-navy { background:#07111d; }
.section-heading { display:grid; grid-template-columns:.31fr 1fr; gap:54px; align-items:start; }
.section-heading h2 { margin:0; color:#f8f4ec; font-family:Georgia,serif; font-size:clamp(2.35rem,4.6vw,4.7rem); font-weight:400; letter-spacing:-.045em; line-height:1.06; }
.section-heading h2 span { display:block; margin-top:13px; color:#7f8b97; }
.section-light .section-heading h2 { color:#0b1622; }
.section-light .section-heading h2 span { color:#6d7479; }
.section-light .section-kicker { color:#896120; }
.intro-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; margin-top:72px; }
.lead-quote { margin:0; font-family:Georgia,serif; font-size:clamp(1.9rem,3.2vw,3.2rem); line-height:1.16; letter-spacing:-.035em; }
.rich-copy { color:#8996a2; font-size:15px; line-height:1.85; }
.section-light .rich-copy { color:#56616a; }
.rich-copy p { margin:0 0 22px; }
.rich-copy p:last-child { margin-bottom:0; }

.gap-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:70px; border-block:1px solid var(--dark-line); }
.gap-card { min-height:340px; padding:29px; border-right:1px solid var(--dark-line); position:relative; }
.gap-card:first-child { border-left:1px solid var(--dark-line); }
.gap-card .num { color:#9b6d24; font-size:10px; letter-spacing:.14em; }
.gap-card h3 { margin:52px 0 0; font-family:Georgia,serif; font-size:27px; font-weight:400; line-height:1.15; }
.gap-card p { margin:20px 0 0; color:#667079; font-size:13px; line-height:1.72; }
.gap-arrow { position:absolute; right:28px; bottom:28px; color:#9b6d24; font-size:22px; }

.method-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:70px; border-block:1px solid var(--line); }
.method-card { min-height:365px; padding:28px; border-right:1px solid var(--line); position:relative; }
.method-card:first-child { border-left:1px solid var(--line); }
.method-card:hover { background:var(--ink-soft); }
.method-card .num { color:var(--gold-bright); font-size:9px; letter-spacing:.15em; }
.method-card h3 { margin:54px 0 0; font-family:Georgia,serif; font-size:26px; font-weight:400; line-height:1.18; }
.method-card p { margin:20px 0 0; color:#8b98a4; font-size:13px; line-height:1.75; }
.method-card small { position:absolute; left:28px; bottom:26px; color:#5f6d79; font-size:8px; letter-spacing:.12em; text-transform:uppercase; }

.button-dark { background:#0b1622; color:#f4efe5; border-color:#0b1622; }
.button-dark:hover,.button-dark:focus-visible { background:#17283a; border-color:#17283a; }
.author-section { border-block:1px solid rgba(9,18,28,.12); }
.author-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:72px; margin-top:72px; align-items:start; }
.author-identity { min-height:430px; padding:34px; background:#0b1622; color:#f4efe5; border:1px solid rgba(184,131,51,.5); position:relative; overflow:hidden; }
.author-identity::after { content:""; position:absolute; right:-80px; bottom:-110px; width:290px; height:290px; border:1px solid rgba(216,170,89,.22); transform:rotate(28deg); }
.author-profile-head { position:relative; z-index:2; display:flex; align-items:flex-start; }


.author-mark { min-width:0; padding-top:4px; }
.author-monogram { width:148px; height:148px; display:block; border:1px solid rgba(216,170,89,.55); background:#0d1b29; box-shadow:0 18px 38px rgba(0,0,0,.22); overflow:hidden; }
.author-monogram img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 16%; filter:saturate(.94) contrast(1.03); }
.author-label { max-width:180px; margin:22px 0 0; color:#788693; font-size:9px; letter-spacing:.14em; line-height:1.7; text-transform:uppercase; }
.author-identity blockquote { position:relative; z-index:1; margin:42px 0 0; font-family:Georgia,serif; font-size:25px; line-height:1.35; }
.author-copy { color:#55616a; font-size:14px; line-height:1.85; }
.author-name { margin:0; color:#0b1622; font-family:Georgia,serif; font-size:34px; line-height:1.15; }
.author-role { margin:14px 0 28px; color:#8a6223; font-size:10px; line-height:1.7; letter-spacing:.09em; text-transform:uppercase; }
.author-tags { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0 30px; }
.author-tags span { padding:8px 10px; border:1px solid rgba(11,22,34,.18); color:#5d6871; font-size:8px; letter-spacing:.08em; text-transform:uppercase; }

.program-tabs { display:flex; gap:8px; margin-top:60px; overflow:auto; padding-bottom:8px; }
.day-tab { min-width:190px; border:1px solid var(--line); background:transparent; padding:16px 18px; text-align:left; cursor:pointer; }
.day-tab span { display:block; color:#65727e; font-size:8px; letter-spacing:.13em; text-transform:uppercase; }
.day-tab strong { display:block; margin-top:8px; font-family:Georgia,serif; font-size:18px; font-weight:400; }
.day-tab.active { border-color:var(--gold); background:rgba(184,131,51,.1); color:var(--gold-bright); }
.day-panel { display:none; margin-top:34px; }
.day-panel.active { display:block; }
.day-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:58px; }
.day-summary { position:sticky; top:120px; align-self:start; padding:30px; border:1px solid var(--line); background:#07111c; }
.day-summary .day-number { color:var(--gold-bright); font-family:Georgia,serif; font-size:56px; }
.day-summary h3 { margin:12px 0 0; font-family:Georgia,serif; font-size:30px; font-weight:400; line-height:1.16; }
.day-summary p { color:#84919c; font-size:13px; line-height:1.75; }
.day-result { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.day-result span { color:#5f6d79; font-size:8px; letter-spacing:.13em; text-transform:uppercase; }
.day-result strong { display:block; margin-top:10px; color:var(--gold-bright); font-size:12px; line-height:1.6; }
.timeline { border-top:1px solid var(--line); }
.timeline-item { display:grid; grid-template-columns:105px 1fr; gap:24px; padding:26px 0; border-bottom:1px solid var(--line); }
.timeline-item time { color:var(--gold-bright); font-size:10px; letter-spacing:.08em; }
.timeline-item h4 { margin:0; font-family:Georgia,serif; font-size:23px; font-weight:400; }
.timeline-item p { margin:10px 0 0; color:#87949f; font-size:13px; line-height:1.72; }

.dashboard-section { overflow:hidden; }
.dashboard-demo { display:grid; grid-template-columns:1.12fr .88fr; gap:32px; margin-top:70px; }
.projector { border:1px solid rgba(255,255,255,.12); background:#040910; box-shadow:var(--shadow); }
.projector-top { min-height:66px; display:flex; align-items:center; justify-content:space-between; padding:0 24px; border-bottom:1px solid rgba(255,255,255,.08); }
.projector-top strong { font-family:Georgia,serif; font-size:20px; font-weight:400; }
.projector-body { padding:22px; }
.scoreboard { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,.08); }
.score-cell { padding:18px; background:#07111c; }
.score-cell span { color:#687784; font-size:8px; letter-spacing:.1em; text-transform:uppercase; }
.score-cell strong { display:block; margin-top:12px; font-family:Georgia,serif; font-size:27px; font-weight:400; }
.score-cell em { display:block; margin-top:7px; color:#70a78f; font-size:9px; font-style:normal; }
.risk-map { display:grid; grid-template-columns:repeat(5,1fr); gap:5px; margin-top:18px; }
.risk-dot { aspect-ratio:1; display:grid; place-items:center; border:1px solid rgba(255,255,255,.06); color:#9faab4; font-size:8px; text-align:center; padding:5px; }
.risk-low { background:rgba(112,167,143,.18); }
.risk-med { background:rgba(216,170,89,.16); }
.risk-high { background:rgba(189,113,109,.2); }
.dashboard-copy { padding:36px; border:1px solid var(--line); background:#07111c; }
.dashboard-copy h3 { margin:0; font-family:Georgia,serif; font-size:34px; font-weight:400; line-height:1.15; }
.dashboard-copy p { color:#8996a2; font-size:14px; line-height:1.8; }
.dashboard-copy ul { margin:25px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }
.dashboard-copy li { display:flex; justify-content:space-between; gap:20px; padding:15px 0; border-bottom:1px solid var(--line); color:#9aa6b0; font-size:12px; }
.dashboard-copy li span:last-child { color:var(--gold-bright); }

.evaluation-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; margin-top:70px; }
.evaluation-copy { color:#5f6972; font-size:14px; line-height:1.8; }
.weights { border-top:1px solid var(--dark-line); }
.weight-row { display:grid; grid-template-columns:1fr 72px; align-items:center; gap:20px; padding:17px 0; border-bottom:1px solid var(--dark-line); }
.weight-label { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:center; }
.weight-label strong { font-family:Georgia,serif; font-size:18px; font-weight:400; }
.weight-track { height:3px; background:rgba(11,22,34,.11); }
.weight-track i { display:block; height:100%; background:var(--gold); }
.weight-row > strong { text-align:right; color:#896120; font-family:Georgia,serif; font-size:22px; font-weight:400; }

.outputs-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:70px; border-block:1px solid var(--line); }
.output-card { min-height:300px; padding:30px; border-right:1px solid var(--line); }
.output-card:first-child { border-left:1px solid var(--line); }
.output-card span { color:var(--gold-bright); font-size:9px; letter-spacing:.13em; }
.output-card h3 { margin:45px 0 0; font-family:Georgia,serif; font-size:27px; font-weight:400; }
.output-card p { color:#8996a2; font-size:13px; line-height:1.75; }

.cta-section { position:relative; overflow:hidden; padding-block:105px; border-block:1px solid var(--line); background:radial-gradient(circle at 88% 50%,rgba(32,72,104,.4),transparent 34%),#07111d; }
.cta-section::before { position:absolute; inset:0; content:""; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:78px 78px; opacity:.04; }
.cta-grid { position:relative; z-index:2; display:grid; grid-template-columns:1fr auto; gap:60px; align-items:end; }
.cta-grid h2 { margin:0; font-family:Georgia,serif; font-size:clamp(2.8rem,5vw,5.5rem); font-weight:400; letter-spacing:-.045em; line-height:1; }
.cta-grid h2 span { color:var(--gold-bright); }
.cta-grid p { max-width:720px; margin:24px 0 0; color:#8e9aa6; line-height:1.75; }

.footer { padding-block:56px; background:#03070c; border-top:1px solid rgba(216,170,89,.15); }
.footer-grid { display:grid; grid-template-columns:1fr auto; gap:40px; align-items:end; }
.footer p { margin:14px 0 0; color:#66737f; font-size:10px; line-height:1.65; }
.footer-links { display:flex; gap:20px; color:#80909e; font-size:11px; }
.footer-links a:hover { color:var(--gold-bright); }

/* Simulator page */
.sim-hero { padding:90px 0 70px; background:radial-gradient(circle at 80% 20%,rgba(32,72,104,.48),transparent 35%),#07111d; border-bottom:1px solid var(--line); }
.sim-hero-grid { display:grid; grid-template-columns:1fr .55fr; gap:60px; align-items:end; }
.sim-hero h1 { font-size:clamp(3.6rem,6vw,6.3rem); }
.sim-hero-card { padding:28px; border:1px solid var(--line); background:rgba(5,10,17,.5); }
.sim-hero-card span { color:#687784; font-size:8px; letter-spacing:.13em; text-transform:uppercase; }
.sim-hero-card strong { display:block; margin-top:14px; font-family:Georgia,serif; font-size:24px; font-weight:400; }
.sim-hero-card p { color:#8996a2; font-size:12px; line-height:1.7; }
.case-hub { padding-block:90px; background:var(--paper-soft); color:#0b1622; }
.case-hub .section-heading h2 { color:#0b1622; }
.case-hub .section-heading h2 span { color:#66717c; }
.case-hub .section-kicker { color:#9b6d24; }
.case-selector { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:45px; }
.case-card { min-height:325px; padding:24px; border:1px solid var(--dark-line); background:#f8f4ec; color:#111d29; display:flex; flex-direction:column; text-align:left; transition:transform .2s ease,border-color .2s ease,background .2s ease; }
.case-card:hover { transform:translateY(-4px); border-color:rgba(184,131,51,.5); }
.case-card.active { border-color:var(--gold); background:#fffaf1; box-shadow:0 18px 45px rgba(32,42,52,.08); }
.case-card .case-meta { display:flex; justify-content:space-between; gap:14px; color:#896120; font-size:8px; letter-spacing:.1em; text-transform:uppercase; }
.case-card h3 { margin:34px 0 0; color:#111d29; font-family:Georgia,serif; font-size:24px; font-weight:400; line-height:1.18; }
.case-card p { color:#59656f; font-size:12px; line-height:1.7; }
.case-launch { width:100%; min-height:48px; margin-top:auto; padding:0 16px; border:1px solid #a9782d; background:#0b1622; color:#f4efe5; display:flex; align-items:center; justify-content:space-between; cursor:pointer; font-size:11px; letter-spacing:.06em; text-transform:uppercase; transition:background .18s ease,color .18s ease,transform .18s ease; }
.case-launch:hover,.case-launch:focus-visible { background:var(--gold); color:#07101a; transform:translateY(-1px); }
.simulator-shell { padding-block:90px; background:#07111d; }
.simulator-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:28px; }
.sim-sidebar,.sim-workspace { border:1px solid var(--line); background:#050a11; }
.sim-sidebar { padding:26px; align-self:start; position:sticky; top:110px; }
.sim-sidebar h2 { margin:0; font-family:Georgia,serif; font-size:28px; font-weight:400; }
.sim-sidebar p { color:#82909c; font-size:12px; line-height:1.75; }
.metric-list { margin-top:24px; border-top:1px solid var(--line); }
.metric-row { display:flex; justify-content:space-between; gap:20px; padding:14px 0; border-bottom:1px solid var(--line); font-size:11px; }
.metric-row span { color:#65737f; }
.metric-row strong { color:var(--gold-bright); text-align:right; }
.timer-card { margin-top:24px; padding:18px; border:1px solid rgba(216,170,89,.22); background:#07111c; }
.timer-card span { color:#65737f; font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.timer { display:block; margin-top:8px; color:var(--gold-bright); font-family:Georgia,serif; font-size:38px; }
.timer-actions { display:flex; gap:8px; margin-top:12px; }
.small-button { border:1px solid var(--line); background:transparent; padding:8px 11px; color:#9aa6b0; font-size:10px; cursor:pointer; }
.small-button:hover { border-color:var(--gold); color:var(--gold-bright); }
.sim-workspace { padding:28px; }
.sim-nav { display:flex; gap:8px; border-bottom:1px solid var(--line); padding-bottom:15px; overflow:auto; }
.sim-tab { border:0; background:transparent; padding:10px 12px; color:#697783; font-size:10px; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; white-space:nowrap; }
.sim-tab.active { color:var(--gold-bright); background:rgba(184,131,51,.08); }
.sim-panel { display:none; padding-top:26px; }
.sim-panel.active { display:block; }
.sim-panel h3 { margin:0; font-family:Georgia,serif; font-size:32px; font-weight:400; }
.context-text { color:#8996a2; font-size:14px; line-height:1.82; }
.ratio-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.ratio-chip { padding:9px 11px; border:1px solid var(--line); color:#94a0aa; font-size:10px; }
.option-list { display:grid; gap:14px; margin-top:25px; }
.option-card { border:1px solid var(--line); padding:21px; cursor:pointer; background:#07111c; transition:border-color .2s ease, transform .2s ease; }
.option-card:hover { transform:translateY(-2px); }
.option-card.selected { border-color:var(--gold); background:rgba(184,131,51,.08); }
.option-card h4 { margin:0; font-family:Georgia,serif; font-size:21px; font-weight:400; }
.option-card p { color:#83909b; font-size:12px; line-height:1.7; }
.option-impact { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; margin-top:16px; background:rgba(255,255,255,.07); }
.impact-cell { padding:12px; background:#050a11; }
.impact-cell span { display:block; color:#61707c; font-size:7px; letter-spacing:.08em; text-transform:uppercase; }
.impact-cell strong { display:block; margin-top:7px; color:var(--gold-bright); font-size:11px; }
.pros-cons { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px; }
.pros-cons h5 { margin:0 0 8px; color:#71808d; font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.pros-cons ul { margin:0; padding-left:17px; color:#87949f; font-size:11px; line-height:1.65; }
.memo-field { display:grid; gap:9px; margin-top:18px; }
.memo-field label { color:#74828e; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.memo-field input,.memo-field textarea { width:100%; border:1px solid var(--line); background:#07111c; color:var(--ivory); padding:13px; outline:none; }
.memo-field textarea { min-height:116px; resize:vertical; }
.memo-field input:focus,.memo-field textarea:focus { border-color:var(--gold); }
.result-dashboard { margin-top:24px; border:1px solid var(--line); background:#07111c; padding:22px; }
.result-header { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.result-header h4 { margin:0; font-family:Georgia,serif; font-size:23px; font-weight:400; }
.result-score { color:var(--gold-bright); font-family:Georgia,serif; font-size:35px; }
.score-bars { display:grid; gap:15px; margin-top:20px; }
.score-line { display:grid; grid-template-columns:150px 1fr 38px; gap:14px; align-items:center; }
.score-line span { color:#7d8a95; font-size:9px; text-transform:uppercase; letter-spacing:.07em; }
.bar { height:4px; background:rgba(255,255,255,.08); }
.bar i { display:block; height:100%; background:linear-gradient(90deg,var(--gold),var(--gold-bright)); }
.score-line strong { color:#aab5bf; font-size:10px; text-align:right; }
.result-note { margin-top:20px; padding-top:18px; border-top:1px solid var(--line); color:#8996a2; font-size:12px; line-height:1.75; }
.print-area { display:none; }

.reveal { opacity:1; transform:none; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 1000px) {
  .nav-links { display:none; position:absolute; left:0; right:0; top:82px; padding:20px 28px 28px; flex-direction:column; align-items:flex-start; background:#050a11; border-bottom:1px solid var(--line); }
  .nav-links.open { display:flex; }
  .menu-button { display:block; }
  .nav-cta { display:none; }
  .hero-grid,.intro-grid,.day-layout,.dashboard-demo,.evaluation-grid,.cta-grid,.sim-hero-grid,.simulator-layout,.author-grid { grid-template-columns:1fr; }
  .hero-visual { min-height:auto; padding-top:20px; }
  .dashboard-stage { width:100%; }
  .proof-grid { grid-template-columns:repeat(3,1fr); }
  .proof-point:nth-child(4) { border-left:1px solid rgba(216,170,89,.14); }
  .gap-grid,.outputs-grid { grid-template-columns:1fr 1fr; }
  .method-grid { grid-template-columns:1fr 1fr; }
  .section-heading { grid-template-columns:1fr; gap:24px; }
  .day-summary,.sim-sidebar { position:static; }
  .case-selector { grid-template-columns:1fr; }
  .option-impact { grid-template-columns:repeat(3,1fr); }
  .footer-grid { grid-template-columns:1fr; }
}

@media (max-width: 680px) {
  .shell { width:min(100% - 30px,1180px); }
  .author-identity { padding:24px; }
  .author-profile-head { gap:18px; }
  
  .author-monogram { width:118px; height:118px; }
  .author-label { margin-top:16px; font-size:8px; }
  .author-identity blockquote { margin-top:32px; font-size:22px; }
  .brand-copy span { display:none; }
  .brand-lockup { width:230px; }
  .hero-grid { padding-block:48px 58px; }
  h1 { font-size:clamp(3.2rem,16vw,5rem); }
  .hero-actions .button { width:100%; }
  .proof-grid { grid-template-columns:1fr 1fr; }
  .gap-grid,.method-grid,.outputs-grid { grid-template-columns:1fr; }
  .gap-card,.method-card,.output-card { border-left:1px solid var(--line); }
  .section { padding-block:84px; }
  .timeline-item { grid-template-columns:1fr; gap:8px; }
  .scoreboard { grid-template-columns:1fr 1fr; }
  .risk-map { grid-template-columns:repeat(3,1fr); }
  .weight-label { grid-template-columns:1fr; gap:9px; }
  .footer-links { flex-direction:column; }
  .sim-workspace { padding:18px; }
  .option-impact { grid-template-columns:1fr 1fr; }
  .pros-cons { grid-template-columns:1fr; }
  .score-line { grid-template-columns:1fr; gap:7px; }
  .score-line strong { text-align:left; }
}

@media print {
  .site-header,.sim-hero,.case-hub,.sim-sidebar,.sim-nav,.button,.footer { display:none !important; }
  body { background:white; color:#111; }
  .simulator-shell { background:white; padding:0; }
  .simulator-layout { display:block; }
  .sim-workspace { border:0; padding:0; }
  .sim-panel { display:none !important; }
  #panel-result { display:block !important; color:#111; }
  .result-dashboard { color:#111; background:white; border:1px solid #bbb; }
  .result-note,.score-line span { color:#333; }
}


.memo-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:8px; }
.ai-action-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:22px; }
.ai-output-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:22px; }
.ai-output-card { min-height:260px; }
.ai-output { width:100%; min-height:180px; border:1px solid var(--line); background:#07111c; color:#dce3ea; padding:14px; resize:vertical; outline:none; }
.ai-output::placeholder { color:#768390; }
.ai-eval-card { margin-top:18px; }
.ai-eval-output { color:#d0d9e1; font-size:14px; line-height:1.85; }
.ai-eval-output p { margin:0 0 12px; }
.decision-actions { margin-top:22px; }
@media (max-width: 960px) {
  .memo-grid,.ai-action-grid,.ai-output-grid { grid-template-columns:1fr; }
}
