:root{--pink:#ff007f;--acid:#dfff00;--ink:#111;--paper:#f2f0eb;--grey:#818181;--pad:clamp(22px,5vw,78px);--glass-background:rgba(12,12,14,.92);--glass-border:rgba(255,255,255,.16);--glass-filter:blur(24px) saturate(135%);--cta-min-height:48px;--cta-radius:999px;--cta-font-size:.8125rem;--cta-letter-spacing:.08em;--action-arrow-size:1.25rem;--action-link-gap:.75rem;--action-link-underline:2px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#0a0a0b}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);border-bottom:1px solid #ffffff32}
.brand img{width:100%;display:block}
.site-header nav{display:flex;align-items:center;gap:34px;color:white;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:var(--cta-min-height);border:1px solid #fff;border-radius:var(--cta-radius);padding:0 22px;font-size:var(--cta-font-size);transition:background-color .2s,border-color .2s,color .2s}
.nav-cta:hover{background:#fff;color:var(--ink)}
.menu{display:none;background:none;border:0}
.hero{height:max(760px,100svh);min-height:680px;position:relative;padding:145px var(--pad) 45px;color:white;background:#0a0a0b;overflow:hidden;display:flex;flex-direction:column}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0c 1px,transparent 1px),linear-gradient(90deg,#ffffff0c 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to bottom,#000,transparent)}
.orb{position:absolute;border-radius:50%;filter:blur(4px);mix-blend-mode:screen}
.orb-one{width:45vw;height:45vw;background:radial-gradient(circle at 35% 35%,#ff66b2,var(--pink) 32%,#64002f 67%,transparent 69%);right:-13vw;top:-12vw;animation:float 8s ease-in-out infinite}
.orb-two{width:20vw;height:20vw;min-width:220px;min-height:220px;background:radial-gradient(circle,#dfff00,transparent 67%);opacity:.35;left:-8vw;bottom:5vh;animation:float 6s ease-in-out infinite reverse}
.eyebrow,.kicker{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.eyebrow{display:flex;align-items:center;gap:13px;z-index:1}
.hero>.eyebrow{margin:0 0 clamp(28px,3vw,48px)}
.eyebrow i{width:4px;height:4px;border-radius:50%;background:var(--pink)}
.hero-title{position:relative;z-index:2;margin:auto 0;font:400 clamp(86px,15vw,240px)/1.04 Anton,sans-serif;letter-spacing:-.035em}
.hero-title .line{display:block;will-change:transform}
.line-a{animation:slideA 1.1s cubic-bezier(.16,1,.3,1) both}
.line-b{margin-left:13vw;color:transparent;-webkit-text-stroke:1.5px white;animation:slideB 1.3s .1s cubic-bezier(.16,1,.3,1) both}
.line-c{margin-left:3vw;animation:slideA 1.4s .15s cubic-bezier(.16,1,.3,1) both}
.line-c em{font-style:normal;color:var(--pink)}
.line-c b{display:inline-block;color:var(--acid);animation:spin 5s linear infinite}
.hero-bottom{z-index:2;display:flex;align-items:flex-end;justify-content:flex-end;gap:40px}
.hero-bottom p{width:min(420px,100%);font-size:16px;line-height:1.6}
.round-link{width:105px;height:105px;flex:0 0 auto;border:1px solid #ffffff80;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:10px;font-weight:700;letter-spacing:.1em;transition:background-color .2s,border-color .2s,color .2s}
.round-link .action-arrow{font-size:25px;margin-top:5px}
.round-link:hover{background:var(--pink);border-color:var(--pink);color:var(--ink)}
.round-link:hover .action-arrow{color:var(--ink)}
.scroll-hint{position:absolute;left:18px;bottom:35px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em}
.scroll-hint span{display:inline-block;height:50px;border-left:1px solid white;margin-top:12px}
.ticker{background:var(--acid);overflow:hidden;border-block:2px solid #111;font:400 31px/1 Anton,sans-serif;padding:15px 0;white-space:nowrap;transform:rotate(-1deg) scale(1.02)}
.ticker div{width:max-content;animation:ticker 18s linear infinite}
.section{padding:120px var(--pad);position:relative}
.section-number{font-size:10px;letter-spacing:.16em;font-weight:700;border-top:1px solid #aaa;padding-top:12px;margin-bottom:80px}
.intro{display:grid;grid-template-columns:1fr 1.15fr;gap:5vw}
.intro .section-number{grid-column:1/-1}
.intro-copy h2,.skills-head h2,.proof-title h2,.process-intro h2{font:400 clamp(53px,7.5vw,120px)/1.04 Anton,sans-serif;text-transform:uppercase;margin:20px 0 35px;letter-spacing:-.025em}
.intro-copy h2 span,.proof-title h2 span,.process-intro h2 span{color:var(--pink)}
.lead{max-width:620px;font-size:clamp(16px,1.5vw,21px);line-height:1.65}
.portrait{margin:0;align-self:end}
.image-wrap{overflow:hidden;background:var(--pink);aspect-ratio:1/1}
.portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);mix-blend-mode:multiply;transition:.7s}
.portrait:hover img{filter:grayscale(0);mix-blend-mode:normal}
figcaption{display:flex;justify-content:space-between;gap:10px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;padding-top:13px}
.dark{background:#0c0c0d;color:white}
.skills-head{display:grid;grid-template-columns:1fr 2fr}
.skills-head h2{margin-top:0}
.skills-head h2 span{color:var(--pink)}
.skill-list{margin-top:65px}
.skill-list article{display:grid;grid-template-columns:82px minmax(0,1fr) minmax(320px,1fr);align-items:center;gap:25px;padding:30px 0;border-top:1px solid #ffffff30}
.skill-list article:last-child{border-bottom:1px solid #ffffff30}
.skill-list span{color:var(--pink);font:400 42px/1 Anton,sans-serif}
.skill-list h3{font:700 32px/1.18 Inter,Arial,sans-serif;margin:0;text-transform:uppercase}
.skill-list p{color:#aaa;line-height:1.6;font-size:14px}
.proof-title{max-width:1000px}
.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:70px}
.cert-grid article{background:white;padding:35px;min-height:310px;display:flex;flex-direction:column;justify-content:space-between;border-top:7px solid var(--pink)}
.cert-year{font:50px Anton;color:var(--pink)}
.cert-grid h3{font:700 31px/1.18 Inter,Arial,sans-serif;text-transform:uppercase;margin:0 0 15px}
.cert-grid p{font-size:14px;line-height:1.6;color:#666}
.process{background:var(--pink);color:#fff}
.process .section-number{border-color:#ffffff80}
.process-intro h2 span{color:var(--acid)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:80px;border-block:1px solid #ffffff80}
.steps article{padding:35px 25px;min-height:280px;border-right:1px solid #ffffff80}
.steps article:last-child{border:0}
.steps strong{font:70px Anton;color:transparent;-webkit-text-stroke:1px #fff}
.steps h3{font:700 35px/1.18 Inter,Arial,sans-serif;text-transform:uppercase;margin:30px 0 12px}
.steps p{font-size:14px;line-height:1.6}
.contact{min-height:85vh;background:#0b0b0c;color:white;padding:100px var(--pad);position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.contact h2{font:400 clamp(95px,18vw,270px)/1.04 Anton;margin:40px 0;position:relative;z-index:2;letter-spacing:-.04em}
.contact h2 span{color:transparent;-webkit-text-stroke:2px white}
.contact>a{position:relative;z-index:2;width:max-content;font-size:clamp(18px,2vw,31px)}
.contact-orb{position:absolute;width:50vw;height:50vw;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff8bc5,var(--pink) 30%,#5e002f 68%);right:-8vw;bottom:-18vw;animation:float 7s ease-in-out infinite}
.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}
.reveal.visible{opacity:1;transform:none}
.cursor-dot{position:fixed;z-index:100;pointer-events:none;width:12px;height:12px;border-radius:50%;background:var(--acid);mix-blend-mode:difference;transform:translate(-50%,-50%);transition:width .15s,height .15s}
@keyframes float{50%{transform:translateY(35px) scale(1.05)}
}
@keyframes spin{to{transform:rotate(360deg)}
}
@keyframes slideA{from{transform:translateX(-110%);opacity:0}
}
@keyframes slideB{from{transform:translateX(110%);opacity:0}
}
@keyframes ticker{to{transform:translateX(-50%)}
}
@media(max-width:1100px){.site-header{height:85px}
.brand{width:145px}
.site-header nav{display:none;position:absolute;top:85px;left:0;right:0;padding:30px;flex-direction:column;align-items:flex-start}
.site-header nav.open{display:flex}
.site-header:has(nav.open){position:fixed;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:85px auto;height:auto;align-items:center}
.site-header:has(nav.open)>.brand,.site-header:has(nav.open)>.custom-logo-link{grid-column:1;grid-row:1}
.site-header:has(nav.open)>.menu{grid-column:2;grid-row:1}
.site-header:has(nav.open)>nav.open{position:static;grid-column:1/-1;grid-row:2;width:calc(100% + var(--pad) + var(--pad));margin-inline:calc(0px - var(--pad));padding:30px var(--pad)}
.menu{display:block}
.menu span{display:block;width:25px;border-top:2px solid white;margin:7px}
.ticker{transform:none}
.hero{padding-top:120px}
.hero-title{font-size:clamp(77px,24vw,150px)}
.line-b{margin-left:2vw}
.hero-bottom{align-items:center;margin-bottom:50px}
.round-link{width:82px;height:82px}
.scroll-hint{display:flex;left:var(--pad);right:auto;bottom:22px;writing-mode:horizontal-tb;align-items:center;gap:12px}
.scroll-hint span{width:54px;height:0;border-left:0;border-top:1px solid white;margin-top:0}
.intro,.skills-head{grid-template-columns:1fr}
.intro .section-number{grid-column:auto}
.section{padding-top:85px;padding-bottom:85px}
.section-number{margin-bottom:45px}
.skill-list article{grid-template-columns:56px minmax(0,1fr)}
.skill-list p{grid-column:2/-1;margin-top:-10px}
.cert-grid,.steps{grid-template-columns:1fr}
.steps article{border-right:0;border-bottom:1px solid #ffffff80;min-height:auto}
.contact{min-height:75vh}
.contact-orb{width:80vw;height:80vw}
.contact h2{font-size:25vw}
.cursor-dot{display:none}
}
