@font-face{font-family:Manrope;src:url(/fonts/manrope.woff2)format("woff2");font-weight:200 800;font-display:swap}:root{--pad:clamp(18px,3.4vw,48px);--ink:#dfe6ee;--moon:#bcd4f2;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#03050a}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#03050a;margin:0;font:400 17px/1.6 Manrope,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow-x:hidden}body.viewing{overflow:hidden}a{color:inherit}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}header.top{z-index:5;padding:var(--pad);padding-top:max(calc(var(--pad) * .6),env(safe-area-inset-top));background:linear-gradient(#02040899,#02040800);justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;top:0;left:0;right:0}.brand{text-shadow:0 0 18px #000c;align-items:center;text-decoration:none;display:flex}.brand img{filter:drop-shadow(0 0 10px #96beff59);width:auto;height:clamp(34px,4.2vw,50px);display:block}.contact{letter-spacing:.26em;text-transform:uppercase;border-bottom:1px solid #dcebff66;padding:12px 2px;font-size:clamp(11px,1vw,12.5px);font-weight:600;text-decoration:none;transition:border-color .3s,text-shadow .3s}.contact:hover,.contact:focus-visible{text-shadow:0 0 14px #aad2ffe6;border-color:#fff;outline:none}.hero{--u:min(100vw / 1280,100svh / 720);background:#03050a;height:100svh;min-height:360px;position:relative;overflow:hidden}.hero-img{background:#03050a url(/img/hero-still.webp) calc(47.5vw - min(100vw,177.778svh)) calc(100svh - min(103.125vw,183.333svh))/min(200vw,355.556svh) no-repeat;position:absolute;inset:0}@media (aspect-ratio<=1){.hero-img{background-position:-119.8vw calc(82svh - 162.96vw);background-size:316vw}}#hero-gl{opacity:0;transition:opacity 1.4s;position:absolute;inset:0}#hero-gl canvas{width:100%;height:100%;display:block}.webgl #hero-gl{opacity:1}.hero:after{content:"";pointer-events:none;background:linear-gradient(#02040800 62%,#03050a66 84%,#03050a 100%);position:absolute;inset:0}.keywords{left:0;right:0;bottom:max(20px,env(safe-area-inset-bottom));z-index:4;padding:0 var(--pad);text-align:center;letter-spacing:.2em;text-transform:uppercase;color:#d5dde8;text-shadow:0 1px 10px #000,0 0 3px #000;margin:0;font-size:clamp(9.5px,.88vw,11.5px);font-weight:500;line-height:2;position:absolute}.keywords i{opacity:.45;margin:0 .7em;font-style:normal}.keywords span{white-space:nowrap}@media (width<=640px){.keywords{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.stones{z-index:3;pointer-events:none;margin:0;padding:0;list-style:none;position:absolute;inset:0}.stone{left:calc(var(--x) * 1%);bottom:calc(var(--u) * var(--b));height:calc(var(--u) * var(--h));position:absolute;transform:translate(-50%)}.stone button{all:unset;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;height:100%;display:block;position:relative}.stone button:before{content:"";position:absolute;inset:-8px -12px -4px}.stone img{z-index:1;filter:brightness(.8)saturate(.82)contrast(1.05);-webkit-user-drag:none;user-select:none;width:auto;height:100%;transition:filter .45s,transform .45s cubic-bezier(.2,.8,.3,1);display:block;position:relative}.stone .sh{z-index:0;background:radial-gradient(closest-side,#000000b3,#0000);height:12%;position:absolute;bottom:-3%;left:-18%;right:-18%}.stone .gl{z-index:0;opacity:0;animation:5.5s ease-in-out infinite stonepulse;animation-delay:var(--d,0s);background:radial-gradient(closest-side,#6ee1ff80,#6ee1ff00 72%);transition:opacity .45s;position:absolute;inset:6% -30% -2%}@keyframes stonepulse{0%,to{opacity:.04}50%{opacity:.2}}.stone .lb{z-index:2;white-space:nowrap;pointer-events:none;opacity:0;letter-spacing:.26em;text-transform:uppercase;color:#e6f2ff;text-shadow:0 0 14px #78d2ffe6,0 1px 8px #000,0 0 3px #000;font-size:11px;font-weight:600;transition:opacity .35s,transform .35s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,6px)}.stone button:hover img,.stone button:focus-visible img{filter:brightness(1.12)saturate(1.05)contrast(1.05)drop-shadow(0 0 12px #78e1ff8c);transform:translateY(-3px)}.stone button:hover .gl,.stone button:focus-visible .gl{opacity:.55;animation:none}.stone button:hover .lb,.stone button:focus-visible .lb{opacity:1;transform:translate(-50%)}.stone button:focus-visible{outline:none}.stone button:focus-visible:after{content:"";border:1.5px solid #9fd8ff;border-radius:10px;position:absolute;inset:-8px -12px -4px}@media (width<=640px),(aspect-ratio<=1){.stone{bottom:calc(var(--mb) * 1svh);height:calc(var(--mh) * 1vw);left:calc(var(--mx) * 1%)}.stone .lb{opacity:.92;letter-spacing:.14em;white-space:normal;text-align:center;text-shadow:0 1px 8px #000,0 0 3px #000;width:84px;font-size:9px;line-height:1.3;top:calc(100% + 7px);bottom:auto;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.stone .gl{opacity:.1;animation:none}.stone img,.stone .lb{transition:none}}#contact{z-index:2;text-align:center;padding:clamp(48px,7vw,90px) var(--pad) clamp(40px,5vw,70px);background:#03050a;position:relative}#contact h2{letter-spacing:.08em;margin:0 0 .5em;font-size:clamp(26px,3.4vw,42px);font-weight:400}#contact p{color:#aab6c3;margin:0;font-size:clamp(17px,1.6vw,20px);line-height:2}#contact a{border-bottom:1px solid #bed2eb4d;text-decoration:none;transition:border-color .3s,color .3s}#contact a:hover{color:#fff;border-color:#fff}footer.foot{text-align:center;padding:10px var(--pad) 40px;letter-spacing:.3em;text-transform:uppercase;color:#4d5964;background:#03050a;font-size:11px}body{--c:#9fc4ff}#pv{font-family:inherit;font-size:15px;line-height:1.55}div#pv{z-index:10;backdrop-filter:blur(4px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#000000c8;display:none;position:fixed;inset:0;overflow-y:auto}div#pv.on{animation:.35s pvin;display:block}dialog#pv{width:100%;max-width:none;height:100%;max-height:none;color:inherit;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#05080ef2;border:0;margin:0;padding:0;display:none;position:fixed;inset:0;overflow-y:auto}dialog#pv[open]{animation:.35s pvin;display:block}dialog#pv::backdrop{backdrop-filter:blur(5px);background:#010307b8}dialog#pv:focus{outline:none}@media (width>=900px){dialog#pv{border:1px solid #a0c8ff2e;border-radius:14px;width:min(1120px,92vw);height:min(90svh,940px);margin:auto;inset:0;box-shadow:0 30px 120px #000,0 0 80px #5aa0ff14}.pv-bar{border-radius:14px 14px 0 0}}@keyframes pvin{0%{opacity:0;transform:translateY(16px)}}.pv-bar{padding:var(--pad);padding-top:max(var(--pad),env(safe-area-inset-top));z-index:2;background:linear-gradient(#000,#000d 70%,#0000);justify-content:space-between;gap:12px;display:flex;position:sticky;top:0}.pv-bar button{color:#fff;font:inherit;cursor:pointer;letter-spacing:.08em;background:0 0;border:1px solid #fff4;min-width:44px;min-height:44px;padding:10px 16px;font-size:13px}.pv-bar button:hover{border-color:#fff}.pv-wrap,.pv-article[data-standalone]{max-width:1080px;padding:0 var(--pad) 96px;margin:0 auto}.pv-kicker{letter-spacing:.18em;color:var(--c)}.pv-title{letter-spacing:.01em;margin:.2em 0 .3em;font-size:clamp(28px,6vw,56px);font-weight:500}.pv-blurb{opacity:.9;max-width:62ch;font-size:16px}.pv-meta{border-top:1px solid #fff2;border-bottom:1px solid #fff2;flex-wrap:wrap;gap:24px 64px;margin:28px 0 40px;padding:20px 0;display:flex}.pv-meta h3,.pv-page h3{letter-spacing:.18em;text-transform:uppercase;opacity:.6;margin:0 0 8px;font-size:11px;font-weight:500}.pv-meta ul{margin:0;padding-left:18px}.pv-live{color:var(--c)}.pv-page{margin:0 0 48px}.pv-page h3 a{opacity:.8;text-transform:none;letter-spacing:0;margin-left:10px}.pv-shots{grid-template-columns:minmax(0,3.2fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.pv-shots figure{margin:0}.pv-shots video{background:#111;border:1px solid #fff2;border-radius:6px;width:100%;display:block}.pv-shots .dk video{aspect-ratio:1280/800}.pv-shots .mb video{aspect-ratio:390/844;border-radius:14px}figcaption{opacity:.55;letter-spacing:.08em;margin-top:6px;font-size:11px}@media (width<=640px){.pv-shots{grid-template-columns:1fr 1fr}.pv-shots .dk{grid-column:1/-1}.pv-shots .mb{grid-column:1}}@media (prefers-reduced-motion:reduce){#pv.on,dialog#pv[open]{animation:none}#hero-gl{transition:none}}
