:root{
  --bg:#171817;
  --bg2:#20211f;
  --paper:#f1f0eb;
  --muted:#9b9b93;
  --line:rgba(241,240,235,.15);
  --lime:#d6ff77;
  --display:"Bricolage Grotesque",sans-serif;
  --body:"Inter",sans-serif;
  --mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --nav-h:82px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bg)}
html.lenis,html.lenis body{height:auto}
body{background:var(--bg);color:var(--paper);font-family:var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
.wrap{width:min(100% - 40px,1440px);margin:auto}

/* NAVIGATION */
.nav{
  position:fixed;z-index:100;top:0;left:0;right:0;height:var(--nav-h);
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:0 max(20px,4vw);color:#fff;isolation:isolate;
  transition:height .45s cubic-bezier(.22,1,.36,1),color .25s ease;
}
.nav::before{
  content:"";position:absolute;z-index:-1;inset:0;
  background:rgba(18,19,18,.76);border-bottom:1px solid rgba(255,255,255,.09);
  backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);
  opacity:0;transform:translateY(-18%);transition:opacity .45s ease,transform .55s cubic-bezier(.22,1,.36,1);
}
.nav.is-scrolled{height:72px}
.nav.is-scrolled::before{opacity:1;transform:translateY(0)}
/* Light-surface nav state — keeps navigation legible before the dark scrolled state appears */
.nav-light .nav:not(.is-scrolled){color:#151614}
.nav-light .nav:not(.is-scrolled) .brand-context{color:rgba(21,22,20,.52)}
.nav-light.menu-open .nav:not(.is-scrolled){color:#fff}
.nav-light.menu-open .nav:not(.is-scrolled) .brand-context{color:rgba(255,255,255,.52)}
.brand{justify-self:start;display:flex;flex-direction:column;gap:2px;line-height:1}
.brand-mark{font:800 22px var(--display);letter-spacing:-.045em}
.brand-mark i{font-style:normal;color:var(--lime)}
.brand-context{font:500 8px var(--mono);letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.52);transition:color .25s ease}
.navlinks{display:flex;align-items:center;gap:30px}
.navlinks a,.navright{
  position:relative;font:500 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;
  transition:opacity .25s ease,transform .3s cubic-bezier(.22,1,.36,1);
}
.navlinks a::after{
  content:"";position:absolute;left:0;right:0;bottom:-9px;height:1px;background:currentColor;
  transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.22,1,.36,1);
}
.navlinks a:hover::after,.navlinks a.is-active::after{transform:scaleX(1);transform-origin:left}
.navlinks a:hover,.navright:hover{opacity:.72}
.navright{justify-self:end;display:inline-flex;align-items:center;gap:9px}
.navright::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(214,255,119,.10)}
.menu{display:none;justify-self:end;border:0;background:transparent;cursor:pointer;align-items:center;gap:9px;text-transform:uppercase;font:500 10px var(--mono);letter-spacing:.14em}
.menu-lines{width:20px;height:12px;position:relative;display:block}
.menu-lines::before,.menu-lines::after{content:"";position:absolute;left:0;width:20px;height:1px;background:currentColor;transition:transform .4s cubic-bezier(.22,1,.36,1),top .4s cubic-bezier(.22,1,.36,1)}
.menu-lines::before{top:2px}.menu-lines::after{top:9px}
.menu[aria-expanded="true"] .menu-lines::before{top:5px;transform:rotate(45deg)}
.menu[aria-expanded="true"] .menu-lines::after{top:5px;transform:rotate(-45deg)}

