/* ==========================================================================
   AI BUILDER — BUILD ONE REAL AI SYSTEM
   Presentation layer. One component, one source of truth.
   No legacy layers, no override stacks, no duplicated layout rules.

   Palette  Midnight · Deep Navy · Warm Ivory · Champagne Gold
            Emerald is reserved for PASS / RUNNING / SUCCESS only.
   Rhythm   scene 88–104 · normal 72–88 · compact 48–64 (desktop)
            section 52–68 · head→content 20–28 · component 16–28 (mobile)
   ========================================================================== */

/* ───────────────────────────────────────────────────────────── 1 · TOKENS */
:root{
  --midnight:#071421;
  --deep:#0B1A29;
  --ink:#050E1A;
  --ivory:#F4F0E7;
  --ivory-2:#EAE4D7;
  --gold:#C9B37E;
  --gold-soft:#E4D3A9;
  --gold-deep:#8A6D32;
  --emerald:#78AE93;
  --emerald-deep:#3F7A61;

  --on-dark:#F4F0E7;
  --on-dark-2:rgba(244,240,231,.70);
  --on-dark-3:rgba(244,240,231,.44);
  --on-light:#0B1A29;
  --on-light-2:rgba(11,26,41,.72);
  --on-light-3:rgba(11,26,41,.50);

  --line-d:rgba(201,179,126,.26);
  --line-d-2:rgba(201,179,126,.13);
  --line-l:rgba(11,26,41,.16);
  --line-l-2:rgba(11,26,41,.09);

  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --sans:'Be Vietnam Pro',Arial,'Noto Sans',sans-serif;

  --wrap:1280px;
  --pad:56px;
  --nav:70px;

  --sp-scene:clamp(60px,6.4vw,96px);
  --sp:clamp(52px,5.2vw,80px);
  --sp-tight:clamp(36px,3.6vw,56px);
  --gap-head:clamp(22px,2.4vw,34px);
  --gap:clamp(20px,2.2vw,32px);
  --ease:cubic-bezier(.22,.61,.36,1);
}

/* ────────────────────────────────────────────────────────────── 2 · BASE */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;overflow-x:clip;background:var(--midnight);color:var(--on-dark);
  font-family:var(--sans);font-size:16px;line-height:1.65;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,p,ol,ul,dl,dd,figure,blockquote{margin:0}
ol,ul{padding:0;list-style:none}
em{font-style:italic}
button{cursor:pointer}
::selection{background:rgba(201,179,126,.32);color:#fff}
.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}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.skip{position:absolute;top:-100px;left:16px;z-index:999;background:var(--gold);
  color:var(--ink);padding:10px 18px;font-size:13px}
.skip:focus{top:12px}
.grain{position:fixed;inset:0;z-index:200;pointer-events:none;opacity:.032;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* ─────────────────────────────────────────────────────────── 3 · ATOMS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:52px;padding:14px 26px;border:1px solid transparent;border-radius:2px;
  font-size:12.5px;font-weight:700;letter-spacing:.10em;text-transform:uppercase;
  line-height:1.3;text-align:center;
  transition:background .28s var(--ease),color .28s var(--ease),
             border-color .28s var(--ease),transform .28s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn--gold{background:var(--gold);color:var(--ink)}
.btn--gold:hover{background:var(--gold-soft)}
.btn--ghost{background:transparent;color:var(--on-dark);border-color:var(--line-d)}
.btn--ghost:hover{border-color:var(--gold);color:var(--gold-soft)}
.btn--ink{background:var(--midnight);color:var(--ivory)}
.btn--ink:hover{background:var(--deep);color:var(--gold-soft)}
.btn--full{width:100%}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;
  letter-spacing:.14em;color:var(--gold-deep);border-bottom:1px solid rgba(138,109,50,.35);
  padding-bottom:3px;transition:border-color .25s,color .25s}
.link-arrow:hover{border-color:var(--gold-deep);color:var(--on-light)}
.sec--dark .link-arrow{color:var(--gold-soft);border-bottom-color:var(--line-d)}
.sec--dark .link-arrow:hover{color:#fff}

.head{max-width:1000px;margin-bottom:var(--gap-head)}
.head-k{font-size:10.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:16px}
.sec--dark .head-k,.rail .head-k{color:var(--gold)}
.head-t{text-wrap:balance;font-family:var(--serif);font-weight:500;font-size:clamp(28px,3.15vw,46px);
  line-height:1.16;letter-spacing:-.022em;color:var(--on-light)}
.head-t em,.hero-title em,.stack-t em,.lead-t em,.faq-t em{display:block;text-wrap:balance}
.head-t em{color:var(--gold-deep)}
.sec--dark .head-t{color:var(--on-dark)}
.sec--dark .head-t em{color:var(--gold-soft)}
.head-l{font-size:16px;line-height:1.75;color:var(--on-light-2);max-width:760px;margin-top:16px}
.sec--dark .head-l{color:var(--on-dark-2)}
.head--center{margin-left:auto;margin-right:auto;text-align:center}
.head--center .head-l{margin-left:auto;margin-right:auto}

.sec{position:relative;padding:var(--sp) 0;overflow:clip;scroll-margin-top:var(--nav)}
.sec--ivory{background:var(--ivory);color:var(--on-light)}
.sec--dark{background:var(--midnight);color:var(--on-dark)}
.sec--dark::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 880px 500px at 86% 0%,rgba(30,64,98,.20),transparent 74%)}
.sec>.wrap{position:relative;z-index:1}

/* ──────────────────────────────────────────────────────── 4 · NAVIGATION */
.nav{position:sticky;top:0;z-index:120;height:var(--nav);
  background:rgba(7,20,33,.95);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line-d-2)}
.nav-in{height:100%;display:flex;align-items:center;gap:24px}
.nav-brand{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.nav-logo{height:28px;width:auto;object-fit:contain}
.nav-tag{font-size:10.5px;letter-spacing:.20em;color:var(--gold);white-space:nowrap}
.nav-links{display:flex;align-items:center;gap:22px;margin-left:auto}
.nav-links a{font-size:12px;letter-spacing:.03em;color:var(--on-dark-2);white-space:nowrap;
  transition:color .25s}
.nav-links a:hover{color:var(--gold-soft)}
.nav-cta{flex:0 0 auto;min-height:44px;padding:10px 18px;font-size:11px}

/* ────────────────────────────────────────────────────────────── 5 · HERO */
.hero{position:relative;background:var(--midnight);color:var(--on-dark);
  padding:clamp(22px,2.6vw,34px) 0 clamp(28px,2.6vw,40px);overflow:clip;isolation:isolate}
.hero-atmos{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse 980px 700px at 78% 40%,rgba(28,62,96,.50),transparent 70%),
             radial-gradient(ellipse 700px 520px at 6% 0%,rgba(11,26,41,.92),transparent 74%)}
.hero-grid{display:grid;grid-template-columns:48% 52%;align-items:stretch}
.hero-copy{padding-right:clamp(24px,3.4vw,52px);display:flex;flex-direction:column}
.hero-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.26em;color:var(--gold);
  margin-bottom:14px}
.hero-wordmark{font-family:var(--serif);font-size:clamp(28px,2.9vw,40px);line-height:1;
  letter-spacing:.01em;color:var(--on-dark);padding-bottom:8px;margin-bottom:8px;
  border-bottom:1px solid var(--line-d)}
.hero-tagline{font-size:10.5px;font-weight:700;letter-spacing:.28em;color:var(--gold-soft);
  margin-bottom:22px}
.hero-kicker{font-size:10.5px;font-weight:600;letter-spacing:.15em;line-height:1.6;
  text-transform:uppercase;color:var(--on-dark-3);margin-bottom:12px;max-width:580px}
.hero-title{text-wrap:balance;font-family:var(--serif);font-weight:500;
  font-size:clamp(26px,2.92vw,40px);line-height:1.09;letter-spacing:-.022em;
  color:var(--on-dark);margin-bottom:18px}
.hero-title em{color:var(--gold-soft)}
.hero-copy-body{max-width:520px;margin-bottom:20px}
.hero-copy-body p{font-size:14.5px;line-height:1.72;color:var(--on-dark-2);margin-bottom:8px}
.hero-copy-body p:last-child{margin-bottom:0}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.hero-actions .btn{flex:1 1 200px}
.hero-foot{position:relative;z-index:1;display:grid;
  grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:start;
  margin-top:clamp(16px,1.8vw,24px);padding-top:12px;border-top:1px solid var(--line-d)}
.hero-meta{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:0}
.hero-meta>div{padding:0 clamp(12px,1.6vw,20px);border-left:1px solid var(--line-d-2)}
.hero-meta>div:first-child{padding-left:0;border-left:0}
.hero-meta dt{font-size:9.5px;font-weight:700;letter-spacing:.16em;color:var(--on-dark-3);
  margin-bottom:5px}
.hero-meta dd{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--on-dark)}
.hero-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,28px)}
.hero-spec,.hero-target,.hero-note{font-size:11px;line-height:1.6;color:var(--on-dark-3)}
.hero-target{color:var(--on-dark-2)}
.hero-target strong{color:var(--gold-soft);font-weight:600}

/* ─────────────────────────────────────────── 6 · HERO BLUEPRINT VISUAL */
.hero-visual{position:relative;display:flex;padding-left:clamp(12px,2vw,32px);padding-top:4px}
.bp{position:relative;flex:1;display:flex;flex-direction:column;background:var(--ivory);color:var(--on-light);
  border:1px solid rgba(201,179,126,.60);border-radius:2px;overflow:hidden;
  padding:clamp(20px,1.9vw,28px);
  box-shadow:0 44px 90px rgba(0,0,0,.50),0 4px 16px rgba(0,0,0,.28),
             inset 0 0 0 1px rgba(255,255,255,.45);
  background-image:
    repeating-linear-gradient(90deg,rgba(11,26,41,.045) 0 1px,transparent 1px 56px),
    repeating-linear-gradient(0deg,rgba(11,26,41,.045) 0 1px,transparent 1px 56px)}
