/* STHEREON · Hero */
body{margin:0;background:#F2F2F2}
a{color:#0A0A0A}a:hover{color:#0A0A0A}
.sth{--u:min(calc(100vw / 1440),calc(100vh / 960));position:relative;width:100%;height:100vh;min-height:400px;overflow:hidden;background:#F2F2F2;color:#0A0A0A;font-family:'JetBrains Mono',ui-monospace,Menlo,monospace;font-weight:400;-webkit-font-smoothing:antialiased;box-sizing:border-box}
.sth *,.sth *::before,.sth *::after{box-sizing:border-box}
.sth a{text-decoration:none;color:#0A0A0A}
.sth a:focus-visible{outline:2px solid #0A0A0A;outline-offset:3px}
.sth-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.sth-hero{position:absolute;left:0;right:0;top:0;height:75%;background:linear-gradient(180deg,#FFFFFF 0%,#F2F2F2 100%);overflow:hidden}
.sth-wash{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;pointer-events:none}
.sth-w0{background:radial-gradient(ellipse 52% 90% at 82% 54%,#FFFFFF 0%,#FFFFFF 45%,rgba(255,255,255,0) 100%),linear-gradient(180deg,#FFFFFF,#FFFFFF)}
.sth-w1{background:radial-gradient(ellipse 44% 92% at 84% 56%,#C9C9C9 0%,rgba(201,201,201,.72) 42%,rgba(201,201,201,0) 100%)}
.sth-w2{background:radial-gradient(ellipse 44% 92% at 84% 56%,rgba(138,138,138,.62) 0%,#C9C9C9 46%,rgba(201,201,201,0) 100%),linear-gradient(180deg,rgba(242,242,242,0),#F2F2F2)}
.sth[data-word="0"] .sth-w0,.sth[data-word="1"] .sth-w1,.sth[data-word="2"] .sth-w2{opacity:1}
.sth-shadow{position:absolute;right:calc(75 * var(--u));bottom:calc(34 * var(--u));width:calc(280 * var(--u));height:calc(34 * var(--u));border-radius:50%;background:radial-gradient(closest-side,rgba(10,10,10,.16),rgba(10,10,10,0));pointer-events:none}

.sth-stage{position:absolute;inset:0;z-index:1;pointer-events:none}
.sth-gl{display:block;width:100%;height:100%;opacity:0;transition:opacity .9s ease}
.sth-on .sth-gl{opacity:1}
.sth-fb{position:absolute;right:0;top:calc(80 * var(--u));width:64%;height:calc(100% - 80 * var(--u));object-fit:cover;object-position:72% 50%;filter:grayscale(1) invert(1);mix-blend-mode:multiply;-webkit-mask-image:radial-gradient(ellipse 60% 62% at 60% 48%,#000 34%,transparent 74%);mask-image:radial-gradient(ellipse 60% 62% at 60% 48%,#000 34%,transparent 74%);opacity:0;animation:sthFb .6s 1.6s forwards}
.sth-js .sth-fb{display:none;animation:none}
.sth-nogl .sth-fb{display:block;opacity:1}
.sth-nogl .sth-gl{display:none}
@keyframes sthFb{to{opacity:1}}

.sth-grain{position:absolute;inset:0;width:100%;height:100%;z-index:2;opacity:.15;mix-blend-mode:multiply;pointer-events:none}
.sth-tick{position:absolute;z-index:2;width:calc(14 * var(--u));height:calc(14 * var(--u));border:0 solid #0A0A0A;pointer-events:none}
.sth-tl{left:calc(24 * var(--u));top:calc(104 * var(--u));border-left-width:1px;border-top-width:1px}
.sth-tr{right:calc(24 * var(--u));top:calc(104 * var(--u));border-right-width:1px;border-top-width:1px}
.sth-bl{left:calc(24 * var(--u));bottom:calc(24 * var(--u));border-left-width:1px;border-bottom-width:1px}
.sth-br{right:calc(24 * var(--u));bottom:calc(80 * var(--u));border-right-width:1px;border-bottom-width:1px}

.sth-nav{position:absolute;left:0;right:0;top:0;z-index:4;height:calc(80 * var(--u));padding:0 calc(48 * var(--u));display:flex;align-items:center;justify-content:space-between;gap:calc(24 * var(--u));border-bottom:1px solid #C9C9C9}
.sth-brand{display:inline-flex;align-items:center;gap:calc(12 * var(--u));min-height:44px;font-family:'Michroma',sans-serif;font-size:max(12px,calc(17 * var(--u)));letter-spacing:.16em}
.sth-brand svg{width:max(20px,calc(28 * var(--u)));height:max(21px,calc(30 * var(--u)));flex:none}
.sth-links{display:flex;align-items:center;gap:calc(36 * var(--u))}
.sth-link{position:relative;display:inline-flex;align-items:center;min-height:44px;font-size:max(11px,calc(13 * var(--u)));font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.sth-link::after{content:"";position:absolute;left:0;right:0;bottom:calc(50% - 1em);height:1px;background:#0A0A0A;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.sth-link:hover::after{transform:scaleX(1)}
.sth-mag{transition:transform .28s cubic-bezier(.2,.7,.2,1),background-color .2s ease,color .2s ease;will-change:transform}
.sth-btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid #0A0A0A;font-weight:500;letter-spacing:.07em;text-transform:uppercase}
.sth-btn-nav{height:max(44px,calc(44 * var(--u)));padding:0 calc(22 * var(--u));font-size:max(11px,calc(13 * var(--u)));min-width:max-content;padding-inline:max(16px,calc(22 * var(--u)))}
.sth-btn-lg{height:max(44px,calc(56 * var(--u)));padding:0 max(18px,calc(30 * var(--u)));font-size:max(11px,calc(14 * var(--u)))}
.sth a.sth-btn-out:hover{background:#0A0A0A;color:#FFFFFF}
.sth a.sth-btn-fill{background:#0A0A0A;color:#FFFFFF}
.sth a.sth-btn-fill:hover{background:#1C1C1C;color:#FFFFFF}

.sth-cnt{position:absolute;z-index:3;left:calc(112 * var(--u));top:calc(166 * var(--u));margin:0;display:flex;align-items:center;gap:calc(12 * var(--u));font-size:max(10.5px,calc(12 * var(--u)));font-weight:500;letter-spacing:.14em}
.sth-cnt i{display:block;width:calc(44 * var(--u));height:1px;background:#0A0A0A}
.sth-cnt b{font-weight:500;display:none}
.sth[data-word="0"] .sth-c0,.sth[data-word="1"] .sth-c1,.sth[data-word="2"] .sth-c2{display:inline}

.sth-head{position:absolute;z-index:3;left:calc(112 * var(--u));top:calc(210 * var(--u));margin:0;font-family:'Michroma',sans-serif;font-weight:400}
.sth-slot{display:block;position:relative;height:1.12em;font-size:calc(104 * var(--u));line-height:1.12;text-transform:uppercase;white-space:nowrap;color:#0A0A0A}
.sth-w{position:absolute;left:0;top:0;display:inline-flex;align-items:center;gap:.2em;opacity:0;visibility:hidden;transform-origin:0 60%;will-change:transform,opacity,filter}
.sth-w.is-static{opacity:1;visibility:visible}
.sth-w.is-in{visibility:visible;animation:sthIn .5s cubic-bezier(.2,.7,.2,1) both}
.sth-w.is-out{visibility:visible;animation:sthOut .42s cubic-bezier(.5,0,.8,.4) both}
.sth-ico{width:1em;height:1em;flex:none;display:block}
.sth-w.is-in .sth-ico{animation:sthIco .62s .06s cubic-bezier(.2,.7,.2,1) both,sthFloat 4.2s .7s ease-in-out infinite}
@keyframes sthIn{from{opacity:0;transform:translateY(.2em) scale(.96);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes sthOut{from{opacity:1;transform:none;filter:blur(0)}to{opacity:0;transform:translateY(-.18em);filter:blur(8px)}}
@keyframes sthIco{from{opacity:0;transform:rotate(-40deg) scale(.82)}to{opacity:1;transform:none}}
@keyframes sthFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-.045em)}}
.sth-l2{display:block;margin-top:calc(22 * var(--u));font-size:calc(54 * var(--u));line-height:1.15;text-transform:lowercase;color:#8A8A8A;white-space:nowrap}
.sth-l2t{display:inline-block}

.sth-row{position:absolute;z-index:3;left:calc(112 * var(--u));top:calc(462 * var(--u));display:flex;align-items:center;gap:calc(16 * var(--u))}
.sth-cap{margin:0 0 0 calc(20 * var(--u));font-size:max(11px,calc(14 * var(--u)));line-height:1.6;color:#1C1C1C;opacity:.74}

.sth-notch{position:absolute;z-index:3;left:0;bottom:-1px;width:100%;height:calc(56 * var(--u));display:block;pointer-events:none}
.sth-notch-m{display:none}
.sth-hint{position:absolute;z-index:4;right:calc(48 * var(--u));bottom:0;height:calc(56 * var(--u));min-height:0;display:inline-flex;align-items:center;gap:calc(10 * var(--u));font-size:max(10.5px,calc(12 * var(--u)));font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.sth-hint svg{width:max(10px,calc(12 * var(--u)));height:max(12px,calc(14 * var(--u)));animation:sthBob 1.8s ease-in-out infinite}
@keyframes sthBob{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}

.sth-strip{position:absolute;left:0;right:0;bottom:0;height:25%;background:#F2F2F2;display:flex;align-items:center;gap:calc(40 * var(--u));padding:0 calc(112 * var(--u))}
.sth-say{flex:1 1 auto;margin:0;font-family:'Michroma',sans-serif;font-size:max(12px,calc(22 * var(--u)));line-height:1.45;color:#0A0A0A}
.sth-stats{margin:0;display:flex;align-items:stretch}
.sth-stat{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:calc(10 * var(--u));padding:calc(6 * var(--u)) calc(30 * var(--u));border-left:1px solid #C9C9C9}
.sth-stat dd{margin:0;font-size:max(20px,calc(40 * var(--u)));font-weight:500;line-height:1;letter-spacing:-.02em;white-space:nowrap}
.sth-stat dt{font-size:max(10.5px,calc(12 * var(--u)));letter-spacing:.08em;text-transform:uppercase;color:#1C1C1C;opacity:.74;white-space:nowrap}
.sth-line{flex:none;width:calc(84 * var(--u));height:calc(90 * var(--u));margin-left:calc(8 * var(--u))}

@media (max-width:760px){
.sth{--u:1px;--h1:min(clamp(30px,9.5vw,72px),calc((100vw - 40px) / 10.95));height:auto;min-height:100vh}
.sth-hero{position:relative;height:auto;padding-bottom:64px}
.sth-nav{position:relative;height:64px;padding:0 20px}
.sth-links{gap:0}
.sth-link{display:none}
.sth-cnt{position:relative;left:auto;top:auto;margin:32px 20px 14px}
.sth-head{position:relative;left:auto;top:auto;margin:0 20px}
.sth-slot{font-size:var(--h1);height:1.95em}
.sth-w{flex-direction:column;align-items:flex-start;gap:.1em}
.sth-ico{width:.72em;height:.72em}
.sth-l2{font-size:calc(var(--h1) / 2);margin-top:10px}
.sth-stage{position:relative;inset:auto;height:min(78vw,340px);margin:8px 0 4px;pointer-events:auto;touch-action:none}
.sth-fb{top:0;width:100%;height:100%}
.sth-shadow,.sth-bl,.sth-br{display:none}
.sth-tl,.sth-tr{top:78px;left:10px}
.sth-tr{left:auto;right:10px}
.sth-row{position:relative;left:auto;top:auto;margin:0 20px;flex-wrap:wrap;gap:12px}
.sth-btn-lg{height:52px;flex:1 1 auto}
.sth-cap{flex:1 1 100%;margin:8px 0 0;font-size:13px}
.sth-cap br{display:none}
.sth-notch{display:none;height:44px}
.sth-notch-m{display:block}
.sth-hint{right:20px;height:44px;min-height:44px;font-size:10.5px}
.sth-strip{position:relative;height:auto;display:block;padding:28px 20px 40px}
.sth-say{font-size:15px}
.sth-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px;margin-top:26px}
.sth-stat{padding:14px 0 0;border-left:0;border-top:1px solid #C9C9C9;gap:8px}
.sth-stat dd{font-size:32px}
.sth-line{position:absolute;right:20px;bottom:36px;width:56px;height:60px;margin:0}
}
@media (prefers-reduced-motion:reduce){
.sth-w.is-in,.sth-w.is-out,.sth-w.is-in .sth-ico,.sth-hint svg{animation:none}
.sth-wash,.sth-mag,.sth-gl{transition:none}
}
