@font-face{font-family:Archivo Black;src:url('assets/fonts/ArchivoBlack-Regular.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:Inter TWOFOLD;src:url('assets/fonts/InterVariable.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Inter TWOFOLD;src:url('assets/fonts/InterVariable-Italic.ttf') format('truetype');font-weight:100 900;font-style:italic;font-display:swap}
:root{--black:#090909;--ivory:#f2f0ea;--graphite:#1c1c1c;--grey:#a6a6a6;--blue:#3457ff;--gutter:clamp(1.2rem,3vw,3.75rem);--display:'Archivo Black',Impact,sans-serif;--body:'Inter TWOFOLD',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{margin:0;background:var(--black);color:var(--ivory);font-family:var(--body);font-size:16px;overflow-x:hidden}
body:has(.menu-toggle[aria-expanded="true"]){overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
.site-header{position:fixed;inset:0 0 auto;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1rem var(--gutter);mix-blend-mode:normal;pointer-events:none}
.brand-mark,.primary-nav,.contact-link,.menu-toggle{pointer-events:auto}
.brand-mark{display:grid;place-items:center;width:2.5rem;height:2.5rem}
.brand-mark img{width:2.2rem;height:2.2rem;object-fit:contain;transition:filter .35s ease,transform .35s ease}
.brand-mark:hover img{filter:drop-shadow(0 0 10px rgb(52 87 255 / .8));transform:rotate(8deg)}
.primary-nav{display:flex;gap:clamp(1rem,2.4vw,2.7rem);align-items:center;justify-content:center}
.primary-nav a,.contact-link{font-size:.72rem;font-weight:700;letter-spacing:.08em;color:rgb(242 240 234 / .82);transition:color .25s ease,transform .25s ease}
.primary-nav a:hover,.contact-link:hover{color:var(--blue);transform:translateY(-1px)}
.contact-link{justify-self:end}
.menu-toggle{display:none;background:none;border:0;color:var(--ivory);padding:.5rem;width:2.5rem}
.menu-toggle span{display:block;height:1px;background:currentColor;margin:.35rem 0;transition:transform .3s ease}
.hero{position:relative;min-height:100svh;height:clamp(43rem,100svh,62rem);isolation:isolate;overflow:hidden;background:var(--graphite)}
.hero-media,.hero-fallback,.hero-sheen{position:absolute;inset:0;width:100%;height:100%}
.hero-media{z-index:-3;object-fit:cover;object-position:center;filter:saturate(.78) contrast(1.02) brightness(.78)}
.hero-fallback{z-index:-4;object-fit:cover;object-position:center;display:none;filter:saturate(.75) contrast(1.04) brightness(.6)}
.hero.video-error .hero-media{display:none}
.hero.video-error .hero-fallback{display:block}
.hero-sheen{z-index:-2;background:linear-gradient(180deg,rgb(9 9 9 / .48) 0%,rgb(9 9 9 / .04) 28%,rgb(9 9 9 / .12) 55%,rgb(9 9 9 / .75) 100%),linear-gradient(90deg,rgb(9 9 9 / .16),transparent 55%,rgb(52 87 255 / .08));mix-blend-mode:multiply}
.hero-content{position:absolute;left:50%;right:auto;bottom:clamp(5rem,12vh,9rem);transform:translateX(-50%);width:min(94rem,calc(100% - (var(--gutter) * 2)))}
.eyebrow,.hero-meta,.section-kicker,.symbol-caption,.partners-footnote{font-size:.68rem;line-height:1.2;letter-spacing:.16em;font-weight:700}
.eyebrow{margin:0 0 1.25rem;color:rgb(242 240 234 / .76);text-align:center}
.hero-title,.statement-title,.partners-title{font-family:var(--display);text-transform:uppercase;letter-spacing:-.075em;line-height:.86;margin:0}
.hero-title{font-size:clamp(1.2rem,5.2vw,6.2rem);max-width:none;width:100%;color:var(--ivory);text-align:center;margin-inline:auto}
.hero-title span{display:block;white-space:nowrap}
.hero-title span:nth-child(2){margin-left:0}
.hero-meta{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin-top:2.3rem;color:rgb(242 240 234 / .72)}
.scroll-cue{position:absolute;right:var(--gutter);bottom:1.6rem;display:flex;align-items:center;gap:1rem;color:rgb(242 240 234 / .72);font-size:.62rem;font-weight:700;letter-spacing:.12em;writing-mode:vertical-rl;transform:rotate(180deg)}
.scroll-cue__line{width:1px;height:4rem;background:linear-gradient(var(--blue),transparent);animation:scrollLine 2.7s ease-in-out infinite}
.home-intro-section{position:relative;z-index:3;isolation:isolate;overflow:hidden;min-height:clamp(32rem,62vw,52rem);display:grid;place-items:center;padding:clamp(5rem,10vw,10rem) var(--gutter);background:radial-gradient(circle at 50% 0%,rgb(52 87 255 / .2),transparent 32rem),linear-gradient(145deg,#08090f 0%,#0c1025 54%,#090909 100%)}
.home-intro-section::before{content:"";position:absolute;inset:-30%;z-index:-1;background:conic-gradient(from 205deg at 50% 50%,transparent 0 28%,rgb(52 87 255 / .12) 42%,transparent 55% 72%,rgb(242 240 234 / .04) 84%,transparent 94%);filter:blur(1px);animation:homeIntroAura 18s linear infinite}
.home-intro-section::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 52%,transparent 0%,rgb(8 9 15 / .2) 48%,rgb(8 9 15 / .72) 100%);pointer-events:none}
.home-intro-section__grid{position:absolute;inset:-16%;z-index:-1;opacity:.34;background:linear-gradient(rgb(112 139 255 / .08) 1px,transparent 1px),linear-gradient(90deg,rgb(112 139 255 / .08) 1px,transparent 1px);background-size:4rem 4rem;mask-image:radial-gradient(ellipse at 50% 50%,black 0%,transparent 68%);transform:perspective(52rem) rotateX(58deg) translateY(20%);transform-origin:50% 100%;animation:homeIntroGrid 15s linear infinite}
.home-intro-section__halo{position:absolute;z-index:-1;border-radius:50%;pointer-events:none;filter:blur(42px);mix-blend-mode:screen}
.home-intro-section__halo--one{width:min(32rem,58vw);aspect-ratio:1;left:-12%;top:16%;background:rgb(52 87 255 / .2);animation:homeIntroFloatOne 12s ease-in-out infinite alternate}
.home-intro-section__halo--two{width:min(24rem,48vw);aspect-ratio:1;right:-8%;bottom:6%;background:rgb(125 142 255 / .12);animation:homeIntroFloatTwo 15s ease-in-out infinite alternate}
.home-intro-section__content{position:relative;z-index:1;width:min(100%,70rem);text-align:center}
.home-intro-section__lead{max-width:18ch;margin:0 auto;color:var(--ivory);font-family:var(--display);font-size:clamp(2rem,5.2vw,5.7rem);line-height:.95;letter-spacing:-.075em;text-wrap:balance}
.home-intro-section__lead strong,.home-intro-section__closing strong{font-weight:inherit}
.home-intro-section__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,7vw,7rem);max-width:60rem;margin:clamp(3rem,6vw,5rem) auto 0;text-align:left;color:rgb(242 240 234 / .72);font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.65;letter-spacing:-.015em}
.home-intro-section__body p{margin:0}
.home-intro-section__closing{max-width:42rem;margin:clamp(3rem,6vw,5rem) auto 0;color:var(--blue);font-family:var(--display);font-size:clamp(1.25rem,2.35vw,2.5rem);line-height:1.02;letter-spacing:-.06em;text-wrap:balance}
.about-section{position:relative;overflow:hidden;padding:clamp(3.5rem,7vw,7rem) var(--gutter) clamp(4rem,7vw,7rem);background:radial-gradient(circle at 85% 6%,rgb(52 87 255 / .2),transparent 26rem),linear-gradient(132deg,var(--black) 0%,var(--graphite) 48%,#111528 100%)}
.about-section::before{content:"";position:absolute;inset:-30% -10%;background:radial-gradient(ellipse at 30% 55%,transparent 0 23%,rgb(52 87 255 / .08) 44%,transparent 60%);animation:gradientDrift 16s ease-in-out infinite alternate;pointer-events:none}
.section-kicker{color:var(--blue);position:relative}
.statement-wrap{position:relative;margin:clamp(2rem,4vw,4rem) 0 clamp(3rem,6vw,6rem);max-width:100rem}
.statement-title{font-size:clamp(1.65rem,4.15vw,5.4rem);max-width:17ch}
.statement-line{display:block;margin-bottom:.13em}
.statement-line--indent{margin-left:clamp(.5rem,8vw,9rem)}
.statement-line--accent{color:var(--blue);max-width:13ch;margin-left:clamp(1rem,5vw,6rem)}
.statement-note{max-width:25rem;margin:clamp(2rem,5vw,4.5rem) 0 0 clamp(1rem,15vw,17rem);color:var(--grey);font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.4}
.symbol-stage{position:relative;display:grid;justify-items:center;gap:1.35rem;padding:0 0 1rem}
.symbol-animation{width:clamp(8.5rem,17vw,15rem);height:auto;color:var(--ivory);overflow:visible;filter:drop-shadow(0 0 0 rgb(52 87 255 / 0));}
.symbol-core{transform-box:fill-box;transform-origin:50% 50%;animation:symbolOrbit 5.4s cubic-bezier(.65,0,.25,1) infinite;}
.symbol-caption{color:var(--grey)}
.from-to{position:relative;display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(1.5rem,5vw,5rem);align-items:start;border-top:1px solid rgb(166 166 166 / .25);padding-top:clamp(2rem,4vw,4rem)}
.from-to__column{display:flex;flex-direction:column;gap:.2rem;max-width:32rem}
.from-to__column--right{justify-self:end;text-align:right}
.from-to__label{align-self:flex-start;font-size:.76rem;color:var(--ivory);letter-spacing:.18em;font-weight:700;margin-bottom:1.1rem;padding:.5rem .7rem;background:var(--blue)}
.from-to__column--right .from-to__label{align-self:flex-end;padding:.5rem .7rem;background:var(--blue);color:var(--ivory);letter-spacing:.2em}
.from-to strong{font-family:var(--display);font-size:clamp(1.35rem,2.65vw,3.2rem);letter-spacing:-.07em;line-height:.94}
.from-to__connector{font-family:var(--display);color:var(--blue);font-size:clamp(2.5rem,6vw,6rem);line-height:.72;margin-top:2rem}
.services-section{position:relative;overflow:hidden;padding:clamp(5rem,10vw,10rem) var(--gutter) clamp(5rem,10vw,10rem);background:radial-gradient(circle at 10% 18%,rgb(52 87 255 / .16),transparent 24rem),linear-gradient(135deg,var(--black) 0%,#0d1020 46%,var(--graphite) 100%);scroll-margin-top:5rem}
.services-page .services-section{min-height:100svh;padding-top:clamp(8rem,12vw,12rem)}
.services-section::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0 34%,rgb(52 87 255 / .07) 48%,transparent 65%);background-size:220% 100%;animation:servicesBeam 13s ease-in-out infinite alternate;pointer-events:none}
.services-shell{position:relative;z-index:1;width:min(100%,115rem);margin:0 auto}
.services-heading{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(0,2.5fr) minmax(12rem,1fr);gap:2rem;align-items:end;margin-bottom:clamp(3rem,7vw,7rem)}
.services-title{font-family:var(--display);font-size:clamp(3rem,7.4vw,9rem);line-height:.84;letter-spacing:-.08em;text-transform:uppercase;max-width:9ch}
.services-accordion{border-top:1px solid rgb(166 166 166 / .32)}
.services-accordion__item{border-bottom:1px solid rgb(166 166 166 / .32)}
.services-accordion__trigger{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;min-width:0;padding:clamp(1.15rem,2.2vw,2.2rem) 0;border:0;background:none;color:var(--ivory);font-family:var(--display);font-size:clamp(1.55rem,3.4vw,4.6rem);line-height:.9;letter-spacing:-.065em;text-align:left;text-transform:uppercase;overflow-wrap:anywhere;cursor:pointer;transition:color .3s ease,text-shadow .3s ease}
.services-accordion__trigger--long{overflow-wrap:normal}
.services-accordion__trigger::after{content:"";width:clamp(1rem,1.8vw,1.5rem);height:clamp(1rem,1.8vw,1.5rem);border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-.2rem);transition:transform .4s cubic-bezier(.2,.75,.25,1),color .3s ease}
.services-accordion__trigger:hover,.services-accordion__trigger:focus-visible{color:var(--blue);text-shadow:0 0 22px rgb(52 87 255 / .42);outline:none}
.services-accordion__item.is-open .services-accordion__trigger{color:var(--blue);text-shadow:0 0 22px rgb(52 87 255 / .35)}
.services-accordion__item.is-open .services-accordion__trigger::after{transform:rotate(225deg) translateY(-.2rem)}
.services-accordion__panel{max-height:0;overflow:hidden;transition:max-height .55s cubic-bezier(.2,.75,.25,1)}
.services-accordion__item.is-open .services-accordion__panel{max-height:40rem}
.services-accordion__panel-inner{min-height:0;overflow:hidden;padding:0 0 clamp(1.5rem,3vw,3.5rem)}
.services-accordion__description{max-width:58rem;margin:0;color:rgb(242 240 234 / .78);font-family:var(--body);font-size:clamp(1rem,1.35vw,1.35rem);line-height:1.5;letter-spacing:-.015em}
.partners-section{position:relative;min-height:70svh;padding:clamp(5rem,10vw,10rem) var(--gutter) clamp(4rem,9vw,9rem);background:var(--black);overflow:hidden}
.partners-heading{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(0,2.5fr) minmax(12rem,1fr);gap:2rem;align-items:end}
.partners-title{font-size:clamp(2.5rem,6.5vw,8rem);max-width:12ch}
.partners-marquee{position:relative;margin:clamp(5rem,10vw,9rem) calc(var(--gutter) * -1) 4rem;overflow:hidden;border-top:1px solid rgb(166 166 166 / .22);border-bottom:1px solid rgb(166 166 166 / .22);padding:clamp(2.7rem,6vw,5rem) 0}
.partners-track{display:flex;align-items:center;gap:clamp(2.5rem,5vw,5.5rem);width:max-content;padding:0 5vw;animation:marquee 22s linear infinite}
.partner-logo{width:clamp(6.5rem,10vw,10rem);height:clamp(4.5rem,7vw,7rem);display:grid;place-items:center;flex:0 0 auto;overflow:visible;transition:transform .4s ease}
.partner-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;filter:grayscale(1) brightness(1.65) opacity(.56);transition:filter .45s ease,transform .45s ease}
.partner-logo:hover{transform:translateY(-.25rem)}
.partner-logo:hover img{filter:grayscale(1) brightness(1.4) sepia(1) hue-rotate(190deg) saturate(8) opacity(1);transform:scale(1.05)}
.partners-footnote{color:var(--grey)}
.reveal-item{opacity:0;transform:translateY(1.5rem);animation:heroReveal 1.1s cubic-bezier(.2,.75,.25,1) forwards}
.hero .reveal-item:nth-child(1){animation-delay:.2s}.hero .reveal-item:nth-child(2){animation-delay:.38s}.hero .reveal-item:nth-child(3){animation-delay:.58s}
.reveal-on-scroll{opacity:0;transform:translateY(2rem);transition:opacity .9s cubic-bezier(.2,.75,.25,1),transform .9s cubic-bezier(.2,.75,.25,1)}
.reveal-on-scroll.is-visible{opacity:1;transform:none}
.cursor-follower{position:fixed;z-index:30;top:0;left:0;width:5rem;height:5rem;pointer-events:none;opacity:0;transform:translate3d(-50%,-50%,0);mix-blend-mode:screen;transition:opacity .3s ease}
body.cursor-ready .cursor-follower{opacity:.85}
.cursor-blob{position:absolute;inset:0;background:var(--blue);filter:blur(18px);opacity:.65}
.cursor-blob--one{border-radius:57% 43% 64% 36% / 42% 54% 46% 58%;transform:rotate(15deg) scale(1.12)}
.cursor-blob--two{inset:10%;background:var(--ivory);opacity:.24;filter:blur(14px);border-radius:43% 57% 35% 65% / 56% 38% 62% 44%;transform:rotate(-18deg)}
.cursor-blob--three{inset:-14%;background:var(--blue);opacity:.26;filter:blur(27px);border-radius:62% 38% 48% 52% / 35% 62% 38% 65%;transform:rotate(42deg)}
@keyframes heroReveal{to{opacity:1;transform:none}}
@keyframes scrollLine{0%,100%{transform:scaleY(.65);transform-origin:top;opacity:.5}50%{transform:scaleY(1);transform-origin:top;opacity:1}}
@keyframes gradientDrift{from{transform:translate3d(-2%,1%,0) rotate(-2deg)}to{transform:translate3d(4%,-2%,0) rotate(2deg)}}
@keyframes symbolOrbit{0%{transform:rotate(0deg);filter:drop-shadow(0 0 0 rgb(52 87 255 / 0))}47%{transform:rotate(360deg);filter:drop-shadow(0 0 18px rgb(52 87 255 / .75))}58%,100%{transform:rotate(360deg);filter:drop-shadow(0 0 0 rgb(52 87 255 / 0))}}
@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes servicesBeam{from{background-position:100% 0;transform:translateX(-2%)}to{background-position:0 0;transform:translateX(2%)}}
@keyframes homeIntroAura{from{transform:rotate(0deg) scale(1)}to{transform:rotate(360deg) scale(1.08)}}
@keyframes homeIntroGrid{from{background-position:0 0,0 0}to{background-position:0 4rem,4rem 0}}
@keyframes homeIntroFloatOne{from{transform:translate3d(-8%,4%,0) scale(.9)}to{transform:translate3d(12%,-8%,0) scale(1.08)}}
@keyframes homeIntroFloatTwo{from{transform:translate3d(10%,8%,0) scale(.92)}to{transform:translate3d(-12%,-10%,0) scale(1.08)}}
@media (max-width:900px){.site-header{grid-template-columns:1fr auto}.primary-nav,.contact-link{display:none}.menu-toggle{display:block;justify-self:end}.site-header.menu-open{background:rgb(9 9 9 / .94);backdrop-filter:blur(18px)}.site-header.menu-open .primary-nav{display:flex;position:absolute;inset:4.8rem 0 auto;min-height:calc(100svh - 4.8rem);padding:3rem var(--gutter);flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:1.8rem;background:rgb(9 9 9 / .96)}.site-header.menu-open .primary-nav a,.site-header.menu-open .contact-link{display:block;font-family:var(--display);font-size:clamp(2rem,9vw,4rem);letter-spacing:-.07em}.site-header.menu-open .contact-link{position:absolute;right:var(--gutter);bottom:3rem;display:block}.site-header.menu-open .menu-toggle span:first-child{transform:translateY(.35rem) rotate(45deg)}.site-header.menu-open .menu-toggle span:last-child{transform:translateY(-.35rem) rotate(-45deg)}.hero{height:100svh;min-height:39rem}.hero-media{object-position:center}.hero-content{bottom:clamp(4rem,10vh,7rem)}.hero-title{font-size:clamp(1.15rem,5.4vw,4rem)}.services-heading{display:block;margin-bottom:4rem}.services-title{margin-top:2.2rem}.partners-heading{grid-template-columns:1fr 1.8fr}.partners-marquee{margin-top:5rem}.partners-track{gap:2.8rem;animation-duration:26s}.partner-logo{width:8rem;height:4.5rem}.home-intro-section__body{grid-template-columns:1fr;gap:1.35rem;max-width:38rem}.home-intro-section{min-height:0}}
@media (max-width:620px){.site-header{padding-top:.8rem}.brand-mark,.brand-mark img{width:2.1rem;height:2.1rem}.hero-content{bottom:clamp(4rem,9vh,5.5rem)}.eyebrow{font-size:.58rem}.hero-title{font-size:clamp(1.05rem,5.25vw,2.7rem);line-height:.92;letter-spacing:-.085em}.hero-meta{gap:.6rem;font-size:.58rem;margin-top:1.7rem}.scroll-cue{right:1rem;bottom:1rem;font-size:.55rem}.about-section{padding-top:4rem;padding-bottom:4rem}.statement-title{font-size:clamp(1.6rem,8vw,3.5rem);line-height:.9}.statement-line--indent,.statement-line--accent{margin-left:.5rem}.symbol-stage{margin-top:6rem;padding-top:1rem}.symbol-animation{width:clamp(7rem,30vw,10rem)}.from-to{grid-template-columns:1fr;gap:2.7rem}.from-to__column--right{text-align:left;justify-self:start}.from-to__column--right .from-to__label{align-self:flex-start}.from-to__connector{display:none}.from-to strong{font-size:clamp(1.35rem,7vw,2.5rem)}.services-section{padding-top:4rem;padding-bottom:4.5rem}.services-heading{margin-bottom:3rem}.services-title{font-size:clamp(3.4rem,16vw,6.2rem);max-width:7ch}.services-accordion__trigger{font-size:clamp(1.15rem,6.3vw,2.4rem);padding:1.25rem 0}.services-accordion__trigger--long{font-size:clamp(1rem,5.2vw,2.4rem)}.services-accordion__trigger::after{width:.9rem;height:.9rem}.services-accordion__panel-inner::before{height:7rem}.partners-section{min-height:auto;padding-top:5rem}.partners-heading{display:block}.partners-title{margin-top:2.2rem;font-size:clamp(2.8rem,15vw,5rem);max-width:12ch}.partners-marquee{margin-top:4.5rem;padding:2rem 0}.partners-track{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;justify-items:center;gap:1.5rem 1rem;padding:0 1rem;animation:none}.partners-track .partner-logo:nth-child(n+8){display:none}.partner-logo{width:min(100%,8rem);height:4.2rem}.partners-footnote{margin-top:2.3rem;font-size:.58rem}.cursor-follower{display:none}}
@media (max-width:700px){.partners-marquee{padding:2.75rem 0}.partners-track{display:flex;align-items:center;gap:2rem;width:max-content;padding:0 2rem;animation:marquee 24s linear infinite}.partners-track .partner-logo:nth-child(n+8){display:grid}.partner-logo{width:7rem;height:7rem}.partner-logo img{max-width:100%;max-height:5.75rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-item,.reveal-on-scroll{animation:none;transition:none;opacity:1;transform:none}.symbol-core,.scroll-cue__line,.about-section::before,.partners-track,.services-section::before{animation:none}.services-accordion__panel,.services-accordion__trigger::after{transition:none}.cursor-follower{display:none}}

/* Premium entrance + organic cursor aura. The SVG asset itself is intentionally untouched. */
.intro-lock{overflow:hidden}
.brand-intro{--intro-duration:2.8s;--intro-blue:#3457ff;--intro-ivory:#f2f0ea;position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#090909;overflow:hidden;isolation:isolate;animation:introExit .7s cubic-bezier(.76,0,.24,1) calc(var(--intro-duration) + .12s) forwards}
.brand-intro__energy{position:absolute;width:min(58vw,38rem);height:min(32vw,20rem);border:1px solid rgb(52 87 255 / .18);border-radius:61% 39% 54% 46% / 46% 58% 42% 54%;background:radial-gradient(ellipse at 48% 48%,rgb(52 87 255 / .3) 0%,rgb(52 87 255 / .12) 35%,transparent 70%);filter:blur(22px);opacity:0;transform:rotate(-13deg) scale(.6);animation:introEnergy var(--intro-duration) cubic-bezier(.2,.75,.25,1) .05s forwards}
.brand-intro__logo-frame{position:relative;width:min(48vw,33rem);aspect-ratio:1;display:grid;place-items:center;opacity:0;transform:scale(.92);animation:introFrameIn 1.4s cubic-bezier(.2,.75,.25,1) .08s forwards}
.brand-intro__logo{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;opacity:.03;clip-path:inset(0 0 100% 0);filter:drop-shadow(0 0 0 rgb(52 87 255 / 0));animation:introLogoReveal var(--intro-duration) cubic-bezier(.2,.75,.25,1) .12s forwards}
.brand-intro__scan{position:absolute;z-index:2;inset:8% -14%;background:linear-gradient(105deg,transparent 33%,rgb(52 87 255 / .05) 42%,rgb(52 87 255 / .72) 50%,rgb(242 240 234 / .2) 53%,transparent 64%);mix-blend-mode:screen;filter:blur(13px);opacity:0;transform:translateX(-68%) rotate(-4deg);animation:introScan 1.85s cubic-bezier(.2,.75,.25,1) .42s forwards;pointer-events:none}
.cursor-follower{width:5rem;height:5rem;opacity:0;transition:opacity .35s ease,width .5s cubic-bezier(.2,.75,.25,1),height .5s cubic-bezier(.2,.75,.25,1);will-change:transform;filter:saturate(112%)}
.cursor-follower::before{content:"";position:absolute;inset:-30%;border-radius:58% 42% 48% 52% / 44% 58% 42% 56%;background:radial-gradient(ellipse at 46% 42%,rgb(52 87 255 / .28),transparent 68%);filter:blur(20px);opacity:.72;animation:cursorBreath 4.8s ease-in-out infinite}
.cursor-follower::after{content:"";position:absolute;inset:16%;border:1px solid rgb(52 87 255 / .2);border-radius:62% 38% 45% 55% / 38% 57% 43% 62%;filter:blur(4px);opacity:.42;transform:rotate(-21deg);animation:cursorDrift 5.7s ease-in-out infinite reverse}
body.cursor-ready .cursor-follower{opacity:.82}
.cursor-follower.is-hovering{width:6.15rem;height:6.15rem}
.cursor-follower.is-hovering::before{opacity:.95}
.cursor-blob{inset:0;transform-origin:50% 50%;animation:cursorDrift 5.5s ease-in-out infinite}
.cursor-blob--one{background:radial-gradient(ellipse at 43% 38%,rgb(52 87 255 / .6) 0%,rgb(52 87 255 / .3) 36%,transparent 72%);filter:blur(16px);opacity:.72}
.cursor-blob--two{inset:15%;background:radial-gradient(ellipse at 52% 50%,rgb(242 240 234 / .22),rgb(52 87 255 / .1) 42%,transparent 76%);filter:blur(10px);opacity:.62;animation-delay:-1.2s}
.cursor-blob--three{inset:-18%;background:radial-gradient(ellipse at 48% 58%,rgb(52 87 255 / .28),transparent 68%);filter:blur(26px);opacity:.52;animation-delay:-2.2s}
@keyframes introEnergy{0%{opacity:0;transform:rotate(-13deg) scale(.55)}26%{opacity:.82;transform:rotate(-8deg) scale(.92)}58%{opacity:.42;transform:rotate(-3deg) scale(1.06)}100%{opacity:.16;transform:rotate(4deg) scale(1.12)}}
@keyframes introFrameIn{0%{opacity:0;transform:scale(.9)}55%{opacity:1;transform:scale(1.015)}100%{opacity:1;transform:scale(1)}}
@keyframes introLogoReveal{0%{opacity:.02;clip-path:inset(0 0 100% 0);filter:drop-shadow(0 0 0 rgb(52 87 255 / 0))}24%{opacity:.28;clip-path:inset(0 0 68% 0);filter:drop-shadow(0 0 13px rgb(52 87 255 / .32))}52%{opacity:.82;clip-path:inset(0 0 34% 0);filter:drop-shadow(0 0 24px rgb(52 87 255 / .74))}74%{opacity:1;clip-path:inset(0 0 3% 0);filter:drop-shadow(0 0 16px rgb(52 87 255 / .46))}100%{opacity:1;clip-path:inset(0);filter:drop-shadow(0 0 8px rgb(52 87 255 / .2))}}
@keyframes introScan{0%{opacity:0;transform:translateX(-68%) rotate(-4deg)}18%{opacity:.95}72%{opacity:.6}100%{opacity:0;transform:translateX(72%) rotate(-4deg)}}
@keyframes introExit{0%{opacity:1;visibility:visible}70%{opacity:1}100%{opacity:0;visibility:hidden;pointer-events:none}}
@keyframes cursorDrift{0%,100%{transform:rotate(-9deg) scale(.94)}50%{transform:rotate(10deg) scale(1.08)}}
@keyframes cursorBreath{0%,100%{transform:scale(.92) rotate(-8deg);opacity:.52}50%{transform:scale(1.08) rotate(9deg);opacity:.82}}
@media (max-width:900px){.brand-intro__logo-frame{width:min(70vw,26rem)} }
@media (max-width:620px){.brand-intro__logo-frame{width:min(80vw,23rem)} }
@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.cursor-follower{display:none}}
@media (prefers-reduced-motion:reduce){.brand-intro{animation:none}.brand-intro__energy,.brand-intro__scan{display:none}.brand-intro__logo-frame{opacity:1;transform:none;animation:none}.brand-intro__logo{opacity:1;clip-path:none;filter:none;animation:none}}

/* About story: two scroll-driven editorial scenes, kept separate from the global panel stack. */
.about-scroll-story{position:relative;z-index:2;min-height:270svh;padding:0;background:radial-gradient(circle at 15% 20%,rgb(52 87 255 / .18),transparent 28rem),linear-gradient(145deg,#090909 0%,#101321 52%,#090909 100%);isolation:isolate;overflow:visible}
.about-scroll-story::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 75% 78%,rgb(52 87 255 / .14),transparent 38%),linear-gradient(115deg,transparent 30%,rgb(242 240 234 / .025) 50%,transparent 70%);pointer-events:none;animation:none}
.about-scroll-story__viewport{position:sticky;top:0;height:100svh;min-height:40rem;overflow:hidden;display:grid;place-items:center;perspective:1200px;isolation:isolate}
.about-scroll-story__scene{position:absolute;inset:0;display:grid;place-items:center;opacity:0;visibility:hidden;transform-origin:50% 50%;will-change:transform,opacity;transition:none;pointer-events:none}
.about-scroll-story__scene--alex{background:linear-gradient(180deg,rgb(9 9 9 / .08),rgb(9 9 9 / .18))}
.about-scroll-story__scene--bogdan{background:linear-gradient(180deg,rgb(16 19 33 / .08),rgb(9 9 9 / .18))}
.about-scroll-story__media{position:absolute;inset:0;z-index:1;overflow:visible}
.about-scroll-story__media::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 25%,rgb(9 9 9 / .2) 72%,rgb(9 9 9 / .62) 100%);pointer-events:none}
.about-scroll-story__media-card{position:absolute;left:50%;top:50%;z-index:var(--about-card-z);width:clamp(11rem,19vw,18rem);aspect-ratio:4 / 5;overflow:hidden;margin:0;border:1px solid rgb(242 240 234 / .2);border-radius:clamp(14px,1.5vw,26px);background:#121212;box-shadow:0 1.8rem 4rem rgb(0 0 0 / .22);transform-origin:center;will-change:transform;backface-visibility:hidden}
.about-scroll-story__media-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.86) contrast(1.04);}
.about-scroll-story__scene--alex .about-scroll-story__media-card:nth-child(3) img{object-position:center 38%}
.about-scroll-story__scene--alex .about-scroll-story__media-card:nth-child(4) img{object-position:center 42%}
.about-scroll-story__scene--bogdan .about-scroll-story__media-card:nth-child(3) img{object-position:center 34%}
.about-scroll-story__scene--bogdan .about-scroll-story__media-card:nth-child(4) img{object-position:center 36%}
.about-scroll-story__copy{position:relative;z-index:8;display:flex;flex-direction:column;align-items:center;width:min(78vw,62rem);padding:1rem;text-align:center;color:var(--ivory);text-shadow:0 1rem 2.5rem rgb(0 0 0 / .48)}
.about-scroll-story__name{margin:0;font-family:var(--display);font-size:clamp(4.5rem,14vw,13rem);font-weight:900;letter-spacing:-.1em;line-height:.78;text-transform:uppercase}
.about-scroll-story__description{max-width:34rem;margin:clamp(1.4rem,3vw,2.7rem) 0 0;color:rgb(242 240 234 / .82);font-family:var(--body);font-size:clamp(.85rem,1.25vw,1.1rem);font-weight:500;line-height:1.45;text-wrap:balance}
.about-scroll-story.is-static{min-height:auto}
.about-scroll-story.is-static .about-scroll-story__viewport{position:relative;height:auto;min-height:0;display:block;padding:clamp(5rem,10vw,9rem) var(--gutter)}
.about-scroll-story.is-static .about-scroll-story__scene{position:relative;inset:auto;min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:2rem;opacity:1!important;visibility:visible!important;transform:none!important}
.about-scroll-story.is-static .about-scroll-story__media{position:relative;inset:auto;width:100%;height:45svh;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;overflow:visible}
.about-scroll-story.is-static .about-scroll-story__media-card{position:relative;left:auto;top:auto;width:100%;height:100%;transform:none!important}
.about-scroll-story.is-static .about-scroll-story__copy{order:-1;width:100%;padding:0}
@media (max-width:900px){.about-scroll-story{min-height:250svh}.about-scroll-story__viewport{min-height:34rem}.about-scroll-story__media-card{width:clamp(9.5rem,23vw,15rem)}.about-scroll-story__copy{width:min(88vw,48rem)}}
@media (max-width:700px){.about-scroll-story{min-height:235svh}.about-scroll-story__viewport{min-height:34rem}.about-scroll-story__media-card{width:clamp(8.2rem,29vw,12rem);border-radius:14px}.about-scroll-story__media-card:nth-child(n+4){display:none}.about-scroll-story__copy{width:calc(100% - 1.5rem);padding:0 .75rem}.about-scroll-story__name{font-size:clamp(4.2rem,21vw,8rem)}.about-scroll-story__description{max-width:29rem;margin-top:1.2rem;font-size:.82rem;line-height:1.4}.about-scroll-story__media::after{background:radial-gradient(ellipse at center,transparent 23%,rgb(9 9 9 / .26) 70%,rgb(9 9 9 / .68) 100%)}}
@media (prefers-reduced-motion:reduce){.about-scroll-story__scene,.about-scroll-story__media-card{will-change:auto}.about-scroll-story__scene{transition:none}.about-scroll-story__media-card{box-shadow:none}}
@media (max-width:700px) and (prefers-reduced-motion:reduce){.about-scroll-story.is-static .about-scroll-story__media{height:36svh;grid-template-columns:repeat(2,minmax(0,1fr))}.about-scroll-story.is-static .about-scroll-story__media-card{display:block}.about-scroll-story.is-static .about-scroll-story__scene{min-height:calc(100svh - 2rem)}}
.axis-project{position:relative;min-height:100svh;height:100svh;isolation:isolate;overflow:hidden;background:var(--black)}
.axis-project__media{position:absolute;inset:0;z-index:-1;background:var(--black);overflow:hidden}
.axis-project__poster,.axis-project__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.axis-project__poster{z-index:0;display:block;filter:saturate(.9) contrast(1.02);transition:opacity .65s ease}
.axis-project__video{z-index:1;opacity:0;display:block;transition:opacity .65s ease;object-position:50% 50%}
.axis-project__video.is-ready{opacity:1}
.axis-project__poster.is-hidden{opacity:0}
.axis-project__shade{position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,transparent 42%,rgb(9 9 9 / .06) 57%,rgb(9 9 9 / .78) 100%);pointer-events:none}
.axis-project__content{position:absolute;z-index:3;left:50%;bottom:clamp(2.75rem,8vh,6.5rem);width:min(90vw,62rem);display:flex;flex-direction:column;align-items:center;transform:translate(-50%,1.25rem);text-align:center;opacity:0;transition:opacity .7s cubic-bezier(.2,.75,.25,1),transform .7s cubic-bezier(.2,.75,.25,1)}
.axis-project__content.is-visible{opacity:1;transform:translate(-50%,0)}
.axis-project__title{margin:0;font-family:var(--display);font-size:clamp(2.3rem,7.2vw,6.6rem);line-height:.86;letter-spacing:-.075em;text-transform:uppercase;color:var(--ivory)}
.axis-project__logos{display:flex;align-items:center;justify-content:center;gap:clamp(1.25rem,3vw,3rem);min-height:clamp(2.5rem,5vw,4.5rem);margin-top:clamp(1rem,2vw,1.7rem)}
.axis-project__logo-link{display:block;color:inherit;text-decoration:none;line-height:0;border-radius:.35rem}
.axis-project__logo-link:focus-visible{outline:2px solid var(--ivory);outline-offset:4px}
.axis-project__logos img{display:block;width:auto;max-width:clamp(8rem,15vw,13rem);height:clamp(2.4rem,5vw,4.5rem);object-fit:contain;object-position:center;filter:brightness(1.55) grayscale(1);}
.axis-project__toggle{margin-top:clamp(1.5rem,3vw,2.5rem);padding:.45rem .7rem;border:1px solid rgb(242 240 234 / .5);background:rgb(9 9 9 / .24);color:rgb(242 240 234 / .82);font-family:var(--body);font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:color .25s ease,border-color .25s ease,background .25s ease}
.axis-project__toggle:hover,.axis-project__toggle:focus-visible{border-color:var(--blue);background:rgb(52 87 255 / .14);color:var(--ivory);outline:none}
.axis-project__toggle[hidden]{display:none}
@media (max-width:700px){.axis-project{min-height:86svh;height:86svh}.axis-project__video,.axis-project__poster{object-position:52% 50%}.axis-project__content{width:calc(100% - 2rem);bottom:clamp(2rem,8vh,4.25rem)}.axis-project__title{font-size:clamp(2.15rem,12vw,4.2rem)}.axis-project__logos{margin-top:1rem}.axis-project__logos img{max-width:9.5rem;height:3.4rem}.axis-project__toggle{margin-top:1.25rem;font-size:.58rem}}
@media (prefers-reduced-motion:reduce){.axis-project__video{display:none}.axis-project__poster{opacity:1}.axis-project__content{opacity:1;transform:translate(-50%,0);transition:none}.axis-project__toggle{display:inline-block}}
.axis-project__logos{gap:clamp(1.5rem,3.2vw,3.6rem);min-height:clamp(5rem,8vw,8rem);margin-top:clamp(1.2rem,2.2vw,2rem)}
.axis-project__logos img{width:clamp(5.2rem,8vw,8rem);height:clamp(5.2rem,8vw,8rem);max-width:none;filter:none}
.axis-project__logos img:last-child{width:clamp(8rem,12vw,12rem);height:clamp(8rem,12vw,12rem)}
.axis-project__actions{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:clamp(1.4rem,2.5vw,2.2rem)}
.axis-project__button{min-width:8.4rem;padding:.55rem .8rem;border:1px solid rgb(242 240 234 / .55);background:rgb(9 9 9 / .28);color:rgb(242 240 234 / .86);font-family:var(--body);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:color .25s ease,border-color .25s ease,background .25s ease}
.axis-project__button:hover,.axis-project__button:focus-visible{border-color:var(--blue);background:rgb(52 87 255 / .18);color:var(--ivory);outline:none}
.axis-project__toggle{margin-top:0}
@media (max-width:700px){.axis-project{min-height:100svh;height:100svh}.axis-project__video,.axis-project__poster{object-position:58% 50%}.axis-project__content{bottom:clamp(2.25rem,7vh,4.6rem)}.axis-project__title{font-size:clamp(2.15rem,12vw,4.2rem)}.axis-project__logos{gap:1.15rem;min-height:5.25rem;margin-top:1.15rem}.axis-project__logos img{width:clamp(5rem,21vw,6.5rem);height:clamp(5rem,21vw,6.5rem)}.axis-project__actions{gap:.55rem;margin-top:1.25rem}.axis-project__button{min-width:7.8rem;padding:.52rem .55rem;font-size:.55rem}}
.axis-project__logos img:last-child{width:clamp(8rem,29vw,10rem);height:clamp(8rem,29vw,10rem)}
.axis-project__shade{background:linear-gradient(180deg,transparent 43%,rgb(9 9 9 / .14) 58%,rgb(9 9 9 / .88) 100%)}
.axis-project__logos--trio{gap:clamp(1rem,2.6vw,2.6rem)}
.axis-project__subtitle{display:inline-flex;align-items:center;justify-content:center;width:max-content;margin:0 0 clamp(.7rem,1.15vw,1rem);padding:.34rem .58rem .3rem;border:1px solid rgb(242 240 234 / .12);border-radius:2px;background:rgb(28 28 28 / .88);color:var(--ivory);font-family:var(--body);font-size:clamp(.54rem,.68vw,.68rem);font-weight:800;letter-spacing:-.02em;line-height:1;text-transform:uppercase;box-shadow:0 5px 14px rgb(9 9 9 / .18)}
.axis-project__logos--trio{gap:clamp(1.15rem,2.8vw,2.8rem)}
.axis-project__logos--trio img{filter:brightness(1.4) grayscale(1) contrast(1.08);opacity:.98}
.axis-project__logos--trio img:nth-child(1),.axis-project__logos--trio img:nth-child(3){width:clamp(6rem,8.5vw,8.5rem);height:clamp(6rem,8.5vw,8.5rem)}
.axis-project__logos--trio img:nth-child(2){width:clamp(7.5rem,10vw,10rem);height:clamp(6rem,8.5vw,8.5rem);transform:scale(1.35)}
@media (max-width:700px){.axis-project__subtitle{margin:0 0 .65rem;padding:.3rem .46rem .27rem;font-size:.5rem;letter-spacing:-.015em}.axis-project__logos--trio{gap:.7rem}.axis-project__logos--trio img:nth-child(1),.axis-project__logos--trio img:nth-child(3){width:clamp(5.1rem,20vw,6.4rem);height:clamp(5.1rem,20vw,6.4rem)}.axis-project__logos--trio img:nth-child(2){width:clamp(6.4rem,25vw,8rem);height:clamp(5.1rem,20vw,6.4rem);transform:scale(1.35)}}
.work-projects{--work-card-width:clamp(380px,26vw,500px);--work-card-gap:16px;--work-set-width:calc(9 * (var(--work-card-width) + var(--work-card-gap)));position:relative;overflow:hidden;padding:clamp(4.5rem,8vw,8rem) 0 clamp(4rem,7vw,6rem);background:linear-gradient(180deg,var(--black) 0%,var(--black) 68%,rgb(52 87 255 / .82) 100%);isolation:isolate}
.work-projects__viewport{width:100%;overflow:hidden}
/* Explicit widths avoid WebKit's max-content/flex-basis intrinsic-size mismatch.
   Each set includes its trailing gap, so -50% meets the identical second set. */
