
:root{
  --bg:#020307;
  --fg:#f2f5f1;
  --muted:rgba(242,245,241,.66);
  --dim:rgba(242,245,241,.36);
  --line:rgba(196,255,245,.22);
  --accent:#80f4ff;
  --violet:#8c6cff;
  --green:#bbff74;
  --ease:cubic-bezier(.22,.72,0,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#000}
body{margin:0;background:#000;color:var(--fg);font-family:"Courier New",ui-monospace,monospace;overflow-x:hidden}
body::-webkit-scrollbar{width:6px}body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.85);border-radius:9px}
a{text-decoration:none;color:inherit}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.noscript{position:fixed;z-index:9999;top:0;left:0;right:0;padding:12px;background:#111;text-align:center}
.universe,.nebula,.film,.scanlines{position:fixed;inset:0;pointer-events:none}
.universe{z-index:0}.nebula{z-index:1;background:radial-gradient(circle at 8% 86%,rgba(126,249,255,.28),transparent 24%),radial-gradient(circle at 92% 12%,rgba(120,255,215,.2),transparent 20%),radial-gradient(circle at 35% 58%,rgba(149,83,255,.25),transparent 28%);mix-blend-mode:screen}
.film{z-index:2;opacity:.18;background-image:radial-gradient(circle,rgba(255,255,255,.55) 0 1px,transparent 1px);background-size:3px 3px;mix-blend-mode:overlay}
.scanlines{z-index:3;opacity:.12;background:repeating-linear-gradient(180deg,transparent 0 7px,rgba(255,255,255,.28) 8px)}
.preloader{position:fixed;z-index:2000;inset:0;background:#000;display:grid;place-items:center;transition:opacity .8s var(--ease),visibility .8s var(--ease)}
.preloader.is-done{opacity:0;visibility:hidden}
.preloader__mark{color:#83f8ff;text-align:center;font-size:18px;line-height:1.25;text-shadow:0 0 18px rgba(131,248,255,.75);opacity:.8;transform:translateY(8vh)}
.preloader__mark span{display:block;letter-spacing:.18em}
.preloader__percent{position:absolute;left:50%;top:56%;transform:translateX(-50%);font-size:22px;color:#8df8ff;text-shadow:0 0 18px rgba(141,248,255,.7)}
.floating-nav{position:fixed;z-index:1000;top:clamp(18px,6vw,48px);right:clamp(16px,7vw,84px);height:72px;min-width:380px;padding:0 42px;border:1px solid var(--line);border-radius:999px;background:rgba(0,0,0,.62);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;gap:28px;box-shadow:0 0 46px rgba(116,255,241,.18),inset 0 0 22px rgba(255,255,255,.04)}
.floating-nav a{font-size:22px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.85);transition:.25s var(--ease)}
.floating-nav a:hover,.floating-nav a.is-active{color:#fff;text-shadow:0 0 16px rgba(139,248,255,.85)}
.floating-nav i{display:block;width:64px;height:1px;background:rgba(255,255,255,.72)}
.homebtn{position:fixed;z-index:1001;left:18px;top:34px;width:52px;height:52px;border-radius:16px;color:#fff;font-size:32px;display:grid;place-items:center;text-shadow:0 0 12px rgba(255,255,255,.7)}
main{position:relative;z-index:5}
.scene{min-height:100svh;position:relative;overflow:hidden;padding:clamp(88px,10vw,130px) clamp(22px,7vw,92px);display:grid;align-items:center}
.scene:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 86% 10%,rgba(147,255,242,.15),transparent 20%),linear-gradient(180deg,transparent,rgba(0,0,0,.35));pointer-events:none}
.mono{font-size:clamp(15px,2.8vw,26px);line-height:1.5;letter-spacing:.05em;color:rgba(255,255,255,.86);text-transform:uppercase}
.scene__copy--hero{position:relative;z-index:10;max-width:840px;align-self:end;margin-bottom:6vh}
.scene__copy h1{margin:18px 0 26px;font-size:clamp(52px,12vw,162px);line-height:.84;letter-spacing:-.06em;font-weight:400;text-transform:uppercase;text-shadow:0 0 24px rgba(255,255,255,.26)}
.lead{max-width:760px;color:var(--muted);font-size:clamp(17px,2.3vw,26px);line-height:1.55}
.orb{position:absolute;z-index:8;left:50%;top:44%;width:min(58vw,540px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center;filter:drop-shadow(0 0 46px rgba(128,244,255,.34))}
.orb__ring{position:absolute;inset:0;border:4px solid rgba(200,255,250,.45);border-radius:50%;box-shadow:inset 0 0 42px rgba(255,255,255,.12),0 0 64px rgba(128,244,255,.22);animation:spin 18s linear infinite}
.orb__ring:before,.orb__ring:after{content:"";position:absolute;inset:8%;border:1px solid rgba(255,255,255,.18);border-radius:50%;transform:rotate(48deg)}
.orb__core{position:relative;width:32%;aspect-ratio:1;border-radius:32%;display:grid;place-items:center;background:linear-gradient(135deg,#fff,#72f5ff 40%,#8e65ff 70%,#fff);color:#061010;font-size:clamp(30px,7vw,72px);font-weight:900;box-shadow:0 0 40px rgba(255,255,255,.5);animation:pulse 3s var(--ease) infinite alternate}
.spine{position:absolute;z-index:6;left:50%;top:10%;width:min(26vw,280px);height:120%;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 0,rgba(255,255,255,.45),transparent 24%),repeating-linear-gradient(180deg,rgba(210,255,248,.55) 0 22px,rgba(154,100,255,.45) 23px 46px,rgba(255,255,255,.0) 47px 58px);clip-path:polygon(40% 0,60% 0,88% 100%,12% 100%);filter:blur(.3px) drop-shadow(0 0 32px rgba(132,244,255,.25));opacity:.68;mix-blend-mode:screen;animation:spineBreath 5s var(--ease) infinite alternate}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{to{transform:scale(1.08) rotate(4deg)}}@keyframes spineBreath{to{filter:blur(1px) drop-shadow(0 0 56px rgba(180,120,255,.48));opacity:.9}}
.scene--work{min-height:220svh;align-items:start;padding-top:22vh}
.spine--work{height:135%;top:-8%;left:58%;opacity:.88}
.category{position:sticky;top:24vh;z-index:12;max-width:480px;color:#fff;text-shadow:0 0 12px rgba(255,255,255,.32)}
.category p{margin:0 0 20px;font-size:clamp(17px,3.8vw,28px);letter-spacing:.05em}
.cat{display:block;margin:0 0 18px;color:#c3bdff;font-size:clamp(22px,5vw,42px);line-height:1.05;text-align:left;transition:.25s var(--ease)}
.cat:hover,.cat.is-active{color:#fff;text-shadow:0 0 18px currentColor;transform:translateX(10px)}
.ask{display:inline-flex;margin-top:14px;min-height:72px;align-items:center;padding:0 34px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.62);font-size:clamp(16px,3.5vw,26px)}
.project-stack{position:absolute;z-index:9;left:18%;right:-20%;top:8%;height:160svh;pointer-events:none}
.work-card{position:absolute;width:min(76vw,720px);height:clamp(250px,42vw,430px);border-radius:36px;border:1px solid color-mix(in srgb,var(--cardAccent) 45%,rgba(255,255,255,.16));background:linear-gradient(135deg,color-mix(in srgb,var(--cardAccent) 38%,rgba(10,10,16,.75)),rgba(0,0,0,.55));box-shadow:0 30px 100px rgba(0,0,0,.45),inset 0 0 60px rgba(255,255,255,.08);backdrop-filter:blur(14px);display:grid;align-content:center;padding:38px;overflow:hidden;transform:translate3d(var(--tx),var(--ty),0) rotate(var(--rot));transition:opacity .38s var(--ease),filter .38s var(--ease)}
.work-card:before{content:"";position:absolute;inset:-12%;background:radial-gradient(circle at 55% 28%,rgba(255,255,255,.48),transparent 18%),radial-gradient(circle at 35% 60%,color-mix(in srgb,var(--cardAccent) 80%,transparent),transparent 26%);mix-blend-mode:screen;opacity:.55}
.work-card:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 42px,rgba(255,255,255,.05) 43px 44px);opacity:.25}
.work-card b,.work-card span,.work-card small{position:relative;z-index:2}
.work-card b{font-size:clamp(38px,7.5vw,96px);line-height:.84;letter-spacing:-.05em;font-weight:400}
.work-card span{font-size:clamp(13px,2.2vw,20px);letter-spacing:.06em;color:rgba(255,255,255,.78);text-transform:uppercase;margin-bottom:12px}
.work-card small{margin-top:16px;max-width:520px;font-size:clamp(14px,2vw,20px);line-height:1.45;color:rgba(255,255,255,.74)}
.work-card.is-dim{opacity:.17;filter:blur(1.2px) saturate(.75)}
.scene--detail{min-height:100svh;grid-template-columns:minmax(0,1fr) minmax(320px,560px);gap:40px}
.detail-panel{position:relative;z-index:10;max-width:760px}.detail-panel h2{margin:16px 0 18px;font-size:clamp(52px,10vw,140px);line-height:.84;letter-spacing:-.07em;font-weight:400;text-transform:uppercase}.detail-panel p:not(.mono){font-size:clamp(17px,2.4vw,28px);line-height:1.45;color:var(--muted)}
.detail-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.detail-meta span{border:1px solid var(--line);border-radius:999px;padding:9px 12px;color:#fff;background:rgba(255,255,255,.04)}
.big-card{position:relative;z-index:9;min-height:min(70svh,650px);border-radius:42px;border:1px solid var(--line);background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 34%,rgba(0,0,0,.62)),rgba(0,0,0,.65));box-shadow:0 40px 130px rgba(0,0,0,.5),inset 0 0 80px rgba(255,255,255,.08);overflow:hidden;padding:34px;display:flex;flex-direction:column;justify-content:flex-end}
.big-card:before{content:"";position:absolute;inset:-12%;background:radial-gradient(circle at 55% 18%,rgba(255,255,255,.55),transparent 16%),radial-gradient(circle at 40% 60%,color-mix(in srgb,var(--accent) 90%,transparent),transparent 30%);mix-blend-mode:screen;opacity:.55}
.big-card__hud{position:absolute;z-index:2;top:28px;left:28px;right:28px;display:flex;justify-content:space-between;color:rgba(255,255,255,.82);font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.big-card strong{position:relative;z-index:2;font-size:clamp(44px,8vw,100px);line-height:.84;letter-spacing:-.06em;font-weight:400;text-transform:uppercase}
.big-card small{position:relative;z-index:2;margin-top:18px;color:rgba(255,255,255,.72);font-size:clamp(16px,2vw,22px);text-transform:uppercase}
.scene--studio{min-height:100svh;grid-template-columns:1fr;align-content:center}.studio-text{max-width:980px;position:relative;z-index:10}.studio-text h2{font-size:clamp(50px,10vw,142px);line-height:.84;letter-spacing:-.07em;font-weight:400;margin:16px 0}.studio-text p:last-child{font-size:clamp(18px,2.6vw,30px);line-height:1.45;color:var(--muted)}
.service-grid{position:relative;z-index:10;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:38px}.service-grid article{border:1px solid var(--line);border-radius:28px;padding:22px;background:rgba(0,0,0,.32);backdrop-filter:blur(12px)}.service-grid span{color:var(--accent)}.service-grid b{display:block;margin:28px 0 10px;font-size:clamp(24px,3vw,42px);line-height:.92;font-weight:400}.service-grid p{color:var(--muted);line-height:1.5}
.scene--contact{min-height:100svh;place-items:center;text-align:center}.contact-card{position:relative;z-index:10}.contact-card h2{font-size:clamp(86px,18vw,230px);line-height:.82;letter-spacing:.04em;font-weight:400;margin:24px 0}.contact-card a{display:block;margin:16px auto;color:#fff;font-size:clamp(20px,4vw,38px);text-decoration:underline;text-underline-offset:8px}.contact-card small{display:block;margin-top:34px;color:var(--muted)}
@media(max-width:820px){
  .floating-nav{left:auto;right:7vw;top:34px;min-width:0;width:62vw;max-width:500px;height:68px;padding:0 28px;gap:18px}
  .floating-nav a{font-size:clamp(18px,5vw,28px)}.floating-nav i{width:50px}.homebtn{left:18px;top:34px}
  .scene{padding-left:28px;padding-right:28px}
  .scene__copy--hero{margin-bottom:12vh}.orb{width:74vw;top:34%}.spine{width:46vw;left:58%;opacity:.82}
  .scene--home{padding-top:22vh;align-items:end}.scene__copy h1{font-size:clamp(54px,15vw,96px)}
  .scene--work{padding-top:34vh}.category{top:51vh;max-width:86vw}.cat{font-size:clamp(24px,7vw,40px);margin-bottom:16px}.ask{width:78vw;justify-content:center}
  .project-stack{left:-4%;right:-85%;top:6%;height:176svh}.work-card{width:88vw;height:360px;padding:26px;border-radius:28px}
  .scene--detail{grid-template-columns:1fr;padding-top:14vh}.big-card{min-height:420px}.detail-panel h2{font-size:clamp(54px,15vw,96px)}
  .service-grid{grid-template-columns:1fr}.contact-card h2{font-size:clamp(78px,23vw,150px)}
}
@media(max-width:480px){
  .floating-nav{width:62vw;height:62px;right:6vw}.floating-nav a{font-size:20px}.floating-nav i{width:42px}
  .homebtn{font-size:28px}.preloader__mark{font-size:16px}
  .project-stack{right:-125%}.work-card{width:92vw}
}
