.booking-nav{position:relative;border-bottom:1px solid var(--line);padding:12px 3%;background:var(--cream)}.booking-nav .nav-home>span:last-child{font-family:var(--serif);font-size:30px}.booking-nav .nav-book{border-color:var(--line)}.booking-layout{display:grid;grid-template-columns:40% 60%;background:var(--cream);min-height:calc(100svh - 70px)}.booking-visual{position:relative;isolation:isolate;overflow:hidden;min-height:510px}.booking-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,#1c140bb3);z-index:0}.booking-visual>div{position:absolute;bottom:6%;left:8%;z-index:1;color:#fff}.booking-visual>div span{font:400 clamp(4rem,7vw,9rem)/.95 var(--serif);letter-spacing:-.025em}.booking-visual>div p{text-transform:uppercase;letter-spacing:.22em;font-size:12px;margin:11px 0 0 6px}.booking-panel{width:100%;max-width:790px;margin:0 auto;padding:clamp(32px,5vw,90px) clamp(21px,6vw,95px)}.booking-topline{display:flex;justify-content:space-between;color:var(--muted);font-size:13px}.step-track{list-style:none;display:flex;gap:5px;margin:10px 0 35px;padding:0}.step-track li{flex:1;height:3px;background:#dfd9ce}.step-track .done{background:var(--rust)}.booking-panel h1{font-size:clamp(2.8rem,4.5vw,4.8rem);outline:none}.booking-sub,.confirmation>p{color:var(--muted);margin:12px 0 24px;max-width:50ch}.choices{display:grid;gap:9px}.choice{border:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:15px 18px;cursor:pointer;background:var(--paper)}.choice input,.slot input{accent-color:var(--rust);height:16px;width:16px;flex-shrink:0}.choice strong{display:block;font:400 25px/1.15 var(--serif);letter-spacing:-.015em}.choice small{color:var(--muted);display:block;margin-top:4px;font-size:13px}.choice.selected,.slot.selected{background:#f4e7d8;border-color:var(--rust)}.choice:focus-within,.slot:focus-within{outline:2px solid var(--rust);outline-offset:2px}.form-actions{margin-top:26px;display:flex;justify-content:space-between;align-items:center;gap:12px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:12px 21px;min-height:47px;border-radius:40px;background:var(--brown);color:white;border:1px solid var(--brown);font-size:14px}.form-actions .primary-button{margin-left:auto}.primary-button:hover{background:#543b29}.primary-button:disabled{background:#d7d3ca;color:#555149;border-color:#d7d3ca}.back-button{display:flex;gap:7px;align-items:center;min-height:44px}.back-button:disabled{opacity:.5}.loading-list{display:grid;gap:10px}.loading-list i{display:block;height:66px;background:#eee8dd;animation:pulse 1s ease-in-out infinite alternate}@keyframes pulse{to{opacity:.5}}.booking-message{background:#f4e4d7;color:#6b3425;padding:14px;margin:12px 0 18px}.booking-message button{text-decoration:underline;margin-left:5px}.field{display:grid;gap:7px;font-weight:500}.field input{width:100%;padding:11px 13px;min-height:45px;background:var(--paper);border:1px solid #a39b8c;border-radius:4px;color:var(--ink);font-weight:400}.field input[aria-invalid=true]{border-color:#9b3c22}.field small{color:#85351f}.customer-fields{display:grid;gap:18px}.day-bar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:6px 0;margin:12px 0 20px}.day-bar button{min-width:44px;min-height:44px}.day-bar button:disabled{opacity:.3}.slot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.slot{display:flex;flex-wrap:wrap;gap:7px;align-items:center;min-height:45px;border:1px solid var(--line);padding:8px 12px;cursor:pointer;background:var(--paper)}.slot small{font-size:11px}.slot.unavailable{background:#ece9e2;color:#615b52;cursor:default}.review-list{margin:10px 0 24px}.review-list>div{display:grid;grid-template-columns:1fr 1.8fr;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.review-list dt{color:var(--muted)}.review-list dd{margin:0;text-align:right;overflow-wrap:anywhere}.booking-mode{font:400 24px var(--serif);display:block;margin:0 0 20px}@media (max-width:750px){.booking-layout{grid-template-columns:1fr;align-content:start}.booking-visual{min-height:0;height:145px}.booking-visual .photo{object-position:50% 57%}.booking-visual>div{bottom:17px;left:6%}.booking-visual>div span{font-size:43px}.booking-visual>div p{font-size:9px;margin:5px 0 0 2px}.booking-panel{padding:26px 6% 45px}.step-track{margin-bottom:23px}.booking-nav{padding:7px 6%}.booking-nav.nav-open{background:var(--brown)}.booking-panel h1{font-size:47px}.choice{padding:12px 14px}.choice strong{font-size:23px}.booking-topline{font-size:12px}}