@font-face{font-family:Fraunces;src:url("/assets/fonts/fraunces-latin-full-normal.woff2") format("woff2");font-display:swap;font-weight:100 900}
@font-face{font-family:Figtree;src:url("/assets/fonts/figtree-latin-wght-normal.woff2") format("woff2");font-display:swap;font-weight:300 900}
:root{--ink:#23392f;--muted:#5b6c63;--paper:#f8f2e8;--sage:#dbe5d8;--line:#cad4c7}
*{box-sizing:border-box}
html{background:var(--paper);color:var(--ink);font-family:Figtree,system-ui,sans-serif;line-height:1.6}
body{min-height:100vh;margin:0;display:grid;grid-template-rows:auto 1fr auto}
a{color:inherit;text-underline-offset:.22em}
.skip-link{position:fixed;z-index:10;top:.5rem;left:.5rem;padding:.6rem 1rem;transform:translateY(-150%);background:#fff}.skip-link:focus{transform:none}
.site-header{display:flex;justify-content:center;padding:1rem 1.4rem;border-bottom:1px solid var(--line)}
.brand{display:block;width:min(12rem,42vw)}.brand img{display:block;width:100%;height:auto}
.placeholder{width:min(48rem,calc(100% - 3rem));margin:auto;padding:clamp(4rem,10vw,8rem) 0;text-align:center}
.kicker{margin:0;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
h1,h2{font-family:Fraunces,Georgia,serif;font-weight:450;line-height:1.08}
h1{margin:.6rem 0 1.2rem;font-size:clamp(3rem,9vw,6.4rem)}
.lead{max-width:38rem;margin:0 auto;font-family:Fraunces,Georgia,serif;font-size:clamp(1.45rem,3vw,2rem)}
.availability{display:inline-block;margin:2rem 0;padding:.65rem 1rem;border-radius:999px;background:var(--sage);font-weight:650}
.contact{display:grid;max-width:33rem;margin:2.3rem auto 0;border-top:1px solid var(--line)}
.contact a{display:grid;padding:1rem .2rem;border-bottom:1px solid var(--line);text-decoration:none;font-size:1.15rem}
.contact span{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.legal{width:min(48rem,calc(100% - 3rem));margin:0 auto;padding:clamp(3rem,8vw,6rem) 0}
.legal h1{font-size:clamp(2.8rem,7vw,5rem)}.legal h2{margin-top:2.2rem;font-size:1.7rem}.legal p{overflow-wrap:anywhere}
footer{display:flex;justify-content:space-between;gap:2rem;padding:2rem max(1.5rem,calc((100% - 68rem)/2));background:var(--ink);color:#eef2eb}
footer p{margin:0}footer nav{display:flex;align-items:center;gap:1.3rem}
@media(max-width:36rem){.placeholder,.legal{width:min(100% - 2.75rem,48rem)}footer{align-items:flex-start;flex-direction:column}footer nav{flex-wrap:wrap}}
.legal{overflow-wrap:anywhere}
