:root {
  --ink:#0b0b0a; --asphalt:#181715; --rule:#3a3733; --bone:#efe8da;
  --muted:#aaa296; --red:#ff3b2f; --acid:#d7ff3c; --file-ink:#1a1917;
  --display:"Archivo",Impact,"Arial Narrow",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
section[id] { scroll-margin-top:80px; }
body { margin:0; background:var(--ink); color:var(--bone); font:400 17px/1.55 "Archivo",Arial,sans-serif; }
body::before { content:""; position:fixed; inset:0; z-index:10; pointer-events:none; opacity:.08; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E"); }
a { color:inherit; } a:hover { color:var(--red); }
button { font:inherit; }
button:focus-visible,a:focus-visible { outline:3px solid var(--acid); outline-offset:5px; }
h1,h2,h3,p,blockquote { margin-top:0; }
h1,h2,h3 { font-family:var(--display); font-variation-settings:"wdth" 62,"wght" 900; letter-spacing:-.035em; }
h2 { font-size:clamp(3rem,7vw,6.5rem); line-height:.91; }
h3 { font-size:clamp(2rem,3.6vw,3.2rem); line-height:.98; }
em { font-style:normal; color:var(--red); }
.container { width:min(100% - clamp(32px,8vw,96px),1320px); margin-inline:auto; }
.section { padding-block:clamp(96px,12vw,176px); }
.skip-link { position:fixed; top:-70px; left:16px; z-index:100; background:var(--acid); color:var(--ink); padding:10px; }
.skip-link:focus { top:16px; }
.site-header { height:64px; padding-inline:clamp(16px,4vw,48px); position:sticky; top:0; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:24px; background:rgba(11,11,10,.96); backdrop-filter:blur(12px); border-bottom:1px solid var(--rule); }
.wordmark { text-decoration:none; font:800 19px/1 var(--display); font-variation-settings:"wdth" 75,"wght" 800; letter-spacing:-.045em; white-space:nowrap; }
.site-nav { display:flex; align-items:center; gap:clamp(14px,2vw,36px); }
.site-nav a { font-size:14px; font-weight:700; text-decoration:none; }
.site-nav .nav-status { border:2px solid var(--red); padding:7px 13px; color:var(--bone); }
.site-nav .nav-status:hover { background:var(--red); color:var(--ink); }
.menu-toggle { display:none; }
.hero { min-height:calc(100svh - 64px); display:grid; grid-template-columns:clamp(110px,13vw,190px) minmax(0,1fr); padding-right:clamp(16px,4vw,48px); }
.height-chart { border-right:1px solid var(--rule); position:relative; min-height:calc(100svh - 64px); font:11px var(--mono); color:var(--muted); }
.chart-ruler { position:absolute; inset:28px 18px 28px 52px; background:repeating-linear-gradient(to bottom,transparent 0 23px,rgba(239,232,218,.65) 23px 24px); }
.chart-ruler::after { content:""; position:absolute; left:0; top:0; bottom:0; width:80px; background:repeating-linear-gradient(to bottom,transparent 0 119px,var(--bone) 119px 121px); }
.chart-label { position:absolute; left:12px; background:var(--ink); padding:2px 3px; white-space:nowrap; }
.chart-label-1 { top:9%; }.chart-label-2 { top:30%; }.chart-label-3 { top:51%; }.chart-label-4 { top:72%; }.chart-label-5 { top:92%; }
.you-marker { position:absolute; right:6px; top:23%; color:var(--red); font-size:13px; font-weight:700; animation:marker-drop .7s cubic-bezier(.2,.9,.3,1.15) both; }
.you-marker::before { content:"▶"; padding-right:5px; }
.hero-content { padding:clamp(42px,4.4vw,70px) 0 48px clamp(24px,3vw,50px); display:flex; flex-direction:column; justify-content:space-between; }
.hero h1 { font-size:clamp(4rem,13.1vw,12rem); line-height:.83; letter-spacing:-.045em; word-spacing:.07em; max-width:1180px; margin:0 0 36px; text-wrap:balance; }
.hero h1 span { display:block; }
.hero-bottom { display:flex; align-items:end; justify-content:space-between; gap:36px; }
.hero-message { max-width:675px; }
.hero-message p { font-size:clamp(18px,1.65vw,23px); line-height:1.45; color:var(--muted); margin-bottom:30px; }
.hero-actions { display:flex; align-items:center; gap:30px; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:space-between; min-height:60px; padding:13px 25px; text-decoration:none; font-family:var(--display); font-variation-settings:"wdth" 75,"wght" 800; font-size:20px; line-height:1; transition:transform .15s,box-shadow .15s; }
.button-primary { background:var(--bone); color:var(--ink); box-shadow:6px 6px 0 var(--red); gap:26px; }
.button-primary:hover { color:var(--ink); transform:translate(3px,3px); box-shadow:3px 3px 0 var(--red); }
.button small { font:11px var(--mono); font-variation-settings:normal; letter-spacing:0; border-left:1px solid rgba(0,0,0,.4); padding-left:16px; }
.text-link { display:inline-block; text-decoration:underline; text-underline-offset:7px; text-decoration-thickness:1px; font-size:15px; font-weight:700; white-space:nowrap; }
.text-link span { margin-left:5px; }
.price-stamp { flex:none; width:168px; height:168px; border:5px solid var(--red); box-shadow:inset 0 0 0 6px var(--ink),inset 0 0 0 8px var(--red); border-radius:50%; color:var(--red); transform:rotate(-8deg); display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; text-transform:uppercase; line-height:1; }
.price-stamp strong { font-family:var(--display); font-variation-settings:"wdth" 62,"wght" 900; font-size:70px; letter-spacing:-.08em; }
.price-stamp span { font:600 9px var(--mono); letter-spacing:.02em; }
.price-stamp .stamp-top { transform:rotate(-8deg); margin-bottom:3px; }.price-stamp .stamp-bottom { transform:rotate(8deg); }
.procedure { background:var(--asphalt); }
.procedure h2 { max-width:860px; margin-bottom:70px; }.procedure h2 em { display:block; }
.procedure-list { list-style:none; margin:0; padding:0; }
.procedure-list li { display:grid; grid-template-columns:2fr 2.3fr 4fr; gap:30px; align-items:start; border-top:2px solid var(--bone); padding:44px 0; }
.procedure-list li:last-child { border-bottom:2px solid var(--bone); }
.step-number { font:900 clamp(88px,10vw,152px)/.75 var(--display); font-variation-settings:"wdth" 62,"wght" 900; color:transparent; -webkit-text-stroke:2px var(--red); transition:color .2s; }
.procedure-list li:hover .step-number,.procedure-list li:focus-within .step-number { color:var(--red); }
.procedure-list h3 { margin:0; }.procedure-list p { font-size:18px; line-height:1.55; margin:0; max-width:490px; color:var(--muted); }
.exhibit-grid { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr); gap:clamp(48px,7vw,110px); align-items:start; }
.exhibit-intro { position:sticky; top:112px; }
.exhibit-intro h2 { margin-bottom:24px; }.exhibit-intro p { font-size:20px; color:var(--muted); max-width:310px; margin-bottom:34px; }
.case-file { position:relative; background:var(--bone); color:var(--file-ink); padding:clamp(28px,4.5vw,64px); transform:rotate(-1deg); box-shadow:12px 12px 0 #000; font-family:"Archivo",Arial,sans-serif; }
.case-header { font:12px var(--mono); border-bottom:1px solid rgba(0,0,0,.3); padding-bottom:15px; margin-bottom:48px; }.case-header span { color:var(--red); padding-inline:5px; }
.case-file blockquote { font-family:Georgia,serif; font-size:clamp(27px,3.1vw,46px); line-height:1.14; letter-spacing:-.025em; margin:0 0 57px; max-width:720px; }
.verdict-stamp { position:absolute; top:71px; right:34px; border:5px double #db281e; padding:6px 10px; color:#db281e; transform:rotate(-7deg); text-align:center; line-height:1; max-width:260px; }
.verdict-stamp strong { font:900 29px/.95 var(--display); font-variation-settings:"wdth" 62,"wght" 900; display:block; }.verdict-stamp span { font:600 11px var(--mono); letter-spacing:.03em; }
.opinions { display:grid; grid-template-columns:1fr 1fr; border-top:3px solid var(--file-ink); padding-top:30px; }
.opinions section { padding-right:27px; }.opinions section+section { border-left:1px solid var(--file-ink); padding-left:27px; padding-right:0; }
.opinions h3 { font-size:28px; line-height:1; margin-bottom:14px; }.opinions p { font-size:16px; line-height:1.58; margin:0; }
.sentence { margin:38px 0 0; padding:16px 20px; background:var(--file-ink); color:var(--bone); font:600 13px/1.4 var(--mono); }
.bench { border-top:1px solid var(--rule); }.bench h2 { margin-bottom:64px; }
.bench-grid { display:grid; grid-template-columns:1fr 1fr; gap:0; }
.bench-grid>div { padding-right:clamp(35px,6vw,85px); }
.bench-grid>div+div { border-left:2px solid var(--red); padding-left:clamp(35px,6vw,85px); padding-right:0; }
.bench-grid h3 { max-width:440px; margin-bottom:22px; }.bench-grid p { font-size:18px; color:var(--muted); max-width:470px; }
.bench-note { font:12px/1.6 var(--mono); color:var(--muted); border-top:1px solid var(--rule); margin:72px 0 0; padding-top:20px; }
.closed { background:var(--red); color:var(--ink); padding-block:clamp(95px,12vw,180px); }
.closed-grid { display:grid; grid-template-columns:1.3fr .7fr; gap:70px; align-items:end; }
.closed h2 { font-size:clamp(4rem,8.4vw,9rem); max-width:900px; margin-bottom:30px; }
.closed h2 em { color:var(--ink); text-decoration:underline; text-decoration-thickness:.06em; text-underline-offset:.08em; }
.closed p { font-size:20px; line-height:1.45; max-width:590px; }
.closed-action { text-align:right; }
.closed-action button { background:var(--ink); color:var(--bone); border:0; min-height:72px; padding:14px 28px; width:min(100%,380px); display:flex; align-items:center; justify-content:space-between; text-align:left; font:800 27px var(--display); font-variation-settings:"wdth" 75,"wght" 800; cursor:not-allowed; }
.closed-action p { font:12px var(--mono); margin:13px 0 30px; }
.closed-action a { font-weight:700; font-size:15px; text-decoration:underline; text-underline-offset:5px; }.closed-action a:hover { color:var(--bone); }
.site-footer { padding:42px 0 60px; }.site-footer .container { display:grid; grid-template-columns:1fr 1.3fr 1fr; gap:30px; align-items:start; }
.site-footer p,.site-footer a { font:12px/1.7 var(--mono); color:var(--muted); margin:0; }.site-footer p:first-child { color:var(--bone); }.site-footer a { text-align:right; }.site-footer a:hover { color:var(--red); }
@keyframes marker-drop { from { transform:translateY(-110px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@media(max-width:900px) {
  .site-header { height:56px; }.wordmark { font-size:17px; }
  .menu-toggle { display:block; background:none; border:0; color:var(--bone); font:700 15px var(--mono); cursor:pointer; }
  .site-nav { display:none; position:fixed; inset:56px 0 auto; min-height:calc(100svh - 56px); padding:35px 24px; background:var(--asphalt); flex-direction:column; align-items:stretch; justify-content:center; gap:24px; }.site-nav.is-open { display:flex; }
  .site-nav a { font:900 clamp(32px,7vw,58px)/1 var(--display); font-variation-settings:"wdth" 62,"wght" 900; }.site-nav .nav-status { font-size:28px; width:max-content; margin-top:20px; }
  .hero { display:block; padding:0 16px; min-height:0; }.height-chart { height:62px; min-height:0; border-right:0; border-bottom:1px solid var(--rule); margin:0 -16px; padding:0 16px; }
  .chart-ruler { inset:auto 16px 8px 16px; height:12px; background:repeating-linear-gradient(to right,transparent 0 17px,var(--bone) 17px 18px); }.chart-ruler::after { display:none; }
  .chart-label { display:none; }.chart-label-1,.chart-label-5 { display:block; top:5px; }.chart-label-1 { left:auto; right:16px; font-size:0; }.chart-label-1::after { content:"Total"; font-size:11px; }.chart-label-5 { left:16px; }
  .you-marker { right:18%; top:23px; font-size:11px; }.you-marker::before { content:"▼"; }
  .hero-content { padding:48px 0 85px; }.hero h1 { font-size:clamp(56px,11vw,104px); margin-bottom:45px; }.hero-bottom { align-items:end; }
  .price-stamp { width:118px; height:118px; }.price-stamp strong { font-size:49px; }.price-stamp span { font-size:6px; }
  .procedure-list li { grid-template-columns:120px 1fr; gap:20px; }.procedure-list p { grid-column:2; }
  .exhibit-grid { grid-template-columns:1fr; gap:44px; }.exhibit-intro { position:static; }.exhibit-intro p { max-width:560px; }.case-file { max-width:760px; }
  .closed-grid { gap:35px; }.site-footer .container { grid-template-columns:1fr 1fr; }.site-footer a { text-align:left; }
}
@media(max-width:620px) {
  .wordmark { font-size:15px; }.hero h1 { font-size:clamp(58px,14vw,79px); line-height:.86; }.hero-bottom { display:block; }.hero-message p { font-size:18px; }
  .hero-actions { display:flex; align-items:flex-start; flex-direction:column; gap:27px; }.price-stamp { margin:55px 12px 0 auto; }
  .procedure h2 { margin-bottom:50px; }.procedure-list li { display:block; padding:36px 0; }.step-number { display:block; font-size:96px; margin-bottom:17px; }.procedure-list h3 { margin-bottom:14px; }.procedure-list p { font-size:17px; }
  .case-file { transform:none; box-shadow:6px 6px 0 #000; margin-right:6px; padding:26px 20px; }.case-header { font-size:10px; margin-bottom:80px; }.case-file blockquote { font-size:28px; margin-bottom:32px; }
  .verdict-stamp { top:60px; right:22px; border-width:3px; }.verdict-stamp strong { font-size:22px; }.verdict-stamp span { font-size:8px; }
  .opinions { display:block; padding-top:24px; }.opinions section { padding:0 0 24px; }.opinions section+section { border-left:0; border-top:1px dashed var(--file-ink); padding:24px 0 0; }.opinions h3 { font-size:27px; }.sentence { font-size:11px; }
  .bench-grid { display:block; }.bench-grid>div { padding:0 0 38px; }.bench-grid>div+div { padding:38px 0 0; border-left:0; border-top:2px solid var(--red); }.bench-note { margin-top:30px; }
  .closed-grid { display:block; }.closed h2 { font-size:clamp(64px,16vw,96px); }.closed p { font-size:18px; }.closed-action { text-align:left; margin-top:55px; }.closed-action button { width:100%; font-size:23px; }
  .site-footer .container { display:block; }.site-footer p,.site-footer a { display:block; margin-bottom:22px; }.site-footer a { text-align:left; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; } }