.bp-head{display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding-bottom:14px;border-bottom:1px solid var(--line-l)}
.bp-mark{font-size:10px;font-weight:700;letter-spacing:.22em;color:var(--on-light)}
.bp-state{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:700;
  letter-spacing:.20em;color:var(--on-light-3);white-space:nowrap;
  transition:color .4s var(--ease)}
.bp-dot{width:6px;height:6px;border-radius:50%;background:var(--gold-deep);
  box-shadow:0 0 0 3px rgba(138,109,50,.14);transition:background .4s,box-shadow .4s}
.bp-state.is-running{color:var(--emerald-deep)}
.bp-state.is-running .bp-dot{background:var(--emerald);
  box-shadow:0 0 0 3px rgba(120,174,147,.22)}

.bp-body{position:relative;flex:1;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  align-items:stretch;gap:clamp(16px,1.8vw,26px);
  padding:clamp(20px,2.2vw,30px) 0;min-height:clamp(300px,26vw,376px)}
.bp-flow{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:2px;
  padding-right:clamp(16px,1.8vw,26px)}
.bp-flow::after{content:'';position:absolute;right:0;top:8px;bottom:8px;width:1px;
  background:var(--gold-deep);opacity:.42;transform-origin:top center}
.bp-node{display:flex;align-items:center;gap:12px;padding:clamp(9px,1vw,13px) 0;position:relative}
.bp-num{font-family:var(--serif);font-size:12px;line-height:1;color:var(--on-light-3);
  min-width:18px}
.bp-word{font-family:var(--serif);font-size:clamp(15px,1.45vw,19px);font-weight:500;
  line-height:1.2;letter-spacing:-.005em;color:var(--on-light);white-space:nowrap}
.bp-tick{flex:1;height:1px;min-width:10px;background:var(--gold-deep);opacity:.30;
  transform-origin:left center}
.bp-node--human .bp-word,.bp-node--human .bp-num{color:var(--gold-deep);font-style:italic}
.bp-bus{display:none}
.bp-core{position:relative;align-self:center;border:1px solid var(--gold-deep);border-left-width:2px;
  padding:clamp(18px,1.8vw,26px);background:rgba(255,255,255,.42);
  transform-origin:center}
.bp-core::before{content:'';position:absolute;left:calc(-1 * clamp(16px,1.8vw,26px));
  top:50%;width:clamp(16px,1.8vw,26px);height:1px;background:var(--gold-deep);opacity:.42}
.bp-core-k{display:block;font-size:9.5px;font-weight:700;letter-spacing:.20em;
  color:var(--on-light-3);margin-bottom:10px}
.bp-core strong{display:block;font-family:var(--serif);font-weight:500;
  font-size:clamp(19px,2vw,26px);line-height:1.1;letter-spacing:-.02em;color:var(--on-light)}
.bp-core-s{display:block;margin-top:12px;padding-top:10px;border-top:1px solid var(--line-l);
  font-size:9.5px;font-weight:700;letter-spacing:.22em;color:var(--gold-deep)}
.bp-foot{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-l);
  padding-top:12px}
.bp-foot span{font-size:9.5px;font-weight:700;letter-spacing:.14em;color:var(--on-light-3)}


/* Build sequence — one shot, settled final state without JS */
html.bp-run .bp-node,html.bp-run .bp-core,html.bp-run .bp-foot span,
html.bp-run .bp-tick{opacity:0}
html.bp-run .bp-flow::after{opacity:0;transform:scaleY(0)}
html.bp-run .bp-tick{transform:scaleX(0)}
html.bp-run .bp-node.is-on,html.bp-run .bp-core.is-on,html.bp-run .bp-foot span.is-on{
  opacity:1;transition:opacity .55s var(--ease)}
html.bp-run .bp-flow.is-drawn::after{opacity:.42;transform:scaleY(1);
  transition:transform .6s var(--ease),opacity .6s var(--ease)}
html.bp-run .bp-tick.is-drawn{opacity:.30;transform:scaleX(1);
  transition:transform .5s var(--ease),opacity .5s var(--ease)}
html.bp-run .bp-core{transform:translateY(10px) scale(.985)}
html.bp-run .bp-core.is-on{transform:none;
  transition:opacity .55s var(--ease),transform .55s var(--ease)}

/* ──────────────────────────────────────────────────────── 7 · PROOF STRIP */
.proof{background:var(--ivory);color:var(--on-light);border-bottom:1px solid var(--line-l)}
.proof-in{display:grid;grid-template-columns:repeat(4,1fr);padding:clamp(26px,2.6vw,36px) var(--pad)}
.proof-item{display:flex;flex-direction:column;gap:6px;padding:0 clamp(14px,2.2vw,32px);
  border-left:1px solid var(--line-l)}
.proof-item:first-child{padding-left:0;border-left:0}
.proof-num{font-family:var(--serif);font-size:clamp(34px,3.6vw,52px);line-height:1;
  letter-spacing:-.03em;color:var(--gold-deep)}
.proof-lab{font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--on-light-2)}

/* ─────────────────────────────────────────────────────────── 8 · PROBLEM */
.problem{padding-top:clamp(52px,5vw,78px)}
.problem-grid{display:grid;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);
  gap:clamp(28px,4vw,68px);align-items:start}
.problem-words{display:flex;flex-direction:column;gap:clamp(18px,2vw,26px)}
.pw{display:flex;flex-direction:column;gap:4px;padding-bottom:clamp(18px,2vw,26px);
  border-bottom:1px solid var(--line-l-2)}
.pw:last-child{border-bottom:0;padding-bottom:0}
.pw strong{font-family:var(--serif);font-weight:500;font-size:clamp(34px,4.2vw,62px);
  line-height:1;letter-spacing:-.035em;color:var(--on-light)}
.pw span{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold-deep)}
.problem-list{display:flex;flex-direction:column}
.pl-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:clamp(12px,1.6vw,22px);
  padding:clamp(18px,2vw,26px) 0;border-top:1px solid var(--line-l)}
.pl-item:last-child{border-bottom:1px solid var(--line-l)}
.pl-num{font-family:var(--serif);font-size:15px;color:var(--gold-deep);padding-top:3px}
.pl-item h3{font-family:var(--serif);font-size:clamp(19px,1.9vw,25px);font-weight:500;
  line-height:1.3;color:var(--on-light);margin-bottom:8px}
.pl-item p{font-size:15px;line-height:1.75;color:var(--on-light-2)}
.thesis{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.3vw,32px);
  line-height:1.45;color:var(--on-light);max-width:1000px;
  margin-top:clamp(32px,3.4vw,52px);padding-top:clamp(24px,2.6vw,36px);
  border-top:1px solid var(--line-l)}

/* ───────────────────────────────────────────────────────── 9 · THE BUILD */
.build{background:var(--deep);padding-bottom:var(--sp-scene)}
.build-panels,.faq-head,.pc-main,.offline14-body,.register-head{min-width:0}
.build-grid{display:grid;grid-template-columns:minmax(180px,.26fr) minmax(0,1fr);
  gap:clamp(24px,3.4vw,56px);align-items:start}
.build-nav{position:sticky;top:calc(var(--nav) + 24px);align-self:start}
.build-nav-k{font-size:10px;font-weight:700;letter-spacing:.20em;color:var(--on-dark-3);
  padding-bottom:14px;border-bottom:1px solid var(--line-d)}
.build-nav-k b{color:var(--gold-soft);font-size:13px}
.build-nav-list{display:flex;flex-direction:column;margin-top:6px}
.build-nav-list button{display:flex;align-items:baseline;gap:10px;width:100%;padding:12px 0;
  background:none;border:0;border-bottom:1px solid var(--line-d-2);text-align:left;
  font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--on-dark-3);
  transition:color .3s var(--ease),border-color .3s var(--ease)}
.build-nav-list button span{font-family:var(--serif);font-size:13px;letter-spacing:0;
  min-width:20px;color:var(--on-dark-3);transition:color .3s}
.build-nav-list button:hover{color:var(--gold-soft)}
.build-nav-list button.is-active{color:var(--gold-soft);border-bottom-color:var(--gold)}
.build-nav-list button.is-active span{color:var(--gold)}
.build-nav-note{margin-top:18px;font-size:11px;line-height:1.7;color:var(--on-dark-3)}

.sprint{border-top:1px solid var(--line-d);padding:clamp(20px,2.2vw,28px) 0}
.sprint:last-child{border-bottom:1px solid var(--line-d)}
.sprint>summary{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;
  align-items:baseline;cursor:pointer;list-style:none;padding:2px 0}
.sprint>summary::-webkit-details-marker{display:none}
.sprint-num{font-family:var(--serif);font-size:15px;color:var(--gold)}
.sprint-name{font-size:11px;font-weight:700;letter-spacing:.20em;color:var(--gold-soft)}
.sprint-slot{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--on-dark-2);
  white-space:nowrap}
.sprint-body{padding-top:clamp(14px,1.6vw,20px)}
.sprint-title{font-family:var(--serif);font-size:clamp(24px,2.6vw,36px);font-weight:500;
  line-height:1.16;letter-spacing:-.015em;color:var(--on-dark);margin-bottom:8px}
.sprint-desc{font-size:15px;line-height:1.7;color:var(--on-dark-2);max-width:660px;
  margin-bottom:14px}
.sprint-out{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.sprint-out li{font-size:10.5px;font-weight:600;letter-spacing:.06em;color:var(--gold-soft);
  border:1px solid var(--line-d);padding:5px 10px}
.sprint-del{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:16px;
  padding-top:14px;border-top:1px solid var(--line-d-2)}
.sprint-del span{font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--gold)}
.sprint-del strong{font-family:var(--serif);font-size:clamp(15px,1.5vw,19px);font-weight:500;
  font-style:italic;color:var(--gold-soft)}

