@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-vietnamese-wdth-normal.rJmnGBSt.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-ext-wdth-normal.7khWdh9v.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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-wdth-normal.DY7AcnAa.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}@font-face{font-family:Archivo Variable;font-style:italic;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-vietnamese-wdth-italic.DS6JCx7O.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:Archivo Variable;font-style:italic;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-ext-wdth-italic.Cq9u_6Zz.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:Archivo Variable;font-style:italic;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-wdth-italic.BuvkOFDm.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}@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;hanging-punctuation:first last}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100svh}img,picture,video,svg{max-width:100%;display:block}img{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}p,h1,h2,h3,h4,li,dd{overflow-wrap:break-word}ul[role=list],ol[role=list]{padding:0;list-style:none}a{color:inherit}}@layer tokens{:root{--ink:#0b0c0e;--ink-2:#121417;--ink-3:#1b1e22;--ink-4:#262a30;--steel:#8b929b;--steel-light:#b6bcc4;--surface:oklch(97.2% .004 255);--surface-2:oklch(93% .007 255);--surface-3:oklch(87% .01 255);--text:oklch(20% .012 255);--muted:oklch(44% .015 255);--spark:#ff5b14;--spark-soft:#ff8a4c;--spark-ink:#b93c06;--line:color-mix(in oklab, var(--text) 14%, transparent);--line-dark:#ffffff1f;--font-sans:"Archivo Variable", "Archivo", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--label-stretch:78%;--step--1:clamp(.8rem, .78rem + .1vw, .875rem);--step-0:clamp(1rem, .96rem + .18vw, 1.125rem);--step-1:clamp(1.2rem, 1.1rem + .45vw, 1.5rem);--step-2:clamp(1.5rem, 1.3rem + .9vw, 2.125rem);--step-3:clamp(1.9rem, 1.55rem + 1.7vw, 3.1rem);--step-4:clamp(2.2rem, 1.7rem + 2.4vw, 3.75rem);--step-5:clamp(2.6rem, 1.8rem + 3.6vw, 5rem);--step-6:clamp(2.8rem, 1.4rem + 6vw, 6rem);--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:clamp(2rem, 1.6rem + 2vw, 3rem);--space-xl:clamp(3rem, 2.2rem + 4vw, 5.5rem);--space-2xl:clamp(4.5rem, 3rem + 7vw, 9rem);--gutter:clamp(1rem, .4rem + 3vw, 3.5rem);--maxw:1440px;--radius:2px;--z-header:100;--z-progress:110;--z-skip:300;--header-h:84px;--ease:cubic-bezier(.2, .7, .1, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);color-scheme:light}}@layer base{html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1rem)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:var(--step-0);font-optical-sizing:auto;font-kerning:normal;text-rendering:optimizelegibility;line-height:1.6}h1,h2,h3,h4{letter-spacing:-.025em;text-wrap:balance;font-weight:700;font-stretch:112%;line-height:1.02}p{text-wrap:pretty}::selection{background:var(--spark);color:#fff}:focus-visible{outline:2px solid var(--spark);outline-offset:3px}a{text-underline-offset:.2em;text-decoration-thickness:1px}em.accent,.accent{font-style:italic;font-stretch:100%}hr{border:0;border-top:1px solid var(--line)}[hidden]{display:none!important}}@layer layout{.wrap{width:min(100% - 2 * var(--gutter), var(--maxw));margin-inline:auto}.wrap-narrow{width:min(100% - 2 * var(--gutter), 980px);margin-inline:auto}.section{padding-block:var(--space-2xl)}.section-tight{padding-block:var(--space-xl)}.hero,.page-hero,.project-hero,.next-project,.notfound,.company-card,.mobile-menu,.lightbox{--muted:var(--steel-light);--line:var(--line-dark)}.dark{background:var(--ink);color:#fff;--line:var(--line-dark);--muted:var(--steel-light)}.dark-2{background:var(--ink-2);color:#fff;--line:var(--line-dark);--muted:var(--steel-light)}.surface-2{background:var(--surface-2)}.grid-12{gap:var(--space-l) var(--space-m);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.skip{left:var(--gutter);z-index:var(--z-skip);background:var(--spark);color:#fff;padding:.75rem 1rem;font-weight:600;text-decoration:none;transition:top .2s;position:fixed;top:-100px}.skip:focus{top:1rem}:is(.team,.why,.cta-grid,.about-grid,.contact-grid,.project-body,.footer-top,.hero-bottom,.section-head,.legal-layout)>*{min-width:0}@media (width<=520px){h1,h2,.big,.hero-title{-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:10 4 4}}}@layer components{.eyebrow{font-family:var(--font-sans);font-stretch:var(--label-stretch);font-weight:600;font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.75rem;font-weight:500;display:inline-flex}.hero .eyebrow:before{content:"";background:var(--spark);width:1.75rem;height:2px}.h-display{font-size:var(--step-5);letter-spacing:-.03em;font-weight:800;font-stretch:118%;line-height:.94}.h-1{font-size:var(--step-4);font-weight:750}.h-2{font-size:var(--step-3);font-weight:700}.h-3{font-size:var(--step-2);letter-spacing:-.02em;font-weight:650}.lead{font-size:var(--step-1);color:var(--muted);max-width:46ch;line-height:1.5}.dark .lead,.dark-2 .lead{color:var(--steel-light)}.mono{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.02em;font-weight:600}.section-head{gap:var(--space-m);margin-bottom:var(--space-xl);display:grid}.section-head .end{justify-self:start}@media (width>=900px){.section-head .end{justify-self:end}}.contact-groups{gap:var(--space-xl);display:grid}@media (width>=900px){.section-head.split{grid-template-columns:1fr 1fr;align-items:end}}.btn{--btn-bg:var(--ink);--btn-fg:#fff;border-radius:var(--radius);background:var(--btn-bg);min-height:52px;color:var(--btn-fg);letter-spacing:.01em;isolation:isolate;transition:color .35s var(--ease);align-items:center;gap:.85rem;padding:.9rem 1.4rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;background:var(--spark);transform-origin:100%;transition:transform .45s var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.btn:hover:before,.btn:focus-visible:before{transform-origin:0;transform:scaleX(1)}.btn .arrow{transition:transform .35s var(--ease-out)}.btn:hover .arrow{transform:translate(4px)}.btn-light{--btn-bg:#fff;--btn-fg:var(--ink)}.btn-light:hover,.btn-light:focus-visible{--btn-fg:#fff}.btn-ghost{--btn-bg:transparent;--btn-fg:currentColor;box-shadow:inset 0 0 0 1px}.btn-ghost:hover{--btn-fg:#fff;box-shadow:inset 0 0 0 1px var(--spark)}.link-arrow{transition:background-size .4s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;align-items:center;gap:.6rem;padding-bottom:2px;font-weight:600;text-decoration:none;display:inline-flex}.link-arrow:hover,.link-arrow:focus-visible{background-size:100% 1px}.arrow{flex:none;width:1.05em;height:1.05em}.site-header{z-index:var(--z-header);height:var(--header-h);color:#fff;transition:background-color .4s var(--ease), backdrop-filter .4s, box-shadow .4s, color .3s, transform .4s var(--ease);position:fixed;inset:0 0 auto}.site-header[data-solid=true],.site-header.is-scrolled{background:color-mix(in oklab, var(--ink) 96%, transparent);box-shadow:0 1px 0 var(--line-dark)}.site-header.is-hidden{transform:translateY(-100%)}.site-header .wrap{justify-content:space-between;align-items:center;gap:var(--space-m);height:100%;display:flex}.brand{align-items:center;gap:.9rem;text-decoration:none;display:flex}.brand img{width:92px;height:auto}.brand-name{letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;font-weight:600;font-stretch:125%;line-height:1.2;display:none}@media (width>=1100px){.brand-name{display:block}}.nav-main{align-items:center;gap:clamp(1.25rem,2.5vw,2.5rem);display:none}.nav-main a{padding-block:.4rem;font-size:.95rem;font-weight:500;text-decoration:none;position:relative}.nav-main a:after{content:"";background:var(--spark);transform-origin:100%;height:1px;transition:transform .4s var(--ease-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-main a:hover:after,.nav-main a[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.header-actions{align-items:center;gap:var(--space-m);display:flex}.lang{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.06em;align-items:center;gap:.15rem;font-size:.78rem;font-weight:600;display:flex}.lang a{opacity:.6;text-align:center;min-width:24px;padding:.45rem .4rem;text-decoration:none;transition:opacity .2s}.lang a:hover{opacity:1}.lang a[aria-current=true]{opacity:1;color:var(--spark-soft)}.header-cta{display:none}@media (width>=900px){.nav-main{display:flex}.header-cta{min-height:44px;padding:.6rem 1.1rem;display:inline-flex}.menu-toggle{display:none!important}}.menu-toggle{letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.6rem;min-height:44px;padding:0 .25rem;font-size:.85rem;font-weight:600;display:inline-flex}.menu-toggle .bars{gap:5px;width:22px;display:grid}.menu-toggle .bars span{background:currentColor;border-radius:2px;height:2px}.menu-toggle .bars span:last-child{justify-self:end;width:60%}.mobile-menu{background:var(--ink);color:#fff;opacity:0;width:100%;max-width:none;height:100dvh;max-height:none;transition:opacity .35s var(--ease), transform .45s var(--ease-out), overlay .45s allow-discrete, display .45s allow-discrete;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden auto;transform:translateY(-2%)}.mobile-menu:popover-open{opacity:1;transform:none}@starting-style{.mobile-menu:popover-open{opacity:0;transform:translateY(-2%)}}.mobile-menu::backdrop{background:0 0}.mobile-menu-inner{min-height:100%;padding:0 var(--gutter) var(--space-l);flex-direction:column;display:flex}.mobile-menu-top{height:var(--header-h);justify-content:space-between;align-items:center;display:flex}.mobile-menu-inner>nav{padding-block:var(--space-l);margin-block:auto}.mobile-menu nav ol{gap:.25rem;display:grid}.mobile-menu nav ol a{letter-spacing:-.03em;align-items:baseline;gap:1rem;padding-block:.5rem;font-size:clamp(2.4rem,11vw,4rem);font-weight:750;font-stretch:118%;line-height:1;text-decoration:none;display:flex}.mobile-menu .mm-foot{gap:var(--space-s);padding-top:var(--space-m);border-top:1px solid var(--line-dark);color:var(--steel-light);font-size:.9rem;display:grid}.mobile-menu .lang{flex-wrap:wrap;gap:.25rem .75rem;font-size:.95rem}.mobile-menu .lang a{align-items:center;min-height:44px;padding:.6rem 0;display:inline-flex}.icon-btn{width:44px;height:44px;box-shadow:inset 0 0 0 1px var(--line-dark);border-radius:50%;place-items:center;display:inline-grid}.hero{color:#fff;background:var(--ink);isolation:isolate;align-items:end;min-height:100svh;display:grid;position:relative;overflow:clip}.hero-media{z-index:-2;position:absolute;inset:0}.hero-media picture,.hero-media img{object-fit:cover;object-position:var(--pos,50% 50%);width:100%;height:100%;position:absolute;inset:0}.hero-slide{opacity:0;animation:28s infinite hero-fade}.hero-slide img{transform-origin:60% 40%;animation:28s infinite hero-zoom}.hero-slide:first-child,.hero-slide:first-child img{animation-delay:0s}.hero-slide:nth-child(2),.hero-slide:nth-child(2) img{animation-delay:7s}.hero-slide:nth-child(3),.hero-slide:nth-child(3) img{animation-delay:14s}.hero-slide:nth-child(4),.hero-slide:nth-child(4) img{animation-delay:21s}@keyframes hero-fade{0%{opacity:0}4%{opacity:1}25%{opacity:1}30%{opacity:0}to{opacity:0}}@keyframes hero-zoom{0%{transform:scale(1.12)}30%{transform:scale(1)}to{transform:scale(1)}}.hero-slide:first-child{opacity:1}.hero:before{content:"";z-index:-1;background:linear-gradient(#0b0c0eb8 0%,#0b0c0e26 32%,#0b0c0e33 55%,#0b0c0eeb 100%),radial-gradient(120% 80% at 0 100%,#0b0c0ebf,#0000 60%);position:absolute;inset:0}.hero-inner{padding-top:calc(var(--header-h) + var(--space-xl));padding-bottom:var(--space-l);gap:var(--space-l);display:grid}.hero .eyebrow{color:#fffc}.hero-title{font-size:var(--step-6);letter-spacing:-.03em;max-width:19ch;font-weight:800;font-stretch:122%;line-height:.9}.hero-title .accent{color:var(--spark-soft);font-weight:800}.hero-title .line{padding-bottom:.04em;display:block;overflow:clip}.hero-title .line>span{animation:rise 1.1s var(--ease-out) both;display:inline-block}.hero-title .line:nth-child(2)>span{animation-delay:80ms}.hero-title .line:nth-child(3)>span{animation-delay:.16s}@keyframes rise{0%{transform:translateY(105%)}to{transform:none}}.hero-bottom{gap:var(--space-l);align-items:end;display:grid}@media (width>=900px){.hero-bottom{grid-template-columns:1.1fr 1fr}}.hero-lead{font-size:var(--step-1);color:#ffffffdb;max-width:40ch;animation:fade-up 1s .35s var(--ease-out) both;line-height:1.45}.hero-actions{gap:var(--space-s);animation:fade-up 1s .45s var(--ease-out) both;flex-wrap:wrap;justify-content:flex-start;display:flex}@media (width>=900px){.hero-actions{justify-content:flex-end}}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.hero-meta{justify-content:space-between;gap:var(--space-s) var(--space-l);padding-top:var(--space-m);font-family:var(--font-sans);font-stretch:var(--label-stretch);font-weight:600;font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:#ffffffb8;border-top:1px solid #ffffff2e;flex-wrap:wrap;display:flex}.hero-meta .scroll{align-items:center;gap:.6rem;display:inline-flex}.hero-meta .scroll i{background:linear-gradient(var(--spark), transparent);width:1px;height:28px;animation:drip 2.2s infinite var(--ease);display:block}@keyframes drip{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}.hero-progress{gap:6px;display:flex}.hero-progress span{background:#ffffff40;width:28px;height:2px;position:relative;overflow:hidden}.hero-progress span:after{content:"";background:var(--spark);transform-origin:0;animation:28s linear infinite hero-bar;position:absolute;inset:0;transform:scaleX(0)}.hero-progress span:nth-child(2):after{animation-delay:7s}.hero-progress span:nth-child(3):after{animation-delay:14s}.hero-progress span:nth-child(4):after{animation-delay:21s}@keyframes hero-bar{0%{transform:scaleX(0)}25%{transform:scaleX(1)}25.01%,to{transform:scaleX(0)}}.stats{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=900px){.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat{padding:var(--space-l) var(--space-m) var(--space-l) 0;border-bottom:1px solid var(--line);align-content:start;gap:.5rem;display:grid}.stat+.stat{padding-left:var(--space-m);border-left:1px solid var(--line)}@media (width<=899px){.stat:nth-child(3){border-left:0;padding-left:0}}.stat-num{font-size:var(--step-5);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-weight:750;font-stretch:112%;line-height:.9}.stat-num sup{vertical-align:top;color:var(--spark);margin-left:.04em;font-size:.45em;position:relative;top:.12em}.stat-label{font-family:var(--font-sans);font-stretch:var(--label-stretch);font-weight:600;font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.stats-note{margin-top:var(--space-s);font-size:var(--step--1);color:var(--muted)}.marquee{padding-block:var(--space-l);border-block:1px solid var(--line);overflow:clip}.marquee-label{margin-bottom:var(--space-m)}.marquee-track{gap:var(--space-xl);width:max-content;animation:110s linear infinite marquee;display:flex}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}.marquee-track a{font-size:var(--step-3);letter-spacing:-.02em;white-space:nowrap;color:color-mix(in oklab, currentColor 62%, transparent);font-weight:700;font-stretch:125%;text-decoration:none;transition:color .3s}.marquee-track a:hover,.marquee-track a:focus-visible{color:var(--spark-ink)}.marquee-track a:after{content:"✦";margin-left:var(--space-xl);vertical-align:middle;color:var(--spark);font-size:.5em}@keyframes marquee{to{transform:translateX(calc(-50% - var(--space-xl) / 2))}}.manifesto{text-align:center}.manifesto blockquote{font-style:italic;font-weight:300;font-stretch:100%;font-size:var(--step-4);letter-spacing:-.02em;text-wrap:balance;max-width:22ch;margin-inline:auto;line-height:1.12}.manifesto blockquote:before{content:"“";color:var(--spark);margin-bottom:.1em;font-size:1.6em;line-height:.6;display:block}.manifesto figcaption{margin-top:var(--space-l);justify-content:center}.why{gap:var(--space-xl);display:grid}@media (width>=1000px){.why{grid-template-columns:5fr 7fr}}.why-media{aspect-ratio:4/5;border-radius:var(--radius);position:relative;overflow:hidden}.why-media img{object-fit:cover;width:100%;height:100%}.why-media .tag{position:absolute;bottom:1rem;left:1rem}.why-list{margin-top:var(--space-l);border-top:1px solid var(--line);display:grid}.why-item{gap:var(--space-s);padding-block:var(--space-m);border-bottom:1px solid var(--line);grid-template-columns:1fr;display:grid}.why-item h3{font-size:var(--step-1);letter-spacing:-.01em;margin-bottom:.35rem;font-stretch:110%}.why-item p{color:var(--muted)}.tag{background:var(--ink);color:#fff;font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .7rem;font-size:.72rem;font-weight:600;display:inline-flex}.tag:before{content:"";background:var(--spark);border-radius:50%;width:6px;height:6px}.skills-list{border-top:1px solid var(--line)}.skill{gap:var(--space-s);border-bottom:1px solid var(--line);letter-spacing:-.02em;transition:color .35s, transform .5s var(--ease-out);grid-template-columns:1fr;align-items:baseline;padding-block:clamp(1.1rem,.8rem + 1.2vw,1.8rem);font-size:clamp(1.25rem,.9rem + 1.6vw,2.125rem);font-weight:600;font-stretch:108%;line-height:1.15;display:grid;position:relative}.skill:after{content:"";background:var(--spark);transform-origin:0;height:1px;transition:transform .6s var(--ease-out);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}@media (hover:hover){.skill:hover{transform:translate(.75rem)}.skill:hover:after{transform:scaleX(1)}}.skills-closing{margin-top:var(--space-l);max-width:52ch;color:var(--muted)}.cards{gap:var(--space-l) var(--space-m);grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));display:grid}.card{gap:var(--space-s);align-content:start;text-decoration:none;display:grid;position:relative}.card-media{aspect-ratio:4/3;border-radius:var(--radius);background:var(--ink-3);position:relative;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform 1.1s var(--ease-out), filter .6s}.card:hover .card-media img,.card:focus-visible .card-media img{transform:scale(1.06)}.card-media .tag{position:absolute;top:.85rem;left:.85rem}.card-media:after{content:"";background:var(--spark);transform-origin:0;height:3px;transition:transform .6s var(--ease-out);position:absolute;inset:auto 0 0;transform:scaleX(0)}.card:hover .card-media:after,.card:focus-visible .card-media:after{transform:scaleX(1)}.card-body{justify-content:space-between;gap:var(--space-s);align-items:start;display:flex}.card-title{font-size:var(--step-1);letter-spacing:-.01em;text-transform:uppercase;font-weight:700;font-stretch:112%;line-height:1.1}.card-place{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-top:.3rem;font-size:.78rem;font-weight:600}.card-go{width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--line);transition:background .3s, color .3s, box-shadow .3s, transform .5s var(--ease-out);border-radius:50%;flex:none;place-items:center;display:grid}.card:hover .card-go{background:var(--spark);color:#fff;box-shadow:none;transform:rotate(-45deg)}.card:focus-visible{outline:none}.card:focus-visible .card-media{outline:2px solid var(--spark);outline-offset:3px}.featured{gap:var(--space-l) var(--space-m);display:grid}@media (width>=900px){.featured{align-items:start;row-gap:var(--space-xl);grid-template-columns:repeat(12,minmax(0,1fr))}.featured .card:first-child{grid-column:1/span 7}.featured .card:first-child .card-media{aspect-ratio:16/11}.featured .card:nth-child(2){margin-top:var(--space-xl);grid-column:9/span 4}.featured .card:nth-child(2) .card-media{aspect-ratio:4/5}.featured .card:nth-child(3){grid-column:2/span 4}.featured .card:nth-child(3) .card-media{aspect-ratio:4/5}.featured .card:nth-child(4){margin-top:var(--space-2xl);grid-column:7/span 6}.featured .card:nth-child(4) .card-media{aspect-ratio:3/2}.featured .card:nth-child(5){grid-column:1/span 6}.featured .card:nth-child(5) .card-media{aspect-ratio:3/2}.featured .card:nth-child(6){margin-top:var(--space-xl);grid-column:8/span 5}.featured .card:nth-child(6) .card-media{aspect-ratio:4/5}}.steps{gap:var(--space-l);counter-reset:st;display:grid}@media (width>=900px){.steps{gap:var(--space-m);grid-template-columns:repeat(3,minmax(0,1fr))}}.step{padding-top:var(--space-l);gap:var(--space-s);align-content:start;display:grid;position:relative}.step:before{content:"";background:var(--line);height:1px;position:absolute;top:0;left:0;right:0}.step:after{content:"";background:var(--spark);width:11px;height:11px;box-shadow:0 0 0 6px color-mix(in oklab, var(--spark) 22%, transparent);border-radius:50%;position:absolute;top:-5px;left:0}.step-n{font-family:var(--font-sans);font-stretch:var(--label-stretch);font-weight:600;font-size:var(--step--1);letter-spacing:.08em;color:var(--muted)}.step h3{font-size:var(--step-2)}.step p{color:var(--muted);max-width:34ch}.team{gap:var(--space-xl);display:grid}@media (width>=1000px){.team{grid-template-columns:1fr 1fr;align-items:center}}.roles-list{gap:var(--space-s);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.role{padding-top:var(--space-s);border-top:2px solid var(--spark);align-content:start;gap:.5rem;display:grid}.role-num{font-size:var(--step-4);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-weight:750;font-stretch:112%;line-height:.95}.role-label{font-stretch:var(--label-stretch);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:600}.roles-total{margin-top:var(--space-m);padding-top:var(--space-s);border-top:1px solid var(--line);font-size:var(--step-1);color:var(--muted)}.roles-total b{color:#fff;font-weight:750;font-stretch:112%}.team-note{margin-top:var(--space-s);color:var(--muted);align-items:center;gap:.75rem;font-size:.95rem;display:flex}.team-media{aspect-ratio:5/4;border-radius:var(--radius);position:relative;overflow:hidden}.team-media img{object-fit:cover;width:100%;height:100%}.video-box{aspect-ratio:16/9;border-radius:var(--radius);background:var(--ink-3);isolation:isolate;position:relative;overflow:hidden}.video-box>img,.video-box>picture img{object-fit:cover;width:100%;height:100%}.video-box:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(#0b0c0e1a,#0b0c0ebf);position:absolute;inset:0}.video-play{z-index:1;place-content:center;justify-items:center;gap:var(--space-s);color:#fff;width:100%;display:grid;position:absolute;inset:0}.video-play .disc{aspect-ratio:1;background:var(--spark);width:clamp(72px,9vw,112px);box-shadow:0 0 0 0 color-mix(in oklab, var(--spark) 55%, transparent);transition:transform .4s var(--ease-out);border-radius:50%;place-items:center;animation:2.6s infinite pulse;display:grid}.video-play:hover .disc{transform:scale(1.08)}.video-play .disc svg{fill:#fff;width:32%;height:32%;margin-left:6%}.video-play .label{font-family:var(--font-sans);font-stretch:var(--label-stretch);font-weight:600;font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in oklab, var(--spark) 55%, transparent)}70%{box-shadow:0 0 0 28px #0000}to{box-shadow:0 0 #0000}}.video-consent{z-index:2;place-content:center;justify-items:center;gap:var(--space-m);padding:var(--space-m);color:#fff;text-align:center;background:#0b0c0eeb;display:grid;position:absolute;inset:0}.video-consent p{max-width:56ch;font-size:.98rem}.video-consent a{color:#fff}.video-consent .actions{gap:var(--space-s);flex-wrap:wrap;justify-content:center;display:flex}.video-box iframe{z-index:3;border:0;width:100%;height:100%;position:absolute;inset:0}.cta-band{position:relative;overflow:clip}.cta-band .big{font-size:var(--step-5);letter-spacing:-.03em;max-width:16ch;font-weight:800;font-stretch:120%;line-height:.95}.cta-band .big .accent{color:var(--spark-soft)}.cta-grid{gap:var(--space-l);display:grid}@media (width>=1000px){.cta-grid{grid-template-columns:1.4fr 1fr;align-items:end}}.cta-mails{border-top:1px solid var(--line);gap:0;display:grid}.cta-mails a{border-bottom:1px solid var(--line);overflow-wrap:anywhere;transition:color .3s, transform .4s var(--ease-out);justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;font-size:.98rem;text-decoration:none;display:flex}.cta-mails a:hover{color:var(--spark-soft);transform:translate(.5rem)}.cta-mails small{text-transform:none;letter-spacing:.01em;font-size:.82rem;font-weight:500;font-stretch:100%;font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:.2rem;font-size:.72rem;font-weight:600;display:block}.page-hero{background:var(--ink);color:#fff;padding-top:calc(var(--header-h) + var(--space-xl));padding-bottom:var(--space-xl);isolation:isolate;position:relative;overflow:clip}.page-hero h1{font-size:var(--step-6);letter-spacing:-.03em;margin-top:var(--space-m);font-weight:800;font-stretch:122%;line-height:.9}.page-hero .lead{margin-top:var(--space-l);color:var(--steel-light)}.page-hero .eyebrow{color:var(--steel-light)}.crumbs{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.05em;text-transform:uppercase;color:var(--steel-light);flex-wrap:wrap;gap:.5rem;font-size:.78rem;font-weight:600;display:flex}.crumbs a{text-decoration:none}.crumbs a:hover{color:#fff}.crumbs li+li:before{content:"/";opacity:.5;margin-right:.5rem}.filters{margin-bottom:var(--space-l);border:0;flex-wrap:wrap;gap:.5rem;padding:0;display:flex}.filters legend{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.chip input{opacity:0;pointer-events:none;position:absolute}.chip span{cursor:pointer;min-height:44px;box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;align-items:center;gap:.55rem;padding:.5rem 1rem;font-size:.92rem;font-weight:500;transition:background .25s,color .25s,box-shadow .25s;display:inline-flex}.chip span small{font-family:var(--font-sans);font-stretch:var(--label-stretch);color:var(--muted);font-size:.72rem;font-weight:600}.chip:hover span{box-shadow:inset 0 0 0 1px var(--text)}.chip input:checked+span{background:var(--ink);color:#fff;box-shadow:none}.chip input:checked+span small{color:var(--spark-soft)}.chip input:focus-visible+span{outline:2px solid var(--spark);outline-offset:2px}.project-index:has(#f-completati:checked) .card:not([data-cat=completati]),.project-index:has(#f-in-corso:checked) .card:not([data-cat=in-corso]),.project-index:has(#f-officina:checked) .card:not([data-cat=officina]){display:none}.project-index .card{animation:card-in .6s var(--ease-out) both}@keyframes card-in{0%{opacity:0;transform:translateY(12px)}}.project-index .result{font-family:var(--font-sans);font-stretch:var(--label-stretch);font-weight:600;font-size:var(--step--1);color:var(--muted);letter-spacing:.04em;margin-bottom:var(--space-m)}.project-hero{color:#fff;background:var(--ink);isolation:isolate;align-items:end;min-height:min(92svh,980px);display:grid;position:relative;overflow:clip}.project-hero .media{z-index:-2;position:absolute;inset:0}.project-hero .media img{object-fit:cover;width:100%;height:100%}.project-hero:before{content:"";z-index:-1;background:linear-gradient(#0b0c0ea6 0%,#0b0c0e1a 35%,#0b0c0ee6 100%);position:absolute;inset:0}.project-hero .inner{padding-top:calc(var(--header-h) + var(--space-l));padding-bottom:var(--space-l);gap:var(--space-m);display:grid}.project-hero h1{font-size:var(--step-5);letter-spacing:-.03em;text-transform:uppercase;max-width:18ch;font-weight:800;font-stretch:120%;line-height:.92}.facts{margin-top:var(--space-s);border-top:1px solid #fff3;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:0;display:grid}.facts div{padding:var(--space-s) var(--space-s) 0 0}.facts dt{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.08em;text-transform:uppercase;color:#ffffff9e;font-size:.72rem;font-weight:600}.facts dd{margin-top:.3rem;font-size:1rem;font-weight:600}.project-body{gap:var(--space-l);display:grid}@media (width>=1000px){.project-body{grid-template-columns:4fr 8fr}}.project-desc{font-size:var(--step-2);letter-spacing:-.015em;text-wrap:pretty;font-weight:450;font-stretch:100%;line-height:1.32}.project-desc p+p{margin-top:1em}.project-desc:first-letter{color:var(--spark-ink)}.mosaic{columns:1;column-gap:var(--space-s)}@media (width>=640px){.mosaic{columns:2}}@media (width>=1100px){.mosaic.m3{columns:3}}.mosaic a{break-inside:avoid;margin-bottom:var(--space-s);border-radius:var(--radius);background:var(--ink-3);display:block;position:relative;overflow:hidden}.mosaic img{width:100%;height:auto;transition:transform 1s var(--ease-out), opacity .4s}.mosaic a:hover img{transform:scale(1.04)}.mosaic a .zoom{color:#fff;opacity:0;width:40px;height:40px;transition:opacity .3s, transform .4s var(--ease-out);background:#0b0c0eb3;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:.75rem;right:.75rem;transform:scale(.8)}.mosaic a:hover .zoom,.mosaic a:focus-visible .zoom{opacity:1;transform:none}.next-project{color:#fff;isolation:isolate;background:var(--ink);align-items:end;min-height:62svh;text-decoration:none;display:grid;position:relative;overflow:clip}.next-project .media{z-index:-2;position:absolute;inset:0}.next-project .media img{object-fit:cover;opacity:.55;width:100%;height:100%;transition:opacity .6s, transform 1.4s var(--ease-out)}.next-project:hover .media img{opacity:.75;transform:scale(1.04)}.next-project .inner{padding-block:var(--space-xl);gap:var(--space-s);display:grid}.next-project .t{font-size:var(--step-5);letter-spacing:-.03em;text-transform:uppercase;align-items:center;gap:.3em;font-weight:800;font-stretch:120%;line-height:.92;display:flex}.next-project .t .arrow{width:.7em;height:.7em;color:var(--spark);transition:transform .5s var(--ease-out)}.next-project:hover .t .arrow{transform:translate(.15em)}.lightbox{color:#fff;opacity:0;width:100%;max-width:none;height:100dvh;max-height:none;transition:opacity .3s var(--ease), overlay .3s allow-discrete, display .3s allow-discrete;background:#08090af7;border:0;margin:0;padding:0}.lightbox[open]{opacity:1}@starting-style{.lightbox[open]{opacity:0}}.lightbox::backdrop{background:0 0}.lb-stage{place-items:center;padding-inline:clamp(.5rem,5vw,5rem);display:grid;position:absolute;inset:64px 0}.lb-stage img{object-fit:contain;border-radius:var(--radius);user-select:none;width:auto;max-width:100%;height:auto;max-height:100%}.lb-top,.lb-bottom{padding:.75rem var(--gutter);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:absolute;left:0;right:0}.lb-top{top:0}.lb-bottom{bottom:0}.lb-counter,.lb-caption{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.06em;text-transform:uppercase;color:var(--steel-light);font-size:.8rem;font-weight:600}.lb-caption{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lb-btn{width:48px;height:48px;box-shadow:inset 0 0 0 1px var(--line-dark);color:#fff;border-radius:50%;place-items:center;transition:background .25s;display:grid}.lb-btn:hover{background:var(--spark);box-shadow:none}.lb-nav{z-index:2;position:absolute;top:50%;translate:0 -50%}.lb-prev{left:clamp(.25rem,2vw,1.5rem)}.lb-next{right:clamp(.25rem,2vw,1.5rem)}@media (width<=640px){.lb-nav{top:auto;bottom:.5rem;translate:none}.lb-prev{left:auto;right:calc(var(--gutter) + 56px)}.lb-next{right:var(--gutter)}.lb-bottom{padding-right:calc(var(--gutter) + 120px)}}.about-grid{gap:var(--space-xl);display:grid}@media (width>=1000px){.about-grid{grid-template-columns:5fr 7fr}}.about-sticky{align-self:start}@media (width>=1000px){.about-sticky{top:calc(var(--header-h) + var(--space-m));position:sticky}}.about-story p{font-size:var(--step-1);line-height:1.55}.about-story p+p{margin-top:1.1em}.year-badge{aspect-ratio:1;border:1px solid var(--line);text-align:center;border-radius:50%;place-items:center;width:clamp(170px,19vw,240px);display:inline-grid;position:relative}.year-badge b{letter-spacing:-.03em;font-size:clamp(2.2rem,1.6rem + 2.2vw,3.6rem);font-weight:800;font-stretch:118%;line-height:.9;display:block}.year-badge span{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600}.spec-grid{background:var(--line);border:1px solid var(--line);counter-reset:sp;gap:1px;display:grid}@media (width>=700px){.spec-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1100px){.spec-grid{grid-template-columns:repeat(3,1fr)}}.spec{background:var(--surface);padding:var(--space-l) var(--space-m);align-content:space-between;gap:var(--space-l);min-height:200px;transition:background .35s,color .35s;display:grid}.spec p{font-size:var(--step-1);letter-spacing:-.01em;font-weight:600;line-height:1.25}.spec:hover{background:var(--ink);color:#fff}.people{background:var(--line);border:1px solid var(--line);gap:1px;display:grid}@media (width>=800px){.people{grid-template-columns:repeat(2,1fr)}.people.single{grid-template-columns:1fr}}.person{background:var(--surface);padding:var(--space-l) var(--space-m);gap:var(--space-m);align-content:space-between;display:grid}@media (width>=800px){.person{min-height:190px}}.person .role{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:600}.person h3{font-size:var(--step-2);font-stretch:110%}.person a{overflow-wrap:anywhere;align-items:center;gap:.6rem;font-size:.98rem;font-weight:500;text-decoration:none;display:inline-flex}.person a:hover{color:var(--spark-ink)}.person a:hover .arrow{transform:translate(3px)}.person .arrow{transition:transform .3s var(--ease-out)}.person.safety{background:var(--ink);color:#fff;--muted:var(--steel-light)}.person.safety a:hover{color:var(--spark-soft)}.company-card{gap:var(--space-s);padding:var(--space-l) var(--space-m);background:var(--ink);color:#fff;border-radius:var(--radius);display:grid}.company-card dl{gap:var(--space-s);display:grid}.company-card dt{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.08em;text-transform:uppercase;color:var(--steel-light);font-size:.72rem;font-weight:600}.company-card dd{font-size:1rem}.company-card a{color:#fff}.contact-grid{gap:var(--space-xl);display:grid}@media (width>=1100px){.contact-grid{grid-template-columns:8fr 4fr;align-items:start}.contact-grid aside{top:calc(var(--header-h) + var(--space-m));position:sticky}}.group-title{margin-bottom:var(--space-m);justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.group-title h2{font-size:var(--step-2)}.legal-layout{gap:var(--space-xl);display:grid}@media (width>=1100px){.legal-layout{grid-template-columns:3fr 8fr}.legal-toc{top:calc(var(--header-h) + var(--space-m));align-self:start;position:sticky}}.legal-toc ol{margin-top:var(--space-s);gap:.35rem;padding:0;list-style:none;display:grid}.legal-toc a{color:var(--muted);font-size:.92rem;text-decoration:none}.legal-toc a:hover{color:var(--text)}.prose{max-width:72ch}.prose h2,.prose h3{font-size:var(--step-2);margin-top:var(--space-l);margin-bottom:var(--space-s);letter-spacing:-.02em;font-stretch:108%}.prose h4{font-size:var(--step-1);margin-top:var(--space-m);letter-spacing:-.01em;margin-bottom:.5rem;font-stretch:105%}.prose p,.prose ul,.prose ol,.prose address,.prose table{margin-bottom:1rem}.prose ul,.prose ol{padding-left:1.2rem}.prose li+li{margin-top:.35rem}.prose a{overflow-wrap:anywhere;text-decoration-color:var(--spark);text-decoration-thickness:1.5px}.prose table{border-collapse:collapse;width:100%;font-size:.92rem;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:.6rem .75rem}.prose address{font-style:normal}.prose .lnv-draft-notice{border:1px solid color-mix(in oklab, var(--spark) 45%, transparent);background:color-mix(in oklab, var(--spark) 8%, var(--surface));padding:var(--space-s) var(--space-m);margin-bottom:var(--space-l);border-radius:var(--radius)}.prose .lnv-draft-notice p{margin:0}.prose mark.lnv-todo{color:var(--text);background:#fff0b3;border-radius:2px;padding:0 .25em}.notfound{background:var(--ink);color:#fff;min-height:100svh;padding-top:var(--header-h);isolation:isolate;align-items:center;display:grid;position:relative;overflow:clip}.notfound .code{letter-spacing:-.03em;color:#0000;-webkit-text-stroke:1px #ffffff40;z-index:-1;user-select:none;font-size:clamp(8rem,34vw,30rem);font-weight:900;font-stretch:125%;line-height:.8;position:absolute;bottom:-.08em;right:-.04em}.notfound h1{font-size:var(--step-5);letter-spacing:-.03em;font-weight:800;font-stretch:120%;line-height:.95}.site-footer{background:var(--ink);color:#fff;--line:var(--line-dark);--muted:var(--steel-light);position:relative;overflow:clip}.footer-top{gap:var(--space-xl);padding-block:var(--space-2xl) var(--space-xl);display:grid}@media (width>=1000px){.footer-top{grid-template-columns:5fr 7fr}}.footer-brand img{width:min(300px,70%);height:auto}.footer-brand p{margin-top:var(--space-m);font-style:italic;font-weight:300;font-size:var(--step-2);color:var(--steel-light);line-height:1.1}.footer-cols{gap:var(--space-l);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.footer-cols h2{font-family:var(--font-sans);font-stretch:var(--label-stretch);letter-spacing:.08em;text-transform:uppercase;color:var(--steel-light);margin-bottom:var(--space-s);font-size:.75rem;font-weight:500}.footer-cols ul{gap:.5rem;display:grid}.footer-cols a{font-size:.98rem;text-decoration:none}.footer-cols a:hover{color:var(--spark-soft)}.footer-cols address{overflow-wrap:anywhere;font-size:.98rem;font-style:normal;line-height:1.6}.footer-bottom{justify-content:space-between;gap:var(--space-s) var(--space-l);padding-block:var(--space-m);border-top:1px solid var(--line-dark);color:var(--steel-light);flex-wrap:wrap;font-size:.8rem;display:flex}.footer-bottom p{max-width:90ch}.to-top{align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.to-top:hover{color:#fff}.project-hero .media picture,.video-box>picture{display:block;position:absolute;inset:0}.project-hero .media img,.video-box>picture img{object-fit:cover;width:100%;height:100%}.statement{font-size:var(--step-3);letter-spacing:-.02em;text-wrap:balance;max-width:30ch;font-weight:500;font-stretch:105%;line-height:1.18}.statement b{color:var(--spark-ink);font-variant-numeric:tabular-nums;font-weight:800;font-stretch:118%}.statement-wrap{border-bottom:1px solid var(--line)}.spec-list{border-top:1px solid var(--line)}.spec-list .skill{font-size:clamp(1.15rem,.95rem + 1vw,1.75rem)}.addr-label{font-size:.75rem;font-stretch:var(--label-stretch);letter-spacing:.06em;text-transform:uppercase;color:var(--steel-light);margin-bottom:.25rem;font-weight:600;display:block}.eyebrow{font-size:.8rem}@media (width<=999px){.project-body>.project-desc{order:-1}.project-body>div:first-child{align-items:center;gap:var(--space-s) var(--space-m);flex-wrap:wrap;display:flex}}.hero-motto{font-size:var(--step-2);letter-spacing:-.01em;color:var(--spark-soft);margin-top:calc(-1 * var(--space-s));animation:fade-up 1s .25s var(--ease-out) both;font-style:italic;font-weight:500;font-stretch:100%}.why-slides{isolation:isolate}.why-slide{opacity:0;margin:0;animation:25s infinite why-fade;position:absolute;inset:0}.why-slide img{object-fit:cover;width:100%;height:100%}.why-slide:first-child{opacity:1;animation-delay:0s}.why-slide:nth-child(2){animation-delay:5s}.why-slide:nth-child(3){animation-delay:10s}.why-slide:nth-child(4){animation-delay:15s}.why-slide:nth-child(5){animation-delay:20s}@keyframes why-fade{0%{opacity:0}4%{opacity:1}20%{opacity:1}24%{opacity:0}to{opacity:0}}.why-slides:hover .why-slide{animation-play-state:paused}}@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mt-s{margin-top:var(--space-s)}.mt-m{margin-top:var(--space-m)}.mt-l{margin-top:var(--space-l)}.mt-xl{margin-top:var(--space-xl)}.muted{color:var(--muted)}.spark{color:var(--spark)}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation:linear both reveal view();animation-range:entry cover 28%}.reveal-img img{animation:linear both reveal-img view();animation-range:entry cover 45%}.parallax img{animation:linear both parallax view();animation-range:cover}.progress-weld{animation:linear both weld scroll(root)}}}@keyframes reveal{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes reveal-img{0%{clip-path:inset(12% 6%);transform:scale(1.12)}to{clip-path:inset(0);transform:none}}@keyframes parallax{0%{transform:translateY(-6%)scale(1.12)}to{transform:translateY(6%)scale(1.12)}}@keyframes bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes weld{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.progress-weld{height:2px;z-index:var(--z-progress);background:linear-gradient(90deg, var(--spark), var(--spark-soft));transform-origin:0;pointer-events:none;box-shadow:0 0 12px var(--spark);position:fixed;inset:0 0 auto;transform:scaleX(0)}@supports not (animation-timeline:scroll()){.progress-weld{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.hero-slide{opacity:0;animation:none!important}.hero-slide:first-child{opacity:1}.hero-slide img{transform:none;animation:none!important}.marquee-track{row-gap:var(--space-s);flex-wrap:wrap;width:auto;animation:none!important}.marquee-track [aria-hidden=true]{display:none}}@media (width<=999px){.project-body>div:first-child>*{margin:0}.project-body>div:first-child{align-items:baseline}}.cta-mails a small{text-transform:none;letter-spacing:.01em;color:var(--steel-light);font-size:.85rem;font-weight:500;font-stretch:100%}}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.45s;animation-timing-function:var(--ease)}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}.why-slide{opacity:0;animation:none!important}.why-slide:first-child{opacity:1}}@layer astro.images{:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down}[data-astro-image-pos=top]{object-position:top}[data-astro-image-pos=bottom]{object-position:bottom}[data-astro-image-pos=left]{object-position:left}[data-astro-image-pos=right]{object-position:right}[data-astro-image-pos=center]{object-position:center}[data-astro-image-pos=top-left]{object-position:top left}[data-astro-image-pos=top-right]{object-position:top right}[data-astro-image-pos=top-center]{object-position:top center}[data-astro-image-pos=bottom-left]{object-position:bottom left}[data-astro-image-pos=bottom-right]{object-position:bottom right}[data-astro-image-pos=bottom-center]{object-position:bottom center}[data-astro-image-pos=left-top]{object-position:left top}[data-astro-image-pos=left-bottom]{object-position:left bottom}[data-astro-image-pos=left-center]{object-position:left center}[data-astro-image-pos=right-top]{object-position:right top}[data-astro-image-pos=right-bottom]{object-position:right bottom}[data-astro-image-pos=right-center]{object-position:right center}[data-astro-image-pos=center-top]{object-position:center top}[data-astro-image-pos=center-bottom]{object-position:center bottom}[data-astro-image-pos=center-left]{object-position:center left}[data-astro-image-pos=center-right]{object-position:center right}}
