@font-face{font-family:StudioFallback;src:url('fonts/dp-sans-regular.otf') format('opentype');font-display:swap;font-weight:400}
:root{--bg:#101111;--paper:#edece6;--muted:#b2b5ac;--orange:#ff6b32;--line:#ffffff26;--display:'abacaxi-latin-variable',StudioFallback,sans-serif;--body:'thonglor-soi-4',StudioFallback,sans-serif;--gutter:clamp(24px,4.3vw,88px)}
*{box-sizing:border-box}html{scroll-padding-top:88px;scrollbar-gutter:stable}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--body);font-size:16px;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased}body.menu-open,body.dialog-open{overflow:hidden}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:300;line-height:1.04;letter-spacing:-.04em}em{font-style:normal}h2 em{color:var(--orange)}::selection{background:var(--orange);color:#101111}:where(a,button,input,summary):focus-visible{outline:2px solid var(--orange);outline-offset:5px}:where(.project-screen,.project-open,.contact-button){touch-action:manipulation}.section-pad{padding-inline:var(--gutter)}.eyebrow{font-size:12px;line-height:1.6;text-transform:uppercase;letter-spacing:.13em}.section-label{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted)}.tiny-cross{font-size:24px;color:var(--orange);line-height:1}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--orange);margin-right:7px;vertical-align:middle}.skip-link{position:fixed;left:24px;top:-100px;padding:12px 20px;background:var(--paper);color:var(--bg);z-index:100}.skip-link:focus{top:20px}
.header{position:fixed;inset:0 0 auto;height:88px;padding-inline:var(--gutter);z-index:30;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#101111a6,transparent);border-bottom:1px solid transparent;transition:background .2s,border-color .2s}.header.scrolled{background:#101111;border-color:var(--line)}.brand{width:225px}.brand img{width:100%}.header nav{display:flex;align-items:center;gap:34px;font-size:15px}.header nav a{padding-block:12px;transition:color .18s}.header nav a:hover,.header nav a[aria-current=location]{color:var(--orange)}sup{font-size:10px;margin-left:3px;color:var(--muted)}.header nav .nav-contact{display:flex;gap:24px;align-items:center;padding:10px 18px;border:1px solid #ffffff45}.nav-contact span{color:var(--orange);font-size:22px}.header::after{content:'';position:absolute;inset:auto 0 0;height:1px;background:var(--orange);transform:scaleX(var(--page-progress,0));transform-origin:left}.menu-toggle{display:none}.mobile-menu{position:fixed;inset:74px 0 0;z-index:29;background:var(--bg);padding:40px var(--gutter)}.mobile-menu nav{display:grid;gap:24px;font:300 38px/1.15 var(--display)}.mobile-menu>.eyebrow{display:block;margin-top:50px;color:var(--muted)}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;min-height:44px;border-bottom:1px solid #ffffff65;font-size:16px;transition:color .18s}.text-link span{font-size:25px;transition:transform .18s}.text-link:hover{color:var(--orange)}.text-link:hover span{transform:translate(2px,-2px)}
.footer{padding:44px var(--gutter) 26px;background:#0c0e0d;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:40px}.footer-top>a:first-child{width:min(62%,560px)}.back-top{display:flex;align-items:center;gap:24px;min-height:44px;font-size:14px}.back-top span{font-size:22px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;color:var(--muted);font-size:12px;margin-top:38px}.footer-bottom>span:nth-child(2){letter-spacing:.09em}.motion-footer{font-size:12px;min-height:44px;text-decoration:underline;text-underline-offset:5px}
@media(max-width:900px){.brand{width:195px}.header nav{gap:22px;font-size:14px}}
@media(max-width:700px){html{scroll-padding-top:74px}.header{height:74px}.brand{width:178px}.header nav{display:none}.menu-toggle{display:flex;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:6px}.menu-toggle span{width:24px;height:1px;background:var(--paper);transition:transform .18s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.eyebrow{font-size:10px;letter-spacing:.11em}.section-label{gap:14px;padding-top:16px}.footer{padding-top:32px}.footer-top>a:first-child{width:75%}.back-top{font-size:0;gap:0}.back-top span{font-size:25px}.footer-bottom{flex-wrap:wrap;gap:12px;margin-top:26px;font-size:11px}.footer-bottom>span:nth-child(2){display:none}.motion-footer{font-size:11px}.text-link{font-size:15px;gap:24px}}
.reduced *, .reduced *::before,.reduced *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){html:not(.js) *,html:not(.js) *::before,html:not(.js) *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