/* Desktop: sprints are always open — the summary is a label, not a control */
@media (min-width:1021px){
  .sprint>summary{pointer-events:none}
}

/* Prototype state drawing */
.stage{border:1px solid var(--line-d);background:rgba(244,240,231,.022);
  padding:clamp(14px,1.6vw,20px)}
.stage-top{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-bottom:12px;border-bottom:1px solid var(--line-d-2);margin-bottom:14px}
.stage-top>span:first-child{font-size:9.5px;font-weight:700;letter-spacing:.18em;
  color:var(--on-dark-3)}
.stage-chip{font-size:9.5px;font-weight:700;letter-spacing:.18em;color:var(--gold-soft)}
.st-flow{display:flex;gap:clamp(8px,1.1vw,16px);align-items:stretch}
.st{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:5px;
  padding:9px 10px;border:1px solid var(--line-d);background:rgba(201,179,126,.05);
  font-size:10px;font-weight:700;letter-spacing:.10em;line-height:1.3;color:var(--on-dark)}
.st span{font-family:var(--serif);font-size:10px;font-weight:400;letter-spacing:0;
  color:var(--on-dark-3)}
.st:not(:first-child)::before{content:'';position:absolute;left:calc(-1 * clamp(8px,1.1vw,16px));
  top:50%;width:clamp(8px,1.1vw,16px);height:1px;background:var(--gold);opacity:.45}
.st.is-ghost{border-style:dashed;border-color:rgba(244,240,231,.18);background:transparent;
  color:rgba(244,240,231,.34)}
.st.is-ghost span{color:rgba(244,240,231,.26)}
.st.is-ghost::before{opacity:.16}
.st-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.st-core{font-size:9.5px;font-weight:700;letter-spacing:.16em;padding:7px 12px;
  background:var(--ivory);color:var(--on-light);border:1px solid var(--gold)}
.st-flag{font-size:9.5px;font-weight:700;letter-spacing:.16em;padding:7px 12px;
  border:1px solid var(--line-d);color:var(--gold-soft)}
.st-core.is-ghost,.st-flag.is-ghost{background:transparent;border-style:dashed;
  border-color:rgba(244,240,231,.18);color:rgba(244,240,231,.34)}

/* Deliverable stack */
.stack{margin-top:var(--sp-scene);scroll-margin-top:calc(var(--nav) + 20px)}
.stack-head{margin-bottom:var(--gap-head)}
.stack-t{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3vw,44px);
  line-height:1.18;letter-spacing:-.02em;color:var(--on-dark)}
.stack-t em{color:var(--gold-soft)}
.stack-list{display:flex;flex-direction:column;border-top:1px solid var(--line-d)}
.layer{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:clamp(14px,2vw,32px);
  align-items:start;padding:clamp(18px,2vw,26px) 0;border-bottom:1px solid var(--line-d-2);
  transition:border-color .4s var(--ease),background .4s var(--ease)}
.layer-n{font-family:var(--serif);font-size:clamp(20px,2vw,28px);line-height:1;
  color:var(--gold);opacity:.55}
.layer-en{display:block;font-size:9px;font-weight:700;letter-spacing:.20em;
  color:var(--gold);opacity:.72;margin-bottom:6px}
.layer-b h4{font-family:var(--serif);font-size:clamp(17px,1.8vw,23px);font-weight:500;
  line-height:1.3;color:var(--on-dark);margin-bottom:6px}
.layer-b p{font-size:14.5px;line-height:1.72;color:var(--on-dark-2);max-width:760px}
.layer-b p.layer-sub{margin-top:8px;font-size:13px;color:var(--on-dark-3)}
.layer-lock{align-self:center;font-size:9px;font-weight:700;letter-spacing:.20em;
  color:var(--on-dark-3);border:1px solid var(--line-d-2);padding:5px 9px;white-space:nowrap;
  transition:color .4s var(--ease),border-color .4s var(--ease)}
.layer.is-locked .layer-lock{color:var(--emerald);border-color:rgba(120,174,147,.34)}
.layer.is-locked .layer-n{opacity:1}
html.motion .layer .layer-lock{opacity:.25}
html.motion .layer.is-locked .layer-lock{opacity:1;transition:opacity .45s var(--ease)}
.stack-close{display:flex;align-items:baseline;gap:clamp(14px,2vw,26px);flex-wrap:wrap;
  margin-top:clamp(26px,3vw,40px);padding-top:22px;border-top:1px solid var(--line-d)}
.stack-close>span:first-child{font-size:10px;font-weight:700;letter-spacing:.22em;
  color:var(--on-dark-3)}
.stack-close strong{font-family:var(--serif);font-weight:500;font-size:clamp(24px,3vw,40px);
  line-height:1.1;color:var(--on-dark)}
.stack-close-state{font-size:10px;font-weight:700;letter-spacing:.22em;color:var(--emerald)}

/* ────────────────────────────────────────────────────── 10 · USE CASE */
.usecase{background:var(--ivory)}
.uc-flow{display:grid;grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);
  gap:0;align-items:stretch;padding-top:clamp(6px,1vw,12px)}
.uc-side{padding:clamp(18px,2vw,26px) 0}
.uc-tag{font-size:9.5px;font-weight:700;letter-spacing:.20em;color:var(--on-light-3);
  margin-bottom:12px}
.uc-side--after .uc-tag{color:var(--gold-deep)}
.uc-h{font-family:var(--serif);font-size:clamp(21px,2.2vw,29px);font-weight:500;
  line-height:1.25;color:var(--on-light);margin-bottom:8px}
.uc-p{font-size:14.5px;line-height:1.72;color:var(--on-light-2);margin-bottom:16px;max-width:460px}
.uc-steps{display:flex;flex-direction:column;border-top:1px solid var(--line-l)}
.uc-steps li{display:flex;align-items:baseline;gap:12px;padding:10px 0;
  border-bottom:1px solid var(--line-l-2);font-size:14px;line-height:1.5;color:var(--on-light)}
.uc-steps li span{font-family:var(--serif);font-size:11px;color:var(--on-light-3);min-width:18px}
.uc-side--after .uc-steps li span{color:var(--gold-deep)}
.uc-human{display:inline-flex;align-items:center;gap:9px;margin-top:14px;font-size:10px;
  font-weight:700;letter-spacing:.20em;color:var(--gold-deep)}
.uc-human i{width:6px;height:6px;border-radius:50%;background:var(--gold-deep)}
.uc-cue{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  gap:10px;padding-top:clamp(46px,5vw,64px);padding-bottom:8px;color:var(--gold-deep)}
.uc-cue-lab{font-size:10px;font-weight:700;letter-spacing:.16em;line-height:1.5;
  text-align:center;color:var(--gold-deep)}
.uc-cue-line{flex:1;width:1px;min-height:120px;background:linear-gradient(180deg,
  var(--gold-deep),rgba(138,109,50,.08))}
.uc-cue-arrow{width:7px;height:7px;border-right:1px solid var(--gold-deep);
  border-bottom:1px solid var(--gold-deep);transform:rotate(45deg);font-size:0;
  color:transparent;overflow:hidden}
.uc-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(24px,4vw,60px);margin-top:clamp(24px,3vw,40px);
  padding-top:clamp(20px,2.4vw,30px);border-top:1px solid var(--line-l)}
.uc-out{font-size:14.5px;line-height:1.75;color:var(--on-light-2)}
.uc-out strong{display:block;font-size:9.5px;font-weight:700;letter-spacing:.20em;
  color:var(--gold-deep);margin-bottom:8px}
.uc-kpi{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 20px}
.uc-kpi li{display:flex;flex-direction:column;gap:2px;font-size:12px;line-height:1.5;
  color:var(--on-light-3)}
.uc-kpi li span{font-family:var(--serif);font-size:10px;color:var(--gold-deep)}
.uc-kpi li strong{font-size:11px;font-weight:700;letter-spacing:.10em;color:var(--on-light)}
.uc-note{font-size:11.5px;font-style:italic;color:var(--on-light-3);margin-top:16px}

/* Prototype demo */
.demo{margin-top:clamp(34px,4vw,56px);border:1px solid var(--line-l);
  background:var(--ivory-2)}
.demo-head{display:flex;align-items:center;justify-content:space-between;gap:16px;
  flex-wrap:wrap;padding:14px clamp(14px,1.8vw,22px);border-bottom:1px solid var(--line-l)}
.demo-t{font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--on-light)}
.demo-tabs{display:flex;gap:6px;flex-wrap:wrap}
.demo-tabs--mobile{display:none;padding:12px clamp(14px,1.8vw,22px) 0;border-bottom:0}
.hw-tab-btn{padding:8px 12px;background:transparent;border:1px solid var(--line-l);
  border-radius:2px;font-size:11px;font-weight:600;color:var(--on-light-2);
  transition:background .25s,color .25s,border-color .25s}
.hw-tab-btn:hover{border-color:var(--gold-deep);color:var(--gold-deep)}
.hw-tab-btn.is-active{background:var(--midnight);border-color:var(--midnight);color:var(--gold-soft)}
.demo-body{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-l)}
.demo-col{background:var(--ivory);display:flex;flex-direction:column;min-width:0}
.demo-col-k{font-size:9.5px;font-weight:700;letter-spacing:.18em;color:var(--gold-deep);
  padding:11px 14px;border-bottom:1px solid var(--line-l-2)}
.demo-col-c{white-space:pre-wrap;word-break:break-word;padding:14px;
  font-size:12.5px;line-height:1.7;color:var(--on-light-2);flex:1}
.demo-col-tag{padding:9px 14px;border-top:1px solid var(--line-l-2);font-size:11px;
  line-height:1.5;color:var(--on-light-3)}
.demo-alert{padding:12px 14px;background:rgba(138,109,50,.10);border-top:1px solid var(--line-l);
  font-size:12px;line-height:1.6;color:var(--on-light)}