.mobile-menu{
  position:fixed;z-index:90;inset:0;background:#111210;color:var(--paper);visibility:hidden;
  clip-path:inset(0 0 100% 0);transition:clip-path .72s cubic-bezier(.76,0,.24,1),visibility 0s linear .72s;
}
.mobile-menu.is-open{visibility:visible;clip-path:inset(0);transition:clip-path .72s cubic-bezier(.76,0,.24,1),visibility 0s}
.mobile-menu-inner{min-height:100%;padding:calc(var(--nav-h) + 50px) 20px 28px;display:flex;flex-direction:column}
.mobile-menu-meta{font:500 9px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding-bottom:18px;border-bottom:1px solid var(--line)}
.mobile-menu-links{display:flex;flex-direction:column;margin-top:20px}
.mobile-menu-links a{display:grid;grid-template-columns:48px 1fr auto;align-items:end;padding:13px 0;border-bottom:1px solid var(--line)}
.mobile-menu-links .num{font:500 9px var(--mono);color:var(--muted);padding-bottom:7px}
.mobile-menu-links .name{font:700 clamp(44px,12vw,72px)/.9 var(--display);letter-spacing:-.055em;text-transform:uppercase}
.mobile-menu-links .arrow{font-size:20px;padding-bottom:4px}
.mobile-menu-bottom{margin-top:auto;padding-top:36px;display:flex;justify-content:space-between;gap:20px;align-items:end}
.mobile-menu-bottom p{font:500 9px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mobile-menu-cta{font:600 13px var(--body);border-bottom:1px solid currentColor;padding-bottom:4px}

/* HERO */
.hero{height:100svh;min-height:680px;position:relative;overflow:hidden;background:#9fb9ca;contain:paint}
.hero video,.hero .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.hero video{transform:translateZ(0) scale(1.001);backface-visibility:hidden;will-change:transform;filter:none}
.hero::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,0) 23%,rgba(0,0,0,.05) 62%,rgba(0,0,0,.22) 100%);pointer-events:none}
.hero::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.17),rgba(0,0,0,.02) 48%,rgba(0,0,0,.03));pointer-events:none}
.hero-copy{position:absolute;z-index:3;left:max(20px,4vw);bottom:clamp(46px,7vw,92px);width:min(790px,76vw)}
.kicker{font:500 9px var(--mono);letter-spacing:.19em;text-transform:uppercase;margin-bottom:20px;text-shadow:0 1px 10px rgba(0,0,0,.18)}
.hero h1,.page-hero h1{font:800 clamp(54px,8.4vw,132px)/.84 var(--display);letter-spacing:-.057em;text-transform:uppercase;text-wrap:balance}
.hero h1{text-shadow:0 1px 18px rgba(0,0,0,.08)}
.hero p{font-size:clamp(14px,1.15vw,18px);line-height:1.5;margin-top:22px;max-width:47ch;text-shadow:0 1px 12px rgba(0,0,0,.18)}
.hero-index{position:absolute;z-index:3;right:max(20px,4vw);bottom:clamp(48px,7vw,94px);font:500 9px/1.45 var(--mono);letter-spacing:.14em;text-transform:uppercase;text-align:right}
.hero-scroll{position:absolute;z-index:3;left:50%;bottom:26px;transform:translateX(-50%);display:flex;align-items:center;gap:8px;font:500 8px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.hero-scroll::before{content:"";display:block;width:24px;height:1px;background:currentColor;transform-origin:left;animation:scrollPulse 1.9s ease-in-out infinite}
@keyframes scrollPulse{0%,100%{transform:scaleX(.35);opacity:.45}50%{transform:scaleX(1);opacity:1}}

/* HOMEPAGE / POSITIONING */
.section{padding:clamp(92px,12vw,180px) 0}.section.alt{background:var(--bg2)}
.label{font:500 10px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.section-head{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:clamp(48px,6vw,88px)}
.section-head h2{font:600 clamp(36px,5vw,74px)/.98 var(--display);letter-spacing:-.045em;max-width:14ch}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:30px}.intro p{font:500 clamp(24px,3.2vw,48px)/1.12 var(--display);letter-spacing:-.035em;max-width:24ch}

.positioning-section{background:var(--paper);color:#141513;padding:clamp(100px,12vw,180px) 0 clamp(80px,9vw,138px);overflow:hidden}
.positioning-section .label{color:#696b63}
.positioning-intro{display:grid;grid-template-columns:3fr 9fr;gap:30px;align-items:start;padding-bottom:clamp(70px,8vw,120px)}
.positioning-lead{font:600 clamp(34px,4.7vw,72px)/1.02 var(--display);letter-spacing:-.048em;max-width:21ch;text-wrap:balance}
.positioning-lead em{font-style:normal;color:#70736b}
.positioning-stage{border-top:1px solid rgba(20,21,19,.18);border-bottom:1px solid rgba(20,21,19,.18)}
.positioning-line{height:clamp(108px,13vw,196px);display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(210px,23vw);align-items:center;gap:20px;padding:0 max(20px,4vw);position:relative;border-bottom:1px solid rgba(20,21,19,.16);overflow:hidden;will-change:transform}
.positioning-line:last-child{border-bottom:0}
.positioning-line::before{content:"";position:absolute;inset:0;background:#171817;transform:scaleY(0);transform-origin:bottom;transition:transform .55s cubic-bezier(.22,1,.36,1)}
.positioning-line:hover::before{transform:scaleY(1)}
.positioning-line>*{position:relative;z-index:1;transition:color .35s ease,transform .55s cubic-bezier(.22,1,.36,1)}
.positioning-line>span{font:800 clamp(58px,10.4vw,164px)/.78 var(--display);letter-spacing:-.066em;text-transform:uppercase;white-space:nowrap}
.positioning-line>i{font:500 9px var(--mono);font-style:normal;letter-spacing:.15em;color:#74766e}
.positioning-line>small{justify-self:end;font:500 clamp(11px,1vw,14px)/1.45 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#676960;max-width:22ch}
.positioning-line:hover>span,.positioning-line:hover>small{color:var(--paper)}
.positioning-line:hover>i{color:var(--lime)}
.positioning-line:hover>span{transform:translateX(10px)}
.positioning-foot{display:grid;grid-template-columns:3fr 5fr 4fr;gap:30px;padding-top:34px;align-items:start}
.positioning-foot p{grid-column:2;font-size:clamp(14px,1.4vw,19px);line-height:1.55;max-width:42ch}
.positioning-foot span{justify-self:end;font:500 9px/1.5 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#77796f;text-align:right}

/* SELECTED WORK */
.selected-work-section{background:#171817;color:var(--paper);padding:clamp(110px,13vw,190px) 0 clamp(120px,14vw,220px)}
.work-intro{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,6vw,90px);align-items:end;margin-bottom:clamp(60px,8vw,118px)}
.work-intro h2{font:750 clamp(52px,7.2vw,112px)/.87 var(--display);letter-spacing:-.06em;text-transform:uppercase;margin-top:20px;text-wrap:balance}
.work-intro-side{justify-self:end;width:min(100%,430px)}
.work-intro-side p{color:#b6b6ae;font-size:clamp(13px,1.12vw,16px);line-height:1.65}
.text-link{display:inline-flex;align-items:center;gap:14px;margin-top:30px;font:500 10px var(--mono);letter-spacing:.15em;text-transform:uppercase;border-bottom:1px solid rgba(241,240,235,.45);padding-bottom:8px;transition:border-color .3s ease,gap .35s cubic-bezier(.22,1,.36,1)}
.text-link:hover{gap:22px;border-color:var(--lime)}
.featured-projects{display:flex;flex-direction:column;gap:clamp(74px,9vw,130px)}
.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2.8vw,42px);align-items:start}
.project-card{display:block;min-width:0}
.project-card--offset{margin-top:clamp(80px,10vw,152px)}
.project-visual{position:relative;overflow:hidden;background:#222;aspect-ratio:4/5;isolation:isolate;clip-path:inset(0 round 2px);transform:translateZ(0)}
.project-card--hero .project-visual{aspect-ratio:16/8.5}
.project-visual::after{content:"";position:absolute;z-index:9;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.13);pointer-events:none}
.study-ui{position:absolute;z-index:6;left:clamp(16px,2vw,28px);right:clamp(16px,2vw,28px);display:flex;justify-content:space-between;font:500 clamp(7px,.7vw,10px) var(--mono);letter-spacing:.13em;text-transform:uppercase}
.study-ui--top{top:clamp(16px,2vw,28px)}.study-ui--bottom{bottom:clamp(16px,2vw,28px)}
.project-open{position:absolute;z-index:12;right:22px;bottom:22px;background:var(--paper);color:#111210;border-radius:999px;padding:13px 17px;font:600 9px var(--mono);letter-spacing:.12em;text-transform:uppercase;opacity:0;transform:translateY(12px);transition:opacity .35s ease,transform .5s cubic-bezier(.22,1,.36,1)}
.project-card:hover .project-open{opacity:1;transform:translateY(0)}
.project-meta{display:flex;justify-content:space-between;gap:28px;padding-top:16px;font:500 9px/1.5 var(--mono);letter-spacing:.11em;text-transform:uppercase;color:#85877f}
.project-meta>div{display:flex;gap:16px}.project-meta strong{font-weight:500;color:var(--paper)}.project-no{color:var(--lime)}

.project-visual--one{background:#e6ff69;color:#111210}
.project-visual--flaneur{background:url('../assets/flaneur/hero-clean.png') center 18%/cover no-repeat;color:#fff}.project-visual--flaneur::before{inset:0;background:linear-gradient(90deg,rgba(0,0,0,.56),rgba(0,0,0,.04) 56%,rgba(0,0,0,.14));filter:none;opacity:1}
.project-visual--one:not(.project-visual--flaneur)::before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 73% 42%,rgba(255,255,255,.7),transparent 16%),radial-gradient(circle at 70% 48%,#7f7cff 0,transparent 34%);filter:blur(1px);opacity:.72}
.study-one-copy{position:absolute;z-index:5;left:clamp(18px,3.4vw,52px);top:50%;transform:translateY(-48%);display:flex;flex-direction:column;font:800 clamp(54px,10vw,162px)/.72 var(--display);letter-spacing:-.075em;text-transform:uppercase}
.study-one-copy span:nth-child(2){padding-left:10vw}.study-one-copy span:nth-child(3){padding-left:3vw}

.project-visual--two{background:#1e35ff;color:#f2f1eb}
.study-two-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);background-size:8% 8%;mask-image:linear-gradient(to bottom,black,transparent 87%)}
.study-two-object{position:absolute;z-index:3;width:52%;aspect-ratio:1;left:50%;top:48%;transform:translate(-50%,-50%) rotate(18deg);transform-style:preserve-3d}
.study-two-object::before{content:"";position:absolute;inset:8%;border-radius:42% 58% 60% 40% / 44% 40% 60% 56%;background:radial-gradient(circle at 28% 22%,#fff 0 2%,#8affee 9%,#141517 46%,#ed6bff 78%,#fff 100%);box-shadow:0 40px 90px rgba(0,0,0,.4);animation:blobMorph 8s ease-in-out infinite alternate}
.study-two-object i{position:absolute;inset:0;border:1px solid rgba(255,255,255,.42);border-radius:50%;transform:rotate(var(--r)) scale(var(--s))}
.study-two-object i:nth-child(1){--r:16deg;--s:1}.study-two-object i:nth-child(2){--r:67deg;--s:.82}.study-two-object i:nth-child(3){--r:111deg;--s:1.14}
.study-two-copy{position:absolute;z-index:5;left:20px;bottom:22px;font:800 clamp(48px,6vw,92px)/.76 var(--display);letter-spacing:-.065em;text-transform:uppercase}

.project-visual--three{background:#f1eee5;color:#171817}
.study-three-rings{position:absolute;width:76%;aspect-ratio:1;left:50%;top:47%;transform:translate(-50%,-50%)}
.study-three-rings i{position:absolute;border:clamp(7px,1.1vw,16px) solid #171817;border-radius:50%;inset:var(--i);mix-blend-mode:multiply}
.study-three-rings i:nth-child(1){--i:0;border-color:#ff5f53}.study-three-rings i:nth-child(2){--i:12%;border-color:#171817}.study-three-rings i:nth-child(3){--i:24%;border-color:#506dff}.study-three-rings i:nth-child(4){--i:36%;border-color:#d6ff77}
.study-three-copy{position:absolute;z-index:4;left:20px;right:20px;top:48%;transform:translateY(-50%);display:flex;flex-direction:column;font:800 clamp(48px,6.3vw,98px)/.77 var(--display);letter-spacing:-.07em;text-transform:uppercase}
.study-three-copy span:nth-child(2){align-self:flex-end}.study-three-copy span:nth-child(3){font-size:.67em;align-self:center;margin-top:.08em}
.project-visual--three .study-ui{color:#171817}

@keyframes blobMorph{0%{border-radius:42% 58% 60% 40% / 44% 40% 60% 56%;transform:rotate(-6deg) scale(.96)}100%{border-radius:58% 42% 42% 58% / 52% 64% 36% 48%;transform:rotate(8deg) scale(1.05)}}

/* MOTION LAB PREVIEW */
.motion-home-section{background:#0f100f;color:var(--paper);padding:clamp(110px,13vw,190px) 0 clamp(90px,10vw,150px);overflow:hidden}
.motion-home-head{display:grid;grid-template-columns:3fr 9fr;gap:30px;margin-bottom:clamp(58px,8vw,110px)}
.motion-home-title{display:grid;grid-template-columns:7fr 4fr;gap:clamp(30px,5vw,80px);align-items:end}
.motion-home-title h2{font:800 clamp(58px,8vw,126px)/.82 var(--display);letter-spacing:-.065em;text-transform:uppercase}
.motion-home-title p{font-size:clamp(13px,1.1vw,16px);line-height:1.65;color:#9d9e97;max-width:37ch;padding-bottom:8px}
.motion-rail-wrap{padding-left:max(20px,calc((100vw - 1440px)/2 + 20px));overflow:hidden}
.motion-rail{display:flex;gap:14px;width:max-content;padding-right:max(20px,4vw)}
.motion-experiment{width:clamp(285px,28vw,430px);aspect-ratio:3/4;position:relative;overflow:hidden;padding:18px;background:#1d1e1c;isolation:isolate;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.motion-experiment:hover{transform:translateY(-10px)}
.experiment-top,.experiment-bottom{position:absolute;z-index:10;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;font:500 8px var(--mono);letter-spacing:.13em;text-transform:uppercase}
.experiment-top{top:18px;color:rgba(255,255,255,.68)}.experiment-bottom{bottom:18px}.experiment-bottom strong{font-weight:500;font-size:10px}.experiment-bottom span{color:rgba(255,255,255,.58)}
.exp-pulse{background:#e7ff6d;color:#121311}.exp-pulse .experiment-top,.exp-pulse .experiment-bottom span{color:rgba(18,19,17,.6)}
.pulse-object{position:absolute;inset:15%;display:grid;place-items:center}
.pulse-object b{width:24%;aspect-ratio:1;background:#121311;border-radius:50%;box-shadow:0 0 0 14px rgba(18,19,17,.08),0 0 80px rgba(18,19,17,.22)}
.pulse-object i{position:absolute;width:46%;aspect-ratio:1;border:1px solid rgba(18,19,17,.34);border-radius:50%;animation:pulseRing 2.8s ease-out infinite}
.pulse-object i:nth-child(2){animation-delay:.7s}.pulse-object i:nth-child(3){animation-delay:1.4s}
@keyframes pulseRing{0%{transform:scale(.45);opacity:0}18%{opacity:1}100%{transform:scale(2.4);opacity:0}}

.exp-material{background:#ff6c95}
.material-object{position:absolute;width:61%;aspect-ratio:1.18;left:50%;top:49%;transform:translate(-50%,-50%);filter:drop-shadow(0 30px 34px rgba(46,0,18,.28))}
.material-object::before,.material-object::after,.material-object i{content:"";position:absolute;inset:0;border-radius:48% 52% 61% 39% / 48% 40% 60% 52%;background:radial-gradient(circle at 30% 20%,#fff 0 2%,#d5f8ff 10%,#6b55ff 33%,#161719 59%,#ffdf7c 83%,#fff 100%);animation:materialFloat 6s ease-in-out infinite alternate}
.material-object::after{inset:18%;opacity:.5;filter:blur(1px);mix-blend-mode:screen;animation-delay:-1.5s}.material-object i{inset:35%;opacity:.4;animation-delay:-3s}
@keyframes materialFloat{to{transform:rotate(22deg) scale(1.07);border-radius:59% 41% 42% 58% / 37% 61% 39% 63%}}

.exp-spatial{background:#2522f2;perspective:900px}
.spatial-object{position:absolute;width:48%;aspect-ratio:1;left:50%;top:48%;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(-18deg) rotateY(34deg);animation:cubeTurn 9s linear infinite}
.spatial-object i{position:absolute;inset:0;border:2px solid rgba(255,255,255,.88);background:rgba(255,255,255,.04);backdrop-filter:blur(2px)}
.spatial-object i:nth-child(1){transform:translateZ(70px)}.spatial-object i:nth-child(2){transform:rotateY(180deg) translateZ(70px)}.spatial-object i:nth-child(3){transform:rotateY(90deg) translateZ(70px)}.spatial-object i:nth-child(4){transform:rotateY(-90deg) translateZ(70px)}.spatial-object i:nth-child(5){transform:rotateX(90deg) translateZ(70px)}.spatial-object i:nth-child(6){transform:rotateX(-90deg) translateZ(70px)}
@keyframes cubeTurn{to{transform:translate(-50%,-50%) rotateX(342deg) rotateY(394deg)}}

.exp-system{background:#eceae3;color:#141513}.exp-system .experiment-top,.exp-system .experiment-bottom span{color:rgba(20,21,19,.55)}
.system-object{position:absolute;inset:19%;background-image:radial-gradient(circle,#151614 0 3px,transparent 3.5px);background-size:12.5% 12.5%;transform:rotate(-8deg);animation:systemShift 5s ease-in-out infinite alternate}
.system-object::before{content:"";position:absolute;inset:16%;background:#506dff;border-radius:50%;filter:blur(1px);mix-blend-mode:multiply;animation:systemOrb 4s ease-in-out infinite alternate}
.system-object::after{content:"";position:absolute;width:38%;aspect-ratio:1;right:-3%;top:8%;background:#ff5f53;border-radius:50%;mix-blend-mode:multiply;animation:systemOrb 5s ease-in-out -2s infinite alternate}
@keyframes systemShift{to{transform:rotate(5deg) scale(1.05)}}@keyframes systemOrb{to{transform:translate(-30%,32%) scale(.72)}}
.motion-home-foot{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;padding-top:34px;margin-top:14px;border-top:1px solid rgba(241,240,235,.15)}
.motion-home-foot>span{font:500 9px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#777a72;max-width:46ch}
.motion-lab-link{display:flex;align-items:center;gap:28px;font:700 clamp(24px,2.3vw,36px) var(--display);letter-spacing:-.035em}
.motion-lab-link b{font-weight:400;color:var(--lime);transition:transform .35s cubic-bezier(.22,1,.36,1)}.motion-lab-link:hover b{transform:translate(6px,-6px)}

/* LEGACY WORK GRID / INNER WORK PAGE */
.work-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.work-card{grid-column:span 6}.work-card.wide{grid-column:span 12}
.visual{aspect-ratio:16/10;border-radius:2px;overflow:hidden;position:relative;background:#30312f}.visual:before{content:"";position:absolute;inset:-15%;background:radial-gradient(circle at 25% 25%,#8edcff 0 10%,transparent 31%),radial-gradient(circle at 70% 70%,#ff6e9e 0 8%,transparent 28%),linear-gradient(135deg,#1b1c1a,#4e514c);filter:saturate(1.2);transition:transform .8s cubic-bezier(.22,1,.36,1)}
.work-card:hover .visual::before{transform:scale(1.035)}.work-card:nth-child(2) .visual:before{background:radial-gradient(circle at 60% 30%,#e6ff74,transparent 24%),linear-gradient(135deg,#151515,#6752ff)}.work-card:nth-child(3) .visual:before{background:radial-gradient(circle at 30% 55%,#ffae5c,transparent 22%),linear-gradient(120deg,#292929,#99d7cb)}
.card-meta{display:flex;justify-content:space-between;padding-top:14px;font:500 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.card-meta b{color:var(--paper);font-weight:500}
.lab-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.lab-tile{aspect-ratio:3/4;background:#2a2b29;position:relative;overflow:hidden}.lab-tile:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(214,255,119,.8),transparent 12%),radial-gradient(circle at 45% 50%,#7161ff,transparent 38%);transform:scale(1.3);transition:transform .8s cubic-bezier(.22,1,.36,1)}.lab-tile:hover::before{transform:scale(1.4) rotate(2deg)}.lab-tile:nth-child(2):before{background:radial-gradient(circle,#ff7b9c,transparent 45%)}.lab-tile:nth-child(3):before{background:conic-gradient(from 30deg,#52d8ff,#161616,#d6ff77,#ff6ba6,#52d8ff)}.lab-tile:nth-child(4):before{background:radial-gradient(ellipse at center,#f6f5f0 0 8%,#8297ff 12%,#20211f 44%)}.lab-tile span{position:absolute;z-index:2;bottom:14px;left:14px;font:500 10px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.cta-section{padding:clamp(110px,14vw,210px) 0}.cta-section h2{font:800 clamp(60px,10vw,155px)/.84 var(--display);letter-spacing:-.06em;text-transform:uppercase}.cta-section a{display:inline-flex;margin-top:36px;border-bottom:1px solid;padding-bottom:5px}
.footer{padding:40px 0 28px;border-top:1px solid var(--line)}.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font:500 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

/* CONTACT CTA + MONUMENTAL FOOTER */
.contact-cta-section{background:var(--paper);color:#151614;padding:clamp(100px,12vw,180px) 0 clamp(110px,12vw,180px)}
.contact-cta-section .label{color:#6f7169}
.contact-cta-grid{display:grid;grid-template-columns:3fr 9fr;gap:30px}
.contact-cta-main h2{font:800 clamp(58px,8.8vw,138px)/.83 var(--display);letter-spacing:-.067em;text-transform:uppercase;max-width:10.5ch}
.contact-cta-row{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;margin-top:clamp(44px,6vw,84px);padding-top:26px;border-top:1px solid rgba(21,22,20,.2)}
.contact-cta-row p{font-size:clamp(14px,1.15vw,17px);line-height:1.65;max-width:46ch;color:#61635c}
.cta-disc{width:clamp(138px,11.5vw,178px);aspect-ratio:1;border-radius:50%;background:#171817;color:var(--paper);display:flex;flex-direction:column;justify-content:space-between;padding:26px;transition:transform .55s cubic-bezier(.22,1,.36,1),background .3s ease}
.cta-disc span{font:600 9px/1.35 var(--mono);letter-spacing:.12em;text-transform:uppercase;max-width:7ch;display:block}.cta-disc b{align-self:flex-end;font:400 24px var(--body);color:var(--lime);margin-top:12px}.cta-disc:hover{transform:rotate(-5deg) scale(1.04);background:#22231f}

.mega-footer{background:#0b0c0b;color:var(--paper);overflow:hidden;border-top:1px solid rgba(241,240,235,.08)}
.mega-footer-top{height:72px;border-bottom:1px solid rgba(241,240,235,.12);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;font:500 8px var(--mono);letter-spacing:.15em;text-transform:uppercase;color:#74766f}
.mega-footer-top span:nth-child(2){text-align:center}.mega-footer-top span:last-child{text-align:right}
.mega-footer-stage{height:clamp(560px,66vw,980px);position:relative;display:grid;place-items:center;isolation:isolate;background:radial-gradient(circle at 50% 58%,rgba(255,255,255,.025),transparent 37%)}
.mega-footer-word{position:absolute;z-index:1;left:50%;top:53%;transform:translate(-50%,-50%) scaleX(.94);transform-origin:center;font:800 clamp(116px,17vw,300px)/.76 var(--display);letter-spacing:-.055em;text-transform:uppercase;white-space:nowrap;color:#151614;user-select:none;width:92vw;text-align:center;box-sizing:border-box}
.footer-mascot{position:absolute;z-index:3;left:50%;bottom:0;transform:translateX(-50%);height:min(91%,900px);width:auto;object-fit:contain;mix-blend-mode:screen;opacity:.9;filter:contrast(1.08) brightness(.94) drop-shadow(0 30px 72px rgba(0,0,0,.42));will-change:transform;pointer-events:none}

.mega-footer-stage::before{content:'';position:absolute;z-index:2;left:50%;top:50%;width:min(42vw,610px);aspect-ratio:1;border:1px solid rgba(241,240,235,.055);border-radius:50%;transform:translate(-50%,-45%);pointer-events:none}
.mega-footer-stage::after{content:'WIREFRAME / VISURA 001';position:absolute;z-index:4;left:50%;bottom:6.5%;transform:translateX(-50%);font:500 7px var(--mono);letter-spacing:.2em;color:rgba(241,240,235,.28);white-space:nowrap;pointer-events:none}
.footer-float-note{position:absolute;z-index:4;font:500 8px/1.65 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#777a72}
.note-left{left:max(20px,4vw);top:36%}.note-right{right:max(20px,4vw);top:24%;text-align:right}
.mega-footer-bottom{min-height:118px;border-top:1px solid rgba(241,240,235,.12);display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;align-items:center}
.footer-nav{display:flex;gap:clamp(14px,2vw,28px);font:500 9px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#a3a49d}.footer-nav a{transition:color .25s ease}.footer-nav a:hover{color:var(--lime)}
.footer-email{justify-self:center;font:600 clamp(14px,1.3vw,18px) var(--body);letter-spacing:-.02em;border-bottom:1px solid #5e6059;padding-bottom:4px;transition:border-color .25s ease}.footer-email:hover{border-color:var(--lime)}
.footer-legal{justify-self:end;display:flex;gap:22px;font:500 8px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#666861}

/* INNER PAGES */
.page-hero{padding:190px 0 90px;min-height:70vh;display:flex;align-items:flex-end}
.page-hero .sub{margin-top:28px;max-width:58ch;color:#c5c5be;line-height:1.65}
.page-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.page-copy{grid-column:5/span 7;font-size:clamp(18px,2vw,28px);line-height:1.45;color:#d6d5ce}
.about-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(30px,6vw,90px)}.portrait{position:sticky;top:100px;height:max-content}.portrait-frame{aspect-ratio:3/4;background:#0d0e0d;overflow:hidden;position:relative}.portrait-frame canvas{position:absolute;inset:0;width:100%;height:100%}.portrait-frame img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);opacity:.08}.about-copy h2{font:700 clamp(44px,6vw,88px)/.92 var(--display);letter-spacing:-.05em;text-transform:uppercase}.about-copy p{margin-top:30px;max-width:58ch;color:#c8c7c0;line-height:1.72}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.contact-big{font:700 clamp(42px,6vw,88px)/.95 var(--display);letter-spacing:-.05em}.contact-list{border-top:1px solid var(--line)}.contact-list a,.contact-list div{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}

@media(max-width:850px){
  :root{--nav-h:72px}
  .nav{grid-template-columns:1fr auto;padding:0 20px}.navlinks,.navright{display:none}.menu{display:inline-flex}
  .hero-copy{width:calc(100% - 40px)}.hero-index{display:none}.hero-scroll{display:none}
  .section-head,.intro{grid-template-columns:1fr;gap:20px}.work-card,.work-card.wide{grid-column:span 12}.lab-strip{grid-template-columns:1fr 1fr}.about-grid,.contact-grid{grid-template-columns:1fr}.portrait{position:relative;top:0}.page-copy{grid-column:1/-1}
  .positioning-intro,.motion-home-head{grid-template-columns:1fr;gap:28px}.positioning-line{grid-template-columns:1fr 34px}.positioning-line>small{display:none}.positioning-foot{grid-template-columns:1fr 1fr}.positioning-foot p{grid-column:1}.work-intro{grid-template-columns:1fr}.work-intro-side{justify-self:start}.project-pair{grid-template-columns:1fr}.project-card--offset{margin-top:36px}.motion-home-title{grid-template-columns:1fr;gap:24px}.motion-rail-wrap{padding-left:20px}.motion-home-foot{grid-template-columns:1fr}.motion-lab-link{justify-self:start}
  .contact-cta-grid{grid-template-columns:1fr;gap:28px}.mega-footer-top{grid-template-columns:1fr 1fr}.mega-footer-top span:nth-child(2){display:none}.mega-footer-top span:last-child{text-align:right}.mega-footer-bottom{grid-template-columns:1fr 1fr;gap:26px;padding:28px 0}.footer-email{justify-self:end}.footer-legal{grid-column:1/-1;justify-self:stretch;justify-content:space-between}.mega-footer-stage{height:clamp(560px,100vw,760px)}
}
@media(max-width:520px){
  .wrap{width:min(100% - 28px,1440px)}
  .nav{padding:0 14px}.brand-context{display:none}
  .hero{min-height:620px}.hero h1,.page-hero h1{font-size:clamp(48px,17vw,76px)}.lab-strip{grid-template-columns:1fr}.hero-copy{left:14px;width:calc(100% - 28px);bottom:42px}.kicker{margin-bottom:15px}.hero p{max-width:34ch}
  .positioning-section{padding-top:86px}.positioning-intro{padding-bottom:58px}.positioning-line{height:96px;padding:0 14px}.positioning-line>span{font-size:clamp(48px,16vw,72px)}.positioning-foot{grid-template-columns:1fr}.positioning-foot span{justify-self:start;text-align:left}.work-intro h2{font-size:clamp(46px,15vw,68px)}.project-card--hero .project-visual{aspect-ratio:4/5}.study-one-copy{font-size:clamp(44px,15vw,74px)}.study-one-copy span:nth-child(2){padding-left:5vw}.project-meta{flex-direction:column;gap:7px}.project-open{display:none}.motion-home-title h2{font-size:clamp(50px,16vw,72px)}.motion-rail-wrap{padding-left:14px}.motion-experiment{width:78vw}.motion-home-foot{padding-top:24px}.motion-lab-link{font-size:27px}
  .contact-cta-main h2{font-size:clamp(48px,15vw,72px)}.contact-cta-row{grid-template-columns:1fr;gap:34px}.cta-disc{width:clamp(138px,11.5vw,178px);aspect-ratio:1;border-radius:50%;background:#171817;color:var(--paper);display:flex;flex-direction:column;justify-content:space-between;padding:26px;transition:transform .55s cubic-bezier(.22,1,.36,1),background .3s ease}.mega-footer-top{height:66px;font-size:7px}.mega-footer-stage{height:560px}.mega-footer-word{font-size:24vw;top:56%;letter-spacing:-.05em;width:94vw;transform:translate(-50%,-50%) scaleX(.96)}.footer-mascot{height:84%;bottom:2%;opacity:.92}.mega-footer-stage::before{width:72vw}.mega-footer-stage::after{bottom:5%;font-size:6px}.footer-float-note{display:none}.mega-footer-bottom{grid-template-columns:1fr;padding:26px 0}.footer-nav{flex-wrap:wrap}.footer-email{justify-self:start}.footer-legal{grid-column:1;justify-self:stretch}
  .mobile-menu-inner{padding-left:14px;padding-right:14px}.mobile-menu-links a{grid-template-columns:38px 1fr auto}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* CASE COVER SYSTEM — one VISURA mascot interpretation per brand world */
.project-visual--flaneur{background-image:url('../assets/flaneur/visura-flaneur-cover-v2.png');background-position:center;background-size:cover}
.project-visual--flaneur::before{inset:0;background:linear-gradient(90deg,rgba(0,0,0,.4),transparent 54%,rgba(0,0,0,.08));filter:none;opacity:1}
.project-visual--flaneur .study-one-copy{left:clamp(22px,4vw,58px);top:50%;transform:translateY(-45%);font:800 clamp(58px,10vw,158px)/.73 var(--display);letter-spacing:-.075em;text-shadow:0 2px 24px rgba(0,0,0,.18)}
.project-visual--flaneur .study-one-copy strong{font:inherit;color:var(--lime);padding-left:8vw}
.work-featured-case{display:block;margin-top:clamp(38px,5vw,74px)}
.work-case-poster{position:relative;aspect-ratio:16/8.7;overflow:hidden;background:#d8d8d3;isolation:isolate}
.work-case-poster::after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.4),transparent 54%,rgba(0,0,0,.08));box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);pointer-events:none}
.work-case-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1),filter .6s ease}
.work-featured-case:hover .work-case-poster img{transform:scale(1.025);filter:saturate(1.06)}
.work-poster-top,.work-poster-bottom{position:absolute;z-index:4;left:26px;right:26px;display:flex;justify-content:space-between;font:500 8px var(--mono);letter-spacing:.15em;text-transform:uppercase}
.work-poster-top{top:24px}.work-poster-bottom{bottom:22px}
.work-poster-title{position:absolute;z-index:4;left:clamp(22px,4vw,58px);top:50%;transform:translateY(-45%);display:flex;flex-direction:column;font:800 clamp(58px,10vw,158px)/.73 var(--display);letter-spacing:-.075em;text-transform:uppercase;text-shadow:0 2px 24px rgba(0,0,0,.18)}
.work-poster-title strong{font:inherit;color:var(--lime);padding-left:8vw}
.work-featured-meta{display:flex;justify-content:space-between;gap:30px;padding-top:16px;font:500 9px/1.5 var(--mono);letter-spacing:.11em;text-transform:uppercase;color:#85877f}
.work-featured-meta>div{display:flex;gap:16px}.work-featured-meta>div span{color:var(--lime)}.work-featured-meta strong{font-weight:500;color:var(--paper)}
.future-case-index{margin-top:clamp(65px,8vw,110px);border-top:1px solid rgba(241,240,235,.13)}
@media(max-width:850px){.work-featured-meta{flex-direction:column;gap:7px}.work-poster-title,.project-visual--flaneur .study-one-copy{font-size:clamp(54px,13vw,105px)}.work-case-poster{aspect-ratio:4/3}.work-case-poster img{object-position:60% center}}
@media(max-width:520px){.work-poster-top,.work-poster-bottom{left:14px;right:14px;font-size:6px}.work-poster-top{top:14px}.work-poster-bottom{bottom:13px}.work-poster-title,.project-visual--flaneur .study-one-copy{font-size:16vw}.work-case-poster{aspect-ratio:4/5}.work-case-poster img{object-position:62% center}.work-case-poster::after{background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 72%)}}

/* V4 — INNER PAGE ART DIRECTION */
.inner-page{background:#121311;color:var(--paper)}
.inner-hero{min-height:92svh;position:relative;display:flex;align-items:flex-end;padding:clamp(132px,11vw,170px) 0 clamp(74px,7vw,104px);overflow:hidden;border-bottom:1px solid rgba(241,240,235,.1)}
.inner-hero-grid{width:100%;display:grid;grid-template-columns:8fr 4fr;gap:40px;align-items:end;position:relative;z-index:2}
.inner-hero h1{font:800 clamp(72px,11vw,178px)/.79 var(--display);letter-spacing:-.055em;text-transform:uppercase;margin-top:30px;max-width:7.4ch}
.inner-hero h1 span{color:var(--lime)}
.inner-hero-side{padding-bottom:8px;display:grid;gap:42px;max-width:420px;justify-self:end}.inner-hero-side p{font-size:clamp(16px,1.4vw,21px);line-height:1.55;color:#c5c6bf}.inner-hero-side span{font:500 9px var(--mono);letter-spacing:.15em;text-transform:uppercase;color:#71736c}
.hero-orbit{position:absolute;border:1px solid rgba(214,255,119,.18);border-radius:50%;pointer-events:none}.hero-orbit-a{width:58vw;aspect-ratio:1;right:-20vw;top:-18vw}.hero-orbit-b{width:34vw;aspect-ratio:1;right:-5vw;top:2vw;box-shadow:inset 0 0 100px rgba(214,255,119,.04)}
.index-rule{display:flex;justify-content:space-between;padding:0 0 18px;border-bottom:1px solid rgba(241,240,235,.14);font:500 9px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#777970}
.work-index-section,.lab-gallery-section,.founder-section,.contact-details-section{padding:clamp(96px,9.5vw,148px) 0;background:#171817}
.case-row{display:grid;grid-template-columns:70px minmax(0,1fr) 240px 40px;gap:20px;align-items:center;min-height:150px;border-bottom:1px solid rgba(241,240,235,.13);transition:padding .45s cubic-bezier(.22,1,.36,1),background .3s ease}.case-row:hover{padding-left:18px;background:#1d1e1b}.case-no,.case-type{font:500 9px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#74766f}.case-name{font:700 clamp(34px,4.2vw,68px)/.95 var(--display);letter-spacing:-.048em;text-transform:uppercase}.case-arrow{justify-self:end;font-size:24px;color:var(--lime)}
.case-row--featured{position:relative;overflow:hidden}.case-row--featured::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--lime);transform:scaleY(0);transform-origin:bottom;transition:transform .45s cubic-bezier(.22,1,.36,1)}.case-row--featured:hover::before{transform:scaleY(1)}.case-row--soon{opacity:.38;pointer-events:none}
.work-placeholder-note{margin:clamp(78px,9vw,132px) 0 0 25%;max-width:760px;border-top:1px solid rgba(241,240,235,.15);padding-top:28px}.work-placeholder-note p{font:500 9px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--lime)}.work-placeholder-note h2{font:700 clamp(46px,6vw,90px)/.9 var(--display);letter-spacing:-.055em;text-transform:uppercase;margin-top:18px}.work-placeholder-note span{display:block;margin-top:24px;color:#85877e;max-width:40ch;line-height:1.6}
.inner-cta{background:#0c0d0c;padding:clamp(100px,12vw,180px) 0}.inner-cta.light{background:var(--paper);color:#151614}.inner-cta-grid{display:grid;grid-template-columns:2fr 8fr 2fr;gap:30px;align-items:end}.inner-cta h2{font:800 clamp(54px,8vw,126px)/.84 var(--display);letter-spacing:-.063em;text-transform:uppercase}.inner-cta a{justify-self:end;border-bottom:1px solid;padding-bottom:5px;font:600 12px var(--body)}
.inner-hero--lab{background:#171817}.inner-hero--lab h1 span{color:#7d68ff}.lab-hero-object{position:absolute;right:7vw;top:10vh;width:min(34vw,520px);aspect-ratio:1;filter:drop-shadow(0 40px 80px rgba(0,0,0,.3));opacity:.75}.lab-hero-object i{position:absolute;inset:10%;border-radius:46% 54% 61% 39% / 44% 37% 63% 56%;background:conic-gradient(from 45deg,#d6ff77,#715cff,#ff7199,#59d8ff,#d6ff77);mix-blend-mode:screen;filter:blur(1px);animation:materialFloat 8s ease-in-out infinite alternate}.lab-hero-object i:nth-child(2){inset:24%;animation-delay:-2s;opacity:.7}.lab-hero-object i:nth-child(3){inset:38%;animation-delay:-4s;opacity:.55}
.lab-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.lab-panel{min-height:clamp(420px,48vw,720px);position:relative;overflow:hidden;background:#22231f}.lab-art{position:absolute;inset:0}.panel-a{background:#ff6f98}.liquid-core:before{content:"";position:absolute;width:54%;aspect-ratio:1.1;left:50%;top:46%;transform:translate(-50%,-50%);border-radius:48% 52% 61% 39% / 48% 40% 60% 52%;background:radial-gradient(circle at 28% 18%,#fff 0 3%,#cffbff 10%,#735eff 34%,#171817 58%,#ffe17f 82%,#fff 100%);animation:materialFloat 6s ease-in-out infinite alternate;filter:drop-shadow(0 32px 40px rgba(55,0,20,.28))}.panel-b{background:#2824ed;perspective:900px}.wire-form{width:46%;height:46%;left:27%;top:25%;transform-style:preserve-3d;animation:cubeTurn 9s linear infinite}.wire-form i{position:absolute;inset:0;border:2px solid rgba(255,255,255,.85);background:rgba(255,255,255,.035)}.wire-form i:nth-child(1){transform:rotate(18deg)}.wire-form i:nth-child(2){transform:rotate(42deg) scale(.82)}.wire-form i:nth-child(3){transform:rotate(66deg) scale(.64)}.wire-form i:nth-child(4){transform:rotate(90deg) scale(.46)}.panel-c{background:#d6ff77}.signal-field{background:repeating-radial-gradient(circle at 52% 48%,transparent 0 16px,rgba(18,19,17,.92) 17px 19px,transparent 20px 30px);transform:scale(1.5);animation:signalPulse 6s ease-in-out infinite alternate}.panel-d{background:#d9d8d2}.glass-eye:before{content:"";position:absolute;width:55%;aspect-ratio:1;left:50%;top:48%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 38% 32%,#fff 0 8%,#99a4ff 12%,#222 35%,#f4f3ed 57%,#7762ff 64%,#111 75%);box-shadow:0 40px 80px rgba(0,0,0,.28);filter:saturate(1.15)}.lab-panel-meta{position:absolute;left:20px;right:20px;bottom:18px;display:grid;grid-template-columns:40px 1fr auto;align-items:end;gap:14px;color:#fff}.lab-panel-meta span,.lab-panel-meta small{font:500 8px var(--mono);letter-spacing:.14em;text-transform:uppercase}.lab-panel-meta b{font:700 clamp(24px,2.7vw,42px)/1 var(--display);letter-spacing:-.035em;text-transform:uppercase}.panel-c .lab-panel-meta,.panel-d .lab-panel-meta{color:#171817}.lab-manifesto{margin:clamp(76px,8vw,118px) 0 0 33%;max-width:800px}.lab-manifesto p{font:600 clamp(30px,4vw,58px)/1.04 var(--display);letter-spacing:-.038em;margin-top:22px;color:#d8d8d1}
.inner-hero--about{background:var(--paper);color:#151614;min-height:88svh;padding-top:clamp(124px,9vw,150px);padding-bottom:clamp(76px,7vw,102px)}.inner-hero--about .inner-hero-side p{color:#5d5f58}.inner-hero--about .inner-hero-side span{color:#777970}.inner-hero--about h1{display:flex;flex-direction:column;gap:.06em;max-width:6.7ch;letter-spacing:-.048em}.inner-hero--about h1 .hero-line{display:block;color:#151614}
.founder-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(50px,7vw,110px);align-items:start}.founder-visual{position:sticky;top:100px}.portrait-shell{position:relative}.portrait-frame{aspect-ratio:4/5}.portrait-scan{position:absolute;left:0;right:0;top:48%;height:1px;background:var(--lime);box-shadow:0 0 30px rgba(214,255,119,.8);opacity:.7}.founder-id{display:flex;justify-content:space-between;padding-top:14px;font:500 9px var(--mono);letter-spacing:.12em;text-transform:uppercase}.founder-id span{color:#74766f}.founder-story h2{font:700 clamp(50px,6.8vw,102px)/.88 var(--display);letter-spacing:-.058em;text-transform:uppercase;margin-top:22px}.lead-copy{font-size:clamp(20px,2.1vw,31px)!important;line-height:1.42!important;color:#e2e1da!important}.story-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px;border-top:1px solid rgba(241,240,235,.14);margin-top:46px;padding-top:28px}.story-columns p{margin:0!important}.discipline-list{margin-top:58px;border-top:1px solid rgba(241,240,235,.15)}.discipline-list div{display:grid;grid-template-columns:60px 1fr;align-items:center;min-height:82px;border-bottom:1px solid rgba(241,240,235,.13)}.discipline-list span{font:500 9px var(--mono);letter-spacing:.12em;color:var(--lime)}.discipline-list b{font:600 clamp(24px,3vw,42px) var(--display);letter-spacing:-.035em;text-transform:uppercase}
.belief-section{background:#d6ff77;color:#151614;padding:clamp(90px,10vw,150px) 0;overflow:hidden}.belief-section .index-rule{border-color:rgba(21,22,20,.2);color:#55584f}.belief-word{font:800 clamp(90px,17vw,260px)/.78 var(--display);letter-spacing:-.08em;text-transform:uppercase;white-space:nowrap;margin-top:36px}.belief-word--offset{margin-left:18vw}
.contact-hero{min-height:90svh;background:var(--paper);color:#151614;display:flex;align-items:flex-end;padding:clamp(128px,9vw,150px) 0 clamp(74px,7vw,102px);position:relative;overflow:hidden}.contact-hero h1{font:800 clamp(90px,15.4vw,236px)/.74 var(--display);letter-spacing:-.062em;text-transform:uppercase;margin-top:32px;position:relative;z-index:2;max-width:5.7ch}.contact-hero h1 span{color:#76786f;display:inline-block;padding-right:.045em}.contact-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:clamp(34px,4vw,52px);align-items:end;position:relative;z-index:2}.contact-intro p{max-width:45ch;color:#5d5f58;line-height:1.6}.contact-mail-big{justify-self:end;font:600 clamp(18px,2vw,28px) var(--body);border-bottom:1px solid #151614;padding-bottom:5px}.contact-sphere{position:absolute;width:min(42vw,650px);aspect-ratio:1;right:-7vw;top:8vh;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff 0 6%,#d6ff77 10%,#6c5dff 38%,#181917 66%,#ff789d 88%);filter:blur(.2px) saturate(1.12);opacity:.88}.contact-sphere i{position:absolute;inset:12%;border:1px solid rgba(255,255,255,.55);border-radius:50%}
.contact-details-section{background:#171817}.contact-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.contact-prompt{min-height:420px;padding:26px;border:1px solid rgba(241,240,235,.12);display:flex;flex-direction:column}.contact-prompt>span{font:500 8px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--lime)}.contact-prompt h2{font:700 clamp(36px,4vw,62px)/.95 var(--display);letter-spacing:-.045em;text-transform:uppercase;margin-top:auto}.contact-prompt p{margin-top:24px;color:#8d8f86;line-height:1.6;max-width:34ch}.contact-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(58px,6vw,82px);border-top:1px solid rgba(241,240,235,.13);border-bottom:1px solid rgba(241,240,235,.13)}.contact-meta-grid div{padding:24px 0}.contact-meta-grid span,.contact-meta-grid b{display:block}.contact-meta-grid span{font:500 8px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#707269;margin-bottom:10px}.contact-meta-grid b{font-weight:500}.contact-end{background:#d6ff77;color:#151614;padding:clamp(100px,12vw,180px) 0}.contact-end p{font:500 9px var(--mono);letter-spacing:.14em;text-transform:uppercase}.contact-end a{display:flex;justify-content:space-between;align-items:end;margin-top:24px;font:800 clamp(64px,10vw,150px)/.82 var(--display);letter-spacing:-.065em;text-transform:uppercase}.contact-end a span{font-size:.35em}
@keyframes signalPulse{to{transform:scale(1.78) rotate(6deg)}}
@media(max-width:850px){.inner-hero-grid,.founder-grid,.contact-details-grid{grid-template-columns:1fr}.inner-hero-side{justify-self:start}.case-row{grid-template-columns:45px 1fr 30px}.case-type{display:none}.lab-gallery{grid-template-columns:1fr}.lab-manifesto{margin-left:0}.founder-visual{position:relative;top:0}.story-columns{grid-template-columns:1fr}.inner-cta-grid{grid-template-columns:1fr}.inner-cta a{justify-self:start}.contact-intro{grid-template-columns:1fr}.contact-mail-big{justify-self:start}.contact-meta-grid{grid-template-columns:1fr}.contact-meta-grid div{border-bottom:1px solid rgba(241,240,235,.1)}.contact-sphere{width:70vw;right:-28vw;top:14vh}.lab-hero-object{width:60vw;right:-20vw}.work-placeholder-note{margin-left:0}}
@media(max-width:520px){.inner-hero{min-height:auto;padding-top:122px;padding-bottom:68px}.inner-hero--about{min-height:auto;padding-top:122px;padding-bottom:68px}.contact-hero{min-height:auto;padding-top:122px;padding-bottom:68px}.inner-hero h1{font:800 clamp(72px,11vw,178px)/.79 var(--display);letter-spacing:-.055em;text-transform:uppercase;margin-top:30px;max-width:7.4ch}.case-row{min-height:112px}.case-name{font-size:34px}.lab-panel{min-height:500px}.founder-story h2{font-size:48px}.belief-word{font-size:25vw}.contact-hero h1{font-size:24vw;max-width:5.8ch}.contact-prompt{min-height:330px}.contact-end a{font-size:18vw}}

.portrait-frame--head{background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.055),transparent 38%),#090909;display:grid;place-items:center;padding:0;isolation:isolate}
.portrait-frame--head::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 48%,transparent 36%,rgba(0,0,0,.32) 100%);pointer-events:none}
.portrait-head-art{width:100%;height:100%;object-fit:cover;display:block;filter:contrast(1.04) brightness(1.02);transition:transform .45s ease}
.portrait-scan{top:50%;animation:portraitScan 4.8s ease-in-out infinite alternate}
@keyframes portraitScan{0%{transform:translateY(-34%);opacity:.45}100%{transform:translateY(34%);opacity:.85}}
.founder-story .label{display:block;margin-bottom:6px}
.founder-story h2{max-width:9ch}
.founder-visual{top:90px}


/* V8 — interactive founder point cloud */
.portrait-frame--head{
  background:transparent;
  display:block;
  overflow:hidden;
  cursor:crosshair;
  perspective:1000px;
}
.founder-points{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:2;
  display:block;
  opacity:.84;
  mix-blend-mode:screen;
  pointer-events:none;
}
.portrait-head-fallback{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
  opacity:1;
  filter:grayscale(1) contrast(1.02) brightness(1.16);
  mix-blend-mode:screen;
  transform-origin:50% 50%;
  will-change:transform;
}
.portrait-frame--head.is-webgl .portrait-head-fallback{opacity:.98}
.portrait-frame--head::after{display:none}
.portrait-frame--head::before{
  content:'MOVE / EXPLORE';
  position:absolute;
  z-index:5;
  left:16px;
  top:16px;
  font:500 7px var(--mono);
  letter-spacing:.16em;
  color:rgba(19,21,18,.34);
  pointer-events:none;
}
.portrait-scan{display:none}
@media (hover:none),(pointer:coarse){
  .portrait-frame--head{cursor:default}
  .portrait-frame--head::before{content:'FOUNDER / POINT CLOUD'}
}


/* V9 — final polish / responsive / performance */
:focus-visible{outline:2px solid var(--lime);outline-offset:5px}
img,video{max-width:100%}

/* Less permanent compositing work; promote only the actual hero media. */
.positioning-line{will-change:auto}
.hero video{will-change:transform}

/* Founder portrait integrates into the section instead of reading as a separate card. */
.portrait-frame--head{
  background:transparent!important;
  isolation:isolate;
  overflow:visible;
}
.portrait-frame--head::after{display:none!important}
.portrait-head-fallback{
  mix-blend-mode:screen!important;
  filter:grayscale(1) contrast(1.03) brightness(1.15)!important;
}
.portrait-frame--head.is-webgl .portrait-head-fallback{opacity:.98!important}
.founder-points{mix-blend-mode:screen!important;opacity:.82!important}
.portrait-scan{display:none!important}

/* Keep the giant footer word readable at every desktop width. */
.mega-footer-word{
  width:90vw;
  max-width:1500px;
  font-size:clamp(112px,16.4vw,292px);
  letter-spacing:-.045em;
  transform:translate(-50%,-50%) scaleX(.96);
}

/* Contact readability + safer composition. */
.contact-hero h1{max-width:6.05ch;letter-spacing:-.052em}
.contact-intro{max-width:1440px}
.contact-sphere{right:-9vw}

/* CTA disc: text always gets comfortable breathing room. */
.cta-disc{padding:clamp(23px,1.7vw,29px)}
.cta-disc span{max-width:8ch;line-height:1.38}

/* Do not ask the browser to paint heavy below-fold areas until nearby. */
@supports (content-visibility:auto){
  .selected-work-section,.motion-home-section,.belief-section,.contact-details-section,.mega-footer{
    content-visibility:auto;
    contain-intrinsic-size:900px;
  }
}

@media (max-width:1100px){
  .navlinks{gap:22px}
  .inner-hero-grid{grid-template-columns:7fr 5fr}
  .inner-hero h1{font-size:clamp(76px,10.6vw,132px)}
  .founder-grid{grid-template-columns:minmax(0,5.3fr) minmax(0,6.7fr);gap:clamp(42px,5vw,70px)}
  .founder-story h2{font-size:clamp(52px,6.2vw,78px)}
  .contact-hero h1{font-size:clamp(94px,14.8vw,180px)}
  .mega-footer-stage{height:clamp(600px,69vw,820px)}
}

@media (max-width:850px){
  :root{--nav-h:74px}
  .nav.is-scrolled{height:64px}
  .inner-hero{min-height:auto;padding-top:132px;padding-bottom:78px}
  .inner-hero-grid{grid-template-columns:1fr;gap:46px}
  .inner-hero-side{max-width:560px}
  .inner-hero--about h1{max-width:7.2ch}
  .founder-grid{grid-template-columns:1fr;gap:72px}
  .founder-visual{width:min(100%,620px);margin-inline:auto}
  .portrait-frame{aspect-ratio:4/4.8}
  .founder-id{gap:20px;flex-wrap:wrap}
  .founder-story{max-width:720px}
  .story-columns{gap:22px}
  .contact-hero{min-height:auto;padding-top:132px;padding-bottom:78px}
  .contact-hero h1{font-size:clamp(82px,18vw,142px);max-width:6.2ch}
  .contact-sphere{width:58vw;right:-24vw;top:8vh;opacity:.62}
  .contact-intro{gap:28px}
  .mega-footer-stage{height:clamp(540px,94vw,700px)}
  .mega-footer-word{font-size:20.5vw;width:94vw;letter-spacing:-.04em}
  .footer-mascot{height:86%}
}

@media (max-width:520px){
  .hero{min-height:620px}
  .hero-copy{left:14px;right:14px;width:auto;bottom:70px}
  .hero h1{font-size:clamp(50px,16vw,76px);line-height:.88;letter-spacing:-.045em}
  .hero p{font-size:13px;max-width:38ch;margin-top:18px}
  .hero-index{display:none}
  .hero-scroll{left:14px;transform:none;bottom:24px}
  .inner-hero,.inner-hero--about{padding-top:112px;padding-bottom:62px}
  .inner-hero h1{font-size:clamp(58px,19.5vw,88px)!important;line-height:.82!important;letter-spacing:-.04em!important}
  .inner-hero-side{gap:24px}
  .founder-grid{gap:54px}
  .founder-visual{width:100%}
  .portrait-frame{aspect-ratio:4/5}
  .founder-id{font-size:7px;line-height:1.5}
  .founder-story h2{font-size:clamp(44px,13.5vw,64px);line-height:.92;letter-spacing:-.045em}
  .lead-copy{font-size:19px!important}
  .story-columns{margin-top:34px;padding-top:22px}
  .discipline-list{margin-top:42px}
  .discipline-list div{min-height:68px;grid-template-columns:44px 1fr}
  .contact-hero{padding-top:112px;padding-bottom:62px}
  .contact-hero h1{font-size:22vw;line-height:.78;letter-spacing:-.04em;max-width:6.2ch}
  .contact-sphere{width:82vw;right:-53vw;top:14vh;opacity:.5}
  .contact-mail-big{font-size:17px;overflow-wrap:anywhere}
  .contact-prompt{min-height:290px;padding:22px}
  .cta-disc{width:148px!important;padding:24px!important}
  .mega-footer-stage{height:510px}
  .mega-footer-word{font-size:20vw;width:94vw;top:58%;letter-spacing:-.035em;transform:translate(-50%,-50%) scaleX(.98)}
  .footer-mascot{height:78%;bottom:3%}
  .mega-footer-stage::before{width:78vw}
}

@media (prefers-reduced-motion:reduce){
  .hero video,.footer-mascot,.mega-footer-word{transform:none!important}
  .hero-scroll::before{animation:none}
}

/* STONE ISLAND / CASE 02 COVER */
.project-visual--stoneisland{background:#bcbeb7 url('../assets/stone-island/visura-stone-island-cover-v7.png') 62% center/cover no-repeat;color:#f5f4ee}
.project-visual--stoneisland::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(8,9,8,.28),transparent 24%,transparent 68%,rgba(8,9,8,.42));pointer-events:none}
.case-cover-motion{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1s ease;pointer-events:none}
.project-visual--stoneisland .case-cover-motion{object-position:62% center}
.project-visual--flaneur .case-cover-motion{object-position:center}
.case-cover-motion.is-playing{opacity:1}
.project-visual--stoneisland .study-ui,.project-visual--stoneisland .project-open,.stone-cover-copy{z-index:6}
.stone-cover-copy{position:absolute;left:clamp(18px,2.5vw,34px);right:clamp(18px,2.5vw,34px);bottom:clamp(57px,6.8vw,76px);display:flex;flex-direction:column;gap:8px;text-transform:uppercase;text-shadow:0 2px 18px rgba(0,0,0,.3)}
.stone-cover-copy span{font:800 clamp(32px,4.1vw,62px)/.86 var(--display);letter-spacing:-.055em;white-space:nowrap}
.stone-cover-copy strong{font:500 clamp(7px,.72vw,10px)/1.3 var(--mono);letter-spacing:.15em;color:#d6ff77}
.work-featured-case--stone{margin-top:clamp(82px,10vw,150px)}
.work-case-poster--stone::after{background:linear-gradient(180deg,rgba(8,9,8,.3),transparent 28%,transparent 67%,rgba(8,9,8,.46))}
.work-featured-case--stone:hover .work-case-poster img{transform:none;filter:none}
.work-poster-title--stone,.work-poster-title--flaneur,.work-poster-title--poppys{left:clamp(20px,2.3vw,34px);top:auto;bottom:clamp(54px,5vw,74px);transform:none;gap:9px;font-size:clamp(38px,5.6vw,86px);line-height:.84;letter-spacing:-.055em}
.work-poster-title--stone span,.work-poster-title--flaneur span,.work-poster-title--poppys span{white-space:nowrap}
.work-poster-title--stone strong,.work-poster-title--flaneur strong,.work-poster-title--poppys strong{padding-left:0;font:500 clamp(7px,.7vw,10px)/1.3 var(--mono);letter-spacing:.15em;color:#d6ff77}
@media(max-width:850px){.project-visual--stoneisland{background-position:64% center}.project-visual--stoneisland .case-cover-motion,.work-case-poster--stone img{object-position:64% center}.stone-cover-copy span{font-size:clamp(40px,10vw,74px)}.work-poster-title--stone,.work-poster-title--flaneur,.work-poster-title--poppys{font-size:clamp(40px,10vw,74px)}}
@media(max-width:520px){.project-visual--stoneisland{background-position:66% center}.case-cover-motion{display:none}.stone-cover-copy{bottom:58px}.stone-cover-copy span{font-size:11.5vw}.work-case-poster--stone img{object-position:66% center}.work-poster-title--stone,.work-poster-title--flaneur,.work-poster-title--poppys{bottom:52px;font-size:11.5vw}}
@media(prefers-reduced-motion:reduce){.case-cover-motion{display:none}}

/* ===================================================================
   POPPY'S BAGELS — live client case cover
   CSS-built in the client's house style (oxblood / cream / sand).
   No image dependency; swap for a real screenshot or promo still later.
   =================================================================== */
.project-visual--poppys{background:#241012 url('../assets/poppys/visura-poppys-cover.jpg') center/cover no-repeat;color:#F1EADC}
.project-visual--poppys::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(20,6,8,.45),transparent 24%,transparent 60%,rgba(20,6,8,.5));pointer-events:none}
.project-visual--poppys .study-ui{color:#F1EADC;z-index:6}
.poppys-cover-copy{position:absolute;z-index:5;left:clamp(18px,3.4vw,52px);top:50%;transform:translateY(-46%);display:flex;flex-direction:column;gap:12px;text-transform:uppercase;text-shadow:0 2px 22px rgba(30,8,10,.3)}
.poppys-cover-copy span{font:800 clamp(52px,9vw,150px)/.74 var(--display);letter-spacing:-.06em;color:#F1EADC;white-space:nowrap}
.poppys-cover-copy strong{font:500 clamp(7px,.72vw,10px)/1.3 var(--mono);letter-spacing:.16em;color:#C7BDA2}

/* work.html featured Poppy's poster (no <img>, CSS surface) */
.work-featured-case--poppys{margin-top:clamp(38px,5vw,74px)}
.work-case-poster--poppys{background:radial-gradient(120% 120% at 82% 12%,rgba(199,189,162,.32),transparent 54%),linear-gradient(145deg,#7a1c24 0%,#66181E 48%,#4a1117 100%)}
.work-case-poster--poppys::after{background:linear-gradient(180deg,rgba(20,6,8,.4),transparent 26%,transparent 60%,rgba(20,6,8,.5));box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
.work-featured-case--poppys:hover .work-case-poster--poppys{filter:saturate(1.05)}
