:root{--primary: #0a0a0c;--primary-container: #131620;--primary-light: #181c2b;--on-primary: #ffffff;--accent-gold: #FFB800;--accent-gold-hover: #E5A600;--accent-amber: #FFB800;--accent-amber-hover: #D97706;--accent-amber-light: rgba(255, 184, 0, .12);--accent-gold-glow: rgba(255, 184, 0, .28);--on-accent: #0a0a0c;--background: #090a0f;--surface: #12151f;--surface-variant: #1a1e2e;--surface-card: #141824;--surface-light: #ffffff;--on-background: #F8FAFC;--on-surface: #F8FAFC;--on-surface-variant: #94A3B8;--outline: rgba(255, 184, 0, .18);--outline-variant: rgba(255, 255, 255, .12);--error: #EF4444;--success: #10B981;--font-heading: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--container-max: 1280px;--gutter: 24px;--section-padding-desktop: 100px;--section-padding-mobile: 50px;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 25px -3px rgba(0, 0, 0, .5), 0 0 15px rgba(255, 184, 0, .15);--shadow-xl: 0 20px 30px -5px rgba(0, 0, 0, .6), 0 0 25px rgba(255, 184, 0, .2);--shadow-glass: 0 25px 50px -12px rgba(0, 0, 0, .5);--gold-glow: 0 0 20px rgba(255, 184, 0, .35)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.max-w-container-max{max-width:var(--container-max, 1280px);width:100%}.px-gutter{padding-left:1.5rem!important;padding-right:1.5rem!important}@media(min-width:640px){.px-gutter{padding-left:2.5rem!important;padding-right:2.5rem!important}}@media(min-width:1024px){.px-gutter{padding-left:3.5rem!important;padding-right:3.5rem!important}}@media(min-width:1280px){.px-gutter{padding-left:4.5rem!important;padding-right:4.5rem!important}}html{font-family:var(--font-body);color:var(--on-background);background-color:var(--background);scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-height:100vh;line-height:1.5;overflow-x:hidden;font-size:16px}input[type=date],input[type=time]{cursor:pointer;color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.8) sepia(1) saturate(5) hue-rotate(350deg);opacity:.9;transition:opacity .2s ease,transform .2s ease}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=time]::-webkit-calendar-picker-indicator:hover{opacity:1;transform:scale(1.1)}h1,h2,h3,h4,h5,h6,.font-display{font-family:var(--font-heading);letter-spacing:-.02em}:focus-visible{outline:2px solid var(--accent-amber);outline-offset:3px}.glass-panel{background:#12151feb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,184,0,.22);box-shadow:0 20px 40px #00000080,0 0 15px #ffb80014}.glass-panel-dark{background:#0a0a0ceb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,184,0,.25);box-shadow:var(--shadow-xl)}.gold-border-glow{border:1px solid rgba(255,184,0,.35);box-shadow:0 0 15px #ffb80033}.gold-gradient-text{background:linear-gradient(135deg,#ffe57f,#ffb800,#f90);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.gold-btn{background:linear-gradient(135deg,#ffc700,#f90);color:#0a0a0c;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #ffb80059}.gold-btn:hover{background:linear-gradient(135deg,gold,#ffb800);transform:translateY(-2px);box-shadow:0 8px 25px #ffb80080}.logo-badge-ring{box-shadow:0 0 0 2px #ffb80066,0 0 20px #ffb80040;transition:box-shadow .3s ease}.logo-badge-ring:hover{box-shadow:0 0 0 3px #ffb800cc,0 0 30px #ffb80080}.parallax-bg{background-attachment:fixed;background-position:center;background-repeat:no-repeat;background-size:cover}@media(max-width:768px){.parallax-bg{background-attachment:scroll}}.nav-link-active{color:var(--accent-amber)!important;font-weight:700;position:relative}.nav-link-active:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background-color:var(--accent-amber);border-radius:2px}.route-card-gradient{background:linear-gradient(to top,rgba(15,23,42,.92) 0%,rgba(15,23,42,.45) 55%,transparent 100%)}.floating-actions-container{position:fixed;bottom:28px;right:24px;z-index:990;display:flex;flex-direction:column;gap:14px;align-items:flex-end}.btn-floating{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-lg);transition:transform var(--transition-fast),background-color var(--transition-fast);text-decoration:none;border:none;cursor:pointer}.btn-floating:hover{transform:scale(1.1)}.btn-floating-whatsapp{background-color:#25d366}.btn-floating-call{background-color:var(--primary)}.btn-floating-top{background-color:var(--accent-amber);color:var(--primary);opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal),transform var(--transition-fast)}.btn-floating-top.is-visible{opacity:1;visibility:visible}.mobile-sticky-bar{position:fixed;bottom:0;left:0;width:100%;background-color:var(--primary);border-top:1px solid rgba(255,255,255,.1);padding:10px 16px;z-index:1000;display:none;box-shadow:0 -4px 20px #00000040}@media(max-width:768px){.mobile-sticky-bar{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:8px}body{padding-bottom:70px}.floating-actions-container{bottom:80px;right:16px}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--surface-variant)}::-webkit-scrollbar-thumb{background:var(--outline-variant);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--on-surface-variant)}.container-custom{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--gutter);padding-right:var(--gutter)}@media(max-width:639px){:root{--gutter: 16px;--section-padding-desktop: 48px}.text-display-lg{font-size:32px!important;line-height:40px!important}.text-headline-md{font-size:24px!important;line-height:32px!important}.hero-booking-card{padding:20px!important}.grid-mobile-single{grid-template-columns:1fr!important}}@media(min-width:640px)and (max-width:1023px){:root{--gutter: 20px;--section-padding-desktop: 72px}.grid-tablet-2{grid-template-columns:repeat(2,1fr)!important}}@media(min-width:1024px){.desktop-nav{display:flex!important}.mobile-drawer{display:none!important}}@media(min-width:1440px){:root{--container-max: 1360px}}.mobile-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172ab3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998;opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.mobile-menu-overlay.is-active{opacity:1;pointer-events:auto}.mobile-menu-drawer{position:fixed;top:0;right:0;width:85%;max-width:360px;height:100%;background-color:var(--surface);z-index:999;transform:translate(100%);transition:transform var(--transition-normal);padding:24px;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.mobile-menu-drawer.is-active{transform:translate(0)}@media print{.fixed,.floating-actions-container,.mobile-sticky-bar{display:none!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .7s cubic-bezier(.16,1,.3,1) forwards}.reveal-on-scroll{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}@keyframes pulseGlow{0%{box-shadow:0 0 #25d36680}70%{box-shadow:0 0 0 15px #25d36600}to{box-shadow:0 0 #25d36600}}.pulse-whatsapp{animation:pulseGlow 2s infinite}@keyframes pulseAmber{0%{box-shadow:0 0 #f59e0b80}70%{box-shadow:0 0 0 15px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.pulse-amber{animation:pulseAmber 2.2s infinite}.ripple-effect{position:relative;overflow:hidden}.ripple-circle{position:absolute;border-radius:50%;background:#fff6;transform:scale(0);animation:rippleAnimation .6s linear;pointer-events:none}@keyframes rippleAnimation{to{transform:scale(4);opacity:0}}@keyframes subtleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.float-slow{animation:subtleFloat 4s ease-in-out infinite}
