:root{--ink-900:#1f2a24;--ink-700:#3a4a41;--ink-500:#5a6b62;--sage-700:#4d6157;--sage-500:#6f8479;--sage-300:#a6b7ad;--sand-100:#f6f1eb;--sand-200:#ece3d9;--mist-50:#fbfaf7;--accent-600:#6b5c4d;--accent-400:#8d7b68;--line-200:rgba(31,42,36,.12);--shadow-1:0 10px 30px rgba(31,42,36,.12);--shadow-2:0 20px 60px rgba(31,42,36,.16);--radius-1:10px;--radius-2:18px;--radius-3:28px;--space-1:6px;--space-2:12px;--space-3:18px;--space-4:24px;--space-5:36px;--space-6:48px;--space-7:64px;--space-8:84px;--max-w:1180px;--header-h:86px;--ease-soft:cubic-bezier(0.22,0.61,0.36,1);--ease-silk:cubic-bezier(0.2,0.8,0.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(160deg,var(--mist-50) 0,var(--sand-100) 45%,var(--sand-200) 100%);background-attachment:fixed;color:var(--ink-900);font-family:Cormorant Garamond,Times New Roman,serif;line-height:1.5;margin:0;min-height:100vh}body:before{background-image:radial-gradient(circle at 20% 10%,rgba(90,107,98,.08),transparent 35%),radial-gradient(circle at 80% 20%,rgba(77,97,87,.08),transparent 40%),radial-gradient(circle at 40% 80%,hsla(31,15%,48%,.08),transparent 38%);content:"";inset:0;mix-blend-mode:multiply;pointer-events:none;position:fixed}img{height:auto;max-width:100%}a{color:inherit;text-decoration:none}.container{margin:0 auto;width:min(100% - 48px,var(--max-w))}.section{padding:var(--space-8) 0}.eyebrow{color:var(--sage-700);font-family:Work Sans,Helvetica,sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase}.h1,.h2,.h3{font-weight:500;letter-spacing:-.01em;margin:0 0 var(--space-3) 0}.h1{font-size:clamp(36px,4.4vw,64px);line-height:1.05}.h2{font-size:clamp(28px,3.2vw,44px);line-height:1.15}.h3{font-size:clamp(22px,2.4vw,30px);line-height:1.25}li,p{color:var(--ink-700);font-family:Work Sans,Helvetica,sans-serif;font-size:16px}p.lead{color:var(--ink-500);font-size:clamp(18px,1.6vw,22px)}.button{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;font-family:Work Sans,Helvetica,sans-serif;font-size:14px;font-weight:600;gap:10px;letter-spacing:.05em;padding:14px 22px;text-transform:uppercase;transition:transform .3s var(--ease-soft),box-shadow .3s var(--ease-soft),background .3s var(--ease-soft)}.button.primary{background:var(--ink-900);box-shadow:var(--shadow-1);color:var(--mist-50)}.button.primary:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.button.ghost{background:hsla(45,33%,98%,.6);border-color:var(--line-200);color:var(--ink-900)}.button.ghost:hover{transform:translateY(-2px)}.card{border:1px solid rgba(31,42,36,.08);border-radius:var(--radius-2);box-shadow:var(--shadow-1);padding:var(--space-5)}.card,.header{background:hsla(45,33%,98%,.9)}.header{backdrop-filter:blur(16px);border-bottom:1px solid var(--line-200);height:var(--header-h);position:sticky;top:0;z-index:20}.header-inner{height:100%;justify-content:space-between}.header-inner,.logo{align-items:center;display:flex}.logo{color:var(--ink-900);font-family:Cormorant Garamond,Times New Roman,serif;font-size:22px;gap:12px;letter-spacing:.06em}.nav{color:var(--ink-700);display:flex;font-family:Work Sans,Helvetica,sans-serif;font-size:14px;gap:22px;letter-spacing:.08em;text-transform:uppercase}.nav a{padding:6px 0;position:relative}.nav a:after{background:var(--ink-700);bottom:0;content:"";height:1px;left:0;position:absolute;transition:width .22s var(--ease-soft);width:0}.nav a:hover:after{width:100%}.hero{padding:calc(var(--space-8) + 30px) 0 var(--space-8)}.hero-grid{align-items:center;display:grid;gap:var(--space-5);grid-template-columns:repeat(12,1fr)}.hero-content{grid-column:span 7}.hero-panel{background:hsla(45,33%,98%,.85);border:1px solid rgba(31,42,36,.08);border-radius:var(--radius-3);box-shadow:var(--shadow-1);grid-column:span 5;padding:var(--space-6)}.divider{background:var(--line-200);height:1px;margin:var(--space-6) 0}.footer{background:hsla(45,33%,98%,.92);border-top:1px solid var(--line-200);padding:var(--space-7) 0 var(--space-5)}.footer-grid{display:grid;gap:var(--space-5);grid-template-columns:repeat(12,1fr)}.footer-brand{grid-column:span 5}.footer-links{grid-column:span 3}.footer-contact{grid-column:span 4}.muted{color:var(--ink-500)}.reveal{opacity:0;transform:translateY(14px)}.reveal.is-visible{opacity:1;transform:translateY(0);transition:opacity .9s var(--ease-silk),transform .9s var(--ease-silk)}@media (max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-content,.hero-panel{grid-column:auto}.nav{display:none}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-contact,.footer-links{grid-column:auto}}@media (max-width:640px){.container{width:min(100% - 32px,var(--max-w))}.button{justify-content:center;width:100%}.hero{padding-top:var(--space-7)}}.logo img{display:block;height:34px;width:auto}.footer .logo img{height:42px}@media (max-width:640px){.header{height:auto;padding:8px 0}.header-inner{gap:12px}.header .button{padding:12px 18px;width:auto}.logo img{height:30px;width:auto}.section [style*="grid-template-columns:repeat(2,1fr)"],.section [style*="grid-template-columns:repeat(3,1fr)"]{grid-template-columns:1fr!important}.card{padding:24px}}.nav-cta{align-items:center;display:flex;gap:12px}.nav-toggle{background:hsla(45,33%,98%,.9);border:1px solid var(--line-200);border-radius:999px;display:none;height:42px;position:relative;width:42px}.nav-toggle span,.nav-toggle span:after,.nav-toggle span:before{background:var(--ink-900);content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:transform .2s var(--ease-soft),opacity .2s var(--ease-soft);width:18px}.nav-toggle span{top:50%}.nav-toggle span:before{top:-6px}.nav-toggle span:after{top:6px}.header.is-open .nav-toggle span{opacity:0}.header.is-open .nav-toggle span:before{top:0;transform:translateX(-50%) rotate(45deg)}.header.is-open .nav-toggle span:after{top:0;transform:translateX(-50%) rotate(-45deg)}.mobile-nav{background:hsla(45,33%,98%,.96);border-top:1px solid var(--line-200);display:none;flex-direction:column;gap:16px;padding:18px 24px 24px}.mobile-nav .button{justify-content:center;width:100%}@media (max-width:980px){.nav{display:none}.nav-toggle{align-items:center;display:inline-flex;justify-content:center}.header.is-open .mobile-nav{display:flex}}@media (max-width:640px){.nav-cta .button{padding:12px 16px}}@media (max-width:980px){.header.is-open .nav-cta .button{display:none}}.footer .logo{max-width:140px}.footer .logo img{display:block;height:40px;max-width:140px;object-fit:contain;width:auto}