.demo-view-btn{flex:1;min-height:40px;background:transparent;border:1px solid var(--line-l);
  font-size:10.5px;font-weight:700;letter-spacing:.14em;color:var(--on-light-2)}
.demo-view-btn.is-active{background:var(--midnight);border-color:var(--midnight);
  color:var(--gold-soft)}

/* Field proof */
.proof-case{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);
  gap:clamp(24px,4vw,56px);align-items:center;margin-top:clamp(34px,4vw,56px);
  padding-top:clamp(24px,2.8vw,36px);border-top:1px solid var(--line-l)}
.pc-h{font-family:var(--serif);font-size:clamp(22px,2.4vw,32px);font-weight:500;
  line-height:1.22;color:var(--on-light);margin:10px 0 10px}
.pc-p{font-size:14.5px;line-height:1.75;color:var(--on-light-2);max-width:600px}
.pc-note{font-size:11.5px;font-style:italic;color:var(--on-light-3);margin-top:12px;max-width:600px}
.pc-metric{border-left:2px solid var(--gold-deep);padding-left:clamp(16px,2vw,26px)}
.pc-metric strong{display:block;font-family:var(--serif);font-weight:500;
  font-size:clamp(38px,4.6vw,64px);line-height:1;color:var(--gold-deep)}
.pc-metric span{display:block;font-size:13px;line-height:1.6;color:var(--on-light-2);margin-top:10px}
.pc-metric em{display:block;font-size:11px;font-style:normal;color:var(--on-light-3);
  margin-top:12px;padding-top:10px;border-top:1px solid var(--line-l-2)}

/* ─────────────────────────────────────────────────── 11 · USE CASE LIBRARY */
.library{background:var(--ivory);padding-top:var(--sp-tight)}
.lib-list{border-top:1px solid var(--line-l)}
.lib-row{display:grid;grid-template-columns:44px 150px minmax(0,1fr) 24px;
  gap:clamp(12px,2vw,28px);align-items:start;padding:clamp(18px,2vw,26px) 0;
  border-bottom:1px solid var(--line-l-2);position:relative;
  transition:background .35s var(--ease)}
.lib-row::before{content:'';position:absolute;left:0;top:-1px;height:1px;width:0;
  background:var(--gold-deep);transition:width .45s var(--ease)}
.lib-row:hover::before{width:100%}
.lib-row:hover{background:rgba(201,179,126,.09)}
.lib-n{font-family:var(--serif);font-size:13px;color:var(--on-light-3);padding-top:4px}
.lib-cat{font-size:9.5px;font-weight:700;letter-spacing:.14em;color:var(--gold-deep);
  padding-top:6px;line-height:1.6}
.lib-main h3{font-family:var(--serif);font-size:clamp(18px,1.9vw,25px);font-weight:500;
  line-height:1.28;color:var(--on-light);margin-bottom:6px}
.lib-main p{font-size:13.5px;line-height:1.7;color:var(--on-light-2);max-width:760px}
.lib-arrow{font-size:16px;color:var(--gold-deep);opacity:.5;padding-top:4px;
  transition:transform .35s var(--ease),opacity .35s var(--ease)}
.lib-row:hover .lib-arrow{transform:translateX(6px);opacity:1}
.lib-foot{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:clamp(24px,4vw,56px);
  align-items:center;margin-top:clamp(26px,3vw,40px)}
.lib-p{font-size:14.5px;line-height:1.75;color:var(--on-light-2)}
.lib-note{font-size:11.5px;line-height:1.7;color:var(--on-light-3);margin-top:10px}

/* ───────────────────────────────────────────────────── 12 · VALIDATION LAB */
.lab{background:var(--ink);padding-bottom:var(--sp-scene)}
.lab-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.60fr) minmax(0,1fr);
  gap:clamp(16px,2.6vw,44px);align-items:center;margin-top:clamp(8px,1.4vw,16px)}
.gate-col{display:flex;flex-direction:column}
.gate{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;align-items:center;
  padding:14px 0 14px 14px;border-bottom:1px solid rgba(244,240,231,.10);position:relative;
  opacity:.34;transition:opacity .5s var(--ease)}
.gate:first-child{border-top:1px solid rgba(244,240,231,.10)}
.gate::before{content:'';position:absolute;left:0;top:14px;bottom:14px;width:1px;
  background:var(--emerald);opacity:0;transition:opacity .5s var(--ease)}
.gate.is-on{opacity:1}
.gate.is-on::before{opacity:1}
.gate.is-review::before{background:var(--gold)}
.gate-n{font-family:var(--serif);font-size:11px;color:var(--on-dark-3)}
.gate-b{display:flex;flex-direction:column;gap:2px;min-width:0}
.gate-b b{font-size:10.5px;font-weight:700;letter-spacing:.14em;color:var(--on-dark)}
.gate-b i{font-size:11.5px;font-style:normal;line-height:1.4;color:var(--on-dark-3)}
.gate-s{font-size:9.5px;font-weight:700;letter-spacing:.14em;color:var(--emerald);
  white-space:nowrap}
.gate.is-review .gate-s{color:var(--gold)}
.lab-core{background:var(--ivory);color:var(--on-light);border:1px solid var(--gold);
  padding:clamp(20px,2.2vw,30px);text-align:center;
  box-shadow:0 30px 70px rgba(0,0,0,.45)}
.lab-core-k{display:block;font-size:9px;font-weight:700;letter-spacing:.24em;
  color:var(--on-light-3);margin-bottom:10px}
.lab-core strong{display:block;font-family:var(--serif);font-weight:500;
  font-size:clamp(19px,2.1vw,27px);line-height:1.12;letter-spacing:-.02em}
.lab-core-s{display:block;margin-top:12px;padding-top:10px;border-top:1px solid var(--line-l);
  font-size:9px;font-weight:700;letter-spacing:.22em;color:var(--gold-deep)}
.lab-core-s2{display:block;margin-top:8px;font-size:9.5px;font-weight:700;
  letter-spacing:.10em;line-height:1.5;color:var(--on-light-3)}

.lab-strip{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
  gap:clamp(24px,4vw,56px);margin-top:clamp(28px,3.2vw,44px);
  padding-top:clamp(20px,2.4vw,30px);border-top:1px solid var(--line-d-2)}
.lab-k{font-size:9.5px;font-weight:700;letter-spacing:.20em;color:var(--gold);
  margin-bottom:12px}
.lab-scenarios ul{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,26px)}
.lab-scenarios li{font-size:12px;line-height:1.6;color:var(--on-dark-3);
  padding-top:10px;border-top:1px solid var(--line-d-2)}
.lab-scenarios li strong{display:block;font-size:10.5px;font-weight:700;letter-spacing:.12em;
  color:var(--on-dark);margin-bottom:4px}
.lab-state ul{display:flex;flex-wrap:wrap;gap:8px}
.lab-state li{font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--on-dark-2);
  border:1px solid var(--line-d);padding:7px 11px}
.lab-state li:first-child{color:var(--emerald);border-color:rgba(120,174,147,.34)}
.lab-accept{font-size:13px;line-height:1.75;color:var(--on-dark-3);margin-top:20px;
  padding-left:16px;border-left:1px solid var(--line-d)}
.lab-accept strong{color:var(--gold-soft);font-weight:600}

/* Measurement */
.measure{margin-top:var(--sp-scene);padding-top:clamp(28px,3.4vw,44px);
  border-top:1px solid var(--line-d)}
.measure-head{margin-bottom:var(--gap-head)}
.measure-t{font-family:var(--serif);font-weight:500;font-size:clamp(24px,2.8vw,40px);
  line-height:1.16;letter-spacing:-.02em;color:var(--on-dark)}
.measure-t em{color:var(--gold-soft)}
.measure-track{display:grid;grid-template-columns:1fr 56px 1fr 56px 1fr;align-items:center;
  padding:clamp(18px,2.2vw,28px) 0;border-top:1px solid var(--line-d-2);
  border-bottom:1px solid var(--line-d-2)}
.mt-node{display:flex;flex-direction:column;gap:4px}
.mt-node span{font-size:9.5px;font-weight:700;letter-spacing:.18em;color:var(--on-dark-3)}
.mt-node b{font-family:var(--serif);font-size:clamp(17px,1.9vw,23px);font-weight:500;
  color:var(--on-dark)}
.mt-node i{font-size:11.5px;font-style:normal;line-height:1.5;color:var(--on-dark-3)}
.mt-node--focal{padding:clamp(12px,1.6vw,18px);background:var(--ivory);color:var(--on-light);
  border:1px solid var(--gold)}
.mt-node--focal span{color:var(--on-light-3)}
.mt-node--focal b{color:var(--on-light)}
.mt-node--focal i{color:var(--on-light-2)}
.mt-arrow{height:1px;background:var(--gold);opacity:.45;position:relative}
.mt-arrow::after{content:'';position:absolute;right:0;top:-3px;width:6px;height:6px;
  border-top:1px solid var(--gold);border-right:1px solid var(--gold);transform:rotate(45deg)}

.measure-table{width:100%;border-collapse:collapse;margin-top:clamp(18px,2.2vw,28px)}
.measure-table th,.measure-table td{text-align:left;padding:12px 0;
  border-bottom:1px solid var(--line-d-2);font-size:13px;line-height:1.5}
.measure-table thead th{font-size:9.5px;font-weight:700;letter-spacing:.18em;
  color:var(--gold);padding-bottom:10px}
.measure-table tbody th{font-size:10.5px;font-weight:700;letter-spacing:.14em;
  color:var(--on-dark);width:32%}
.measure-table td{color:var(--on-dark-3);width:34%}
.measure-table td b{color:var(--on-dark-3);font-weight:400}
.measure-note{font-size:12.5px;line-height:1.7;color:var(--on-dark-3);margin-top:16px;max-width:820px}
.measure-note strong{color:var(--gold-soft);font-weight:600}
.measure-close{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-top:24px}
.measure-close span{font-size:10px;font-weight:700;letter-spacing:.20em;color:var(--on-dark-3)}
.measure-close strong{font-family:var(--serif);font-size:clamp(20px,2.4vw,30px);font-weight:500;
  color:var(--emerald)}

