:root{
  --deep:#160523;
  --near:#0b0710;
  --purple:#673a7d;
  --white:#fff;
  --muted:rgba(255,255,255,.58);
  --line:rgba(255,255,255,.13);
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;background:#0a0610;color:#fff;overflow:hidden}
body{font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.boot{position:fixed;inset:0;background:#050308;z-index:99;display:grid;place-items:center;animation:bootOut 1.2s cubic-bezier(.7,0,.2,1) 1.5s forwards}
.boot span{width:1px;height:84px;background:linear-gradient(transparent,#8c59a6,transparent);animation:bootPulse 1.25s ease-in-out infinite}
.scene{position:relative;height:100%;isolation:isolate;background:linear-gradient(90deg,#1a1023 0%,#2c153c 43%,#643778 100%);overflow:hidden}
.scene:after{content:"";position:absolute;inset:0;z-index:8;pointer-events:none;background:radial-gradient(circle at 50% 44%,transparent 0 25%,rgba(5,2,8,.1) 58%,rgba(5,2,8,.62) 120%)}
.geometry{position:absolute;inset:-7%;width:114%;height:114%;z-index:1;transition:transform 1.4s cubic-bezier(.2,.7,.2,1);will-change:transform}
.geo-lines path{fill:none;stroke:rgba(255,255,255,.075);stroke-width:1}
.geo-faces path{fill:rgba(255,255,255,.012);stroke:rgba(255,255,255,.035);stroke-width:1}
.light{position:absolute;z-index:2;border-radius:50%;filter:blur(70px);opacity:.42;will-change:transform}
.light--one{width:42vw;height:42vw;left:-18vw;top:-12vw;background:#5e2f78}
.light--two{width:32vw;height:32vw;right:-10vw;bottom:-11vw;background:#9a52b4;opacity:.2}
.grain{position:absolute;inset:0;z-index:3;opacity:.055;pointer-events:none;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.sweep{position:absolute;z-index:4;inset:-40% auto -40% -25%;width:16%;transform:rotate(16deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.055),transparent);filter:blur(12px);animation:sweep 14s ease-in-out 5s infinite}
.topbar,.contactbar{position:absolute;z-index:20;left:clamp(22px,4vw,66px);right:clamp(22px,4vw,66px);display:flex;align-items:center;letter-spacing:.16em;text-transform:uppercase;font-size:10px}
.topbar{top:clamp(22px,4vh,48px);justify-content:space-between;color:rgba(255,255,255,.55)}
.status{display:flex;align-items:center;gap:10px}.status i{width:6px;height:6px;border-radius:50%;background:#b28ec1;box-shadow:0 0 0 5px rgba(178,142,193,.08)}
.hero{position:absolute;z-index:15;inset:0;display:grid;place-items:center;padding:90px 24px 100px}
.brand-stage{text-align:center;width:min(840px,92vw);transform:translateY(-1vh)}
.logo-wrap{width:min(610px,75vw);margin:0 auto;opacity:0;transform:scale(.93);animation:logoIn 1.7s cubic-bezier(.17,.84,.24,1) 2s forwards}
.logo-wrap img{display:block;width:100%;height:auto}
.copy{margin-top:clamp(-78px,-6vw,-42px);position:relative;z-index:2}
.kicker{margin:0 0 18px;font-size:10px;letter-spacing:.36em;color:rgba(255,255,255,.58);opacity:0;animation:rise .9s ease 2.65s forwards}
h1{margin:0;font-size:clamp(31px,4vw,66px);line-height:1.04;letter-spacing:-.045em;font-weight:700;opacity:0;animation:rise 1s ease 2.85s forwards}
h1 em{font-style:normal;font-weight:400;color:rgba(255,255,255,.62)}
.subcopy{margin:24px auto 0;color:rgba(255,255,255,.55);font-size:clamp(12px,1.1vw,15px);letter-spacing:.03em;opacity:0;animation:rise .9s ease 3.1s forwards}
.sequence{position:absolute;left:clamp(22px,4vw,66px);top:50%;transform:translateY(-50%);height:18px;width:130px;overflow:hidden;color:rgba(255,255,255,.24);font:10px/18px monospace;letter-spacing:.2em}
.sequence span{position:absolute;inset:0;opacity:0;animation:sequence 16s infinite}.sequence span:nth-child(2){animation-delay:4s}.sequence span:nth-child(3){animation-delay:8s}.sequence span:nth-child(4){animation-delay:12s}
.contactbar{bottom:max(24px,env(safe-area-inset-bottom));gap:clamp(15px,2.1vw,35px);padding-top:18px;border-top:1px solid var(--line);color:rgba(255,255,255,.55);white-space:nowrap}
.contactbar a{transition:color .25s ease}.contactbar a:hover{color:#fff}.address{margin-left:auto}
@keyframes bootPulse{0%,100%{transform:scaleY(.35);opacity:.25}50%{transform:scaleY(1);opacity:1}}
@keyframes bootOut{to{opacity:0;visibility:hidden}}
@keyframes logoIn{to{opacity:1;transform:scale(1)}}
@keyframes rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@keyframes sweep{0%,16%{transform:translateX(0) rotate(16deg);opacity:0}25%{opacity:1}56%,100%{transform:translateX(900%) rotate(16deg);opacity:0}}
@keyframes sequence{0%,6%{opacity:0;transform:translateY(7px)}10%,20%{opacity:1;transform:none}25%,100%{opacity:0;transform:translateY(-7px)}}
@media(max-width:760px){
 .topbar{font-size:8px}.system-mark{display:none}.topbar{justify-content:center}
 .brand-stage{transform:translateY(-2vh)}.logo-wrap{width:min(560px,92vw)}
 .copy{margin-top:-45px}.kicker{font-size:8px}.subcopy{max-width:310px;line-height:1.6}
 .sequence{display:none}.contactbar{justify-content:center;flex-wrap:wrap;gap:12px 20px;font-size:8px}.address{display:none}
 .contactbar a:nth-of-type(3),.contactbar a:nth-of-type(4){display:none}
}
@media(max-height:650px){.logo-wrap{width:min(480px,62vw)}.copy{margin-top:-58px}h1{font-size:clamp(27px,3.6vw,48px)}.subcopy{margin-top:15px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.boot{display:none}.logo-wrap,.kicker,h1,.subcopy{opacity:1;transform:none}}
