:root {
  --ink: #151512;
  --ink-2: #1d1d19;
  --ink-3: #292823;
  --bone: #f1eee5;
  --bone-2: #e7e2d6;
  --paper: #f7f4ec;
  --carmine: #a5232f;
  --carmine-dark: #741923;
  --brass: #ad8d4d;
  --brass-light: #cfb87b;
  --muted: #6f6b62;
  --line: rgba(21, 21, 18, 0.18);
  --line-light: rgba(241, 238, 229, 0.18);
  --serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  --shell: min(1360px, calc(100vw - 80px));
  --ease: cubic-bezier(.2, .75, .25, 1);
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  color: var(--ink);
  background: var(--bone);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.nav-open { overflow: hidden; }

::selection { color: var(--paper); background: var(--carmine); }

a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
img, svg, canvas { display: block; max-width: 100%; }

:focus-visible {
  outline: 2px solid var(--carmine);
  outline-offset: 4px;
}

.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;
}

.skip-link {
  position: fixed;
  z-index: 1000;
  top: 12px;
  left: 12px;
  padding: 10px 16px;
  color: var(--paper);
  background: var(--carmine);
  transform: translateY(-150%);
  transition: transform .2s ease;
}

.skip-link:focus { transform: translateY(0); }
.shell { width: var(--shell); margin-inline: auto; }

.site-header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  color: var(--bone);
  transition: background .35s ease, color .35s ease, border-color .35s ease, transform .35s ease;
}

.site-header.is-scrolled {
  color: var(--ink);
  background: var(--bone);
  border-bottom: 1px solid var(--line);
}

.header-inner {
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.wordmark {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--serif);
  font-size: 23px;
  letter-spacing: -.03em;
}

.wordmark-mark {
  position: relative;
  display: grid;
  width: 35px;
  height: 35px;
  place-items: center;
  border: 1px solid currentColor;
  font-family: var(--sans);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0;
}

.wordmark-mark > span { position: absolute; right: 3px; bottom: 0; color: var(--carmine); font-size: 9px; }

.site-nav { display: flex; align-items: center; gap: clamp(22px, 2.5vw, 42px); font-size: 12px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }
.site-nav a { position: relative; }
.site-nav a::after { position: absolute; right: 0; bottom: -7px; left: 0; height: 1px; content: ""; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .3s var(--ease); }
.site-nav a:hover::after { transform: scaleX(1); transform-origin: left; }
.site-nav .nav-studio { padding: 13px 17px; border: 1px solid currentColor; }
.site-nav .nav-studio::after { display: none; }
.site-nav .nav-studio:hover { color: var(--paper); background: var(--carmine); border-color: var(--carmine); }
.nav-toggle { display: none; color: inherit; background: none; border: 0; }

.hero {
  position: relative;
  min-height: 860px;
  padding-top: 180px;
  padding-bottom: 100px;
  display: grid;
  grid-template-columns: minmax(0, .91fr) minmax(480px, 1.09fr);
  gap: clamp(50px, 6vw, 110px);
  align-items: center;
  color: var(--bone);
}

.hero::before {
  position: absolute;
  z-index: -2;
  top: 0;
  right: calc((100vw - 100%) / -2);
  bottom: 0;
  left: calc((100vw - 100%) / -2);
  content: "";
  background: var(--ink);
}

.hero::after {
  position: absolute;
  z-index: -1;
  top: 0;
  right: calc((100vw - 100%) / -2);
  bottom: 0;
  left: 54%;
  content: "";
  background: var(--ink-2);
  border-left: 1px solid rgba(241,238,229,.08);
}

