:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;color:#344137;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fffdf8}@media (width<=1024px){:root{font-size:16px}}#root{min-height:100svh}body,p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}main{max-width:760px;margin:auto;padding:2rem 1.25rem 4rem}.hero{padding:4rem 0 3rem}.eyebrow{color:#896334;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700}h1{color:#26382c;margin:.7rem 0 1.2rem;font-size:clamp(2.3rem,8vw,4.5rem);line-height:1.02}h2{color:#26382c;font-size:1.8rem}h3{color:#26382c}.button,.secondary,.slot{font:inherit;cursor:pointer;border:0;border-radius:.6rem;padding:.85rem 1rem;font-weight:700;text-decoration:none;display:inline-block}.button{color:#fff;background:#315f43;margin-top:1rem}.secondary,.slot{color:#26382c;background:#e9f0e9}.slot.selected{color:#fff;background:#315f43}.services,.conditions,.booking{border-top:1px solid #d6ded6;padding:2.5rem 0}.cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}article,fieldset{background:#f5f8f3;border:1px solid #d6ded6;border-radius:.8rem;padding:1rem}form{gap:1rem;display:grid}fieldset{gap:.9rem;display:grid}legend{padding:0 .3rem;font-weight:700}label{color:#26382c;gap:.35rem;font-weight:600;display:grid}input,select,textarea{font:inherit;background:#fff;border:1px solid #9eb09f;border-radius:.45rem;padding:.7rem}textarea{resize:vertical;min-height:4.5rem}.slots{flex-wrap:wrap;gap:.55rem;display:flex}.check{align-items:center;gap:.6rem;font-weight:500;display:flex}.check input{width:1.1rem;height:1.1rem}.consent{background:#fff6e7;padding:.75rem}.note{color:#526154}.message{color:#9f251c;font-weight:700}.confirmation{padding-top:20vh}button:disabled{opacity:.55;cursor:not-allowed}
