html,body{margin:0;padding:0}*{box-sizing:border-box}:root{--cream:#fbf3e7;--cream-deep:#f3e5d1;--ink:#3a2c22;--ink-soft:#6b5a4c;--terracotta:#c1653b;--terracotta-dark:#a24f2b;--border:#e6d6bf;--font-display:"Fraunces", Georgia, serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--space-6:6rem}body{background:var(--cream);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--terracotta-dark);outline-offset:3px}.container{max-width:1080px;padding:0 var(--space-3);margin:0 auto}.site-header{z-index:10;-webkit-backdrop-filter:saturate(140%)blur(6px);backdrop-filter:saturate(140%)blur(6px);border-bottom:1px solid var(--border);background:#fbf3e7e6;position:sticky;top:0}.site-header__inner{padding:var(--space-2) var(--space-3);justify-content:space-between;align-items:center;max-width:1080px;margin:0 auto;display:flex}.wordmark{font-family:var(--font-display);color:var(--ink);letter-spacing:.01em;font-size:1.35rem;font-weight:600;text-decoration:none}.site-nav{gap:var(--space-3);margin:0;padding:0;list-style:none;display:flex}.site-nav a{color:var(--ink-soft);border-bottom:2px solid #0000;padding:.35rem .1rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .15s,border-color .15s}.site-nav a:hover{color:var(--terracotta-dark);border-color:var(--terracotta)}.nav-toggle{display:none}.hero{padding:var(--space-6) var(--space-3) var(--space-5);border-bottom:1px solid var(--border);text-align:center;background:radial-gradient(120% 100% at 50% 0,#fff7ec 0%,#f6e3c9 45%,#ecd0a8 100%);position:relative;overflow:hidden}.hero__inner{z-index:1;max-width:720px;margin:0 auto;position:relative}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--terracotta-dark);margin-bottom:var(--space-2);font-size:.8rem;font-weight:600;display:inline-block}.hero h1{font-family:var(--font-display);margin:0 0 var(--space-2);color:var(--ink);font-size:clamp(2.5rem,6vw,4rem);line-height:1.05}.hero p.tagline{color:var(--ink-soft);max-width:560px;margin:0 auto var(--space-4);font-size:clamp(1.05rem,2vw,1.3rem)}.btn-primary{background:var(--terracotta);color:#fff8f0;font-family:var(--font-body);border:2px solid var(--terracotta);border-radius:999px;padding:.85rem 1.9rem;font-size:1rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,transform .15s;display:inline-block}.btn-primary:hover{background:var(--terracotta-dark);border-color:var(--terracotta-dark)}@media (prefers-reduced-motion:no-preference){.btn-primary:hover{transform:translateY(-1px)}.section{animation:.6s both fade-in-up}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.section{padding:var(--space-6) var(--space-3);scroll-margin-top:5rem}.section--alt{background:var(--cream-deep);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.section__inner{max-width:680px;margin:0 auto}.section h2{font-family:var(--font-display);margin:0 0 var(--space-3);color:var(--ink);font-size:clamp(1.8rem,3.5vw,2.4rem)}.section p{color:var(--ink-soft);margin:0 0 var(--space-2);font-size:1.05rem}.hours-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.hours-list li{justify-content:space-between;gap:var(--space-2);padding:var(--space-2) .1rem;border-bottom:1px solid var(--border);font-size:1.05rem;display:flex}.hours-list .day{color:var(--ink);font-weight:600}.hours-list .time{color:var(--ink-soft)}.hours-list__row--closed{background:var(--surface-alt,#00000008)}.contact-email{margin-top:var(--space-2);font-family:var(--font-display);color:var(--terracotta-dark);border-bottom:2px solid var(--terracotta);padding-bottom:.1rem;font-size:clamp(1.3rem,3vw,1.7rem);text-decoration:none;display:inline-block}.contact-email:hover{color:var(--terracotta)}.site-footer{padding:var(--space-4) var(--space-3);text-align:center;color:var(--ink-soft);font-size:.9rem}.site-footer p{margin:.25rem 0}@media (max-width:640px){.site-header__inner{gap:var(--space-1);padding:var(--space-2);flex-direction:column}.site-nav{gap:var(--space-2);flex-wrap:wrap;justify-content:center}.hero{padding:var(--space-5) var(--space-2) var(--space-4)}.section{padding:var(--space-5) var(--space-2)}.hours-list li{font-size:1rem}}
