:root{--ink:#163b37;--paper:#f5f3ed;--accent:#b06b43;--line:#d6ded6;--muted:#536762}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 system-ui,sans-serif}header,main,footer{max-width:1080px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line)}a{color:inherit;text-underline-offset:4px}.brand img{max-width:180px;max-height:76px;object-fit:contain}main{max-width:900px}.intro{padding:40px 0 28px}.eyebrow{font-size:.73rem;font-weight:700;letter-spacing:.15em}h1{font:clamp(2.5rem,6vw,4.5rem)/1.1 Georgia,serif;margin:18px 0}h1 em{color:var(--accent);font-weight:400}h2{font:2rem/1.25 Georgia,serif}.muted{color:var(--muted);font-size:.9rem}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(20px,4vw,42px);margin-bottom:28px;box-shadow:0 10px 30px #163b3706;scroll-margin-top:24px}progress{width:100%;height:9px;accent-color:var(--ink)}.progress p{font-size:.85rem;margin:0 0 12px}fieldset{border:0;padding:24px 0 0;margin:0;min-width:0}legend{font:1.8rem Georgia,serif;padding:12px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:8px}input,select,textarea{width:100%;min-width:0;border:1px solid #aabbb3;border-radius:7px;padding:12px;font:inherit;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #c9b68b;outline-offset:3px}button,.button{display:inline-block;border:1px solid var(--ink);background:var(--ink);color:#fff;border-radius:7px;padding:13px 21px;font:600 .95rem system-ui;cursor:pointer;text-decoration:none}button:disabled{opacity:.5;cursor:not-allowed}.secondary{background:transparent;color:var(--ink)}.actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;flex-wrap:wrap}.review,.privacy,.check{grid-column:1/-1}.review dl{display:grid;grid-template-columns:1fr 2fr;gap:8px 20px;font-size:.9rem}.review dt{font-weight:700}.review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.privacy{background:var(--paper);padding:20px;border-radius:9px;font-size:.85rem}.privacy h3{margin-top:0}.check{display:flex;flex-direction:row;align-items:flex-start;font-weight:400;margin:20px 0}.check input{width:20px;height:20px;flex-shrink:0;margin-top:4px}.error{color:#a32d28}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.slots{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}.slot{background:#fff;color:var(--ink);font-weight:400;text-align:left}.slot[aria-pressed=true]{background:var(--ink);color:white}.slot small{display:block}#booking>label:not(.check){max-width:280px;margin:20px 0}#booking-confirmed{background:var(--paper);padding:20px;border-radius:8px}footer{text-align:center;font-size:.8rem;max-width:900px}[hidden]{display:none!important}@media(max-width:620px){.fields,.slots{grid-template-columns:1fr}header{align-items:flex-start;font-size:.8rem}.brand img{max-width:130px}.review dl{grid-template-columns:1fr}.review dd{margin-bottom:12px}.intro{padding-top:24px}}