.work-projects__track{display:flex;width:calc(2 * var(--work-set-width));animation:workProjectsMarquee 42s linear infinite;will-change:transform}
.work-projects__set{display:flex;flex:0 0 var(--work-set-width);width:var(--work-set-width);gap:var(--work-card-gap);padding-right:var(--work-card-gap)}
.work-project-card{position:relative;flex:0 0 var(--work-card-width);width:var(--work-card-width);min-width:var(--work-card-width);height:calc(var(--work-card-width) * 1.5);aspect-ratio:2/3;overflow:hidden;border-radius:16px;background:var(--graphite);isolation:isolate}
.work-project-card img{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s cubic-bezier(.2,.75,.25,1)}
.work-project-card__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 54%,rgb(9 9 9 / .08) 66%,rgb(9 9 9 / .88) 100%);pointer-events:none}
.work-project-card h3{position:absolute;z-index:2;right:1.2rem;bottom:1.35rem;left:1.2rem;margin:0;color:var(--ivory);font-family:var(--display);font-size:clamp(1.5rem,2.45vw,2.65rem);font-weight:900;letter-spacing:-.075em;line-height:.86;text-align:center;text-transform:uppercase;text-wrap:balance}
.work-project-card:hover img{transform:scale(1.035)}
.work-projects__all{display:flex;align-items:center;justify-content:center;gap:.65rem;margin:clamp(2.2rem,4vw,3.8rem) auto 0;padding:.72rem 1rem;border:1px solid rgb(242 240 234 / .42);border-radius:2px;background:rgb(9 9 9 / .32);color:var(--ivory);font-family:var(--body);font-size:.66rem;font-weight:800;letter-spacing:.12em;line-height:1;cursor:pointer;text-transform:uppercase;transition:background .25s ease,border-color .25s ease,color .25s ease}
.work-projects__all span{display:inline-block;font-size:1.05rem;line-height:.7;transition:transform .25s ease}
.work-projects__all:hover,.work-projects__all:focus-visible{border-color:var(--ivory);background:var(--blue);color:var(--ivory);outline:none}
.work-projects__all:hover span,.work-projects__all:focus-visible span{transform:translateX(.32rem)}
@keyframes workProjectsMarquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media (max-width:700px){.work-projects{--work-card-width:clamp(5.25rem,30vw,7.5rem);--work-card-gap:.5rem;padding:3.75rem 0 4rem}.work-projects__track{animation-duration:14s}.work-project-card{border-radius:10px}.work-project-card img{transition:none}.work-project-card:hover img{transform:none}.work-project-card h3{right:.35rem;bottom:.5rem;left:.35rem;font-size:clamp(.64rem,3.4vw,.9rem);letter-spacing:-.06em;line-height:.92}.work-projects__all{margin-top:2.25rem;font-size:.58rem}}
@media (prefers-reduced-motion:reduce){.work-projects__track{width:var(--work-set-width);animation:none;transform:none}.work-projects__set[aria-hidden="true"]{display:none}.work-project-card img{transition:none}.work-projects__all span{transition:none}}
.contact-section{position:relative;isolation:isolate;overflow:hidden;padding:clamp(5rem,11vw,10rem) 0;background:linear-gradient(135deg,var(--black) 0%,var(--graphite) 52%,rgb(52 87 255 / .2) 100%)}
.contact-section__glow,.site-footer__glow{position:absolute;z-index:-1;width:min(46rem,70vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgb(52 87 255 / .32) 0%,rgb(52 87 255 / .12) 35%,transparent 70%);filter:blur(38px);pointer-events:none}
.contact-section__glow{top:12%;right:-16%;opacity:.65}
.contact-shell{position:relative;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(3rem,8vw,10rem);width:min(100% - (var(--gutter) * 2),92rem);margin:0 auto}
.contact-intro .section-kicker{margin:0 0 clamp(2.2rem,4vw,4.5rem);color:var(--blue)}
.contact-intro h2,.footer-newsletter h2{margin:0;color:var(--ivory);font-family:var(--display);font-size:clamp(3.2rem,7.7vw,8rem);letter-spacing:-.08em;line-height:.82;text-transform:uppercase}
.contact-intro h2 span,.footer-newsletter h2 span{color:var(--blue)}
.contact-intro__copy{max-width:20rem;margin:clamp(2rem,4vw,3.5rem) 0 1.2rem;color:rgb(242 240 234 / .68);font-size:clamp(.95rem,1.3vw,1.1rem);line-height:1.5}
.contact-intro__email{display:inline-block;color:var(--ivory);font-size:clamp(.82rem,1.15vw,1rem);font-weight:700;letter-spacing:.04em;transition:color .25s ease}
.contact-intro__email:hover,.contact-intro__email:focus-visible{color:var(--blue);outline:none}
.contact-form{align-self:end;padding:clamp(1.4rem,3vw,2.8rem);border:1px solid rgb(242 240 234 / .17);background:rgb(9 9 9 / .24);backdrop-filter:blur(12px)}
.contact-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.4rem,2.8vw,2.4rem) clamp(1rem,2vw,2rem)}
.contact-field{display:grid;gap:.65rem;color:rgb(242 240 234 / .63);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.contact-field--wide{grid-column:1 / -1}
.contact-field input,.contact-field textarea,.newsletter-form input{width:100%;border:0;border-bottom:1px solid rgb(242 240 234 / .32);border-radius:0;background:transparent;color:var(--ivory);font:inherit;line-height:1.35;outline:none;transition:border-color .25s ease,background .25s ease}
.contact-field input,.contact-field textarea{padding:.35rem 0 .65rem;font-size:1rem;font-weight:500;letter-spacing:0}
.contact-field textarea{min-height:7.2rem;resize:vertical}
.contact-field input:focus,.contact-field textarea:focus,.newsletter-form input:focus{border-color:var(--blue);background:linear-gradient(180deg,transparent 70%,rgb(52 87 255 / .08))}
.contact-form__footer{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin-top:clamp(1.7rem,3vw,2.6rem)}
.contact-form__note{margin:0;color:rgb(242 240 234 / .46);font-size:.68rem;letter-spacing:.02em}
.contact-form__submit,.newsletter-form button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;border:1px solid rgb(242 240 234 / .42);background:var(--blue);color:var(--ivory);font-size:.64rem;font-weight:800;letter-spacing:.1em;line-height:1;cursor:pointer;text-transform:uppercase;transition:background .25s ease,border-color .25s ease,transform .25s ease}
.contact-form__submit{padding:.9rem 1.05rem}
.contact-form__submit span,.newsletter-form button span{font-size:1.15rem;line-height:.7;transition:transform .25s ease}
.contact-form__submit:hover,.contact-form__submit:focus-visible,.newsletter-form button:hover,.newsletter-form button:focus-visible{border-color:var(--ivory);background:var(--graphite);outline:none}
.contact-form__submit:hover span,.contact-form__submit:focus-visible span,.newsletter-form button:hover span,.newsletter-form button:focus-visible span{transform:translateX(.28rem)}
.contact-form__status,.newsletter-form__status{min-height:1.2em;margin:.9rem 0 0;color:rgb(242 240 234 / .62);font-size:.72rem}
.site-footer{position:relative;overflow:hidden;padding:clamp(4rem,7vw,6rem) var(--gutter) 1.2rem;background:linear-gradient(160deg,var(--graphite) 0%,rgb(25 31 74 / .96) 40%,var(--blue) 100%)}
.site-footer__glow{z-index:0;top:-25%;left:34%;opacity:.55}
.footer-newsletter{position:relative;z-index:1;display:grid;grid-template-columns:1fr minmax(20rem,25rem);align-items:start;gap:clamp(2rem,6vw,8rem);width:min(100%,92rem);margin:0 auto clamp(5rem,9vw,9rem)}
.footer-newsletter__intro .section-kicker{margin:0 0 1.8rem;color:rgb(242 240 234 / .65)}
.footer-newsletter h2{font-size:clamp(2.8rem,6vw,6.8rem)}
.newsletter-form{padding-top:clamp(.2rem,1vw,1.2rem)}
.newsletter-form__label{display:block;margin-bottom:.8rem;color:rgb(242 240 234 / .72);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.newsletter-form__row{display:flex;align-items:stretch;border:1px solid rgb(242 240 234 / .2);background:rgb(9 9 9 / .24)}
.newsletter-form input{min-width:0;padding:1rem 1.1rem;border:0;color:var(--ivory);font-size:.72rem;font-weight:700;letter-spacing:.06em}
.newsletter-form input::placeholder{color:rgb(242 240 234 / .54);opacity:1}
.newsletter-form button{flex:0 0 auto;padding:0 1rem;border:0;border-left:1px solid rgb(242 240 234 / .18)}
.site-footer__brand{position:relative;z-index:1;width:min(100%,115rem);margin:0 auto;border-bottom:1px solid rgb(242 240 234 / .22);padding-bottom:clamp(2.4rem,4vw,4.2rem)}
.site-footer__brand-mark{display:block;width:min(100%,112rem);height:clamp(16rem,34vw,32rem);margin:0 auto;background:var(--ivory);-webkit-mask-image:url('assets/logos/secondary-white.svg');mask-image:url('assets/logos/secondary-white.svg');-webkit-mask-mode:luminance;mask-mode:luminance;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:min(92vw,112rem) auto;mask-position:center;mask-repeat:no-repeat;mask-size:min(92vw,112rem) auto}
.site-footer__navigation{position:relative;z-index:1;width:min(100%,115rem);margin:clamp(1.2rem,2vw,2rem) auto 0}
.site-footer__navigation nav{display:flex;flex-wrap:wrap;gap:clamp(1rem,2.3vw,2.5rem)}
.site-footer__navigation a,.site-footer__meta{color:rgb(242 240 234 / .82);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:color .25s ease}.site-footer__navigation a{white-space:nowrap}
.site-footer__navigation a:hover,.site-footer__navigation a:focus-visible{color:var(--ivory);outline:none}
.site-footer__meta{display:flex;justify-content:space-between;gap:1rem;width:min(100%,115rem);margin:clamp(2rem,4vw,3.4rem) auto 0;padding-top:1rem;border-top:1px solid rgb(242 240 234 / .14);color:rgb(242 240 234 / .56);font-size:.6rem;font-weight:600;letter-spacing:.03em;text-transform:none}
.site-footer__meta a:hover,.site-footer__meta a:focus-visible{color:var(--ivory);outline:none}
@media (max-width:760px){.contact-section{padding:4.5rem 0 5rem}.contact-shell{display:block;width:calc(100% - (var(--gutter) * 2))}.contact-intro .section-kicker{margin-bottom:2.2rem}.contact-intro h2{font-size:clamp(3.7rem,18vw,6.2rem)}.contact-intro__copy{max-width:18rem;margin-top:1.8rem}.contact-form{margin-top:3.2rem;padding:1.2rem}.contact-form__grid{display:block}.contact-field{margin-bottom:1.5rem}.contact-field--wide{margin-bottom:0}.contact-form__footer{display:block}.contact-form__note{margin-bottom:1rem}.contact-form__submit{width:100%}.site-footer{padding-top:3.8rem}.footer-newsletter{display:block;margin-bottom:4.5rem}.footer-newsletter h2{font-size:clamp(3.1rem,15vw,5.4rem)}.newsletter-form{margin-top:2.8rem}.newsletter-form__row{display:block;border:0;background:none}.newsletter-form input{display:block;border:1px solid rgb(242 240 234 / .2);margin-bottom:.7rem}.newsletter-form button{width:100%;min-height:2.8rem;border:1px solid rgb(242 240 234 / .25)}.site-footer__brand{padding-bottom:2rem}.site-footer__brand-mark{height:clamp(12rem,42vw,18rem);-webkit-mask-size:92vw auto;mask-size:92vw auto}.site-footer__navigation nav{gap:.9rem 1.2rem}.site-footer__navigation a{font-size:.6rem}.site-footer__meta{display:grid;gap:.6rem;margin-top:2rem;font-size:.56rem}}
@media (prefers-reduced-motion:reduce){.contact-intro__email,.contact-field input,.contact-field textarea,.newsletter-form input,.contact-form__submit,.newsletter-form button,.contact-form__submit span,.newsletter-form button span{transition:none}}

/* Full-screen modular brand intro — rebuilt from the supplied logo, with a 3D assembly cue. */
.intro-lock{overflow:hidden}
.brand-intro{--intro-blue:#456cff;--intro-deep:#02030a;--intro-duration:3.8s;position:fixed;inset:0;z-index:100;display:grid;place-items:center;overflow:hidden;isolation:isolate;background:var(--intro-deep);animation:none}
.brand-intro.is-complete{animation:introAssemblyExit .72s cubic-bezier(.76,0,.24,1) forwards}
.brand-intro__atmosphere{position:absolute;inset:0;z-index:-3;overflow:hidden;background:radial-gradient(circle at 50% 46%,rgb(69 108 255 / .25),transparent 17rem),radial-gradient(ellipse at 50% 110%,rgb(29 55 174 / .3),transparent 42rem),linear-gradient(140deg,#02030a 0%,#060b1d 50%,#010207 100%)}
.brand-intro__atmosphere::before{content:"";position:absolute;inset:-15%;background:linear-gradient(rgb(125 151 255 / .08) 1px,transparent 1px),linear-gradient(90deg,rgb(125 151 255 / .08) 1px,transparent 1px);background-size:3.5rem 3.5rem;mask-image:radial-gradient(ellipse at 50% 52%,black 0%,rgb(0 0 0 / .8) 32%,transparent 68%);transform:perspective(46rem) rotateX(64deg) translateY(14%);transform-origin:50% 100%;animation:introGridDrift 7s linear infinite}
.brand-intro__atmosphere::after{content:"";position:absolute;inset:-30%;background:conic-gradient(from 220deg at 50% 52%,transparent 0 29%,rgb(69 108 255 / .15) 36%,transparent 43% 69%,rgb(129 153 255 / .08) 77%,transparent 86%);filter:blur(1px);animation:introAuraTurn 9s linear infinite}
.brand-intro__assembly{position:absolute;inset:0;z-index:-1;pointer-events:none;perspective:72rem}
.brand-intro__module{--module-size:clamp(2.4rem,3.4vw,3.8rem);position:absolute;left:50%;top:50%;display:grid;place-items:center;width:var(--module-size);height:var(--module-size);border:0;background:none;box-shadow:none;opacity:0;transform-style:preserve-3d;animation:introModuleLock var(--intro-duration) cubic-bezier(.16,.84,.32,1) forwards}
.brand-intro__module::before,.brand-intro__module::after{display:none}
.brand-intro__module-icon{display:block;width:100%;height:100%;overflow:visible;fill:none;stroke:rgb(220 229 255 / .95);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 .45rem .65rem rgb(0 0 0 / .3)) drop-shadow(0 0 .75rem rgb(69 108 255 / .82))}
.brand-intro__module--one{--from-x:-42vw;--from-y:-28vh;--from-r:-38deg;--to-x:-11.6rem;--to-y:-7.2rem;animation-delay:.06s}
.brand-intro__module--two{--from-x:44vw;--from-y:-30vh;--from-r:46deg;--to-x:5.5rem;--to-y:-8.6rem;animation-delay:.14s}
.brand-intro__module--three{--from-x:-48vw;--from-y:8vh;--from-r:-24deg;--to-x:-14.3rem;--to-y:-.6rem;animation-delay:.22s}
.brand-intro__module--four{--from-x:48vw;--from-y:9vh;--from-r:32deg;--to-x:9.6rem;--to-y:.2rem;animation-delay:.31s}
.brand-intro__module--five{--from-x:-32vw;--from-y:37vh;--from-r:-51deg;--to-x:-7.7rem;--to-y:7.1rem;animation-delay:.38s}
.brand-intro__module--six{--from-x:33vw;--from-y:35vh;--from-r:39deg;--to-x:5.9rem;--to-y:7.5rem;animation-delay:.47s}
.brand-intro__module--seven{--from-x:0vw;--from-y:-46vh;--from-r:3deg;--to-x:-1.9rem;--to-y:-11.1rem;animation-delay:.55s}
.brand-intro__logo-stage{position:relative;z-index:1;display:grid;place-items:center;width:clamp(15rem,35vw,34rem);aspect-ratio:1;isolation:isolate}
.brand-intro__logo-stage::before{content:"";position:absolute;inset:10%;border:1px solid rgb(143 168 255 / .26);border-radius:50%;box-shadow:0 0 0 1px rgb(69 108 255 / .08),0 0 5rem rgb(69 108 255 / .17);transform:scale(.74);opacity:0;animation:introCoreBloom var(--intro-duration) cubic-bezier(.16,.84,.32,1) .34s forwards}
.brand-intro__logo-stage::after{content:"";position:absolute;inset:19%;border:1px solid rgb(175 194 255 / .18);border-radius:50%;transform:scale(.3);opacity:0;animation:introCoreBloom var(--intro-duration) cubic-bezier(.16,.84,.32,1) .48s forwards}
.brand-intro__orbit{position:absolute;border:1px solid rgb(137 163 255 / .38);border-radius:50%;opacity:0;pointer-events:none}
.brand-intro__orbit--one{width:110%;height:45%;transform:rotate(-27deg) scale(.6);animation:introOrbitOne 2.3s cubic-bezier(.16,.84,.32,1) .56s forwards}
.brand-intro__orbit--two{width:92%;height:37%;border-color:rgb(242 245 255 / .3);transform:rotate(34deg) scale(.4);animation:introOrbitTwo 2.1s cubic-bezier(.16,.84,.32,1) .7s forwards}
.brand-intro__horizon{position:absolute;bottom:17%;left:-30%;right:-30%;height:1px;background:linear-gradient(90deg,transparent,rgb(128 153 255 / .12) 18%,rgb(202 213 255 / .86) 50%,rgb(128 153 255 / .12) 82%,transparent);opacity:0;box-shadow:0 0 1.3rem rgb(69 108 255 / .78);animation:introHorizon var(--intro-duration) cubic-bezier(.16,.84,.32,1) .3s forwards}
.brand-intro__logo{position:relative;z-index:2;display:block;width:100%;height:100%;object-fit:contain;opacity:0;filter:drop-shadow(0 1.4rem 2rem rgb(0 0 0 / .48)) drop-shadow(0 0 1.8rem rgb(69 108 255 / .32));transform:translate3d(0,1.5rem,0) scale(.74);clip-path:inset(12% 0 28% 0);animation:introLogoLock var(--intro-duration) cubic-bezier(.16,.84,.32,1) .18s forwards}
@keyframes introModuleLock{0%{opacity:0;transform:translate3d(var(--from-x),var(--from-y),0) rotate(var(--from-r)) scale(.55)}17%{opacity:.9}52%{opacity:1;transform:translate3d(var(--to-x),var(--to-y),0) rotate(-8deg) scale(1)}73%{opacity:.84;transform:translate3d(var(--to-x),var(--to-y),0) rotate(0deg) scale(1)}100%{opacity:.13;transform:translate3d(var(--to-x),var(--to-y),0) rotate(0deg) scale(.84)}}
@keyframes introLogoLock{0%,27%{opacity:0;transform:translate3d(0,1.5rem,0) scale(.74);clip-path:inset(45% 45% 45% 45%)}51%{opacity:1;transform:translate3d(0,.3rem,0) scale(1.025);clip-path:inset(6% 0 18% 0)}72%{opacity:1;transform:translate3d(0,0,0) scale(1);clip-path:inset(0)}100%{opacity:1;transform:translate3d(0,0,0) scale(1);clip-path:inset(0)}}
@keyframes introCoreBloom{0%,24%{opacity:0;transform:scale(.3)}51%{opacity:.95}72%{opacity:.52;transform:scale(1.05)}100%{opacity:.28;transform:scale(1)}}
@keyframes introOrbitOne{0%{opacity:0;transform:rotate(-27deg) scale(.6)}30%{opacity:.82}72%{opacity:.4;transform:rotate(28deg) scale(1.08)}100%{opacity:.18;transform:rotate(44deg) scale(1.15)}}
@keyframes introOrbitTwo{0%{opacity:0;transform:rotate(34deg) scale(.4)}30%{opacity:.7}73%{opacity:.26;transform:rotate(-34deg) scale(1.02)}100%{opacity:.13;transform:rotate(-55deg) scale(1.08)}}
@keyframes introHorizon{0%,24%{opacity:0;transform:scaleX(.05)}48%{opacity:1;transform:scaleX(1)}75%{opacity:.65;transform:scaleX(.74)}100%{opacity:.2;transform:scaleX(.58)}}
@keyframes introGridDrift{from{background-position:0 0,0 0}to{background-position:0 3.5rem,3.5rem 0}}
@keyframes introAuraTurn{from{transform:rotate(0deg) scale(1.05)}to{transform:rotate(360deg) scale(1.05)}}
@keyframes introAssemblyExit{0%{opacity:1;transform:translate3d(0,0,0)}100%{opacity:1;transform:translate3d(0,-100%,0)}}
@media (max-width:620px){.brand-intro__logo-stage{width:min(82vw,24rem)}.brand-intro__module{--module-size:2.45rem}.brand-intro__module--one{--to-x:-8.5rem;--to-y:-6.3rem}.brand-intro__module--two{--to-x:4rem;--to-y:-7.4rem}.brand-intro__module--three{--to-x:-9.6rem;--to-y:-.4rem}.brand-intro__module--four{--to-x:6.8rem;--to-y:.2rem}.brand-intro__module--five{--to-x:-5.8rem;--to-y:5.6rem}.brand-intro__module--six{--to-x:4.4rem;--to-y:5.9rem}.brand-intro__module--seven{--to-x:-1.4rem;--to-y:-9.2rem}}
@media (prefers-reduced-motion:reduce){.brand-intro{animation:none}.brand-intro__atmosphere::before,.brand-intro__atmosphere::after,.brand-intro__assembly,.brand-intro__orbit,.brand-intro__horizon,.brand-intro__logo-stage::before,.brand-intro__logo-stage::after{animation:none}.brand-intro__module,.brand-intro__orbit,.brand-intro__horizon{display:none}.brand-intro__logo{opacity:1;transform:none;clip-path:none;animation:none;filter:drop-shadow(0 1rem 1.5rem rgb(0 0 0 / .38))}.brand-intro__logo-stage::before{opacity:.3;transform:none}}
.projects-archive{position:relative;min-height:100svh;overflow:hidden;padding:clamp(8rem,13vw,13rem) var(--gutter) clamp(5rem,10vw,10rem);background:radial-gradient(circle at 88% 8%,rgb(52 87 255 / .2),transparent 30rem),linear-gradient(135deg,var(--black) 0%,#0d1020 48%,var(--graphite) 100%);isolation:isolate}
.projects-archive::before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 0 34%,rgb(52 87 255 / .06) 49%,transparent 66%);background-size:220% 100%;animation:servicesBeam 15s ease-in-out infinite alternate;pointer-events:none}
.projects-archive__shell{position:relative;z-index:1;width:min(100%,115rem);margin:0 auto}
.projects-archive__heading{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(0,2.5fr) minmax(12rem,1fr);gap:2rem;align-items:end;margin-bottom:clamp(3.5rem,8vw,8rem)}
.projects-archive__title{grid-column:2 / 4;max-width:9ch;margin:0;color:var(--ivory);font-family:var(--display);font-size:clamp(4rem,10vw,12rem);line-height:.82;letter-spacing:-.09em;text-transform:uppercase}
.projects-archive__list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.7rem,1.35vw,1.35rem);width:min(100%,115rem);margin:0 auto}
.projects-archive__item{position:relative;overflow:hidden;display:grid;place-items:center;width:100%;aspect-ratio:2 / 3;margin:0;border:1px solid rgb(242 240 234 / .14);border-radius:clamp(.45rem,.9vw,.85rem);background:var(--graphite);isolation:isolate;cursor:default}
.projects-archive__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 48%,rgb(9 9 9 / .08) 63%,rgb(9 9 9 / .9) 100%);pointer-events:none}
.projects-archive__item img{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88);transition:filter .45s ease,transform .55s cubic-bezier(.2,.75,.25,1)}
.projects-archive__card-title{position:absolute;z-index:2;right:.45rem;bottom:.75rem;left:.45rem;margin:0;color:var(--ivory);font-family:var(--display);font-size:clamp(.8rem,1.25vw,1.45rem);font-weight:900;letter-spacing:-.075em;line-height:.86;text-align:center;text-transform:uppercase;text-wrap:balance}
.projects-archive__item:hover img{filter:saturate(1);transform:scale(1.015)}
@media (max-width:1100px){.projects-archive__list{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:900px){.projects-archive__heading{display:block}.projects-archive__title{margin-top:2.2rem}.projects-archive__list{width:100%}}
@media (max-width:620px){.projects-archive{padding-top:6.5rem;padding-bottom:5rem}.projects-archive__title{font-size:clamp(3.8rem,17vw,6.5rem)}.projects-archive__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.projects-archive__item{border-radius:.45rem}.projects-archive__card-title{right:.2rem;bottom:.55rem;left:.2rem;font-size:clamp(.58rem,3.25vw,.92rem);line-height:.9}}
@media (prefers-reduced-motion:reduce){.projects-archive::before{animation:none}.projects-archive__item img{transition:none}}
.work-project-card,.projects-archive__item{cursor:pointer}
.work-project-card:focus-visible,.projects-archive__item:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
html.project-modal-open{scrollbar-gutter:stable}
.project-modal[hidden]{display:none}
.project-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem);opacity:0;visibility:hidden;transition:opacity .32s ease,visibility .32s ease}
.project-modal.is-open{opacity:1;visibility:visible}
.project-modal__backdrop{position:absolute;inset:0;background:rgb(9 9 9 / .78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer}
.project-modal__dialog{position:relative;z-index:1;width:min(1100px,92vw);max-height:90vh;overflow-y:auto;border:1px solid rgb(242 240 234 / .16);border-radius:clamp(1.1rem,2vw,1.5rem);background:linear-gradient(145deg,#0d0d0d 0%,#151a33 100%);box-shadow:0 2rem 7rem rgb(0 0 0 / .5);opacity:0;transform:scale(.97);transition:opacity .32s cubic-bezier(.2,.75,.25,1),transform .32s cubic-bezier(.2,.75,.25,1);overscroll-behavior:contain}
.project-modal.is-open .project-modal__dialog{opacity:1;transform:scale(1)}
.project-modal__close{position:absolute;top:1rem;right:1rem;z-index:4;display:grid;place-items:center;width:2.7rem;height:2.7rem;border:1px solid rgb(242 240 234 / .35);border-radius:50%;background:rgb(9 9 9 / .55);color:var(--ivory);font-family:var(--body);font-size:1.7rem;font-weight:300;line-height:1;cursor:pointer;transition:background .25s ease,border-color .25s ease,transform .25s ease}
.project-modal__close:hover,.project-modal__close:focus-visible{border-color:var(--blue);background:var(--blue);outline:none;transform:rotate(90deg)}
.project-modal__hero{position:relative;min-height:clamp(21rem,54vh,36rem);overflow:hidden}
.project-modal__cover{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.project-modal__hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgb(9 9 9 / .04) 28%,rgb(9 9 9 / .12) 48%,#0d0d0d 100%);pointer-events:none}
.project-modal__title{position:absolute;right:clamp(1.2rem,4vw,3.5rem);bottom:clamp(1.2rem,3vw,2.8rem);left:clamp(1.2rem,4vw,3.5rem);margin:0;color:var(--ivory);font-family:var(--display);font-size:clamp(2.2rem,6vw,6rem);letter-spacing:-.08em;line-height:.84;text-align:center;text-transform:uppercase;text-wrap:balance}
.project-modal__body{padding:0 clamp(1.2rem,4vw,3.5rem) clamp(2rem,5vw,4rem)}
.project-modal__section{padding:clamp(1.4rem,3vw,2.6rem) 0;border-top:1px solid rgb(166 166 166 / .22)}
.project-modal__section h3{margin:0 0 1.2rem;color:var(--blue);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.project-modal__section [data-project-modal-description]{max-width:44rem;color:rgb(242 240 234 / .78);font-size:clamp(1rem,1.45vw,1.25rem);line-height:1.5}
.project-modal__video-grid{display:grid;gap:1rem}
.project-modal__video-frame{position:relative;overflow:hidden;aspect-ratio:16 / 9;background:var(--black)}
.project-modal__video-frame video{display:block;width:100%;height:100%;object-fit:cover}
.project-modal__gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.project-modal__gallery img{display:block;width:100%;height:auto;object-fit:cover}
.project-modal__additional{display:grid;gap:1.2rem;color:rgb(242 240 234 / .78);font-size:.95rem;line-height:1.5}
.project-modal__credits,.project-modal__links{display:grid;gap:.45rem}
.project-modal__credits p{margin:0}
.project-modal__links a{color:var(--ivory);text-decoration:underline;text-decoration-color:rgb(52 87 255 / .7);text-underline-offset:.2em}
.project-modal__links a:hover,.project-modal__links a:focus-visible{color:var(--blue);outline:none}
.project-modal-open .work-projects__track{animation-play-state:paused}
@media (max-width:700px){.project-modal{padding:.25rem}.project-modal__dialog{width:96vw;max-height:calc(100dvh - .5rem);border-radius:1rem}.project-modal__close{top:.7rem;right:.7rem;width:2.5rem;height:2.5rem}.project-modal__hero{min-height:clamp(15rem,43svh,27rem)}.project-modal__title{right:1rem;bottom:1.2rem;left:1rem;font-size:clamp(1.7rem,8vw,3.5rem)}.project-modal__body{padding:0 1rem 2rem}.project-modal__gallery{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.project-modal,.project-modal__dialog,.project-modal__close{transition:none}.project-modal-open .work-projects__track{animation-play-state:paused}}
.project-modal__a11y-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.project-modal__hero[hidden],.project-modal__body[hidden],.project-modal__custom[hidden]{display:none}
.project-modal--custom .project-modal__dialog{width:min(1320px,94vw);max-height:94vh;background:linear-gradient(145deg,#0b0b0b 0%,#11162d 100%)}
.project-modal__custom{padding:clamp(1rem,2.5vw,2.2rem);color:var(--ivory)}
.project-modal__custom-featured{position:relative;overflow:hidden;aspect-ratio:16 / 9;border:1px solid rgb(242 240 234 / .14);border-radius:clamp(.8rem,1.4vw,1.2rem);background:#050505;box-shadow:0 1.5rem 4rem rgb(0 0 0 / .3)}
.project-modal__custom-featured iframe{display:block;width:100%;height:100%;border:0}
.project-modal__custom-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.55fr) minmax(12rem,.78fr);gap:clamp(1.2rem,3vw,3rem);align-items:start;padding:clamp(1.8rem,4vw,3.2rem) 0}
.project-modal__custom-story h3,.project-modal__custom-references h3{margin:0 0 1.1rem;color:var(--blue);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.project-modal__custom-story p{margin:0;color:rgb(242 240 234 / .82);font-size:clamp(.95rem,1.2vw,1.1rem);line-height:1.55}
.project-modal__custom-gallery{display:grid;gap:1rem}
.project-modal__custom-gallery img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;border:1px solid rgb(242 240 234 / .13);border-radius:clamp(.65rem,1vw,1rem)}
.project-modal__custom-logos{display:flex;flex-direction:column;gap:1rem;align-items:stretch}
.project-modal__logo-link{display:block;width:100%;color:inherit;text-decoration:none;line-height:0;border-radius:clamp(.65rem,1vw,1rem)}
.project-modal__logo-link:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.project-modal__custom-logos img{display:block;width:100%;height:clamp(5rem,9vw,8rem);padding:1rem;object-fit:contain;border:1px solid rgb(242 240 234 / .16);border-radius:clamp(.65rem,1vw,1rem);background:rgb(242 240 234 / .035)}
.project-modal__custom-references{padding-top:clamp(1.5rem,3vw,2.5rem);border-top:1px solid rgb(166 166 166 / .22)}
.project-modal__custom-audio{margin-top:clamp(.2rem,1vw,.8rem);padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(242 240 234 / .13);border-radius:clamp(.65rem,1vw,1rem);background:rgb(9 9 9 / .62);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .18);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.project-modal__custom-audio h3{margin:0 0 1rem;color:var(--blue);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.project-modal__audio-list{display:grid;gap:.85rem}.project-modal__audio-item{padding:.85rem 1rem;border:1px solid rgb(242 240 234 / .1);border-radius:.65rem;background:rgb(9 9 9 / .4)}.project-modal__audio-title{margin:0 0 .55rem;color:rgb(242 240 234 / .82);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.project-modal__audio-player{display:block;width:100%;min-height:3rem;accent-color:var(--blue)}
.project-modal__youtube-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.7rem,1.5vw,1.2rem);align-items:center}
.project-modal__youtube-item{position:relative;display:block;min-width:0;overflow:hidden;aspect-ratio:16 / 9;padding:0;border:1px solid rgb(242 240 234 / .14);border-radius:clamp(.65rem,1vw,1rem);background:#050505;color:var(--ivory);cursor:pointer;transition:transform .28s ease,border-color .28s ease,opacity .28s ease,filter .28s ease}
.project-modal__youtube-item:not(.is-active){opacity:.58;filter:saturate(.72);transform:scale(.96)}
.project-modal__youtube-item:not(.is-active):hover,.project-modal__youtube-item:not(.is-active):focus-visible{opacity:1;filter:none;transform:scale(1);border-color:var(--blue);outline:none}
.project-modal__youtube-item.is-active{border-color:rgb(52 87 255 / .75);box-shadow:0 0 0 1px rgb(52 87 255 / .25),0 1rem 3rem rgb(0 0 0 / .3)}
.project-modal__youtube-item iframe,.project-modal__youtube-item img{display:block;width:100%;height:100%;border:0;object-fit:cover}
.project-modal__youtube-play{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:3rem;height:3rem;border:1px solid rgb(242 240 234 / .7);border-radius:50%;background:rgb(9 9 9 / .68);color:var(--ivory);font-size:.9rem;transform:translate(-50%,-50%);pointer-events:none}
@media (max-width:900px){.project-modal__custom-grid{grid-template-columns:minmax(0,1fr) minmax(12rem,.7fr)}.project-modal__custom-story{grid-column:1 / -1}.project-modal__custom-gallery{grid-column:1}.project-modal__custom-logos{grid-column:2;grid-row:2}}
@media (max-width:700px){.project-modal--custom .project-modal__dialog{width:96vw;max-height:calc(100dvh - .5rem)}.project-modal__custom{padding:.8rem}.project-modal__custom-grid{display:grid;grid-template-columns:1fr;gap:1.6rem;padding:1.5rem 0}.project-modal__custom-story,.project-modal__custom-gallery,.project-modal__custom-logos{grid-column:auto;grid-row:auto}.project-modal__custom-gallery{gap:.8rem}.project-modal__custom-logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.project-modal__custom-logos img{height:5.8rem;padding:.7rem}.project-modal__youtube-stage{grid-template-columns:1fr;gap:.8rem}.project-modal__youtube-item{width:100%;transform:none!important;opacity:1}.project-modal__youtube-item.is-active{order:1!important}.project-modal__youtube-item.is-before,.project-modal__youtube-item.is-after{order:2!important}.project-modal__youtube-play{width:2.6rem;height:2.6rem}}
@media (prefers-reduced-motion:reduce){.project-modal__youtube-item{transition:none}}
.project-modal__custom{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 16% 18%,rgb(52 87 255 / .1),transparent 20rem),radial-gradient(circle at 84% 74%,rgb(52 87 255 / .08),transparent 22rem)}
.project-modal__custom::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.58;background-image:radial-gradient(circle at 8% 14%,rgb(242 240 234 / .9) 0 1px,transparent 1.7px),radial-gradient(circle at 33% 71%,rgb(52 87 255 / .9) 0 1px,transparent 1.9px),radial-gradient(circle at 67% 28%,rgb(242 240 234 / .82) 0 1.2px,transparent 2px),radial-gradient(circle at 91% 82%,rgb(52 87 255 / .88) 0 1px,transparent 1.8px);background-size:19rem 17rem,23rem 21rem,29rem 25rem,17rem 23rem;animation:project-modal-particles 18s ease-in-out infinite alternate}
.project-modal__custom>*{position:relative;z-index:1}
.project-modal__custom-story p{text-align:justify;text-justify:inter-word}
.project-modal__custom-logos img{height:clamp(6rem,10vw,10rem);padding:1.1rem}
@keyframes project-modal-particles{from{transform:translate3d(0,0,0);opacity:.42}to{transform:translate3d(1.5rem,-1rem,0);opacity:.72}}
@media (max-width:700px){.project-modal__custom-logos img{height:7.5rem;padding:.85rem}}
@media (prefers-reduced-motion:reduce){.project-modal__custom::before{animation:none}}
.project-modal__custom--music{background:radial-gradient(circle at 14% 12%,rgb(52 87 255 / .14),transparent 22rem),radial-gradient(circle at 86% 78%,rgb(242 240 234 / .08),transparent 24rem),#090909}
.project-modal__custom--music::before{opacity:.22;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96' fill='none'%3E%3Cpath d='M56 10v40.5a8.5 8.5 0 1 1-4-7.2V20l28-6v39.5a8.5 8.5 0 1 1-4-7.2V10H56Z' fill='%23F2F0EA' fill-opacity='.7'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96' fill='none'%3E%3Cpath d='M56 10v40.5a8.5 8.5 0 1 1-4-7.2V20l28-6v39.5a8.5 8.5 0 1 1-4-7.2V10H56Z' fill='%233457FF' fill-opacity='.8'/%3E%3C/svg%3E");background-size:8rem 8rem,12rem 12rem;background-position:0 0,2.5rem 1.8rem;background-repeat:repeat;animation:project-modal-music 22s ease-in-out infinite alternate}
.project-modal__custom--music .project-modal__custom-story{padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(242 240 234 / .13);border-radius:1rem;background:rgb(9 9 9 / .78);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .28);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.project-modal__custom--music .project-modal__custom-story p{color:rgb(242 240 234 / .95)}
.project-modal__custom--music .project-modal__custom-story h3,.project-modal__custom--music .project-modal__custom-references h3{display:inline-block;margin-bottom:1rem;padding:.42rem .65rem;border-radius:.42rem;background:rgb(9 9 9 / .88);box-shadow:0 0 .9rem rgb(52 87 255 / .22);color:var(--blue);text-shadow:0 0 .7rem rgb(9 9 9 / .95)}
.project-modal__custom--music .project-modal__custom-logos img{width:min(100%,22rem);height:clamp(10rem,16vw,16rem);margin-inline:auto;padding:0;object-fit:contain;border:0;border-radius:0;background:transparent;box-shadow:none;filter:drop-shadow(0 0 .8rem rgb(242 240 234 / .24))}
@keyframes project-modal-music{from{transform:translate3d(0,0,0) rotate(-1deg);opacity:.14}to{transform:translate3d(1rem,-.8rem,0) rotate(1deg);opacity:.3}}
@media (max-width:700px){.project-modal__custom--music .project-modal__custom-logos img{width:min(100%,18rem);height:10rem}}
@media (prefers-reduced-motion:reduce){.project-modal__custom--music::before{animation:none;opacity:.2}}
.project-modal__custom--cats::before{opacity:.36;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%23F2F0EA' d='M4 6l7 4c3-2 7-2 10 0l7-4-2 9c1 1 2 3 2 5 0 5-5 9-12 9S4 25 4 20c0-2 1-4 2-5L4 6zm7 12a2 2 0 1 0 0 .1zm10 0a2 2 0 1 0 0 .1zM14 23h4'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%233457FF' d='M4 6l7 4c3-2 7-2 10 0l7-4-2 9c1 1 2 3 2 5 0 5-5 9-12 9S4 25 4 20c0-2 1-4 2-5L4 6zm7 12a2 2 0 1 0 0 .1zm10 0a2 2 0 1 0 0 .1zM14 23h4'/%3E%3C/svg%3E");background-size:2.35rem 2.35rem,3.7rem 3.7rem;background-position:0 0,1.1rem .8rem;background-repeat:repeat;animation:project-modal-cats 20s ease-in-out infinite alternate}
@keyframes project-modal-cats{from{transform:translate3d(0,0,0);opacity:.24}to{transform:translate3d(.8rem,-.5rem,0);opacity:.44}}
@media (prefers-reduced-motion:reduce){.project-modal__custom--cats::before{animation:none}}
.project-modal__custom--cats::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath transform='translate(16 16)' fill='%23F2F0EA' d='M4 6l7 4c3-2 7-2 10 0l7-4-2 9c1 1 2 3 2 5 0 5-5 9-12 9S4 25 4 20c0-2 1-4 2-5L4 6zm7 12a2 2 0 1 0 0 .1zm10 0a2 2 0 1 0 0 .1zM14 23h4'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath transform='translate(16 16)' fill='%233457FF' d='M4 6l7 4c3-2 7-2 10 0l7-4-2 9c1 1 2 3 2 5 0 5-5 9-12 9S4 25 4 20c0-2 1-4 2-5L4 6zm7 12a2 2 0 1 0 0 .1zm10 0a2 2 0 1 0 0 .1zM14 23h4'/%3E%3C/svg%3E");background-size:3.5rem 3.5rem,5.5rem 5.5rem;background-position:0 0,1.4rem 1rem}
.project-modal__custom--single-logo .project-modal__custom-logos{align-items:center}
.project-modal__custom--single-logo .project-modal__custom-logos img{width:min(100%,18rem);margin-inline:auto;object-position:center center}
.project-modal__custom--cats .project-modal__custom-story{padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(242 240 234 / .11);border-radius:1rem;background:rgb(9 9 9 / .76);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .2);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.project-modal__custom--cats .project-modal__custom-story p{color:rgb(242 240 234 / .94)}
.project-modal__custom--cats .project-modal__custom-story h3,.project-modal__custom--cats .project-modal__custom-references h3{display:inline-block;margin-bottom:1rem;padding:.42rem .65rem;border-radius:.42rem;background:rgb(9 9 9 / .84);box-shadow:0 0 .9rem rgb(52 87 255 / .18);color:var(--blue);text-shadow:0 0 .7rem rgb(9 9 9 / .95)}
.project-modal__custom--cats .project-modal__custom-references{padding:clamp(1rem,1.8vw,1.5rem);border:1px solid rgb(242 240 234 / .1);border-radius:1rem;background:rgb(9 9 9 / .46);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
@media (max-width:700px){.project-modal__custom--single-logo .project-modal__custom-logos{grid-template-columns:1fr}.project-modal__custom--single-logo .project-modal__custom-logos img{width:min(100%,50%);justify-self:center}}
.project-modal__custom-featured-image{display:block;width:100%;height:100%;object-fit:cover}
.project-modal__custom--no-sidebar .project-modal__custom-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.7fr)}
.project-modal__custom--fog::before{opacity:.62;background-image:radial-gradient(ellipse at 8% 22%,rgb(242 240 234 / .2) 0 5%,transparent 33%),radial-gradient(ellipse at 86% 58%,rgb(166 166 166 / .18) 0 7%,transparent 36%),radial-gradient(ellipse at 48% 88%,rgb(52 87 255 / .14) 0 6%,transparent 34%),linear-gradient(120deg,rgb(28 28 28 / .58),transparent 48%,rgb(9 9 9 / .68));background-repeat:no-repeat;filter:blur(22px);animation:project-modal-fog 18s ease-in-out infinite alternate}
.project-modal__custom--fog::after{content:"";position:absolute;inset:-18%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 24% 48%,rgb(242 240 234 / .13),transparent 30%),radial-gradient(ellipse at 76% 24%,rgb(166 166 166 / .12),transparent 28%);filter:blur(44px);opacity:.48;animation:project-modal-fog-drift 24s ease-in-out infinite alternate}
.project-modal__custom--fog .project-modal__custom-story{padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(242 240 234 / .12);border-radius:1rem;background:rgb(9 9 9 / .76);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .24);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.project-modal__custom--fog .project-modal__custom-story p{color:rgb(242 240 234 / .94)}
.project-modal__custom--fog .project-modal__custom-story h3,.project-modal__custom--fog .project-modal__custom-references h3{display:inline-block;margin-bottom:1rem;padding:.42rem .65rem;border-radius:.42rem;background:rgb(9 9 9 / .84);box-shadow:0 0 .9rem rgb(52 87 255 / .18);color:var(--blue);text-shadow:0 0 .7rem rgb(9 9 9 / .95)}
@keyframes project-modal-fog{from{transform:translate3d(-1%,0,0) scale(1.02);opacity:.42}to{transform:translate3d(2%, -1%,0) scale(1.08);opacity:.72}}
@keyframes project-modal-fog-drift{from{transform:translate3d(1%,1%,0) rotate(-2deg)}to{transform:translate3d(-2%,-1%,0) rotate(2deg)}}
@media (max-width:700px){.project-modal__custom--no-sidebar .project-modal__custom-grid{grid-template-columns:1fr}.project-modal__custom--fog .project-modal__custom-featured-image{object-position:center center}}
@media (prefers-reduced-motion:reduce){.project-modal__custom--fog::before,.project-modal__custom--fog::after{animation:none}}
.project-modal__custom--lines{background:radial-gradient(circle at 50% 8%,rgb(242 240 234 / .08),transparent 32rem),radial-gradient(circle at 12% 88%,rgb(52 87 255 / .12),transparent 24rem),#090909}
.project-modal__custom--lines::before{opacity:0;inset:-8% -12%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 760' fill='none'%3E%3Cg stroke='%23F2F0EA' stroke-opacity='.72' stroke-width='2'%3E%3Cpath d='M-40 128C175 158 254 277 431 277c141 0 181-53 169-105'/%3E%3Cpath d='M-40 170c211 28 295 160 465 160 125 0 165-48 175-92'/%3E%3Cpath d='M-40 216c210 24 295 174 470 174 124 0 162-48 170-91'/%3E%3Cpath d='M1240 128c-215 30-294 149-471 149-141 0-181-53-169-105'/%3E%3Cpath d='M1240 170c-211 28-295 160-465 160-125 0-165-48-175-92'/%3E%3Cpath d='M1240 216c-210 24-295 174-470 174-124 0-162-48-170-91'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-size:100% 100%;filter:none;animation:project-modal-lines-draw 12s cubic-bezier(.65,0,.35,1) infinite}
.project-modal__custom--lines::after{content:"";position:absolute;inset:-8% -12%;z-index:0;pointer-events:none;opacity:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 760' fill='none'%3E%3Cg stroke='%233457FF' stroke-opacity='.56' stroke-width='2'%3E%3Cpath d='M-40 590c215-30 294-149 471-149 141 0 181 53 169 105'/%3E%3Cpath d='M-40 634c211-28 295-160 465-160 125 0 165 48 175 92'/%3E%3Cpath d='M1240 590c-215-30-294-149-471-149-141 0-181 53-169 105'/%3E%3Cpath d='M1240 634c-211-28-295-160-465-160-125 0-165 48-175 92'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-size:100% 100%;animation:project-modal-lines-draw 12s 2.6s cubic-bezier(.65,0,.35,1) infinite reverse}
.project-modal__custom--lines .project-modal__custom-story{padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(242 240 234 / .13);border-radius:1rem;background:rgb(9 9 9 / .8);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .28);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.project-modal__custom--lines .project-modal__custom-story p{color:rgb(242 240 234 / .95)}
.project-modal__custom--lines .project-modal__custom-story h3{display:inline-block;margin-bottom:1rem;padding:.42rem .65rem;border-radius:.42rem;background:rgb(9 9 9 / .88);box-shadow:0 0 .9rem rgb(52 87 255 / .22);color:var(--blue);text-shadow:0 0 .7rem rgb(9 9 9 / .95)}
.project-modal__custom--lines .project-modal__custom-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.7fr)}
.project-modal__custom--lines .project-modal__custom-logos{grid-column:1;grid-row:2;align-items:center;margin-top:0}
.project-modal__custom--lines .project-modal__custom-logos img{width:min(100%,26rem);height:clamp(12rem,18vw,18rem);margin-inline:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;filter:drop-shadow(0 0 .7rem rgb(242 240 234 / .22))}
@media (max-width:900px){.project-modal__custom--lines .project-modal__custom-grid{grid-template-columns:minmax(0,1fr) minmax(12rem,.7fr)}.project-modal__custom--lines .project-modal__custom-story{grid-column:1 / -1}.project-modal__custom--lines .project-modal__custom-gallery{grid-column:1}.project-modal__custom--lines .project-modal__custom-logos{grid-column:2;grid-row:2}}
@media (max-width:700px){.project-modal__custom--lines .project-modal__custom-grid{grid-template-columns:1fr}.project-modal__custom--lines .project-modal__custom-story,.project-modal__custom--lines .project-modal__custom-gallery,.project-modal__custom--lines .project-modal__custom-logos{grid-column:auto;grid-row:auto}.project-modal__custom--lines .project-modal__custom-logos img{width:min(100%,24rem);height:clamp(11rem,42vw,15rem)}}
@keyframes project-modal-lines-draw{0%{clip-path:inset(0 50% 0 50%);opacity:0;transform:translate3d(-1%,0,0)}18%{clip-path:inset(0 28% 0 28%);opacity:.32}52%{clip-path:inset(0 0 0 0);opacity:.64;transform:translate3d(0,0,0)}78%{clip-path:inset(0 0 0 0);opacity:.28}100%{clip-path:inset(0 50% 0 50%);opacity:0;transform:translate3d(1%,-1%,0)}}
@media (prefers-reduced-motion:reduce){.project-modal__custom--lines::before,.project-modal__custom--lines::after{animation:none;clip-path:inset(0);opacity:.32}}
.project-modal__custom--circuits{background:radial-gradient(circle at 50% 6%,rgb(52 87 255 / .16),transparent 34rem),radial-gradient(circle at 12% 78%,rgb(0 214 255 / .12),transparent 25rem),#070b19}
.project-modal__custom--circuits::before{inset:-12%;opacity:.58;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 760 520' fill='none'%3E%3Cg stroke='%233457FF' stroke-width='1.6' stroke-opacity='.62'%3E%3Cpath d='M18 82h112l34 34h122l36-36h102l28 28h142'/%3E%3Cpath d='M-18 246h180l38-38h112l28 28h126l36-36h164'/%3E%3Cpath d='M56 446h96l34-34h124l30 30h116l38-38h152'/%3E%3Cpath d='M520 -20v76l-34 34v116l34 34v96l-30 30v112'/%3E%3Cpath d='M704 -18v98l-28 28v112l28 28v104l-38 38v86'/%3E%3C/g%3E%3Cg fill='%23F2F0EA' fill-opacity='.72'%3E%3Ccircle cx='18' cy='82' r='3'/%3E%3Ccircle cx='286' cy='80' r='3'/%3E%3Ccircle cx='532' cy='108' r='3'/%3E%3Ccircle cx='162' cy='246' r='3'/%3E%3Ccircle cx='440' cy='198' r='3'/%3E%3Ccircle cx='704' cy='-2' r='3'/%3E%3Ccircle cx='56' cy='446' r='3'/%3E%3C/g%3E%3C/svg%3E");background-repeat:repeat;background-size:760px 520px;filter:none;animation:project-modal-circuit-drift 18s linear infinite alternate}
.project-modal__custom--circuits::after{content:"";position:absolute;inset:-12%;z-index:0;pointer-events:none;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 920 620' fill='none'%3E%3Cg stroke='%23F2F0EA' stroke-width='1.3' stroke-opacity='.42'%3E%3Cpath d='M-30 154h152l34-34h122l28 28h148l34-34h204'/%3E%3Cpath d='M-30 510h188l38-38h108l34 34h152l28-28h238'/%3E%3Cpath d='M240 -24v106l-32 32v142l32 32v112l-32 32v104'/%3E%3Cpath d='M846 -24v126l-32 32v118l32 32v114l-34 34v98'/%3E%3C/g%3E%3Cg fill='%233457FF' fill-opacity='.8'%3E%3Ccircle cx='122' cy='154' r='3'/%3E%3Ccircle cx='406' cy='148' r='3'/%3E%3Ccircle cx='872' cy='154' r='3'/%3E%3Ccircle cx='158' cy='510' r='3'/%3E%3Ccircle cx='500' cy='472' r='3'/%3E%3C/g%3E%3C/svg%3E");background-repeat:repeat;background-size:920px 620px;animation:project-modal-circuit-drift-reverse 24s linear infinite alternate}
.project-modal__custom--circuits .project-modal__custom-featured-image{object-fit:cover;object-position:center center;background:#050812;image-rendering:auto}
.project-modal__custom--circuits .project-modal__custom-story{padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(242 240 234 / .13);border-radius:1rem;background:rgb(5 8 18 / .84);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .28);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.project-modal__custom--circuits .project-modal__custom-story p{color:rgb(242 240 234 / .95)}
.project-modal__custom--circuits .project-modal__custom-story h3,.project-modal__custom--circuits .project-modal__custom-references h3{display:inline-block;margin-bottom:1rem;padding:.42rem .65rem;border-radius:.42rem;background:rgb(5 8 18 / .9);box-shadow:0 0 .9rem rgb(52 87 255 / .22);color:var(--blue);text-shadow:0 0 .7rem rgb(5 8 18 / .95)}
.project-modal__custom--circuits .project-modal__custom-gallery img{object-fit:cover;object-position:center center;background:rgb(5 8 18 / .7);image-rendering:auto}.project-modal__custom--circuits .project-modal__custom-gallery img:nth-child(2){object-position:center 20%}
.project-modal__custom--circuits .project-modal__custom-logos{grid-column:2;grid-row:2;align-items:center;margin-top:0}
.project-modal__custom--circuits .project-modal__custom-logos img{width:min(100%,22rem);height:clamp(8rem,12vw,12rem);margin-inline:auto;padding:.9rem;object-fit:contain;border:1px solid rgb(242 240 234 / .18);border-radius:clamp(.65rem,1vw,1rem);background:rgb(5 8 18 / .78);box-shadow:0 .8rem 2.2rem rgb(0 0 0 / .24),0 0 1.2rem rgb(52 87 255 / .12)}
.project-modal__custom--circuits .project-modal__custom-references{padding:clamp(1rem,1.8vw,1.5rem);border:1px solid rgb(242 240 234 / .1);border-radius:1rem;background:rgb(5 8 18 / .58);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.project-modal__custom--circuits .project-modal__youtube-stage{grid-template-columns:minmax(0,18rem);justify-content:center}
.project-modal__custom--circuits .project-modal__youtube-item{width:min(100%,18rem);aspect-ratio:9 / 16;margin-inline:auto}
@media (max-width:900px){.project-modal__custom--circuits .project-modal__custom-grid{grid-template-columns:minmax(0,1fr) minmax(12rem,.7fr)}.project-modal__custom--circuits .project-modal__custom-story{grid-column:1 / -1}.project-modal__custom--circuits .project-modal__custom-gallery{grid-column:1;grid-row:auto}.project-modal__custom--circuits .project-modal__custom-logos{grid-column:1;grid-row:auto}}
@media (max-width:700px){.project-modal__custom--circuits .project-modal__custom-grid{grid-template-columns:1fr}.project-modal__custom--circuits .project-modal__custom-story,.project-modal__custom--circuits .project-modal__custom-gallery,.project-modal__custom--circuits .project-modal__custom-logos{grid-column:auto;grid-row:auto}.project-modal__custom--circuits .project-modal__custom-logos img{width:min(100%,20rem);height:8rem}.project-modal__custom--circuits .project-modal__youtube-stage{grid-template-columns:minmax(0,16rem)}.project-modal__custom--circuits .project-modal__youtube-item{width:min(100%,16rem)}}
@keyframes project-modal-circuit-drift{from{transform:translate3d(0,0,0);opacity:.22}to{transform:translate3d(-2rem,1.5rem,0);opacity:.62}}
@keyframes project-modal-circuit-drift-reverse{from{transform:translate3d(1rem,-1rem,0)}to{transform:translate3d(-1.5rem,1rem,0)}}
@media (prefers-reduced-motion:reduce){.project-modal__custom--circuits::before,.project-modal__custom--circuits::after{animation:none}.project-modal__custom--circuits::before{opacity:.42}.project-modal__custom--circuits::after{opacity:.22}}
.project-modal__custom--royal{background:radial-gradient(circle at 50% -14%,rgb(235 190 91 / .2),transparent 31rem),radial-gradient(circle at 8% 84%,rgb(132 76 18 / .18),transparent 24rem),linear-gradient(145deg,#0a0806 0%,#1b1108 42%,#080807 100%)}
.project-modal__custom--royal::before{inset:-12%;opacity:.25;background-image:radial-gradient(circle at 50% 2%,rgb(255 226 145 / .6) 0 1px,transparent 1.7px),repeating-conic-gradient(from 45deg at 50% 50%,rgb(210 163 72 / .16) 0deg 1deg,transparent 1deg 12deg);background-size:15rem 15rem,34rem 34rem;background-position:center top,center center;animation:project-modal-royal-drift 24s ease-in-out infinite alternate}
.project-modal__custom--royal::after{content:"";position:absolute;inset:1.1rem;z-index:0;pointer-events:none;border:1px solid rgb(225 183 91 / .18);border-radius:1rem;box-shadow:inset 0 0 0 1px rgb(255 239 183 / .04)}
.project-modal__custom--royal .project-modal__custom-story{padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(225 183 91 / .28);border-radius:1rem;background:linear-gradient(145deg,rgb(30 18 8 / .9),rgb(9 8 6 / .78));box-shadow:0 1rem 2.5rem rgb(0 0 0 / .32),0 0 1.2rem rgb(207 156 59 / .08);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.project-modal__custom--royal .project-modal__custom-story p{color:rgb(250 241 216 / .92)}
.project-modal__custom--royal .project-modal__custom-story h3,.project-modal__custom--royal .project-modal__custom-references h3{display:inline-block;margin-bottom:1rem;padding:.42rem .65rem;border:1px solid rgb(225 183 91 / .26);border-radius:.42rem;background:rgb(18 11 5 / .82);box-shadow:0 0 .9rem rgb(209 157 59 / .14);color:#e4bb6a;text-shadow:0 0 .7rem rgb(9 8 6 / .95)}
.project-modal__custom--royal .project-modal__custom-gallery img{border-color:rgb(225 183 91 / .34);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .3),0 0 .9rem rgb(209 157 59 / .09)}
.project-modal__custom--royal .project-modal__custom-logos img{width:min(100%,24rem);height:clamp(11rem,17vw,17rem);margin-inline:auto;padding:0;object-fit:contain;border:0;border-radius:0;background:transparent;box-shadow:none;filter:drop-shadow(0 0 .75rem rgb(255 221 139 / .3))}
.project-modal__custom--royal .project-modal__custom-references{border-top-color:rgb(225 183 91 / .24)}
.project-modal__custom--royal .project-modal__custom-references{padding:clamp(1rem,1.8vw,1.5rem);border:1px solid rgb(225 183 91 / .2);border-radius:1rem;background:rgb(12 9 6 / .44);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.project-modal__custom--royal .project-modal__youtube-item{border-color:rgb(225 183 91 / .26);background:#080706}
.project-modal__custom--royal .project-modal__youtube-item:not(.is-active):hover,.project-modal__custom--royal .project-modal__youtube-item:not(.is-active):focus-visible{border-color:#e4bb6a}
.project-modal__custom--royal .project-modal__youtube-item.is-active{border-color:rgb(228 187 106 / .86);box-shadow:0 0 0 1px rgb(228 187 106 / .26),0 1rem 3rem rgb(0 0 0 / .34)}
@keyframes project-modal-royal-drift{from{transform:translate3d(-.8rem,0,0) rotate(-1deg);opacity:.18}to{transform:translate3d(.8rem,-.7rem,0) rotate(1deg);opacity:.32}}
@media (max-width:700px){.project-modal__custom--royal::after{inset:.55rem}.project-modal__custom--royal .project-modal__custom-logos img{width:min(100%,19rem);height:11rem}}
@media (prefers-reduced-motion:reduce){.project-modal__custom--royal::before{animation:none;opacity:.22}}
.project-modal__custom--neon-cute{background:radial-gradient(circle at 50% -12%,rgb(64 231 255 / .24),transparent 30rem),radial-gradient(circle at 8% 76%,rgb(45 105 255 / .22),transparent 24rem),radial-gradient(circle at 94% 88%,rgb(207 100 255 / .15),transparent 22rem),linear-gradient(145deg,#050b1d 0%,#071d3f 48%,#080b1a 100%)}
.project-modal__custom--neon-cute::before{inset:-10%;opacity:.42;background-image:radial-gradient(circle at 14% 18%,rgb(105 241 255 / .9) 0 1.4px,transparent 2.2px),radial-gradient(circle at 74% 12%,rgb(234 143 255 / .86) 0 1.2px,transparent 2px),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 180' fill='none'%3E%3Cpath d='M30 116c18-31 44-47 78-47 25 0 45 9 60 27 13 16 28 24 44 24' stroke='%236BEAFF' stroke-width='2' stroke-opacity='.34'/%3E%3Cpath d='M59 126c18 13 39 19 63 19 34 0 55-10 72-30' stroke='%23E08CFF' stroke-width='2' stroke-opacity='.28'/%3E%3Ccircle cx='30' cy='116' r='4' fill='%236BEAFF' fill-opacity='.6'/%3E%3Ccircle cx='212' cy='120' r='4' fill='%23E08CFF' fill-opacity='.6'/%3E%3C/svg%3E");background-size:17rem 17rem,23rem 23rem,15rem 11rem;background-position:4% 12%,86% 14%,0 0;background-repeat:repeat;animation:project-modal-neon-drift 18s ease-in-out infinite alternate}
.project-modal__custom--neon-cute::after{content:"";position:absolute;inset:1rem;z-index:0;pointer-events:none;border:1px solid rgb(91 232 255 / .24);border-radius:1rem;box-shadow:inset 0 0 2rem rgb(32 165 255 / .06),0 0 1.5rem rgb(51 196 255 / .08)}
.project-modal__custom--neon-cute .project-modal__custom-story{padding:clamp(1rem,1.5vw,1.4rem);border:1px solid rgb(101 231 255 / .28);border-radius:1rem;background:linear-gradient(145deg,rgb(7 26 58 / .86),rgb(5 10 25 / .78));box-shadow:0 1rem 2.5rem rgb(0 0 0 / .32),0 0 1.4rem rgb(61 194 255 / .1);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.project-modal__custom--neon-cute .project-modal__custom-story p{color:rgb(235 250 255 / .92);white-space:pre-line}
.project-modal__custom--neon-cute .project-modal__custom-story h3,.project-modal__custom--neon-cute .project-modal__custom-references h3{display:inline-block;margin-bottom:1rem;padding:.42rem .65rem;border:1px solid rgb(101 231 255 / .28);border-radius:.42rem;background:rgb(3 13 32 / .84);box-shadow:0 0 .9rem rgb(36 201 255 / .2);color:#6beaff;text-shadow:0 0 .7rem rgb(5 16 36 / .95)}
.project-modal__custom--neon-cute .project-modal__custom-gallery img{aspect-ratio:16 / 9;object-fit:contain;background:linear-gradient(145deg,rgb(6 27 60 / .9),rgb(7 12 30 / .94));border-color:rgb(101 231 255 / .26);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .3),0 0 .9rem rgb(36 201 255 / .12)}
.project-modal__custom--neon-cute .project-modal__custom-logos img{height:clamp(8rem,13vw,13rem);padding:.5rem;object-fit:contain;border-color:rgb(101 231 255 / .26);border-radius:1rem;background:linear-gradient(145deg,rgb(7 34 72 / .62),rgb(7 12 30 / .55));box-shadow:0 .8rem 2.2rem rgb(0 0 0 / .24),0 0 1rem rgb(50 213 255 / .16);filter:drop-shadow(0 0 .65rem rgb(69 223 255 / .28))}
.project-modal__custom--neon-cute .project-modal__custom-references{padding:clamp(1rem,1.8vw,1.5rem);border:1px solid rgb(101 231 255 / .22);border-radius:1rem;background:rgb(3 13 32 / .48);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.project-modal__custom--neon-cute .project-modal__youtube-item{border-color:rgb(101 231 255 / .25);background:#040a1d}
.project-modal__custom--neon-cute .project-modal__youtube-item:not(.is-active):hover,.project-modal__custom--neon-cute .project-modal__youtube-item:not(.is-active):focus-visible{border-color:#6beaff;box-shadow:0 0 1.3rem rgb(71 224 255 / .22)}
.project-modal__custom--neon-cute .project-modal__youtube-item.is-active{border-color:rgb(107 234 255 / .88);box-shadow:0 0 0 1px rgb(107 234 255 / .28),0 1rem 3rem rgb(0 0 0 / .34),0 0 1.4rem rgb(71 224 255 / .16)}
@keyframes project-modal-neon-drift{from{transform:translate3d(-.8rem,.4rem,0) scale(1.01);opacity:.28}to{transform:translate3d(.9rem,-.6rem,0) scale(1.04);opacity:.5}}
@media (max-width:700px){.project-modal__custom--neon-cute::after{inset:.55rem}.project-modal__custom--neon-cute .project-modal__custom-logos img{height:8.5rem}}
@media (prefers-reduced-motion:reduce){.project-modal__custom--neon-cute::before{animation:none;opacity:.28}}

/* Scroll-driven stacked surfaces — homepage only. */
html.stack-panels-ready{background:radial-gradient(circle at 72% 8%,rgb(52 87 255 / .14),transparent 34rem),radial-gradient(circle at 10% 82%,rgb(52 87 255 / .08),transparent 30rem),#07070b;background-attachment:fixed}
body.stack-panels-ready{background:transparent}
body.stack-panels-ready main{position:relative;z-index:0}
body.stack-panels-ready main::before{position:fixed;z-index:5;top:var(--stack-backdrop-top,100%);right:0;bottom:0;left:0;content:"";background:radial-gradient(circle at 72% 8%,rgb(52 87 255 / .14),transparent 34rem),radial-gradient(circle at 10% 82%,rgb(52 87 255 / .08),transparent 30rem),#07070b;opacity:var(--stack-backdrop-opacity,0);pointer-events:none;will-change:opacity,top}
.stack-panel{--stack-y:0px;--stack-scale:1;position:relative;z-index:var(--stack-layer,1);margin-inline:clamp(.55rem,1.3vw,1.5rem);border-radius:clamp(1.25rem,2vw,2rem);overflow:hidden;box-shadow:0 0 0 1px rgb(242 240 234 / .045),0 1.4rem 3.8rem rgb(0 0 0 / .2);transform:translate3d(0,var(--stack-y),0) scale(var(--stack-scale));transform-origin:center top;will-change:transform}
.stack-panel--overlap{margin-top:-12svh}
.stack-panel--pinned{position:sticky;top:0}
main>.video-project{z-index:4}
body.stack-panels-ready .work-projects.stack-panel{z-index:6}
body.stack-panels-ready .contact-section.stack-panel{z-index:7}
@media (max-width:700px){.stack-panel{margin-inline:.38rem;border-radius:1.25rem;box-shadow:0 0 0 1px rgb(242 240 234 / .035),0 .8rem 2rem rgb(0 0 0 / .16)}.stack-panel--overlap{margin-top:-7svh}.stack-panel--pinned{position:relative;top:auto}}
@media (prefers-reduced-motion:reduce){html.stack-panels-ready{background:var(--black)}body.stack-panels-ready{background:var(--black)}.stack-panel{margin-inline:0;border-radius:0;box-shadow:none;transform:none;will-change:auto}.stack-panel--overlap{margin-top:0}.stack-panel--pinned{position:relative;top:auto}}

/* Full-bleed hero and always-visible navigation bar. */
.site-header{background:linear-gradient(180deg,rgb(7 7 11 / .78),rgb(7 7 11 / .42));backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);border-bottom:1px solid rgb(242 240 234 / .08)}
.hero.stack-panel{margin-inline:0;border-radius:0;box-shadow:none}
@media (min-width:901px){.hero.stack-panel{min-height:100svh;height:100svh}}
@media (max-width:900px){.site-header{grid-template-columns:auto minmax(0,1fr) auto;gap:.45rem;padding:.72rem clamp(.55rem,2.5vw,1rem);background:rgb(7 7 11 / .62);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%)}.primary-nav{display:flex;min-width:0;gap:clamp(.32rem,1.8vw,.72rem);justify-content:flex-end;overflow:hidden}.primary-nav a,.contact-link{font-size:clamp(.35rem,1.95vw,.56rem);letter-spacing:.035em;white-space:nowrap}.contact-link{display:block;justify-self:end}.menu-toggle{display:none}.hero.stack-panel{margin-inline:0;border-radius:0}}
@media (max-width:360px){.contact-link{display:none}.primary-nav{gap:.3rem}.primary-nav a{font-size:.35rem;letter-spacing:.02em}}

/* Mobile navigation: keep the four categories centered in the viewport and Contact anchored right. */
@media (max-width:900px){
  .site-header{grid-template-columns:1fr auto}
  .primary-nav{position:absolute;top:50%;left:50%;display:flex;width:max-content;max-width:calc(100vw - 7.25rem);transform:translate(-50%,-50%);justify-content:center;gap:clamp(.28rem,1.35vw,.62rem);overflow:visible}
  .primary-nav a{font-size:clamp(.35rem,1.95vw,.56rem);letter-spacing:.035em;white-space:nowrap}
  .contact-link{display:block;position:relative;justify-self:end;z-index:1;font-size:clamp(.35rem,1.95vw,.56rem);letter-spacing:.035em;white-space:nowrap}
}
@media (max-width:360px){
  .primary-nav{max-width:calc(100vw - 6.6rem);gap:.22rem}
  .primary-nav a,.contact-link{font-size:.34rem;letter-spacing:.015em}
}

/* Phone: readable two-row navigation and a visible footer wordmark. */
@media (max-width:700px){
  .site-header{grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:.5rem;row-gap:.45rem;padding:.55rem var(--gutter) .5rem}
  .brand-mark{grid-column:1;grid-row:1}
  .contact-link{display:block;position:static;grid-column:2;grid-row:1;align-self:center;font-size:.65rem;letter-spacing:.055em}
  .primary-nav{position:static;grid-column:1 / -1;grid-row:2;display:flex;width:100%;max-width:none;min-width:0;transform:none;justify-content:center;gap:0;overflow:visible}
  .primary-nav a{padding:.2rem clamp(.27rem,1.3vw,.5rem);font-size:clamp(.57rem,2.55vw,.72rem);letter-spacing:.015em;line-height:1.2}
  .primary-nav a + a{border-left:1px solid rgb(242 240 234 / .24)}
  .site-footer__brand-mark{height:clamp(6.5rem,26vw,10rem);background:transparent url('assets/logos/footer-wordmark.svg') center / contain no-repeat;-webkit-mask-image:none;mask-image:none}
}
@media (max-width:700px) and (prefers-reduced-motion:reduce){.work-projects__viewport{overflow-x:auto;scrollbar-width:none}.work-projects__viewport::-webkit-scrollbar{display:none}.work-projects__track{animation:none;transform:none}.work-projects__set[aria-hidden="true"]{display:none}}
@media (max-width:360px){
  .contact-link{display:block;font-size:.6rem;letter-spacing:.03em}
  .primary-nav a{padding-inline:.22rem;font-size:.58rem;letter-spacing:0}
}

/* ROZE music detail: third image, fixed-view 3D product mockup, and refined placement. */
.project-modal__custom--music .project-modal__custom-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.45fr) minmax(12rem,.78fr)}
.project-modal__custom--music .project-modal__custom-story{grid-column:1;grid-row:1 / span 2}
.project-modal__custom--music .project-modal__custom-gallery{grid-column:2;grid-row:1}
.project-modal__custom--music .project-modal__custom-model{grid-column:2;grid-row:2;min-width:0}
.project-modal__custom--music .project-modal__custom-logos{grid-column:3;grid-row:1 / span 2;align-self:center}
.project-modal__custom-model{min-width:0}
.project-modal__model-stage{display:grid;place-items:center;min-height:clamp(12rem,18vw,18rem);overflow:hidden;border:1px solid rgb(242 240 234 / .14);border-radius:clamp(.8rem,1.2vw,1.1rem);background:radial-gradient(circle at 50% 30%,rgb(52 87 255 / .16),transparent 52%),linear-gradient(145deg,rgb(242 240 234 / .08),rgb(9 9 9 / .45));box-shadow:inset 0 0 2.4rem rgb(52 87 255 / .08),0 1rem 2.5rem rgb(0 0 0 / .22);animation:project-modal-model-float 4.8s ease-in-out infinite alternate}
.project-modal__model-stage model-viewer{display:block;width:100%;height:clamp(12rem,18vw,18rem);background:transparent;--poster-color:transparent}
@keyframes project-modal-model-float{from{transform:translate3d(0,.45rem,0)}to{transform:translate3d(0,-.65rem,0)}}
@media (max-width:900px){.project-modal__custom--music .project-modal__custom-grid{grid-template-columns:minmax(0,1fr) minmax(12rem,.7fr)}.project-modal__custom--music .project-modal__custom-story{grid-column:1 / -1;grid-row:auto}.project-modal__custom--music .project-modal__custom-gallery{grid-column:1;grid-row:2}.project-modal__custom--music .project-modal__custom-model{grid-column:1;grid-row:3}.project-modal__custom--music .project-modal__custom-logos{grid-column:2;grid-row:2 / span 2}}
@media (max-width:700px){.project-modal__custom--music .project-modal__custom-grid{grid-template-columns:1fr}.project-modal__custom--music .project-modal__custom-story,.project-modal__custom--music .project-modal__custom-gallery,.project-modal__custom--music .project-modal__custom-model,.project-modal__custom--music .project-modal__custom-logos{grid-column:auto;grid-row:auto}.project-modal__model-stage,.project-modal__model-stage model-viewer{height:clamp(13rem,58vw,18rem);min-height:clamp(13rem,58vw,18rem)}}
@media (prefers-reduced-motion:reduce){.project-modal__model-stage{animation:none}}

/* ROZE product direction: static reference-like angle with a dominant red-and-white music scene. */
.project-modal__custom--roze{background:radial-gradient(circle at 13% 10%,rgb(255 255 255 / .25),transparent 19rem),radial-gradient(circle at 88% 82%,rgb(255 39 57 / .32),transparent 24rem),linear-gradient(132deg,#160306 0%,#65050d 43%,#b70d1e 75%,#f2f0ea 132%)}
.project-modal__custom--roze::before{opacity:.34;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96' fill='none'%3E%3Cpath d='M56 10v40.5a8.5 8.5 0 1 1-4-7.2V20l28-6v39.5a8.5 8.5 0 1 1-4-7.2V10H56Z' fill='%23FFFFFF' fill-opacity='.9'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96' fill='none'%3E%3Cpath d='M56 10v40.5a8.5 8.5 0 1 1-4-7.2V20l28-6v39.5a8.5 8.5 0 1 1-4-7.2V10H56Z' fill='%23FF3D51' fill-opacity='.9'/%3E%3C/svg%3E");background-size:8rem 8rem,12rem 12rem;background-position:0 0,2.5rem 1.8rem}
.project-modal__custom--roze .project-modal__custom-story{border-color:rgb(255 255 255 / .22);background:linear-gradient(145deg,rgb(19 3 6 / .9),rgb(112 4 14 / .7));box-shadow:0 1rem 2.5rem rgb(37 0 5 / .34),inset 0 0 2rem rgb(255 255 255 / .04)}
.project-modal__custom--roze .project-modal__custom-story h3,.project-modal__custom--roze .project-modal__custom-references h3{color:#fff;box-shadow:0 0 .9rem rgb(255 45 62 / .25)}
.project-modal__custom--roze .project-modal__model-stage{border-color:rgb(255 255 255 / .5);background:radial-gradient(circle at 27% 22%,rgb(255 255 255 / .6),transparent 31%),linear-gradient(135deg,#fffaf7 0%,#fff 31%,#ec1f35 57%,#76040e 100%);box-shadow:inset 0 0 2.4rem rgb(255 255 255 / .2),0 1rem 2.5rem rgb(73 0 9 / .34)}
.project-modal__custom--roze .project-modal__custom-logos img{filter:drop-shadow(0 0 .8rem rgb(255 255 255 / .3)) drop-shadow(0 0 1.2rem rgb(255 26 48 / .16))}
@media (prefers-reduced-motion:reduce){.project-modal__custom--roze::before{animation:none;opacity:.3}}

/* Project-specific color directions. */
.project-modal__custom--see{background:radial-gradient(circle at 14% 12%,rgb(255 208 65 / .42),transparent 20rem),radial-gradient(circle at 88% 80%,rgb(242 54 24 / .4),transparent 25rem),linear-gradient(132deg,#541006 0%,#c9320d 46%,#f06b0b 75%,#ffc928 125%)}
.project-modal__custom--see::before{opacity:.34;background-image:radial-gradient(circle at 12% 16%,#ffd34f 0 1.5px,transparent 2px),radial-gradient(circle at 74% 68%,#fff2b6 0 1px,transparent 2px),linear-gradient(125deg,transparent 0 44%,rgb(255 225 116 / .28) 44.2% 44.5%,transparent 44.7% 100%);background-size:15rem 15rem,19rem 19rem,100% 100%;animation:project-modal-particles 18s ease-in-out infinite alternate}
.project-modal__custom--see .project-modal__custom-story{border-color:rgb(255 205 72 / .5);background:linear-gradient(145deg,rgb(49 7 2 / .92),rgb(154 33 6 / .78));box-shadow:0 1rem 2.5rem rgb(54 4 0 / .34)}
.project-modal__custom--see .project-modal__custom-story h3,.project-modal__custom--see .project-modal__custom-references h3{color:#ffd76d;box-shadow:0 0 .9rem rgb(255 154 25 / .25)}
.project-modal__custom--see .project-modal__custom-gallery img{border-color:rgb(255 192 36 / .65);box-shadow:0 1rem 2.5rem rgb(65 7 0 / .3)}
.project-modal__custom--see .project-modal__custom-logos img{width:min(100%,24rem);height:clamp(12rem,19vw,19rem);padding:0;filter:brightness(0) drop-shadow(0 0 .8rem rgb(255 246 205 / .35)) drop-shadow(0 0 1.2rem rgb(240 73 12 / .25))}
@media (max-width:700px){.project-modal__custom--see .project-modal__custom-logos img{width:min(100%,20rem);height:13rem}}

.project-modal__custom--titu{background:radial-gradient(circle at 50% 5%,rgb(255 255 255 / .35),transparent 28rem),radial-gradient(circle at 12% 82%,rgb(173 105 255 / .32),transparent 25rem),linear-gradient(140deg,#160824 0%,#4e207b 54%,#9b6de0 84%,#fff 132%)}
.project-modal__custom--titu::before{opacity:.3;background-image:linear-gradient(90deg,rgb(255 255 255 / .22) 1px,transparent 1px),linear-gradient(rgb(255 255 255 / .18) 1px,transparent 1px),radial-gradient(circle,#fff 0 1.5px,transparent 2px);background-size:5rem 5rem,5rem 5rem,11rem 11rem;animation:project-modal-particles 20s ease-in-out infinite alternate}
.project-modal__custom--titu::after{border-color:rgb(255 255 255 / .3);background-image:none;opacity:0;box-shadow:inset 0 0 2rem rgb(255 255 255 / .06)}
.project-modal__custom--titu .project-modal__custom-story{border-color:rgb(255 255 255 / .32);background:linear-gradient(145deg,rgb(19 7 32 / .92),rgb(80 35 122 / .78));box-shadow:0 1rem 2.5rem rgb(26 5 50 / .34)}
.project-modal__custom--titu .project-modal__custom-story h3,.project-modal__custom--titu .project-modal__custom-references h3{color:#fff;box-shadow:0 0 .9rem rgb(210 179 255 / .28)}
.project-modal__custom--titu .project-modal__custom-gallery img{border-color:rgb(255 255 255 / .7);box-shadow:0 1rem 2.5rem rgb(20 3 43 / .3)}
.project-modal__custom--titu .project-modal__custom-logos img{border-color:rgb(255 255 255 / .45);background:rgb(255 255 255 / .12);filter:drop-shadow(0 0 .8rem rgb(255 255 255 / .36))}

.project-modal__custom--zar{background:radial-gradient(circle at 18% 14%,rgb(255 255 255 / .14),transparent 20rem),radial-gradient(circle at 86% 82%,rgb(255 255 255 / .08),transparent 25rem),linear-gradient(135deg,#000 0%,#111 58%,#050505 100%)}
.project-modal__custom--zar::before{opacity:.24;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.8px),repeating-linear-gradient(135deg,transparent 0 4rem,rgb(255 255 255 / .12) 4.05rem 4.12rem,transparent 4.18rem 8rem);background-size:12rem 12rem,100% 100%;animation:project-modal-particles 22s ease-in-out infinite alternate}
.project-modal__custom--zar .project-modal__custom-story{border-color:rgb(255 255 255 / .28);background:linear-gradient(145deg,rgb(0 0 0 / .94),rgb(24 24 24 / .84));box-shadow:0 1rem 2.5rem rgb(0 0 0 / .46)}
.project-modal__custom--zar .project-modal__custom-story h3,.project-modal__custom--zar .project-modal__custom-references h3{color:#fff;box-shadow:0 0 .9rem rgb(255 255 255 / .15)}
.project-modal__custom--zar .project-modal__custom-gallery img{border-color:rgb(255 255 255 / .38);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .46)}
.project-modal__custom--zar .project-modal__custom-logos img{filter:grayscale(1) brightness(1.7) drop-shadow(0 0 .8rem rgb(255 255 255 / .28))}
.project-modal__custom--zar .project-modal__youtube-item{border-color:rgb(255 255 255 / .3);background:#050505}
.project-modal__custom--zar .project-modal__youtube-item.is-active{border-color:#fff;box-shadow:0 0 0 1px rgb(255 255 255 / .25),0 1rem 3rem rgb(0 0 0 / .44)}

.project-modal__custom--alege-ma{background:radial-gradient(circle at 16% 14%,rgb(255 71 78 / .34),transparent 21rem),radial-gradient(circle at 86% 78%,rgb(255 255 255 / .1),transparent 22rem),linear-gradient(135deg,#080808 0%,#240306 42%,#9e0c1b 76%,#ed2439 125%)}
.project-modal__custom--alege-ma::before{opacity:.3;background-image:linear-gradient(135deg,transparent 0 44%,rgb(255 255 255 / .18) 44.2% 44.8%,transparent 45% 100%),linear-gradient(45deg,transparent 0 50%,rgb(255 33 54 / .32) 50.3% 50.7%,transparent 51% 100%);background-size:100% 100%,11rem 11rem;animation:project-modal-particles 20s ease-in-out infinite alternate}
.project-modal__custom--alege-ma::after{background:radial-gradient(ellipse at 24% 48%,rgb(255 48 63 / .15),transparent 30%),radial-gradient(ellipse at 76% 24%,rgb(0 0 0 / .18),transparent 28%);opacity:.38}
.project-modal__custom--alege-ma .project-modal__custom-story{border-color:rgb(255 52 70 / .5);background:linear-gradient(145deg,rgb(0 0 0 / .94),rgb(62 4 10 / .84));box-shadow:0 1rem 2.5rem rgb(0 0 0 / .4)}
.project-modal__custom--alege-ma .project-modal__custom-story h3,.project-modal__custom--alege-ma .project-modal__custom-references h3{color:#ff5262;box-shadow:0 0 .9rem rgb(234 21 43 / .22)}
.project-modal__custom--alege-ma .project-modal__custom-gallery img{border-color:rgb(255 52 70 / .55);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .42)}

.project-modal__custom--familia{background:radial-gradient(circle at 18% 12%,rgb(255 255 255 / .3),transparent 20rem),radial-gradient(circle at 86% 78%,rgb(255 94 174 / .42),transparent 24rem),linear-gradient(140deg,#5b123e 0%,#c9327e 48%,#ff8fbe 82%,#ffd2e5 132%)}
.project-modal__custom--familia::before{opacity:.3;background-image:radial-gradient(circle,#fff 0 1.3px,transparent 2px),radial-gradient(circle,#ffcae2 0 1.4px,transparent 2px);background-size:10rem 10rem,16rem 16rem;animation:project-modal-particles 18s ease-in-out infinite alternate}
.project-modal__custom--familia .project-modal__custom-story{border-color:rgb(255 213 233 / .55);background:linear-gradient(145deg,rgb(73 8 48 / .88),rgb(180 39 111 / .78));box-shadow:0 1rem 2.5rem rgb(78 4 45 / .28)}
.project-modal__custom--familia .project-modal__custom-story h3,.project-modal__custom--familia .project-modal__custom-references h3{color:#fff;box-shadow:0 0 .9rem rgb(255 179 218 / .25)}
.project-modal__custom--familia .project-modal__custom-gallery img{border-color:rgb(255 215 235 / .68);box-shadow:0 1rem 2.5rem rgb(81 6 51 / .28)}
.project-modal__custom--familia .project-modal__custom-logos img{filter:drop-shadow(0 0 .8rem rgb(255 255 255 / .4)) drop-shadow(0 0 1.2rem rgb(255 98 181 / .25))}

.project-modal__custom--gdz{background:radial-gradient(circle at 16% 14%,rgb(255 255 255 / .95),transparent 22rem),radial-gradient(circle at 88% 82%,rgb(0 0 0 / .18),transparent 25rem),linear-gradient(135deg,#fff 0%,#f0f0ec 56%,#161616 132%);color:#101010}
.project-modal__custom--gdz::before{opacity:.22;background-image:linear-gradient(135deg,transparent 0 48%,#111 48.2% 48.7%,transparent 48.9% 100%),linear-gradient(45deg,transparent 0 58%,rgb(0 0 0 / .45) 58.2% 58.6%,transparent 58.8% 100%);background-size:100% 100%,12rem 12rem;animation:project-modal-particles 20s ease-in-out infinite alternate}
.project-modal__custom--gdz::after{border-color:rgb(0 0 0 / .25);background-image:none;opacity:0;box-shadow:inset 0 0 2rem rgb(0 0 0 / .06)}
.project-modal__custom--gdz .project-modal__custom-story{border-color:rgb(0 0 0 / .38);background:linear-gradient(145deg,rgb(8 8 8 / .96),rgb(35 35 35 / .88));box-shadow:0 1rem 2.5rem rgb(0 0 0 / .25)}
.project-modal__custom--gdz .project-modal__custom-story h3,.project-modal__custom--gdz .project-modal__custom-references h3{color:#fff;box-shadow:0 0 .9rem rgb(0 0 0 / .22)}
.project-modal__custom--gdz .project-modal__custom-gallery img{border-color:rgb(0 0 0 / .56);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .2)}
.project-modal__custom--gdz .project-modal__custom-logos{padding:clamp(.8rem,1.5vw,1.4rem);border:1px solid rgb(0 0 0 / .28);border-radius:clamp(.8rem,1.1vw,1rem);background:#fff}
.project-modal__custom--gdz .project-modal__custom-logos img{border:0;background:transparent;filter:brightness(0) contrast(1.2) drop-shadow(0 0 .55rem rgb(0 0 0 / .2))}
.project-modal__custom--gdz .project-modal__custom-references{border-color:rgb(0 0 0 / .2);background:rgb(255 255 255 / .58);color:#101010}

/* Decorative atmosphere stays behind the existing About content and scroll motion. */
.about-page .about-scroll-story{background:#090b13}
.about-page .about-scroll-story::before{display:none}
.about-atmosphere{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,#0a0c16 10%,transparent 68%),linear-gradient(130deg,#090909,#10182f 58%,#090909)}
.about-atmosphere::before{content:"";position:absolute;inset:-35%;background:linear-gradient(115deg,transparent 24%,rgb(52 87 255 / .08) 30%,rgb(52 87 255 / .32) 35%,rgb(136 154 255 / .19) 36%,transparent 43%,transparent 66%,rgb(52 87 255 / .24) 72%,transparent 79%);transform-origin:center;animation:aboutArchitecturalLight 16s ease-in-out infinite alternate;will-change:transform}
.about-atmosphere::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgb(9 11 19 / .82) 0 16%,rgb(9 11 19 / .28) 42%,transparent 68%),linear-gradient(180deg,rgb(9 9 9 / .1),transparent 25% 80%,rgb(9 9 9 / .18))}
.about-atmosphere__light{position:absolute;inset:-15%;will-change:transform;animation:aboutLightDrift 14s ease-in-out infinite alternate}
.about-atmosphere__light--blue{background:radial-gradient(ellipse at 85% 22%,rgb(52 87 255 / .68),transparent 48%),radial-gradient(ellipse at 12% 85%,rgb(52 87 255 / .5),transparent 44%)}
.about-atmosphere__light--ivory{background:radial-gradient(ellipse at 10% 12%,rgb(242 240 234 / .12),transparent 40%);animation-duration:19s;animation-direction:alternate-reverse}
.about-atmosphere__grid{position:absolute;inset:0;background-image:linear-gradient(rgb(242 240 234 / .026) 1px,transparent 1px),linear-gradient(90deg,rgb(242 240 234 / .026) 1px,transparent 1px);background-size:100px 100px;mask-image:radial-gradient(ellipse at 85% 10%,#000,transparent 70%)}
.about-atmosphere__contours{position:absolute;inset:-10%;width:120%;height:120%;opacity:.95;will-change:transform;animation:aboutContourDrift 20s ease-in-out infinite alternate}
.about-atmosphere__contours g{stroke-width:1.8}
@keyframes aboutLightDrift{from{transform:translate3d(-7%,-5%,0) scale(1)}to{transform:translate3d(7%,6%,0) scale(1.12)}}
@keyframes aboutContourDrift{from{transform:translate3d(-4%,2%,0) rotate(-5deg)}to{transform:translate3d(4%,-3%,0) rotate(5deg)}}
@keyframes aboutArchitecturalLight{from{transform:translate3d(-7%,0,0) rotate(-4deg)}to{transform:translate3d(7%,2%,0) rotate(4deg)}}
@media(max-width:700px){.about-atmosphere__contours{opacity:.85}.about-atmosphere__grid{background-size:64px 64px}}
@media(prefers-reduced-motion:reduce){.about-atmosphere::before,.about-atmosphere__light,.about-atmosphere__contours{animation:none;will-change:auto}}

/* Keep all five portraits outside the central reading area, at every breakpoint. */
.about-page .about-scroll-story{min-height:620svh}
.about-page .about-scroll-story__viewport{min-height:0}
.about-page .about-scroll-story__copy{width:min(80vw,42rem);padding:0;text-shadow:none}
.about-page .about-scroll-story__name{font-size:clamp(3rem,6.5vw,6.5rem);letter-spacing:-.065em;line-height:1}
.about-page .about-scroll-story__description{max-width:32rem;margin-top:1.2rem;font-size:clamp(.95rem,1.2vw,1.15rem);font-weight:550;line-height:1.6;color:var(--ivory)}
.about-page .about-scroll-story__media-card{display:block;width:min(17vw,22svh,15rem);max-height:25svh;border-radius:12px}
.about-page .about-scroll-story__media-card img{filter:none}
@media(max-width:700px){
  .about-page .about-scroll-story__copy{width:calc(100% - 3rem);max-width:25rem}
  .about-page .about-scroll-story__name{font-size:clamp(2.3rem,11vw,3.6rem)}
  .about-page .about-scroll-story__description{margin-top:1rem;font-size:.9rem;line-height:1.55}
  .about-page .about-scroll-story__media-card{display:block;width:min(26vw,16svh);max-height:20svh;border-radius:9px}
  .about-page .about-scroll-story__media-card:nth-child(-n+2){width:min(31vw,18svh)}
}
.about-together__copy{width:min(86vw,64rem);text-align:center;color:var(--ivory)}
.about-together__title{display:flex;justify-content:center;margin:0 0 2rem;font-family:"Archivo Black",sans-serif;font-size:clamp(2.5rem,8.5vw,8rem);line-height:1.1;letter-spacing:-.055em}
.about-together__description{max-width:48rem;margin:auto;font-size:clamp(.95rem,1.5vw,1.35rem);line-height:1.65;text-wrap:pretty}
.about-together__description span{display:block}
.about-together__description span+span{margin-top:1em}
[data-together-part]{will-change:transform,opacity}
@media(max-width:700px){.about-together__copy{width:calc(100% - 3rem)}.about-together__title{font-size:clamp(2rem,10vw,4rem);margin-bottom:1.5rem}.about-together__description{font-size:.95rem;line-height:1.6}}
@media(max-height:500px) and (orientation:landscape){
  .about-together__title{font-size:2.5rem;margin-bottom:1rem}
  .about-together__description{font-size:.85rem;line-height:1.4}
  .about-page .about-scroll-story__name{font-size:2rem}
  .about-page .about-scroll-story__description{font-size:.8rem;line-height:1.35;margin-top:.6rem}
}
@media(prefers-reduced-motion:reduce){
  .about-page .about-scroll-story.is-static{min-height:0}
  .about-page .about-scroll-story.is-static .about-scroll-story__media{height:auto;grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:2rem}
  .about-page .about-scroll-story.is-static .about-scroll-story__media-card{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/5}
}

/* Suspend invisible motion without changing visible artwork or animation. */
.intro-seen .brand-intro{display:none}
.intro-seen body.intro-lock{overflow-y:auto}
.motion-offscreen,.motion-offscreen::before,.motion-offscreen::after,.motion-offscreen *,.motion-offscreen *::before,.motion-offscreen *::after{animation-play-state:paused!important}
