.booking-section{padding-top:42px;padding-bottom:64px;max-width:1160px}.booking-heading{max-width:740px;margin-bottom:28px}.booking-heading h2{font-size:clamp(28px,4vw,40px);line-height:1.15;margin:8px 0 12px}.booking-heading p{font-size:16px;line-height:1.6}.booking-kicker{font-size:12px!important;letter-spacing:.13em;font-weight:800;color:#d20932;margin:0 0 10px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:start}.booking-panel{border:1px solid #dce3eb;background:#fff;border-radius:14px;padding:26px;margin-bottom:20px}.booking-panel h3{display:flex;align-items:center;gap:10px;font-size:20px;margin:0 0 20px}.booking-panel h3>span{display:grid;place-items:center;width:30px;height:30px;background:#0c2e54;color:white;border-radius:50%;font-size:14px}.booking-label,.booking-fields label{font-size:14px;font-weight:700;display:block}.booking-section input:not([type=checkbox]),.booking-section select,.booking-section textarea{width:100%;padding:12px;border:1px solid #bac6d3;background:white;border-radius:7px;color:#102b49;font:inherit;font-size:16px;margin-top:7px}.booking-section :focus-visible{outline:3px solid #277bc4;outline-offset:3px}.booking-tabs{display:flex;gap:6px;border-bottom:1px solid #dce3eb;margin:24px 0 8px}.booking-tabs button{background:none;color:#51657b;border:0;border-bottom:3px solid transparent;font:inherit;font-size:14px;font-weight:700;padding:12px;cursor:pointer}.booking-tabs button[aria-selected=true]{border-color:#d20932;color:#0c2e54}.booking-tabs span{font-size:12px;background:#eaf0f7;padding:2px 6px;border-radius:10px}.booking-option{display:flex;gap:13px;align-items:start;border-bottom:1px solid #e5eaf0;padding:17px 3px;cursor:pointer}.booking-option:last-child{border-bottom:0}.booking-option input{margin-top:5px;width:19px;height:19px;accent-color:#0c2e54;flex-shrink:0}.booking-option strong{display:block;font-size:16px;line-height:1.4}.booking-option p{font-size:14px;color:#5b6b7c;line-height:1.5;margin:6px 0}.booking-option .price{font-size:14px;color:#b7092d;font-weight:700}.booking-option:has(input:checked){background:#f0f5fb;border-radius:8px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-fields .wide{grid-column:1/-1}.booking-fields small{font-weight:400;color:#5b6b7c}.booking-note{font-size:14px!important;line-height:1.6;color:#5b6b7c;margin:12px 0}.booking-summary{position:sticky;top:100px;background:#0b2c50;color:white;padding:26px;border-radius:14px}.booking-summary h3{font-size:24px;line-height:1.25;margin:10px 0 22px}.booking-summary .booking-kicker{color:#ff6681}.booking-summary ul{list-style:none;margin:0;padding:0}.booking-summary li{display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:1.5;padding:12px 0;border-bottom:1px solid #ffffff26}.booking-summary li button{border:0;background:transparent;color:#fff;cursor:pointer;padding:0 4px;font-size:20px}.booking-total{display:flex;justify-content:space-between;align-items:center;margin-top:24px;gap:12px}.booking-total span{font-size:14px}.booking-total strong{font-size:30px}.booking-summary .booking-note{color:#c0cee0}.booking-submit{background:#cf0b32;color:#fff;width:100%;border:0;margin-top:12px;font-size:16px;cursor:pointer;white-space:normal}.booking-submit:disabled{opacity:.65;cursor:wait}.booking-help{display:block;text-align:center;color:#fff;font-size:14px;margin-top:20px;text-decoration:underline}#booking-status{font-size:14px;line-height:1.5}#catalog-status{font-size:14px;color:#52677d;padding:10px 0}.booking-honeypot{position:absolute;left:-9999px}.booking-section [hidden]{display:none!important}.booking-consent{display:flex!important;gap:10px;align-items:start;font-size:14px!important;line-height:1.6;font-weight:400!important}.booking-consent input{margin-top:5px;accent-color:#0c2e54}.booking-section .booking-panel{color:#102b49}@media(max-width:850px){.booking-layout{grid-template-columns:1fr}.booking-summary{position:static}.booking-heading{margin-bottom:22px}.booking-section{padding-top:26px}.booking-panel{padding:20px}}@media(max-width:480px){.booking-fields{grid-template-columns:1fr}.booking-panel{padding:18px}.booking-tabs button{padding:12px 8px}.booking-summary{padding:22px}.booking-heading h2{font-size:30px}}
