:root{--bg:#181a1b;--bg-deep:#111314;--ink:#151617;--paper:#eeece5;--paper-line:rgba(21,22,23,.085);--hero-gray:#8e8a82;--grid-columns:12;--grid-column:8.333333%;--grid-row-size:320px;--muted:#6f716f;--accent:#f04b32;--gold:#caa56b;--header:84px;--header-pad:clamp(24px,4vw,72px);--side:clamp(20px,3.3vw,58px);--page-max:1440px;--content-max:1180px;--sans:"Manrope","Avenir Next","Segoe UI",ui-sans-serif,system-ui,sans-serif;--display:"Raleway","Avenir Next","Century Gothic","Segoe UI",sans-serif;--hero-display:"Archivo","Helvetica Neue",Arial,sans-serif;--technical:"IBM Plex Mono","Roboto Mono","Courier New",monospace;--ease:cubic-bezier(.2,.72,.2,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 18px);overflow-x:clip;background:var(--paper);color-scheme:only light}
body{margin:0;min-width:0;color:var(--ink);background:var(--paper);font-family:var(--sans);overflow-x:clip;text-rendering:optimizeLegibility;color-scheme:only light}

a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
img{display:block;max-width:100%}
::selection{background:var(--accent);color:#fff}
.skip{position:fixed;z-index:5000;left:18px;top:14px;transform:translateY(-180%);background:#fff;color:#111;padding:10px 14px;font-size:12px;transition:transform .2s}
.skip:focus{transform:none}
.site-header{position:fixed;z-index:1000;inset:0 0 auto;height:var(--header);display:flex;align-items:center;color:#fff;background:transparent;border:0;border-bottom:1px solid transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;transition:background-color .28s ease,border-color .28s ease,-webkit-backdrop-filter .28s ease,backdrop-filter .28s ease}.site-header.is-glass{background:rgba(25,26,28,.72);border-bottom-color:rgba(255,255,255,.14);-webkit-backdrop-filter:blur(20px) saturate(.80);backdrop-filter:blur(20px) saturate(.80)}
.header-inner{width:100%;max-width:none;height:100%;margin:0;padding:0 var(--header-pad);display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{justify-self:start;width:92px;display:inline-flex;align-items:center}
.brand img{width:100%;height:auto}
.header-cta,.lang{position:relative;padding:9px 0;border:0;background:none;font-family:var(--sans);font-size:9px;font-weight:500;line-height:1;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.67);cursor:pointer;white-space:nowrap}
.header-cta::after,.lang::after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:1px;background:#fff;transition:right .28s var(--ease)}
.header-cta:hover,.header-cta:focus-visible,.lang:hover,.lang:focus-visible,.lang.active{color:#fff;outline:none}
.header-cta:hover::after,.header-cta:focus-visible::after,.lang:hover::after,.lang:focus-visible::after,.lang.active::after{right:0}
.header-tools{justify-self:end;display:flex;align-items:center;gap:clamp(14px,1.7vw,28px)}
.header-contact{display:flex;align-items:center;gap:10px}
.header-whatsapp{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:#fff;background:#25d366;box-shadow:0 4px 14px rgba(0,0,0,.16);transition:transform .24s var(--ease),filter .24s ease}
.header-whatsapp svg{display:block;width:16px;height:16px;overflow:visible}
.header-whatsapp:hover,.header-whatsapp:focus-visible{outline:none;transform:translateY(-2px);filter:brightness(1.05)}
.language-switch{display:flex;align-items:center;gap:8px}
.lang{min-width:34px;min-height:40px;padding-inline:5px}
.lang+.lang::before{content:"/";position:absolute;left:-7px;color:rgba(255,255,255,.22)}
.lang.active::after{background:var(--accent)}






.content-frame{width:min(calc(100% - 2*var(--side)),var(--content-max));margin-inline:auto;min-width:0}
.paper-grid{background-color:var(--paper);background-image:linear-gradient(to right,var(--paper-line) 1px,transparent 1px),linear-gradient(to bottom,var(--paper-line) 1px,transparent 1px);background-size:var(--grid-column) 100%,100% var(--grid-row-size);background-repeat:repeat-x,repeat-y;background-position:0 0}
.coordinate-surface{position:relative;isolation:isolate}
.projects-main>section,.project-ending{position:relative;z-index:1}
.coordinate-cursor{position:fixed;z-index:1400;top:0;left:0;width:30px;height:30px;pointer-events:none;opacity:0;transform:translate3d(-60px,-60px,0);will-change:transform;mix-blend-mode:difference}
.coordinate-cursor::before,.coordinate-cursor::after{content:"";position:absolute;left:50%;top:50%;background:#fff;transform:translate(-50%,-50%)}
.coordinate-cursor::before{width:30px;height:1px}
.coordinate-cursor::after{width:1px;height:30px}
.coordinate-readout{position:fixed;z-index:900;top:calc(var(--header) + 24px);right:max(var(--side),24px);display:grid;grid-template-columns:auto auto;column-gap:9px;min-width:112px;margin:0;padding:2px 0 2px 12px;border:0;border-left:1px solid rgba(21,22,23,.28);background:transparent;color:rgba(21,22,23,.56);font:500 10px/1.55 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:.07em;pointer-events:none;opacity:0;transition:opacity .16s ease}
.coordinate-readout span{display:contents}
.coordinate-readout b,.coordinate-readout strong{font:inherit}
.coordinate-readout b{color:rgba(21,22,23,.42)}
.coordinate-readout strong{text-align:right;color:rgba(21,22,23,.68)}
.coordinate-markers{position:absolute;z-index:0;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}
.coordinate-marker{position:absolute;display:inline-flex;align-items:center;justify-content:center;min-height:14px;padding:0 5px;background:var(--paper);color:rgba(21,22,23,.43);font:500 8px/1 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:.075em;white-space:nowrap;transform:translate(-50%,-50%);transition:color .16s ease,opacity .16s ease;opacity:.82}
.coordinate-marker[data-coordinate-orientation="vertical"]{transform:translate(-50%,-50%) rotate(-90deg)}
.coordinate-marker[data-coordinate-edge="left"]{transform:translate(0,-50%)}
.coordinate-marker[data-coordinate-edge="right"]{transform:translate(-100%,-50%)}
.coordinate-surface.coordinate-active .coordinate-marker{color:rgba(21,22,23,.58)}
.coordinate-surface.coordinate-active .coordinate-cursor,.coordinate-surface.coordinate-active .coordinate-readout{opacity:1}
@media(hover:hover) and (pointer:fine){html.coordinate-cursor-ready .coordinate-surface,html.coordinate-cursor-ready .coordinate-surface *{cursor:none!important}
}
.hero{position:relative;overflow:hidden;padding-top:0;background:#111214;display:grid;place-items:start center;isolation:isolate}
.project-hero-stage{position:relative;width:100vw;max-width:none;aspect-ratio:16/9;overflow:hidden;background:#111214;container-type:inline-size}
.project-hero-media{position:absolute;inset:0;overflow:hidden;background:#111214}
.project-hero-poster,.project-hero-video{position:absolute;inset:0;width:100%;height:100%}
.project-hero-poster{display:block;margin:0}
.project-hero-poster img,.project-hero-video{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:saturate(.94) contrast(1.01) brightness(.82)}
.project-hero-video{opacity:0;transition:opacity .34s ease}
.project-hero-video.is-ready{opacity:1}
.project-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,9,10,.62) 0%,rgba(8,9,10,.38) 34%,rgba(8,9,10,.13) 62%,rgba(8,9,10,.035) 82%,transparent 100%),linear-gradient(180deg,rgba(8,9,10,.16) 0%,transparent 35%,rgba(8,9,10,.08) 62%,rgba(8,9,10,.44) 100%)}
.project-hero-socials{position:absolute;z-index:3;left:clamp(26px,5.2vw,100px);bottom:max(clamp(34px,5.2vw,88px),calc(100% - 100svh + clamp(34px,5.2vw,88px)));display:flex;align-items:center;gap:10px}
.project-hero-social{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;border:1px solid rgba(255,255,255,.64);background:transparent;transition:transform .24s var(--ease),border-color .24s ease}
.project-hero-social svg{display:block;width:15px;height:15px;overflow:visible}
.project-hero-social--behance svg{width:18px;height:18px}
.project-hero-social:hover,.project-hero-social:focus-visible{outline:none;border-color:#fff;transform:translateY(-2px)}
.project-hero-form{position:absolute;z-index:3;right:clamp(18px,2.8vw,54px);bottom:max(clamp(10px,1.4vw,26px),calc(100% - 100svh + clamp(10px,1.4vw,26px)));margin:0;color:#fff;font-family:var(--sans);font-size:clamp(48px,min(10.4vw,max(48px,calc((100svh - 17.44vw - 196px)*1.28))),202px);font-weight:800;line-height:.78;letter-spacing:-.066em;text-shadow:0 2px 18px rgba(0,0,0,.12);pointer-events:none;user-select:none}
.project-hero-stage::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(to right,rgba(238,236,229,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(238,236,229,.035) 1px,transparent 1px);background-size:var(--grid-column) 100%,100% var(--grid-row-size);background-repeat:repeat-x,repeat-y;background-position:0 0}
.hero-inner{position:absolute;z-index:2;top:0;left:clamp(26px,5.2vw,100px);right:auto;bottom:max(0px,calc(100% - 100svh));width:min(42vw,760px);margin:0;padding:calc(var(--header) + clamp(18px,min(3.15cqw,5vh),54px)) 0 clamp(24px,min(2.5cqw,4vh),42px);display:flex;flex-direction:column;min-width:0}
.eyebrow,.hero-title,.hero-copy{position:relative;z-index:2}
.eyebrow{margin:0 0 clamp(12px,min(2.25cqw,4vh),34px);font:500 9px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:rgba(238,236,229,.70)}
.hero-editorial{display:flex;flex:1;min-height:0;flex-direction:column;align-items:flex-start}
.hero-title{margin:0;max-width:10.4ch;color:var(--paper);font-family:var(--hero-display);font-weight:500;font-size:clamp(54px,min(5.75cqw,10vh),104px);line-height:.89;letter-spacing:-.055em;text-transform:uppercase;text-wrap:balance;text-shadow:0 8px 28px rgba(0,0,0,.28)}
.hero-title span{display:block}
.hero-copy{width:min(430px,41cqw);margin-top:clamp(24px,min(5cqw,7vh),82px);padding-top:clamp(10px,min(1.15cqw,2.5vh),20px);border-top:1px solid rgba(238,236,229,.48)}
.hero-copy__text{margin:0;color:rgba(238,236,229,.94);font-family:var(--sans);font-size:clamp(14px,1.08cqw,20px);font-weight:500;line-height:1.16;letter-spacing:-.032em;text-wrap:balance;text-shadow:0 4px 18px rgba(0,0,0,.28)}
.hero-enter{opacity:0;transform:translateY(18px);animation:hero-enter .72s var(--ease) forwards}
.hero-enter--1{animation-delay:.08s}
.hero-enter--2{animation-delay:.16s}
.hero-enter--3{animation-delay:.25s}
.hero-enter--4{animation-delay:.34s}
@keyframes hero-enter{to{opacity:1;transform:none}}
.projects{padding:clamp(28px,3vw,44px) 0 0}
.projects-frame{width:100%;margin-inline:auto}
.projects-grid{--projects-gap:28px;--projects-duration:72s;width:100%;overflow:hidden}
.projects-track{display:flex;width:max-content;will-change:transform}
.projects-group{display:flex;flex:none;align-items:flex-start;gap:var(--projects-gap);padding-right:var(--projects-gap)}
.project-card{position:relative;display:grid;flex:0 0 calc((100vw - 84px)/4);grid-template-columns:1fr;gap:16px;min-width:0;color:var(--ink);background:transparent;border:0;box-shadow:none;isolation:isolate;container-type:inline-size}
.projects-grid.is-ready .projects-track{animation:projects-rail-left var(--projects-duration) linear infinite}
@keyframes projects-rail-left{from{transform:translate3d(0,0,0)}
to{transform:translate3d(-50%,0,0)}
}
.project-visual{position:relative;min-width:0;height:max(clamp(160px,13vw,220px),42.28cqw);overflow:hidden;background:transparent;isolation:isolate}
.project-media{position:absolute;inset:0;overflow:hidden;background:transparent}
.project-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;filter:grayscale(.08) saturate(.91) brightness(.94);transition:opacity 1.05s ease,filter .45s ease;will-change:opacity}
.project-slide.is-active{opacity:1}
.project-visual::before{content:"";position:absolute;z-index:1;top:-25%;bottom:-25%;left:-52%;width:30%;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),rgba(255,255,255,.025),transparent);transform:skewX(-18deg)}

.project-title{position:relative;z-index:3;margin-top:0;color:var(--ink)}
.project-title h2{margin:0;font:500 clamp(20px,2vw,26px)/1.1 var(--display);letter-spacing:-.032em}
.project-data{min-width:0;display:flex;flex-direction:column;padding-left:clamp(11px,1.2vw,17px);border-left:1px solid rgba(21,22,23,.42)}
.project-data-lines{display:grid;width:100%;min-width:0}
.project-data-line{margin:0;padding:clamp(10px,1.1vw,14px) 0;border-top:1px solid rgba(21,22,23,.25);color:rgba(21,22,23,.66);font:400 clamp(8.5px,1.45cqw,10px)/1.45 var(--sans);letter-spacing:-.005em;text-wrap:pretty}
.project-data-line:last-child{border-bottom:1px solid rgba(21,22,23,.25)}
.project-data-line--key{color:rgba(21,22,23,.78);font-family:var(--technical);font-weight:500;font-size:clamp(7.5px,1.2cqw,8.5px);line-height:1.35;letter-spacing:.075em;text-transform:uppercase}
.project-arrow{display:block;width:clamp(27px,4.1cqw,38px);height:auto;margin-top:auto;padding-top:clamp(22px,3vw,38px);color:rgba(21,22,23,.82);transition:transform .26s var(--ease),color .2s ease}
.project-arrow svg{display:block;width:100%;height:auto;overflow:visible}
.project-arrow path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:square;stroke-linejoin:miter;vector-effect:non-scaling-stroke}
.project-card:hover .project-slide,.project-card:focus-visible .project-slide{filter:grayscale(0) saturate(.98) brightness(.94)}
@media(hover:hover) and (pointer:fine){.project-card:hover .project-visual::before,.project-card:focus-visible .project-visual::before{opacity:1;animation:project-sheen 1.05s var(--ease) both}
}
@keyframes project-sheen{from{transform:translateX(0) skewX(-18deg)}
to{transform:translateX(560%) skewX(-18deg)}
}
.project-card:hover .project-data,.project-card:focus-visible .project-data{border-left-color:rgba(21,22,23,.72)}
.project-card:hover .project-data-line,.project-card:focus-visible .project-data-line{border-color:rgba(21,22,23,.42)}
.project-card:hover .project-arrow,.project-card:focus-visible .project-arrow{color:var(--ink);transform:translate(4px,-4px)}
.project-card:focus-visible{outline:1px solid var(--ink);outline-offset:5px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .78s var(--ease),transform .78s var(--ease)}
.reveal.visible{opacity:1;transform:none}
.rails-wrap--houses{--rails-margin:24px;margin-bottom:40px}
.rails-wrap{width:100%;margin:var(--rails-margin,clamp(60px,6vw,96px)) 0 0;overflow:hidden;padding-block:clamp(10px,.9vw,16px)}
.rail{width:100%;overflow:hidden}
.rail,.projects-grid{touch-action:pan-y pinch-zoom;user-select:none}
.rail.is-held>.rail-track,.projects-grid.is-held>.projects-track{animation-play-state:paused}
.is-dragging,.is-dragging a,.is-dragging button{cursor:grabbing}
.rail+.rail{margin-top:clamp(2.5px,.21vw,4px)}
.rail-track{display:flex;width:max-content;gap:0;will-change:transform}
.rail-group{display:flex;flex:none;gap:var(--rail-gap,3.5px);padding-right:var(--rail-gap,3.5px)}
.rail-item{appearance:none;flex:none;height:clamp(192px,15.47vw,283px);margin:0;padding:0;border:0;background:transparent;cursor:pointer}
.rail-item img{display:block;width:auto;height:100%;max-width:none;pointer-events:none;user-select:none}
.rail-item:focus-visible{outline:1px solid rgba(21,22,23,.58);outline-offset:3px}
.rail.is-ready .rail-track{animation-duration:var(--rail-duration,80s);animation-timing-function:linear;animation-iteration-count:infinite}
.rail--left.is-ready .rail-track{animation-name:rail-left}
.rail--right.is-ready .rail-track{animation-name:rail-right}
.rail--american{--rail-duration:94s}
.rail--interiors{--rail-duration:183.05s}
.rail--workplace{--rail-duration:114s}
@keyframes rail-left{from{transform:translate3d(0,0,0)}
to{transform:translate3d(-50%,0,0)}
}
@keyframes rail-right{from{transform:translate3d(-50%,0,0)}
to{transform:translate3d(0,0,0)}
}
body.visual-lightbox-open{overflow:hidden}
body.visual-lightbox-open .rail-track{animation-play-state:paused}
.visual-lightbox{position:fixed;inset:0;z-index:6000;display:grid;place-items:center;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100dvh;padding:clamp(18px,2vw,32px);background:rgba(25,26,28,.96);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .24s ease,visibility .24s ease}
.visual-lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}
.visual-lightbox__image{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;user-select:none;box-shadow:none}
.visual-lightbox__close,.visual-lightbox__nav{position:fixed;z-index:2;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(25,26,28,.35);color:#fff;cursor:pointer}
.visual-lightbox__close{top:clamp(16px,2.6vw,34px);right:clamp(16px,2.6vw,34px)}
.visual-lightbox__close::before,.visual-lightbox__close::after{content:"";position:absolute;left:12px;right:12px;top:50%;height:1px;background:rgba(255,255,255,.82)}
.visual-lightbox__close::before{transform:rotate(45deg)}
.visual-lightbox__close::after{transform:rotate(-45deg)}
.visual-lightbox__nav{top:50%;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%)}
.visual-lightbox__nav svg{display:block;width:18px;height:18px}
.visual-lightbox__nav--prev{left:clamp(12px,2vw,24px)}
.visual-lightbox__nav--next{right:clamp(12px,2vw,24px)}
.visual-lightbox__close:hover,.visual-lightbox__close:focus-visible,.visual-lightbox__nav:hover,.visual-lightbox__nav:focus-visible{border-color:rgba(255,255,255,.62);outline:none}
.project-ending{padding:clamp(30px,3.2vw,46px) 0 clamp(34px,3.6vw,54px);color:var(--ink)}
.ending-panel{width:min(calc(100% - 2*var(--side)),var(--page-max));margin-inline:auto}
.ending-shell{min-height:0;display:block;border:0;background:transparent}
.ending-main{min-width:0;display:block;padding:0;font-family:var(--sans);text-transform:none}
.ending-context{margin:0;color:rgba(21,22,23,.55);font:600 9px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.ending-statement{margin:clamp(20px,2vw,30px) 0 0;max-width:1040px;color:#646a6c;font:600 clamp(56px,6.8vw,104px)/.92 var(--sans);letter-spacing:-.035em;text-wrap:balance}
.ending-principles{display:flex;flex-wrap:wrap;gap:6px clamp(20px,3vw,42px);margin:clamp(30px,3vw,46px) 0 0;color:rgba(21,22,23,.68);font:600 clamp(14px,1.15vw,18px)/1.5 var(--sans);letter-spacing:-.02em}
.ending-principles p{margin:0}
.ending-principles em{font-style:normal;color:var(--gold)}
.ending-actions{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(22px,3vw,42px);margin-top:clamp(42px,4vw,58px);border:0;font-family:var(--sans);text-transform:uppercase}
.ending-actions a{display:inline-flex;align-items:center;gap:12px;padding:0 0 8px;color:rgba(21,22,23,.80);font:700 10px/1.35 var(--sans);letter-spacing:.10em;border-bottom:1px solid rgba(21,22,23,.30);transition:color .2s ease,border-color .2s ease}
.ending-actions a+a{border-top:0}
.ending-actions a:hover,.ending-actions a:focus-visible{color:var(--ink);background:transparent;border-color:rgba(21,22,23,.65);outline:none}
.ending-actions b{color:var(--gold);font-size:14px;font-weight:400;transition:transform .24s var(--ease)}
.ending-actions a:hover b,.ending-actions a:focus-visible b{transform:translate(3px,-3px)}
@media(max-width:1100px){.project-card{flex-basis:calc((100vw - 28px)/2)}.project-visual{height:240px}}
@media(max-width:1100px){:root{--grid-row-size:280px}
.hero-title{font-size:clamp(48px,min(5.8cqw,9.5vh),78px)}
.hero-copy{width:min(410px,47cqw)}
.hero-copy__text{font-size:clamp(14px,1.45cqw,18px)}
.ending-shell{grid-template-columns:minmax(0,1fr) 240px}
}
@media(max-width:760px){:root{--header:52px;--side:18px;--grid-columns:4;--grid-column:25%;--grid-row-size:220px}
.header-inner{display:flex;justify-content:space-between;padding:0 16px}
.brand{width:72px}
.header-tools{margin-left:auto;gap:8px}
.header-cta{display:none}



.hero{display:block;overflow:visible;background:#fff}
.project-hero-stage{width:100%;aspect-ratio:auto;overflow:visible;background:#fff;container-type:normal}
.project-hero-media{position:relative;inset:auto;width:100%;aspect-ratio:16/9;background:#111214}
.project-hero-socials{left:14px;bottom:12px;gap:5px}
.project-hero-social{width:20px;height:20px;border-width:1px}
.project-hero-social svg{width:9px;height:9px}
.project-hero-social--behance svg{width:11px;height:11px}
.project-hero-form{right:8px;bottom:5px;font-size:clamp(39px,12.2vw,50px);line-height:.78;opacity:.98}
.project-hero-poster img,.project-hero-video{object-fit:contain;filter:saturate(.94) contrast(1.01) brightness(.90)}
.project-hero-shade{background:linear-gradient(180deg,rgba(17,19,20,.08) 0%,rgba(17,19,20,.02) 68%,rgba(17,19,20,.20) 100%)}
.project-hero-stage::before{display:none}
.hero-inner{position:relative;inset:auto;width:100%;min-height:auto;margin:0;padding:22px 20px 28px;background:#fff;border-bottom:1px solid rgba(93,99,102,.17)}
.eyebrow{margin:0 0 18px;color:#959a9c;font-family:var(--sans);font-weight:600}
.hero-title{max-width:10.8ch;color:#747a7c;font-family:var(--sans);font-weight:400;font-size:clamp(38px,11vw,50px);line-height:.96;letter-spacing:-.045em;text-shadow:none}
.hero-copy{width:min(100%,420px);margin-top:30px;padding-top:14px;border-top:1px solid rgba(93,99,102,.18)}
.hero-copy__text{max-width:34ch;color:#747a7c;font-family:var(--sans);font-size:13px;font-weight:400;line-height:1.5;letter-spacing:-.012em;text-shadow:none}
.projects{padding-top:30px}
.projects-frame{width:100%}
.projects-grid{--projects-gap:28px}.project-card{flex-basis:min(calc(100vw - 36px),560px)}.project-visual{height:240px}


.project-title h2{margin:0;font:500 clamp(20px,2vw,26px)/1.1 var(--display);letter-spacing:-.032em}
.project-data{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:18px;align-items:end;padding:12px 0 0;border-left:0}
.project-data-lines{grid-template-columns:minmax(0,.55fr) minmax(0,1fr);align-items:stretch}
.project-data-line{padding:10px 10px 10px 0;border-top-color:rgba(21,22,23,.25)}
.project-data-line+.project-data-line{padding-left:12px;border-left:1px solid rgba(21,22,23,.18)}
.project-data-line:last-child{border-bottom:0}
.project-arrow{align-self:end;width:30px;margin:0;padding:9px 0 0}
.rails-wrap{width:100%;margin-top:var(--rails-margin,68px)}
.rail{--rail-gap:4px}
.rail-item{height:147px}
.project-ending{padding:60px 0 54px}
.ending-panel{width:min(calc(100% - 36px),560px)}
.ending-shell{min-height:0;display:block}
.ending-main{min-height:0;padding:0}
.ending-statement{font-size:clamp(44px,12vw,64px);max-width:10.5ch;line-height:.92}
.ending-principles{gap:4px 18px;font-size:13px;line-height:1.45}
.ending-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:36px;border:0}
.ending-actions a{min-height:0;padding:0 0 7px}
.ending-actions a+a{border-top:0;border-left:0}
}
@media(max-width:620px){.visual-lightbox{padding:18px}
.visual-lightbox__close,.visual-lightbox__nav{width:38px;height:38px}
.visual-lightbox__nav--prev{left:10px}
.visual-lightbox__nav--next{right:10px}
}
@media(hover:none),(pointer:coarse){.coordinate-cursor,.coordinate-readout,.coordinate-markers{display:none!important}
}
@media(max-width:430px){
.hero-title{font-size:clamp(40px,11.8vw,52px)}
.ending-main{min-height:146px}
.ending-principles{display:grid}
.ending-actions{grid-template-columns:1fr}
.ending-actions a+a{border-left:0;border-top:1px solid rgba(21,22,23,.18)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.hero-enter{opacity:1;transform:none;animation:none}
.reveal{opacity:1;transform:none;transition:none}
.project-slide{transition:none}
.project-visual::before{display:none}
.rail.is-ready .rail-track{animation:none;transform:none}
.rail{overflow-x:auto;scrollbar-width:none}
.rail,.projects-grid{touch-action:auto}
.rail::-webkit-scrollbar{display:none}
.projects-grid.is-ready .projects-track{animation:none;transform:none}
.projects-grid{overflow-x:auto;scrollbar-width:none}
.projects-grid::-webkit-scrollbar{display:none}
.visual-lightbox{transition:none}
}
:root{color-scheme:only light}




@media(prefers-reduced-motion:reduce){.project-hero-video{display:none}}