/* ─────────────────────────────────────────────────────── 13 · FIT / SCOPE */
.fit{background:var(--ivory);padding-bottom:var(--sp-scene)}
.fit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border-top:1px solid var(--line-l)}
.fit-panel{padding:clamp(20px,2.4vw,32px) clamp(16px,2vw,28px) clamp(22px,2.4vw,32px) 0}
.fit-panel+.fit-panel{padding-left:clamp(16px,2vw,28px);border-left:1px solid var(--line-l)}
.fit-k{font-size:9.5px;font-weight:700;letter-spacing:.18em;color:var(--gold-deep);
  margin-bottom:12px}
.fit-h{font-family:var(--serif);font-size:clamp(19px,1.9vw,24px);font-weight:500;
  line-height:1.25;color:var(--on-light);margin-bottom:16px}
.fit-list{display:flex;flex-direction:column;gap:12px}
.fit-list li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px}
.fit-list li>span{font-family:var(--serif);font-size:11px;color:var(--on-light-3);padding-top:2px}
.fit-list strong{display:block;font-size:13.5px;font-weight:600;line-height:1.45;
  color:var(--on-light)}
.fit-list p{font-size:12.5px;line-height:1.6;color:var(--on-light-2);margin-top:3px}
.fit-list--tight{gap:9px}
.fit-cond{font-size:12px;line-height:1.7;color:var(--on-light-2);margin-top:16px;
  padding-top:14px;border-top:1px solid var(--line-l-2)}
.fit-cond strong{color:var(--on-light);font-weight:600}
.fit-panel--no .fit-h{color:var(--on-light-2)}
.fit-panel .link-arrow{margin-top:14px}

.boundary{margin-top:var(--sp-tight);padding-top:clamp(20px,2.4vw,30px);
  border-top:1px solid var(--line-l)}
.boundary-k{font-size:10px;font-weight:700;letter-spacing:.20em;color:var(--gold-deep);
  margin-bottom:16px}
.boundary-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px clamp(20px,3vw,44px)}
.boundary-list li{font-size:12.5px;line-height:1.72;color:var(--on-light-2);
  padding-left:14px;border-left:1px solid var(--line-l)}
.boundary-list strong{color:var(--on-light);font-weight:600}

/* ─────────────────────────────────────────── 13B · EXPERT BUILDER REDESIGN */
.expert-builder{background:var(--ivory);color:var(--on-light);
  padding-top:clamp(80px,6.2vw,96px);padding-bottom:clamp(80px,6.2vw,96px);
  border-top:1px solid var(--line-l);scroll-margin-top:calc(var(--nav) + 12px);
  position:relative}

/* TẦNG 1: 40% IMAGE / 60% PROFILE */
.expert-builder-main{display:grid;grid-template-columns:minmax(0,.40fr) minmax(0,.60fr);
  gap:clamp(48px,4.5vw,64px);align-items:start}

/* IMAGE BLOCK — 4/5 aspect ratio, uncropped face & torso */
.expert-builder-media{width:100%}
.expert-builder-img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;
  border-radius:2px;box-shadow:0 12px 32px rgba(11,26,41,.06);border:1px solid var(--line-l-2)}

/* PROFILE CONTENT COLUMN */
.expert-builder-content{display:flex;flex-direction:column;min-width:0}

/* HEADER: Eyebrow + Main Title */
.expert-builder-head{margin-bottom:clamp(24px,2.4vw,32px)}
.expert-builder-eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:10px}
.expert-builder-title{font-family:var(--serif);font-weight:500;font-size:clamp(26px,2.8vw,38px);
  line-height:1.16;letter-spacing:-.022em;color:var(--on-light);text-wrap:balance;margin:0}
.expert-builder-title em{display:block;color:var(--gold-deep)}

/* EXPERT LEAD: Name, Role, Intro, Bio */
.expert-builder-lead-block{margin-bottom:clamp(24px,2.4vw,32px);padding-bottom:clamp(20px,2vw,28px);
  border-bottom:1px solid var(--line-l-2)}
.expert-builder-name{font-family:var(--serif);font-size:clamp(21px,2.1vw,26px);font-weight:500;
  letter-spacing:-.015em;color:var(--on-light);margin:0 0 6px 0}
.expert-builder-role{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold-deep);margin:0 0 14px 0}
.expert-builder-intro{font-size:14px;line-height:1.72;color:var(--on-light);margin:0 0 10px 0}
.expert-builder-bio{font-size:13.5px;line-height:1.68;color:var(--on-light-2);margin:0}

/* CORE CAPABILITIES: 2-COLUMN EDITORIAL GRID */
.expert-builder-caps-section{display:flex;flex-direction:column}
.expert-builder-cap-eyebrow{font-size:9.5px;font-weight:700;letter-spacing:.20em;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:16px}
.expert-builder-caps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(18px,2vw,24px) clamp(24px,2.6vw,36px);list-style:none;padding:0;margin:0}
.expert-builder-cap-item{padding-top:14px;border-top:1px solid var(--line-l-2)}
.expert-builder-cap-title{display:block;font-size:13px;font-weight:600;line-height:1.45;
  color:var(--on-light);margin-bottom:4px}
.expert-builder-cap-desc{font-size:12.5px;line-height:1.62;color:var(--on-light-2);margin:0}

/* TẦNG 2: HORIZONTAL PROOF STRIP FULL WIDTH */
.expert-builder-proof{margin-top:clamp(40px,3.8vw,48px);padding:clamp(28px,2.6vw,36px) 0;
  border-top:1px solid var(--line-l);border-bottom:1px solid var(--line-l)}
.expert-builder-proof-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;list-style:none;padding:0;margin:0}
.expert-builder-proof-item{padding:0 clamp(16px,2vw,28px);border-left:1px solid var(--line-l-2)}
.expert-builder-proof-item:first-child{border-left:0;padding-left:0}
.expert-builder-proof-item:last-child{padding-right:0}
.expert-builder-proof-num{display:block;font-family:var(--serif);font-size:clamp(48px,4.5vw,60px);
  line-height:1;font-weight:500;letter-spacing:-.02em;color:var(--gold-deep)}
.expert-builder-proof-label{display:block;font-size:clamp(12px,1.1vw,13.5px);line-height:1.5;
  font-weight:500;color:var(--on-light-2);margin-top:10px}

/* RESPONSIVE: TABLET (820px – 1024px) */
@media (max-width:1024px) and (min-width:761px){
  .expert-builder-main{grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);gap:clamp(32px,3.8vw,48px)}
  .expert-builder-proof-item{padding:0 clamp(10px,1.5vw,18px)}
}
@media (max-width:880px) and (min-width:761px){
  .expert-builder-caps{grid-template-columns:1fr;gap:16px}
}

/* RESPONSIVE: MOBILE (≤760px) */
@media (max-width:760px){
  .expert-builder{padding-top:52px;padding-bottom:52px}
  .expert-builder-main{display:flex;flex-direction:column;gap:0}
  .expert-builder-content{display:contents}
  /* Mobile Order:
     1. eyebrow & title
     2. expert image
     3. expert name, role, intro, bio
     4. core capabilities
  */
  .expert-builder-head{order:1;margin-bottom:20px}
  .expert-builder-title{font-size:23px;line-height:1.2}
  .expert-builder-media{order:2;margin-bottom:24px;width:100%}
  .expert-builder-img{aspect-ratio:4/5;width:100%;object-position:center top}
  .expert-builder-lead-block{order:3;margin-bottom:24px;padding-bottom:20px}
  .expert-builder-name{font-size:20px}
  .expert-builder-intro{font-size:13.5px}
  .expert-builder-bio{font-size:13px}
  .expert-builder-caps-section{order:4}
  .expert-builder-caps{grid-template-columns:1fr;gap:14px}
  .expert-builder-cap-item{padding-top:12px}
  /* TẦNG 2 MOBILE: 2x2 GRID */
  .expert-builder-proof{margin-top:32px;padding:22px 0}
  .expert-builder-proof-list{grid-template-columns:repeat(2,1fr);row-gap:20px}
  .expert-builder-proof-item{border-left:0;padding:0 12px 0 0}
  .expert-builder-proof-item:nth-child(even){padding-left:16px;padding-right:0;border-left:1px solid var(--line-l-2)}
  .expert-builder-proof-num{font-size:40px}
  .expert-builder-proof-label{font-size:12px;margin-top:6px}
}

/* ─────────────────────────────────────── 14 · PRICING + REGISTRATION */
.pricing{background:var(--deep);padding-bottom:var(--sp-scene)}
.price-grid{display:grid;grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);
  gap:clamp(26px,4vw,64px);align-items:stretch}
.price-right{display:flex;flex-direction:column}
@media (min-width:1021px){
  .price-right{padding-left:clamp(20px,3vw,48px);border-left:1px solid var(--line-d-2)}
}
.price-brand{font-family:var(--serif);font-size:clamp(20px,2vw,26px);letter-spacing:.02em;
  color:var(--gold-soft);margin-bottom:8px}
.price-amount{font-family:var(--serif);font-weight:500;font-size:clamp(38px,4.4vw,60px);
  line-height:1;letter-spacing:-.03em;color:var(--on-dark)}
.price-amount span{font-family:var(--sans);font-size:14px;font-weight:700;
  letter-spacing:.12em;color:var(--gold);vertical-align:middle;margin-left:4px}
.price-tag{font-size:9.5px;font-weight:700;letter-spacing:.16em;color:var(--gold);
  margin-bottom:12px}
.price-note{font-size:10.5px;font-weight:600;letter-spacing:.08em;color:var(--on-dark-3);
  margin-top:10px}
