@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Sans+3:wght@300;400;600&display=swap";.chat-fab{position:fixed;bottom:1.5rem;right:1.5rem;width:60px;height:60px;border-radius:50%;background:var(--champagne-gold);border:none;cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #d4af3766;transition:all .2s ease;z-index:1000}.chat-fab:hover{transform:scale(1.05);box-shadow:0 6px 20px #d4af3780}.chat-widget{position:fixed;bottom:6rem;right:1.5rem;width:360px;max-width:calc(100vw - 2rem);background:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 32px #1a233226;overflow:hidden;z-index:1000;display:flex;flex-direction:column}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:linear-gradient(135deg,var(--luxury-navy) 0%,var(--luxury-charcoal) 100%);color:#fff}.chat-header-info{display:flex;align-items:center;gap:.75rem}.chat-status{width:10px;height:10px;background:#22c55e;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-header-info div{display:flex;flex-direction:column}.chat-header-info strong{font-size:.9375rem}.chat-header-info span{font-size:.75rem;opacity:.8}.chat-close{background:#fff3;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;color:#fff;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:background .2s}.chat-close:hover{background:#ffffff4d}.chat-body{padding:1.25rem;max-height:300px;overflow-y:auto}.chat-welcome{display:flex;gap:.75rem}.chat-avatar{width:40px;height:40px;background:var(--luxury-cream);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.chat-message{background:var(--luxury-cream);padding:.75rem 1rem;border-radius:0 var(--radius-md) var(--radius-md) var(--radius-md);flex:1}.chat-message p{margin:0;font-size:.875rem;color:var(--luxury-navy);line-height:1.5}.chat-message p:first-child{margin-bottom:.25rem}.chat-quick-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.chat-quick-actions button{background:#fff;border:1px solid var(--champagne-gold);color:var(--luxury-navy);padding:.5rem .75rem;border-radius:var(--radius-sm);font-size:.8125rem;cursor:pointer;transition:all .2s ease}.chat-quick-actions button:hover{background:var(--champagne-gold);color:var(--luxury-navy)}.chat-footer{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--neutral-200)}.chat-input{flex:1;padding:.75rem;border:1px solid var(--neutral-300);border-radius:var(--radius-sm);font-size:.875rem;outline:none;transition:border-color .2s}.chat-input:focus{border-color:var(--champagne-gold)}.chat-send{padding:.75rem 1.25rem;background:var(--champagne-gold);color:var(--luxury-navy);border:none;border-radius:var(--radius-sm);font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease}.chat-send:hover:not(:disabled){background:var(--champagne-dark)}.chat-send:disabled{opacity:.5;cursor:not-allowed}@media(max-width:480px){.chat-widget{bottom:5rem;right:.5rem;left:.5rem;width:auto}.chat-fab{bottom:1rem;right:1rem;width:52px;height:52px}}:root{--luxury-navy: #1a2332;--luxury-navy-light: #2a3445;--luxury-charcoal: #2d3748;--luxury-champagne: #d4af37;--luxury-gold: #c5a033;--luxury-cream: #faf8f3;--primary-color: #1a2332;--primary-hover: #2a3445;--primary-dark: #1a2332;--accent-color: #d4af37;--neutral-50: #f8fafc;--neutral-100: #f1f5f9;--neutral-200: #e2e8f0;--neutral-300: #cbd5e1;--neutral-400: #a3a3a3;--neutral-500: #64748b;--neutral-600: #475569;--neutral-700: #334155;--neutral-800: #1e293b;--neutral-900: #0f172a;--success-color: #22c55e;--warning-color: #f59e0b;--error-color: #ef4444;--info-color: #3b82f6;--header-height: 72px;--spacing-xs: 8px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 32px;--spacing-xl: 48px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 2px 10px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 20px rgba(0, 0, 0, .12);--shadow-xl: 0 8px 30px rgba(0, 0, 0, .15);--font-heading: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Source Sans 3", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html,body,#root{font-family:var(--font-body);background:var(--luxury-cream);color:var(--luxury-charcoal);margin:0;padding:0}*,*:before,*:after{box-sizing:border-box}input,textarea,select,button{font-family:inherit}.booking-layout-wrapper{padding-top:calc(var(--header-height) + var(--spacing-md))}.booking-container{background:var(--luxury-cream);font-family:var(--font-body)}.booking-layout-wrapper .booking-container{min-height:100vh}.booking-content{width:100%;max-width:1400px;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) clamp(1rem,4vw,4rem)}.booking-card{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-sm);overflow:hidden}.booking-card-title{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-sm)}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-grid-2-gap-lg{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}@media(max-width:640px){.form-grid-2,.form-grid-2-gap-lg{grid-template-columns:1fr}}.form-field:last-child{margin-bottom:0}.form-section{margin-bottom:var(--spacing-md)}.form-label{display:block;font-size:.875rem;font-weight:500;color:var(--luxury-charcoal);margin-bottom:.5rem;font-family:var(--font-body)}.required-asterisk{color:#dc2626;font-weight:600;margin-left:2px}.form-input,.form-select,.form-textarea{width:100%;height:52px;padding:0 1rem;border:1px solid var(--neutral-300);border-radius:8px;font-size:.9375rem;font-family:var(--font-body);transition:border-color .2s ease,box-shadow .2s ease;background-color:#fff;color:var(--luxury-navy)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%231a2332' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem;cursor:pointer}.form-select option{padding:.75rem 1rem;color:var(--luxury-navy)}.form-textarea{height:auto;padding:.875rem 1rem;min-height:100px;resize:vertical}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--luxury-champagne);box-shadow:0 0 0 3px #d4af371a}.btn-primary{background:var(--luxury-champagne);color:var(--luxury-navy);border:none;border-radius:var(--radius-sm);padding:1rem 2rem;font-size:1rem;font-weight:600;font-family:var(--font-heading);cursor:pointer;transition:all .2s ease}.btn-primary:hover{background:var(--luxury-gold);box-shadow:0 8px 16px #d4af374d;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:transparent;color:var(--luxury-navy);border:1px solid var(--neutral-300);border-radius:var(--radius-sm);padding:.875rem 1.75rem;font-size:1rem;font-weight:500;font-family:var(--font-heading);cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:var(--neutral-50);border-color:var(--neutral-400)}.summary-card{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--spacing-md);overflow:hidden}.summary-item{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:14px}.summary-item-label{color:var(--neutral-600)}.summary-item-value{font-weight:600;color:var(--neutral-900)}.summary-divider{border:none;border-top:1px solid var(--neutral-200);margin:var(--spacing-sm) 0}.summary-total{display:flex;justify-content:space-between;font-size:20px;font-weight:700;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:2px solid var(--neutral-200)}.summary-total-value{color:var(--luxury-navy)}.callout-banner{padding:var(--spacing-sm);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);display:flex;align-items:flex-start;gap:12px}.callout-info{background:#d4af3714;border-left:4px solid var(--luxury-champagne);color:var(--luxury-navy)}.callout-success{background:#f0fdf4;border-left:4px solid var(--success-color);color:#166534}.callout-warning{background:#fffbeb;border-left:4px solid var(--warning-color);color:#92400e}.support-ribbon{background:var(--primary-dark);color:#fff;padding:12px 20px;text-align:center;font-size:14px;box-shadow:var(--shadow-sm)}.support-ribbon a{color:var(--accent-color);text-decoration:none;font-weight:600;margin-left:8px}.support-ribbon a:hover{text-decoration:underline}.booking-stepper{background:#fff;padding:16px 20px;border-bottom:1px solid var(--neutral-200);margin-bottom:16px}.booking-stepper-container{max-width:900px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;position:relative}.stepper-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative;z-index:1}.stepper-circle{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:20px;font-weight:600;transition:all .3s ease}.stepper-circle-completed{background:var(--luxury-navy);color:#fff;border:3px solid var(--luxury-navy)}.stepper-circle-current{background:var(--luxury-champagne);color:var(--luxury-navy);border:3px solid var(--luxury-champagne);box-shadow:0 4px 12px #d4af374d}.stepper-circle-upcoming{background:var(--neutral-100);color:var(--neutral-400);border:3px solid var(--neutral-200)}.stepper-label-container{text-align:center;max-width:150px}.stepper-label{font-size:14px;font-weight:500;margin-bottom:4px}.stepper-label-current{font-weight:600;color:var(--primary-dark)}.stepper-label-completed{color:var(--primary-color)}.stepper-label-upcoming{color:var(--neutral-400)}.stepper-description{font-size:12px;color:var(--neutral-500)}.stepper-connector{position:absolute;top:25px;left:calc(50% + 25px);right:calc(-50% + 25px);height:3px;z-index:-1;transition:all .3s ease}.stepper-connector-completed{background:var(--primary-color)}.stepper-connector-upcoming{background:var(--neutral-200)}.skeleton{background:linear-gradient(90deg,var(--neutral-200) 0%,var(--neutral-100) 50%,var(--neutral-200) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.vehicle-card{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-sm);border:2px solid transparent;transition:all .2s ease;cursor:pointer}.vehicle-card:hover{border-color:var(--luxury-champagne);box-shadow:var(--shadow-md);transform:translateY(-2px)}.vehicle-card-selected{border-color:var(--luxury-champagne);background:#d4af370d}.booking-grid{display:grid;grid-template-columns:1fr 380px;gap:clamp(1.5rem,3vw,2.5rem);width:100%;max-width:1500px;margin:0 auto}@media(max-width:1024px){.booking-grid{grid-template-columns:1fr}.summary-card{position:static}}@media(min-width:1280px){.booking-grid{max-width:1600px;grid-template-columns:1fr 420px}.booking-content{max-width:1600px}}@media(min-width:1536px){.booking-grid{max-width:1800px;grid-template-columns:1fr 480px}.booking-content{max-width:1800px}}.search-page-container{min-height:100vh;position:relative;display:flex;flex-direction:column}.search-hero{position:relative;min-height:75vh;background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center}.search-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#1a2332e6,#2d3748e6);z-index:1}.search-hero-content{position:relative;z-index:2;width:100%;max-width:1400px;padding:clamp(1.5rem,4vw,3rem)}.search-hero-title{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3.5rem);font-weight:300;color:#fff;text-align:center;margin:0 0 var(--spacing-xl) 0;letter-spacing:-.5px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.search-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;padding:clamp(1.5rem,4vw,3rem);max-width:1300px;margin:0 auto}.search-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.search-logo{display:flex;align-items:center;gap:12px;font-family:var(--font-heading);font-size:24px;font-weight:600;color:var(--primary-dark)}.search-form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.search-time-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.search-datetime-section{display:grid;grid-template-columns:1fr 1fr 2fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.search-actions{display:flex;align-items:flex-end;gap:15px}.btn-add-return{padding:12px 30px;border:2px solid var(--primary-color);background:#fff;color:var(--primary-color);border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-family:var(--font-heading);transition:all .2s ease}.btn-add-return:hover{background:var(--neutral-50)}.search-submit{flex:1;padding:12px 40px;background:var(--luxury-champagne);color:var(--luxury-navy);border:none;border-radius:var(--radius-sm);font-size:16px;font-weight:700;font-family:var(--font-heading);cursor:pointer;transition:all .2s ease}.search-submit:hover{background:var(--luxury-gold);box-shadow:0 8px 16px #d4af374d;transform:translateY(-1px)}.search-submit:active{transform:translateY(0)}.return-section{background:var(--luxury-cream);padding:var(--spacing-md);border-radius:var(--radius-md);margin-top:var(--spacing-md);border:2px solid var(--luxury-champagne)}.return-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.return-section-title{margin:0;font-size:16px;color:var(--luxury-navy);font-weight:700;font-family:var(--font-heading)}.btn-remove{padding:6px 12px;background:transparent;color:var(--error-color);border:1px solid var(--error-color);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-family:var(--font-body);transition:all .2s ease}.btn-remove:hover{background:var(--error-color);color:#fff}@media(max-width:768px){.search-hero{min-height:auto;padding:var(--spacing-lg) 0}.search-hero-title{font-size:28px;margin-bottom:var(--spacing-md);padding:0 var(--spacing-sm)}.search-hero-content{padding:var(--spacing-sm)}.search-card{padding:var(--spacing-md)}.search-form-grid,.search-time-section,.search-datetime-section{grid-template-columns:1fr}.search-actions{flex-direction:column;align-items:stretch}.btn-add-return,.search-submit{width:100%}}.stepper-step-clickable{cursor:pointer;transition:transform .2s ease}.stepper-step-clickable:hover .stepper-circle-completed{box-shadow:0 4px 12px #1a23324d;transform:scale(1.05)}.stepper-step-disabled{cursor:not-allowed;opacity:.6}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:var(--radius-md);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid var(--neutral-200)}.modal-header h2{margin:0;font-family:var(--font-heading);font-size:24px;font-weight:600;color:var(--primary-dark)}.modal-close{background:none;border:none;font-size:32px;color:var(--neutral-400);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s ease;line-height:1}.modal-close:hover{color:var(--neutral-700)}.modal-form{padding:24px}.modal-form>div{margin-bottom:16px}.page-wrapper{min-height:100vh;display:flex;flex-direction:column;background:var(--luxury-cream);font-family:var(--font-body);color:var(--luxury-charcoal)}.main-content{flex:1}.app-header{background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--neutral-200);position:sticky;top:0;z-index:100}.header-container{width:100%;max-width:1600px;margin:0 auto;padding:0 clamp(1rem,4vw,4rem);display:flex;justify-content:space-between;align-items:center;height:72px}.header-left{display:flex;align-items:center;gap:var(--spacing-xl)}.app-logo-btn{background:none;border:none;cursor:pointer;padding:0}.app-logo-text{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--luxury-navy);letter-spacing:-.02em}.header-nav{display:flex;gap:var(--spacing-md);align-items:center}.nav-link{background:none;border:none;color:var(--luxury-charcoal);font-size:.9375rem;font-weight:500;cursor:pointer;padding:8px 16px;border-radius:var(--radius-sm);transition:all .2s ease;font-family:var(--font-body)}.nav-link:hover{color:var(--luxury-champagne);background:var(--neutral-50)}.header-right{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-header-auth{background:transparent;color:var(--luxury-navy);border:1px solid var(--neutral-300);border-radius:var(--radius-sm);padding:.625rem 1.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:var(--font-heading);white-space:nowrap;min-width:90px;flex-shrink:0}.btn-header-auth:hover{background:var(--neutral-50);border-color:var(--neutral-400)}.user-menu-wrapper{position:relative}.user-menu-btn{background:var(--neutral-100);border:1px solid var(--neutral-300);border-radius:var(--radius-sm);padding:10px 20px;font-size:15px;font-weight:500;color:var(--neutral-900);cursor:pointer;transition:all .2s ease;font-family:var(--font-body)}.user-menu-btn:hover{background:var(--neutral-200);border-color:var(--neutral-400)}.user-menu-btn-icon{padding:10px;display:flex;align-items:center;justify-content:center;color:var(--neutral-700)}.user-menu-btn-icon:hover{background:var(--neutral-200);color:var(--primary-color)}.user-menu-btn-icon svg{display:block}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:220px;z-index:200;overflow:hidden;border:1px solid var(--neutral-200)}.user-dropdown-item{width:100%;background:none;border:none;padding:14px 20px;text-align:left;cursor:pointer;font-size:15px;color:var(--neutral-800);transition:all .15s ease;border-bottom:1px solid var(--neutral-100);font-family:var(--font-body)}.user-dropdown-item:last-child{border-bottom:none}.user-dropdown-item:hover{background:var(--neutral-50);color:var(--primary-color)}.hero-section{position:relative;background-image:url(/hero-mercedes.png);background-size:cover;background-position:center;background-repeat:no-repeat;color:#fff;padding:clamp(4rem,10vw,8rem) clamp(1rem,4vw,4rem);text-align:center;overflow:hidden;width:100%;display:flex;align-items:center;justify-content:center;min-height:320px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#1a2332b3,#2d374899);display:flex;align-items:center;justify-content:center}.hero-content{position:relative;text-align:center;color:#fff;max-width:1000px;padding:0 var(--spacing-md);display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-title{font-family:var(--font-heading);font-size:clamp(2.5rem,6vw,4rem);font-weight:600;margin:0 0 1.5rem;letter-spacing:-.03em;line-height:1.1}.hero-subtitle{font-size:clamp(1.125rem,2vw,1.25rem);font-weight:300;line-height:1.7;color:#ffffffe6;max-width:600px;margin:0 auto}.booking-section{padding:clamp(2rem,5vw,4rem) clamp(1rem,4vw,4rem);background:var(--luxury-cream);width:100%}.booking-container{width:100%;max-width:1400px;margin:0 auto}.booking-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:clamp(1.5rem,4vw,3rem);margin-bottom:var(--spacing-xl);margin-top:-80px;position:relative;z-index:10;border:1px solid var(--neutral-200)}.booking-title{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,2rem);font-weight:600;color:var(--luxury-navy);margin:0 0 var(--spacing-xs);letter-spacing:-.02em}.booking-description{font-size:1rem;color:var(--neutral-600);margin:0 0 var(--spacing-lg);font-weight:300}.booking-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column}.booking-form--search .form-row{display:grid;grid-template-columns:1fr 1fr 140px;gap:var(--spacing-md);align-items:end}.booking-form--search .form-row-date-return{grid-template-columns:200px 1fr;align-items:center}.form-group-checkbox{display:flex;align-items:center;padding-top:1.5rem}.checkbox-container-inline{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.form-checkbox-modern{appearance:none;width:22px;height:22px;border:2px solid var(--neutral-300);border-radius:6px;background:#fff;cursor:pointer;transition:all .2s ease;position:relative;flex-shrink:0}.form-checkbox-modern:checked{background:var(--luxury-champagne);border-color:var(--luxury-champagne)}.form-checkbox-modern:checked:after{content:"";position:absolute;left:6px;top:2px;width:6px;height:12px;border:solid var(--luxury-navy);border-width:0 2px 2px 0;transform:rotate(45deg)}.form-checkbox-modern:hover{border-color:var(--luxury-champagne)}.checkbox-label-inline{font-size:.9375rem;color:var(--luxury-navy);font-weight:500}.form-input-date{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231a2332' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:18px;padding-right:2.5rem;cursor:pointer}.form-input-date::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;position:absolute;right:0;top:0;width:100%;height:100%}@media(max-width:768px){.booking-form--search .form-row{grid-template-columns:1fr}.booking-form--search .form-row-date-return{grid-template-columns:1fr;gap:var(--spacing-sm)}.form-group-checkbox{padding-top:0}}.form-checkbox-wrapper{padding:var(--spacing-sm) 0}.checkbox-container{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.form-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-color)}.checkbox-label{font-size:15px;color:var(--neutral-700);font-weight:500}.return-trip-section{background:var(--neutral-50);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-sm)}.return-trip-title{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--neutral-800);margin:0 0 var(--spacing-md)}.dates-row{display:flex;align-items:flex-end;gap:var(--spacing-md);flex-wrap:wrap}.dates-row .form-group{flex:0 0 auto;min-width:180px}.dates-row .return-checkbox-group{flex:1;min-width:auto;display:flex;align-items:center;padding-bottom:10px}.dates-row .return-date-field{animation:fadeSlideIn .25s ease-out forwards}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.dates-row .return-date-field{animation:none}}@media(max-width:768px){.dates-row{flex-direction:column;align-items:stretch}.dates-row .form-group{min-width:100%}.dates-row .return-checkbox-group{padding-bottom:0;padding-top:var(--spacing-xs)}}.booking-page-layout{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 350px;gap:30px}@media(max-width:1024px){.booking-page-layout{grid-template-columns:1fr;gap:20px}}.form-field{margin-bottom:var(--spacing-md)}.form-row-inline{display:grid;grid-template-columns:120px 1fr;gap:var(--spacing-md);align-items:end}.form-group-title{min-width:120px}.form-row-inline.phone-row{grid-template-columns:140px 1fr}.form-group-country-code{min-width:140px}.form-group-flex{flex:1}@media(max-width:576px){.form-row-inline{grid-template-columns:1fr}.form-group-title,.form-group-country-code{min-width:100%}}.terms-checkbox-container{padding:var(--spacing-md);background:var(--neutral-100);border-radius:var(--radius-md);margin-top:var(--spacing-md)}.terms-label{align-items:flex-start!important}.terms-text{font-size:14px;line-height:1.6}.terms-link{color:var(--luxury-champagne);text-decoration:underline}.terms-link:hover{color:var(--luxury-gold)}.btn-full-width{width:100%;margin-top:var(--spacing-lg)}.fare-breakdown-card{margin-top:var(--spacing-md)}.fare-breakdown-title{font-size:16px}.fare-breakdown-compact{font-size:14px}.fare-breakdown-compact .fare-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--neutral-200)}.fare-breakdown-compact .fare-row:last-child{border-bottom:none}.fare-breakdown-compact .fare-label{color:var(--neutral-700);font-weight:500}.fare-breakdown-compact .fare-value{font-weight:600;color:var(--luxury-navy)}.fare-breakdown-compact .fare-note{font-size:12px;color:var(--neutral-500);padding:2px 0 8px;border-bottom:1px solid var(--neutral-200)}.fare-breakdown-compact .fare-total{background:var(--neutral-100);margin:12px -16px -16px;padding:16px!important;border-radius:0 0 var(--radius-md) var(--radius-md);border-bottom:none}.fare-breakdown-compact .fare-total .fare-label{font-size:16px;font-weight:600;color:var(--luxury-navy)}.fare-breakdown-compact .fare-total .fare-value{font-size:18px;font-weight:700;color:var(--luxury-champagne)}.fare-breakdown-full{font-size:14px}.fare-trip-section{background:var(--neutral-100);border-radius:var(--radius-md);padding:16px;margin-bottom:16px}.fare-trip-header{font-family:var(--font-heading);font-weight:600;font-size:15px;color:var(--luxury-navy);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--neutral-300)}.fare-breakdown-full .fare-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;color:var(--neutral-700)}.fare-breakdown-full .fare-row .fare-value{font-weight:600;color:var(--luxury-navy)}.fare-surcharge{color:var(--luxury-champagne)!important}.fare-trip-total{margin-top:8px;padding-top:12px!important;border-top:1px solid var(--neutral-300);font-weight:600;color:var(--luxury-navy)!important}.fare-grand-total{display:flex;justify-content:space-between;align-items:center;background:var(--luxury-navy);color:#fff;padding:16px;border-radius:var(--radius-md);font-size:18px;font-weight:700}.fare-grand-total span:last-child{color:var(--luxury-champagne)}.fare-inclusions{font-size:12px;color:var(--neutral-500);margin-top:12px;font-style:italic;line-height:1.5}.payment-element-container{background:#fff;border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:20px;margin-top:16px}.payment-security-info{display:flex;align-items:center;gap:8px;margin-top:16px;padding:12px 16px;background:var(--neutral-100);border-radius:var(--radius-md);font-size:13px;color:var(--neutral-600)}.payment-security-info svg{flex-shrink:0;color:var(--luxury-champagne)}.payment-loading-state{display:flex;justify-content:center;align-items:center;min-height:300px}.payment-loading-text{font-size:16px;color:var(--neutral-600)}.payment-error-container{max-width:500px;margin:0 auto;padding:40px 20px}.express-checkout-container{margin-bottom:16px;min-height:44px}.payment-divider{display:flex;align-items:center;text-align:center;margin:20px 0}.payment-divider:before,.payment-divider:after{content:"";flex:1;border-bottom:1px solid var(--neutral-300)}.payment-divider span{padding:0 16px;color:var(--neutral-500);font-size:14px;text-transform:uppercase;letter-spacing:.5px}.promo-input-container{margin-top:20px;padding:16px;background:var(--neutral-100);border-radius:var(--radius-md)}.promo-input-row{display:flex;gap:12px;margin-top:8px}.promo-input{flex:1;text-transform:uppercase}.promo-apply-btn{flex-shrink:0;padding:12px 20px}.promo-error{color:var(--color-error);font-size:13px;margin-top:8px}.promo-applied{margin-top:20px;padding:16px;background:#d4af371a;border:1px solid var(--luxury-champagne);border-radius:var(--radius-md)}.promo-applied-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.promo-applied-info{display:flex;flex-direction:column;gap:4px}.promo-applied-label{font-size:12px;color:var(--neutral-600);text-transform:uppercase;letter-spacing:.5px}.promo-applied-code{font-weight:700;color:var(--luxury-navy);font-size:16px}.promo-applied-discount{font-size:18px;font-weight:700;color:var(--color-success)}.promo-remove-btn{background:none;border:none;color:var(--color-error);font-size:13px;cursor:pointer;text-decoration:underline;padding:0}.promo-remove-btn:hover{color:var(--luxury-navy)}.loyalty-section{margin-top:20px;padding:16px;background:var(--neutral-100);border-radius:var(--radius-md)}.loyalty-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.loyalty-title{font-weight:600;color:var(--luxury-navy);font-size:15px}.loyalty-balance{font-weight:700;color:var(--luxury-champagne)}.loyalty-info{font-size:13px;color:var(--neutral-600);margin-bottom:12px}.loyalty-slider{width:100%;margin:16px 0}.loyalty-redemption-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#fff;border-radius:var(--radius-sm);border:1px solid var(--neutral-200)}.loyalty-points-input{width:100px;text-align:center}.loyalty-value{font-weight:600;color:var(--color-success)}.loyalty-earn-preview{margin-top:16px;padding:12px;background:#d4af371a;border-radius:var(--radius-sm);text-align:center}.loyalty-earn-text{font-size:14px;color:var(--luxury-navy)}.loyalty-earn-points{font-weight:700;color:var(--luxury-champagne)}.btn-search{background:var(--luxury-champagne);color:var(--luxury-navy);border:none;border-radius:var(--radius-sm);padding:1rem 2.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:var(--font-heading);width:100%;margin-top:var(--spacing-sm)}.btn-search:hover{background:var(--luxury-gold);transform:translateY(-1px);box-shadow:0 8px 16px #d4af374d}.btn-search:active{transform:translateY(0)}.btn-search:disabled{background:var(--neutral-300);color:var(--neutral-600);cursor:not-allowed;transform:none}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:4rem}.feature-card{background:#fff;border-radius:var(--radius-md);padding:2rem;box-shadow:none;transition:all .3s ease;border:1px solid var(--neutral-200)}.feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #1a233214;border-color:var(--neutral-300)}.feature-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--luxury-navy);margin:0 0 1rem;letter-spacing:-.01em}.feature-text{font-size:.9375rem;color:var(--neutral-600);margin:0;line-height:1.7;font-weight:300}.app-footer{background:var(--neutral-900);color:#fffc;padding:clamp(2rem,5vw,4rem) clamp(1rem,4vw,4rem) 2rem;margin-top:auto;width:100%}.footer-container{width:100%;max-width:1600px;margin:0 auto}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(2rem,4vw,4rem);margin-bottom:3rem}.footer-section{display:flex;flex-direction:column}.footer-heading{font-family:var(--font-heading);font-size:20px;font-weight:700;margin:0 0 var(--spacing-sm);color:#fff}.footer-title{font-family:var(--font-heading);font-size:1rem;font-weight:600;margin:0 0 1rem;color:#fff;letter-spacing:-.01em}.footer-text{font-size:.9375rem;line-height:1.7;margin:.5rem 0;color:#ffffffb3;font-weight:300}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.footer-link{background:none;border:none;color:#fffc;font-size:14px;cursor:pointer;padding:0;text-align:left;transition:color .2s ease;font-family:var(--font-body)}.footer-link:hover{color:var(--luxury-champagne)}.footer-contact{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.footer-contact-item{display:flex;flex-direction:column;gap:4px;font-size:14px}.contact-label{font-weight:600;color:#fff;font-family:var(--font-body)}.contact-value{color:#fffc;font-family:var(--font-body)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;text-align:center}.footer-copyright{font-size:.875rem;color:#ffffff80;margin:0}@media(max-width:1024px){.header-nav{gap:var(--spacing-sm)}.nav-link{padding:6px 10px;font-size:.875rem}.header-container{padding:0 1rem}}@media(max-width:768px){.header-nav{display:none}.header-container{padding:0 1rem}.app-logo-text{font-size:1rem}.btn-header-auth{padding:.5rem 1rem;font-size:.875rem;min-width:75px}.hero-title{font-size:36px}.hero-subtitle{font-size:16px}.booking-card{padding:var(--spacing-md);margin-top:-60px}.booking-title{font-size:24px}.form-row,.features-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:var(--spacing-md)}}@media(min-width:1280px){.header-container{max-width:1600px;padding:0 3rem}.booking-container{max-width:1500px}.booking-card{padding:3rem}.features-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem}.footer-container{max-width:1600px}.footer-grid{grid-template-columns:repeat(4,1fr)}.search-hero-content{max-width:1500px}.search-card{max-width:1400px;padding:3rem}}@media(min-width:1536px){.header-container{max-width:1800px;padding:0 4rem}.booking-container{max-width:1700px}.booking-card{padding:3.5rem}.features-grid{gap:3rem}.footer-container{max-width:1800px}.search-hero-content{max-width:1700px}.search-card{max-width:1500px;padding:3.5rem}.search-form-grid{gap:2rem}}.content-section{padding:clamp(2rem,5vw,4rem) clamp(1rem,4vw,4rem);background:var(--neutral-50);min-height:calc(100vh - 72px);width:100%}.content-container{width:100%;max-width:1400px;margin:0 auto}.content-narrow{max-width:900px}.page-title{font-family:var(--font-heading);font-size:42px;font-weight:700;color:var(--primary-dark);margin:0 0 var(--spacing-sm);line-height:1.2}.page-subtitle{font-size:18px;color:var(--neutral-600);margin:0 0 var(--spacing-xl);line-height:1.6}.section-title{font-family:var(--font-heading);font-size:24px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-md)}.content-grid{display:grid;grid-template-columns:1fr 320px;gap:var(--spacing-xl);margin-top:var(--spacing-xl)}.content-main{min-width:0}.content-sidebar{display:flex;flex-direction:column;gap:var(--spacing-md)}.content-block{margin-bottom:var(--spacing-xl)}.content-heading{font-family:var(--font-heading);font-size:28px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-md)}.content-text{font-size:16px;line-height:1.7;color:var(--neutral-700);margin:0 0 var(--spacing-md)}.content-text:last-child{margin-bottom:0}.content-list{list-style:disc;padding-left:24px;margin:var(--spacing-md) 0}.content-list li{font-size:16px;line-height:1.7;color:var(--neutral-700);margin-bottom:8px}.info-card{background:#fff;border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm);border:1px solid var(--neutral-200)}.info-card-title{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--neutral-200)}.info-item{display:flex;flex-direction:column;gap:4px;padding:12px 0;border-bottom:1px solid var(--neutral-100)}.info-item:last-child{border-bottom:none}.info-label{font-size:13px;font-weight:600;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-body)}.info-value{font-size:15px;color:var(--neutral-800);font-weight:500}.area-list{list-style:none;padding:0;margin:0}.area-list li{padding:10px 0;border-bottom:1px solid var(--neutral-100);color:var(--neutral-700);font-size:15px}.area-list li:last-child{border-bottom:none}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-xl)}.service-card-large{background:#fff;border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--neutral-200);transition:all .3s ease}.service-card-large:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--primary-color)}.service-title{font-family:var(--font-heading);font-size:22px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-sm)}.service-description{font-size:15px;line-height:1.6;color:var(--neutral-600);margin:0 0 var(--spacing-md)}.service-features{list-style:none;padding:0;margin:0}.service-features li{padding:8px 0 8px 24px;position:relative;font-size:14px;color:var(--neutral-700);line-height:1.5}.service-features li:before{content:"✓";position:absolute;left:0;color:var(--success-color);font-weight:700}.cta-section{background:linear-gradient(135deg,var(--luxury-navy) 0%,var(--luxury-charcoal) 100%);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;margin-top:var(--spacing-xl);color:#fff}.cta-title{font-family:var(--font-heading);font-size:32px;font-weight:700;margin:0 0 var(--spacing-sm);color:#fff}.cta-text{font-size:18px;margin:0 0 var(--spacing-md);opacity:.95}.btn-large{padding:16px 40px;font-size:18px}.contact-layout{display:grid;grid-template-columns:1fr 400px;gap:var(--spacing-xl);margin-top:var(--spacing-xl)}.contact-form-wrapper{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md)}.contact-form,.contact-info-wrapper{display:flex;flex-direction:column;gap:var(--spacing-md)}.contact-detail{margin-bottom:var(--spacing-md)}.contact-detail:last-child{margin-bottom:0}.contact-detail-label{font-size:14px;font-weight:600;color:var(--neutral-600);margin:0 0 6px}.contact-detail-value{font-size:16px;color:var(--primary-color);text-decoration:none;display:block}.contact-detail-value:hover{text-decoration:underline}.hours-list{margin-top:var(--spacing-sm)}.hours-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--neutral-100)}.hours-item:last-child{border-bottom:none}.hours-day{font-weight:500;color:var(--neutral-700)}.hours-time{color:var(--neutral-600)}.small-text{font-size:14px;color:var(--neutral-600);margin-top:var(--spacing-sm)}.faq-content{margin-top:var(--spacing-xl)}.faq-category{margin-bottom:var(--spacing-xl)}.faq-category-title{font-family:var(--font-heading);font-size:28px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--primary-color)}.faq-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.faq-item{background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--neutral-200)}.faq-question{width:100%;background:none;border:none;padding:var(--spacing-md);text-align:left;cursor:pointer;font-size:16px;font-weight:600;color:var(--neutral-800);display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;font-family:var(--font-body)}.faq-question:hover{background:var(--neutral-50)}.faq-question.active{color:var(--primary-color);background:var(--neutral-50)}.faq-toggle{font-size:24px;font-weight:300;color:var(--primary-color);margin-left:var(--spacing-md)}.faq-answer{padding:0 var(--spacing-md) var(--spacing-md);font-size:15px;line-height:1.7;color:var(--neutral-700);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.faq-footer{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;margin-top:var(--spacing-xl);box-shadow:var(--shadow-md)}.faq-footer-title{font-family:var(--font-heading);font-size:24px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-sm)}.faq-footer-text{font-size:16px;color:var(--neutral-600);margin:0 0 var(--spacing-md)}.loading-state{text-align:center;padding:var(--spacing-xl);font-size:18px;color:var(--neutral-500)}.legal-content{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);margin-top:var(--spacing-xl)}.legal-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--neutral-200)}.legal-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.legal-heading{font-family:var(--font-heading);font-size:26px;font-weight:600;color:var(--primary-dark);margin:0 0 var(--spacing-md)}.legal-subheading{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--neutral-800);margin:var(--spacing-md) 0 var(--spacing-sm)}.legal-text{font-size:15px;line-height:1.7;color:var(--neutral-700);margin:0 0 var(--spacing-sm)}.legal-list{list-style:disc;padding-left:24px;margin:var(--spacing-sm) 0 var(--spacing-md)}.legal-list li{font-size:15px;line-height:1.7;color:var(--neutral-700);margin-bottom:8px}@media(max-width:992px){.content-grid,.contact-layout,.services-grid{grid-template-columns:1fr}}@media(max-width:768px){.page-title{font-size:32px}.page-subtitle{font-size:16px}.content-heading{font-size:24px}.service-card-large,.contact-form-wrapper,.legal-content,.cta-section{padding:var(--spacing-md)}.cta-title{font-size:24px}.cta-text{font-size:16px}}.profile-layout{min-height:100vh;background:var(--neutral-100)}.profile-header{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);padding:24px 20px;color:#fff}.profile-header-content{max-width:1200px;margin:0 auto}.profile-header-info{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.profile-header-title{margin:0 0 8px;font-size:28px;font-family:var(--font-heading);font-weight:700}.profile-header-subtitle{margin:0;opacity:.9;font-family:var(--font-body)}.profile-home-link{color:#fff;text-decoration:none;padding:10px 20px;background:#fff3;border-radius:6px;border:1px solid rgba(255,255,255,.3);font-family:var(--font-body);transition:all .2s}.profile-home-link:hover{background:#ffffff4d}.profile-nav{background:#fff;border-bottom:1px solid var(--neutral-200);overflow-x:auto;position:sticky;top:0;z-index:10}.profile-nav-scroll{display:flex;gap:4px;padding:8px 20px;min-width:max-content;max-width:1200px;margin:0 auto}.profile-content-wrapper{max-width:1200px;margin:0 auto;padding:24px 20px}.profile-tab,.profile-tab-active{padding:12px 20px;text-decoration:none;border-radius:8px;font-size:14px;font-weight:500;white-space:nowrap;transition:all .2s;display:inline-block;font-family:var(--font-body)}.profile-tab{background:transparent;color:var(--neutral-700)}.profile-tab:hover{background:var(--neutral-100);color:var(--neutral-900)}.profile-tab-active{background:var(--primary-color);color:#fff;font-weight:600}.profile-page{max-width:100%}.profile-section-title{margin:0 0 24px;font-size:28px;font-family:var(--font-heading);font-weight:700;color:var(--neutral-900)}.profile-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px}.profile-stat-card{background:#fff;padding:28px 24px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:12px;transition:all .2s ease;border:1px solid transparent}.profile-stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.profile-stat-label{font-size:14px;font-weight:500;color:var(--neutral-600);text-transform:uppercase;letter-spacing:.5px}.profile-stat-value{font-size:36px;font-weight:700;color:var(--primary-color);font-family:var(--font-heading)}.profile-card{background:#fff;padding:28px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);margin-bottom:24px}.profile-card-title{margin:0 0 20px;font-size:20px;font-family:var(--font-heading);font-weight:600;color:var(--neutral-900)}.profile-info-list{display:grid;gap:0}.profile-info-item{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--neutral-200)}.profile-info-item-last{border-bottom:none}.profile-info-label{color:var(--neutral-600);font-size:15px;font-weight:500}.profile-info-value{font-weight:600;color:var(--neutral-900);font-size:15px;text-align:right}.profile-actions-grid{margin-top:24px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.profile-action-primary,.profile-action-secondary{padding:18px 24px;border-radius:var(--radius-md);text-decoration:none;font-weight:600;text-align:center;font-size:16px;transition:all .2s ease;display:inline-block}.profile-action-primary{background:var(--primary-color);color:#fff}.profile-action-primary:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.profile-action-secondary{background:#fff;color:var(--primary-color);border:2px solid var(--primary-color)}.profile-action-secondary:hover{background:var(--neutral-50);transform:translateY(-2px);box-shadow:var(--shadow-md)}.profile-form{display:flex;flex-direction:column;gap:20px}.profile-form-group{display:flex;flex-direction:column;gap:8px}.profile-form-label{font-size:14px;font-weight:600;color:var(--neutral-700)}.profile-form-input,.profile-form-textarea,.profile-form-select{padding:12px 16px;border:1px solid var(--neutral-300);border-radius:var(--radius-sm);font-size:15px;font-family:var(--font-body);transition:all .2s;background:#fff}.profile-form-input:focus,.profile-form-textarea:focus,.profile-form-select:focus{outline:none;border-color:var(--luxury-champagne);box-shadow:0 0 0 3px #d4af371a}.profile-form-textarea{resize:vertical;min-height:100px}.profile-form-hint{font-size:13px;color:var(--neutral-500);font-style:italic}.profile-btn-primary,.profile-btn-secondary,.profile-btn-danger{padding:12px 24px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-family:var(--font-body)}.profile-btn-primary{background:var(--luxury-champagne);color:var(--luxury-navy)}.profile-btn-primary:hover:not(:disabled){background:var(--luxury-gold);transform:translateY(-1px)}.profile-btn-primary:disabled{opacity:.5;cursor:not-allowed}.profile-btn-secondary{background:var(--neutral-200);color:var(--neutral-700)}.profile-btn-secondary:hover:not(:disabled){background:var(--neutral-300)}.profile-btn-danger{background:var(--error-color);color:#fff}.profile-btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.profile-address-card{background:#fff;padding:20px;border-radius:var(--radius-md);border:2px solid var(--neutral-200);display:flex;flex-direction:column;gap:12px;transition:all .2s;position:relative}.profile-address-card:hover{border-color:var(--luxury-champagne);box-shadow:var(--shadow-sm)}.profile-address-card-default{border-color:var(--luxury-champagne);background:#d4af370d}.profile-address-badge{position:absolute;top:12px;right:12px;background:var(--luxury-champagne);color:var(--luxury-navy);padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.profile-address-label{font-size:16px;font-weight:600;color:var(--neutral-900)}.profile-address-text{font-size:14px;color:var(--neutral-600);line-height:1.5}.profile-address-actions{display:flex;gap:12px;margin-top:8px}.profile-address-btn{padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid var(--neutral-300);background:#fff;color:var(--neutral-700)}.profile-address-btn:hover{background:var(--neutral-100);border-color:var(--neutral-400)}.profile-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--neutral-200)}.profile-tab-btn{padding:12px 24px;background:transparent;border:none;font-size:15px;font-weight:500;color:var(--neutral-600);cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;margin-bottom:-2px;font-family:var(--font-body)}.profile-tab-btn:hover{color:var(--neutral-900)}.profile-tab-btn-active{color:var(--primary-color);font-weight:600;border-bottom-color:var(--primary-color)}.profile-booking-card{background:#fff;padding:24px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:16px;margin-bottom:16px;border-left:4px solid var(--primary-color)}.profile-booking-header{display:flex;justify-content:space-between;align-items:flex-start}.profile-booking-id{font-size:12px;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.5px}.profile-booking-status{padding:6px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.profile-booking-status-confirmed{background:#22c55e1a;color:var(--success-color)}.profile-booking-route{display:flex;flex-direction:column;gap:8px}.profile-booking-location{font-size:16px;font-weight:600;color:var(--neutral-900)}.profile-booking-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:16px 0;border-top:1px solid var(--neutral-200)}.profile-booking-detail{display:flex;flex-direction:column;gap:4px}.profile-booking-detail-label{font-size:12px;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.5px}.profile-booking-detail-value{font-size:15px;font-weight:600;color:var(--neutral-900)}.profile-booking-actions{display:flex;gap:12px;flex-wrap:wrap}.profile-empty-state{background:#fff;padding:60px 40px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);text-align:center;color:var(--neutral-600);font-family:var(--font-body)}.profile-empty-state p{margin:0 0 20px;font-size:16px}.profile-payment-card{background:#fff;padding:20px;border-radius:var(--radius-md);border:2px solid var(--neutral-200);display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;transition:all .2s}.profile-payment-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-sm)}.profile-payment-info{display:flex;flex-direction:column;gap:6px}.profile-payment-brand{font-size:14px;font-weight:600;color:var(--neutral-900);text-transform:capitalize}.profile-payment-last4{font-size:14px;color:var(--neutral-600)}.profile-payment-expiry{font-size:13px;color:var(--neutral-500)}.profile-empty-state{text-align:center;padding:48px 24px;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.profile-empty-icon{font-size:48px;margin-bottom:16px;opacity:.3}.profile-empty-title{font-size:18px;font-weight:600;color:var(--neutral-700);margin-bottom:8px}.profile-empty-text{font-size:14px;color:var(--neutral-500);margin-bottom:24px}.profile-notification-item{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--neutral-200)}.profile-notification-item:last-child{border-bottom:none}.profile-notification-label{display:flex;flex-direction:column;gap:4px}.profile-notification-title{font-size:15px;font-weight:600;color:var(--neutral-900)}.profile-notification-desc{font-size:13px;color:var(--neutral-500)}.profile-toggle{position:relative;width:48px;height:24px;background:var(--neutral-300);border-radius:12px;cursor:pointer;transition:background .2s}.profile-toggle-active{background:var(--primary-color)}.profile-toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s}.profile-toggle-active:after{transform:translate(24px)}.profile-faq-item{background:#fff;border-radius:var(--radius-md);margin-bottom:12px;border:1px solid var(--neutral-200);overflow:hidden;transition:all .2s}.profile-faq-question{width:100%;padding:18px 20px;background:transparent;border:none;text-align:left;font-size:15px;font-weight:600;color:var(--neutral-900);cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-body)}.profile-faq-question:hover{background:var(--neutral-50)}.profile-faq-answer{padding:0 20px 18px;font-size:14px;color:var(--neutral-600);line-height:1.6}@media(max-width:768px){.profile-section-title{font-size:24px}.profile-stats-grid{grid-template-columns:repeat(2,1fr)}.profile-stat-value{font-size:28px}.profile-booking-details,.profile-actions-grid{grid-template-columns:1fr}.profile-info-item{flex-direction:column;align-items:flex-start;gap:4px}.profile-info-value{text-align:left}}.page-header{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);padding:20px;color:#fff}.page-header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.page-header-title{margin:0;font-size:24px;font-family:var(--font-heading);font-weight:600}.page-content{max-width:1200px;margin:40px auto;padding:0 20px}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;font-family:var(--font-heading)}.status-badge-pending{background:var(--warning-color);color:#fff}.status-badge-confirmed{background:var(--success-color);color:#fff}.status-badge-assigned{background:var(--info-color);color:#fff}.status-badge-in-progress{background:#9c27b0;color:#fff}.status-badge-completed{background:var(--neutral-500);color:#fff}.status-badge-cancelled{background:var(--error-color);color:#fff}.empty-state{text-align:center;padding:60px 20px}.empty-state-text{font-size:18px;color:var(--neutral-600);margin-bottom:20px;font-family:var(--font-body)}.confirmation-success{text-align:center;margin-bottom:40px}.confirmation-icon{width:80px;height:80px;margin:0 auto 20px;background:var(--success-color);border-radius:50%;display:flex;align-items:center;justify-content:center}.confirmation-title{font-size:32px;font-weight:700;color:var(--primary-dark);margin-bottom:12px;font-family:var(--font-heading)}.confirmation-subtitle{font-size:18px;color:var(--neutral-600);font-family:var(--font-body)}.confirmation-reference{font-size:32px;font-weight:700;letter-spacing:3px;font-family:var(--font-heading)}.detail-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--neutral-200)}.detail-label{color:var(--neutral-600);font-family:var(--font-body)}.detail-value{font-weight:600;color:var(--primary-dark);font-family:var(--font-body)}.price-summary{background:var(--neutral-100);padding:20px;border-radius:var(--radius-md);margin-bottom:32px}.price-total{display:flex;justify-content:space-between;margin-bottom:12px}.price-total-label{font-size:16px;color:var(--neutral-600);font-family:var(--font-body)}.price-total-amount{font-size:28px;font-weight:700;color:var(--success-color);font-family:var(--font-heading)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.info-grid-item{display:flex;flex-direction:column}.info-grid-label{font-size:12px;font-weight:600;color:var(--neutral-600);margin-bottom:4px;text-transform:uppercase;font-family:var(--font-heading)}.info-grid-value{font-size:14px;color:var(--primary-dark);font-family:var(--font-body)}.info-grid-value-large{font-size:18px;font-weight:600;color:var(--primary-color);font-family:var(--font-heading)}.driver-info-section{border-top:1px solid var(--neutral-200);padding-top:16px;margin-top:16px}.driver-info-title{font-size:14px;font-weight:600;color:var(--primary-dark);margin:0 0 8px;font-family:var(--font-heading)}.driver-info-text{font-size:14px;color:var(--neutral-600);margin:4px 0;font-family:var(--font-body)}.not-found-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;text-align:center;background:var(--neutral-100)}.not-found-code{font-size:72px;margin:0;color:var(--primary-color);font-family:var(--font-heading);font-weight:700}.not-found-title{font-size:24px;margin:20px 0;color:var(--primary-dark);font-family:var(--font-heading);font-weight:600}.not-found-text{font-size:16px;color:var(--neutral-600);margin-bottom:30px;font-family:var(--font-body)}@media(max-width:768px){.profile-header-title{font-size:24px}.profile-header-info{flex-direction:column;align-items:flex-start}.profile-home-link{width:100%;text-align:center}.profile-section-title{font-size:24px}.profile-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.profile-stat-card{padding:20px 16px}.profile-stat-value{font-size:28px}.profile-card{padding:20px}.profile-empty-state{padding:40px 20px}.profile-booking-details{grid-template-columns:1fr}.profile-content-wrapper{padding:20px 16px}.confirmation-title{font-size:28px}.confirmation-subtitle{font-size:16px}.info-grid{grid-template-columns:1fr}}.profile-message{margin-bottom:24px}.profile-bookings-grid,.profile-address-grid{display:grid;gap:16px}.profile-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--font-body)}.profile-btn-full-width{margin-top:20px;width:100%}.profile-address-btn-delete{color:var(--error-color);border-color:var(--error-color)}.profile-address-btn-delete:hover{background:#ef44441a}.profile-booking-price{color:var(--primary-color)!important}.profile-empty-title{font-size:18px;font-weight:600;color:var(--neutral-900);margin-bottom:8px;font-family:var(--font-heading)}.profile-empty-text{font-size:14px;color:var(--neutral-600);font-family:var(--font-body)}.profile-notification-list{display:grid;gap:16px}.profile-notification-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--neutral-50);border-radius:8px;cursor:pointer;transition:background .2s}.profile-notification-item:hover{background:var(--neutral-100)}.profile-notification-info{flex:1}.profile-notification-title{font-weight:600;margin-bottom:4px;font-family:var(--font-heading);color:var(--neutral-900)}.profile-notification-desc{font-size:14px;color:var(--neutral-600);font-family:var(--font-body)}.profile-notification-checkbox{width:20px;height:20px;cursor:pointer}.profile-danger-title{color:var(--error-color)}.profile-danger-text{color:var(--neutral-700);margin-bottom:16px;line-height:1.6;font-family:var(--font-body)}.profile-btn-danger-outlined{border:2px solid var(--error-color)}.page-wrapper-narrow{max-width:800px;margin:0 auto;padding:24px 20px;width:100%}@media(max-width:768px){.page-wrapper-narrow{padding:20px 16px}}.btn-primary,.btn-secondary,.profile-btn-primary,.profile-btn-secondary,.profile-tab,.profile-tab-active{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.confirmation-ref-label{font-size:14px;margin-bottom:8px;font-family:var(--font-body)}.confirmation-details-section{margin-bottom:32px}.confirmation-details-grid{display:grid;gap:16px}.confirmation-next-title{font-size:16px;font-weight:600;margin-bottom:12px;margin-top:0;font-family:var(--font-heading)}.confirmation-next-list{margin:0;padding-left:20px;line-height:1.8;font-family:var(--font-body)}.confirmation-actions{display:flex;gap:16px;justify-content:center;margin-top:32px;flex-wrap:wrap}.mybooking-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;flex-wrap:wrap;gap:12px}.mybooking-info{flex:1;min-width:200px}.mybooking-date{margin:0;color:var(--neutral-600);font-family:var(--font-body)}@media(max-width:768px){.confirmation-actions{flex-direction:column;width:100%}.confirmation-actions button{width:100%}.mybooking-header{flex-direction:column;gap:8px}}.mybookings-grid{display:grid;gap:20px}.payment-form{margin-top:30px}.payment-element-wrapper{margin-bottom:30px}.payment-secure-text{margin-top:20px;text-align:center;font-size:13px;color:var(--neutral-600);font-family:var(--font-body)}.payment-secure-text p{margin:4px 0}.payment-loading-state,.payment-error-state{text-align:center;padding:50px}.payment-loading-text{font-size:18px;margin-bottom:20px;font-family:var(--font-body)}.payment-error-container{max-width:600px;margin:0 auto;padding:50px}.payment-layout{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 350px;gap:30px}.payment-summary-card{margin-top:20px}.payment-summary-title{font-size:16px}.payment-status-text{font-size:14px;color:var(--neutral-600);font-family:var(--font-body)}@media(max-width:1024px){.payment-layout{grid-template-columns:1fr;gap:20px}}.mybookings-page-container{min-height:100vh;background:var(--neutral-100)}.mybookings-user-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.mybookings-user-email{font-size:14px;font-family:var(--font-body)}.mybookings-btn-new{padding:8px 16px;font-size:14px}.mybookings-btn-signout{background:#fff3;border-color:#ffffff80;padding:8px 16px;font-size:14px}@media(max-width:768px){.mybookings-user-actions{width:100%}.mybookings-btn-new,.mybookings-btn-signout{flex:1}}.btn-full-width{width:100%}.payment-error-btn{margin-top:20px}.search-results-container{max-width:1400px;margin:0 auto;padding:0 1rem}.search-results-grid{display:grid;grid-template-columns:340px 1fr;gap:2rem;align-items:start}.search-results-sidebar{position:sticky;top:1rem}.search-results-main{min-width:0}.vehicles-header{margin-bottom:1.5rem}.vehicles-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.vehicles-header h2{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;color:var(--luxury-navy);margin:0 0 .25rem}.vehicles-header p{font-size:.9375rem;color:var(--neutral-600);margin:0 0 1rem}.sort-controls{display:flex;align-items:center;gap:.5rem}.sort-controls label{font-size:.875rem;color:var(--neutral-600)}.sort-controls .form-select{width:auto;padding:.5rem 2rem .5rem .75rem;font-size:.875rem}.vehicles-list{display:flex;flex-direction:column;gap:1rem}.vehicle-card{background:#fff;border:2px solid var(--neutral-200);border-radius:var(--radius-md);padding:1.25rem;cursor:pointer;transition:all .2s ease}.vehicle-card:hover{border-color:var(--luxury-champagne);box-shadow:0 4px 12px #1a233214}.vehicle-card.selected{border-color:var(--luxury-champagne);background:linear-gradient(135deg,#d4af370d,#d4af3705);box-shadow:0 4px 16px #d4af3726}.vehicle-card-content{display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:start}.vehicle-info{min-width:0}.vehicle-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.vehicle-name{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--luxury-navy);margin:0}.vehicle-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600}.vehicle-badge.premium{background:var(--luxury-champagne);color:var(--luxury-navy)}.vehicle-features{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem}.vehicle-feature{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:var(--neutral-700)}.feature-icon{font-size:1rem}.vehicle-pricing{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.vehicle-price{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:var(--luxury-navy)}.vehicle-price-note{font-size:.75rem;color:var(--neutral-600)}.vehicle-select-indicator{margin-top:.5rem;padding:.375rem 1rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;transition:all .2s ease}.vehicle-card:not(.selected) .vehicle-select-indicator{background:var(--neutral-100);color:var(--neutral-600)}.vehicle-card.selected .vehicle-select-indicator{background:var(--luxury-champagne);color:var(--luxury-navy)}.continue-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--neutral-200);text-align:center}.btn-continue{padding:1rem 3rem;font-size:1.0625rem}.continue-note{margin-top:.75rem;font-size:.8125rem;color:var(--neutral-600)}.need-help-card{background:#fff;border-radius:var(--radius-md);padding:1.25rem;border:1px solid var(--neutral-200);margin-top:1.5rem}.need-help-card h4{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--luxury-navy);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--neutral-200)}.help-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--neutral-100)}.help-option:last-child{border-bottom:none}.help-option span:first-child{font-size:1.5rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background:var(--luxury-cream);border-radius:var(--radius-sm)}.help-option strong{display:block;font-size:.875rem;color:var(--luxury-navy);margin-bottom:.125rem}.help-option p{margin:0;font-size:.75rem;color:var(--neutral-600)}.loading-container{text-align:center;padding:4rem 2rem}.loading-spinner{width:48px;height:48px;border:4px solid var(--neutral-200);border-top-color:var(--luxury-champagne);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{font-size:1rem;color:var(--neutral-600)}@media(max-width:1024px){.search-results-grid{grid-template-columns:1fr}.search-results-sidebar{position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.search-results-sidebar>*:first-child{grid-column:1 / -1}}@media(max-width:768px){.search-results-sidebar{grid-template-columns:1fr}.vehicle-card-content{grid-template-columns:1fr;gap:1rem}.vehicle-pricing{align-items:flex-start;flex-direction:row;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--neutral-100)}.vehicle-select-indicator{margin-top:0}}.search-results-minimal{max-width:640px;margin:0 auto;padding:1.5rem 1rem}.journey-summary-card{background:#fff;border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #00000014}.journey-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.journey-header h2{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--luxury-navy);margin:0}.edit-link{background:none;border:none;color:var(--luxury-champagne);font-size:.875rem;font-weight:500;cursor:pointer;padding:.25rem .5rem}.edit-link:hover{text-decoration:underline}.journey-route{position:relative;padding-left:1.5rem}.route-point{display:flex;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.route-point:last-child{margin-bottom:0}.route-marker{position:absolute;left:0;width:12px;height:12px;border-radius:50%}.route-marker.pickup{background:var(--luxury-champagne)}.route-marker.dropoff{background:var(--luxury-navy)}.route-details{display:flex;flex-direction:column;gap:.125rem}.route-details .route-label{font-size:.75rem;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.05em}.route-details .route-location{font-size:1rem;font-weight:500;color:var(--luxury-navy)}.route-details .route-datetime{font-size:.875rem;color:var(--neutral-600)}.journey-route-redesign{display:flex;gap:1rem}.route-spine{display:flex;flex-direction:column;align-items:center;width:12px;flex-shrink:0}.spine-marker{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:2px solid #ffffff;box-shadow:0 1px 3px #00000026}.spine-marker.start{background:#d4af37}.spine-marker.end{background:#1a2332}.spine-line{flex:1;width:2px;background:linear-gradient(180deg,#d4af37,#1a2332);position:relative;min-height:60px}.spine-animated-dot{position:absolute;left:50%;transform:translate(-50%);width:8px;height:8px;background:#d4af37;border-radius:50%;border:2px solid #ffffff;box-shadow:0 1px 4px #00000040;animation:spineTravel 3s ease-in-out infinite}@keyframes spineTravel{0%{top:0;background:#d4af37}50%{background:#8a7a3a}to{top:calc(100% - 8px);background:#1a2332}}@keyframes spineTravelReturn{0%{top:0;background:#1a2332}50%{background:#8a7a3a}to{top:calc(100% - 8px);background:#d4af37}}.spine-animated-dot.reverse{animation:spineTravelReturn 3s ease-in-out infinite}.journey-leg-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.journey-leg-header .leg-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--luxury-champagne);background:var(--luxury-navy);padding:.25rem .75rem;border-radius:1rem}.journey-leg-header.return{margin-top:1.5rem;padding-top:1.5rem;border-top:1px dashed var(--neutral-300)}.journey-leg-header.return .leg-label{background:var(--luxury-champagne);color:var(--luxury-navy)}.return-journey .spine-marker.start{background:#1a2332}.return-journey .spine-marker.end{background:#d4af37}.return-journey .spine-line{background:linear-gradient(180deg,#1a2332,#d4af37)}.route-content{flex:1;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}.route-stop{display:flex;flex-direction:column;gap:2px}.route-stop .stop-label{font-size:.6875rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}.route-stop .stop-location{font-size:.9375rem;font-weight:600;color:#1a2332;line-height:1.3}.route-stop .stop-time{font-size:.8125rem;color:#64748b;margin-top:2px}.route-metrics{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.route-metrics .metric{font-size:.8125rem;font-weight:500;color:#d4af37}.route-metrics .metric-divider{color:#cbd5e1;font-weight:300}.journey-info-row{display:flex;gap:1.5rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--neutral-100);font-size:.875rem;color:var(--neutral-600)}.vehicle-selection-section{background:#fff;border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #00000014}.section-header{margin-bottom:1.25rem}.section-header h3{font-family:var(--font-heading);font-size:1.125rem;font-weight:600;color:var(--luxury-navy);margin:0 0 .25rem}.section-subtitle{font-size:.875rem;color:var(--neutral-600);margin:0}.vehicles-list-minimal{display:flex;flex-direction:column;gap:.75rem}.vehicle-card-minimal{position:relative;border:2px solid var(--neutral-200);border-radius:var(--radius-md);padding:1.25rem;cursor:pointer;transition:all .2s ease;background:#fff}.vehicle-card-minimal:hover{border-color:var(--neutral-300)}.vehicle-card-minimal.selected{border-color:var(--luxury-champagne);background:#fdfcf9}.vehicle-card-minimal.recommended{border-color:var(--luxury-champagne)}.recommended-badge{position:absolute;top:-10px;left:1rem;background:var(--luxury-champagne);color:#fff;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;border-radius:var(--radius-sm)}.vehicle-main-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.vehicle-name-section h4{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--luxury-navy);margin:0 0 .25rem}.vehicle-capacity{font-size:.8125rem;color:var(--neutral-600)}.vehicle-price-section{text-align:right}.price-amount{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--luxury-navy);display:block}.price-type{font-size:.75rem;color:var(--neutral-500)}.vehicle-features-minimal{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.8125rem;color:var(--neutral-600)}.selection-indicator{position:absolute;top:1rem;right:1rem}.show-more-btn{display:block;width:100%;margin-top:1rem;padding:.75rem;background:transparent;border:1px dashed var(--neutral-300);border-radius:var(--radius-md);color:var(--luxury-navy);font-size:.875rem;cursor:pointer;transition:all .2s ease}.show-more-btn:hover{border-color:var(--luxury-champagne);color:var(--luxury-champagne)}.whats-included-minimal{background:#fff;border-radius:var(--radius-md);padding:1.25rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #00000014}.whats-included-minimal h4{font-family:var(--font-heading);font-size:.9375rem;font-weight:600;color:var(--luxury-navy);margin:0 0 1rem}.included-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.included-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--neutral-700)}.booking-cta-section{background:#1a2332;border-radius:var(--radius-md);padding:1.5rem;text-align:center}.booking-cta-section .price-summary{display:flex;justify-content:center;align-items:baseline;gap:.5rem;margin-bottom:1rem;background:transparent;padding:0}.booking-cta-section .total-label{color:#ffffffb3;font-size:.875rem}.booking-cta-section .total-price{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:#fff}.btn-continue-minimal{width:100%;padding:1rem 2rem;font-size:1rem;font-weight:600;background:var(--luxury-champagne);color:var(--luxury-navy);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.btn-continue-minimal:hover{background:#c9a432;transform:translateY(-1px)}.btn-continue-minimal:disabled{opacity:.5;cursor:not-allowed;transform:none}.cta-note{margin:1rem 0 0;font-size:.8125rem;color:#fff9}@media(max-width:480px){.search-results-minimal{padding:1rem .75rem}.journey-summary-card,.vehicle-selection-section,.whats-included-minimal,.booking-cta-section{padding:1rem}.included-grid{grid-template-columns:1fr}.vehicle-features-minimal{flex-direction:column;gap:.375rem}}.loyalty-tease-section{background:linear-gradient(135deg,var(--luxury-navy) 0%,#2a3a4f 100%);padding:4rem 2rem;margin-top:0}.loyalty-tease-container{max-width:1000px;margin:0 auto}.loyalty-tease-content{display:flex;align-items:center;gap:2rem;background:#ffffff0d;border-radius:var(--radius-lg);padding:2.5rem;border:1px solid rgba(212,175,55,.2)}.loyalty-tease-icon{flex-shrink:0;width:80px;height:80px;background:linear-gradient(135deg,var(--luxury-champagne) 0%,#c9a432 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--luxury-navy)}.loyalty-tease-text{flex:1}.loyalty-tease-title{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;color:#fff;margin:0 0 .75rem}.loyalty-tease-description{font-size:1rem;color:#fffc;line-height:1.6;margin:0 0 1rem}.loyalty-tease-tiers{display:flex;gap:.5rem;flex-wrap:wrap}.tier-badge{padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tier-bronze{background:linear-gradient(135deg,#cd7f32,sienna);color:#fff}.tier-silver{background:linear-gradient(135deg,silver,#a8a8a8);color:#333}.tier-gold{background:linear-gradient(135deg,var(--luxury-champagne) 0%,#c9a432 100%);color:var(--luxury-navy)}.tier-platinum{background:linear-gradient(135deg,#e5e4e2,#8e8e8e);color:#1a1a2e}.btn-loyalty-signup{flex-shrink:0;padding:1rem 2rem;font-size:1rem;font-weight:600;background:var(--luxury-champagne);color:var(--luxury-navy);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-loyalty-signup:hover{background:#c9a432;transform:translateY(-2px);box-shadow:0 4px 12px #d4af374d}@media(max-width:768px){.loyalty-tease-section{padding:3rem 1rem}.loyalty-tease-content{flex-direction:column;text-align:center;padding:2rem 1.5rem}.loyalty-tease-tiers{justify-content:center}.btn-loyalty-signup{width:100%}}.mobile-menu-toggle{display:none;background:none;border:none;padding:10px;cursor:pointer;color:var(--luxury-navy);border-radius:var(--radius-sm);transition:background .2s ease;min-width:44px;min-height:44px;align-items:center;justify-content:center}.mobile-menu-toggle:hover{background:var(--neutral-100)}.header-nav-desktop{display:flex}.btn-header-auth-desktop{display:block}@media(max-width:768px){.mobile-menu-toggle{display:flex}.header-nav-desktop,.btn-header-auth-desktop{display:none}}.mobile-menu-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu{position:fixed;top:0;right:0;width:85%;max-width:320px;height:100%;background:#fff;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;animation:slideIn .25s ease;z-index:1001}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--neutral-200);background:var(--luxury-cream)}.mobile-menu-title{font-family:var(--font-heading);font-size:1.125rem;font-weight:600;color:var(--luxury-navy)}.mobile-menu-close{background:none;border:none;padding:10px;cursor:pointer;color:var(--neutral-600);border-radius:var(--radius-sm);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.mobile-menu-close:hover{background:var(--neutral-100);color:var(--luxury-navy)}.mobile-menu-links{flex:1;padding:1rem 0;overflow-y:auto}.mobile-nav-link{display:block;width:100%;padding:1rem 1.5rem;background:none;border:none;text-align:left;font-size:1rem;font-weight:500;color:var(--luxury-navy);cursor:pointer;transition:all .15s ease;min-height:52px;font-family:var(--font-body)}.mobile-nav-link:hover,.mobile-nav-link:focus{background:var(--neutral-50);color:var(--luxury-champagne)}.mobile-nav-link-logout{color:var(--error-color)}.mobile-nav-link-logout:hover{background:#ef44440d;color:var(--error-color)}.mobile-menu-auth{padding:1rem 1.25rem;border-top:1px solid var(--neutral-200);background:var(--neutral-50)}.btn-mobile-auth{display:block;width:100%;padding:1rem;background:var(--luxury-champagne);color:var(--luxury-navy);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;text-align:center;min-height:52px;font-family:var(--font-heading);transition:all .2s ease}.btn-mobile-auth:hover{background:var(--luxury-gold)}@media(max-width:768px){.nav-link,.user-dropdown-item,.footer-link,.btn-secondary{min-height:44px;padding-top:12px;padding-bottom:12px}.form-input,.form-select,.form-textarea{min-height:52px;font-size:16px}.btn-primary,.btn-search,.btn-continue-minimal{min-height:52px;font-size:1rem}.user-menu-btn-icon{min-width:44px;min-height:44px;padding:10px}}@media(max-width:768px){.page-title{font-size:clamp(1.75rem,6vw,2.5rem)}.section-title,.content-heading{font-size:clamp(1.25rem,4vw,1.75rem)}.booking-card-title{font-size:clamp(1rem,3.5vw,1.25rem)}}@media(max-width:640px){.booking-stepper{padding:12px 10px;margin-bottom:12px}.stepper-circle{width:36px;height:36px;font-size:14px;margin-bottom:8px}.stepper-label{font-size:11px}.stepper-description{display:none}.stepper-connector{top:18px;left:calc(50% + 18px);right:calc(-50% + 18px)}}@media(max-width:768px){.search-results-minimal,.journey-summary-card{padding:1rem}.journey-header{flex-direction:column;gap:.75rem}.journey-route{flex-direction:column;gap:.5rem}.journey-arrow{transform:rotate(90deg)}.route-map-container{height:200px;margin:1rem 0}.vehicle-card-minimal{padding:1rem}.vehicle-header-minimal{flex-direction:column;align-items:flex-start;gap:.5rem}.vehicle-features-minimal{flex-direction:column;gap:.5rem}.included-grid{grid-template-columns:1fr}}@media(max-width:768px){.booking-grid{grid-template-columns:1fr;gap:1.5rem}.form-row-inline,.form-row-inline.phone-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.terms-checkbox-container{padding:var(--spacing-sm)}.checkbox-container{align-items:flex-start}.terms-text{font-size:13px;line-height:1.5}}@media(max-width:768px){.payment-element-container{padding:1rem;min-width:0}.express-checkout-container{min-width:0}.promo-input-container,.loyalty-section{padding:1rem}.promo-input-row{flex-direction:column;gap:.75rem}.promo-apply-btn{width:100%}.loyalty-redemption-row{flex-direction:column;gap:.75rem;text-align:center}.loyalty-points-input{width:100%}}@media(max-width:768px){.confirmation-details-grid{grid-template-columns:1fr}.confirmation-header{flex-direction:column;text-align:center;gap:1rem}.confirmation-actions{flex-direction:column;gap:.75rem}.confirmation-actions .btn-primary,.confirmation-actions .btn-secondary{width:100%}}@media(max-width:768px){.content-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.content-sidebar{order:2}.contact-layout{grid-template-columns:1fr;gap:var(--spacing-lg)}.contact-form-wrapper{padding:var(--spacing-md)}.services-grid{grid-template-columns:1fr}.cta-section{padding:var(--spacing-lg)}.cta-title{font-size:clamp(1.5rem,5vw,2rem)}}@media(max-width:768px){.profile-layout{flex-direction:column}.profile-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--neutral-200)}.profile-nav{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem}.profile-nav-item{flex:1 1 auto;min-width:100px;text-align:center;padding:.75rem 1rem;font-size:.875rem}.profile-main{padding:1.5rem 1rem}.profile-header-content{flex-direction:column;gap:1rem;text-align:center}}@media(max-width:480px){.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100%;max-height:90vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-header{padding:20px 16px 16px}.modal-header h2{font-size:20px}.modal-form{padding:16px}}@media(max-width:640px){.app-footer{padding:2rem 1rem}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-section{text-align:center}.footer-links,.footer-contact{align-items:center}.footer-contact-item{justify-content:center}}html,body{overflow-x:hidden;max-width:100vw}.page-wrapper{overflow-x:hidden}@media(max-width:768px){.booking-card,.summary-card,.vehicle-card,.info-card,.faq-item{min-width:0;overflow:hidden}*{min-width:0}}
