:root{
  --bg:#090909;
  --ink:#efefec;
  --muted:#8d8d89;
  --faint:#242424;
  --line:#303030;
  --cold:rgba(188,214,235,.11);
  --panel:rgba(9,9,9,.91);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}
body{font-family:"Courier New",Courier,monospace;overflow-x:hidden}
button,a{font:inherit;color:inherit}
button{appearance:none;border:0;background:none}
button:focus-visible,a:focus-visible{outline:1px solid var(--ink);outline-offset:5px}
.spotlight{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(420px circle at var(--x,50%) var(--y,44%),var(--cold),transparent 68%);transition:opacity .25s ease}
.grain{position:fixed;inset:-50%;z-index:1;pointer-events:none;opacity:.025;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='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");animation:grain .7s steps(2) infinite}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(2%,-1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,1%)}100%{transform:translate(0,0)}}
.site-shell{position:relative;z-index:2;min-height:100svh;width:min(100%,1180px);margin:0 auto;padding:clamp(22px,4vw,48px);display:grid;grid-template-rows:auto 1fr auto auto auto}
.micro-head{display:flex;gap:14px;align-items:center;font-size:10px;letter-spacing:.16em;color:#777;text-transform:uppercase;min-height:26px}
.braille{color:#555;letter-spacing:.08em}
.hero{position:relative;min-height:58svh;display:grid;place-items:center;text-align:center;padding:8vh 0 4vh}
.eyebrow{position:absolute;top:clamp(24px,5vh,66px);left:50%;transform:translateX(-50%);margin:0;white-space:nowrap;font-size:clamp(10px,1vw,12px);letter-spacing:.16em;color:#777}
.mark-stack{position:relative;width:min(86vw,760px);height:clamp(210px,34vw,390px);display:grid;place-items:center;user-select:none}
.mark{position:absolute;line-height:.82;letter-spacing:-.075em;white-space:nowrap}
.mark.brand{font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:clamp(52px,10vw,126px);color:#ddd;opacity:.86}
.mark.brand.alt{transform:translateY(25%);opacity:.05;filter:blur(.2px)}
.mark.ghost{font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:clamp(92px,18vw,230px);color:#fff;opacity:.018;transform:rotate(-4deg)}
.mark.ghost-b{transform:rotate(3deg) translateY(10%);opacity:.012}
.mark sup{font-size:.18em;vertical-align:top;margin-left:.06em}
.mission{position:absolute;bottom:clamp(12px,4vh,50px);margin:0;font-size:clamp(11px,1.4vw,15px);font-weight:400;letter-spacing:.2em;color:#b8b8b2}
.nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:760px;width:100%;margin:0 auto}
.nav button{cursor:pointer;padding:18px 10px;font-size:clamp(12px,1.4vw,15px);letter-spacing:.08em;border-right:1px solid var(--line);transition:background .2s,color .2s}
.nav button:last-child{border-right:0}.nav button:hover,.nav button.active{background:#efefec;color:#090909}.nav button span{color:#777;margin-right:10px}.nav button:hover span,.nav button.active span{color:#3e3e3e}.nav sup{font-size:.65em;margin-left:3px}
.imprint-link{justify-self:center;margin:13px 0 0;padding:6px 10px;cursor:pointer;font-size:9px;letter-spacing:.18em;color:#70706c;text-decoration:underline;text-underline-offset:3px}
footer{text-align:center;color:#454542;font-size:9px;letter-spacing:.12em;margin-top:16px;padding-bottom:max(4px,env(safe-area-inset-bottom))}
.panel{position:absolute;z-index:5;left:clamp(22px,4vw,48px);right:clamp(22px,4vw,48px);top:50%;transform:translateY(-47%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .34s ease,transform .34s ease,visibility .34s;min-height:330px;display:grid;place-items:center}
.panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(-50%)}
.panel-inner{position:relative;width:min(100%,820px);min-height:300px;border:1px solid rgba(255,255,255,.12);background:var(--panel);backdrop-filter:blur(7px);padding:clamp(24px,5vw,54px);box-shadow:0 20px 80px rgba(0,0,0,.38)}
.close{position:absolute;top:14px;right:16px;width:34px;height:34px;cursor:pointer;font-size:24px;font-weight:200;color:#777}
.panel-kicker{margin:0 0 32px;font-size:9px;letter-spacing:.2em;color:#686864;text-transform:uppercase}
.case-wrap{overflow:hidden;touch-action:pan-y}.case-track{display:flex;transition:transform .38s cubic-bezier(.2,.7,.2,1)}
.case{flex:0 0 100%;display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(72px,.55fr)) minmax(70px,.42fr);align-items:end;gap:14px;min-height:170px}
.case-label{font-size:9px;letter-spacing:.17em;color:#656561;margin-bottom:9px}.case-name{font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:clamp(28px,5vw,58px);letter-spacing:-.04em;line-height:.95}.cell{border-top:1px solid var(--line);padding-top:10px;min-height:48px;font-size:11px;letter-spacing:.08em;color:#bdbdb8}.cell small{display:block;color:#595956;font-size:8px;letter-spacing:.14em;margin-bottom:7px}.view{display:inline-block;border-bottom:1px solid #777;padding-bottom:4px;text-decoration:none;cursor:pointer}.view.disabled{opacity:.45;cursor:default}
.carousel-nav{display:flex;justify-content:space-between;align-items:center;margin-top:34px;border-top:1px solid var(--line);padding-top:14px}.carousel-nav button{cursor:pointer;color:#8a8a85;padding:6px 8px;font-size:16px}.carousel-pos{font-size:9px;letter-spacing:.16em;color:#5f5f5a}
.contact-grid{display:grid;gap:26px;max-width:620px}.contact-grid h2,.imprint h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(30px,6vw,62px);line-height:.95;letter-spacing:-.05em;margin:0}.contact-grid a{width:max-content;font-size:clamp(13px,2vw,18px);letter-spacing:.08em;text-decoration:none;border-bottom:1px solid #666;padding-bottom:4px}.contact-grid p,.imprint p{color:#777;line-height:1.6;font-size:11px;max-width:600px}.imprint .legal{margin-top:28px;border-top:1px solid var(--line);padding-top:18px;color:#9b9b96;text-transform:uppercase;letter-spacing:.08em}
.hero.dim{opacity:.16;filter:blur(.4px);transition:opacity .34s ease,filter .34s ease}.hero{transition:opacity .34s ease,filter .34s ease}
@media(max-width:680px){.site-shell{padding:22px 18px}.micro-head{font-size:8px}.hero{min-height:62svh}.eyebrow{white-space:normal;width:100%;line-height:1.5}.nav button{padding:17px 4px;font-size:11px}.nav button span{display:block;margin:0 0 5px;font-size:8px}.panel{left:18px;right:18px;top:46%}.panel-inner{padding:42px 18px 24px}.case{grid-template-columns:1fr 1fr;gap:14px}.case-title{grid-column:1/-1}.case .cell:last-child{grid-column:2}.case-name{font-size:36px}.mission{bottom:24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.grain{display:none}}
