:root{--shadow-lift:0 6px 16px #0b1f2a1a, 0 32px 72px #0b1f2a24;--shadow-press:0 1px 2px #0b1f2a1f;--radius-xl:36px;--radius-pill:999px;--brass-gradient:linear-gradient(135deg, var(--gold-300), var(--sunset-500))}@media (prefers-reduced-motion:no-preference){.button{transition:transform var(--dur-fast) var(--ease-spring), box-shadow var(--dur-fast) var(--ease-out), filter var(--dur-fast) var(--ease-out);will-change:transform}.button:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.button:active{box-shadow:var(--shadow-press);transform:translateY(1px)scale(.985)}.calendar-day{transition:transform var(--dur-fast) var(--ease-spring), background var(--dur-fast) var(--ease-out)}.calendar-day:not(:disabled):active{transform:scale(.9)}.vehicle-card,.result-card,.flight-offer-card{transition:transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out)}.vehicle-card:hover,.result-card:hover,.flight-offer-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}}.button-coral,.button-sun{background-image:var(--brass-gradient);color:#21170a;border:none;box-shadow:inset 0 1px #ffffff59,0 8px 20px #b08d5747}.button-coral:hover,.button-sun:hover{filter:brightness(1.03)}.button-primary,.button-coral,.button-sun{border:1.5px solid var(--gold-400)}.button-primary:hover,.button-coral:hover,.button-sun:hover{border-color:var(--gold-300);box-shadow:var(--shadow-lift), 0 0 0 3px #cbae7447}.button:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.bundle-banner{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:linear-gradient(120deg,#e4ce9c38,#b08d5724);border:1px solid #b08d5759;flex-wrap:wrap;align-items:center;gap:14px;margin:18px 0;padding:14px 18px;display:flex}.bundle-banner-lead{flex:260px;align-items:center;gap:12px;display:flex}.bundle-banner-lead svg{color:var(--sunset-600);flex-shrink:0}.bundle-banner-lead strong{color:var(--ink);font-weight:600;display:block}.bundle-banner-lead span{color:var(--muted);font-size:.85rem;display:block}.bundle-banner-lead .button{margin-left:auto}.bundle-banner-form{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.bundle-banner-form input{border-radius:var(--radius-sm);border:1px solid var(--shell-300);background:#fff;flex:200px;padding:10px 12px}.bundle-banner.is-done{color:var(--success);background:#0e7c6b1a;border-color:#0e7c6b4d}.bundle-banner.is-done svg{color:var(--success)}.bundle-close{margin-left:4px}.search-datebtn{text-align:left;width:100%;height:35px;color:var(--ink);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;padding:0;font-weight:700;overflow:hidden}.search-datebtn.is-empty{color:var(--muted)}.date-range-field{position:relative}.date-range-triggers{grid-template-columns:1fr 1fr;gap:12px;display:grid}.date-range-field.is-single .date-range-triggers{grid-template-columns:1fr}.flight-detail-fields .date-range-field:not(.is-single){grid-column:span 2}.date-range-trigger{background:#ffffffeb;border:1px solid #aebfba;border-radius:13px;padding:7px 13px}.date-range-trigger:focus-within{border-color:var(--ocean-700);box-shadow:0 0 0 4px #14736b1f}.date-range-trigger .search-datebtn{height:32px;font-size:14px}.search-panel .date-range-triggers{display:contents}.search-panel .date-range-trigger{border:0;border-right:1px solid var(--sand-200);background:0 0;border-radius:0;padding:5px 16px}.search-panel .date-range-trigger:focus-within{box-shadow:none}.stay-search-dropdown{border-radius:var(--radius-lg);border:1px solid var(--shell-200);box-shadow:var(--shadow-lift);background:#fff;margin-top:12px;padding:18px}.stay-search-dropdown .availability-calendar{max-width:380px;margin:0 auto}.stay-search-dropdown-foot{justify-content:flex-end;margin-top:10px;display:flex}.stay-availability-list ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.stay-availability-list li{border:1px solid var(--shell-200);border-radius:var(--radius-md);align-items:center;gap:14px;padding:12px 14px;display:flex}.stay-availability-list li>div{flex-direction:column;display:flex}.stay-availability-list li>div span{color:var(--muted);font-size:.85rem}.stay-availability-list .rooms-count{color:var(--sunset-700);white-space:nowrap;margin-left:auto;font-weight:750}.stay-availability-list .rooms-count.is-full{color:var(--danger)}.stay-availability-list .empty-note,.stay-availability-list .loading-state{color:var(--muted);margin:4px}.status-pill.status-available{color:var(--success);background:#0e7c6b24}.status-pill.status-unavailable{color:var(--danger);background:#b4463b24}.status-pill.status-deposit_paid{color:var(--success);background:#0e7c6b24}.status-pill.status-unpaid,.status-pill.status-pending{color:var(--sunset-700);background:#b08d5729}.status-pill.status-failed{color:var(--danger);background:#b4463b24}.status-pill.status-sent{color:var(--success);background:#0e7c6b24}.status-pill.status-skipped{background:var(--shell-200);color:var(--muted)}.checkout-section{max-width:1040px}.checkout-layout{grid-template-columns:1.6fr 1fr;align-items:start;gap:28px;display:grid}.checkout-card{border-radius:var(--radius-lg);border:1px solid var(--shell-200);box-shadow:var(--shadow-lift);background:#fff;padding:32px}.checkout-card h1{margin:8px 0 6px}.checkout-facts{grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0;display:grid}.checkout-facts>div{background:var(--shell-50);border-radius:var(--radius-sm);padding:12px 14px}.checkout-facts span{color:var(--muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.checkout-facts strong{margin-top:3px;display:block}.checkout-totals{border-top:1px solid var(--shell-200);margin-top:8px;padding-top:16px}.checkout-row{justify-content:space-between;align-items:baseline;padding:6px 0;display:flex}.checkout-row-deposit{font-size:1.15rem}.checkout-row-deposit strong{color:var(--sunset-700);font-size:1.5rem;font-family:var(--font-display)}.checkout-row-muted{color:var(--muted);font-size:.9rem}.checkout-pay{justify-content:center;width:100%;margin-top:8px}.checkout-paid{border-radius:var(--radius-md);color:var(--success);background:#0e7c6b1a;align-items:center;gap:10px;padding:16px;font-weight:600;display:flex}.checkout-aside{border-radius:var(--radius-lg);color:var(--shell-50);background:linear-gradient(160deg, var(--ocean-950), var(--ocean-800));box-shadow:var(--shadow-lift);padding:26px}.checkout-aside h2{color:#fff}.checkout-aside p{color:#ffffffc7;font-size:.92rem}.sandbox-badge{border-radius:var(--radius-pill);color:var(--gold-300);background:#e4ce9c2e;align-items:center;gap:6px;margin-bottom:14px;padding:6px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.checkout-testcard{border-radius:var(--radius-sm);background:#ffffff14;margin:16px 0;padding:12px 14px}.checkout-testcard code{color:var(--gold-300);font-size:.85rem}.checkout-assurances{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.checkout-assurances li{color:#ffffffd1;align-items:flex-start;gap:8px;font-size:.85rem;display:flex}.checkout-assurances svg{color:var(--gold-300);flex-shrink:0;margin-top:2px}.deposit-summary strong{color:var(--sunset-700)}.confirmation-section{max-width:720px}.confirmation-card{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--shell-200);box-shadow:var(--shadow-lift);background:#fff;padding:40px 32px}.confirmation-icon{color:var(--sunset-600);display:inline-flex}.confirmation-icon.is-paid{color:var(--success)}.confirmation-facts{text-align:left;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0;display:grid}.confirmation-facts>div{background:var(--shell-50);border-radius:var(--radius-sm);padding:12px 14px}.confirmation-facts span{color:var(--muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.confirmation-facts strong{margin-top:3px;display:block}.confirmation-note{color:var(--muted);align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.confirmation-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px;display:flex}.error-section{max-width:640px}.error-card{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--shell-200);box-shadow:var(--shadow-lift);background:#fff;padding:48px 32px}.error-card h1{margin:10px 0 14px;font-size:clamp(2rem,4.5vw,3.2rem)}.error-card>p{max-width:460px;color:var(--muted);margin:0 auto;line-height:1.7}.error-icon{width:68px;height:68px;color:var(--ocean-800);background:var(--aqua-100);border-radius:50%;place-items:center;margin-bottom:4px;display:inline-grid}.error-icon.is-warning{color:var(--sunset-700);background:var(--sand-100)}.error-digest{color:var(--muted);font-variant-numeric:tabular-nums;margin:16px 0 0;font-size:.8rem}.error-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}@media (max-width:600px){.error-card{padding:36px 20px}.error-actions .button{width:100%}}.premium-card{border-radius:var(--radius-xl);color:var(--shell-50);background:linear-gradient(150deg, var(--ocean-1000), var(--ocean-800) 70%);box-shadow:var(--shadow-lift);margin-top:28px;padding:30px;position:relative;overflow:hidden}.premium-card-glow{pointer-events:none;background:radial-gradient(circle,#e4ce9c47,#0000 65%);height:260px;position:absolute;inset:-40% 40% auto -10%}.premium-card h3{color:#fff;align-items:center;gap:10px;display:flex}.premium-card p{color:#fffc;max-width:60ch}.premium-badge{border-radius:var(--radius-pill);background:var(--brass-gradient);color:#21170a;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;padding:5px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.premium-card-lead{margin-bottom:18px;position:relative}.premium-form{gap:12px;display:grid;position:relative}.premium-form .field label,.premium-form .field span{color:#fffc}.premium-form input,.premium-form select,.premium-form textarea{border-radius:var(--radius-sm);color:var(--ink);background:#fffffff0;border:none;padding:10px 12px}.premium-form input::placeholder,.premium-form textarea::placeholder{color:var(--muted);opacity:1}.premium-done{color:var(--gold-300);align-items:center;gap:10px;font-weight:600;display:flex;position:relative}.charter-recommendation{border-radius:calc(var(--radius-xl) + 4px);background:var(--brass-gradient);box-shadow:var(--shadow-lift);margin-bottom:20px;padding:4px;position:relative}.charter-recommendation-ribbon{border-radius:var(--radius-pill);color:var(--gold-300);letter-spacing:.04em;text-transform:uppercase;background:#21170ae6;align-items:center;gap:6px;margin:10px 0 4px 14px;padding:5px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.charter-recommendation-lead{color:#3a2c12;max-width:62ch;margin:4px 14px 12px;font-weight:600}.charter-recommendation .premium-card{margin-top:0}.vehicle-toolbar{border-radius:var(--radius-md);background:var(--shell-50);border:1px solid var(--shell-200);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 24px;margin-bottom:6px;padding:14px 16px;display:flex}.vehicle-dates{flex-wrap:wrap;gap:12px;display:flex}.vehicle-dates .field{color:var(--muted);flex-direction:column;gap:4px;font-size:.82rem;display:flex}.vehicle-dates input{border-radius:var(--radius-sm);border:1px solid var(--shell-300);padding:8px 10px}.vehicle-availability-count{color:var(--ocean-800);font-size:.92rem;line-height:1.45}.vehicle-availability-count svg{vertical-align:-3px;margin-right:6px}.vehicle-availability-count strong{color:var(--ocean-1000);white-space:nowrap}.vehicle-dates{align-items:flex-end}.vehicle-search-button{white-space:nowrap;align-self:flex-end;min-width:172px}.vehicle-toolbar .form-error{flex-basis:100%;margin:0}.vehicle-rooms{color:var(--sunset-700);align-items:center;gap:6px;margin:0;font-size:.88rem;font-weight:750;display:inline-flex}.vehicle-rooms.tone-unavailable{color:var(--danger)}.vehicle-rooms.tone-unknown{color:var(--muted)}.vehicle-rooms svg{flex-shrink:0}.vehicle-image .status-pill.status-rooms{white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;max-width:calc(100% - 24px);left:auto;right:12px}.vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start;gap:20px;margin-top:10px;display:grid}.vehicle-card{border:1px solid var(--shell-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;display:flex;overflow:hidden}.vehicle-image{aspect-ratio:4/3;background:var(--shell-100);position:relative}.vehicle-image img{object-fit:cover}.vehicle-image-fallback{color:var(--shell-300);place-items:center;display:grid;position:absolute;inset:0}.vehicle-image .status-pill{position:absolute;top:12px;left:12px}.vehicle-body{flex-direction:column;flex:1;gap:10px;padding:18px;display:flex}.vehicle-body h3{margin:0}.vehicle-body>p:not(.vehicle-rooms){-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.vehicle-specs{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:.85rem;display:flex}.vehicle-specs span{align-items:center;gap:5px;display:inline-flex}.vehicle-body .button{margin-top:auto}.vehicle-request-form{gap:8px;display:grid}.vehicle-request-form input{border-radius:var(--radius-sm);border:1px solid var(--shell-300);padding:9px 11px}.vehicle-done{color:var(--success);align-items:flex-start;gap:8px;margin-top:auto;font-size:.9rem;display:flex}.vehicle-done svg{flex-shrink:0;margin-top:2px}.vehicle-request-form .planner-note{color:var(--muted);font-size:.78rem;line-height:1.4}.vehicle-collection-compact .vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}@media (prefers-reduced-motion:no-preference){.guest-details-reveal{animation:reveal-fade var(--dur-slow) var(--ease-out)}}@keyframes reveal-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.admin-gate{background:linear-gradient(160deg, var(--ocean-1000), var(--ocean-800));place-items:center;min-height:100vh;padding:24px;display:grid}.admin-gate-card{text-align:center;border-radius:var(--radius-lg);width:min(420px,100%);box-shadow:var(--shadow-lift);background:#fff;padding:34px}.admin-gate-icon{border-radius:var(--radius-pill);background:var(--shell-100);color:var(--ocean-800);margin-bottom:8px;padding:14px;display:inline-flex}.admin-gate-card .field{text-align:left;margin:16px 0}.admin-gate-card .button{justify-content:center;width:100%}.admin-editor-list{gap:16px;display:grid}.admin-editor-card{border:1px solid var(--shell-200);border-radius:var(--radius-md);background:#fff;grid-template-columns:140px 1fr;gap:18px;padding:18px;display:grid}.admin-editor-media{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.admin-editor-fields{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.admin-editor-fields label{color:var(--muted);flex-direction:column;gap:4px;font-size:.82rem;display:flex}.admin-editor-fields input,.admin-editor-fields select,.admin-editor-fields textarea{border-radius:var(--radius-sm);border:1px solid var(--shell-300);padding:8px 10px;font-size:.9rem}.admin-editor-wide{grid-column:1/-1}.admin-editor-title{grid-column:1/-1;align-items:baseline;gap:10px;display:flex}.admin-editor-title code{color:var(--muted);font-size:.8rem}.admin-editor-toggles{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:16px;display:flex}.admin-blackouts{grid-column:1/-1}.admin-blackout-add{gap:8px;margin:6px 0;display:flex}.admin-blackout-chips{flex-wrap:wrap;gap:6px;display:flex}.admin-chip{border-radius:var(--radius-pill);border:1px solid var(--shell-300);background:var(--shell-50);cursor:pointer;padding:4px 10px;font-size:.8rem}.admin-add-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.admin-add-row input{border-radius:var(--radius-sm);border:1px solid var(--shell-300);flex:120px;padding:8px 10px}.admin-upload{border-radius:var(--radius-pill);border:1px dashed var(--shell-300);cursor:pointer;color:var(--ocean-800);align-items:center;gap:6px;padding:7px 12px;font-size:.8rem;display:inline-flex}.admin-upload input{display:none}.footer-admin-mark{opacity:.22;color:inherit;transition:opacity var(--dur) var(--ease-out);margin-left:auto;font-size:1.1rem;line-height:1;text-decoration:none}.footer-admin-mark:hover{opacity:.6}@media (max-width:860px){.checkout-layout,.admin-editor-card,.admin-editor-fields{grid-template-columns:1fr}}@media (max-width:600px){.vehicle-dates{width:100%}.vehicle-search-button{justify-content:center;width:100%;min-width:0}}
