
body{margin:0;background:#F7F3ED;color:#1B1815;font-family:'Hanken Grotesk',ui-sans-serif,system-ui,-apple-system,'Helvetica Neue',sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:#1B1815;text-decoration:none;transition:color .3s ease}a:hover{color:#6E5640}
a:focus-visible,button:focus-visible{outline:2px solid #6E5640;outline-offset:4px;border-radius:4px}
.on-dark a:focus-visible,.hero a:focus-visible{outline-color:#E4D6C3}
.pac{container-type:inline-size;overflow-x:hidden}
.serif{font-family:'Instrument Serif',Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-0.01em}
.wrap{max-width:1360px;margin:0 auto;padding:0 56px;box-sizing:border-box}
.g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px}
.eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:500}
.plate{position:relative;overflow:hidden}
.plate .fill{position:absolute;inset:0;width:100%;height:100%}
.photo{object-fit:cover;display:block;filter:saturate(.86) contrast(1.03) sepia(.08)}
.grade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(74,52,34,.08),rgba(42,33,27,.2));mix-blend-mode:multiply;pointer-events:none}
.light .fill:not(img)::after{content:"";position:absolute;top:-10%;bottom:-10%;left:56%;width:24%;background:linear-gradient(90deg,rgba(255,240,220,0),rgba(255,240,220,.12),rgba(255,240,220,0));transform:skewX(-9deg)}
.cap{position:absolute;left:22px;right:22px;bottom:18px;font-size:11px;letter-spacing:.08em;line-height:1.5;margin:0}
.cap-d{color:rgba(247,243,237,.82)}
.navlinks a{font-size:13px;letter-spacing:.02em;color:#1B1815;min-height:44px;display:inline-flex;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 26px;border-radius:999px;font-size:14px;letter-spacing:.03em;font-weight:500;box-sizing:border-box;transition:background .4s ease,color .4s ease;white-space:nowrap}
.btn-ink{background:#1B1815;color:#F7F3ED}.btn-ink:hover,.feat:hover .btn-ink{background:#6E5640;color:#F7F3ED}
.btn-ivory{background:#F7F3ED;color:#1B1815}.btn-ivory:hover{background:#D6CCBF;color:#1B1815}
.tel{border-bottom:1px solid currentColor;padding-bottom:2px}
.fl{min-height:40px;display:inline-flex;align-items:center}
.row-link{transition:background .5s ease}.row-link:hover{background:#EEE8DF;color:#1B1815}
.short,.narrow{display:none}
.mobile-menu{display:none;position:static}
.mobile-menu summary{list-style:none;cursor:pointer;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(27,24,21,.12);border-radius:999px;font-size:13px;font-weight:500}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary:focus-visible{outline:2px solid #6E5640;outline-offset:4px}
.mobile-menu-panel{position:absolute;top:54px;right:0;width:min(300px,calc(100vw - 24px));box-sizing:border-box;padding:12px;background:rgba(247,243,237,.98);border:1px solid rgba(27,24,21,.1);border-radius:22px;box-shadow:0 18px 50px rgba(27,24,21,.16);display:flex;flex-direction:column}
.mobile-menu-panel a{min-height:48px;display:flex;align-items:center;padding:0 14px;border-radius:12px;font-size:15px}
.mobile-menu-panel a:hover{background:#EEE8DF;color:#1B1815}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes settle{from{transform:scale(1.07)}to{transform:scale(1)}}
.in1{animation:rise 1.6s cubic-bezier(.2,.7,.2,1) .2s both}
.in2{animation:rise 1.6s cubic-bezier(.2,.7,.2,1) .5s both}
.in3{animation:rise 1.6s cubic-bezier(.2,.7,.2,1) .8s both}
.hero .fill{animation:settle 3.2s cubic-bezier(.2,.7,.2,1) both}
@supports (animation-timeline: view()){
.rv{animation:rise linear both;animation-timeline:view();animation-range:entry 5% entry 85%}
.pz .fill{animation:settle linear both;animation-timeline:view();animation-range:entry 0% cover 60%}
}
@media (prefers-reduced-motion: reduce){.in1,.in2,.in3,.hero .fill,.rv,.pz .fill{animation:none !important}*{transition:none !important;scroll-behavior:auto !important}}
@container (max-width: 860px){
.wrap{padding:0 24px}
.g{column-gap:0;row-gap:32px}
.g>*{grid-column:1 / -1 !important}
.off{margin-top:0 !important}
.navlinks{display:none !important}
.mobile-menu{display:block}
.full{display:none}.short{display:inline}
.stack{flex-direction:column !important;align-items:flex-start !important}
.hide-m{display:none !important}
.hero-h{height:720px !important;min-height:720px !important}
.hero-h .wrap{min-height:720px !important;padding-bottom:44px !important}
.price-row{grid-template-columns:1fr auto !important;row-gap:10px !important;padding:28px 0 !important}
.price-row .desc{grid-column:1 / -1;order:3}
.price-row .nm{font-size:28px !important}
.steps{grid-template-columns:1fr !important;gap:44px !important}
.metrics{grid-template-columns:repeat(2,minmax(0,1fr)) !important;row-gap:28px !important}
.tall{height:480px !important}
.mid{height:300px !important}
.statement{height:520px !important}
.sec{padding-top:96px !important;padding-bottom:96px !important}
.feat-body{padding:32px 24px 36px !important}
.friction{font-size:30px !important}
.area{font-size:36px !important}
}
@container (max-width: 420px){
.wrap{padding:0 20px}
.nav{gap:8px !important;padding-left:16px !important}
.nav .btn{padding:0 14px !important;font-size:12px}
.nav-cta .short{display:none}.nav-cta .narrow{display:inline}
}
.photo{object-position:var(--pos,50% 50%)}
@container (max-width: 1100px){.photo{object-position:var(--pos-t,var(--pos,50% 50%))}}
@container (max-width: 860px){.photo{object-position:var(--pos-m,var(--pos-t,var(--pos,50% 50%)))}}
.qa{border-bottom:1px solid #DED5C9}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:44px;padding:24px 0;font-size:26px;line-height:1.2}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";font-family:'Hanken Grotesk',sans-serif;font-size:22px;color:#7D7064;transition:transform .3s ease}
.qa[open] summary::after{transform:rotate(45deg)}
.qa summary:focus-visible{outline:2px solid #6E5640;outline-offset:4px}
.qa p{margin:0 0 26px;max-width:620px;font-size:17px;line-height:1.7;font-weight:300;color:#2E2722}

html{scroll-behavior:smooth;scroll-padding-top:96px}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:#1B1815;color:#F7F3ED;padding:12px 18px;border-radius:999px;transition:top .2s ease}.skip:focus{top:calc(env(safe-area-inset-top, 0px) + 16px);color:#F7F3ED}
.nav{top:calc(env(safe-area-inset-top, 0px) + 14px) !important}
footer{padding-bottom:calc(36px + env(safe-area-inset-bottom, 0px)) !important}


.pac-page{background:#F7F3ED;color:#1B1815}
.pac-shell{container-type:inline-size;overflow-x:hidden;min-height:100vh}
.pac-program-page .hero-h{min-height:max(720px,100svh)!important}
.pac-program-page .hero-h .wrap{min-height:max(720px,100svh)!important}
