:root{--paper:#f1f0ed;--ink:#151514;--muted:#77736e;--line:#d2d0cb;--pad:clamp(18px,2.55vw,38px);--radius:30px}
*{box-sizing:border-box}
html{overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:clip}
a{color:inherit;text-decoration:none}
.page-pad{padding-left:var(--pad);padding-right:var(--pad)}
.nav-shell{height:66px;position:sticky;top:0;background:rgba(241,240,237,.92);backdrop-filter:blur(14px);z-index:100}
.nav{height:100%;display:grid;grid-template-columns:1.18fr repeat(5,1fr);align-items:center;padding:0 var(--pad);font-weight:600;font-size:15px}
.nav-logo img{display:block;width:146px;height:48px;object-fit:contain}
.nav a{transition:opacity .2s}
.nav a:hover,.nav a[aria-current="page"]{opacity:.42}
.subpage-main{min-height:calc(100dvh - 66px);padding-top:clamp(96px,12vw,178px);padding-bottom:clamp(130px,17vw,250px)}
.section-label{display:flex;align-items:center;gap:9px;margin:0 0 clamp(46px,7vw,94px);font-size:14px;font-weight:600}
.section-label i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--paper);font-style:normal;font-size:15px}
.subpage-main h1{max-width:1320px;margin:0;color:#a4a19c;font-size:clamp(72px,11.4vw,174px);font-weight:500;line-height:.78;letter-spacing:-.075em}
.subpage-main>p:last-child{max-width:590px;margin:clamp(64px,9vw,130px) 0 0 clamp(0px,25vw,370px);color:var(--muted);font-size:clamp(17px,1.45vw,21px);line-height:1.5}
.footer{background:#161615;color:#fff;padding-top:120px;padding-bottom:35px;display:grid;grid-template-columns:1.65fr repeat(3,1fr);gap:50px}
.footer img{width:260px;filter:invert(1)}
.footer>div:first-child p{max-width:310px;color:#999;line-height:1.5}
.footer>div:not(:first-child){display:flex;flex-direction:column;gap:12px}
.footer b{margin-bottom:10px;color:#777;font-size:12px}
.footer a{font-size:14px}
.footer-copy{grid-column:1/-1;margin-top:70px;padding-top:30px;border-top:1px solid #373532;color:#777;font-size:12px}
@media(max-width:900px){.nav{grid-template-columns:1fr repeat(2,auto);gap:22px}.nav a:not(.nav-logo):not(:nth-last-child(-n+2)){display:none}.footer{grid-template-columns:1fr 1fr}.footer>div:first-child{grid-column:1/-1}.subpage-main>p:last-child{margin-left:0}}
@media(max-width:560px){:root{--radius:20px}.nav-shell{height:58px}.nav-logo img{width:115px}.nav{gap:16px;font-size:13px}.subpage-main{min-height:calc(100dvh - 58px);padding-top:85px;padding-bottom:120px}.subpage-main h1{font-size:19vw;line-height:.82}.subpage-main>p:last-child{margin-top:62px;font-size:17px}.footer{grid-template-columns:1fr;padding-top:90px}.footer>div:first-child{grid-column:1}.footer img{width:210px}}
@media(prefers-reduced-motion:reduce){.nav a{transition:none}}

/* Unified responsive header */
.menu{display:none;width:44px;height:44px;padding:12px 5px;background:none;border:0;color:inherit;cursor:pointer}.menu i{display:block;height:1.5px;margin:7px 0;background:currentColor;transition:transform .3s cubic-bezier(.22,1,.36,1)}.menu:focus-visible{outline:2px solid currentColor;outline-offset:2px}
@media(max-width:900px){html.menu-open{overflow:hidden}.nav-shell{background:rgba(241,240,237,.97)}.nav{position:relative;grid-template-columns:1fr auto;gap:0}.menu{display:block;position:relative;z-index:2}.nav>a:not(.nav-logo){position:fixed;left:var(--pad);right:var(--pad);z-index:1;display:block;visibility:hidden;opacity:0;transform:translateY(14px);font-size:clamp(28px,8vw,48px);font-weight:500;line-height:1;letter-spacing:-.04em;transition:opacity .25s ease,transform .35s cubic-bezier(.22,1,.36,1),visibility 0s .35s}.nav>a:nth-of-type(2){top:clamp(120px,18vh,170px)}.nav>a:nth-of-type(3){top:clamp(180px,27vh,245px)}.nav>a:nth-of-type(4){top:clamp(240px,36vh,320px)}.nav>a:nth-of-type(5){top:clamp(300px,45vh,395px)}.nav>a:nth-of-type(6){top:clamp(360px,54vh,470px)}.nav::after{content:"";position:fixed;inset:0;z-index:0;background:var(--paper);visibility:hidden;opacity:0;pointer-events:none;transition:opacity .3s ease,visibility 0s .35s}.nav.is-open::after{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}.nav.is-open>a:not(.nav-logo){visibility:visible;opacity:1;transform:none;transition-delay:60ms,60ms,0s}.nav.is-open .menu i:first-child{transform:translateY(4.25px) rotate(45deg)}.nav.is-open .menu i:last-child{transform:translateY(-4.25px) rotate(-45deg)}}
@media(prefers-reduced-motion:reduce){.nav::after,.nav>a,.menu i{transition:none!important}}
@media(max-width:900px){.nav-logo{position:relative;z-index:2}}