.price-early{margin-top:18px;padding:16px 18px;border:1px solid var(--line-d);
  background:rgba(201,179,126,.05)}
.price-early-k{display:block;font-size:9.5px;font-weight:700;letter-spacing:.18em;
  color:var(--gold);margin-bottom:8px}
.price-early strong{display:block;font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);
  font-weight:500;line-height:1.1;color:var(--on-dark)}
.price-early p{font-size:12px;line-height:1.65;color:var(--on-dark-2);margin-top:8px}
.price-meta{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;
  gap:0;border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d);
  padding:12px 0;margin-top:20px}
.price-meta>div{padding:0 16px;border-left:1px solid var(--line-d-2)}
.price-meta>div:first-child{padding-left:0;border-left:0}
.price-meta dt{font-size:9.5px;font-weight:700;letter-spacing:.14em;color:var(--on-dark-3);
  margin-bottom:4px}
.price-meta dd{font-size:12.5px;font-weight:600;color:var(--on-dark)}
.price-includes{margin-top:0}
.price-inc-k{font-size:9.5px;font-weight:700;letter-spacing:.18em;color:var(--gold);
  margin-bottom:12px}
.price-includes ul{display:flex;flex-direction:column;gap:9px}
.price-includes li{position:relative;padding-left:16px;font-size:12.5px;line-height:1.65;
  color:var(--on-dark-2)}
.price-includes li::before{content:'';position:absolute;left:0;top:9px;width:6px;height:1px;
  background:var(--gold)}
.price-policies{display:grid;grid-template-columns:repeat(2,1fr);
  gap:clamp(20px,3vw,48px);margin-top:var(--sp-tight);
  padding-top:clamp(20px,2.4vw,30px);border-top:1px solid var(--line-d)}
.price-policies>div+div{padding-left:clamp(20px,3vw,48px);
  border-left:1px solid var(--line-d-2)}
.price-policies h4{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--gold);
  margin-bottom:8px}
.price-policies p{font-size:12.5px;line-height:1.75;color:var(--on-dark-2)}
.price-alt{font-size:11.5px;line-height:1.7;color:var(--on-dark-3);margin-top:auto;
  padding-top:16px;border-top:1px solid var(--line-d-2)}
.price-alt .link-arrow{margin-top:8px}

.form-wrap{scroll-margin-top:calc(var(--nav) + 20px)}
.form-box{background:var(--ivory);color:var(--on-light);padding:clamp(22px,2.8vw,38px);
  border:1px solid var(--gold);box-shadow:0 30px 70px rgba(0,0,0,.32)}
.form-title{font-family:var(--serif);font-size:clamp(21px,2.2vw,29px);font-weight:500;
  line-height:1.24;color:var(--on-light);margin-bottom:8px}
.form-sub{font-size:13.5px;line-height:1.7;color:var(--on-light-2);margin-bottom:26px}
.field{margin-bottom:16px}
.label{display:block;font-size:12.5px;font-weight:600;color:var(--on-light);margin-bottom:6px}
.input{width:100%;min-height:50px;padding:13px 14px;background:#fff;
  border:1px solid rgba(11,26,41,.20);border-radius:2px;font-size:16px;line-height:1.5;
  color:var(--on-light);transition:border-color .25s,box-shadow .25s}
textarea.input{min-height:96px;resize:vertical}
.input::placeholder{color:rgba(11,26,41,.40)}
.input:focus{outline:none;border-color:var(--gold-deep);box-shadow:0 0 0 3px rgba(138,109,50,.14)}
.select{appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230B1A29' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}
.field-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.65;
  color:var(--on-light-2);cursor:pointer}
.consent input{width:17px;height:17px;margin-top:2px;flex:0 0 auto;accent-color:var(--gold-deep)}
.consent a{color:var(--gold-deep);text-decoration:underline}
.turnstile-wrap{min-height:64px;margin:2px 0 8px;display:flex;justify-content:center}
.form-status{display:none;margin-top:12px;padding:11px 13px;border-left:2px solid var(--gold-deep);
  background:rgba(138,109,50,.10);font-size:12.5px;line-height:1.6;color:var(--on-light)}
.form-status.is-visible{display:block}
.form-status.is-error{border-left-color:#9A5B45;background:rgba(154,91,69,.10);color:#7A3E2C}
.form-privacy{font-size:11px;line-height:1.6;color:var(--on-light-3);margin-top:12px;
  text-align:center}
.success{display:none;background:var(--ivory);color:var(--on-light);border:1px solid var(--gold);
  padding:clamp(22px,2.8vw,38px)}
.success.is-visible{display:block}
.success-head{display:flex;align-items:center;gap:14px;padding-bottom:18px;
  border-bottom:1px solid var(--line-l);margin-bottom:18px}
.success-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;
  border:1px solid var(--emerald-deep);color:var(--emerald-deep);font-size:18px}
.success-head h4{font-size:14px;font-weight:700;color:var(--gold-deep)}
.success-head p{font-size:12px;color:var(--on-light-2);margin-top:3px}
.success p{font-size:13.5px;line-height:1.72;color:var(--on-light-2);margin-bottom:12px}
.success p strong{color:var(--gold-deep)}

/* FAQ */
.faq{display:grid;grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);
  gap:clamp(24px,4vw,60px);margin-top:var(--sp-tight);padding-top:clamp(24px,2.8vw,34px);
  border-top:1px solid var(--line-d);align-items:start;scroll-margin-top:calc(var(--nav) + 20px)}
.faq-t{font-family:var(--serif);font-weight:500;font-size:clamp(20px,2.1vw,28px);
  line-height:1.2;letter-spacing:-.02em;color:var(--on-dark)}
.faq-t em{color:var(--gold-soft)}
.faq-l{font-size:13.5px;line-height:1.72;color:var(--on-dark-2);margin-top:12px}
.faq-list{display:flex;flex-direction:column}
.faq-item{border-bottom:1px solid var(--line-d-2)}
.faq-item:first-child{border-top:1px solid var(--line-d-2)}
.faq-item>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 0;cursor:pointer;list-style:none;font-size:13.5px;line-height:1.55;
  color:var(--on-dark-2);transition:color .25s}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary i{flex:0 0 auto;position:relative;width:12px;height:12px}
.faq-item>summary i::before,.faq-item>summary i::after{content:'';position:absolute;
  background:var(--gold);transition:transform .3s var(--ease),opacity .3s}
.faq-item>summary i::before{left:0;top:5.5px;width:12px;height:1px}
.faq-item>summary i::after{left:5.5px;top:0;width:1px;height:12px}
.faq-item[open]>summary i::after{transform:scaleY(0);opacity:0}
.faq-item>summary:hover,.faq-item[open]>summary{color:var(--gold-soft)}
.faq-a{padding:0 24px 16px 0;animation:faqIn .35s var(--ease)}
.faq-a p{font-size:13px;line-height:1.72;color:var(--on-dark-2)}
.faq-a strong{color:var(--gold-soft);font-weight:600}
@keyframes faqIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* ────────────────────────────────────────────── 15 · REGISTRATION */
.register-grid{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);
  gap:clamp(26px,4vw,64px);align-items:start}
@media (min-width:1021px){
  .register-head{position:sticky;top:calc(var(--nav) + 32px)}
}
.register-head .head-l{margin-top:14px}
.register-line{margin-top:16px;padding-top:14px;border-top:1px solid var(--line-d-2);
  font-size:10.5px;font-weight:700;letter-spacing:.14em;line-height:1.7;color:var(--gold)}
.register-note{margin-top:10px;font-size:11.5px;line-height:1.65;color:var(--on-dark-3)}

/* ─────────────────────────────────────────── 16 · OFFLINE EVENT 14/11 */
.offline14{background:var(--ivory);color:var(--on-light);
  padding-top:clamp(66px,5.6vw,84px);padding-bottom:clamp(66px,5.6vw,84px);
  scroll-margin-top:calc(var(--nav) + 4px)}
.offline14-head{margin-bottom:clamp(18px,2.2vw,28px);max-width:820px}
.offline14-eyebrow{font-size:clamp(13px,1.45vw,16px);font-weight:600;line-height:1.6;
  letter-spacing:.01em;color:var(--on-light)}

.offline14-grid{display:grid;grid-template-columns:minmax(0,34%) minmax(0,1fr);
  gap:clamp(22px,3.2vw,52px);align-items:start;
  padding-top:clamp(18px,2.2vw,28px);border-top:1px solid var(--line-l)}

.offline14-id{display:flex;flex-direction:column}
.offline14-figure{margin:0}
.offline14-img{display:block;width:100%;height:auto;aspect-ratio:4/5;
  object-fit:cover;object-position:50% 8%;background:var(--ivory-2)}
.offline14-cap{margin-top:10px;font-size:9.5px;font-weight:700;letter-spacing:.20em;
  color:var(--gold-deep)}
.offline14-name{margin-top:10px;font-family:var(--serif);font-weight:500;
  font-size:clamp(23px,2.4vw,32px);line-height:1.1;letter-spacing:-.01em;color:var(--on-light)}
.offline14-role{margin-top:6px;font-size:13px;line-height:1.6;color:var(--on-light-2)}
.offline14-proof{margin-top:10px;padding-top:10px;border-top:1px solid var(--line-l-2);
  font-size:11.5px;line-height:1.55;color:var(--on-light-3)}

.offline14-t{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3vw,42px);
  line-height:1.14;letter-spacing:-.022em;color:var(--on-light);text-wrap:balance}
.offline14-t em{display:block;color:var(--gold-deep);text-wrap:balance}
.offline14-lead{margin-top:14px;font-size:clamp(15px,1.45vw,17px);line-height:1.65;
  font-weight:500;color:var(--on-light);max-width:640px}
.offline14-p{margin-top:12px;font-size:14.5px;line-height:1.75;color:var(--on-light-2);
  max-width:680px}
