@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-vietnamese-wght-normal.CnvboYUG.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-ext-wght-normal.Ca2vKHc0.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-wght-normal.ukD16Tqj.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.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{--color-base:#000;--color-light:#f4f4f2;--color-accent-dark:#3d4220;--color-accent-light:#6b6b2f;--font-display:"Fraunces Variable", Georgia, serif;--font-body:"Inter Variable", system-ui, sans-serif;--maxw:1120px;--gutter:clamp(20px, 5vw, 64px)}*,:before,:after{box-sizing:border-box}html{background:var(--color-base);color:var(--color-light);font-family:var(--font-body);scroll-behavior:smooth}body{background:var(--color-base);min-width:0;min-height:100vh;color:var(--color-light);flex-direction:column;margin:0;font-size:1rem;line-height:1.6;display:flex;overflow-x:clip}main{flex:1}a{color:inherit;text-underline-offset:.24em;text-decoration-thickness:1px}a:hover{color:color-mix(in srgb, var(--color-accent-light) 45%, var(--color-light))}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-accent-light);outline-offset:4px}p,h1,h2,h3{margin-block:0}.shell{width:min(100%, calc(var(--maxw) + (2 * var(--gutter))));padding-inline:var(--gutter);margin-inline:auto}.skip-link{top:0;left:var(--gutter);z-index:40;background:var(--color-light);color:var(--color-base);padding:.65rem 1rem;position:fixed;transform:translateY(-110%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;border-bottom:1px solid color-mix(in srgb, var(--color-light) 18%, var(--color-base));position:relative}.site-header__inner{justify-content:space-between;align-items:center;gap:1.5rem;min-height:88px;display:flex}.wordmark{font-family:var(--font-display);letter-spacing:.045em;white-space:nowrap;font-size:clamp(1.1rem,2vw,1.45rem);font-weight:600;line-height:1;text-decoration:none}.menu-toggle,.menu-close{color:var(--color-light);cursor:pointer;background:0 0;border:0;padding:0}.menu-toggle{flex-direction:column;justify-content:center;align-items:center;gap:7px;width:48px;height:48px;display:flex}.menu-toggle span{background:currentColor;width:30px;height:1px;display:block}.menu-overlay{z-index:30;background:var(--color-base);opacity:0;visibility:hidden;transition:opacity .24s,visibility 0s linear .24s;position:fixed;inset:0;overflow-y:auto}.menu-overlay[data-open=true]{opacity:1;visibility:visible;transition-delay:0s}.menu-overlay__header{min-height:88px;border-bottom:1px solid color-mix(in srgb, var(--color-light) 18%, var(--color-base));justify-content:space-between;align-items:center;gap:1.5rem;padding-inline-end:calc(var(--gutter) + var(--menu-scrollbar-compensation,0px));display:flex}.menu-close{min-width:48px;min-height:48px;font:550 .78rem/1 var(--font-body);letter-spacing:.08em;text-align:right}.menu-overlay__nav{min-height:calc(100dvh - 88px);align-items:center;padding-block:clamp(3rem,8vh,6rem);padding-inline-end:calc(var(--gutter) + var(--menu-scrollbar-compensation,0px));display:flex}.menu-overlay__links{flex-direction:column;gap:clamp(1.5rem,4vh,3rem);margin:0;padding:0;list-style:none;display:flex}.menu-overlay__links a{font-family:var(--font-display);letter-spacing:-.05em;text-transform:uppercase;font-size:clamp(3.25rem,11vw,8rem);font-weight:420;line-height:.88;text-decoration:none;display:inline-block}.menu-overlay__links a[aria-current=page]{color:color-mix(in srgb, var(--color-accent-light) 45%, var(--color-light))}.social-links{align-items:center;gap:clamp(1rem,3vw,2.25rem);margin:0;padding:0;list-style:none;display:flex}.social-links a{letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:550;text-decoration:none}.site-footer{border-top:1px solid color-mix(in srgb, var(--color-light) 18%, var(--color-base))}.site-footer__inner{justify-content:space-between;align-items:center;gap:2rem;min-height:120px;display:flex}.site-footer p{letter-spacing:.02em;font-size:.84rem}.hero{align-items:flex-end;min-height:calc(100svh - 88px);padding-block:clamp(5rem,13vw,10rem) clamp(4rem,9vw,7.5rem);display:flex}.section-label,.case-study__number,.case-study__sector{color:color-mix(in srgb, var(--color-accent-light) 45%, var(--color-light));letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:650}.hero h1{max-width:15ch;font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(2.6rem,6.4vw,5.6rem);font-weight:420;line-height:.98}.intro-section,.services-section,.page-intro,.about-section,.contact-section{border-top:1px solid color-mix(in srgb, var(--color-light) 18%, var(--color-base))}.intro-section{background:color-mix(in srgb, var(--color-accent-dark) 18%, var(--color-base));padding-block:clamp(4rem,10vw,8rem)}.intro-grid{grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);display:grid}.intro-copy{max-width:44rem;font-family:var(--font-display);letter-spacing:-.018em;grid-column:1;font-size:clamp(1.45rem,3vw,2.25rem);font-weight:380;line-height:1.28}.services-section{padding-block:clamp(4rem,10vw,8rem)}.services-heading-row{justify-content:flex-end;align-items:end;gap:2rem;margin-bottom:clamp(3rem,7vw,5rem);display:flex}.services-heading-row h2,.page-title,.about-heading,.contact-heading{font-family:var(--font-display);letter-spacing:-.055em;font-size:clamp(3.2rem,10vw,8.5rem);font-weight:420;line-height:.88}.services-grid{border-top:1px solid color-mix(in srgb, var(--color-light) 24%, var(--color-base));grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.service-card{padding:2rem 1.75rem 1rem 0}.service-card+.service-card{border-left:1px solid color-mix(in srgb, var(--color-light) 24%, var(--color-base));padding-left:1.75rem}.service-card__number{color:color-mix(in srgb, var(--color-accent-light) 45%, var(--color-light));font-family:var(--font-display);margin-bottom:4rem;font-size:1rem}.service-card h3{min-height:3.5em;font-family:var(--font-display);margin-bottom:1.25rem;font-size:clamp(1.45rem,2.6vw,2rem);font-weight:430;line-height:1.12}.service-card p{color:color-mix(in srgb, var(--color-light) 72%, var(--color-base));font-size:.94rem}.cta-row{justify-content:flex-end;padding-top:clamp(4rem,9vw,7rem);display:flex}.text-link{color:var(--color-light);font-family:var(--font-display);text-decoration-color:var(--color-accent-light);align-items:center;gap:1rem;font-size:clamp(1.35rem,3vw,2rem);display:inline-flex}.text-link:after{content:"↗";color:var(--color-accent-light);font-family:var(--font-body)}.page-intro{padding-block:clamp(6rem,15vw,12rem) clamp(4rem,9vw,7rem)}.page-intro .section-label,.about-section .section-label,.contact-section .section-label{margin-bottom:clamp(2rem,6vw,5rem)}.work-list{border-top:1px solid color-mix(in srgb, var(--color-light) 24%, var(--color-base))}.case-study{border-bottom:1px solid color-mix(in srgb, var(--color-light) 24%, var(--color-base));grid-template-columns:5rem minmax(0,1.25fr) minmax(15rem,1fr);gap:clamp(1.5rem,5vw,5rem);padding-block:clamp(2.5rem,6vw,5rem);display:grid}.case-study h2{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(2rem,5vw,4rem);font-weight:420;line-height:1}.case-study__details{flex-direction:column;gap:1rem;padding-top:.4rem;display:flex}.case-study__details p:last-child{max-width:34rem;color:color-mix(in srgb, var(--color-light) 72%, var(--color-base))}.about-section,.contact-section{padding-block:clamp(6rem,15vw,12rem)}.about-heading,.contact-heading{margin-bottom:clamp(4rem,10vw,8rem)}.about-copy{max-width:46rem;font-family:var(--font-display);letter-spacing:-.025em;margin-left:auto;font-size:clamp(1.55rem,3.5vw,2.75rem);font-weight:380;line-height:1.22}.contact-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);align-items:start;gap:clamp(3rem,10vw,8rem);display:grid}.contact-email{font-family:var(--font-display);overflow-wrap:anywhere;text-decoration-color:var(--color-accent-light);font-size:clamp(1.35rem,3.5vw,2.5rem);display:inline-block}.contact-form{gap:1.75rem;display:grid}.form-field{gap:.6rem;display:grid}.form-field label{letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:650}.form-field input,.form-field textarea{border:0;border-bottom:1px solid color-mix(in srgb, var(--color-light) 34%, var(--color-base));width:100%;color:var(--color-light);font:inherit;background:0 0;border-radius:0;padding:.75rem 0 1rem}.form-field textarea{resize:vertical;min-height:8rem}.form-field input::placeholder,.form-field textarea::placeholder{color:color-mix(in srgb, var(--color-light) 45%, var(--color-base))}.contact-form button{border:1px solid var(--color-accent-light);color:color-mix(in srgb, var(--color-light) 46%, var(--color-base));font:600 .75rem/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;cursor:not-allowed;background:0 0;justify-self:start;padding:.85rem 1.2rem}@media (width<=720px){.hero{min-height:calc(100svh - 88px)}.hero h1{font-size:clamp(2.35rem,11vw,3.55rem);line-height:1}.intro-grid,.contact-grid{grid-template-columns:1fr}.services-heading-row{flex-direction:column;align-items:flex-start}.services-grid{grid-template-columns:1fr}.service-card{padding:2rem 0}.service-card+.service-card{border-top:1px solid color-mix(in srgb, var(--color-light) 24%, var(--color-base));border-left:0;padding-left:0}.service-card__number{margin-bottom:2.25rem}.service-card h3{min-height:auto}.case-study{grid-template-columns:2.5rem minmax(0,1fr)}.case-study__details{grid-column:2}.site-footer__inner{flex-direction:column;justify-content:center;align-items:flex-start;padding-block:2rem}}@media (width<=390px){.page-title,.about-heading,.contact-heading{font-size:3.25rem}.case-study{grid-template-columns:1fr}.case-study__details{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.menu-overlay{transition:none}}
