*{box-sizing:border-box}body{margin:0;background:#fafafa;color:#252a27;font:16px/1.6 Georgia,serif;letter-spacing:0}header,main,footer{max-width:1180px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #d6dcda;font-family:Arial,sans-serif}a{color:#33594e}header a:first-child{font-family:Georgia,serif;font-size:23px;text-decoration:none}header a:last-child{font-size:14px}.intro{padding:28px 0 22px}.eyebrow{font:12px Arial,sans-serif;text-transform:uppercase;color:#52665c}h1{font-size:38px;line-height:1.15;font-weight:400;margin:12px 0}h2{font-size:23px;line-height:1.25;font-weight:400;margin:0 0 16px}.offer{font-size:20px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:54px}fieldset{border:0;padding:0;margin:0;min-width:0}section.calendar-section,section.details-section,section.payment-section{border-top:1px solid #d6dcda;padding:26px 0}aside img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}aside h2{margin-top:20px}aside p{font-size:15px;color:#52665c}.month-heading{font-size:19px;margin:22px 0 10px}.day{display:grid;grid-template-columns:minmax(130px,1fr) repeat(2,minmax(0,1fr));align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #e4e7e5}.day strong{font:14px Arial,sans-serif}.time{display:flex;align-items:center;gap:7px;min-height:48px;padding:10px;background:#eef3ef;border:1px solid #c4d3ca;border-radius:4px;font:14px Arial,sans-serif;cursor:pointer}.time:has(input:checked){background:#dcebe1;border-color:#33594e}.time.unavailable{background:#eee;color:#767676;cursor:default}.time small{display:block;font-size:11px}input[type=radio],input[type=checkbox]{accent-color:#33594e;width:18px;height:18px;flex-shrink:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font:14px/1.5 Arial,sans-serif}label small{display:block;margin-top:4px;color:#52665c}.wide{grid-column:1/-1}input:not([type=radio]):not([type=checkbox]),textarea{display:block;width:100%;padding:12px;border:1px solid #acb9b1;border-radius:3px;background:white;color:#252a27;font:16px Arial,sans-serif;margin-top:6px}textarea{min-height:85px;resize:vertical}dl{font:15px Arial,sans-serif}dl div{display:flex;justify-content:space-between;gap:20px;padding:10px 0}dd{margin:0;white-space:nowrap}.total{border-top:1px solid #c4d3ca;font-weight:700;font-size:18px}.agreement{display:flex;gap:10px;margin:22px 0}.pay-button,button{padding:14px 20px;background:#33594e;color:white;border:0;border-radius:4px;font:16px Arial,sans-serif;cursor:pointer}.pay-button{width:100%;margin-top:22px}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:3px solid #956985;outline-offset:3px}#status{color:#793c50}#payment{max-width:900px;margin:30px auto}footer{border-top:1px solid #d6dcda;font-size:14px}[hidden]{display:none!important}@media(max-width:760px){header,main,footer{padding:18px}.booking-layout{grid-template-columns:minmax(0,1fr);gap:24px}aside{max-width:420px}.intro{padding-top:12px}h1{font-size:30px}.offer{font-size:18px}.day{grid-template-columns:1fr 1fr;gap:8px}.day strong{grid-column:1/-1}.fields{grid-template-columns:1fr}.wide{grid-column:auto}header a:first-child{font-size:19px}header a:last-child{font-size:12px}.time{font-size:14px}}
