.booking{background:var(--orange);color:var(--ink)}.booking__inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:start}.booking__intro h2{font-size:clamp(60px,7vw,96px);margin-top:25px}.booking__intro>p:not(.eyebrow){font-size:14px;max-width:285px;margin-top:25px}.booking__hours{margin-top:40px;border-top:1px solid #a84120;padding-top:25px;display:flex;flex-direction:column;gap:8px}.booking__hours .eyebrow{font-size:9px}.booking__hours strong{font-size:13px;letter-spacing:.03em}.booking__hours small{font-family:var(--mono);font-size:8px;letter-spacing:.06em}.booking__arrow{font-size:100px;line-height:1;margin-top:30px;display:block}.booking__panel{background:var(--ink);color:var(--bone);padding:35px}.booking__panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:27px}.booking__panel-head h3{font-size:39px}.booking__badge{font-family:var(--mono);font-size:9px;color:var(--orange);border:1px solid var(--orange);padding:5px 9px;white-space:nowrap}.booking__fields,.booking__slots-field{margin:0;padding:0;border:0;min-width:0}.booking__row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}.booking__fields label,.booking__slots-field legend{font-family:var(--mono);font-size:9px;display:block;letter-spacing:.04em;margin-bottom:9px}.booking__fields select{display:block;width:100%;min-width:0;height:47px;padding:10px;background:var(--dark);border:1px solid #68685e;color:var(--bone);border-radius:0;font-size:12px;color-scheme:dark}.booking__fields select:disabled{opacity:.5}.booking__slots-field{margin-top:24px}.booking__slots-field legend{width:100%;display:flex;justify-content:space-between;gap:10px}.booking__slots-field legend>span{font-size:8px;color:var(--muted)}.booking__slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:220px;overflow:auto;font-size:12px;color:var(--muted);padding:3px}.booking__slot{position:relative;margin:0!important}.booking__slot input{position:absolute;width:1px;height:1px;opacity:0}.booking__slot>span{display:block;border:1px solid #68685e;text-align:center;padding:10px 5px;font-family:var(--mono);font-size:11px;cursor:pointer;color:var(--bone)}.booking__slot input:checked+span{color:var(--ink);background:var(--orange);border-color:var(--orange)}.booking__slot input:focus-visible+span{outline:2px solid var(--orange);outline-offset:2px}.booking__slot:hover>span{border-color:var(--orange)}.booking__summary{font-size:11px;background:#292924;border-left:2px solid var(--orange);padding:13px;margin-top:20px;line-height:1.8}.booking__confirm{width:100%;margin-top:23px;gap:16px;font-size:10px}.booking__status{font-size:11px;color:var(--muted);margin-top:14px;min-height:18px}.booking__retry{background:none;color:var(--orange);border:0;border-bottom:1px solid;padding:5px 0;font:10px var(--mono)}.booking__notice{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:18px;line-height:1.8}.booking__success h3{font-size:45px;margin:24px 0}.booking__success p{font-size:13px;margin-bottom:16px}.booking__success .booking__receipt{font-weight:700}.booking__success .booking__reference{font:11px var(--mono);color:var(--orange);margin-block:25px}.booking__success .button{margin-top:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.booking :focus-visible{outline-color:var(--bone)}@media(max-width:1000px){.booking__inner{gap:5%;grid-template-columns:.8fr 1.2fr}.booking__panel{padding:25px}.booking__intro h2{font-size:67px}.booking__row{grid-template-columns:1fr;gap:20px}}@media(max-width:650px){.booking__inner{grid-template-columns:1fr;gap:35px}.booking__intro h2{font-size:clamp(62px,13vw,90px)}.booking__intro>p:not(.eyebrow){max-width:390px}.booking__arrow{display:none}.booking__hours{margin-top:25px}.booking__panel{padding:25px 20px}.booking__panel-head h3{font-size:35px}.booking__slots-field legend>span{font-size:7px}.booking__row{grid-template-columns:1fr 1fr;gap:12px}.booking__fields select{font-size:11px;padding:8px}.booking__slots{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:370px){.booking__row{grid-template-columns:1fr}.booking__slots{grid-template-columns:repeat(3,minmax(0,1fr))}}
