@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0f0f0f;--surface:#161616;--surface-2:#1e1e1e;--ink:#edebe7;--muted:#8f8c87;--accent:#f3f3f2;--on-accent:#0f0f0f;--focus:#f3f3f2;--key:255 226 190;--rim:196 214 255;--font:"Geist Variable", system-ui, sans-serif;--w-light:300;--w-text:350;--w-strong:450;--step-small:clamp(.8125rem, .79rem + .1vw, .875rem);--step-ui:1rem;--step-body:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--step-lead:clamp(1.25rem, 1.1rem + .7vw, 1.625rem);--step-head:clamp(2rem, 1.3rem + 3.2vw, 4rem);--sidebar:304px;--gutter:clamp(16px, 2.2vw, 32px);--radius:6px;--gap:10px;--column:560px;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;color-scheme:dark;scrollbar-width:none}html::-webkit-scrollbar,.sidebar::-webkit-scrollbar,.contact::-webkit-scrollbar,.menu::-webkit-scrollbar,.filters ul::-webkit-scrollbar{display:none}.sidebar,.contact,.menu,.filters ul{scrollbar-width:none}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--step-body);font-weight:var(--w-text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}h1,h2,h3,p,dl,dd,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px}::selection{background:var(--ink);color:var(--bg)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{z-index:100;background:var(--accent);color:var(--on-accent);border-radius:var(--radius);padding:10px 16px;position:fixed;top:-60px;left:16px}.skip:focus{top:16px}.num{font-variant-numeric:tabular-nums}.studio{z-index:-1;pointer-events:none;background:var(--bg);position:fixed;inset:0;overflow:hidden}.studio__spot{will-change:transform;border-radius:50%;position:absolute}.studio__spot--key{background:radial-gradient(closest-side, rgb(var(--key) / .13), rgb(var(--key) / .05) 45%, transparent 72%);width:90vmax;height:90vmax;animation:48s ease-in-out infinite alternate drift-a;top:-46vmax;left:-38vmax}.studio__spot--rim{background:radial-gradient(closest-side, rgb(var(--rim) / .075), rgb(var(--rim) / .025) 50%, transparent 74%);width:70vmax;height:70vmax;animation:62s ease-in-out infinite alternate drift-b;top:-18vmax;right:-30vmax}.studio__spot--fill{background:radial-gradient(closest-side,#ffffff09,#0000 70%);width:110vmax;height:60vmax;animation:75s ease-in-out infinite alternate-reverse drift-a;bottom:-40vmax;left:10vw}.studio__grain{opacity:.07;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:1.2s steps(4,end) infinite grain;position:absolute;inset:-50%}@keyframes drift-a{0%{transform:translate(0,0)}to{transform:translate(6vmax,4vmax)}}@keyframes drift-b{0%{transform:translate(0,0)}to{transform:translate(-5vmax,6vmax)}}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-1%,3%)}to{transform:translate(0)}}.has-3d .studio__spot,.has-3d .studio__grain{display:none}.studio canvas{width:100%;height:100%;position:absolute;inset:0}.studio__canvas{position:absolute;inset:0}.brand__canvas{pointer-events:none;width:140px;height:154px;position:absolute;top:-32px;left:-44px}.brand__canvas canvas{width:140px!important;height:154px!important}.sidebar{width:var(--sidebar);z-index:20;flex-direction:column;padding:36px 28px 24px 32px;display:flex;position:fixed;inset:0 auto 0 0}.brand{width:max-content;display:block}.brand__mark{width:52px;height:90px;position:relative}.brand__mark img{width:52px;height:auto}.brand__mark.is-3d img{opacity:0}.who{margin-top:24px}.who__name{font-size:var(--step-lead);font-weight:var(--w-text);letter-spacing:-.01em;line-height:1.2}.who__role{font-size:var(--step-ui);color:var(--ink);max-width:26ch;line-height:1.5;font-weight:var(--w-light);margin-top:10px}.sidebar{overflow-y:auto}.cats{flex:1;margin-top:40px}.cats a{width:fit-content;font-size:.9375rem;line-height:1.3;font-weight:var(--w-text);color:var(--muted);transition:color .25s var(--ease), transform .35s var(--ease);align-items:baseline;gap:5px;padding:3px 0;display:flex}.cats sup{opacity:.8;font-size:.68em;line-height:0;position:relative;top:-.45em}.cats a:hover{color:var(--ink);transform:translate(3px)}.cats a[aria-current=true]{color:var(--ink)}.sidebar__foot{justify-content:space-between;align-items:center;gap:12px;padding-top:24px;display:flex}.btn{border-radius:var(--radius);min-height:44px;font-size:var(--step-small);font-weight:var(--w-strong);letter-spacing:.005em;transition:transform .25s var(--ease), background-color .25s var(--ease), color .25s var(--ease);justify-content:center;align-items:center;gap:10px;padding:0 20px;display:inline-flex}.btn:active{transform:scale(.97)}.btn--light{background:var(--accent);color:var(--on-accent)}.btn--light:hover{background:#fff}.btn--quiet{background:var(--surface-2);color:var(--ink)}.btn--quiet:hover{background:#262626}.btn svg,.back svg,.links svg{flex:none;width:16px;height:16px}.lang{font-size:var(--step-small);gap:2px;display:flex}.lang a{border-radius:var(--radius);color:var(--muted);padding:6px 8px;transition:color .2s,background-color .2s}.lang a[aria-current=true]{color:var(--ink);background:var(--surface-2)}.lang a:hover{color:var(--ink)}.topbar{display:none}.main{margin-left:var(--sidebar);padding:40px var(--gutter) 0;min-height:100svh}.intro{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:28px;display:flex}.statement{font-size:var(--step-lead);font-weight:var(--w-light);letter-spacing:-.015em;max-width:24ch;line-height:1.3}.filters{display:none}.filters ul{gap:6px;margin:0 -20px;padding:0 20px;display:flex;overflow-x:auto}.filters li{flex:none}.filters a{border-radius:var(--radius);background:var(--surface);min-height:40px;font-size:var(--step-ui);color:var(--muted);transition:color .25s var(--ease), background-color .25s var(--ease), transform .25s var(--ease);align-items:center;gap:6px;padding:0 14px;display:inline-flex}.filters sup{opacity:.75;font-size:.7em;line-height:0;position:relative;top:-.4em}.filters a:active{transform:scale(.97)}.filters a[aria-current=true]{color:var(--ink);background:var(--surface-2)}.grid{gap:28px var(--gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.card{display:block;position:relative}.card[hidden]{display:none}.card__media{aspect-ratio:1;border-radius:var(--radius);background:var(--surface);position:relative;overflow:hidden}.card__media img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease), filter 1.2s var(--ease)}.card:hover .card__media img{filter:brightness(1.12);transform:scale(1.035)}.card__meta{font-size:var(--step-ui);justify-content:space-between;gap:12px;margin-top:12px;line-height:1.45;display:flex}.card__title{color:var(--ink);font-weight:var(--w-strong)}.card__kind,.card__year{color:var(--muted)}.footer{margin:30svh 0 0 var(--sidebar);padding:0 var(--gutter) 24px;font-size:var(--step-small);color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;display:grid}.footer__links{justify-content:center}.footer__legal a{min-height:24px;color:var(--ink);align-items:center;transition:opacity .2s;display:inline-flex}.footer__legal a:hover{opacity:.65}.socials{flex-wrap:wrap;gap:4px;display:flex}.socials a{border-radius:var(--radius);min-width:40px;height:40px;color:var(--muted);transition:color .2s, background-color .2s, transform .25s var(--ease);place-items:center;padding:0 10px;display:grid}.socials a:hover{color:var(--ink);background:var(--surface-2);transform:translateY(-2px)}.social-icon{width:19px;height:19px;-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat;background:currentColor;display:block}.social-icon--wide{width:46px;height:22px}.social-text{letter-spacing:-.02em;font-size:.875rem;font-weight:600;line-height:1}.footer__legal{flex-wrap:wrap;justify-content:flex-end;justify-self:end;align-items:center;gap:16px;display:flex}.to-top{right:var(--gutter);z-index:15;border-radius:var(--radius);background:var(--surface-2);opacity:0;width:44px;height:44px;transition:opacity .3s, transform .3s var(--ease);place-items:center;display:grid;position:fixed;bottom:24px;transform:translateY(8px)}.to-top.is-visible{opacity:1;transform:none}.to-top svg{width:18px;height:18px}.back{font-size:var(--step-small);color:var(--muted);transition:color .2s, transform .3s var(--ease);align-items:center;gap:8px;margin-bottom:20px;display:inline-flex}.back:hover{color:var(--ink);transform:translate(-3px)}.hero-media{border-radius:var(--radius);background:var(--surface);aspect-ratio:16/9;overflow:hidden}.hero-media picture{display:contents}.hero-media img{object-fit:cover;width:100%;height:100%}.project-head{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:32px clamp(32px,6vw,96px);margin:48px 0 120px;display:grid}.project-title{font-size:var(--step-head);font-weight:var(--w-light);letter-spacing:-.035em;line-height:1}.project-summary{font-size:var(--step-lead);font-weight:var(--w-light);max-width:34ch;margin-top:20px;line-height:1.35}.project-head .btn{margin-top:28px}.specs{font-size:var(--step-ui);grid-template-columns:auto 1fr;align-content:start;gap:10px 24px;padding-top:10px;display:grid}.specs dt{color:var(--muted)}.specs dd{color:var(--ink)}.block{margin:0 0 120px}.block--text{max-width:var(--column)}.block--text p+p{margin-top:1em}.block figcaption{font-size:var(--step-small);color:var(--muted);margin-top:12px}.gallery{gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gallery img{border-radius:var(--radius);aspect-ratio:1;object-fit:cover;background:var(--surface);width:100%}.compare{border-radius:var(--radius);aspect-ratio:16/9;background:var(--surface);--pos:50%;touch-action:pan-y;user-select:none;position:relative;overflow:hidden}.compare img{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.compare__after{clip-path:inset(0 0 0 var(--pos))}.compare__handle{top:0;bottom:0;left:var(--pos);background:var(--accent);pointer-events:none;width:2px;margin-left:-1px;position:absolute}.compare__knob{background:var(--accent);width:44px;height:44px;color:var(--on-accent);transition:transform .25s var(--ease);border-radius:50%;place-items:center;margin:-22px 0 0 -22px;display:grid;position:absolute;top:50%;left:50%}.compare:hover .compare__knob{transform:scale(1.08)}.compare__knob svg{width:20px;height:20px}.compare__label{font-size:var(--step-small);border-radius:var(--radius);color:var(--ink);background:#0f0f0fb8;padding:4px 10px;position:absolute;bottom:14px}.compare__label--before{left:14px}.compare__label--after{right:14px}.compare input{opacity:0;cursor:ew-resize;width:100%;height:100%;margin:0;position:absolute;inset:0}.compare input:focus-visible+.compare__handle .compare__knob{outline:2px solid var(--focus);outline-offset:4px}.video{border-radius:var(--radius);aspect-ratio:16/9;background:var(--surface);width:100%;display:block;position:relative;overflow:hidden}.video img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease), filter .6s;filter:brightness(.8)}.video:hover img{filter:brightness(.95);transform:scale(1.02)}.video__play{background:var(--accent);width:76px;height:76px;color:var(--on-accent);transition:transform .3s var(--ease);border-radius:50%;place-items:center;margin:-38px 0 0 -38px;display:grid;position:absolute;top:50%;left:50%}.video:hover .video__play{transform:scale(1.06)}.video__play svg{width:26px;height:26px;margin-left:4px}.links{flex-wrap:wrap;gap:8px;display:flex}.links a{border-radius:var(--radius);background:var(--surface-2);min-height:44px;font-size:var(--step-small);transition:background-color .2s, transform .25s var(--ease);align-items:center;gap:8px;padding:0 16px;display:inline-flex}.links a:hover{background:#262626;transform:translateY(-2px)}.credits{font-size:var(--step-ui);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px 32px;max-width:760px;display:grid}.credits dt{color:var(--muted)}.credits dd{margin-top:4px}.block--last{margin-bottom:0}.card__media video{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .5s var(--ease);pointer-events:none;position:absolute;inset:0}.card.is-playing .card__media video{opacity:1}.block--contained{max-width:900px}.block__img{border-radius:var(--radius);background:var(--surface);width:100%}.gallery--3{grid-template-columns:repeat(3,minmax(0,1fr))}.embed{border-radius:var(--radius);background:var(--surface);width:100%;display:block;position:relative;overflow:hidden}.video iframe,.video video,.embed iframe{object-fit:cover;border:0;width:100%;height:100%;position:absolute;inset:0}.video>img,.embed>img{object-fit:cover;filter:brightness(.8);width:100%;height:100%}.gate{text-align:center;background:#08080873;place-content:center;justify-items:center;gap:18px;padding:24px;display:grid;position:absolute;inset:0}.gate .video__play{margin:0;position:static}.gate p{max-width:46ch;font-size:var(--step-small);color:var(--ink)}.gate a{text-underline-offset:3px;text-decoration:underline}@media (width<=639px){.gallery--3{grid-template-columns:1fr}}.legal{max-width:680px}.legal h1{font-size:var(--step-head);font-weight:var(--w-light);letter-spacing:-.035em;margin-bottom:48px;line-height:1}.legal h2{font-size:var(--step-lead);font-weight:var(--w-text);letter-spacing:-.01em;margin:56px 0 14px}.legal p,.legal li{max-width:62ch}.legal p+p,.legal ul{margin-top:.8em}.legal ul{padding-left:1.2em;list-style:outside}.legal a{text-underline-offset:3px;text-decoration:underline}.legal .todo{color:var(--ink);background:#3a2f1c;border-radius:3px;padding:0 4px}.scrim{z-index:40;opacity:0;visibility:hidden;transition:opacity .4s var(--ease), visibility .4s;background:#0000008c;position:fixed;inset:0}.contact{z-index:50;overscroll-behavior:contain;background:var(--surface);visibility:hidden;width:min(540px,100%);transition:transform .55s var(--ease), visibility .55s;padding:32px clamp(20px,3vw,40px) 40px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(104%);box-shadow:-30px 0 80px #00000080}.is-contact-open .scrim{opacity:1;visibility:visible}.is-contact-open .contact{visibility:visible;transition:transform .55s var(--ease), visibility 0s;transform:none}.is-contact-open body,body.is-locked{overflow:hidden}.contact__close{border-radius:var(--radius);background:var(--surface-2);width:44px;height:44px;transition:background-color .2s, transform .25s var(--ease);place-items:center;display:grid;position:absolute;top:20px;right:20px}.contact__close:hover{background:#262626;transform:rotate(90deg)}.contact__close svg{width:18px;height:18px}.contact h2{font-size:clamp(1.75rem,1.4rem + 1.4vw,2.5rem);font-weight:var(--w-light);letter-spacing:-.03em;padding-right:56px;line-height:1.05}.contact__lead{color:var(--ink);margin-top:14px}.form{gap:18px;margin-top:32px;display:grid}.form .row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field{gap:6px;display:grid}.field>span,.field legend{font-size:var(--step-small);color:var(--muted);padding:0}.field input,.field select,.field textarea{border-radius:var(--radius);background:var(--surface-2);width:100%;min-height:48px;color:var(--ink);border:1px solid #0000;padding:12px 14px;transition:border-color .2s,background-color .2s}.field textarea{resize:vertical;min-height:128px}.field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%238f8c87' stroke-width='1.6'/></svg>");background-position:right 14px center;background-repeat:no-repeat}.field input:hover,.field select:hover,.field textarea:hover{background-color:#232323}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--muted);outline:none}.field input:user-invalid,.field textarea:user-invalid{border-color:#c4705f}fieldset.field{border:0;margin:0;padding:0}.chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.chips label{position:relative}.chips input{opacity:0;position:absolute;inset:0}.chips span{border-radius:var(--radius);background:var(--surface-2);min-height:40px;font-size:var(--step-small);color:var(--muted);cursor:pointer;transition:background-color .2s, color .2s, transform .2s var(--ease);align-items:center;padding:0 14px;display:inline-flex}.chips label:hover span{color:var(--ink)}.chips input:checked+span{background:var(--ink);color:var(--bg)}.chips input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}.consent{font-size:var(--step-small);color:var(--muted);align-items:flex-start;gap:12px;line-height:1.5;display:flex}.consent input{width:20px;height:20px;accent-color:var(--ink);flex:none;margin:1px 0 0}.consent a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.hp{position:absolute;left:-9999px}.form .btn{width:100%;min-height:52px;font-size:var(--step-body)}.form__status{font-size:var(--step-small);min-height:1.5em}.form__status.is-ok{color:var(--ink)}.form__status.is-error{color:#e4a091}.contact__alt{gap:16px;margin-top:44px;display:grid}.contact__alt .btn{width:100%}.contact__mail{font-size:var(--step-small);justify-content:space-between;align-items:center;gap:12px;display:flex}.contact__mail a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.contact__mail button{color:var(--muted);font-size:var(--step-small);border-radius:var(--radius);padding:8px 10px;transition:color .2s,background-color .2s}.contact__mail button:hover{color:var(--ink);background:var(--surface-2)}.contact__bio{font-size:var(--step-small);color:var(--muted);align-items:flex-start;gap:14px;display:flex}.contact__bio img{flex:none;width:40px}.reel-btn{border-radius:var(--radius);background:var(--surface-2);min-height:44px;color:var(--ink);font-size:var(--step-small);font-weight:var(--w-strong);white-space:nowrap;transition:background-color .25s var(--ease), transform .25s var(--ease);align-items:center;gap:10px;margin-top:20px;padding:0 16px 0 6px;display:inline-flex}.reel-btn:hover{background:#262626}.reel-btn:active{transform:scale(.97)}.reel-btn__play{background:var(--accent);width:32px;height:32px;color:var(--on-accent);transition:transform .3s var(--ease);border-radius:50%;place-items:center;display:grid}.reel-btn:hover .reel-btn__play{transform:scale(1.08)}.reel-btn__play svg{width:12px;height:12px;margin-left:2px}.reel-btn--intro{display:none}.menu>.reel-btn{margin:0 0 28px}.reel{z-index:60;padding:72px var(--gutter) 40px;opacity:0;visibility:hidden;transition:opacity .4s var(--ease), visibility .4s;background:#080808f5;place-content:center;justify-items:center;display:grid;position:fixed;inset:0}.is-reel-open .reel{opacity:1;visibility:visible}.is-reel-open body{overflow:hidden}.reel__frame{width:min(1280px, calc(100vw - 2 * var(--gutter)), calc((100svh - 190px) * 16 / 9));aspect-ratio:16/9;border-radius:var(--radius);transition:transform .5s var(--ease);background:#000;position:relative;overflow:hidden;transform:scale(.97)}.is-reel-open .reel__frame{transform:none}.reel__frame iframe,.reel__frame img{object-fit:cover;border:0;width:100%;height:100%;position:absolute;inset:0}.reel__gate{text-align:center;background:#08080873;place-content:center;justify-items:center;gap:18px;padding:24px;display:grid;position:absolute;inset:0}.reel__gate .video__play{margin:0;position:static}.reel__gate p{max-width:46ch;font-size:var(--step-small);color:var(--ink)}.reel__gate a{text-underline-offset:3px;text-decoration:underline}.reel__note{border-radius:var(--radius);font-size:var(--step-small);background:#0f0f0fcc;padding:6px 12px;position:absolute;bottom:16px;left:16px}.reel__caption{width:100%;font-size:var(--step-small);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-top:18px;display:flex}.reel__close{position:fixed;top:20px;right:20px}.menu{z-index:45;background:var(--bg);opacity:0;visibility:hidden;transition:opacity .35s var(--ease), transform .35s var(--ease), visibility .35s;padding:88px 20px 32px;position:fixed;inset:0;overflow-y:auto;transform:translateY(-8px)}.is-menu-open .menu{opacity:1;visibility:visible;transform:none}.menu .cats{margin-top:0}.menu .cats a{font-size:var(--step-lead);padding:6px 0}.menu__foot{font-size:var(--step-small);gap:20px;margin-top:40px;display:grid}.menu__foot nav{flex-wrap:wrap;gap:8px 20px;display:flex}.menu__foot .socials{gap:4px;margin-left:-10px}.reveal{transition:opacity .9s var(--ease), transform .9s var(--ease);transition-delay:var(--d,0s)}@media (prefers-reduced-motion:no-preference){.js-reveal .reveal:not(.is-in){opacity:0;transform:translateY(22px)}}@media (width<=1279px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1023px){.sidebar{display:none}.topbar{z-index:46;background:#0f0f0feb;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex;position:sticky;top:0}.topbar .brand__mark{width:26px;height:44px}.topbar .brand__mark img{width:26px}.topbar__actions{align-items:center;gap:8px;display:flex}.topbar .btn{min-height:40px;padding:0 16px}.burger{border-radius:var(--radius);background:var(--surface-2);place-items:center;width:44px;height:44px;display:grid}.burger svg{width:20px;height:20px}.main{margin-left:0;padding:24px 20px 0}.intro{flex-flow:column;align-items:stretch;gap:20px;margin-bottom:20px}.statement{font-size:clamp(1.375rem,1.1rem + 1.4vw,1.75rem)}.filters{display:block}.reel-btn--intro{align-self:flex-start;margin-top:0;display:inline-flex}.project-head{grid-template-columns:1fr;margin:32px 0 80px}.block{margin-bottom:80px}.footer{grid-template-columns:1fr;gap:8px;margin:20svh 0 0;padding:0 20px 24px}.footer__links{justify-content:flex-start;margin-left:-10px}.footer__legal{justify-content:flex-start;justify-self:start}}@media (width<=639px){.grid{grid-template-columns:1fr;gap:24px}.gallery{grid-template-columns:1fr}.compare{aspect-ratio:4/3}.form .row{grid-template-columns:1fr}.hero-media{aspect-ratio:4/3}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.burger>span{place-items:center;display:grid}.burger>.burger__close,.is-menu-open .burger>.burger__open{display:none}.is-menu-open .burger>.burger__close{display:grid}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}
