.booking-page{background:var(--body-bg-color);min-height:100vh}.booking-hero{border-bottom:1px solid hsla(var(--hue), 80%, 50%, .34);background:radial-gradient(circle at 50% 0%, hsla(var(--hue), 90%, 55%, .15), transparent 50%), linear-gradient(135deg, var(--bg-black), #26200d, var(--bg-dark));text-align:center;padding:82px 0 76px;position:relative;overflow:hidden}.booking-hero:before,.booking-hero:after{content:"";border:1px solid hsla(var(--hue), 90%, 55%, .16);border-radius:50%;width:250px;height:250px;position:absolute}.booking-hero:before{top:-170px;left:-70px}.booking-hero:after{bottom:-190px;right:-80px}.booking-hero-inner{z-index:1;max-width:810px;position:relative}.booking-eyebrow,.booking-step-label{color:var(--main-color);letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;font-weight:600;display:inline-block}.booking-hero h1{color:var(--text-gold);letter-spacing:-.035em;margin:10px 0 16px;font-size:clamp(2.3rem,6vw,4rem);font-weight:700}.booking-hero p{max-width:690px;color:var(--text-light-gold);margin:0 auto;font-size:clamp(1rem,2vw,1.12rem);line-height:1.75}.booking-section{background:var(--body-bg-color)}.booking-card{border:1px solid hsla(var(--hue), 80%, 50%, .38);background:linear-gradient(145deg, var(--bg-color), #1a1a1a);box-shadow:0 18px 44px #00000047, var(--shadow);border-radius:18px;padding:48px}.booking-card-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px;display:flex}.booking-card-heading h2{max-width:650px;color:var(--text-gold);margin-top:8px;font-size:clamp(1.55rem,3.4vw,2.2rem)}.booking-response-note{color:var(--text-light-gold);font-size:var(--fs-sm);flex-shrink:0;align-items:center;gap:9px;display:inline-flex}.booking-response-note i{color:var(--main-color)}.booking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;display:grid}.booking-field{min-width:0}.booking-field-wide{grid-column:1/-1}.booking-field label{color:var(--text-light-gold);margin:0 0 8px 18px;font-size:.84rem;font-weight:500;display:block}.booking-field input,.booking-field select,.booking-field textarea{border:1px solid var(--border-color);background-color:var(--bg-color);width:100%;min-width:0;color:var(--text-gold);font:inherit;font-weight:400;transition:border-color .25s,box-shadow .25s,background-color .25s}.booking-field input,.booking-field select{border-radius:30px;height:58px;padding:0 22px}.booking-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23d9a90a' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-position:right 22px center;background-repeat:no-repeat;padding-right:50px}.booking-field select option{background:var(--bg-dark);color:var(--text-gold)}.booking-field textarea{resize:vertical;border-radius:20px;min-height:175px;padding:19px 22px}.booking-field input::placeholder,.booking-field textarea::placeholder{color:var(--text-dark-gold);opacity:.82}.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{border-color:var(--text-gold);background-color:var(--bg-dark);box-shadow:var(--focus-shadow);outline:none}.booking-field input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.booking-confirmation-copy{color:var(--text-light-gold);font-size:var(--fs-sm);text-align:center;opacity:.82;margin:22px 0 14px;line-height:1.6}.booking-submit{border:2px solid var(--main-color);background:linear-gradient(135deg, var(--main-color), var(--text-gold));width:100%;min-height:58px;color:var(--bg-black);font-size:var(--fs-lg);box-shadow:var(--shadow);border-radius:30px;justify-content:center;align-items:center;gap:12px;font-weight:700;display:inline-flex}.booking-submit:hover:not(:disabled){border-color:var(--main-color);background:var(--bg-black);color:var(--main-color);box-shadow:var(--focus-shadow);transform:translateY(-2px)}.booking-submit:focus-visible{outline:2px solid var(--text-light-gold);outline-offset:4px}.booking-submit:disabled{cursor:wait;opacity:.68}.booking-status{text-align:center;min-height:26px;margin-top:15px}.booking-status p{font-size:var(--fs-sm);margin:0;font-weight:500}.booking-status-success{color:var(--green-light)}.booking-status-error,.booking-status-error a{color:var(--text-light-gold)}.booking-status-error a{font-weight:700;text-decoration:underline}@media (max-width:991px){.booking-card{padding:38px 32px}.booking-card-heading{flex-direction:column;align-items:flex-start;gap:14px}}@media (max-width:767px){.booking-hero{padding:64px 0 60px}.booking-card{border-radius:14px;padding:30px 22px}.booking-grid{grid-template-columns:1fr;gap:18px}.booking-field-wide{grid-column:auto}}@media (max-width:480px){.booking-card{padding:26px 15px}.booking-field label{margin-left:14px}.booking-field input,.booking-field select{height:54px;padding-left:18px}.booking-field textarea{min-height:155px;padding:17px 18px}.booking-submit{min-height:54px;font-size:var(--fs-md)}}@media (prefers-reduced-motion:reduce){.booking-field input,.booking-field select,.booking-field textarea,.booking-submit{transition:none}}
