:root{--night:#0a1430;--sun:#ffdf00;--amber:#ffb900;--dawn:#ff8d00;--leaf:#4cc664;--paper:#f6f8fb;--sky-top:#08112b;--sky-bot:#18245a;--ink:#f6f8fb;--ink-soft:#f6f8fbb8;--line:#f6f8fb38;--sunx:10vw;--suny:95vh;--sunop:0;--px:0;--py:0;--gut:clamp(16px,5vw,80px);--ease:cubic-bezier(.7,0,.2,1)}body[data-ink=dark]{--ink:#0a1430;--ink-soft:#0a1430b8;--line:#0a143033}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--sky-bot);color:var(--ink);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:18px;line-height:1.55;transition:color .7s;overflow-x:hidden}img,video{max-width:100%;display:block}h1,h2,h3,.name,.big,output,.lede,.btn,.nav .cta{font-family:Inter Tight,Inter,system-ui,sans-serif}a{color:inherit}:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:2px}.sky{z-index:-3;background:linear-gradient(to bottom,var(--sky-top),var(--sky-bot));contain:strict;position:fixed;inset:0}.sunglow{z-index:-2;will-change:transform,opacity;pointer-events:none;opacity:0;contain:strict;background:radial-gradient(circle,#fffbe0 0 1.6%,#ffe478d9 2.6%,#ffbe3c59 8%,#ff96281f 22%,#0000 50%);width:70vmax;height:70vmax;margin:-35vmax 0 0 -35vmax;position:fixed;top:0;left:0;transform:translate(10vw,95vh)}.stars{z-index:-2;pointer-events:none;opacity:0;contain:strict;background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 28% 42%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 44% 12%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 61% 30%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 78% 16%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 88% 48%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 7% 66%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 35% 74%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 69% 62%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 93% 82%,#fff 50%,#0000 51%),radial-gradient(1px 1px at 52% 88%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 20% 92%,#fff 50%,#0000 51%);position:fixed;inset:0}.nav{z-index:50;padding:18px var(--gut);justify-content:space-between;align-items:center;gap:24px;transition:background .5s,padding .4s,box-shadow .5s;display:flex;position:fixed;inset:0 0 auto}.nav.solid{background:color-mix(in srgb,var(--sky-top) 94%,transparent);box-shadow:0 1px 0 var(--line);padding-top:12px;padding-bottom:12px}.nav .logo{width:clamp(170px,18vw,230px);color:var(--ink);transition:color .7s;display:block}.nav .logo svg{width:100%;height:auto;display:block}.nav ul{gap:clamp(14px,2.4vw,34px);margin:0;padding:0;font-size:16px;font-weight:500;list-style:none;display:flex}.nav ul a{padding:6px 0;text-decoration:none;position:relative}.nav ul a:after{content:"";background:var(--amber);transform-origin:0;height:2px;transition:transform .35s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav ul a:hover:after{transform:scaleX(1)}.nav .cta .short{display:none}.nav .cta{white-space:nowrap;background:var(--sun);color:#0a1430;border-radius:999px;padding:10px 18px;font-weight:600;text-decoration:none}.nav .cta:hover{background:var(--amber)}@media (width<=860px){.nav ul{display:none}.nav .cta{padding:8px 14px;font-size:15px}.nav .cta .long{display:none}.nav .cta .short{display:inline}}.hero{height:210vh;position:relative}.hero-pin{height:100vh;position:sticky;top:0;overflow:hidden}.array{perspective:1100px;perspective-origin:50% 20%;position:absolute;inset:0}.plane{width:min(1700px,170vw);transform:translate(-50%,-50%) rotateX(calc(64deg - var(--hp,0) * 40deg)) rotateZ(calc(-16deg + var(--hp,0) * 12deg)) scale(calc(1 + var(--hp,0) * .3));transform-style:preserve-3d;will-change:transform;grid-template-columns:repeat(9,1fr);gap:clamp(6px,.8vw,12px);display:grid;position:absolute;top:66%;left:50%}.panel{aspect-ratio:1/1.7;background:linear-gradient(90deg,#0000 calc(33% - 1px),#cdd7eb61 33%,#0000 calc(33% + 1px) calc(67% - 1px),#cdd7eb61 67%,#0000 calc(67% + 1px)) 0 0/16.6667% 100%,linear-gradient(90deg,#ffffff24 2px,#0000 2px) 0 0/16.6667% 100%,linear-gradient(#ffffff24 2px,#0000 2px) 0 0/100% 10%,linear-gradient(160deg,#1a2b62,#0b1636 70%);border:3px solid #c3ccd8;border-radius:2px;position:relative}.panel:before{content:"";animation:switchOn 1.6s var(--ease) var(--d,0s) both;background:#040915;position:absolute;inset:0}.panel:after{content:"";pointer-events:none;opacity:var(--glow,.5);background:radial-gradient(circle at var(--hx,50%) var(--hy,50%),#fff7d2f2,#ffc45073 18%,#ff8c281f 42%,transparent 62%);position:absolute;inset:0}@keyframes switchOn{0%{opacity:.92}to{opacity:0}}.hero-copy{left:var(--gut);max-width:min(1150px,92vw);transform:translateY(calc(var(--hp,0) * -34vh));opacity:calc(1 - var(--hp,0) * 1.8);position:absolute;top:clamp(100px,17vh,190px)}.hero h1{text-shadow:0 2px 18px #04091e59;letter-spacing:-.035em;margin:0;font-size:clamp(52px,9.4vw,168px);font-weight:700;line-height:.9}.hero h1 .ln{padding-bottom:.04em;display:block;overflow:hidden}.hero h1 .ln>span{animation:rise 1.2s var(--ease) both;display:block}.hero h1 .ln:nth-child(2)>span{animation-delay:.12s}.hero h1 .ln:nth-child(3)>span{animation-delay:.24s}@keyframes rise{0%{transform:translateY(105%)}to{transform:none}}.hero-copy p{text-shadow:0 1px 12px #04091ee6;max-width:36ch;color:var(--ink-soft);margin:28px 0 0;font-size:clamp(18px,1.5vw,21px);animation:1.2s .6s both fade}@keyframes fade{0%{opacity:0}to{opacity:1}}.cue{left:var(--gut);color:var(--ink-soft);opacity:calc(1 - var(--hp,0) * 4);align-items:center;gap:12px;font-size:15px;display:flex;position:absolute;bottom:28px}.cue i{transform-origin:top;background:currentColor;width:1px;height:44px;animation:2s ease-in-out infinite cue}@keyframes cue{0%{transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}.hero-after{left:var(--gut);right:var(--gut);opacity:clamp(0,calc((var(--hp,0) - .5) * 3.5),1);transform:translateY(calc((1 - var(--hp,0)) * 8vh));grid-template-columns:1.4fr 1fr;align-items:end;gap:40px;display:grid;position:absolute;bottom:9vh}.hero-after h2{letter-spacing:-.035em;text-shadow:0 2px 30px #00000040;margin:0;font-size:clamp(36px,5.2vw,88px);font-weight:700;line-height:.95}.hero-after p{text-shadow:0 1px 14px #04091ee6;max-width:40ch;margin:0 0 8px;font-size:19px}.hero-pin:after{content:"";pointer-events:none;height:55%;opacity:clamp(0,calc((var(--hp,0) - .4) * 3),1);background:linear-gradient(#0000,#060c28a6);position:absolute;inset:auto 0 0}.hero-after{z-index:2}.btn{background:var(--sun);color:#0a1430;border-radius:999px;align-items:center;gap:10px;margin-top:20px;padding:14px 24px;font-weight:600;text-decoration:none;transition:background .25s,transform .25s;display:inline-flex}.btn:hover{background:var(--amber);transform:translateY(-2px)}.btn.ghost{color:inherit;background:0 0;box-shadow:inset 0 0 0 2px}.btn.ghost:hover{background:#ffffff1a}@media (width<=860px){.hero-after{grid-template-columns:1fr;gap:12px}}.products{padding:0 var(--gut);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);display:grid;position:relative}.p-text{z-index:2;position:relative}.product{flex-direction:column;justify-content:center;max-width:620px;min-height:100vh;padding:14vh 0;display:flex}.product .kind{color:var(--ink-soft);margin:0 0 14px;font-size:17px;font-weight:500}.product h2{letter-spacing:-.035em;margin:0;font-size:clamp(46px,6.2vw,108px);font-weight:700;line-height:.92}.product h2 small{letter-spacing:-.02em;color:var(--ink-soft);margin-bottom:.2em;font-size:.42em;font-weight:500;display:block}.product .lede{letter-spacing:-.01em;max-width:24ch;margin:30px 0 14px;font-size:clamp(22px,2vw,28px);font-weight:600;line-height:1.25}.product p{max-width:46ch;color:var(--ink-soft);margin:0 0 12px}.attrs{grid-template-columns:1fr 1fr;gap:10px 28px;max-width:440px;margin:22px 0 4px;padding:0;font-size:17px;font-weight:500;list-style:none;display:grid}.attrs li{align-items:center;gap:12px;display:flex}.attrs li:before{content:"";opacity:.8;background:linear-gradient(currentColor,currentColor) 50% 0/2px 100% no-repeat;border:2px solid;border-radius:1px;flex:none;width:14px;height:22px}.product .links{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.p-visual{flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:90px 0 30px;display:flex;position:sticky;top:0}.tabs{flex-wrap:wrap;justify-content:center;gap:6px 22px;margin-bottom:22px;font-size:16px;font-weight:500;display:flex}.tabs button{all:unset;cursor:pointer;color:var(--ink-soft);padding:6px 0;transition:color .3s;position:relative}.tabs button:after{content:"";background:var(--dawn);height:3px;transition:transform .45s var(--ease);border-radius:3px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.tabs button[aria-selected=true]{color:var(--ink)}.tabs button[aria-selected=true]:after{transform:scaleX(1)}.tabs button:focus-visible{outline:3px solid var(--amber)}.stage{aspect-ratio:1/.98;width:min(100%,780px);position:relative}.photos{background:linear-gradient(135deg,#1c2c5e,#41588f);border-radius:6px;width:80%;height:74%;position:absolute;top:0;right:0;overflow:hidden;box-shadow:0 50px 90px -40px #050a2899}.photos>*{object-fit:cover;clip-path:inset(100% 0 0);width:100%;height:100%;transition:clip-path 1.1s var(--ease),transform 1.6s var(--ease);position:absolute;inset:0;transform:scale(1.14)}.photos>.on{clip-path:inset(0);transform:scale(1)}.photos figcaption{display:none}.photo-label{z-index:3;color:#fff;background:#081028b3;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:500;position:absolute;bottom:12px;right:14px}.pane-wrap{perspective:1100px;z-index:4;contain:layout;width:41%;position:absolute;bottom:2%;left:0}.pane{aspect-ratio:1/1.62;transform:rotateY(calc(-24deg + var(--px) * 16deg)) rotateX(calc(var(--tiltx,8deg) - var(--py) * 10deg)) rotateZ(var(--tiltz,0deg));background:#0f1d44;border:7px solid #d2d9e2;border-radius:3px;transition:transform .35s ease-out,background .8s,border-width .8s,border-color .8s;position:relative;overflow:hidden;box-shadow:-40px 60px 90px -30px #03081ea6,inset 0 0 0 1px #fff3}.cells{grid-template-rows:repeat(10,1fr);grid-template-columns:repeat(6,1fr);gap:3px;transition:opacity .8s;display:grid;position:absolute;inset:3.5%}.cell{transform:scale(var(--cs,1));transition:transform .6s var(--ease),background .8s;background:linear-gradient(150deg,#22397a,#0c1838);position:relative}.cell:after{content:"";background:linear-gradient(90deg,#0000 31%,#d6def080 31% 33.5%,#0000 33.5% 66.5%,#d6def080 66.5% 69%,#0000 69%);position:absolute;inset:0}.texture{background:var(--tex,none) center/cover;opacity:0;transition:opacity .7s,background-image .2s;position:absolute;inset:0}.sheen{pointer-events:none;transform:translateX(calc((var(--px) - .5) * 60%));background:linear-gradient(115deg,#0000 35%,#ffffff38 48%,#0000 60%);position:absolute;inset:-20%}.floor{transform-origin:top;opacity:0;pointer-events:none;background:radial-gradient(at 40% 18%,#ffd678b3,#ffb4502e 45%,#0000 70%);height:70%;transition:opacity .8s;position:absolute;top:96%;left:-30%;right:-60%;transform:rotateX(76deg)}.floor .cells{gap:6px;inset:6% 30% 20% 22%}.floor .cell{background:#081230bf}.floor .cell:after{display:none}.stage[data-mode=translucent] .pane{background:#cde6ff47}.stage[data-mode=translucent] .cell{--cs:var(--trans,.72)}.stage[data-mode=translucent] .floor{opacity:1}.stage[data-mode=translucent] .floor .cell{--cs:var(--trans,.72)}.stage[data-mode=colour] .texture{opacity:1}.stage[data-mode=colour] .pane>.cells{opacity:.14}.stage[data-mode=greenhouse] .pane{--tiltx:38deg;--tiltz:-6deg;border-width:12px;border-color:#e3e8ee}.stage[data-mode=greenhouse] .cell{background:linear-gradient(150deg,#2b4692,#10204a)}.stage[data-mode=standard] .pane{border-color:#1b1f28}.stage[data-mode=standard] .cell{background:linear-gradient(150deg,#1a1d26,#07080c)}.readout{z-index:5;color:#f6f8fb;opacity:0;pointer-events:none;width:min(54%,380px);transition:opacity .5s,transform .6s var(--ease);background:#08102cf0;border-radius:10px;padding:18px 20px;position:absolute;bottom:2%;right:0;transform:translateY(16px)}.readout.on{opacity:1;pointer-events:auto;transform:none}.readout h3{color:#f6f8fbbf;margin:0 0 10px;font-size:16px;font-weight:600}.readout output,.readout .big{letter-spacing:-.03em;font-size:clamp(34px,3.4vw,52px);font-weight:700;line-height:1;display:block}.readout .row{gap:26px;display:flex}.readout .row span{color:#f6f8fbb3;margin-top:6px;font-size:14px;display:block}.readout input[type=range]{width:100%;accent-color:var(--sun);margin:12px 0 2px}.swatches{flex-wrap:wrap;gap:10px;display:flex}.swatches button{all:unset;cursor:pointer;background:var(--tex) center/cover;border-radius:6px;width:52px;height:52px;transition:transform .25s,box-shadow .25s;box-shadow:inset 0 0 0 2px #ffffff4d}.swatches button[aria-pressed=true]{box-shadow:inset 0 0 0 3px var(--sun);transform:translateY(-3px)}.swatches button:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.swatch-name{color:#f6f8fbcc;margin-top:10px;font-size:15px}@media (width<=900px){.products{grid-template-columns:1fr}.p-visual{z-index:3;background:linear-gradient(to bottom,var(--pv-bg,#6fa8de) 70%,transparent);order:-1;height:58vh;padding:70px 0 8px}.stage{width:min(100%,460px)}.tabs{display:none}.product{min-height:auto;padding:10vh 0 14vh}.readout{width:60%;padding:12px 14px}.readout output,.readout .big{font-size:28px}.swatches button{width:38px;height:38px}.photo-label,.floor{display:none}}.dn{height:260vh;position:relative}.dn-pin{height:100vh;padding:80px var(--gut) 40px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center;gap:clamp(24px,4vw,64px);display:grid;position:sticky;top:0}.dn h2{letter-spacing:-.035em;margin:0;font-size:clamp(44px,6vw,108px);font-weight:700;line-height:.88}.dn h2 .swap{display:grid}.dn h2 .swap span{transition:opacity .5s,transform .7s var(--ease);grid-area:1/1}.dn h2 .swap .n{opacity:0;transform:translateY(30%)}.dn[data-night="1"] .swap .d{opacity:0;transform:translateY(-30%)}.dn[data-night="1"] .swap .n{opacity:1;transform:none}.dn p{max-width:40ch;color:var(--ink-soft);margin:24px 0 0}.dn-img{aspect-ratio:16/10;background:#cfdbe8;border-radius:8px;position:relative;overflow:hidden;box-shadow:0 60px 100px -50px #00001e99}.dn-img img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.dn-img .night{clip-path:inset(0 0 0 calc((1 - var(--night,0)) * 100%))}.dn-img .edge{top:0;bottom:0;left:calc((1 - var(--night,0)) * 100%);background:#fff;width:2px;position:absolute;box-shadow:0 0 20px #fff8c8}.dn-img .edge:after{content:"";background:radial-gradient(circle at 35% 35%,#fff7c2,#ffdf00 40%,#ff8d00);border-radius:50%;width:44px;height:44px;margin:-22px 0 0 -22px;position:absolute;top:50%;left:50%;box-shadow:0 0 30px #ffc83ccc}@media (width<=900px){.dn-pin{grid-template-columns:1fr;align-content:center}}.seen{padding:16vh var(--gut) 12vh;position:relative}.seen-intro{grid-template-columns:1fr 1fr;align-items:end;gap:40px;margin-bottom:clamp(32px,5vh,56px);display:grid}.seen-intro h2{letter-spacing:-.03em;margin:0;font-size:clamp(38px,4.6vw,76px);font-weight:700;line-height:.98}.seen-intro p{max-width:44ch;color:var(--ink-soft);margin:0}.bgrid{grid-template-rows:clamp(340px,40vw,600px) clamp(220px,19vw,280px);grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(12px,1.3vw,20px);display:grid}.bcard{isolation:isolate;color:#fff;background:linear-gradient(150deg,#1d3270,#0b1636);border-radius:12px;text-decoration:none;display:block;position:relative;overflow:hidden}.bcard:first-child{grid-column:1/span 7}.bcard:nth-child(2){grid-column:8/span 5}.bcard:nth-child(3){grid-column:1/span 5}.bcard:nth-child(4){grid-column:6/span 7}.bcard img{object-fit:cover;z-index:-2;width:100%;height:100%;transition:transform 1.6s var(--ease);position:absolute;inset:0;transform:scale(1.02)}.bcard:after{content:"";z-index:-1;background:linear-gradient(#050a2000 30%,#050a2059 58%,#050a20e0 100%);position:absolute;inset:0}.bcard.cellwork{background:radial-gradient(circle at 88% 12%,#ffd65a80,#ffa0281f 22%,#0000 46%),linear-gradient(90deg,#0000 calc(50% - 1px),#d6def029 50%,#0000 calc(50% + 1px)) 0 0/56px 100%,linear-gradient(90deg,#ffffff1a 2px,#0000 2px) 0 0/56px 100%,linear-gradient(#ffffff1a 2px,#0000 2px) 0 0/100% 56px,linear-gradient(150deg,#22397a,#0b1636 70%)}.bcard.cellwork:after{background:linear-gradient(#0000 25%,#050a20cc)}.bcard .tag{background:#060c248c;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:600;position:absolute;top:clamp(16px,1.6vw,24px);left:clamp(16px,1.6vw,24px);box-shadow:inset 0 0 0 1px #ffffff38}.bcard .meta{justify-content:space-between;align-items:flex-end;gap:20px;display:flex;position:absolute;bottom:clamp(18px,2vw,30px);left:clamp(18px,2vw,32px);right:clamp(18px,2vw,32px)}.bcard h3{letter-spacing:-.03em;margin:0;font-size:clamp(28px,3.2vw,54px);font-weight:700;line-height:1}.bcard:nth-child(n+3) h3{font-size:clamp(24px,2.4vw,38px)}.bcard .city{color:#ffffffc7;margin-top:8px;font-size:15px;display:block}.go{width:48px;height:48px;transition:background .35s,color .35s,transform .45s var(--ease);background:#ffffff24;border-radius:50%;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #ffffff4d}.go svg{width:18px;height:18px}.bcard:hover img{transform:scale(1.07)}.bcard:hover .go,.card:hover .go,.bcard:focus-visible .go,.card:focus-visible .go{background:var(--sun);color:#0a1430;box-shadow:none;transform:rotate(-45deg)}.proof{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(36px,6vh,64px);display:grid}.proof div{border-left:1px solid var(--line);padding:26px 28px 0}.proof div:first-child{border-left:0;padding-left:0}.proof b{letter-spacing:-.02em;font-family:Inter Tight,Inter,sans-serif;font-size:clamp(24px,2.4vw,36px);font-weight:700;line-height:1.1;display:block}.proof span{color:var(--ink-soft);margin-top:6px;font-size:16px;display:block}@media (width<=860px){.seen-intro{grid-template-columns:1fr}.bgrid{grid-template-rows:none;grid-template-columns:1fr;grid-auto-rows:auto}.bcard:nth-child(n){grid-column:auto;min-height:300px}.bcard:nth-child(n+3){min-height:190px}.proof{grid-template-columns:1fr}.proof div{border-left:0;padding:20px 0 0}}.projects{padding:12vh 0 14vh}.projects-head{padding:0 var(--gut);justify-content:space-between;align-items:end;gap:20px;margin-bottom:clamp(28px,5vh,48px);display:flex}.projects-head h2{letter-spacing:-.03em;margin:0;font-size:clamp(38px,4.6vw,76px);font-weight:700;line-height:.98}.projects-head p{max-width:46ch;color:var(--ink-soft);margin:14px 0 0}.pnav{align-items:center;gap:18px;display:flex}.count{color:var(--ink-soft);font-variant-numeric:tabular-nums;text-align:right;min-width:4.5em;font-size:15px}.arrows{gap:10px;display:flex}.arrows button{all:unset;cursor:pointer;width:54px;height:54px;box-shadow:inset 0 0 0 1px var(--line);border-radius:50%;place-items:center;transition:background .25s,box-shadow .25s;display:grid}.arrows button:hover{background:#ffffff1a;box-shadow:inset 0 0 0 1px}.arrows button:focus-visible{outline:3px solid var(--amber)}.arrows svg{width:20px;height:20px}.track{scroll-snap-type:x mandatory;scroll-padding-left:var(--gut);padding:0 var(--gut) 4px;scrollbar-width:none;cursor:grab;gap:clamp(12px,1.3vw,20px);display:flex;overflow-x:auto}.track::-webkit-scrollbar{display:none}.track.drag{cursor:grabbing;scroll-snap-type:none}.card{isolation:isolate;aspect-ratio:3/4;scroll-snap-align:start;color:#fff;-webkit-user-select:none;user-select:none;background:#1a2a58;border-radius:12px;flex:none;height:clamp(380px,60vh,620px);text-decoration:none;position:relative;overflow:hidden}.card.wide{aspect-ratio:4/3}.card img{object-fit:cover;z-index:-2;width:100%;height:100%;transition:transform 1.4s var(--ease);-webkit-user-drag:none;position:absolute;inset:0}.card:after{content:"";z-index:-1;background:linear-gradient(#050a2000 55%,#050a20d9);position:absolute;inset:0}.card:hover img{transform:scale(1.06)}.card .meta{justify-content:space-between;align-items:flex-end;gap:16px;display:flex;position:absolute;bottom:22px;left:22px;right:22px}.card h3{letter-spacing:-.02em;margin:0;font-size:clamp(22px,1.9vw,30px);font-weight:700;line-height:1.08}.progress{height:2px;margin:clamp(24px,4vh,40px) var(--gut) 0;background:var(--line);border-radius:2px;position:relative;overflow:hidden}.progress i{background:var(--sun);transform-origin:0;border-radius:2px;width:20%;position:absolute;top:0;bottom:0;left:0}@media (width<=860px){.card{height:56vh}.card.wide{aspect-ratio:3/4}.count{display:none}}.group{padding:10vh var(--gut) 6vh}.group-head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(24px,4vh,40px);display:flex}.group-head h2{letter-spacing:-.025em;margin:0;font-size:clamp(28px,2.8vw,44px);font-weight:700;line-height:1.05}.group-head p{max-width:40ch;color:var(--ink-soft);margin:0}.logos{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.logos li+li{border-left:1px solid var(--line)}.logos a{flex-direction:column;justify-content:space-between;gap:28px;height:100%;padding:clamp(28px,4vw,52px) clamp(18px,2vw,32px);text-decoration:none;transition:background .4s;display:flex}.logos img{object-fit:contain;object-position:left center;opacity:.82;width:auto;max-width:100%;height:clamp(40px,3.6vw,56px);transition:opacity .4s,transform .5s var(--ease)}.logos span{color:var(--ink-soft);justify-content:space-between;align-items:center;font-size:15px;display:flex}.logos span svg{width:16px;height:16px;transition:transform .4s var(--ease)}.logos a:hover{background:#ffffff0a}.logos a:hover img{opacity:1;transform:translateY(-3px)}.logos a:hover span svg{transform:rotate(-45deg)}@media (width<=860px){.group-head{flex-direction:column;align-items:flex-start}.logos{grid-template-columns:1fr 1fr}.logos li:nth-child(3){border-left:0}.logos li:nth-child(n+3){border-top:1px solid var(--line)}}.contact{padding:12vh var(--gut) 40px;position:relative;overflow:hidden}.contact .mark{opacity:.95;pointer-events:none;z-index:0;width:min(30vw,440px);position:absolute;top:8vh;right:-4vw}.contact h2{z-index:2;position:relative}@media (width<=860px){.contact .mark{opacity:.35;width:46vw;top:auto;bottom:-8vw}}.contact h2{letter-spacing:-.035em;max-width:9ch;margin:0;font-size:clamp(52px,9vw,160px);font-weight:700;line-height:.9}.contact .lines{z-index:2;grid-template-columns:repeat(3,minmax(0,max-content));gap:24px 6vw;margin:7vh 0 12vh;font-size:clamp(19px,1.6vw,24px);display:grid;position:relative}.contact .lines a{font-weight:600;text-decoration:none}.contact .lines a:hover{color:var(--sun)}.contact .lines span{color:var(--ink-soft);margin-bottom:4px;font-size:15px;font-weight:500;display:block}.legal{z-index:2;color:var(--ink-soft);border-top:1px solid var(--line);flex-wrap:wrap;gap:10px 30px;padding-top:22px;font-size:14px;display:flex;position:relative}.legal a{text-decoration:none}@media (width<=860px){.contact .lines{grid-template-columns:1fr}}.mark .ray{transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.contact .mark .glow{animation:5s ease-in-out infinite breathe}}@keyframes breathe{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}.plane{transform:translate(-50%,-50%)rotateX(52deg)rotate(-10deg)}html{scroll-behavior:auto}}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}
