@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/archivo-vietnamese-wght-normal.XAtsl5Q_.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;src:url(/_astro/archivo-latin-ext-wght-normal.C4zznr8T.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;src:url(/_astro/archivo-latin-wght-normal.E0tuGl4L.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:Cormorant Garamond Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/cormorant-garamond-cyrillic-ext-wght-normal.Bg62sWL9.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:Cormorant Garamond Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/cormorant-garamond-cyrillic-wght-normal.BWCqVJN0.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/cormorant-garamond-vietnamese-wght-normal.CDLFB6hb.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:Cormorant Garamond Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/cormorant-garamond-latin-ext-wght-normal.ltf1AbuM.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:Cormorant Garamond Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/cormorant-garamond-latin-wght-normal.CUoBjw-S.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{--ink:#111;--muted:#666;--label:#999;--line:#e7e7e4;--input-line:#d5d5d1;--surface:#fff;--backdrop:#ececea;--section-x:64px;--section-y:110px;color-scheme:light;font-synthesis:none;font-family:Archivo Variable,Archivo,sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--surface);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Archivo Variable,Archivo,sans-serif}body,button,input,textarea{font:inherit}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}:focus-visible{outline:2px solid var(--ink);outline-offset:4px}::selection{background:var(--ink);color:var(--surface)}.skip-link{z-index:100;background:var(--ink);color:var(--surface);padding:12px 18px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.page-shell{background:var(--surface);width:min(100%,1440px);margin-inline:auto;overflow:clip}.site-header{z-index:20;height:92px;padding:0 var(--section-x);border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;display:flex;position:relative}.brand,.brand img{flex:none}.main-nav{letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:34px;font-size:12px;font-weight:550;display:flex}.main-nav>a{transition:color .16s}.main-nav>a:hover{color:#555}.language-switcher{color:var(--label);align-items:center;gap:6px;display:flex;position:relative}.language-switcher [aria-current=page]{color:var(--ink)}.menu-toggle{display:none}.hero{background:#202020;height:720px;position:relative;overflow:hidden}.hero__image{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero__overlay{background:linear-gradient(#0000000d 45%,#0000008c);position:absolute;inset:0}.hero h1{max-width:1040px;color:var(--surface);letter-spacing:-.025em;text-shadow:0 2px 18px #00000073;margin:0;font-family:Cormorant Garamond Variable,Cormorant Garamond,serif;font-size:clamp(68px,6.4vw,92px);font-weight:500;line-height:1.04;position:absolute;bottom:64px;left:48px}.content-section{padding:var(--section-y) var(--section-x);border-bottom:1px solid var(--line);scroll-margin-top:24px}.section-grid{grid-template-columns:300px minmax(0,1fr);gap:48px;display:grid}.section-label{color:var(--label);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px;font-weight:650;line-height:1.4}.section-label--spaced{margin-bottom:48px}.services-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 64px;display:grid}.services-list ul{margin:0;padding:0;list-style:none}.services-list li{border-top:1px solid var(--line);padding:16px 0;font-size:15px;line-height:1.5;transition:padding .16s,background-color .16s}.services-list li:hover{background:#f6f6f3;padding-inline:10px}.services-copy{max-width:760px;color:var(--muted);margin:40px 0 0;font-size:15px;line-height:1.7}.team-grid{grid-template-columns:300px minmax(260px,1fr) 480px;align-items:start;gap:48px;display:grid}.team-copy{margin:0;font-size:21px;line-height:1.55}.team-image{object-fit:cover;width:100%;height:320px}.section-heading-row{justify-content:space-between;align-items:baseline;margin-bottom:48px;display:flex}.underlined-link{letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid;padding-bottom:5px;font-size:12px;font-weight:650;line-height:1.2;transition:color .16s;display:inline-block}.underlined-link:hover{color:#555}.project-grid,.news-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.project-card{border:1px solid var(--line);display:block;overflow:hidden}.project-card img{object-fit:cover;width:100%;height:300px;transition:transform .42s cubic-bezier(.22,1,.36,1)}.project-card:hover img{transform:scale(1.025)}.news-card{flex-direction:column;align-items:flex-start;gap:16px;min-width:0;display:flex}.news-card__image{width:100%;overflow:hidden}.news-card__image img{object-fit:cover;width:100%;height:240px;transition:transform .42s cubic-bezier(.22,1,.36,1)}.news-card__image:hover img{transform:scale(1.025)}.news-card__meta{color:var(--label);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:11px;line-height:1.5}.news-card h3{margin:0;font-size:20px;font-weight:520;line-height:1.35}.news-card h3 a:hover{color:#555}.news-card__excerpt{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.news-card__read{margin-top:auto}.contact-grid{border-bottom:0;grid-template-columns:300px minmax(260px,1fr) minmax(320px,1fr);gap:48px;display:grid}.contact-details{flex-direction:column;gap:32px;min-width:0;display:flex}.eyebrow{color:var(--label);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:11px;line-height:1.4}.contact-value{overflow-wrap:anywhere;font-size:clamp(18px,1.55vw,22px);font-weight:520}.contact-value:hover{color:#555}.contact-actions{flex-wrap:wrap;gap:16px;display:flex}.outline-button,.submit-button{border:1px solid var(--ink);letter-spacing:.12em;text-transform:uppercase;padding:12px 22px;font-size:12px;font-weight:650;line-height:1.2;transition:color .16s,background-color .16s}.outline-button:hover{background:var(--ink);color:var(--surface)}.contact-form{flex-direction:column;gap:26px;min-width:0;display:flex}.contact-form>label:not(.privacy-consent){display:block}.contact-form input:not([type=checkbox]),.contact-form textarea{border:0;border-bottom:1px solid var(--input-line);width:100%;color:var(--ink);background:0 0;border-radius:0;outline:0;padding:12px 0;font-size:15px;transition:border-color .16s}.contact-form textarea{resize:vertical;min-height:120px}.contact-form input:not([type=checkbox]):focus,.contact-form textarea:focus{border-bottom-color:var(--ink)}.contact-form ::placeholder{color:#9a9a96;opacity:1}.privacy-consent{color:var(--muted);cursor:pointer;grid-template-columns:18px 1fr;align-items:start;gap:10px;font-size:12px;line-height:1.5;display:grid}.privacy-consent input{width:16px;height:16px;accent-color:var(--ink);margin:1px 0 0}.privacy-consent a{text-underline-offset:2px;text-decoration:underline}.required-note{color:var(--label);margin:-16px 0 0 28px;font-size:12px}.submit-button{background:var(--ink);color:var(--surface);cursor:pointer;align-self:flex-start;padding:16px 40px}.submit-button:hover{background:#333}.form-honeypot{position:absolute;left:-9999px}.site-footer{border-top:1px solid var(--ink);background:var(--surface);grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;padding:40px 48px;font-size:13px;display:grid}.site-footer p{margin:0;font-weight:520}.site-footer nav{flex-wrap:wrap;gap:24px;display:flex}.site-footer nav a{transition:color .16s}.site-footer nav:not(.site-footer__legal) a:hover{color:var(--label)}.site-footer__legal{color:var(--label);justify-content:flex-end}.site-footer__legal a:hover{color:var(--ink)}.inner-page{min-height:70vh}.not-found{place-items:center;min-height:calc(100vh - 92px);display:grid;overflow:hidden}.not-found__content{width:100%;padding:132px var(--section-x);border-bottom:1px solid var(--line);position:relative}.not-found__content>:not(.not-found__number){z-index:1;position:relative}.not-found__content h1{letter-spacing:-.045em;max-width:780px;margin:24px 0 32px;font-family:Cormorant Garamond Variable,Cormorant Garamond,serif;font-size:clamp(76px,10vw,156px);font-weight:500;line-height:.84}.not-found__content>p:not(.section-label){max-width:380px;color:var(--muted);margin:0 0 36px;font-size:16px;line-height:1.65}.not-found__button{border:1px solid var(--ink);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:26px;padding:15px 20px;font-size:12px;font-weight:650;line-height:1.2;transition:background-color .16s,color .16s;display:inline-flex}.not-found__button:hover{background:var(--ink);color:var(--surface)}.not-found__number{color:#f2f2ef;letter-spacing:-.08em;pointer-events:none;user-select:none;font-family:Cormorant Garamond Variable,Cormorant Garamond,serif;font-size:clamp(200px,34vw,500px);font-weight:500;line-height:.7;position:absolute;bottom:-.12em;right:max(3vw,40px)}.inner-page__header{padding:110px var(--section-x) 72px;border-bottom:1px solid var(--line);grid-template-columns:300px minmax(0,1fr);align-items:start;gap:48px;display:grid}.inner-page__header h1{letter-spacing:-.025em;max-width:900px;margin:-10px 0 0;font-family:Cormorant Garamond Variable,Cormorant Garamond,serif;font-size:clamp(52px,6.2vw,86px);font-weight:500;line-height:1.02}.inner-page__content{padding:80px var(--section-x) 110px}.article-content,.legal-copy,.narrow-copy{width:min(100%,920px);margin-inline:auto}.article-content__image{object-fit:cover;width:100%;max-height:560px;margin-bottom:52px}.article-content>p,.narrow-copy>p{color:var(--muted);margin:0 0 24px;font-size:17px;line-height:1.75}.article-content .article-lead,.narrow-copy .article-lead,.article-lead{color:var(--ink);font-size:clamp(21px,2.2vw,28px);line-height:1.5}.article-content>p:has(.underlined-link){margin-top:44px}.back-link{color:var(--label);font-size:13px}.back-link:hover{color:var(--ink)}.legal-copy{width:min(100%,820px)}.legal-copy h2{letter-spacing:.02em;margin:52px 0 16px;font-size:20px;font-weight:600}.legal-copy p,.legal-copy li{color:var(--muted);font-size:15px;line-height:1.75}.legal-copy a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.legal-copy__updated{margin-top:64px;color:var(--label)!important;font-size:12px!important}.projects-intro{width:min(100%,920px);margin:0 auto 56px}.projects-page-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:96px;display:grid}.projects-page-gallery img{border:1px solid var(--line);object-fit:cover;width:100%;height:300px}.project-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:72px 80px;margin-bottom:72px;display:grid}.project-categories section{border-top:1px solid var(--ink)}.project-categories h2{letter-spacing:.1em;text-transform:uppercase;margin:22px 0 24px;font-size:15px;font-weight:650;line-height:1.5}.project-categories ul{margin:0;padding:0;list-style:none}.project-categories li{border-top:1px solid var(--line);color:var(--muted);padding:12px 0;font-size:14px;line-height:1.55}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1180px){:root{--section-x:48px}.main-nav{gap:22px}.team-grid,.contact-grid{grid-template-columns:220px minmax(0,1fr) minmax(300px,.9fr);gap:36px}.section-grid,.inner-page__header{grid-template-columns:220px minmax(0,1fr);gap:36px}}@media (width<=1024px){:root{--section-y:88px}.hero{height:620px}.hero h1{font-size:clamp(58px,7.6vw,76px)}.team-grid,.contact-grid{grid-template-columns:190px minmax(0,1fr)}.team-image,.contact-form{grid-column:2}.inner-page__header{grid-template-columns:190px minmax(0,1fr)}.projects-page-gallery img{height:240px}.team-image{height:380px}.project-grid,.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card:last-child,.news-card:last-child{grid-column:1/-1;width:calc(50% - 12px)}}@media (width<=900px){.site-header{height:80px}.not-found{min-height:calc(100vh - 80px)}.menu-toggle{cursor:pointer;letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:12px;padding:10px 0;font-size:11px;font-weight:650;display:flex}.menu-toggle__icon,.menu-toggle__icon:before,.menu-toggle__icon:after{background:var(--ink);width:22px;height:1px;transition:transform .18s;display:block}.menu-toggle__icon{position:relative}.menu-toggle__icon:before,.menu-toggle__icon:after{content:"";position:absolute;left:0}.menu-toggle__icon:before{top:-6px}.menu-toggle__icon:after{top:6px}.menu-open .menu-toggle__icon{background:0 0}.menu-open .menu-toggle__icon:before{top:0;transform:rotate(45deg)}.menu-open .menu-toggle__icon:after{top:0;transform:rotate(-45deg)}.main-nav{border-bottom:1px solid var(--line);background:var(--surface);opacity:0;pointer-events:none;visibility:hidden;flex-direction:column;align-items:flex-start;gap:0;max-height:0;transition:max-height .26s,opacity .18s,visibility 0s linear .26s;display:flex;position:absolute;top:100%;left:0;right:0;overflow:hidden}.menu-open .main-nav{opacity:1;pointer-events:auto;visibility:visible;max-height:540px;transition:max-height .26s,opacity .18s,visibility}.main-nav>a,.language-switcher{width:100%;padding:18px var(--section-x);border-top:1px solid var(--line)}}@media (width<=820px){.section-grid,.team-grid,.contact-grid{grid-template-columns:minmax(0,1fr);gap:40px}.team-image,.contact-form{grid-column:auto}.inner-page__header{grid-template-columns:minmax(0,1fr);gap:28px}.inner-page__header h1{margin-top:0}}@media (width<=760px){:root{--section-x:24px;--section-y:68px}.site-header{height:76px}.brand img{width:148px;height:auto}.hero{height:540px}.hero__image{object-position:58% center}.hero h1{letter-spacing:-.02em;font-size:clamp(39px,11.5vw,54px);bottom:58px;left:24px;right:24px}.not-found{min-height:calc(100svh - 76px)}.not-found__content{min-height:calc(100svh - 76px);padding-top:96px;padding-bottom:96px}.not-found__content h1{margin-top:20px;margin-bottom:28px;font-size:clamp(64px,20vw,100px)}.not-found__number{font-size:68vw;right:12px}.section-grid,.team-grid,.contact-grid{grid-template-columns:minmax(0,1fr);gap:38px}.inner-page__header{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:68px;padding-bottom:52px}.inner-page__header h1{margin:0;font-size:clamp(46px,14vw,66px)}.inner-page__content{padding-top:56px;padding-bottom:76px}.article-content__image{margin-bottom:36px}.projects-page-gallery,.project-categories{grid-template-columns:minmax(0,1fr)}.projects-page-gallery{gap:16px;margin-bottom:68px}.projects-page-gallery img{aspect-ratio:4/3;height:auto}.project-categories{gap:48px}.team-image,.contact-form{grid-column:auto}.services-list{grid-template-columns:minmax(0,1fr);gap:0}.services-list ul+ul li:first-child{border-top:1px solid var(--line)}.services-copy{margin-top:32px}.team-copy{font-size:19px}.team-image{aspect-ratio:4/3;height:auto}.section-heading-row{gap:24px}.project-grid,.news-grid{grid-template-columns:minmax(0,1fr);gap:40px}.project-card:last-child,.news-card:last-child{grid-column:auto;width:auto}.project-card img{aspect-ratio:4/3;height:auto}.news-card__image img{aspect-ratio:16/10;height:auto}.contact-value{font-size:19px}.contact-form{margin-top:14px}.site-footer{grid-template-columns:1fr;align-items:start;gap:24px;padding:38px 24px}.site-footer__legal{justify-content:flex-start}}@media (width<=420px){.menu-toggle__label{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.section-heading-row{flex-direction:column;align-items:flex-start}.contact-actions{grid-template-columns:1fr 1fr;display:grid}.outline-button{text-align:center;padding-inline:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
