:root{--ink:#111110;--paper:#f4f3ef;--line:#d5d2ca;--muted:#77746c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 'DM Sans',Arial,sans-serif}header{height:76px;padding:0 clamp(22px,5vw,72px);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}a{text-decoration:none;color:inherit}.brand{letter-spacing:.2em;font-size:13px}.brand span{display:block;font-size:8px;letter-spacing:.16em;margin-top:2px}.back{font-size:11px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--ink);padding-bottom:3px}.booking-layout{min-height:calc(100svh - 76px);display:grid;grid-template-columns:.85fr 1.15fr}.booking-intro{background:#111110;color:white;padding:clamp(60px,11vw,160px) clamp(25px,9vw,155px);position:relative}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:600;margin:0 0 25px}.booking-intro h1{font:clamp(55px,7vw,92px)/.92 Italiana,serif;font-weight:400;margin:0 0 27px}.booking-intro h1 em{font-style:italic}.booking-intro>p:not(.eyebrow){color:#c9c6bf;max-width:250px}.steps{position:absolute;bottom:60px;left:clamp(25px,9vw,155px);display:grid;gap:11px;font-size:10px;letter-spacing:.13em;color:#8f8c85}.steps .active{color:#fff}.booking-card{padding:clamp(45px,8vw,120px) clamp(22px,9vw,150px);max-width:820px;width:100%}form{display:grid;gap:36px}fieldset{padding:0;margin:0;border:0}legend{font-size:16px;font-weight:500;margin-bottom:18px}legend b{font:12px Italiana,serif;margin-right:10px;color:var(--muted)}.service-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.service-option{position:relative;border:1px solid var(--line);padding:14px 13px;cursor:pointer;min-height:76px}.service-option:has(input:checked){border-color:#111;background:#111;color:white}.service-option input{position:absolute;opacity:0}.service-option strong,.service-option small{display:block}.service-option strong{font-size:13px;font-weight:500}.service-option small{font-size:10px;color:var(--muted);margin-top:6px}.service-option:has(input:checked) small{color:#c9c6bf}.date-row,.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}label{font-size:10px;letter-spacing:.09em;text-transform:uppercase}input,select{display:block;width:100%;height:45px;border:1px solid var(--line);background:transparent;margin-top:7px;padding:0 11px;font:14px 'DM Sans',sans-serif;color:var(--ink);border-radius:0}.slot-note,.privacy{font-size:10px;color:var(--muted);margin:10px 0 0}.summary{background:#dedbd4;padding:15px 17px;font-size:13px}button{border:0;border-radius:0;background:#111;color:white;padding:18px 20px;font:10px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;text-align:left}button span{float:right;font-size:18px;line-height:11px}@media(max-width:820px){.booking-layout{grid-template-columns:1fr}.booking-intro{padding:55px 24px 75px}.booking-intro h1{font-size:56px}.steps{position:static;margin-top:35px}.booking-card{max-width:none;padding:55px 24px}}@media(max-width:450px){.service-options,.date-row,.info-grid{grid-template-columns:1fr}.service-option{min-height:66px}}
