:root{--ink:#09090b;--paper:#f2f1ed;--text:#f4f2f5;--muted:#aaa8b3;--violet:#7846ff;--pink:#f056bb;--orange:#ff9d55;--lime:#c9ff68;--max:1540px;--gutter:clamp(20px,4.2vw,76px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--ink);color:var(--text);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.loading{overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
::selection{background:var(--violet);color:#fff}
:focus-visible{outline:3px solid var(--lime);outline-offset:5px}
.dark-section{background:var(--ink);color:var(--text)}
.light-section{background:var(--paper);color:var(--ink)}
.loader{position:fixed;inset:0;background:#08080a;z-index:50;display:grid;place-items:center;transition:opacity .65s cubic-bezier(.2,.7,.2,1),visibility .65s}
.loader>span{font-family:Arial Black,Arial,sans-serif;font-size:clamp(80px,15vw,210px);font-weight:900;letter-spacing:-.11em;line-height:1;transform:translateX(-.05em)}
.loader-star{font-size:.28em;color:var(--violet);vertical-align:top;margin-left:.1em;display:inline-block;animation:spin 2s linear infinite}
.loader-track{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#222}
.loader-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--violet),var(--pink),var(--orange));animation:loadbar 1.2s cubic-bezier(.22,1,.36,1) forwards}
body.ready .loader{opacity:0;visibility:hidden;pointer-events:none}
.scroll-progress{position:fixed;top:0;left:0;z-index:45;width:100%;height:3px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--violet),var(--pink),var(--orange));pointer-events:none}
.cursor-orb{position:fixed;left:0;top:0;width:24px;height:24px;border:1px solid rgba(255,255,255,.75);border-radius:50%;z-index:40;pointer-events:none;opacity:0;transform:translate(-50%,-50%);transition:width .25s,height .25s,background .25s,border-color .25s,opacity .25s;mix-blend-mode:difference}
.cursor-orb.active{opacity:1}.cursor-orb.hover{width:54px;height:54px;background:#fff;border-color:#fff}
.site-header{height:75px;position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);max-width:var(--max);margin:auto;border-bottom:1px solid rgba(255,255,255,.24)}
.logo{font-family:Arial Black,Arial,sans-serif;font-size:26px;font-weight:900;letter-spacing:-.11em;line-height:1;display:flex;align-items:flex-start;gap:6px}
.logo span{color:var(--lime);font-size:13px;letter-spacing:0;animation:spin 10s linear infinite}
.main-nav{display:flex;gap:clamp(22px,3.1vw,56px)}
.main-nav a,.header-contact{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:opacity .25s,color .25s}
.main-nav a:hover,.header-contact:hover{color:var(--lime)}
.header-contact{border:1px solid rgba(255,255,255,.5);border-radius:99px;padding:11px 17px;display:flex;gap:24px;align-items:center}
.arrow-diag{font-size:19px;line-height:0}
.hero{min-height:760px;height:100svh;max-height:1100px;position:relative;isolation:isolate;overflow:hidden;padding:75px var(--gutter) 0}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 29% 31% at 50% 58%,rgba(98,59,157,.24),transparent 75%);z-index:-1}
.hero-topline,.hero-bottom,.section-kicker,.project-meta,.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.hero-topline{max-width:calc(var(--max) - 2*var(--gutter));margin:23px auto 0;color:#99969f}
.hero-inner{max-width:calc(var(--max) - 2*var(--gutter));height:calc(100% - 110px);margin:auto;position:relative}
.hero-eyebrow{font-size:12px;letter-spacing:.18em;font-weight:700;text-align:center;margin:5.5vh 0 0;color:#aaa8ad}
.hero-title{position:relative;z-index:2;font-family:Arial Black,Arial,Helvetica,sans-serif;font-size:clamp(96px,15.25vw,235px);font-weight:900;letter-spacing:-.12em;line-height:.8;margin:5vh 0 0;text-align:center;white-space:nowrap;pointer-events:none}
.title-line{display:block;opacity:0;transform:translateY(105%);filter:blur(10px)}
body.ready .title-line{animation:title-in 1s cubic-bezier(.16,1,.3,1) forwards}
body.ready .title-line.second{animation-delay:.18s}
.title-line.second{padding-right:.12em}
.asterisk{display:inline-block;font-size:.19em;color:var(--lime);letter-spacing:0;vertical-align:top;margin:.06em 0 0 .1em;animation:spin 12s linear infinite}
.hero-visual{position:absolute;left:50%;top:34%;width:min(47vw,645px);aspect-ratio:1.09;transform:translateX(-50%);z-index:3;pointer-events:none;opacity:0;filter:blur(20px) scale(.72);will-change:transform}
body.ready .hero-visual{animation:avatar-in 1.25s .32s cubic-bezier(.2,1,.2,1) forwards}
.hero-halo{position:absolute;width:78%;height:72%;left:11%;top:14%;border-radius:50%;background:radial-gradient(circle at 50% 55%,rgba(140,91,255,.58),rgba(104,53,255,.13) 45%,transparent 72%);filter:blur(44px);animation:halo 5s ease-in-out infinite alternate}
.hero-avatar{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 35px 42px rgba(0,0,0,.65));animation:float 5s ease-in-out infinite alternate}
.hero-orbit{position:absolute;font-size:clamp(24px,4vw,64px);line-height:1;filter:drop-shadow(0 0 15px currentColor)}
.orbit-one{left:-2%;top:16%;color:#9f77ff;animation:float 4.8s ease-in-out infinite alternate}
.orbit-two{right:-4%;bottom:20%;color:var(--orange);animation:spin 14s linear infinite}
.hero-side{position:absolute;z-index:6;bottom:12%;width:25%}
.hero-side-left{left:0}.hero-side-left p{font-size:clamp(15px,1.25vw,20px);font-weight:600;line-height:1.4;max-width:270px;margin:18px 0 0}
.tiny-index{font-size:11px;color:var(--muted);font-weight:700;letter-spacing:.18em}
.hero-side-right{right:0;display:flex;align-items:flex-end;flex-direction:column;gap:10px}
.pill-button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-width:195px;padding:6px 7px 6px 22px;border-radius:99px;background:linear-gradient(100deg,#6f3df5,#ae3db8 47%,#ffae6d);border:1px solid rgba(255,255,255,.45);box-shadow:0 0 35px rgba(133,62,234,.27);font-size:13px;font-weight:800;white-space:nowrap;transition:box-shadow .3s,transform .3s}
.pill-button:hover{box-shadow:0 0 45px rgba(174,61,184,.62)}
.pill-icon{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:#fff;color:#151019;font-size:26px;font-weight:400;line-height:1;transition:transform .35s}
.pill-button:hover .pill-icon{transform:rotate(90deg)}
.button-note{font-size:11px;color:#a3a0ac;letter-spacing:.06em}
.hero-bottom{position:absolute;bottom:30px;left:var(--gutter);right:var(--gutter);max-width:calc(var(--max) - 2*var(--gutter));margin:auto;color:#a5a2aa}
.hero-scroll-line{width:25%;height:1px;background:#666;position:relative;overflow:hidden}
.hero-scroll-line::after{content:"";position:absolute;top:0;left:-30%;width:30%;height:1px;background:#fff;animation:line-scan 2.7s ease-in-out infinite}
.ticker{background:var(--lime);color:#080808;overflow:hidden;border-top:2px solid var(--lime);border-bottom:2px solid var(--lime);transform:rotate(-1.35deg) scale(1.03);position:relative;z-index:5}
.ticker-track{display:flex;width:max-content;animation:marquee 30s linear infinite}
.ticker-segment{display:flex;align-items:center;flex:none;font-family:Arial Black,Arial,sans-serif;font-size:clamp(22px,4.3vw,58px);font-weight:900;letter-spacing:-.055em;line-height:1;padding:13px 0;white-space:nowrap}
.ticker b{display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:.7em;line-height:1;margin:0 .35em;font-weight:400;transform:translateY(-.16em)}
.showcase,.about,.focus,.contact{padding:clamp(90px,10vw,160px) var(--gutter)}
.showcase,.about,.focus,.contact,.footer{position:relative}
.showcase>*:not(.project-grid),.about>*,.focus>*,.contact>*,.footer>*{max-width:calc(var(--max) - 2*var(--gutter));margin-left:auto;margin-right:auto}
.section-kicker{padding-bottom:18px;border-bottom:1px solid currentColor;opacity:.65}
.showcase-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:5vw;margin:85px auto 80px!important;max-width:calc(var(--max) - 2*var(--gutter))}
.section-title,.focus-title,.contact-title{font-family:Arial Black,Arial,sans-serif;font-size:clamp(60px,9.8vw,150px);letter-spacing:-.105em;line-height:.86;font-weight:900;margin:0}
.section-title em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px #f2f0f6;white-space:nowrap}
.showcase{overflow:hidden}
.showcase-title-line{display:block;position:relative;isolation:isolate;width:max-content;transform-origin:12% 82%}
.showcase-title-line::before,.showcase-title-line::after{content:"";position:absolute;z-index:-1;pointer-events:none;opacity:0}
.showcase-title-line::before{left:-.55em;top:30%;width:1.2em;height:.44em;background:linear-gradient(90deg,transparent,rgba(172,108,255,.8) 75%,transparent) 0 10%/100% 2px no-repeat,linear-gradient(90deg,transparent,rgba(197,255,105,.75) 75%,transparent) 10% 52%/85% 2px no-repeat,linear-gradient(90deg,transparent,rgba(255,173,108,.65) 75%,transparent) 30% 92%/65% 2px no-repeat;filter:blur(.6px)}
.showcase-title-line::after{left:-.32em;top:18%;width:.85em;height:.7em;background:radial-gradient(circle at 75% 58%,rgba(180,124,255,.68) 0 10%,transparent 31%),radial-gradient(circle at 45% 39%,rgba(198,255,108,.43) 0 11%,transparent 35%),radial-gradient(circle at 21% 74%,rgba(255,177,115,.47) 0 9%,transparent 33%);filter:blur(7px)}
.showcase-motion .showcase-title-line{opacity:0;filter:blur(10px)}
.showcase-motion.showcase-title-active .showcase-title-ideas{animation:showcase-roll-in 1.08s .05s both}
.showcase-motion.showcase-title-active .showcase-title-motion{animation:showcase-roll-in 1.12s .7s both}
.showcase-motion.showcase-title-active .showcase-title-ideas::before{animation:showcase-speed-trail 1.06s .08s both}
.showcase-motion.showcase-title-active .showcase-title-motion::before{animation:showcase-speed-trail 1.1s .75s both}
.showcase-motion.showcase-title-active .showcase-title-ideas::after{animation:showcase-dust 1.04s .11s both}
.showcase-motion.showcase-title-active .showcase-title-motion::after{animation:showcase-dust 1.06s .78s both}
.showcase-intro p{font-size:clamp(18px,1.65vw,24px);font-weight:600;line-height:1.35;max-width:345px;margin:0 0 5px}
.showcase-motion .showcase-copy{opacity:0;transform:translateX(72px);filter:blur(9px)}
.showcase-motion.showcase-copy-active .showcase-copy{animation:showcase-copy-in .68s cubic-bezier(.16,1,.3,1) both}
.showcase .project-card.reveal{transition-duration:.7s}
.project-grid{max-width:calc(var(--max) - 2*var(--gutter));margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,3vw,42px)}
.project-card{display:block;position:relative;min-width:0;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.35)}
.project-als{align-self:start}
.project-card:nth-child(2){margin-top:16vw}.project-card:nth-child(3){grid-column:1/-1;width:calc(50% - clamp(11px,1.5vw,21px));margin-top:-16vw}
.project-art{position:relative;aspect-ratio:1.28;overflow:hidden;border-radius:16px;background:#23212a;isolation:isolate}
.project-card:nth-child(3) .project-art{aspect-ratio:1.28}
.project-art>img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .8s}
.project-card:hover .project-art>img{transform:scale(1.09) rotate(-1deg);filter:saturate(1.15)}
.project-art::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.22),transparent 42%);opacity:0;transition:opacity .3s;pointer-events:none}
.project-card:hover .project-art::after{opacity:1}
.art-sticker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-10deg);font-family:Arial Black,Arial,sans-serif;font-size:clamp(100px,15vw,250px);font-weight:900;color:#fff;text-shadow:0 10px 25px rgba(20,0,40,.25);line-height:1;letter-spacing:-.15em;transition:transform .7s cubic-bezier(.2,1,.2,1)}
.art-sticker span{font-size:.28em;position:absolute;top:-.2em;right:-.5em;color:var(--lime)}
.project-card:hover .art-sticker{transform:translate(-50%,-50%) rotate(5deg) scale(1.08)}
.sticker-o{color:#d8ffff;transform:translate(-50%,-50%) rotate(11deg)}.sticker-o span{color:#d997ff}.project-card:hover .sticker-o{transform:translate(-50%,-50%) rotate(-3deg) scale(1.08)}
.project-meta{font-size:11px;color:#aba7b1;margin:19px 0 17px}.project-open{display:grid;place-items:center;width:37px;height:37px;border:1px solid #5e5964;border-radius:50%;font-size:19px;color:#fff;transition:background .3s,color .3s,transform .3s}.project-card:hover .project-open{background:var(--lime);color:#090909;transform:rotate(45deg)}
.project-card h3{font-family:Arial Black,Arial,sans-serif;font-size:clamp(36px,5vw,77px);letter-spacing:-.075em;line-height:1;margin:0 0 12px}.project-card p{color:#b8b5be;font-size:clamp(15px,1.25vw,19px);line-height:1.4;margin:0;max-width:500px}
.project-role{display:grid;grid-template-columns:minmax(145px,36%) minmax(0,1fr);gap:18px;align-items:start;margin-top:25px;padding-top:18px;border-top:1px solid rgba(255,255,255,.25)}
.project-role-label{color:var(--lime);font-size:11px;font-weight:800;line-height:1.45;letter-spacing:.11em;text-transform:uppercase}.project-role-label span{display:inline-block;margin-left:4px;font-size:15px;line-height:0}
.project-card .project-role p{max-width:none;color:#e7e4ec;font-size:clamp(13px,1.08vw,16px);line-height:1.5}
.als-art{background:#111521;display:flex;flex-direction:column;justify-content:center;padding:7%;overflow:hidden}
.als-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(149,184,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(149,184,255,.15) 1px,transparent 1px);background-size:36px 36px;transform:perspective(450px) rotateX(48deg) scale(1.6);transform-origin:bottom;opacity:.65;transition:transform 1s}
.project-card:hover .als-grid{transform:perspective(450px) rotateX(38deg) scale(1.85)}
.als-glow{position:absolute;inset:0;background:radial-gradient(circle at 70% 60%,rgba(54,119,255,.7),transparent 40%),radial-gradient(circle at 30% 35%,rgba(186,72,245,.45),transparent 35%);mix-blend-mode:screen;filter:blur(22px);z-index:0}
.als-wordmark{position:relative;z-index:1;font-family:Arial Black,Arial,sans-serif;font-weight:900;font-size:clamp(45px,6vw,96px);letter-spacing:-.09em;line-height:.95;text-shadow:0 8px 40px rgba(0,0,0,.7)}
.als-wordmark span{font-size:.5em;color:var(--lime);vertical-align:top;margin-left:.12em}.als-caption{position:absolute;z-index:1;bottom:7%;left:7%;font-size:11px;letter-spacing:.18em;font-weight:700;color:#c6cfeb}
.about{padding-top:clamp(150px,16vw,270px);padding-bottom:clamp(130px,14vw,240px);overflow:hidden}
.about-heading{min-height:280px;display:flex;align-items:center;justify-content:center;position:relative;margin-top:80px!important}
.outline-title{position:relative;font-family:Arial Black,Arial,sans-serif;font-size:clamp(74px,13.5vw,210px);letter-spacing:-.1em;line-height:1;color:transparent;-webkit-text-stroke:2px #f2f2f5;white-space:nowrap;margin:0}
.outline-title.about-title-motion{opacity:0;transform:translateY(60px);filter:blur(8px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),filter 1s cubic-bezier(.16,1,.3,1)}
.outline-title.about-title-motion.visible{opacity:1;transform:translateY(0);filter:blur(0)}
.outline-title .about-fill{display:none}
.outline-title.about-title-motion .about-fill{display:block;position:absolute;inset:0 auto 0 0;width:calc(100% + .16em);color:#fff;-webkit-text-stroke:0;pointer-events:none;clip-path:inset(0 0 0 0);text-shadow:0 0 20px rgba(191,156,255,.22)}
.outline-title.about-title-motion.visible .about-fill{animation:about-fill-out 1.9s 1.4s cubic-bezier(.65,0,.25,1) forwards}
.about-asterisk,.about-flower{position:absolute;z-index:2;font-family:Arial Black,Arial,sans-serif;line-height:1;filter:drop-shadow(0 16px 12px rgba(0,0,0,.4));pointer-events:none}
.about-asterisk{font-size:clamp(100px,15vw,230px);color:#a98bff;left:-3%;top:-30%;text-shadow:-8px 8px #6456bf,8px -8px #d8d3ff;transform:rotate(-20deg)}
.about-flower{font-size:clamp(100px,14vw,220px);color:#b95dff;right:-3%;bottom:-25%;text-shadow:-6px 8px #4c2cae,8px -5px #edbcff;transform:rotate(18deg)}
.about-copy{max-width:730px!important;margin-top:65px!important;margin-right:8%!important;margin-left:auto!important}
.about-copy p:first-child{font-size:clamp(25px,3.3vw,48px);font-weight:700;letter-spacing:-.05em;line-height:1.16;color:#fff;margin:0 0 28px}
.about-copy p:nth-child(2){font-size:clamp(17px,1.6vw,23px);line-height:1.45;color:#b9b5bf;margin:0 0 35px}
.text-link{display:inline-flex;gap:55px;align-items:center;border-bottom:1px solid #fff;padding:0 0 10px;text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.1em;transition:gap .3s,color .3s}
.text-link:hover{gap:70px;color:var(--lime)}.text-link span{font-size:23px;line-height:0}
.focus{border-radius:clamp(24px,4vw,60px) clamp(24px,4vw,60px) 0 0;margin-top:-32px;z-index:2}
.focus-title{margin-top:80px!important;margin-bottom:90px!important}.focus-line{display:block;white-space:nowrap}.focus-line-middle{color:transparent;-webkit-text-stroke:2px #111}.focus-dot{display:inline-block;color:var(--violet)}
.focus-list{border-top:1px solid #191919}
.focus-row{display:grid;grid-template-columns:8% 43% 1fr 40px;align-items:center;gap:15px;min-height:145px;border-bottom:1px solid #191919;position:relative;isolation:isolate;transition:padding .35s,color .35s}
.focus-row::before{content:"";position:absolute;z-index:-1;inset:0;background:var(--lime);transform:scaleY(0);transform-origin:bottom;transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.focus-row:hover::before{transform:scaleY(1)}.focus-row:hover{padding-left:16px;padding-right:16px}
.focus-no{align-self:start;margin-top:26px;font-size:12px;font-weight:700;letter-spacing:.12em}.focus-row h3{font-size:clamp(28px,3.3vw,50px);font-family:Arial Black,Arial,sans-serif;font-weight:900;letter-spacing:-.06em;line-height:1.1;margin:0}.focus-row p{font-size:clamp(15px,1.3vw,19px);line-height:1.35;max-width:300px;margin:0}.focus-plus{font-size:32px;justify-self:end;transition:transform .3s}.focus-row:hover .focus-plus{transform:rotate(90deg)}
.contact{padding-top:clamp(100px,12vw,190px);padding-bottom:0;overflow:hidden}
.contact-main{display:grid;grid-template-columns:1fr minmax(240px,32%);gap:5vw;align-items:end;margin-top:90px!important;margin-bottom:clamp(100px,13vw,190px)!important}
.contact-overline{font-size:12px;font-weight:700;letter-spacing:.18em;margin:0 0 25px}
.contact-title{position:relative;--contact-beam-shift:0px;--contact-star-x:0px;--contact-star-y:0px;font-size:clamp(72px,12vw,195px);line-height:.79}.contact-line{display:block;position:relative;z-index:1;white-space:nowrap}.contact-star{position:absolute;z-index:2;left:var(--contact-star-x);top:var(--contact-star-y);display:grid;place-items:center;width:1em;height:1em;margin:-.5em 0 0 -.5em;font-size:.28em;line-height:1;color:var(--violet);transform-origin:center;pointer-events:none}.contact-title:not(.star-positioned) .contact-star{visibility:hidden}.contact-star>svg{display:block;width:.86em;height:.86em;animation:spin 12s linear infinite}.contact-join-beam{position:absolute;z-index:0;left:0;top:calc(50% - 1.5px + var(--contact-beam-shift));width:max-content;height:3px;border-radius:999px;clip-path:polygon(0 50%,1.8% 0,100% 0,100% 100%,1.8% 100%);filter:blur(.45px);pointer-events:none;opacity:0;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,transparent 0%,var(--violet) 2.5%,var(--violet) 98%,transparent 100%)}.contact-join-beam::before{content:"CONNECT";display:block;visibility:hidden;white-space:nowrap}
@media (min-width:651px){.contact-title{--contact-beam-shift:.035em}}
.contact-actions{padding-bottom:10px}.contact-actions>p{font-size:clamp(18px,1.6vw,24px);line-height:1.36;font-weight:600;margin:0 0 34px}.contact-actions small{font-size:12px;line-height:1.35;display:block;margin-top:16px;color:#56545b;text-align:center}
.contact-download{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:67px;border-radius:99px;padding:8px 10px 8px 25px;background:var(--ink);color:#fff;font-size:17px;font-weight:700;box-shadow:0 20px 40px rgba(0,0,0,.14);transition:background .3s,transform .3s}
.contact-download:hover{background:#6737e5}.contact-download-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:#111;font-size:31px;font-weight:400;transition:transform .35s}.contact-download:hover .contact-download-icon{transform:rotate(90deg)}
.contact-links{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #171717}
.contact-links a{min-height:105px;display:flex;justify-content:space-between;align-items:center;gap:10px;border-right:1px solid #171717;padding:16px 22px 16px 0;font-size:clamp(14px,1.35vw,20px);font-weight:700;transition:padding .3s,color .3s}
.contact-links a+a{padding-left:22px}.contact-links a:last-child{border-right:0}.contact-links a:hover{color:#6330e8;padding-left:30px}.contact-links span{font-size:22px}
.footer{padding:70px var(--gutter) 28px;border-radius:clamp(24px,4vw,60px) clamp(24px,4vw,60px) 0 0;margin-top:-1px;overflow:hidden}
.footer-top{display:flex;justify-content:space-between;gap:30px}.footer-name{font-family:Arial Black,Arial,sans-serif;font-size:clamp(44px,7vw,110px);font-weight:900;line-height:.9;letter-spacing:-.09em;color:transparent;-webkit-text-stroke:1.5px #fff}.footer-small{font-size:12px;line-height:1.6;font-weight:700;letter-spacing:.1em}.footer-small a{display:inline-block;margin-top:20px;border-bottom:1px solid #fff}.footer-small a:hover{color:var(--lime)}
.glyphs{display:flex;justify-content:space-between;align-items:center;gap:10px;white-space:nowrap;font-family:Arial Black,Arial,sans-serif;font-size:clamp(55px,11.5vw,190px);line-height:1;letter-spacing:-.1em;margin-top:55px!important;margin-bottom:50px!important;transform-origin:center;will-change:transform}
.glyphs span{display:inline-block;transition:transform .5s}.glyphs span:hover{transform:translateY(-25px) rotate(20deg)}
.glyphs span:nth-child(1){color:#9e5aff}.glyphs span:nth-child(2){color:var(--lime);letter-spacing:-.4em;margin-right:.3em}.glyphs span:nth-child(3){color:#c4d8f9}.glyphs span:nth-child(4){color:#9163ff}.glyphs span:nth-child(5){color:var(--orange)}.glyphs span:nth-child(6){color:#e7f4ff}.glyphs span:nth-child(7){color:var(--pink)}
.footer-bottom{padding-top:20px;border-top:1px solid #535158;color:#96939d}
.reveal{opacity:0;transform:translateY(60px);filter:blur(8px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1),filter .8s}
.reveal.visible{opacity:1;transform:translateY(0);filter:blur(0)}
.about-motion{isolation:isolate}
.about-motion::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 55% 38% at 50% 42%,rgba(108,62,215,.15),transparent 75%);opacity:0;transform:scale(.78);transition:opacity 1.3s ease,transform 1.8s cubic-bezier(.16,1,.3,1)}
.about-motion.heading-visible::before{opacity:1;transform:scale(1)}
.about-motion>*{position:relative;z-index:1}
.about-motion .section-kicker{opacity:0;border-bottom-color:transparent;transform:translateY(22px);transition:opacity .7s ease,transform .9s cubic-bezier(.16,1,.3,1)}
.about-motion .section-kicker::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:#aaa8b3;transform:scaleX(0);transform-origin:left;transition:transform 1.1s .2s cubic-bezier(.16,1,.3,1)}
.about-motion .section-kicker span{display:inline-block;opacity:0;transform:translateY(12px);transition:opacity .65s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.about-motion .section-kicker span:last-child{transition-delay:.13s}
.about-motion.kicker-visible .section-kicker{opacity:.7;transform:translateY(0)}
.about-motion.kicker-visible .section-kicker::after{transform:scaleX(1)}
.about-motion.kicker-visible .section-kicker span{opacity:1;transform:translateY(0)}
.about-motion .about-asterisk,.about-motion .about-flower{opacity:0;filter:blur(12px);transition:opacity .8s ease,transform 1.2s cubic-bezier(.16,1,.3,1),filter 1s ease}
.about-motion .about-asterisk{transform:translate(-70px,-35px) rotate(-95deg) scale(.45)}
.about-motion .about-flower{transform:translate(70px,45px) rotate(95deg) scale(.45);transition-delay:.1s}
.about-motion.heading-visible .about-asterisk{opacity:1;filter:drop-shadow(0 16px 12px rgba(0,0,0,.4));transform:rotate(-20deg) scale(1);animation:about-star-idle 5.2s 1.1s ease-in-out infinite alternate}
.about-motion.heading-visible .about-flower{opacity:1;filter:drop-shadow(0 16px 12px rgba(0,0,0,.4));transform:rotate(18deg) scale(1);animation:about-flower-idle 5.8s 1.2s ease-in-out infinite alternate}
.about-motion .about-copy p,.about-motion .about-copy .text-link{opacity:0;transform:translateY(42px);filter:blur(8px);transition:opacity .85s ease,transform 1s cubic-bezier(.16,1,.3,1),filter .9s ease}
.about-motion.copy-visible .about-copy p,.about-motion.copy-visible .about-copy .text-link{opacity:1;transform:translateY(0);filter:blur(0)}
.about-motion.copy-visible .about-copy p:nth-child(2){transition-delay:.15s}
.about-motion.copy-visible .about-copy .text-link{transition-delay:.3s}
.focus-motion .focus-line{opacity:0}
.focus-motion.focus-active .focus-line-middle{animation:focus-accent-in 1.3s cubic-bezier(.16,1,.3,1) forwards}
.focus-motion.focus-active .focus-line-top{animation:focus-top-in .95s 1.12s cubic-bezier(.16,1,.3,1) both}
.focus-motion.focus-active .focus-line-bottom{animation:focus-bottom-in 1s 1.42s cubic-bezier(.16,1,.3,1) both}
.focus-motion .focus-dot{opacity:0;transform:scale(0)}
.focus-motion.focus-active .focus-dot{animation:focus-dot-pop .6s 2.15s cubic-bezier(.2,1.4,.3,1) forwards}
.contact-motion .section-kicker{position:relative;opacity:0;transform:translateY(22px);border-bottom-color:transparent;transition:opacity .7s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.contact-motion .section-kicker::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:#171717;transform:scaleX(0);transform-origin:left;transition:transform 1s .15s cubic-bezier(.16,1,.3,1)}
.contact-motion.contact-kicker-visible .section-kicker{opacity:.65;transform:translateY(0)}
.contact-motion.contact-kicker-visible .section-kicker::after{transform:scaleX(1)}
.contact-motion .contact-overline,.contact-motion .contact-actions>p,.contact-motion .contact-button-wrap,.contact-motion .contact-actions>small,.contact-motion .contact-links a{opacity:0;transform:translateY(36px);filter:blur(7px)}
.contact-motion.contact-active .contact-overline{animation:contact-rise .75s .05s cubic-bezier(.16,1,.3,1) both}
.contact-motion .contact-line{opacity:0}
.contact-motion.contact-active .contact-line-lets{animation:contact-lets-join 1.1s linear both}
.contact-motion.contact-active .contact-line-connect{animation:contact-connect-join 1.1s linear both}
.contact-motion.contact-active .contact-join-beam{animation:contact-beam 1.1s .56s ease-out both}
.contact-motion .contact-star{opacity:0;transform:scale(0)}
/* The beam reaches CONNECT at .56s + 40% of 1.1s = 1s. */
.contact-motion.contact-active .contact-star{animation:contact-star-pop .7s 1s cubic-bezier(.2,1.4,.3,1) forwards}
.contact-motion.contact-actions-visible .contact-actions>p{animation:contact-rise .85s .4s cubic-bezier(.16,1,.3,1) both}
.contact-motion.contact-actions-visible .contact-button-wrap{animation:contact-rise .9s .65s cubic-bezier(.16,1,.3,1) both}
.contact-motion.contact-actions-visible .contact-actions>small{animation:contact-rise .75s .9s cubic-bezier(.16,1,.3,1) both}
.contact-motion .contact-links{position:relative;border-top-color:transparent}
.contact-motion .contact-links::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#171717;transform:scaleX(0);transform-origin:left}
.contact-motion.contact-links-visible .contact-links::before{animation:contact-link-line 1s cubic-bezier(.16,1,.3,1) forwards}
.contact-motion.contact-links-visible .contact-links a{animation:contact-rise .8s cubic-bezier(.16,1,.3,1) both}
.contact-motion.contact-links-visible .contact-links a:nth-child(2){animation-delay:.1s}
.contact-motion.contact-links-visible .contact-links a:nth-child(3){animation-delay:.2s}
.contact-motion.contact-links-visible .contact-links a:nth-child(4){animation-delay:.3s}
@keyframes contact-rise{from{opacity:0;transform:translateY(36px);filter:blur(7px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes showcase-roll-in{0%{opacity:0;transform:translateX(-90vw) rotate(-8deg) skewX(-7deg) scaleX(.95);filter:blur(16px)}18%{opacity:.75;transform:translateX(-77vw) rotate(-6deg) skewX(-5deg) scaleX(.96);filter:blur(9px)}60%{opacity:1;transform:translateX(-5%) rotate(2deg) skewX(1deg) scaleX(1);filter:blur(0)}78%{transform:translateX(2%) rotate(1.3deg) skewX(0) scaleX(.99)}91%{transform:translateX(-.65%) rotate(-.55deg) scaleX(1)}100%{opacity:1;transform:translateX(0) rotate(0) skewX(0) scaleX(1);filter:blur(0)}}
@keyframes showcase-speed-trail{0%,100%{opacity:0;transform:translateX(-.25em) scaleX(.3)}23%{opacity:.95;transform:translateX(0) scaleX(1)}68%{opacity:.8;transform:translateX(.12em) scaleX(.85)}94%{opacity:0;transform:translateX(.22em) scaleX(.4)}}
@keyframes showcase-dust{0%,100%{opacity:0;transform:translate(-.25em,.12em) scale(.35)}30%{opacity:.85;transform:translate(0,0) scale(1)}75%{opacity:.55;transform:translate(-.16em,-.05em) scale(1.2)}}
@keyframes showcase-copy-in{from{opacity:0;transform:translateX(72px);filter:blur(9px)}to{opacity:1;transform:translateX(0);filter:blur(0)}}
@keyframes contact-lets-join{0%{opacity:0;transform:translateY(-82px);filter:blur(10px)}50%{opacity:1;transform:translateY(4px) scaleY(.95);filter:blur(0);animation-timing-function:cubic-bezier(.12,.9,.28,1)}70%{transform:translateY(-14px) scaleY(1.03);animation-timing-function:cubic-bezier(.35,0,.65,1)}88%{transform:translateY(2px) scaleY(.99);animation-timing-function:ease-out}100%{opacity:1;transform:translateY(0) scaleY(1);filter:blur(0)}}
@keyframes contact-connect-join{0%{opacity:0;transform:translateY(82px);filter:blur(10px)}50%{opacity:1;transform:translateY(-4px) scaleY(.95);filter:blur(0);animation-timing-function:cubic-bezier(.12,.9,.28,1)}70%{transform:translateY(14px) scaleY(1.03);animation-timing-function:cubic-bezier(.35,0,.65,1)}88%{transform:translateY(-2px) scaleY(.99);animation-timing-function:ease-out}100%{opacity:1;transform:translateY(0) scaleY(1);filter:blur(0)}}
@keyframes contact-beam{0%{opacity:0;transform:scaleX(0)}40%{opacity:.8;transform:scaleX(1)}75%{opacity:.32;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1)}}
@keyframes contact-star-pop{0%{opacity:1;transform:scale(.08) rotate(-70deg)}70%{opacity:1;transform:scale(1.3) rotate(12deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes contact-link-line{to{transform:scaleX(1)}}
@keyframes focus-accent-in{0%{opacity:0;transform:translateY(40px) scale(.86);filter:blur(12px);-webkit-text-stroke-color:transparent}55%{opacity:1;transform:translateY(-5px) scale(1.025);filter:blur(0);-webkit-text-stroke-color:var(--violet);text-shadow:0 0 30px rgba(120,70,255,.36)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0);-webkit-text-stroke-color:#111;text-shadow:none}}
@keyframes focus-top-in{from{opacity:0;transform:translate(-8%,35px) skewX(-7deg);filter:blur(12px)}to{opacity:1;transform:translate(0,0) skewX(0);filter:blur(0)}}
@keyframes focus-bottom-in{from{opacity:0;transform:translate(8%,38px) skewX(7deg);filter:blur(12px)}to{opacity:1;transform:translate(0,0) skewX(0);filter:blur(0)}}
@keyframes focus-dot-pop{0%{opacity:0;transform:scale(0) rotate(-70deg)}70%{opacity:1;transform:scale(1.35) rotate(10deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes about-fill-out{from{clip-path:inset(0 0 0 0)}to{clip-path:inset(0 0 0 100%)}}
@keyframes about-star-idle{0%{translate:0 0;rotate:0deg}50%{translate:-8px -15px;rotate:12deg}100%{translate:7px 8px;rotate:25deg}}
@keyframes about-flower-idle{0%{translate:0 0;rotate:0deg}50%{translate:10px 13px;rotate:-10deg}100%{translate:-8px -8px;rotate:-22deg}}
@keyframes title-in{from{opacity:0;transform:translateY(105%);filter:blur(10px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes avatar-in{from{opacity:0;transform:translateX(-50%) translateY(110px) scale(.72);filter:blur(20px)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1);filter:blur(0)}}
@keyframes float{from{transform:translateY(-8px) rotate(-3deg)}to{transform:translateY(17px) rotate(3deg)}}
@keyframes halo{from{transform:scale(.9);opacity:.5}to{transform:scale(1.2);opacity:1}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes line-scan{to{left:100%}}
@keyframes loadbar{0%{width:0}65%{width:75%}100%{width:100%}}
@media (max-width:950px){.hero{min-height:680px}.hero-title{font-size:clamp(82px,16vw,150px)}.hero-visual{width:min(62vw,590px);top:35%}.hero-side{bottom:11%;width:28%}.showcase-intro{align-items:start;flex-direction:column;gap:30px}.project-card:nth-child(2){margin-top:12vw}.project-card:nth-child(3){margin-top:-12vw}.about-copy{margin-right:0!important}.focus-row{grid-template-columns:8% 46% 1fr 32px}.contact-main{grid-template-columns:1fr}.contact-actions{max-width:450px}.contact-links{grid-template-columns:repeat(2,1fr)}.contact-links a:nth-child(2){border-right:0}}
@media (min-width:651px){.hero-side-right{width:max-content}.hero-side-right .button-note{align-self:stretch;text-align:center}.hero-visual{transition:translate .16s ease-out}.ticker{transform:translateY(min(4vw,65px)) rotate(-1.35deg) scale(1.03)}}
@media (max-width:650px){:root{--gutter:20px}html{scroll-padding-top:60px}.cursor-orb{display:none}.site-header{height:64px}.logo{font-size:23px}.main-nav{display:none}.header-contact{font-size:11px;padding:10px 14px;gap:12px}.hero{height:100svh;min-height:660px;max-height:900px;padding-top:64px}.hero-topline{font-size:9px;letter-spacing:.06em;margin-top:17px}.topline-right{display:block;max-width:46%;text-align:right}.hero-inner{height:calc(100% - 92px)}.hero-eyebrow{font-size:10px;line-height:1.5;letter-spacing:.13em;max-width:220px;margin:8vh auto 0}.hero-title{font-size:clamp(72px,18.2vw,120px);line-height:.84;letter-spacing:-.11em;margin:9vh 0 0;text-align:left}.title-line.second{padding-right:0}.asterisk{font-size:.18em;margin-left:.08em}.hero-visual{width:min(108vw,550px);top:37%;left:50%}.hero-orbit{font-size:30px}.orbit-one{left:8%;top:12%}.orbit-two{right:7%;bottom:14%}.hero-side-left{width:56%;bottom:14%;left:0}.hero-side-left p{font-size:14px;line-height:1.3;margin-top:9px}.tiny-index{font-size:9px}.hero-side-right{width:auto;bottom:4%;right:0;left:0;align-items:stretch}.pill-button{width:100%;min-height:55px;padding-left:20px}.button-note{display:block;text-align:center}.hero-bottom{bottom:19px;font-size:8px}.hero-bottom span:last-child{display:none}.hero-scroll-line{width:57%}.showcase,.about,.focus,.contact{padding:90px var(--gutter)}.section-kicker{font-size:9px;letter-spacing:.08em}.showcase-intro{margin:65px auto 56px!important}.section-title{font-size:clamp(55px,14vw,95px)}.showcase-intro p{font-size:18px}.project-grid{grid-template-columns:1fr;gap:55px}.project-card:nth-child(2),.project-card:nth-child(3){margin-top:0;grid-column:auto;width:100%}.project-art,.project-card:nth-child(3) .project-art{aspect-ratio:1.19;border-radius:12px}.art-sticker{font-size:42vw}.project-card h3{font-size:45px}.project-card p{font-size:16px}.als-wordmark{font-size:11vw}.about{padding-top:130px;padding-bottom:120px}.about-heading{min-height:160px;margin-top:65px!important}.outline-title{font-size:clamp(60px,16vw,100px);-webkit-text-stroke:1.5px #fff}.about-asterisk{font-size:100px;left:-12%;top:-40%}.about-flower{font-size:90px;right:-10%;bottom:-30%}.about-copy{margin-top:55px!important}.about-copy p:first-child{font-size:29px}.about-copy p:nth-child(2){font-size:17px}.focus{margin-top:-25px;border-radius:28px 28px 0 0}.focus-title{font-size:clamp(60px,14.5vw,90px);margin:65px auto 65px!important}.focus-row{grid-template-columns:38px 1fr 30px;gap:12px;min-height:130px;padding:21px 0}.focus-no{margin-top:5px}.focus-row h3{font-size:28px}.focus-row p{grid-column:2;grid-row:2;font-size:15px}.focus-plus{grid-column:3;grid-row:1}.contact{padding-top:115px;padding-bottom:0}.contact-main{margin-top:65px!important;margin-bottom:90px!important;gap:50px}.contact-title{font-size:clamp(72px,17vw,110px)}.contact-actions>p{font-size:18px}.contact-links{grid-template-columns:1fr}.contact-links a,.contact-links a+a{min-height:72px;padding:12px 0;border-right:0;border-bottom:1px solid #171717;font-size:18px}.contact-links a:last-child{border-bottom:0}.footer{border-radius:28px 28px 0 0;padding-top:65px}.footer-top{align-items:flex-end}.footer-name{font-size:clamp(44px,12vw,70px)}.footer-small{font-size:9px}.glyphs{font-size:clamp(50px,14vw,90px);gap:4px;width:max-content;margin-top:55px!important;margin-bottom:55px!important;animation:marquee 15s linear infinite}.glyphs span{margin-right:22px}.footer-bottom{font-size:9px;letter-spacing:.06em}}
@media (max-width:390px){.hero-title{font-size:17.5vw}.hero-side-left p{font-size:13px}.hero-side-left{bottom:16%}.contact-title{font-size:16vw}.footer-small{display:none}}
@media (max-width:650px){.project-role{grid-template-columns:1fr;gap:9px;margin-top:22px;padding-top:16px}.project-card .project-role p{font-size:14px;line-height:1.48}}
@media (max-width:650px){.section-title{font-size:12vw}.hero{height:calc(100svh + 180px);min-height:850px;max-height:none}.hero-topline{gap:10px}.hero-visual{top:16svh;width:min(96vw,500px)}.hero-side-right{top:calc(100svh - 285px);bottom:auto;right:0;left:0;align-items:stretch}.hero-side-left{display:block;top:calc(100svh - 145px);bottom:auto;left:0;width:min(100%,320px)}.hero-bottom{display:none}.ticker{transform:none}.glyphs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));justify-items:center;align-items:center;gap:0;width:100%;font-size:clamp(30px,9vw,41px);line-height:1.2;letter-spacing:0;margin-top:55px!important;margin-bottom:55px!important;animation:none;transform:none;will-change:auto}.glyphs span{display:block;margin:0!important;white-space:nowrap}.glyphs span:nth-child(2){font-size:clamp(12px,3.8vw,17px);letter-spacing:-.23em}.glyphs.glyphs-motion{opacity:0;transform:translateX(28px);transition:opacity .7s ease,transform .95s cubic-bezier(.16,1,.3,1)}.glyphs.glyphs-motion.visible{opacity:1;transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.loader{display:none}.title-line,.hero-visual,.reveal{opacity:1!important;transform:none!important;filter:none!important}.hero-visual{transform:translateX(-50%)!important}}

/* Let the floating portrait overlap DANIIL while keeping the intro and CTA clear. */
@media (max-width:650px){
  .hero{height:calc(100svh + 60px);min-height:0}
  .hero-eyebrow{margin-top:3vh}
  .hero-title{margin-top:2vh;font-size:clamp(64px,20.6vw,124px)}
  .hero-visual{top:16.3svh;width:min(80vw,500px)}
  .hero-side-left{top:calc(100svh - 325px);width:min(100%,320px)}
  .hero-side-right{top:calc(100svh - 225px)}
  .hero-side-right.reveal:not(.visible){transform:translateY(20px)}
  .ticker{transform:rotate(-1.1deg) scale(1.03)}
}
@media (max-width:650px) and (max-height:700px){
  .hero{height:calc(100svh + 90px)}
  .hero-eyebrow{margin-top:2vh}
  .hero-visual{width:min(76vw,500px)}
  .hero-side-left{top:calc(100svh - 280px)}
  .hero-side-right{top:calc(100svh - 185px)}
}
@media (max-width:350px) and (max-height:700px){
  .hero-visual{width:66vw}
}
