.booking-page-wrapper{max-width:var(--container-max,1200px);padding:0 var(--gutter,20px);font-family:var(--font-body,system-ui, sans-serif);margin:40px auto 80px}.booking-main-grid{grid-template-columns:1fr;align-items:start;gap:3rem;display:grid}@media (min-width:992px){.booking-main-grid{grid-template-columns:.9fr 2.1fr;gap:4rem}}.booking-brand-section{flex-direction:column;gap:1.5rem;display:flex}.booking-script-title{color:var(--secondary);margin:0;font-family:Playfair Display,Satisfy,cursive,Georgia,serif;font-size:2.2rem;font-style:italic;display:block}.booking-main-title{font-family:var(--font-display,Georgia, serif);color:var(--primary);letter-spacing:-.01em;margin:0;font-size:2.5rem;font-weight:800;line-height:1.2}.booking-brand-desc{font-family:var(--font-body);color:var(--on-surface-variant);font-size:1rem;line-height:1.6}.booking-content-section{flex-direction:column;display:flex}.booking-tabs-row{justify-content:flex-start;gap:16px;margin-bottom:32px;display:flex}.booking-tab-btn{background:var(--surface-container-lowest,#fff);border:1px solid var(--outline-variant);color:var(--outline);font-family:var(--font-display,sans-serif);letter-spacing:.05em;border-radius:var(--radius-md,4px);cursor:pointer;transition:all var(--transition-base,.3s ease);padding:12px 36px;font-size:13px;font-weight:700;box-shadow:0 1px 3px #00000005}.booking-tab-btn:hover{color:var(--secondary);border-color:var(--secondary-container)}.booking-tab-btn.active{border:1.5px solid var(--secondary);color:var(--secondary);box-shadow:0 4px 12px #8a510014}.booking-form-box{background:var(--surface-container-lowest,#fff);border-radius:var(--radius-xl,12px);border:1px solid var(--outline-variant);box-shadow:var(--shadow-card);padding:48px}.form-grid-fields{grid-template-columns:1fr 1fr;gap:28px 48px;display:grid}.form-column{flex-direction:column;gap:28px;display:flex}.form-underlined-group{gap:var(--stack-sm,8px);flex-direction:column;display:flex}.form-underlined-group label{font-family:var(--font-display);font-size:var(--label-md-size,12px);color:var(--on-surface);text-transform:uppercase;letter-spacing:var(--label-md-letter);font-weight:600}.form-underlined-group input,.form-underlined-group select{border:1.5px solid var(--outline-variant);border-radius:var(--radius-lg,8px);font-family:var(--font-body);font-size:var(--body-md-size,14px);color:var(--on-surface);background:var(--surface-container-lowest);transition:all var(--transition-fast,.25s ease);outline:none;width:100%;padding:.75rem 1rem;font-weight:500}.form-underlined-group input:focus,.form-underlined-group select:focus{border-color:var(--primary);background-color:var(--surface-container-lowest);box-shadow:0 0 0 3px #000d201a}.form-underlined-group input::placeholder{color:var(--outline)}.form-underlined-group select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23718096' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:20px}.form-underlined-group input[type=date]{color:var(--on-surface)}.animate-fade-in{animation:form-field-fade var(--transition-base) forwards}@keyframes form-field-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.booking-form-footer{justify-content:flex-end;margin-top:48px;display:flex}.booking-submit-btn{background:var(--secondary);color:var(--on-secondary,#fff);font-family:var(--font-display,system-ui, sans-serif);border-radius:var(--radius-md,6px);cursor:pointer;transition:all var(--transition-base,.3s ease);border:none;padding:14px 40px;font-size:14px;font-weight:700;box-shadow:0 4px 14px #8a510040}.booking-submit-btn:hover:not(:disabled){background:var(--secondary-container);transform:translateY(-1px);box-shadow:0 6px 20px #8a510059}.booking-submit-btn:disabled{background:var(--outline-variant);color:var(--outline);box-shadow:none;cursor:not-allowed;transform:none}@media (max-width:991px){.booking-main-title{font-size:2rem}.booking-form-box{padding:32px}.form-grid-fields{grid-template-columns:1fr;row-gap:20px}.booking-tabs-row{flex-direction:column;align-items:stretch}.booking-tab-btn{text-align:center;padding:12px}}@media (max-width:576px){.booking-form-box{padding:20px}}.success-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:9999;background:#000d2066;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.success-modal-card{background:var(--surface-container-lowest,#fff);border-radius:var(--radius-xl,16px);border:1px solid var(--outline-variant,#e2e8f0);box-shadow:var(--shadow-modal,0 24px 64px #0000002e);text-align:center;flex-direction:column;align-items:center;gap:1.5rem;width:90%;max-width:460px;padding:40px;display:flex}.success-modal-icon{color:#10b981;background:#10b9811a;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-ring;display:flex}@keyframes pulse-ring{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 12px #10b98100}}.success-modal-title{font-family:var(--font-display,Georgia, serif);color:var(--primary,#0d3b2c);margin:0;font-size:1.8rem;font-weight:800}.success-modal-text{font-family:var(--font-body,system-ui, sans-serif);color:var(--on-surface-variant,#475569);margin:0;font-size:1rem;line-height:1.6}.success-modal-btn{background:var(--secondary,#e55b44);color:#fff;font-family:var(--font-display,sans-serif);border-radius:var(--radius-md,6px);cursor:pointer;border:none;width:100%;padding:12px 32px;font-size:14px;font-weight:700;transition:all .25s;box-shadow:0 4px 14px #e55b4440}.success-modal-btn:hover{background:var(--secondary-container,#c24630);transform:translateY(-1px);box-shadow:0 6px 20px #e55b4459}.animate-scale-up{animation:.3s cubic-bezier(.34,1.56,.64,1) forwards scale-up-anim}@keyframes scale-up-anim{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.passengers-section-wrapper{border-top:1.5px dashed var(--outline-variant,#cbd5e1);flex-direction:column;grid-column:span 2;gap:20px;margin-top:32px;padding-top:32px;display:flex}@media (max-width:991px){.passengers-section-wrapper{grid-column:span 1}}.passengers-section-title{font-family:var(--font-display,Georgia, serif);color:var(--primary,#0d3b2c);margin-bottom:8px;font-size:1.5rem;font-weight:700}.passenger-form-card{background:var(--surface-container-low,#fcfcfc);border:1px solid var(--outline-variant,#e2e8f0);border-radius:var(--radius-lg,8px);flex-direction:column;gap:20px;padding:24px;display:flex;box-shadow:0 1px 3px #00000003}.passenger-card-header{font-family:var(--font-display,Georgia, serif);color:var(--primary,#0d3b2c);border-bottom:1px solid var(--outline-variant,#e2e8f0);margin-bottom:4px;padding-bottom:8px;font-size:1.1rem;font-weight:700}.passenger-fields-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;display:grid}.passenger-upload-row{border-top:1px dashed var(--outline-variant,#cbd5e1);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;padding-top:20px;display:grid}.passenger-file-uploader{flex-direction:column;gap:8px;display:flex}.file-upload-button-wrapper{align-items:center;gap:12px;display:flex}.file-upload-btn-label{background:var(--surface-container-highest,#f0f0f0);border:1.5px solid var(--outline-variant,#cbd5e1);border-radius:var(--radius-md,6px);cursor:pointer;color:var(--on-surface,#1e293b);padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s;display:inline-block}.file-upload-btn-label:hover{background:var(--outline-variant,#cbd5e1)}.file-upload-status{color:var(--outline,#64748b);font-size:13px}
