:root{--ph:#d8cbbe;--dark:var(--ink);--on-dark:#f4efe9;--on-dark-soft:#cfc5bb;--dash:#c9bcae;--serif:"Young Serif", Georgia, "Times New Roman", serif;--sans:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--r:6px;--r-lg:12px;--shadow:0 1px 2px #2a26220a, 0 8px 24px #2a26220f;color-scheme:light}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);margin:0;font-size:17px;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--accent-ink)}a:hover{color:var(--ink)}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--card);color:var(--ink);border-radius:var(--r);padding:10px 14px;position:absolute;top:-100px;left:8px}.skip:focus{top:8px}.wrap{max-width:1200px;margin:0 auto;padding-inline:clamp(20px,5vw,64px)}.sec{padding-block:clamp(48px,8vw,104px)}.fit{container-type:inline-size}.h1{font-family:var(--serif);overflow-wrap:anywhere;hyphens:manual;letter-spacing:-.01em;text-wrap:balance;max-width:100%;margin:0;font-size:min(clamp(32px,4.2vw,54px),9.2cqi);font-weight:400;line-height:1.08}.h2{font-family:var(--serif);overflow-wrap:anywhere;hyphens:auto;text-wrap:balance;max-width:100%;margin:0;font-size:clamp(28px,3.4vw,44px);font-weight:400;line-height:1.1}.h3{font-family:var(--serif);margin:0;font-size:24px;font-weight:400;line-height:1.15}.label{letter-spacing:.1em;text-transform:uppercase;color:var(--soft);margin:0 0 6px;font-size:13px;font-weight:600}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0;font-size:14px;font-weight:600}.muted{color:var(--muted)}.lead{max-width:34em;color:var(--muted);margin:16px 0 0;font-size:19px}.small{color:var(--soft);font-size:14px}.preview{background:var(--line2);color:var(--muted);text-align:center;margin:0;padding:6px 16px;font-size:13px}.notice{background:var(--dark);color:var(--on-dark);text-align:center;margin:0;padding:12px 20px;font-size:15px;line-height:1.4}header.top{z-index:20;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0}.bar{justify-content:space-between;align-items:center;gap:16px;min-height:64px;display:flex}.logo{min-height:44px;font:600 13px/1 var(--sans);letter-spacing:.55em;color:var(--accent);white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.nav-wide{align-items:center;gap:4px 28px;display:none}.navlink{min-height:44px;font:500 16px var(--sans);color:var(--ink);border-bottom:2px solid #0000;align-items:center;text-decoration:none;display:inline-flex}.navlink[aria-current=page]{border-bottom-color:var(--accent)}.today{color:var(--ok);font-size:15px;font-weight:600}.today.closed{color:var(--soft)}.today.sep{border-left:1px solid var(--line);padding-left:24px}.menu-btn{border-radius:var(--r);background:var(--accent);color:#fff;min-height:44px;font:600 16px var(--sans);cursor:pointer;border:0;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.menu-btn:hover,.menu-btn[aria-expanded=true]{background:var(--accent-ink)}.menu{border-top:1px solid var(--line2)}.menu .wrap{flex-direction:column;padding-block:4px 20px;display:flex}.menulink{border-bottom:1px solid var(--line2);min-height:56px;font:400 22px var(--serif);color:var(--ink);align-items:center;text-decoration:none;display:flex}@media (width>=860px){.nav-wide{display:flex}.menu-btn,.menu{display:none}}.btn{border:1px solid var(--ink);border-radius:var(--r);min-height:48px;font:600 17px/1.2 var(--sans);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 24px;text-decoration:none;display:inline-flex}.btn-dark{background:var(--dark);color:var(--surface)}.btn-dark:hover{color:#fff;background:#14110f}.btn-ghost-dark{color:var(--ink);background:0 0}.btn-ghost-dark:hover{background:var(--card);color:var(--ink)}.tlink{min-height:44px;color:var(--ink);font:600 16px var(--sans);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px;align-items:center;display:inline-flex}.split{flex-wrap:wrap;align-items:center;gap:40px 72px;display:flex}.split>*{min-width:0}.band{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.dark{background:var(--dark);color:var(--on-dark)}.ph{background:var(--ph);border-radius:var(--r-lg);max-width:100%;display:block;position:relative;overflow:hidden}.ph>span{text-align:center;font:500 13px/1.35 var(--sans);color:var(--muted);justify-content:center;align-items:center;padding:12px;display:flex;position:absolute;inset:0}.grid-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:24px;display:grid}.card{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow);flex-direction:column;min-width:0;display:flex;overflow:hidden}.card .ph{border-radius:0}.card-body{flex-direction:column;flex-grow:1;gap:12px;padding:24px;display:flex}.card-foot{border-top:1px solid var(--line2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:auto;padding-top:14px;display:flex}.price{font-family:var(--serif);margin:0;font-size:22px}.facts{margin:0;font-size:15px}.fact{gap:16px;margin-bottom:4px;display:flex}.fact dt{width:72px;color:var(--soft);flex-shrink:0}.fact dd{margin:0}.fact dd.status{font-weight:600}.dashed{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow);margin:24px 0 0;padding:20px 24px}.grid-tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:10px;display:grid}.tile{aspect-ratio:1;width:100%}.pic.tile,.ph.tile{border-radius:var(--r)}.tile-link{border-radius:var(--r);display:block}.home-gallery{gap:40px 48px;display:grid}.home-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}@media (width>=860px){.home-gallery{grid-template-columns:repeat(var(--parts,2), minmax(0, 1fr))}}.hours{border-collapse:collapse;width:100%;max-width:440px;font-size:16px}.hours caption{text-align:left;padding-bottom:8px;font-weight:600}.hours th{text-align:left;border-top:1px solid var(--line);padding:9px 12px;font-weight:400}.hours td{text-align:right;border-top:1px solid var(--line);font-variant-numeric:tabular-nums;padding:9px 12px}.hours tr.on{background:var(--ok-bg)}.hours tr.on th,.hours tr.on td{font-weight:600}.tag{color:var(--ok);text-transform:uppercase;letter-spacing:.08em;margin-left:6px;font-size:12px;font-weight:600}footer.dark .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;padding-block:28px 32px;font-size:14px;display:flex}footer nav{flex-wrap:wrap;gap:0 20px;display:flex}footer a{min-height:44px;color:var(--on-dark);font:500 15px var(--sans);text-underline-offset:4px;align-items:center;display:inline-flex}footer a:hover{color:#fff}.footer-line{color:var(--on-dark-soft);flex-basis:100%;margin:0}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.request{gap:20px;max-width:680px;margin-top:clamp(40px,6vw,72px);padding:clamp(20px,4vw,36px);scroll-margin-top:80px}.request-form,.sent{flex-direction:column;gap:18px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label{font-weight:600}.field .opt{color:var(--soft);font-weight:400}.field-help{color:var(--soft);margin:-2px 0 2px;font-size:15px}.field input,.field textarea{border:1px solid var(--field,#8f8378);border-radius:var(--r);background:var(--card);width:100%;min-height:48px;color:var(--ink);font:400 17px/1.4 var(--sans);padding:10px 12px}.field textarea{resize:vertical}.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--accent);outline-offset:1px}.field [aria-invalid=true]{border-color:var(--danger,#a3321f);border-width:2px}.field-err,.form-err{color:var(--danger,#a3321f);margin:0;font-size:15px;font-weight:600}.form-err{border:1px solid var(--danger,#a3321f);border-radius:var(--r);background:var(--card);padding:12px 14px}.hp{display:none}.pic{border-radius:var(--r-lg);background:var(--line2);display:block;overflow:hidden}.pic img{object-fit:cover;width:100%;height:100%}.card .pic{border-radius:0}
