:root{--cream:#fff;--warm-white:#fafafa;--sand:#e5e5e5;--stone:#a3a3a3;--walnut:#525252;--charcoal:#1a1a1a;--ink:#0a0a0a;--white:#fff}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body,html{overflow-x:hidden}body{background:var(--cream);color:var(--ink);font-family:Satoshi,-apple-system,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}nav{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffe0;border-bottom:1px solid rgba(0,0,0,.06);display:flex;height:72px;justify-content:space-between;left:0;padding:0 clamp(24px,5vw,64px);position:fixed;right:0;top:0;transition:background .4s,border-color .4s;z-index:100}.nav-logo{color:var(--charcoal);font-family:"DM Serif Display",Georgia,serif;font-size:1.35rem;text-decoration:none;transition:color .4s}.nav-links{display:flex;gap:32px;list-style:none}.nav-links a{color:var(--walnut);font-size:.875rem;font-weight:500;letter-spacing:.04em;text-decoration:none;transition:color .2s}.nav-links a.router-link-active,.nav-links a:hover{color:var(--charcoal)}.nav-cta{background:var(--charcoal);color:var(--cream);font-size:.8rem;font-weight:500;letter-spacing:.06em;padding:10px 24px;text-decoration:none;text-transform:uppercase;transition:background .3s,border-color .4s}.nav-cta:hover{background:var(--ink)}nav.nav--transparent{backdrop-filter:none;-webkit-backdrop-filter:none;background:transparent;border-bottom-color:transparent}nav.nav--transparent .nav-logo{color:#fff}nav.nav--transparent .nav-links a{color:#fffc}nav.nav--transparent .nav-links a.router-link-active,nav.nav--transparent .nav-links a:hover{color:#fff}nav.nav--transparent .nav-cta{background:transparent;border:1.5px solid hsla(0,0%,100%,.6);color:#fff}nav.nav--transparent .nav-cta:hover{background:#fff;border-color:#fff;color:var(--charcoal)}section{padding:clamp(48px,5vw,80px) clamp(24px,5vw,64px)}.container{margin:0 auto;max-width:1280px}.container--narrow{margin:0 auto;max-width:800px}.eyebrow{color:var(--stone);font-size:.75rem;font-weight:500;letter-spacing:.12em;margin-bottom:10px;text-transform:uppercase}h2{color:var(--charcoal);font-family:"DM Serif Display",Georgia,serif;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:400;letter-spacing:-.01em;line-height:1.15;margin-bottom:16px}.divider{background:var(--sand);height:1px;margin:24px 0;width:48px}.divider--center{margin:24px auto}.btn-outline{background:transparent;border:1.5px solid var(--charcoal);color:var(--charcoal);display:inline-block;font-size:.8rem;font-weight:500;letter-spacing:.06em;padding:14px 36px;text-decoration:none;text-transform:uppercase;transition:all .3s}.btn-outline:hover{color:#fff}.btn-outline:hover,footer{background:var(--charcoal)}footer{padding:48px clamp(24px,5vw,64px) 32px}.footer-inner{align-items:flex-start;display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;margin:0 auto;max-width:1280px}.footer-logo{color:#d4d4d4;font-family:"DM Serif Display",Georgia,serif;font-size:1.2rem}.footer-links{display:flex;gap:24px;list-style:none}.footer-links a{color:var(--stone);font-size:.85rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.1);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin:40px auto 0;max-width:1280px;padding-top:24px}.footer-bottom a,.footer-bottom span{color:var(--stone);font-size:.8rem}.footer-bottom a{text-decoration:none}.footer-bottom a:hover{color:#fff}.footer-legal{display:flex;gap:20px}.nav-burger{background:none;border:none;cursor:pointer;display:none;height:20px;position:relative;width:28px;z-index:110}.nav-burger span,.nav-burger span:after,.nav-burger span:before{background:var(--charcoal);display:block;height:2px;left:0;position:absolute;right:0;transition:transform .3s,opacity .3s}.nav-burger span{top:50%;transform:translateY(-50%)}.nav-burger span:before{content:"";top:-7px}.nav-burger span:after{content:"";top:7px}.nav-burger span.open{background:transparent}.nav-burger span.open:before{top:0;transform:rotate(45deg)}.nav-burger span.open:after{top:0;transform:rotate(-45deg)}nav.nav--transparent .nav-burger span,nav.nav--transparent .nav-burger span:after,nav.nav--transparent .nav-burger span:before{background:#fff}nav.nav--transparent .nav-burger span.open{background:transparent}nav.nav--transparent .nav-burger span.open:after,nav.nav--transparent .nav-burger span.open:before{background:#fff}nav.nav--open .nav-burger span.open:after,nav.nav--open .nav-burger span.open:before,nav.nav--transparent.nav--open .nav-burger span.open:after,nav.nav--transparent.nav--open .nav-burger span.open:before{background:var(--charcoal)}.mobile-menu{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffe0;display:none;inset:72px 0 0;position:fixed;z-index:99}.mobile-menu ul{align-items:stretch;display:flex;flex-direction:column;list-style:none;padding:24px 32px}.mobile-menu li{border-bottom:1px solid rgba(0,0,0,.08)}.mobile-menu li:last-child{border-bottom:none}.mobile-menu a{color:var(--charcoal);display:block;font-size:.95rem;font-weight:500;padding:14px 0;text-align:center;text-decoration:none;transition:color .2s}.mobile-menu a:hover{color:var(--walnut)}.mobile-menu-cta{border:1.5px solid var(--charcoal);color:var(--charcoal);display:block;font-size:.8rem;font-weight:500;letter-spacing:.06em;margin-top:8px;padding:14px 36px;text-align:center;text-decoration:none;text-transform:uppercase;transition:all .3s}.mobile-menu-cta:hover{background:var(--charcoal);color:#fff}.menu-fade-enter-active{transition:opacity .35s ease,transform .35s ease}.menu-fade-leave-active{transition:opacity .25s ease,transform .25s ease}.menu-fade-enter-from{opacity:0;transform:translateY(-12px)}.menu-fade-leave-to{opacity:0;transform:translateY(-8px)}.mobile-menu li{animation:menuSlideIn .3s ease both}.mobile-menu li:first-child{animation-delay:.05s}.mobile-menu li:nth-child(2){animation-delay:.1s}.mobile-menu li:nth-child(3){animation-delay:.15s}.mobile-menu li:nth-child(4){animation-delay:.2s}.mobile-menu li:nth-child(5){animation-delay:.25s}.mobile-menu li:nth-child(6){animation-delay:.3s}.mobile-menu li:nth-child(7){animation-delay:.35s}@keyframes menuSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.nav-cta,.nav-links{display:none}.mobile-menu,.nav-burger{display:block}.footer-inner{align-items:center;flex-direction:column;text-align:center}.footer-links{flex-wrap:wrap;gap:16px;justify-content:center}.footer-bottom{align-items:center;flex-direction:column;text-align:center}}