.offline14-q{margin:clamp(18px,2.2vw,26px) 0 0;padding-left:clamp(14px,1.8vw,22px);
  border-left:2px solid var(--gold-deep)}
.offline14-q-k{font-size:9.5px;font-weight:700;letter-spacing:.20em;color:var(--gold-deep);
  margin-bottom:8px}
.offline14-q-t{font-family:var(--serif);font-style:italic;font-size:clamp(17px,1.75vw,22px);
  line-height:1.45;color:var(--on-light);max-width:660px}
.offline14-list-k{margin-top:clamp(18px,2.2vw,26px);font-size:9.5px;font-weight:700;
  letter-spacing:.18em;color:var(--gold-deep)}
.offline14-list{margin-top:10px;display:flex;flex-direction:column;gap:6px}
.offline14-list li{font-size:12.5px;line-height:1.55;color:var(--on-light-2);
  padding-left:11px;border-left:1px solid var(--line-l)}

.offline14-rail{margin-top:clamp(24px,3vw,40px);padding-top:clamp(16px,2vw,24px);
  border-top:1px solid var(--line-l);display:grid;
  grid-template-columns:auto minmax(0,1fr);gap:clamp(14px,2.4vw,36px);align-items:start}
.offline14-rail-lead{max-width:210px}
.offline14-rail-k{font-size:9.5px;font-weight:700;letter-spacing:.18em;color:var(--gold-deep);
  padding-top:3px}
.offline14-rail-note{margin-top:6px;font-size:11.5px;line-height:1.55;color:var(--on-light-3)}
.offline14-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(12px,2vw,28px)}
.offline14-people li{display:flex;flex-direction:column;gap:4px;
  padding-left:clamp(12px,1.6vw,20px);border-left:1px solid var(--line-l-2)}
.offline14-people li:first-child{padding-left:0;border-left:0}
.offline14-people strong{display:block;font-size:13px;font-weight:600;color:var(--on-light)}
.offline14-people span{display:block;font-size:11.5px;line-height:1.5;
  color:var(--on-light-3)}

.offline14-foot{margin-top:clamp(22px,2.6vw,32px);padding-top:clamp(16px,2vw,24px);
  border-top:1px solid var(--line-l);display:grid;
  grid-template-columns:minmax(0,1fr) auto;gap:clamp(18px,3vw,44px);align-items:end}
.offline14-where p{display:flex;gap:16px;align-items:baseline;font-size:13px;line-height:1.55;
  color:var(--on-light-2)}
.offline14-where p+p{margin-top:7px}
.offline14-where-k{flex:0 0 88px;font-size:9.5px;font-weight:700;letter-spacing:.16em;
  color:var(--gold-deep);padding-top:2px}
.offline14-cta{display:flex;flex-direction:column;align-items:flex-end;gap:9px;text-align:right}
.offline14-cta .btn{max-width:100%}
.offline14-note{font-size:11px;line-height:1.55;color:var(--on-light-3);max-width:340px}

/* ─────────────────────────────────────────────────────── 17 · FOOTER RAIL */
.rail{background:var(--ink);color:var(--on-dark);padding:clamp(24px,2.6vw,34px) 0 0;
  border-top:1px solid var(--line-d-2);scroll-margin-top:var(--nav)}
.rail-k{font-size:9.5px;font-weight:700;letter-spacing:.22em;color:var(--gold);
  margin-bottom:10px}
.rail-rows{display:flex;flex-direction:column}
.rail-row{display:grid;grid-template-columns:26px minmax(0,auto) minmax(0,1fr) 18px;
  gap:clamp(10px,1.6vw,24px);align-items:baseline;padding:11px 0;
  border-top:1px solid rgba(244,240,231,.10);transition:background .3s var(--ease)}
.rail-row:hover{background:rgba(201,179,126,.05)}
.rail-n{font-family:var(--serif);font-size:10.5px;color:var(--on-dark-3)}
.rail-name{font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--on-dark);
  white-space:nowrap}
.rail-desc{font-size:11.5px;line-height:1.5;color:var(--on-dark-3);min-width:0}
.rail-arrow{font-size:13px;color:var(--gold);opacity:.6;transition:transform .3s var(--ease),opacity .3s}
.rail-row:hover .rail-arrow{transform:translateX(4px);opacity:1}
/* ──────────────────────────────────────────────────────────────── 18 · FOOTER */
.footer{background:var(--ink);color:var(--on-dark);padding:clamp(30px,3.4vw,46px) 0 0;
  border-top:1px solid rgba(244,240,231,.08)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:clamp(24px,3.4vw,56px);
  padding-bottom:clamp(24px,2.8vw,36px)}
.footer-logo img{height:36px;width:auto}
.footer-tagline{font-size:12px;line-height:1.75;color:var(--on-dark-3);margin-top:12px;
  max-width:340px}
.footer-h{font-size:9.5px;font-weight:700;letter-spacing:.20em;color:var(--gold);
  margin-bottom:12px}
.footer-links{display:flex;flex-direction:column;gap:7px}
.footer-links a{font-size:12.5px;color:var(--on-dark-2);transition:color .25s}
.footer-links a:hover{color:var(--gold-soft)}
.footer-c{font-size:12.5px;color:var(--on-dark-2);margin-bottom:6px}
.footer-c strong{color:var(--gold-soft);font-weight:600}
.footer-c a{color:var(--gold-soft)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;
  flex-wrap:wrap;padding:16px 0;border-top:1px solid rgba(244,240,231,.08);
  font-size:10.5px;color:var(--on-dark-3)}

/* ───────────────────────────────────────────────────────────── 17 · MOTION */
html.motion .rv{opacity:0;transform:translateY(12px);
  transition:opacity .55s var(--ease),transform .55s var(--ease)}
html.motion .rv.is-in{opacity:1;transform:none}

/* ═══════════════════════════════════════════════════════ 18 · RESPONSIVE */
@media (max-width:1180px){
  :root{--pad:40px}
  .nav-links{gap:14px}
  .nav-links a{font-size:11.5px}
  .nav-tag{display:none}
  .hero-meta>div{padding:0 14px}
  .bp-word{font-size:15px}
}

@media (max-width:1020px){
  :root{--pad:32px}
  .nav-links{display:none}
  .nav-cta{margin-left:auto}
  .hero-grid{grid-template-columns:1fr;gap:clamp(26px,4vw,40px)}
  .hero-copy{padding-right:0}
  .hero-visual{padding-left:0}
  .problem-grid{grid-template-columns:1fr;gap:26px}
  .problem-words{flex-direction:row;flex-wrap:wrap;gap:14px 32px}
  .pw{flex:1 1 180px;border-bottom:0;padding-bottom:0}
  .pw strong{font-size:clamp(28px,4vw,40px)}
  .build-grid{grid-template-columns:1fr}
  /* Mobile has no sticky build nav — the sprint headers carry the numbering */
  .build-nav{display:none}
  .sprint>summary{position:relative;padding-right:24px;cursor:pointer}
  .sprint>summary::after{content:'+';position:absolute;right:0;top:-2px;font-size:19px;
    line-height:1.3;font-weight:300;color:var(--gold)}
  .sprint[open]>summary::after{content:'−'}
  .uc-flow{grid-template-columns:1fr;gap:0}
  .uc-cue{flex-direction:row;align-items:center;padding:12px 0;gap:12px}
  .uc-cue-lab{text-align:left;white-space:nowrap}
  .uc-cue-lab br{display:none}
  .uc-cue-line{flex:1;width:auto;height:1px;min-height:0;
    background:linear-gradient(90deg,var(--gold-deep),rgba(138,109,50,.10))}
  .uc-cue-arrow{border:0;border-top:1px solid var(--gold-deep);
    border-right:1px solid var(--gold-deep);transform:rotate(45deg);margin-right:2px}
  .uc-foot{grid-template-columns:1fr}
  .lib-row{grid-template-columns:32px minmax(0,1fr) 20px;gap:8px 14px}
  .lib-cat{grid-column:2;padding-top:0}
  .lib-main{grid-column:2}
  .lib-arrow{grid-column:3;grid-row:1}
  .lib-foot{grid-template-columns:1fr}
  .lab-grid{grid-template-columns:1fr;gap:20px}
  .lab-core{order:-1}
  .gate-col{gap:0}
  .fit-grid{grid-template-columns:1fr}
  .fit-panel{padding:20px 0}
  .fit-panel+.fit-panel{padding-left:0;border-left:0;border-top:1px solid var(--line-l)}
  .boundary-list{grid-template-columns:1fr}
  .price-grid{grid-template-columns:1fr}
  .register-grid{grid-template-columns:1fr}
  .offline14-grid{grid-template-columns:1fr;gap:clamp(18px,3vw,26px)}
  .offline14-id{display:grid;grid-template-columns:clamp(150px,26vw,220px) minmax(0,1fr);
    gap:0 clamp(16px,2.4vw,26px);align-items:center}
  .offline14-figure{grid-column:1}
  .offline14-meta{grid-column:2}
  .offline14-cap{margin-top:0}
  .offline14-rail{grid-template-columns:1fr;gap:12px}
  .offline14-rail-lead{max-width:none}
  .offline14-people{grid-template-columns:1fr;gap:0}
  .offline14-people li{padding:10px 0 10px 0;border-left:0;
    border-top:1px solid var(--line-l-2)}
  .offline14-people li:first-child{border-top:0;padding-top:0}
  .offline14-foot{grid-template-columns:1fr;gap:18px;align-items:start}
  .offline14-cta{align-items:flex-start;text-align:left}
  .offline14-note{max-width:none}
  .faq{grid-template-columns:1fr;gap:22px}
  .demo-body{grid-template-columns:1fr}
  .proof-case{grid-template-columns:1fr}
}

