.booking-hero{background:#0c0d0c;height:100vh;position:relative;overflow:hidden}.booking-hero-img{object-fit:cover;object-position:center;z-index:0;will-change:transform, opacity;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.booking-hero-overlay{z-index:1;background:linear-gradient(90deg,#060806a6 0%,#06080659 32%,#06080614 58%,#06080600 78%),linear-gradient(#080a0866 0%,#080a081f 24%,#080a0814 48%,#080a0880 78%,#080a08ad 100%);flex-direction:column;justify-content:flex-end;height:100%;display:flex;position:relative}.booking-hero-content{color:#fff;max-width:640px;padding:0 80px 100px}.booking-hero-eyebrow{font-family:var(--font-body);letter-spacing:4px;text-transform:uppercase;color:var(--primary-green);align-items:center;gap:14px;margin-bottom:26px;font-size:12px;font-weight:600;display:flex}.booking-hero-eyebrow-line{background:var(--primary-green);width:40px;height:1px;display:inline-block}.booking-hero-content h1{font-family:var(--font-heading);letter-spacing:-.01em;color:#fff;margin-bottom:22px;font-size:4.4rem;font-weight:500;line-height:1.05}.booking-hero-content p{font-family:var(--font-body);letter-spacing:.01em;color:#ffffffd1;max-width:420px;font-size:1.05rem;font-weight:300;line-height:1.6}.booking-hero-scroll-cue{z-index:2;color:#ffffffbf;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.booking-hero-scroll-label{font-family:var(--font-body);letter-spacing:3px;text-transform:uppercase;font-size:10px;font-weight:500}.booking-hero-scroll-line{transform-origin:top;background:linear-gradient(#ffffffe6,#0000);width:1px;height:36px;animation:2.2s ease-in-out infinite bookingHeroScrollPulse}@keyframes bookingHeroScrollPulse{0%,to{opacity:.35;transform:scaleY(.55)}50%{opacity:1;transform:scaleY(1)}}@media (max-width:900px){.booking-hero-content{padding:0 48px 90px}.booking-hero-content h1{font-size:3.2rem}}@media (max-width:500px){.booking-hero{height:92vh}.booking-hero-content{max-width:100%;padding:0 26px 70px}.booking-hero-eyebrow{letter-spacing:3px;font-size:10px}.booking-hero-content h1{font-size:2.5rem}.booking-hero-content p{max-width:100%;font-size:.95rem}.booking-hero-scroll-cue{display:none}}
.booking-section{background:var(--bg-light);padding:130px 70px 140px}.error{color:#b3442f;font-family:var(--font-body);margin-top:.4rem;font-size:.8rem}.booking-header{text-align:center;max-width:620px;margin:0 auto 72px}.booking-eyebrow{font-family:var(--font-body);letter-spacing:4px;text-transform:uppercase;color:var(--primary-green);justify-content:center;align-items:center;gap:14px;margin-bottom:24px;font-size:12px;font-weight:600;display:flex}.booking-eyebrow-line{background:var(--primary-green);width:40px;height:1px;display:inline-block}.booking-header h2{font-family:var(--font-heading);letter-spacing:.01em;color:var(--text-dark);margin-bottom:18px;font-size:2.6rem;font-weight:400;line-height:1.25}.booking-header h2 .highlight{color:var(--primary-green)}.booking-header p{font-family:var(--font-body);color:var(--gray-dark);max-width:460px;margin:0 auto;font-size:.95rem;font-weight:300;line-height:1.7}.booking-container{grid-template-columns:minmax(0,300px) 1fr;align-items:start;gap:4rem;max-width:1200px;margin:0 auto;display:grid}.booking-left{background:#fff;border:1px solid #ffffff80;padding:40px 32px;position:relative;box-shadow:inset 0 1px #fff9,0 16px 32px #0000000f}.contact-block{border-top:1px solid #00000014;margin-top:22px;padding-top:22px}.contact-block:first-child{border-top:none;margin-top:0;padding-top:0}.contact-block-label{font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;color:var(--primary-green);margin:0 0 10px;font-size:11px;font-weight:600}.contact-block p{font-family:var(--font-body);color:var(--gray-dark);margin:.3rem 0;font-size:.9rem;font-weight:300;line-height:1.6}.contact-block p strong{color:var(--text-dark);font-weight:500}.checkbox-group{flex-wrap:wrap;gap:1.2rem;margin-top:.5rem;display:flex}.checkbox-label{font-family:var(--font-body);color:var(--text-dark);cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;font-weight:300;display:flex}input,select,textarea,button{appearance:none;border-radius:0;font-family:inherit}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-green);margin:0}.booking-form{flex-direction:column;gap:1.6rem;display:flex}.form-row{flex-wrap:wrap;gap:1.2rem;display:flex}.form-group{flex-direction:column;flex:1;display:flex}.form-group label{font-family:var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dark);margin-bottom:10px;font-size:11px;font-weight:600}input,textarea,select{font-family:var(--font-body);color:var(--text-dark);resize:vertical;background-color:#0000;border:1px solid #00000026;border-radius:2px;outline:none;padding:13px 16px;font-size:.9rem;font-weight:300;transition:border-color .3s}input::placeholder,textarea::placeholder{color:var(--gray-dark)}input:focus,textarea:focus,select:focus{border-color:var(--primary-green)}.full-width{flex:100%}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='30,50 70,90 110,50' fill='none' stroke='%23666666' stroke-width='10'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:10px;padding-right:2.5rem}.submit-btn{color:var(--text-dark);font-family:var(--font-body);letter-spacing:3px;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #0000004d;border-radius:2px;justify-content:center;align-self:flex-start;align-items:center;gap:16px;padding:17px 34px;font-size:11px;font-weight:600;transition:background .45s cubic-bezier(.16,1,.3,1),border-color .45s cubic-bezier(.16,1,.3,1),color .45s cubic-bezier(.16,1,.3,1);display:inline-flex}.submit-btn svg{transition:transform .45s cubic-bezier(.16,1,.3,1)}.submit-btn:hover:not(:disabled){background:var(--primary-green);border-color:var(--primary-green);color:#fff}.submit-btn:hover:not(:disabled) svg{transform:translate(6px)}.submit-btn:disabled{opacity:.55;cursor:default}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px}@media (max-width:900px){.booking-section{padding:100px 40px 110px}.booking-header h2{font-size:2.1rem}.booking-container{grid-template-columns:1fr;gap:48px}.booking-left{max-width:460px}}@media (max-width:768px){.form-row{flex-direction:column}.submit-btn{justify-content:center;align-self:stretch}}@media (max-width:500px){.booking-section{padding:80px 24px}.booking-header{margin-bottom:52px}.booking-eyebrow{letter-spacing:3px;font-size:10px}.booking-header h2{font-size:1.8rem}.booking-left{padding:32px 24px}}
