:root{--bg:#032029;--white:#fff;--purple:#d991ff;--pink:#ff94ab;--side:270px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 80% 15%,#d991ff18,transparent 40%),radial-gradient(ellipse at 35% 75%,#ff94ab12,transparent 45%);animation:drift 16s ease-in-out infinite alternate}@keyframes drift{to{transform:translate(2%,-3%) scale(1.09)}}.sidebar{width:var(--side);position:fixed;inset:0 auto 0 0;z-index:10;padding:42px 28px 28px;background:#05252deb;border-right:1px solid #ffffff20;display:flex;flex-direction:column;transition:transform .5s cubic-bezier(.2,.8,.2,1);backdrop-filter:blur(20px)}.brand{display:block;position:relative;width:160px;height:76px;margin-bottom:76px}.brand img{position:absolute;width:100%;height:100%;object-fit:contain;object-position:left center;transition:opacity .35s,transform .5s}.logo-hover{opacity:0}.brand:hover .logo-default{opacity:0;transform:scale(.94) rotate(-3deg)}.brand:hover .logo-hover{opacity:1;transform:scale(1.05)}nav{display:flex;flex-direction:column;gap:6px}nav a{font-size:12px;letter-spacing:.14em;padding:15px 0;display:flex;justify-content:space-between;transition:color .25s,transform .25s}nav a:hover,nav a[aria-current]{color:var(--purple);transform:translateX(4px)}nav a span{opacity:.5}.nav-rule{height:1px;background:#ffffff30;margin:20px 0}.sidebar-foot{margin-top:auto;font-size:9px;line-height:2;letter-spacing:.16em;opacity:.45}.menu-toggle{position:fixed;z-index:20;top:24px;left:calc(var(--side) - 1px);width:44px;height:44px;background:var(--purple);border:0;border-radius:0 10px 10px 0;display:grid;place-content:center;gap:6px;transition:left .5s,background .2s}.menu-toggle:hover{background:var(--pink)}.menu-toggle span{display:block;width:18px;height:2px;background:var(--bg)}body.nav-closed .sidebar{transform:translateX(-100%)}body.nav-closed .menu-toggle{left:0}.main{margin-left:var(--side);transition:margin-left .5s cubic-bezier(.2,.8,.2,1)}body.nav-closed .main{margin-left:0}.hero{min-height:88vh;display:flex;flex-direction:column;justify-content:center;padding:100px clamp(28px,8vw,130px)}.eyebrow,.project-top,figcaption,footer>span{font-size:11px;letter-spacing:.2em;font-weight:700}.eyebrow{color:var(--purple);display:flex;align-items:center;gap:12px}.dot{width:8px;height:8px;background:var(--pink);border-radius:50%;box-shadow:0 0 18px var(--pink)}h1,h2,p{margin-top:0}h1{font-size:clamp(62px,9vw,148px);letter-spacing:-.075em;line-height:.95;font-weight:600;margin:35px 0 30px}h1 em,h2 em{color:var(--purple);font-style:normal}.period{color:var(--pink)}.hero p{max-width:580px;font-size:clamp(18px,2vw,23px);line-height:1.6;color:#d0dadd}.explore{font-size:11px;letter-spacing:.18em;font-weight:700;margin-top:36px;display:inline-flex;align-items:center;gap:28px;transition:gap .3s,color .3s;width:max-content}.explore:hover{gap:42px;color:var(--pink)}.work{padding:0 clamp(24px,6vw,100px)}.project{margin:0 0 140px}.project-top{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px;color:#d9e0e0}.project-top span:last-child{color:var(--pink)}.video{width:100%;aspect-ratio:16/9;overflow:hidden;background:#0c313b;border:1px solid #ffffff16;border-radius:4px}.video iframe{width:100%;height:100%;border:0}.project-copy{padding:35px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-copy h2,.split h2{font-size:clamp(36px,4.5vw,68px);letter-spacing:-.055em;line-height:1.05}.project-copy p,.split p{max-width:560px;font-size:16px;line-height:1.85;color:#c8d4d6}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;margin:0 0 145px;padding:45px 0}.split h2{margin:26px 0}.split figure{margin:0}.split img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;border-radius:4px}.split figcaption{color:var(--pink);margin-top:15px;font-size:9px}.about-hero{min-height:75vh}.about-content{padding:40px clamp(28px,8vw,130px)}footer{padding:55px clamp(24px,6vw,100px) 70px;border-top:1px solid #ffffff25;display:flex;flex-wrap:wrap;gap:25px;align-items:center;justify-content:space-between}footer>a{font-size:clamp(20px,3vw,38px);font-weight:700;letter-spacing:-.04em;color:var(--purple)}footer>a:hover{color:var(--pink)}.top-button{border:1px solid #ffffff55;background:transparent;color:white;padding:15px 20px;font-size:10px;letter-spacing:.15em;transition:background .25s,color .25s}.top-button:hover{background:var(--pink);color:var(--bg)}.reveal{opacity:0;transform:translateY(32px);transition:opacity .85s ease,transform .85s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:900px){:root{--side:280px}.sidebar{transform:translateX(-100%);box-shadow:15px 0 50px #0005}.menu-toggle{left:0;top:18px;border-radius:0 10px 10px 0}.main,body.nav-closed .main{margin-left:0}body:not(.nav-closed) .sidebar{transform:translateX(0)}body:not(.nav-closed) .menu-toggle{left:var(--side)}.hero{padding:110px 7vw 75px;min-height:75vh}.project-copy{grid-template-columns:1fr;gap:0}.split{grid-template-columns:1fr;gap:45px}}@media(max-width:560px){.hero{min-height:80svh}.hero h1{font-size:clamp(58px,14vw,90px)}.work{padding:0 18px}.project{margin-bottom:85px}.project-top{font-size:9px;letter-spacing:.1em}.project-copy h2{font-size:40px}.split{margin-bottom:80px}.sidebar{width:min(280px,85vw)}body:not(.nav-closed) .menu-toggle{left:min(280px,85vw)}footer{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* Light editorial palette */
:root{--bg:#ffffff;--white:#032029;--purple:#d991ff;--pink:#ff94ab}
body{background:#fff;color:#032029}
.ambient{background:radial-gradient(ellipse at 80% 15%,#d991ff17,transparent 42%),radial-gradient(ellipse at 35% 75%,#ff94ab14,transparent 48%)}
.sidebar{background:#ffffffed;border-right:1px solid #03202918;box-shadow:10px 0 40px #03202908}
.nav-rule{background:#03202925}
nav a:hover,nav a[aria-current]{color:#8850a7}
.sidebar-foot{opacity:.65}
.menu-toggle span{background:#032029}
.eyebrow{color:#8850a7}
h1 em,h2 em{color:#995ab9}
.hero p,.project-copy p,.split p{color:#405a60}
.project-top{color:#405a60}
.project-top span:last-child,.split figcaption{color:#b35275}
.video{border:1px solid #03202916}
footer{border-top:1px solid #03202925}
footer>a{color:#8850a7}
.top-button{border-color:#03202955;color:#032029}
.top-button:hover{color:#032029}
@media(max-width:900px){.sidebar{box-shadow:15px 0 50px #03202924}}

/* About page — editorial layout */
.about-intro{padding:clamp(120px,16vw,210px) clamp(26px,7vw,110px) 55px;min-height:82svh;display:flex;flex-direction:column;justify-content:center}
.about-intro h1{font-size:clamp(68px,10vw,160px);margin:30px 0 35px}.about-lead{max-width:700px;font-size:clamp(19px,2.3vw,29px);line-height:1.45;color:#405a60}.intro-line{display:flex;justify-content:space-between;border-top:1px solid #03202930;padding-top:18px;margin-top:65px;font-size:10px;letter-spacing:.18em;font-weight:700;color:#52666b}
.about-story{padding:65px clamp(26px,7vw,110px) 135px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,6vw,100px);align-items:center}.story-image{position:relative}.story-image img{width:100%;aspect-ratio:4/5;display:block;object-fit:cover;background:#f2e9f5}.image-note{position:absolute;bottom:20px;left:20px;background:white;padding:12px;font-size:10px;letter-spacing:.15em}.story-copy h2,.team-heading h2,.about-cta h2{font-size:clamp(43px,5vw,84px);letter-spacing:-.065em;line-height:1.05;margin:25px 0}.story-copy p{font-size:16px;line-height:1.85;color:#405a60;max-width:550px}.story-copy .edit-note{font-size:12px;color:#7e8790;font-style:italic}.team-section{padding:110px clamp(26px,7vw,110px) 120px;background:#f8f6f8}.team-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:50px}.team-heading h2{margin-bottom:0}.team-heading>p{max-width:290px;line-height:1.7;color:#405a60}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.team-photo{position:relative;overflow:hidden;background:#e7d9e7}.team-photo img{width:100%;aspect-ratio:3/4;display:block;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .5s;filter:grayscale(100%)}.team-card:hover .team-photo img{transform:scale(1.055);filter:grayscale(0)}.team-number{position:absolute;top:12px;left:12px;background:#fff;padding:8px 10px;font-size:10px;letter-spacing:.12em}.team-info{padding-top:18px}.team-info h3{font-size:clamp(17px,1.8vw,23px);letter-spacing:-.04em;margin:0 0 7px}.team-info p{font-size:12px;line-height:1.5;color:#61757a;margin:0}.team-note{font-size:11px;color:#748287;margin:32px 0 0}.about-cta{padding:130px clamp(26px,7vw,110px);background:radial-gradient(ellipse at 80% 30%,#d991ff25,transparent 55%),#fff}.about-cta h2{font-size:clamp(55px,8vw,130px)}.about-cta>a{display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid #032029;padding:16px 0;font-size:13px;letter-spacing:.12em;font-weight:700;transition:gap .3s}.about-cta>a:hover{gap:55px;color:#995ab9}
@media(max-width:1050px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 18px}}@media(max-width:700px){.about-intro{min-height:75svh}.about-story{grid-template-columns:1fr;padding-bottom:90px}.story-image{max-width:560px}.team-heading{display:block}.team-heading>p{margin-top:25px}.team-section{padding-top:80px}.about-cta{padding-top:90px;padding-bottom:90px}}@media(max-width:430px){.team-grid{gap:24px 12px}.team-info h3{font-size:16px}.team-info p{font-size:11px}.intro-line{font-size:8px}.about-intro h1{font-size:clamp(56px,15vw,80px)}}

/* Video + text feature directly below the image + text section */
.split-video{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:6%;align-items:center;}
.split-video-copy{min-width:0;}
.split-video-media{min-width:0;}
.split-video-media .video{width:100%;max-width:400px;aspect-ratio:9/16;border-radius:5px;box-shadow:0 18px 55px #03202912;}
.split-video-caption{font-size:9px;font-weight:700;letter-spacing:.2em;color:#b35275;margin-top:15px;}
@media(max-width:900px){.split-video{grid-template-columns:1fr;gap:28px;}.split-video-media{width:100%;}.split-video-media .video{margin-inline:auto;}}

/* Responsive animated hero: text and looping MP4 side by side */
.hero-with-motion{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);align-items:center;gap:clamp(28px,5vw,88px);min-height:85svh;}
.hero-with-motion .hero-copy{min-width:0;}
.hero-with-motion h1{font-size:clamp(54px,7vw,112px);overflow-wrap:normal;}
.hero-visual{position:relative;min-width:0;}
.hero-motion{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;background:#f8f5f9;box-shadow:0 20px 75px #03202912;}
.hero-visual-caption{display:block;margin-top:14px;font-size:10px;letter-spacing:.18em;color:#8a668f;}
@media(max-width:900px){.hero-with-motion{grid-template-columns:1fr;gap:38px;padding-top:110px;}.hero-with-motion h1{font-size:clamp(58px,10vw,100px)}.hero-visual{max-width:650px;width:100%;}}
@media(max-width:560px){.hero-with-motion h1{font-size:clamp(52px,13vw,76px)}.hero-with-motion{gap:24px;}}
@media(prefers-reduced-motion:reduce){.hero-motion{display:none}.hero-visual{aspect-ratio:1/1;background:#f8f5f9 url('assets/hero-poster.jpg') center/cover no-repeat;border-radius:10px;}}