@media (max-width:760px){
  :root{--pad:20px;--nav:58px;
    --sp-scene:60px;--sp:56px;--sp-tight:40px;--gap-head:22px;--gap:18px}
  body{font-size:15px}
  .nav-logo{height:24px}
  .nav-cta{min-height:42px;padding:9px 12px;font-size:10px;letter-spacing:.06em}

  /* Hero: wordmark → headline → compact blueprint → status → CTA → metadata */
  .hero{padding:20px 0 44px}
  .hero-copy{display:contents}
  .hero-eyebrow{order:1;font-size:10px;margin-bottom:10px}
  .hero-wordmark{order:2;font-size:30px;margin-bottom:6px;padding-bottom:6px}
  .hero-tagline{order:3;font-size:10px;letter-spacing:.16em;margin-bottom:14px}
  .hero-kicker{order:4;font-size:10px;line-height:1.6;margin-bottom:10px}
  .hero-title{order:5;font-size:clamp(30px,8.4vw,38px);line-height:1.1;margin-bottom:18px}
  .hero-visual{order:6;margin-bottom:18px}
  .hero-copy-body{order:7;margin-bottom:18px}
  .hero-copy-body p{font-size:14.5px;line-height:1.7}
  .hero-actions{order:8;flex-direction:column;gap:8px;margin-bottom:18px}
  .hero-actions .btn{width:100%;flex:1 1 auto}
  .hero-foot{grid-template-columns:1fr;gap:14px;margin-top:16px;padding-top:12px}
  .hero-meta{grid-template-columns:repeat(2,1fr);gap:0}
  .hero-meta>div{padding:7px 10px 7px 0}
  .hero-meta>div:nth-child(3){padding-left:0;border-left:0}
  .hero-meta>div:nth-child(1),.hero-meta>div:nth-child(2){padding-bottom:9px;
    border-bottom:1px solid var(--line-d-2)}
  .hero-notes{grid-template-columns:1fr;gap:8px}
  .hero-spec,.hero-target,.hero-note{font-size:11px}

  .bp{padding:16px}
  .bp-body{grid-template-columns:1fr;gap:14px;padding:14px 0;min-height:0}
  .bp-flow{padding-right:0}
  .bp-flow::after{display:none}
  .bp-node{padding:6px 0;gap:10px}
  .bp-word{font-size:15px}
  .bp-tick{display:none}
  .bp-core{padding:14px 16px}
  .bp-core strong{font-size:20px}
  .bp-core::before{display:none}
  .bp-core-k{margin-bottom:6px}
  .bp-core-s{margin-top:8px;padding-top:8px}
  .bp-foot span{font-size:9.5px;letter-spacing:.04em}

  .proof-in{grid-template-columns:repeat(2,1fr);padding:20px var(--pad);gap:14px 0}
  .proof-item{padding:0 12px}
  .proof-item:nth-child(odd){padding-left:0;border-left:0}
  .proof-num{font-size:clamp(30px,9vw,40px)}
  .proof-lab{font-size:9px;letter-spacing:.12em}

  .head-t{font-size:clamp(25px,7.2vw,32px)}
  .head-l{font-size:14.5px;margin-top:12px}
  .head-k{font-size:9.5px;margin-bottom:12px}

  .problem{padding-top:44px}
  .pw strong{font-size:clamp(24px,7vw,30px)}
  .pw span{font-size:9.5px}
  .pl-item{grid-template-columns:30px minmax(0,1fr);padding:16px 0}
  .pl-item h3{font-size:18px}
  .pl-item p{font-size:14px}
  .thesis{font-size:19px;margin-top:26px;padding-top:20px}

  .sprint>summary{grid-template-columns:26px minmax(0,1fr) auto;gap:10px}
  .sprint-slot{font-size:9px;letter-spacing:.08em}
  .sprint-title{font-size:24px}
  .sprint-desc{font-size:14px}
  .sprint-out li{font-size:9.5px;padding:4px 8px}
  .stage{padding:12px}
  .st-flow{flex-direction:column;gap:6px}
  .st{flex-direction:row;align-items:center;gap:8px;padding:8px 10px}
  .st:not(:first-child)::before{display:none}
  .st span{min-width:16px}
  .st-row{gap:6px;margin-top:10px}
  .st-core,.st-flag{font-size:8.5px;padding:6px 9px;letter-spacing:.10em}

  .stack{margin-top:52px}
  .stack-t{font-size:clamp(23px,6.6vw,28px)}
  .layer{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:16px 0}
  .layer-lock{grid-column:2;justify-self:start;margin-top:8px}
  .layer-en{font-size:8.5px;margin-bottom:5px}
.layer-b h4{font-size:17px}
  .layer-b p{font-size:13.5px}
  .layer-b p.layer-sub{font-size:12.5px}
  .stack-close strong{font-size:24px}

  .uc-h{font-size:20px}
  .uc-p{font-size:13.5px}
  .uc-steps li{font-size:13.5px;padding:8px 0}
  .uc-kpi{grid-template-columns:1fr;gap:10px}
  .uc-out{font-size:13.5px}

  .demo-head{padding:12px 14px}
  .demo-tabs{gap:5px}
  .hw-tab-btn{font-size:10px;padding:7px 9px}
  .demo-tabs--mobile{display:flex;gap:6px;padding:10px 14px 0}
  .demo-body{grid-template-columns:1fr;gap:0;background:transparent}
  .demo-col{display:none;border-top:1px solid var(--line-l)}
  .demo-body[data-view="input"] .demo-col[data-col="input"],
  .demo-body[data-view="engine"] .demo-col[data-col="engine"],
  .demo-body[data-view="output"] .demo-col[data-col="output"]{display:flex}
  .demo-col-c{font-size:12.5px;padding:12px 14px}
  .demo-alert{font-size:11.5px;padding:11px 14px}

  .proof-case{gap:18px}
  .pc-metric{padding-left:14px}
  .pc-metric strong{font-size:44px}

  .lib-row{padding:16px 0;grid-template-columns:24px minmax(0,1fr) 16px}
  .lib-main h3{font-size:17px}
  .lib-main p{font-size:12.5px}
  .lib-cat{font-size:9px}
  .lib-p{font-size:13.5px}
  .lib-foot .btn{width:100%}

  .lab-core{padding:20px}
  .gate{padding:12px 0;grid-template-columns:24px minmax(0,1fr) auto}
  .gate-b b{font-size:10px}
  .gate-b i{font-size:11px}
  .lab-scenarios ul{grid-template-columns:1fr;gap:10px}
  .lab-strip{grid-template-columns:1fr;gap:22px}
  .measure-track{grid-template-columns:1fr;gap:10px;padding:16px 0}
  .mt-arrow{width:1px;height:18px;margin-left:10px}
  .mt-arrow::after{right:-3px;top:auto;bottom:0;transform:rotate(135deg)}
  .measure-table thead th{font-size:9px}
  .measure-table tbody th{width:38%;font-size:9.5px}
  .measure-table td{font-size:11.5px;padding:10px 0}
  .measure-table td,.measure-table thead th{width:31%}

  .fit-h{font-size:18px}
  .fit-list strong{font-size:13px}
  .fit-list p{font-size:12px}
  .boundary-list li{font-size:12px}

  .price-amount{font-size:clamp(34px,10vw,44px)}
  .price-meta{grid-template-columns:repeat(2,1fr)}
  .price-meta>div{padding:6px 12px 6px 0}
  .price-meta>div:nth-child(3){padding-left:0;border-left:0}
  .price-meta>div:nth-child(1),.price-meta>div:nth-child(2){border-bottom:1px solid var(--line-d-2)}
  .price-includes li{font-size:12px}
  .offline14{padding-top:clamp(52px,10vw,64px);padding-bottom:clamp(52px,10vw,64px)}
  .offline14-id{display:flex;flex-direction:column;align-items:stretch}
  .offline14-img{aspect-ratio:1/1}
  .offline14-cap{margin-top:10px}
  .offline14-name{font-size:26px}
  .offline14-t{font-size:clamp(23px,6.4vw,29px)}
  .offline14-lead{font-size:15px}
  .offline14-p{font-size:14px}
  .offline14-q-t{font-size:16px}
  .offline14-list li{font-size:12.5px}
  .offline14-where p{display:flex;flex-direction:column;gap:3px;font-size:13px}
  .offline14-where-k{flex:none;padding-top:0}
  .offline14-cta .btn{width:100%}
  .register-line{font-size:10px}
  .price-policies{grid-template-columns:1fr;gap:18px}
  .price-policies>div+div{padding-left:0;border-left:0;padding-top:16px;
    border-top:1px solid var(--line-d-2)}
  .price-policies p{font-size:12px}
  .form-box,.success{padding:20px 16px}
  .form-title{font-size:22px}
  .form-sub{font-size:12.5px}
  .field-row{grid-template-columns:1fr;gap:0}
  .input{min-height:50px;font-size:16px}
  .faq-t{font-size:22px}
  .faq-item>summary{font-size:13px;padding:13px 0}
  .faq-a p{font-size:12.5px}

  .rail-row{grid-template-columns:22px minmax(0,1fr) 16px;gap:6px 10px;padding:12px 0}
  .rail-name{white-space:normal;font-size:10px}
  .rail-desc{grid-column:2;font-size:11px}
  .rail-arrow{grid-column:3;grid-row:1}
  .footer-grid{grid-template-columns:1fr;gap:22px}
  .footer-bottom{font-size:10px;gap:6px}
}

@media (max-width:400px){
  :root{--pad:16px}
  .nav-cta{font-size:9.5px;padding:8px 10px}
  .bp-foot span{font-size:8px;letter-spacing:.04em}
  .hero-title{font-size:29px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important}
  html.motion .rv{opacity:1;transform:none}
  html.bp-run .bp-node,html.bp-run .bp-core,html.bp-run .bp-foot span,
  html.bp-run .bp-tick,html.motion .layer .layer-lock{opacity:1}
  html.bp-run .bp-flow::after{transform:none;opacity:.42}
  html.bp-run .bp-tick{transform:none;opacity:.30}
  .gate{opacity:1}
}