.eyebrow, .section-kicker {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 28px;
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.eyebrow-rule { width: 34px; height: 1px; background: var(--carmine); }

.hero h1 {
  max-width: 720px;
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(56px, 5.2vw, 84px);
  font-weight: 400;
  line-height: .94;
  letter-spacing: -.065em;
}

.hero h1 em, .display em { color: var(--brass-light); font-weight: 400; }
.hero-deck { max-width: 600px; margin: 42px 0 0; color: rgba(241,238,229,.72); font-family: var(--serif); font-size: clamp(20px, 1.6vw, 25px); line-height: 1.48; }
.hero-actions { margin-top: 45px; display: flex; align-items: center; gap: 32px; }

.button {
  min-height: 51px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  border: 1px solid transparent;
  cursor: pointer;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .1em;
  text-transform: uppercase;
  transition: color .25s ease, background .25s ease, border-color .25s ease, transform .25s var(--ease);
}

.button:hover { transform: translateY(-2px); }
.button-primary { color: var(--paper); background: var(--carmine); border-color: var(--carmine); }
.button-primary:hover { background: var(--carmine-dark); border-color: var(--carmine-dark); }
.button-light { color: var(--ink); background: var(--bone); border-color: var(--bone); }
.button-light:hover { color: var(--bone); background: transparent; }
.button-wide { width: 100%; justify-content: space-between; }

.text-link { position: relative; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.text-link::after { position: absolute; right: 0; bottom: -7px; left: 0; height: 1px; content: ""; background: rgba(241,238,229,.38); }
.hero-proof { margin-top: 62px; display: flex; flex-wrap: wrap; gap: 9px 26px; color: rgba(241,238,229,.48); font-family: var(--mono); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.hero-proof span:not(:last-child)::after { padding-left: 26px; color: var(--carmine); content: "/"; }

.hero-instrument { position: relative; align-self: center; border: 1px solid rgba(241,238,229,.22); background: var(--ink); box-shadow: 0 40px 90px rgba(0,0,0,.3); }
.hero-instrument::before { position: absolute; z-index: -1; top: -13px; right: 13px; bottom: 13px; left: -13px; content: ""; border: 1px solid rgba(173,141,77,.36); }
.instrument-chrome { height: 51px; padding: 0 17px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(241,238,229,.18); font-family: var(--mono); font-size: 8px; letter-spacing: .12em; }
.status { display: flex; align-items: center; gap: 8px; color: rgba(241,238,229,.6); }
.status i { width: 6px; height: 6px; border-radius: 50%; background: var(--brass-light); box-shadow: 0 0 0 4px rgba(207,184,123,.1); animation: pulse 2.5s ease-in-out infinite; }
.topology { position: relative; min-height: 390px; overflow: hidden; border-bottom: 1px solid rgba(241,238,229,.14); }
.topology canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.topology-label { position: absolute; max-width: 155px; padding: 8px 10px; color: rgba(241,238,229,.85); background: rgba(21,21,18,.9); border-left: 2px solid var(--brass); font-family: var(--serif); font-size: 12px; line-height: 1.2; box-shadow: 0 6px 25px rgba(0,0,0,.2); }
.topology-label span { display: block; margin-bottom: 3px; color: rgba(241,238,229,.4); font-family: var(--mono); font-size: 7px; letter-spacing: .13em; text-transform: uppercase; }
.label-decision { top: 44%; left: 36%; border-color: var(--bone); }
.label-lock { top: 17%; right: 5%; border-color: var(--carmine); }
.label-option { right: 8%; bottom: 10%; }
.label-trigger { bottom: 13%; left: 4%; border-color: #827e74; }
.instrument-scoreboard { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid rgba(241,238,229,.14); }
.instrument-scoreboard > div { padding: 18px; }
.instrument-scoreboard > div:not(:last-child) { border-right: 1px solid rgba(241,238,229,.14); }
.instrument-scoreboard span { display: block; color: rgba(241,238,229,.45); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.instrument-scoreboard strong { margin-top: 8px; display: inline-block; font-family: var(--serif); font-size: 31px; font-weight: 400; line-height: 1; }
.instrument-scoreboard small { color: rgba(241,238,229,.3); font-family: var(--mono); font-size: 8px; }
.instrument-scoreboard .accent strong { color: var(--brass-light); }
.instrument-note { padding: 17px 20px 20px; display: grid; grid-template-columns: 90px 1fr; gap: 18px; align-items: start; }
.instrument-note span { color: var(--carmine); font-family: var(--mono); font-size: 7px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.instrument-note p { margin: 0; color: rgba(241,238,229,.68); font-family: var(--serif); font-size: 13px; line-height: 1.42; }

.signal-band { height: 49px; overflow: hidden; color: var(--bone); background: var(--carmine); }
.signal-track { width: max-content; height: 100%; display: flex; align-items: center; gap: 30px; animation: marquee 32s linear infinite; font-family: var(--mono); font-size: 9px; font-weight: 700; letter-spacing: .18em; }
.signal-track i { color: var(--brass-light); font-size: 7px; }

.section { padding-block: clamp(100px, 11vw, 180px); }
.section-index { display: grid; grid-template-columns: 50px 1fr; gap: 16px; align-items: center; margin-bottom: 60px; color: var(--muted); font-family: var(--mono); font-size: 8px; letter-spacing: .16em; text-transform: uppercase; }
.section-index::after { grid-column: 2; height: 1px; content: ""; background: var(--line); }
.section-index span { grid-row: 1 / span 2; align-self: start; color: var(--carmine); font-size: 11px; }
.section-index p { margin: 0; }
.section-index.light { color: rgba(241,238,229,.5); }
.section-index.light::after { background: var(--line-light); }
.section-kicker { margin-bottom: 24px; color: var(--carmine); }
.display { margin: 0; font-family: var(--serif); font-size: clamp(51px, 6vw, 92px); font-weight: 400; line-height: .96; letter-spacing: -.055em; }
.display em { color: var(--brass); }

.thesis-body { margin-left: max(0px, 16.5%); }
.thesis-grid { margin-top: 65px; display: grid; grid-template-columns: .83fr 1.17fr; gap: clamp(50px, 9vw, 135px); }
.thesis-lead { margin: 0; font-family: var(--serif); font-size: clamp(25px, 2.3vw, 36px); line-height: 1.3; }
.thesis-copy { color: var(--muted); font-size: 16px; line-height: 1.8; }
.thesis-copy p { margin: 0 0 20px; }
.principles { margin-top: 105px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.principle { position: relative; min-height: 330px; padding: 32px; overflow: hidden; background: var(--bone); }
.principle-number { color: var(--carmine); font-family: var(--serif); font-size: 12px; }
.principle h3 { margin: 75px 0 15px; font-family: var(--serif); font-size: 29px; font-weight: 400; letter-spacing: -.03em; }
.principle p { max-width: 300px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.principle-line { position: absolute; right: 0; bottom: 0; left: 0; height: 3px; background: rgba(21,21,18,.08); }
.principle-line i { display: block; width: 0; height: 100%; background: var(--carmine); transition: width .6s var(--ease); }
.principle:hover .principle-line i { width: 100%; }

.instrument-section { color: var(--bone); background: var(--ink); }
.instrument-heading { margin: 0 0 80px max(0px, 16.5%); display: grid; grid-template-columns: 1.45fr .55fr; gap: 60px; align-items: end; }
.instrument-intro { max-width: 420px; margin: 0 0 6px; color: rgba(241,238,229,.58); font-size: 14px; line-height: 1.8; }
.brief-window { min-height: 680px; display: grid; grid-template-columns: 210px 1fr; border: 1px solid rgba(241,238,229,.2); background: var(--paper); box-shadow: 0 45px 100px rgba(0,0,0,.35); }
.brief-rail { padding: 25px 18px; display: flex; flex-direction: column; color: var(--bone); background: var(--ink-2); }
.brief-brand { display: flex; align-items: center; gap: 12px; }
.brief-brand > span { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid rgba(241,238,229,.3); font-family: var(--serif); font-size: 12px; }
.brief-brand small { color: rgba(241,238,229,.4); font-family: var(--mono); font-size: 7px; letter-spacing: .12em; }
.brief-rail nav { margin: 85px -18px 0; }
.brief-rail button { width: 100%; padding: 14px 18px; display: flex; align-items: center; gap: 13px; color: rgba(241,238,229,.45); background: transparent; border: 0; border-left: 2px solid transparent; cursor: pointer; text-align: left; font-size: 9px; font-weight: 650; letter-spacing: .04em; }
.brief-rail button i { color: rgba(241,238,229,.2); font-family: var(--mono); font-size: 7px; font-style: normal; }
.brief-rail button:hover, .brief-rail button.is-active { color: var(--bone); background: rgba(241,238,229,.05); border-color: var(--carmine); }
.brief-classification { margin-top: auto; color: rgba(241,238,229,.3); font-family: var(--mono); font-size: 7px; line-height: 1.7; letter-spacing: .12em; }
.brief-main { min-width: 0; color: var(--ink); }
.brief-topbar { height: 58px; padding: 0 28px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); font-family: var(--mono); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.brief-seal { color: #536b47; }
.brief-panel { display: none; padding: clamp(30px, 4vw, 57px); }
.brief-panel.is-active { display: block; animation: panelIn .45s var(--ease); }
.brief-title-row { display: flex; justify-content: space-between; gap: 40px; }
.brief-title-row small, .brief-bottom-grid small, .move-list small { color: var(--carmine); font-family: var(--mono); font-size: 7px; font-weight: 700; letter-spacing: .12em; }
.brief-title-row h3 { max-width: 700px; margin: 9px 0 0; font-family: var(--serif); font-size: clamp(30px, 3.5vw, 50px); font-weight: 400; line-height: 1.04; letter-spacing: -.04em; }
.decision-stamp { width: 110px; height: 76px; padding: 9px; flex: 0 0 auto; color: var(--carmine); border: 1px solid var(--carmine); transform: rotate(2deg); font-family: var(--mono); font-size: 6px; letter-spacing: .1em; }
.decision-stamp strong { margin-top: 8px; display: block; font-size: 10px; line-height: 1.25; }
.brief-summary { max-width: 850px; margin: 32px 0; color: #57544d; font-family: var(--serif); font-size: 17px; line-height: 1.65; }
.score-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid var(--line); }
.score-grid article { padding: 19px 20px 16px 0; display: grid; grid-template-columns: 1fr auto; gap: 5px 12px; }
.score-grid article:not(:last-child) { margin-right: 20px; border-right: 1px solid var(--line); }
.score-grid span { color: var(--muted); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.score-grid strong { grid-row: 1 / span 2; grid-column: 2; font-family: var(--serif); font-size: 29px; font-weight: 400; line-height: 1; }
.score-grid small { color: var(--muted); font-family: var(--mono); font-size: 6px; letter-spacing: .08em; }
.score-bar { height: 2px; overflow: hidden; background: rgba(21,21,18,.12); }
.score-bar i { display: block; width: var(--score); height: 100%; background: var(--ink); transform-origin: left; }
.score-bar.danger i { background: var(--carmine); }
.score-bar.gold i { background: var(--brass); }
.score-64 { --score: 64%; }
.score-38 { --score: 38%; }
.score-81 { --score: 81%; }
.brief-bottom-grid { margin-top: 34px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.brief-bottom-grid article { min-height: 138px; padding-left: 15px; border-left: 2px solid var(--ink); }
.brief-bottom-grid article:nth-child(2) { border-color: var(--brass); }
.brief-bottom-grid article:nth-child(3) { border-color: var(--carmine); }
.brief-bottom-grid h4 { margin: 11px 0 7px; font-family: var(--serif); font-size: 18px; font-weight: 400; }
.brief-bottom-grid p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.sample-topology { min-height: 490px; position: relative; overflow: hidden; border: 1px solid var(--line); background: var(--bone); }
.sample-topology svg { width: 100%; height: 490px; }
.move-list { margin: 0; padding: 0; list-style: none; }
.move-list li { padding: 27px 0; display: grid; grid-template-columns: 45px 1fr 90px; gap: 18px; align-items: start; border-bottom: 1px solid var(--line); }
.move-list > li > span { color: var(--carmine); font-family: var(--serif); font-size: 13px; }
.move-list h4 { margin: 7px 0; font-family: var(--serif); font-size: 23px; font-weight: 400; }
.move-list p { max-width: 600px; margin: 0; color: var(--muted); font-size: 12px; }
.move-list > li > strong { color: var(--brass); font-family: var(--serif); font-size: 21px; font-weight: 400; text-align: right; }
.move-list > li > strong small { color: var(--muted); font-size: 5px; }
.trigger-table { border-top: 1px solid var(--ink); }
.trigger-row { min-height: 77px; display: grid; grid-template-columns: 1.1fr .7fr 1.4fr .5fr; gap: 20px; align-items: center; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.trigger-row strong { color: var(--carmine); font-family: var(--mono); font-size: 9px; }
.trigger-row.head { min-height: 38px; color: var(--ink); font-family: var(--mono); font-size: 7px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }

.method-body { margin-left: max(0px, 16.5%); }
.method-steps { margin-top: 85px; border-top: 1px solid var(--ink); }
.method-step { min-height: 178px; padding: 35px 0; display: grid; grid-template-columns: 1fr 2.1fr; gap: 60px; border-bottom: 1px solid var(--line); }
.method-num { font-family: var(--serif); font-size: 41px; line-height: 1; }
.method-num span { color: var(--muted); font-family: var(--mono); font-size: 8px; letter-spacing: .06em; }
.method-step > div:last-child { display: grid; grid-template-columns: 110px 1.1fr 1fr; gap: 30px; align-items: start; }
.method-step small { color: var(--carmine); font-family: var(--mono); font-size: 8px; font-weight: 700; letter-spacing: .12em; }
.method-step h3 { margin: -7px 0 0; font-family: var(--serif); font-size: 28px; font-weight: 400; letter-spacing: -.03em; }
.method-step p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.method-assurance { margin-top: 70px; padding: 31px 35px; display: grid; grid-template-columns: 55px 1fr 100px; gap: 28px; align-items: center; color: var(--bone); background: var(--ink); }
.assurance-mark { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(241,238,229,.3); font-family: var(--serif); font-size: 12px; }
.method-assurance p { max-width: 780px; margin: 0; color: rgba(241,238,229,.64); font-family: var(--serif); font-size: 16px; }
.method-assurance strong { color: var(--bone); font-weight: 400; }
.assurance-label { color: var(--brass-light); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-align: right; }

.membership { color: var(--bone); background: var(--ink); }
.membership-grid { display: grid; grid-template-columns: .25fr 1.2fr .72fr; gap: clamp(45px, 7vw, 100px); align-items: start; }
.membership-grid .section-index { display: block; margin: 3px 0 0; }
.membership-grid .section-index::after { display: none; }
.membership-grid .section-index span { display: block; margin-bottom: 18px; }
.membership-copy .display { font-size: clamp(48px, 5.4vw, 81px); }
.membership-lead { max-width: 680px; margin: 43px 0; color: rgba(241,238,229,.6); font-family: var(--serif); font-size: 19px; line-height: 1.65; }
.membership-details { border-top: 1px solid var(--line-light); }
.membership-details > div { padding: 20px 0; display: grid; grid-template-columns: 40px 1fr; gap: 15px; border-bottom: 1px solid var(--line-light); }
.membership-details span { color: var(--carmine); font-family: var(--mono); font-size: 7px; }
.membership-details p { margin: 0; color: rgba(241,238,229,.48); font-size: 12px; }
.membership-details strong { margin-bottom: 4px; display: block; color: var(--bone); font-family: var(--serif); font-size: 18px; font-weight: 400; }
.membership-card { padding: 31px; color: var(--ink); background: var(--bone); border-top: 4px solid var(--carmine); box-shadow: 17px 17px 0 rgba(173,141,77,.15); }
.membership-card-top { padding-bottom: 20px; display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); font-family: var(--mono); font-size: 7px; font-weight: 700; letter-spacing: .11em; }
.membership-card .price { margin: 35px 0 8px; font-family: var(--serif); font-size: clamp(42px, 4vw, 57px); line-height: 1; letter-spacing: -.04em; }
.membership-card .price sup { color: var(--carmine); font-size: 18px; vertical-align: top; }
.membership-card .price small { color: var(--muted); font-family: var(--mono); font-size: 7px; letter-spacing: .08em; }
.membership-card > p:not(.price) { color: var(--muted); font-family: var(--serif); font-size: 14px; line-height: 1.5; }
.membership-card ul { margin: 27px 0; padding: 23px 0; border-block: 1px solid var(--line); list-style: none; }
.membership-card li { padding: 7px 0; font-size: 11px; }
.membership-card li::before { margin-right: 12px; color: var(--brass); content: "◆"; font-size: 6px; }
.membership-card > small { margin-top: 16px; display: block; color: var(--muted); font-family: var(--mono); font-size: 6px; letter-spacing: .05em; text-align: center; text-transform: uppercase; }
.membership-new .section-index { margin-bottom: 70px; }
.membership-heading { margin-left: max(0px, 16.5%); display: grid; grid-template-columns: 1.35fr .65fr; gap: 70px; align-items: end; }
.membership-heading .membership-lead { margin: 0 0 7px; }
.pricing-grid { margin-top: 85px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; align-items: stretch; }
.pricing-grid .membership-card { display: flex; flex-direction: column; box-shadow: none; }
.pricing-grid .membership-card.featured { position: relative; border-top-color: var(--brass); transform: translateY(-14px); box-shadow: 14px 14px 0 rgba(173,141,77,.15); }
.pricing-grid .membership-card ul { flex: 1; }
.pricing-grid .membership-card .price small:first-child { margin-right: 6px; }
.website-trap { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }

.access { color: var(--bone); background: var(--carmine); }
.access-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(70px, 10vw, 150px); }
.access-copy h2 { margin: 25px 0; font-family: var(--serif); font-size: clamp(60px, 6vw, 90px); font-weight: 400; line-height: .91; letter-spacing: -.055em; }
.access-copy > p:not(.eyebrow) { max-width: 390px; color: rgba(241,238,229,.65); font-family: var(--serif); font-size: 17px; }
.access-contact { margin-top: 65px; padding-top: 18px; display: flex; justify-content: space-between; border-top: 1px solid rgba(241,238,229,.25); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.access-contact span { color: rgba(241,238,229,.5); }
.access-contact a { font-weight: 700; }
.access-form { padding: 43px; color: var(--ink); background: var(--paper); box-shadow: 15px 15px 0 rgba(21,21,18,.14); }
.form-grid.two { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.access-form label { margin-bottom: 24px; display: block; }
.access-form label > span { margin-bottom: 8px; display: flex; justify-content: space-between; color: var(--muted); font-family: var(--mono); font-size: 7px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.access-form label > span small { color: #99948a; font-size: 6px; }
.access-form input, .access-form select, .access-form textarea {
  width: 100%;
  padding: 12px 0;
  color: var(--ink);
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(21,21,18,.3);
  border-radius: 0;
  outline: 0;
  font-family: var(--serif);
  font-size: 17px;
  transition: border-color .2s ease;
}
.access-form textarea { min-height: 85px; resize: vertical; }
.access-form select { cursor: pointer; }
.access-form input:focus, .access-form select:focus, .access-form textarea:focus { border-color: var(--carmine); }
.access-form input::placeholder, .access-form textarea::placeholder { color: #aba69b; }
.form-consent { margin-top: 7px; display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: center; }
.form-consent .check { margin: 0; display: flex; align-items: flex-start; gap: 11px; }
.check input { width: 16px; height: 16px; margin-top: 2px; flex: 0 0 auto; accent-color: var(--carmine); }
.form-consent .check span { margin: 0; display: inline; color: var(--muted); font-family: var(--sans); font-size: 10px; font-weight: 400; line-height: 1.5; letter-spacing: 0; text-transform: none; }
.check a { text-decoration: underline; text-underline-offset: 2px; }
.access-form .button-light { color: var(--bone); background: var(--ink); border-color: var(--ink); }
.access-form .button-light:hover { color: var(--ink); background: transparent; }
.button[disabled] { cursor: wait; opacity: .55; transform: none; }
.form-status { min-height: 19px; margin-top: 15px; font-family: var(--mono); font-size: 8px; letter-spacing: .04em; }
.form-status.is-error { color: var(--carmine); }
.form-status.is-success { color: #41623c; }
.field-error { border-color: var(--carmine) !important; }

.site-footer { padding: 75px 0 30px; color: var(--bone); background: #0d0d0b; }
.footer-top { padding-bottom: 65px; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; border-bottom: 1px solid var(--line-light); }
.footer-top > p { margin: 0; color: rgba(241,238,229,.4); font-family: var(--serif); font-size: 14px; text-align: center; }
.footer-studio { justify-self: end; font-family: var(--mono); font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
.footer-studio span { margin-left: 12px; color: var(--carmine); }
.footer-bottom { padding-top: 25px; display: grid; grid-template-columns: 1fr 1fr 1fr; color: rgba(241,238,229,.3); font-family: var(--mono); font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }
.footer-bottom p { margin: 0; }
.footer-bottom div { display: flex; justify-content: center; gap: 20px; }
.footer-bottom p:last-child { text-align: right; }
.footer-bottom a:hover { color: var(--bone); }

.reveal { opacity: 0; transform: translateY(25px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.revealed { opacity: 1; transform: none; }
.reveal-delay { transition-delay: .15s; }

/* Studio */
.studio-page { min-height: 100vh; color: var(--bone); background: var(--ink); }
.studio-page::before { position: fixed; z-index: -1; top: 78px; right: 13vw; bottom: 0; width: 1px; content: ""; background: rgba(165,35,47,.2); }
.studio-header { position: relative; z-index: 20; min-height: 78px; padding: 0 35px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line-light); }
.studio-header-meta { display: flex; align-items: center; gap: 25px; color: rgba(241,238,229,.4); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.studio-header-meta i { width: 5px; height: 5px; border-radius: 50%; background: var(--brass-light); }
.studio-header-actions { display: flex; align-items: center; gap: 18px; }
.studio-exit { color: rgba(241,238,229,.55); font-family: var(--mono); font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
button.studio-exit { padding: 0; background: transparent; border: 0; cursor: pointer; }
.studio-exit:hover { color: var(--bone); }
.studio-shell { min-height: calc(100vh - 78px); }
.unlock-view { min-height: calc(100vh - 78px); padding: 80px 30px; display: grid; place-items: center; }
.unlock-card { width: min(980px, 100%); display: grid; grid-template-columns: 1.1fr .9fr; border: 1px solid var(--line-light); background: var(--ink-2); box-shadow: 25px 25px 0 rgba(165,35,47,.12); }
.unlock-copy { padding: clamp(40px, 6vw, 85px); border-right: 1px solid var(--line-light); }
.unlock-number { color: var(--carmine); font-family: var(--mono); font-size: 8px; letter-spacing: .1em; }
.unlock-copy h1 { margin: 75px 0 25px; font-family: var(--serif); font-size: clamp(48px, 6vw, 78px); font-weight: 400; line-height: .92; letter-spacing: -.05em; }
.unlock-copy h1 em { color: var(--brass-light); font-weight: 400; }
.unlock-copy p { max-width: 450px; margin: 0; color: rgba(241,238,229,.5); font-family: var(--serif); font-size: 17px; line-height: 1.65; }
.unlock-form-wrap { padding: clamp(40px, 5vw, 67px); display: flex; flex-direction: column; justify-content: center; }
.unlock-form-wrap > span { color: var(--carmine); font-family: var(--mono); font-size: 8px; font-weight: 700; letter-spacing: .15em; }
.unlock-form-wrap h2 { margin: 15px 0 43px; font-family: var(--serif); font-size: 30px; font-weight: 400; }
.dark-form label { margin-bottom: 25px; display: block; }
.dark-form label > span { margin-bottom: 10px; display: block; color: rgba(241,238,229,.42); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.dark-form input, .dark-form textarea, .dark-form select {
  width: 100%;
  padding: 13px 0;
  color: var(--bone);
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(241,238,229,.28);
  border-radius: 0;
  outline: 0;
  font-family: var(--serif);
  font-size: 18px;
}
.dark-form input:focus, .dark-form textarea:focus, .dark-form select:focus { border-color: var(--brass-light); }
.dark-form input::placeholder, .dark-form textarea::placeholder { color: rgba(241,238,229,.2); }
.dark-form .button { margin-top: 12px; width: 100%; justify-content: space-between; }
.unlock-note { margin-top: 25px; color: rgba(241,238,229,.26); font-family: var(--mono); font-size: 7px; line-height: 1.6; }
.studio-status { min-height: 18px; margin-top: 14px; color: var(--brass-light); font-family: var(--mono); font-size: 8px; }
.studio-status.is-error { color: #e07880; }

.analysis-view[hidden], .unlock-view[hidden], .analysis-form-panel[hidden], .analysis-result[hidden] { display: none; }
.analysis-layout { min-height: calc(100vh - 78px); display: grid; grid-template-columns: 265px 1fr; }
.studio-rail { padding: 35px 25px; display: flex; flex-direction: column; border-right: 1px solid var(--line-light); background: #11110f; }
.rail-session { padding-bottom: 30px; border-bottom: 1px solid var(--line-light); }
.rail-session > span { color: rgba(241,238,229,.3); font-family: var(--mono); font-size: 6px; letter-spacing: .1em; text-transform: uppercase; }
.rail-session strong { margin-top: 8px; display: block; font-family: var(--serif); font-size: 17px; font-weight: 400; }
.rail-nav { margin-top: 35px; }
.rail-nav button { width: 100%; min-height: 43px; padding: 0 12px; display: flex; align-items: center; gap: 13px; color: rgba(241,238,229,.4); background: none; border: 0; border-left: 2px solid transparent; cursor: pointer; font-size: 10px; text-align: left; }
.rail-nav button span { font-family: var(--mono); font-size: 7px; }
.rail-nav button.is-active { color: var(--bone); background: rgba(241,238,229,.04); border-color: var(--carmine); }
.rail-privacy { margin-top: auto; padding-top: 25px; border-top: 1px solid var(--line-light); color: rgba(241,238,229,.28); font-family: var(--mono); font-size: 6px; line-height: 1.6; letter-spacing: .06em; text-transform: uppercase; }
.rail-privacy strong { color: var(--brass-light); font-weight: 500; }
.report-history { margin: 24px -10px 25px; max-height: 42vh; overflow-y: auto; }
.history-item { width: 100%; padding: 13px 10px; color: rgba(241,238,229,.5); background: transparent; border: 0; border-bottom: 1px solid rgba(241,238,229,.09); cursor: pointer; text-align: left; }
.history-item:hover { color: var(--bone); background: rgba(241,238,229,.035); }
.history-item strong { display: block; overflow: hidden; font-family: var(--serif); font-size: 13px; font-weight: 400; white-space: nowrap; text-overflow: ellipsis; }
.history-item span, .history-empty { margin-top: 4px; display: block; color: rgba(241,238,229,.25); font-family: var(--mono); font-size: 6px; line-height: 1.45; letter-spacing: .05em; text-transform: uppercase; }
.history-empty { padding: 10px; }
.studio-workspace { min-width: 0; }
.workspace-topbar { min-height: 63px; padding: 0 38px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line-light); }
.workspace-topbar p { margin: 0; color: rgba(241,238,229,.38); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.workspace-actions { display: flex; gap: 11px; }
.workspace-action { min-height: 31px; padding: 0 12px; color: rgba(241,238,229,.5); background: transparent; border: 1px solid rgba(241,238,229,.18); cursor: pointer; font-family: var(--mono); font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }
.workspace-action:hover { color: var(--bone); border-color: rgba(241,238,229,.5); }
.analysis-form-panel { max-width: 1120px; margin: 0 auto; padding: clamp(50px, 7vw, 95px) clamp(30px, 6vw, 85px); }
.analysis-heading { display: grid; grid-template-columns: 1fr .7fr; gap: 80px; align-items: end; }
.analysis-heading .eyebrow { color: var(--carmine); }
.analysis-heading h1 { margin: 0; font-family: var(--serif); font-size: clamp(53px, 6vw, 82px); font-weight: 400; line-height: .92; letter-spacing: -.055em; }
.analysis-heading h1 em { color: var(--brass-light); font-weight: 400; }
.analysis-heading > p { margin: 0 0 4px; color: rgba(241,238,229,.45); font-family: var(--serif); font-size: 15px; line-height: 1.65; }
.decision-form { margin-top: 75px; }
.form-section { padding: 35px 0; display: grid; grid-template-columns: 160px 1fr; gap: 55px; border-top: 1px solid var(--line-light); }
.form-section-index { color: var(--carmine); font-family: var(--mono); font-size: 8px; }
.form-section-index strong { margin-top: 6px; display: block; color: rgba(241,238,229,.6); font-size: 7px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.form-fields { display: grid; gap: 28px; }
.form-fields.two { grid-template-columns: 1fr 1fr; }
.decision-form label { display: block; }
.decision-form label > span { margin-bottom: 9px; display: flex; justify-content: space-between; color: rgba(241,238,229,.42); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.decision-form label small { color: rgba(241,238,229,.2); font-size: 6px; }
.decision-form input, .decision-form textarea, .decision-form select { width: 100%; padding: 12px 0; color: var(--bone); background: transparent; border: 0; border-bottom: 1px solid rgba(241,238,229,.25); border-radius: 0; outline: 0; font-family: var(--serif); font-size: 17px; }
.decision-form textarea { min-height: 100px; resize: vertical; line-height: 1.5; }
.decision-form input:focus, .decision-form textarea:focus, .decision-form select:focus { border-color: var(--brass-light); }
.decision-form input::placeholder, .decision-form textarea::placeholder { color: rgba(241,238,229,.18); }
.decision-submit { margin-top: 40px; padding: 30px 0 0 215px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line-light); }
.decision-submit p { max-width: 390px; margin: 0; color: rgba(241,238,229,.3); font-family: var(--mono); font-size: 7px; line-height: 1.6; }
.analysis-loading { min-height: 65vh; display: grid; place-items: center; text-align: center; }
.analysis-loading[hidden] { display: none; }
.loading-mark { position: relative; width: 100px; height: 100px; margin: auto; display: grid; place-items: center; border: 1px solid rgba(241,238,229,.2); font-family: var(--serif); font-size: 19px; }
.loading-mark::before, .loading-mark::after { position: absolute; inset: 8px; content: ""; border: 1px solid rgba(173,141,77,.3); animation: loadingSpin 5s linear infinite; }
.loading-mark::after { inset: 18px; border-color: rgba(165,35,47,.5); animation-direction: reverse; animation-duration: 3s; }
.analysis-loading h2 { margin: 30px 0 8px; font-family: var(--serif); font-size: 31px; font-weight: 400; }
.analysis-loading p { color: rgba(241,238,229,.35); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }

.analysis-result { color: var(--ink); background: var(--paper); }
.result-masthead { padding: 42px clamp(30px, 5vw, 72px); color: var(--bone); background: var(--ink-2); border-bottom: 3px solid var(--carmine); }
.result-meta { display: flex; justify-content: space-between; color: rgba(241,238,229,.4); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.result-title-row { margin-top: 35px; display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: end; }
.result-title-row h1 { max-width: 850px; margin: 7px 0 0; font-family: var(--serif); font-size: clamp(42px, 5vw, 70px); font-weight: 400; line-height: 1; letter-spacing: -.05em; }
.result-title-row small { color: var(--carmine); font-family: var(--mono); font-size: 7px; letter-spacing: .12em; }
.result-posture { min-width: 145px; padding: 14px; color: var(--brass-light); border: 1px solid var(--brass); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.result-posture strong { margin-top: 8px; display: block; font-family: var(--serif); font-size: 18px; font-weight: 400; letter-spacing: 0; }
.result-content { padding: clamp(35px, 5vw, 72px); }
.result-executive { display: grid; grid-template-columns: 1fr .36fr; gap: clamp(45px, 8vw, 120px); }
.result-read h2, .result-section h2 { margin: 0 0 21px; font-family: var(--serif); font-size: clamp(30px, 3.5vw, 48px); font-weight: 400; letter-spacing: -.04em; }
.result-read > p { color: #555149; font-family: var(--serif); font-size: 19px; line-height: 1.65; }
.result-signals { border-top: 1px solid var(--ink); }
.result-signal { padding: 20px 0; border-bottom: 1px solid var(--line); }
.result-signal span { color: var(--muted); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.result-signal strong { margin-top: 5px; display: block; font-family: var(--serif); font-size: 22px; font-weight: 400; }
.result-scores { margin: 50px 0; display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid var(--ink); }
.result-score { padding: 24px; display: grid; grid-template-columns: 1fr auto; gap: 14px; }
.result-score:not(:last-child) { border-right: 1px solid var(--line); }
.result-score span { color: var(--muted); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; text-transform: uppercase; }
.result-score strong { font-family: var(--serif); font-size: 43px; font-weight: 400; line-height: 1; }
.result-score .meter { grid-column: 1 / -1; height: 3px; background: rgba(21,21,18,.12); }
.result-score .meter i { display: block; width: var(--meter, 0%); height: 100%; background: var(--ink); transition: width 1s var(--ease); }
.meter-band-0 { width: 0% !important; }.meter-band-5 { width: 5% !important; }.meter-band-10 { width: 10% !important; }.meter-band-15 { width: 15% !important; }.meter-band-20 { width: 20% !important; }.meter-band-25 { width: 25% !important; }.meter-band-30 { width: 30% !important; }.meter-band-35 { width: 35% !important; }.meter-band-40 { width: 40% !important; }.meter-band-45 { width: 45% !important; }.meter-band-50 { width: 50% !important; }.meter-band-55 { width: 55% !important; }.meter-band-60 { width: 60% !important; }.meter-band-65 { width: 65% !important; }.meter-band-70 { width: 70% !important; }.meter-band-75 { width: 75% !important; }.meter-band-80 { width: 80% !important; }.meter-band-85 { width: 85% !important; }.meter-band-90 { width: 90% !important; }.meter-band-95 { width: 95% !important; }.meter-band-100 { width: 100% !important; }
.result-score.danger .meter i { background: var(--carmine); }
.result-score.gold .meter i { background: var(--brass); }
.result-section { padding: 55px 0; border-top: 1px solid var(--ink); }
.result-section-head { display: grid; grid-template-columns: 70px 1fr .7fr; gap: 30px; align-items: start; }
.result-section-head > span { color: var(--carmine); font-family: var(--mono); font-size: 8px; }
.result-section-head p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.result-grid { margin-top: 38px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.result-card { min-height: 210px; padding: 25px; background: var(--paper); }
.result-card > span { color: var(--carmine); font-family: var(--mono); font-size: 7px; letter-spacing: .09em; text-transform: uppercase; }
.result-card h3 { margin: 35px 0 10px; font-family: var(--serif); font-size: 22px; font-weight: 400; }
.result-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.result-card .card-tag { margin-top: 22px; display: inline-block; padding: 4px 7px; color: var(--ink); border: 1px solid var(--line); font-family: var(--mono); font-size: 6px; }
.result-graph { min-height: 520px; margin-top: 38px; position: relative; overflow: hidden; border: 1px solid var(--line); background: var(--bone); }
.result-graph svg { width: 100%; height: 520px; }
.result-list { margin: 35px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.result-list li { padding: 23px 0; display: grid; grid-template-columns: 55px 1fr minmax(100px, .35fr); gap: 25px; border-bottom: 1px solid var(--line); }
.result-list li > span { color: var(--carmine); font-family: var(--mono); font-size: 8px; }
.result-list h3 { margin: 0 0 6px; font-family: var(--serif); font-size: 21px; font-weight: 400; }
.result-list p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.result-list aside { color: var(--muted); font-family: var(--mono); font-size: 7px; line-height: 1.7; text-transform: uppercase; }
.assumptions-box { margin-top: 35px; padding: 25px; border-left: 3px solid var(--brass); background: var(--bone-2); }
.assumptions-box h3 { margin: 0 0 15px; font-family: var(--serif); font-size: 21px; font-weight: 400; }
.assumptions-box ul { margin: 0; padding-left: 18px; color: var(--muted); font-size: 12px; line-height: 1.8; }
.result-footer { padding: 28px clamp(30px, 5vw, 72px); display: flex; justify-content: space-between; color: rgba(241,238,229,.4); background: var(--ink); font-family: var(--mono); font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }

/* Legal */
.legal-page { color: var(--ink); background: var(--paper); }
.legal-header { position: static; color: var(--ink); border-bottom: 1px solid var(--line); }
.legal-main { width: min(920px, calc(100vw - 48px)); margin: 0 auto; padding: 100px 0 150px; }
.legal-main .eyebrow { color: var(--carmine); }
.legal-main h1 { margin: 25px 0 15px; font-family: var(--serif); font-size: clamp(55px, 8vw, 90px); font-weight: 400; letter-spacing: -.055em; }
.legal-updated { color: var(--muted); font-family: var(--mono); font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
.legal-content { margin-top: 75px; }
.legal-content section { padding: 35px 0; display: grid; grid-template-columns: 60px 1fr; gap: 35px; border-top: 1px solid var(--line); }
.legal-content section > span { color: var(--carmine); font-family: var(--mono); font-size: 8px; }
.legal-content h2 { margin: -7px 0 16px; font-family: var(--serif); font-size: 28px; font-weight: 400; }
.legal-content p, .legal-content li { color: var(--muted); font-size: 14px; line-height: 1.75; }
.legal-content p:first-of-type { margin-top: 0; }
.legal-content a { color: var(--carmine); text-decoration: underline; text-underline-offset: 3px; }

@keyframes pulse { 50% { opacity: .35; } }
@keyframes marquee { to { transform: translateX(-50%); } }
@keyframes panelIn { from { opacity: 0; transform: translateY(8px); } }
@keyframes loadingSpin { to { transform: rotate(360deg); } }

@media (max-width: 1100px) {
  :root { --shell: min(100% - 48px, 1100px); }
  .hero { grid-template-columns: 1fr 1fr; gap: 40px; }
  .hero h1 { font-size: clamp(50px, 5.5vw, 68px); }
  .topology { min-height: 330px; }
  .instrument-heading { grid-template-columns: 1fr; }
  .brief-window { grid-template-columns: 175px 1fr; }
  .brief-bottom-grid { gap: 15px; }
  .membership-grid { grid-template-columns: 80px 1fr .75fr; gap: 45px; }
  .method-step { grid-template-columns: .5fr 2.5fr; }
  .result-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 860px) {
  :root { --shell: calc(100vw - 36px); }
  .site-header { background: var(--ink); }
  .site-header.is-scrolled { background: var(--bone); }
  .header-inner { min-height: 72px; }
  .nav-toggle { position: relative; width: 38px; height: 38px; display: block; cursor: pointer; }
  .nav-toggle span:not(.sr-only) { position: absolute; left: 8px; width: 22px; height: 1px; background: currentColor; transition: transform .25s ease, top .25s ease; }
  .nav-toggle span:nth-child(2) { top: 14px; }
  .nav-toggle span:nth-child(3) { top: 22px; }
  .nav-toggle[aria-expanded="true"] span:nth-child(2) { top: 18px; transform: rotate(45deg); }
  .nav-toggle[aria-expanded="true"] span:nth-child(3) { top: 18px; transform: rotate(-45deg); }
  .site-nav { position: fixed; z-index: -1; top: 71px; right: 0; bottom: 0; left: 0; padding: 55px 25px; display: flex; flex-direction: column; align-items: stretch; gap: 0; color: var(--bone); background: var(--ink); transform: translateX(100%); transition: transform .35s var(--ease); }
  .site-nav.is-open { transform: none; }
  .site-nav a { padding: 22px 0; border-bottom: 1px solid var(--line-light); font-family: var(--serif); font-size: 28px; font-weight: 400; letter-spacing: -.02em; text-transform: none; }
  .site-nav .nav-studio { margin-top: 30px; padding: 18px; border: 1px solid var(--bone); font-family: var(--sans); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
  .hero { min-height: auto; padding-top: 145px; grid-template-columns: 1fr; }
  .hero::after { left: 35%; }
  .hero-copy { max-width: 690px; }
  .hero h1 { font-size: clamp(50px, 10vw, 76px); }
  .hero-instrument { width: min(680px, 100%); margin-top: 30px; }
  .thesis-body, .instrument-heading, .method-body { margin-left: 0; }
  .principles { grid-template-columns: 1fr; }
  .principle { min-height: 260px; }
  .principle h3 { margin-top: 50px; }
  .brief-window { min-height: 620px; grid-template-columns: 1fr; }
  .brief-rail { padding: 15px; display: block; overflow: hidden; }
  .brief-brand, .brief-classification { display: none; }
  .brief-rail nav { margin: 0; display: flex; overflow-x: auto; }
  .brief-rail button { width: auto; min-width: max-content; border-left: 0; border-bottom: 2px solid transparent; }
  .brief-rail button.is-active { border-bottom-color: var(--carmine); }
  .method-step { grid-template-columns: 80px 1fr; gap: 30px; }
  .method-step > div:last-child { grid-template-columns: 80px 1fr; }
  .method-step p { grid-column: 2; }
  .membership-grid { grid-template-columns: 1fr; }
  .membership-grid .section-index { display: none; }
  .membership-card { max-width: 550px; }
  .membership-heading { margin-left: 0; grid-template-columns: 1fr; gap: 30px; }
  .pricing-grid { grid-template-columns: 1fr; }
  .pricing-grid .membership-card { max-width: none; }
  .pricing-grid .membership-card.featured { transform: none; }
  .access-grid { grid-template-columns: 1fr; gap: 65px; }
  .access-copy { max-width: 600px; }
  .footer-top { grid-template-columns: 1fr auto; }
  .footer-top > p { display: none; }
  .footer-bottom { grid-template-columns: 1fr auto; }
  .footer-bottom p:last-child { display: none; }
  .unlock-card { grid-template-columns: 1fr; }
  .unlock-copy { border-right: 0; border-bottom: 1px solid var(--line-light); }
  .unlock-copy h1 { margin-top: 45px; }
  .analysis-layout { width: 100%; max-width: 100%; grid-template-columns: minmax(0, 1fr); }
  .studio-rail {
    min-width: 0;
    max-width: 100%;
    padding: 10px 18px;
    display: block;
    border-right: 0;
    border-bottom: 1px solid var(--line-light);
  }
  .rail-session, .rail-privacy { display: none; }
  .rail-nav { min-width: 0; max-width: 100%; margin: 0; display: flex; gap: 5px; overflow-x: auto; }
  .rail-nav button {
    width: auto;
    min-height: 38px;
    padding: 0 14px;
    border-left: 0;
    border-bottom: 2px solid transparent;
  }
  .rail-nav button.is-active { border-color: transparent; border-bottom-color: var(--carmine); }
  .report-history, .history-item { min-width: 0; max-width: 100%; }
  .report-history { margin: 10px 0 5px; max-height: 180px; }
  .studio-workspace, .analysis-result { min-width: 0; max-width: 100%; }
  .analysis-heading { grid-template-columns: 1fr; gap: 30px; }
  .form-section { grid-template-columns: 100px 1fr; gap: 25px; }
  .decision-submit { padding-left: 125px; }
  .result-executive { grid-template-columns: 1fr; }
  .result-signals { display: grid; grid-template-columns: repeat(3, 1fr); }
  .result-signal:not(:last-child) { margin-right: 15px; border-right: 1px solid var(--line); }
  .result-section-head { grid-template-columns: 50px 1fr; }
  .result-section-head p { grid-column: 2; }
}

@media (max-width: 600px) {
  .hero { padding-top: 125px; padding-bottom: 75px; }
  .hero h1 { font-size: clamp(47px, 13vw, 64px); }
  .hero-deck { margin-top: 31px; font-size: 19px; }
  .hero-actions { align-items: stretch; flex-direction: column; gap: 22px; }
  .hero-actions .button { width: 100%; justify-content: space-between; }
  .hero-proof { margin-top: 40px; display: grid; gap: 7px; }
  .hero-proof span::after { display: none; }
  .topology { min-height: 295px; }
  .topology-label { max-width: 130px; font-size: 10px; }
  .label-decision { left: 27%; }
  .instrument-scoreboard > div { padding: 13px 9px; }
  .instrument-scoreboard strong { font-size: 26px; }
  .instrument-note { grid-template-columns: 70px 1fr; }
  .section { padding-block: 90px; }
  .section-index { margin-bottom: 45px; }
  .display { font-size: clamp(45px, 14vw, 68px); }
  .thesis-grid { margin-top: 45px; grid-template-columns: 1fr; gap: 25px; }
  .principles { margin-top: 65px; }
  .instrument-heading { margin-bottom: 50px; }
  .brief-window { width: calc(100% + 36px); margin-left: -18px; border-inline: 0; }
  .brief-topbar { padding: 0 16px; }
  .brief-topbar > span:first-child { max-width: 160px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .brief-panel { padding: 28px 18px; }
  .decision-stamp { display: none; }
  .score-grid { grid-template-columns: 1fr; }
  .score-grid article:not(:last-child) { margin-right: 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .brief-bottom-grid { grid-template-columns: 1fr; }
  .brief-bottom-grid article { min-height: auto; }
  .move-list li { grid-template-columns: 30px 1fr; }
  .move-list > li > strong { grid-column: 2; text-align: left; }
  .trigger-row { grid-template-columns: 1fr 1fr; padding-block: 15px; gap: 8px; }
  .trigger-row > span:nth-child(3), .trigger-row > span:nth-child(4) { font-size: 9px; }
  .trigger-row.head { display: none; }
  .method-step { grid-template-columns: 1fr; }
  .method-step > div:last-child { grid-template-columns: 70px 1fr; }
  .method-num { font-size: 29px; }
  .method-assurance { padding: 25px; grid-template-columns: 40px 1fr; }
  .assurance-mark { width: 38px; height: 38px; }
  .assurance-label { grid-column: 2; text-align: left; }
  .membership-card { padding: 25px; }
  .access-form { padding: 27px 20px; }
  .form-grid.two { grid-template-columns: 1fr; gap: 0; }
  .form-consent { grid-template-columns: 1fr; }
  .form-consent .button { width: 100%; justify-content: space-between; }
  .footer-top { padding-bottom: 40px; grid-template-columns: 1fr; gap: 30px; }
  .footer-studio { justify-self: start; }
  .footer-bottom { grid-template-columns: 1fr; gap: 17px; }
  .footer-bottom div { justify-content: flex-start; flex-wrap: wrap; }
  .studio-header { padding: 0 18px; }
  .studio-header-meta { display: none; }
  .unlock-view { padding: 30px 15px; }
  .unlock-copy, .unlock-form-wrap { padding: 35px 25px; }
  .unlock-copy h1 { font-size: 51px; }
  .workspace-topbar { padding: 0 18px; }
  .workspace-topbar { gap: 8px; overflow: hidden; }
  .workspace-topbar p { max-width: 112px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .workspace-actions { min-width: 0; gap: 6px; }
  .workspace-action { padding-inline: 8px; white-space: nowrap; }
  .analysis-form-panel { padding: 50px 20px; }
  .form-section { grid-template-columns: 1fr; }
  .form-fields.two { grid-template-columns: 1fr; }
  .decision-submit { padding-left: 0; align-items: stretch; flex-direction: column; gap: 25px; }
  .decision-submit .button { width: 100%; justify-content: space-between; }
  .result-masthead, .result-content { padding-inline: 20px; }
  .result-title-row { grid-template-columns: 1fr; }
  .result-meta { gap: 9px 18px; flex-wrap: wrap; }
  .result-title-row h1, .result-list h3, .result-list p { overflow-wrap: anywhere; }
  .result-posture { width: max-content; }
  .result-signals, .result-scores { grid-template-columns: 1fr; }
  .result-signal:not(:last-child), .result-score:not(:last-child) { margin-right: 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .result-section-head { grid-template-columns: 1fr; }
  .result-section-head p { grid-column: 1; }
  .result-grid { grid-template-columns: 1fr; }
  .result-list li { grid-template-columns: 35px 1fr; }
  .result-list aside { grid-column: 2; }
  .result-footer { flex-direction: column; gap: 10px; }
  .legal-main { padding-top: 70px; }
  .legal-content section { grid-template-columns: 1fr; gap: 15px; }
}

@media print {
  .studio-header, .studio-rail, .workspace-topbar, .result-footer { display: none !important; }
  .analysis-layout { display: block; }
  .analysis-result { color: #111; background: #fff; }
  .result-card { background: #fff; break-inside: avoid; }
  .result-section { break-inside: avoid; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}
