.booking-page{background:#fbfcf8}.booking-page .booking-intro{background:radial-gradient(ellipse at 15% 30%,#e6efe4,transparent 65%);padding-bottom:35px}.booking-page .booking-hero{gap:60px;padding:28px 0 24px}.booking-page .booking-hero h1{line-height:1.1;font-size:clamp(36px,4.5vw,62px)}.booking-overview{padding:32px;border:1px solid #d9e4d6;border-radius:24px;background:#fff;box-shadow:0 20px 50px #1b493b08}.booking-overview h2{font-size:26px;line-height:1.3;letter-spacing:-.025em;margin:12px 0 24px}.booking-overview ol{list-style:none;padding:0;margin:0}.booking-overview li{display:flex;gap:16px;padding:17px 0;border-top:1px solid #edf1e9}.booking-overview li>span{color:#a1844f;font-size:14px;font-weight:700;padding-top:2px}.booking-overview b{font-size:15px;color:#234e41}.booking-overview p{color:#65746b;font-size:13px;line-height:1.7;margin:5px 0 0}.booking-overview [data-registry-block]{margin-top:18px;padding-top:16px;border-top:1px solid #edf1e9}.booking-overview .registry-block__num{font-size:22px}.booking-page .booking-nav{background:#fbfcf8f5}.booking-page .booking-step{box-shadow:none;border-color:#dde6d9;border-radius:18px;gap:20px}.booking-page .booking-step__num{background:#235342;box-shadow:none;border-radius:50%}.booking-page .booking-step__time{color:#8b7448;letter-spacing:.035em}.booking-page .booking-step__body h3{font-size:22px}.booking-page .booking-step__body p{font-size:15px}.booking-page #payment .advantage-card,.booking-page #cancellation .advantage-card{box-shadow:none;border-color:#dde6d9;border-radius:18px}.booking-page .booking-security{background:#edf3e9;border-color:#d8e3d0}.booking-page .booking-documents{gap:50px}.booking-page .booking-documents .check-list{box-shadow:none;border-color:#dce5d8}.booking-check-progress{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;color:#315b46;font-size:14px}.booking-check-progress p{margin:0}.booking-check-progress button{border:0;background:transparent;color:#315b46;font:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer;min-height:44px}.booking-check-items{display:grid;gap:10px}.booking-check-item{display:flex;align-items:start;gap:16px;padding:22px 24px;border:1px solid #dce5d8;border-radius:14px;background:white;cursor:pointer}.booking-check-item input{width:22px;height:22px;accent-color:#235342;flex-shrink:0;margin:2px 0 0}.booking-check-item b{display:block;color:#234e41;font-size:17px;line-height:1.4}.booking-check-item span span{display:block;margin-top:6px;color:#637467;font-size:14px;line-height:1.65}.booking-check-item:has(input:checked){background:#eff5eb;border-color:#93ae88}.booking-check-item:focus-within{outline:3px solid #b89453;outline-offset:3px}.booking-check-subtitle{font-size:24px;margin:40px 0 24px}.booking-page .warning-card{background:#fff;border:1px solid #e1e7dc;border-radius:16px}.booking-faq{max-width:900px;margin:auto;display:grid;gap:12px}.booking-faq details{border:1px solid #dce5d8;background:white;border-radius:16px;overflow:hidden}.booking-faq summary{display:flex;justify-content:space-between;gap:20px;padding:24px 26px;font-weight:600;font-size:17px;line-height:1.5;list-style:none;cursor:pointer;color:#234e41}.booking-faq summary::-webkit-details-marker{display:none}.booking-faq summary:after{content:'+';font-size:24px;font-weight:400;line-height:1;flex-shrink:0;padding-top:2px}.booking-faq details[open] summary:after{content:'−'}.booking-faq p{padding:0 26px 24px;margin:0;font-size:15px;color:#637467;line-height:1.8}.booking-faq summary:focus-visible,.booking-page .booking-nav a:focus-visible,.booking-check-progress button:focus-visible{outline:3px solid #b89453;outline-offset:-4px}.booking-page .booking-final{background:#e9f0e4}.booking-page .booking-mobile-cta{bottom:calc(12px + env(safe-area-inset-bottom));background:#235342}.booking-page .booking-check-progress [hidden]{display:none}@media(max-width:900px){.booking-page .booking-hero{gap:28px}.booking-overview{max-width:none}.booking-page .booking-documents{gap:26px}}@media(max-width:640px){.booking-overview{padding:24px}.booking-overview h2{font-size:24px}.booking-page .booking-hero{padding-top:16px}.booking-check-item{padding:19px 17px;gap:13px}.booking-check-item b{font-size:16px}.booking-check-progress{align-items:start;font-size:13px}.booking-faq summary{padding:20px;font-size:16px}.booking-faq p{padding:0 20px 20px}.booking-page .booking-step__body h3{font-size:20px}.booking-page .booking-mobile-cta{left:12px;right:12px}.booking-page{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.booking-page .booking-nav__inner{gap:0}.booking-page .booking-nav a{padding:10px 12px}.booking-page .booking-hero h1 br{display:none}}

.booking-page:has(.sticky-mobile-cta) .booking-mobile-cta{display:none}.booking-page:has(.cookie-banner:not([hidden])) .booking-mobile-cta,.booking-page:has(.nav.is-open) .booking-mobile-cta{visibility:hidden}.booking-check-progress [hidden]{display:none}
