@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500&family=Montserrat:wght@600;700&display=swap";@font-face{font-family:Koguli;src:url(/fonts/Koguli-Bold.woff2) format("woff2"),url(/fonts/Koguli-Bold.woff) format("woff"),url(/fonts/Koguli-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #002C3F;--gold-color: #CEB45F;--light-color: #EFF3F4;--mobile-nav-height: 74px;font-family:Plus Jakarta Sans,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#333;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-width:320px;min-height:100vh;min-height:100dvh;background:#f4f7f8;overscroll-behavior-y:none}html,body,#root{width:100%;min-height:100%}h1,h2,h3,h4,h5,h6{font-family:Montserrat,sans-serif;font-weight:600}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:focus,button:focus-visible{outline:none}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#ceb45f}button{background-color:#f9f9f9}}body{overflow-x:hidden}@media(max-width:768px){button,a,input,select,textarea{min-height:44px}h1{font-size:2em}body{font-size:16px;background:#f4f7f8}}@media(max-width:480px){h1{font-size:1.75em}h2{font-size:1.5em}h3{font-size:1.25em}}html{scroll-behavior:smooth}@media(max-width:768px){input,select,textarea{font-size:16px}}@supports (padding: max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}}.container-fluid{width:100%;padding-left:16px;padding-right:16px}@media(max-width:768px){*,*:before,*:after{transition-duration:.2s!important}html{font-size:14px}img{max-width:100%;height:auto}section,main,article{overflow-x:hidden}}@media(max-width:480px){.container-fluid{padding-left:12px;padding-right:12px}}@media(max-width:360px){.container-fluid{padding-left:8px;padding-right:8px}}@media(max-width:768px){.app{min-height:100dvh;padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom));background:#f4f7f8}section{border-radius:0}.app,main,.page-content{-webkit-overflow-scrolling:touch}input,select,textarea,button{border-radius:12px}button,a,nav,.tab-btn,.sidebar-item,.filter-dropdown{-webkit-user-select:none;user-select:none}.cancel-modal,.cancel-modal-overlay .cancel-modal{max-width:100%;max-height:100vh;border-radius:16px 16px 0 0;margin:0;position:fixed;bottom:0;left:0;right:0}}.app{display:flex;flex-direction:column;min-height:100vh;background:#fff}#root{width:100%;margin:0;padding:0}#book-bus,#about,#popular-routes,#help{scroll-margin-top:100px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.app{overflow-x:clip}@supports (padding: env(safe-area-inset-bottom)){.app{padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:768px){.app{min-height:100dvh;background:#f4f7f8}#book-bus,#about,#popular-routes,#help{scroll-margin-top:72px}.desktop-only{display:none!important}.mobile-only{display:block!important}}@media(min-width:769px){.mobile-only{display:none!important}.desktop-only{display:block!important}}@media(max-width:768px){*{-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.app>footer,.app .footer{padding-bottom:calc(var(--mobile-nav-height, 74px) + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.header{--header-primary: #002C3F;--header-primary-soft: #07384c;--header-gold: #CEB45F;--header-gold-dark: #b08c37;--header-gold-light: #CEB45F;--header-gold-soft: rgba(206, 180, 95, .16);--header-gold-wash: rgba(206, 180, 95, .2);--header-white: #ffffff;--header-muted: rgba(255, 255, 255, .72);--header-border: rgba(206, 180, 95, .22);position:sticky;top:0;z-index:100;background:var(--header-primary);color:var(--header-white);border-bottom:1px solid var(--header-border);box-shadow:0 12px 32px #002c3f33}.header-container{width:100%;max-width:1680px;margin:0 auto;padding:0 clamp(1rem,2.5vw,2.25rem)}.header-main-inner{display:flex;align-items:center;justify-content:flex-start;min-height:86px;gap:clamp(.65rem,1vw,1.15rem);overflow:visible}.brand-cluster,.header-actions,.mode-tabs-header,.header-action-link,.login-btn,.header-timer{display:flex;align-items:center}.brand-cluster{flex:0 0 auto;gap:12px;min-width:0}.logo{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;padding:0;cursor:pointer;color:#fff}.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:54px;flex:0 0 44px}.logo-mark img{display:block;width:100%;height:100%;object-fit:contain}.logo-copy{display:flex;align-items:flex-start;flex-direction:column;gap:3px}.logo-text{font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.035em;line-height:1}.logo-tagline{color:var(--header-muted);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:9px;font-weight:700;letter-spacing:.11em;line-height:1;text-transform:uppercase}.header-actions{justify-content:flex-end;flex:0 1 auto;gap:clamp(.45rem,.75vw,.85rem);margin-left:auto;min-width:0}.header-action-link{gap:7px;color:var(--header-muted);text-decoration:none;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:14px;font-weight:600;line-height:1;white-space:nowrap;transition:color .2s ease}.header-action-link:hover{color:var(--header-gold)}.header-action-link svg{flex-shrink:0;color:currentColor}.mode-tabs-header{flex:1 1 auto;align-self:stretch;justify-content:center;min-width:0;gap:clamp(.55rem,1vw,1.35rem);overflow:hidden}.mode-tab{position:relative;display:inline-flex;align-items:center;gap:clamp(6px,.55vw,9px);min-height:86px;padding:0;border:0;background:transparent;color:var(--header-muted);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:16px;font-weight:700;letter-spacing:0;cursor:pointer;white-space:nowrap;transition:color .2s ease}.mode-tab>span:last-child{overflow:hidden;text-overflow:ellipsis}.mode-tab:after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:4px;border-radius:999px 999px 0 0;background:var(--header-gold);opacity:0;transform:scaleX(.65);transition:opacity .2s ease,transform .2s ease}.mode-tab:hover,.mode-tab.active{color:var(--header-white)}.mode-tab.active{font-weight:800}.mode-tab.active:after{opacity:1;transform:scaleX(1)}.mode-tab:disabled{cursor:default;opacity:.72}.mode-tab:disabled:hover{color:var(--header-muted)}.mode-tab-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:clamp(34px,2.6vw,42px);height:clamp(34px,2.6vw,42px);flex:0 0 clamp(34px,2.6vw,42px);border-radius:50%;background:var(--header-gold);color:var(--header-primary);box-shadow:inset -8px -4px #ffffff38;transition:transform .2s ease,color .2s ease,background .2s ease}.mode-tab:hover .mode-tab-icon,.mode-tab.active .mode-tab-icon{color:var(--header-primary);background:var(--header-white);transform:translateY(-1px)}.mode-tab:disabled .mode-tab-icon{color:#ffffff7a;background:#ffffff1a;box-shadow:inset -8px -4px #ffffff0f;transform:none}.booking-context{flex:0 1 auto;overflow:hidden;max-width:220px;margin:0;color:var(--header-white);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:14px;font-weight:800;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.header-timer{gap:6px;padding:7px 11px;border:1px solid rgba(206,180,95,.36);border-radius:999px;background:#ceb45f24;color:var(--header-white);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:13px;font-weight:800;line-height:1}.header-timer .timer-time{font-variant-numeric:tabular-nums}.header-timer.warning{border-color:var(--header-gold);background:#ceb45f2e;color:var(--header-gold);animation:pulse-warning 1s infinite}.header-timer.critical{border-color:var(--header-white);background:#ffffff1f;color:var(--header-white);animation:pulse-critical .5s infinite}@keyframes pulse-warning{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes pulse-critical{0%,to{box-shadow:0 0 #ffffff47;transform:scale(1)}50%{box-shadow:0 0 0 4px #ceb45f29;transform:scale(1.03)}}.auth-wrapper{position:relative}.login-btn{gap:7px;min-height:36px;max-width:150px;padding:7px 0;border:0;border-radius:8px;background:transparent;color:var(--header-gold);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:14px;font-weight:700;letter-spacing:0;line-height:1;cursor:pointer;transition:color .2s ease,background .2s ease}.login-btn>span:not(.user-avatar-small){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-btn:hover{color:var(--header-white)}.login-btn:disabled{color:#ffffff7a;cursor:wait}.login-btn.logged-in{color:var(--header-gold)}.user-avatar-small{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:var(--header-gold);color:var(--header-primary);font-size:12px;font-weight:800}.dropdown-arrow{transition:transform .2s ease}.login-btn.logged-in:hover .dropdown-arrow{transform:translateY(2px)}.account-popover-anchor{position:relative;width:0;height:0}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--header-border);border-radius:50%;background:var(--header-gold);color:var(--header-primary);cursor:pointer}.mobile-mode-tabs,.nav,.nav-backdrop,.nav-drawer,.nav-close-btn,.nav-user-section,.nav-auth-section{display:none}@media(max-width:1440px){.booking-context{display:none}}@media(max-width:1180px){.header-action-link{justify-content:center;width:34px;height:34px;gap:0;border-radius:50%}.header-action-link span{display:none}.mode-tabs-header{gap:.65rem}.mode-tab{font-size:15px}}@media(max-width:1024px){.header-main-inner{gap:.75rem}.header-actions{gap:8px}.header-action-link{font-size:13px}.mode-tabs-header{gap:.5rem}.mode-tab{gap:6px;font-size:14px}.mode-tab-icon{width:36px;height:36px;flex-basis:36px}.booking-context{display:none}}@media(max-width:980px){.header{width:100vw;max-width:100vw;border-bottom:1px solid var(--header-border);background:#002c3ff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 24px #002c3f29}.header-container{padding-right:max(1rem,env(safe-area-inset-right));padding-left:max(1rem,env(safe-area-inset-left))}.header-main-inner{position:relative;min-height:calc(60px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);gap:10px}.mode-tabs-header,.booking-context{display:none}.header-action-link,.desktop-auth{display:none!important}.header-actions{order:2;gap:8px;margin-left:auto}.brand-cluster{order:1;flex:1 1 auto;min-width:0}.logo{min-width:0}.logo-mark{width:34px;height:44px;flex-basis:34px}.logo-mark svg{width:19px;height:19px}.logo-text{max-width:44vw;font-size:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logo-tagline{display:none}.header-timer{padding:6px 9px;font-size:11px}.mobile-menu-btn{display:inline-flex;order:3;position:relative;z-index:2;width:42px;height:42px;flex:0 0 42px;margin-left:auto;padding:0;border-color:var(--header-gold);background:var(--header-gold);color:var(--header-primary);box-shadow:0 10px 22px #ceb45f38}.account-popover-anchor{position:static}.nav{position:fixed;inset:0;z-index:1200;display:flex;visibility:hidden;pointer-events:none;transition:visibility 0s linear .3s}.nav.mobile-open{visibility:visible;pointer-events:auto;transition-delay:0s}.nav-backdrop{position:absolute;inset:0;display:block;background:#00121a94;opacity:0;transition:opacity .3s ease}.nav.mobile-open .nav-backdrop{opacity:1}.nav-drawer{position:absolute;top:0;right:0;bottom:0;z-index:1202;display:flex;width:min(380px,92vw);max-width:92vw;min-height:100dvh;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;background:var(--header-primary);box-shadow:-12px 0 34px #00121a57;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.nav.mobile-open .nav-drawer{transform:translate(0)}.nav-drawer-header{display:flex;align-items:center;justify-content:space-between;min-height:calc(64px + env(safe-area-inset-top));padding:calc(14px + env(safe-area-inset-top)) 18px 14px;border-bottom:1px solid var(--header-border)}.nav-drawer-logo{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0;color:var(--header-white);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:20px;font-weight:800}.nav-drawer-logo img{display:block;width:30px;height:40px;object-fit:contain}.nav-close-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--header-border);border-radius:50%;background:var(--header-gold);color:var(--header-primary);cursor:pointer}.nav-close-btn svg{width:21px;height:21px;color:var(--header-primary);stroke:var(--header-primary);stroke-width:2.4}.nav-close-btn>span{color:var(--header-primary);font-family:Arial,sans-serif;font-size:27px;font-weight:400;line-height:1}.header.menu-open .mobile-menu-btn{visibility:hidden;pointer-events:none}.mobile-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 18px;border-bottom:1px solid var(--header-border)}.mobile-mode-tabs .mode-tab{justify-content:flex-start;min-height:52px;padding:8px 10px;border:1px solid var(--header-border);border-radius:8px;background:#ffffff0f;color:var(--header-white);font-size:13px;font-weight:800}.mobile-mode-tabs .mode-tab:after{display:none}.mobile-mode-tabs .mode-tab.active{border-color:var(--header-gold);background:var(--header-gold);color:var(--header-primary)}.mobile-mode-tabs .mode-tab-icon{width:32px;height:32px;flex-basis:32px;background:var(--header-gold);color:var(--header-primary);box-shadow:inset -5px -3px #ffffff38}.mobile-mode-tabs .mode-tab:disabled .mode-tab-icon{background:#ffffff1a;color:#ffffff7a;box-shadow:inset -5px -3px #ffffff0f}.nav-user-section{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--header-border);background:#ffffff0f;cursor:pointer}.nav-user-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--header-gold);color:var(--header-primary);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:16px;font-weight:800}.nav-user-info{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.nav-user-name{overflow:hidden;color:var(--header-white);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:15px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.nav-user-phone{color:var(--header-muted);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:12px}.nav-user-chevron{color:var(--header-muted);flex-shrink:0}.nav-links{display:flex;flex-direction:column;padding:8px 0}.nav-links a{display:flex;align-items:center;gap:14px;min-height:52px;padding:13px 18px;color:var(--header-white);text-decoration:none;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:15px;font-weight:650;letter-spacing:0;transition:background .15s ease,color .15s ease}.nav-links a:hover,.nav-links a:active{background:var(--header-gold-soft);color:var(--header-gold)}.nav-links a.active{border-right:3px solid var(--header-gold);background:var(--header-gold-soft);color:var(--header-gold)}.nav-links a svg{flex-shrink:0;color:inherit}.nav-auth-section{display:block;margin-top:auto;padding:16px 18px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--header-border)}.nav-login-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;border:0;border-radius:8px;background:var(--header-gold);color:var(--header-primary);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 10px 20px #ceb45f38}}@media(max-width:480px){.header-container{padding-right:max(.75rem,env(safe-area-inset-right));padding-left:max(.75rem,env(safe-area-inset-left))}.brand-cluster{gap:8px}.logo-text{min-height:34px;max-width:52vw;padding:0 10px;font-size:19px}.header-timer{display:none}.mobile-menu-btn{display:inline-flex!important;width:40px;height:40px;flex-basis:40px;position:fixed;top:calc(10px + env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right));z-index:110;margin-left:0}.nav-drawer{width:100vw;max-width:100vw}.mobile-mode-tabs{grid-template-columns:1fr}.mobile-mode-tabs .mode-tab{min-height:50px}}@media(max-width:360px){.header-main-inner{gap:8px}.logo-text{max-width:48vw;font-size:17px}.mobile-menu-btn{width:38px;height:38px;flex-basis:38px}}@media(prefers-reduced-motion:reduce){.nav-backdrop,.nav-drawer{transition:none}}.auth-modal-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:clamp(18px,3vw,34px);background:linear-gradient(135deg,#002c3fc7,#11182794),#00121cad;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:authFadeIn .18s ease}.auth-modal{position:relative;display:grid;width:min(920px,100%);max-height:calc(100vh - 44px);grid-template-columns:minmax(300px,.88fr) minmax(380px,1.12fr);overflow:hidden;border:1px solid rgba(224,232,237,.95);border-radius:18px;background:#fff;box-shadow:0 30px 80px #00141e57;animation:authSlideIn .24s cubic-bezier(.22,1,.36,1)}.auth-close-btn{position:absolute;top:18px;right:18px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #dbe4e8;border-radius:50%;background:#fff;color:#48616d;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.auth-close-btn:hover{border-color:#9c7635;background:#faf7f0;color:#7a5c2a}.auth-brand-panel{display:flex;min-height:min(560px,calc(100vh - 44px));flex-direction:column;gap:26px;padding:38px 34px;background:linear-gradient(155deg,#ceb45f33,#ceb45f00 35%),linear-gradient(145deg,#002c3f,#073f54 62%,#143f4c);color:#fff}.auth-logo-mark{display:inline-flex;align-items:center;justify-content:center;width:132px;min-height:54px;padding:8px 12px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#fffffff5;box-shadow:0 16px 34px #00141e33}.auth-logo-img{display:block;width:108px;max-height:42px;object-fit:contain}.auth-brand-copy{display:flex;flex-direction:column;gap:14px}.auth-kicker,.auth-panel-eyebrow{display:inline-flex;align-items:center;gap:7px;width:fit-content;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.auth-kicker{padding:8px 10px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#ffffff1a;color:#f3ddb0}.auth-brand-copy h2,.auth-header h1{margin:0;color:inherit;letter-spacing:0}.auth-brand-copy h2{max-width:290px;font-size:30px;line-height:1.08}.auth-brand-copy p{max-width:300px;margin:0;color:#ffffffc2;font-size:14px;line-height:1.65}.auth-assurance-list{display:grid;gap:12px;margin-top:auto}.auth-assurance-list>div{display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff14}.auth-assurance-list svg{flex:0 0 auto;margin-top:2px;color:#f3ddb0}.auth-assurance-list span{display:flex;min-width:0;flex-direction:column;gap:3px}.auth-assurance-list strong{color:#fff;font-size:13px;line-height:1.25}.auth-assurance-list small{color:#ffffffad;font-size:12px;line-height:1.45}.auth-content-panel{display:flex;min-width:0;overflow-y:auto;flex-direction:column;justify-content:center;padding:48px 48px 42px;background:#fff;color:#163343}.auth-step-row{display:flex;align-items:center;gap:10px;margin-bottom:28px}.auth-step-row span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #d9e5ea;border-radius:50%;background:#fff;color:#728891;font-size:12px;font-weight:800}.auth-step-row span.active,.auth-step-row span.complete{border-color:#9c7635;background:#9c7635;color:#fff}.auth-step-row i{width:58px;height:1px;background:#d9e5ea}.auth-header{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}.auth-panel-eyebrow{color:#9c7635}.auth-header h1{color:#002c3f;font-size:30px;line-height:1.16}.auth-subtitle{max-width:410px;margin:0;color:#607783;font-size:14px;line-height:1.6}.auth-status-message{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 13px;border-radius:8px;font-size:13px;font-weight:650;line-height:1.45}.auth-status-message svg{flex:0 0 auto;margin-top:1px}.auth-status-message.error{border:1px solid #f1c6c2;background:#fff3f2;color:#a23b33}.auth-status-message.success{border:1px solid #badfc4;background:#f0fbf3;color:#2e7440}.auth-form{display:grid;gap:18px}.auth-field{display:grid;gap:9px}.auth-field label{color:#244757;font-size:13px;font-weight:800}.phone-input-wrapper{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:56px;overflow:hidden;border:1px solid #cfdde3;border-radius:8px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.phone-input-wrapper:focus-within,.otp-inputs input:focus{border-color:#9c7635;box-shadow:0 0 0 4px #9c76351f}.auth-field.error .phone-input-wrapper,.auth-field.error .otp-inputs input{border-color:#c94a40}.country-code{display:inline-flex;align-items:center;align-self:stretch;padding:0 15px;border-right:1px solid #e5eef2;background:#f7fafb;color:#002c3f;font-size:15px;font-weight:800}.phone-input-wrapper input{width:100%;min-width:0;padding:0 14px;border:0;outline:none;background:transparent;color:#002c3f;font-size:18px;font-weight:750;letter-spacing:0}.phone-input-wrapper input::placeholder{color:#9aaab1;font-weight:600}.phone-input-wrapper svg{margin-right:15px;color:#81949d}.auth-submit-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:54px;padding:0 18px;border:0;border-radius:8px;background:#9c7635;color:#fff;cursor:pointer;font-size:15px;font-weight:850;line-height:1;box-shadow:0 14px 26px #9c76353d;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.auth-submit-btn:hover:not(:disabled){background:#87642c;box-shadow:0 16px 30px #9c76354d;transform:translateY(-1px)}.auth-submit-btn:disabled{cursor:wait;opacity:.72;transform:none}.btn-loader{width:18px;height:18px;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;border-radius:50%;animation:authSpin .75s linear infinite}.auth-method-note{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #dce8ed;border-radius:8px;background:#f8fbfc;color:#48616d;font-size:12px;font-weight:650;line-height:1.45}.auth-method-note svg{flex:0 0 auto;margin-top:1px;color:#9c7635}.auth-terms{margin:0;color:#71868f;font-size:12px;line-height:1.6;text-align:center}.auth-terms a{color:#8b692e;font-weight:800;text-decoration:none}.auth-terms a:hover{text-decoration:underline}.otp-form{gap:16px}.change-number-link,.resend-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:fit-content;padding:0;border:0;background:transparent;color:#8b692e;cursor:pointer;font-size:13px;font-weight:850}.change-number-link:hover,.resend-btn:hover{color:#6f5122}.resend-btn:disabled{cursor:wait;opacity:.65}.otp-phone-display{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dce8ed;border-radius:8px;background:#f8fbfc}.otp-phone-display span{color:#71868f;font-size:12px;font-weight:800}.otp-phone-display strong{color:#002c3f;font-size:14px;font-weight:850;letter-spacing:0}.otp-inputs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.otp-inputs input{width:100%;aspect-ratio:1 / 1.1;min-height:52px;border:1px solid #cfdde3;border-radius:8px;background:#fff;color:#002c3f;font-size:22px;font-weight:850;text-align:center;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.otp-inputs input:not(:placeholder-shown){background:#fffdf8}.otp-timer{display:flex;align-items:center;justify-content:center;min-height:32px;color:#607783;font-size:13px;font-weight:700}.otp-timer strong{color:#8b692e;font-variant-numeric:tabular-nums}@keyframes authFadeIn{0%{opacity:0}to{opacity:1}}@keyframes authSlideIn{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes authSpin{to{transform:rotate(360deg)}}@media(max-width:820px){.auth-modal{grid-template-columns:1fr;width:min(560px,100%);overflow-y:auto}.auth-brand-panel{min-height:auto;gap:18px;padding:28px 28px 24px}.auth-brand-copy h2{max-width:none;font-size:24px}.auth-brand-copy p{max-width:none}.auth-assurance-list{grid-template-columns:1fr 1fr}.auth-content-panel{padding:32px 28px 30px}}@media(max-width:560px){.auth-modal-overlay{align-items:stretch;padding:0;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.auth-modal{display:flex;height:100vh;height:100dvh;width:100%;max-height:none;flex-direction:column;overflow:hidden;border:0;border-radius:0;box-shadow:none;animation:authMobileEnter .2s ease}.auth-close-btn{top:calc(env(safe-area-inset-top,0px) + 14px);right:16px;width:40px;height:40px;border-color:#ffffff38;background:#ffffff21;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-brand-panel{position:relative;flex:0 0 auto;min-height:auto;gap:14px;padding:calc(env(safe-area-inset-top,0px) + 22px) 20px 20px;border-radius:0 0 26px 26px;box-shadow:0 18px 34px #002c3f29}.auth-logo-mark{width:112px;min-height:44px;padding:7px 10px;border-radius:10px;box-shadow:none}.auth-logo-img{width:92px;max-height:34px}.auth-kicker{padding:7px 9px;font-size:10px}.auth-brand-copy{gap:9px}.auth-brand-copy h2{max-width:calc(100% - 56px);font-size:23px;line-height:1.12}.auth-brand-copy p{font-size:13px;line-height:1.5}.auth-assurance-list{grid-template-columns:1fr 1fr;gap:8px;margin-top:2px}.auth-assurance-list>div{gap:8px;padding:10px;border-radius:12px}.auth-assurance-list strong{font-size:12px}.auth-assurance-list small{display:none}.auth-content-panel{flex:1 1 auto;justify-content:flex-start;padding:24px 20px calc(env(safe-area-inset-bottom,0px) + 24px);background:#fff;-webkit-overflow-scrolling:touch}.auth-step-row{justify-content:center;margin-bottom:24px}.auth-step-row span{width:30px;height:30px}.auth-step-row i{width:76px}.auth-header h1{font-size:28px;line-height:1.12}.auth-subtitle{font-size:14px}.auth-status-message{margin-bottom:16px;padding:13px 14px;border-radius:14px}.auth-form{gap:17px}.auth-field label{font-size:13px}.phone-input-wrapper{min-height:60px;border-radius:14px;background:#f8fbfc}.country-code{padding:0 14px;background:#edf4f7}.phone-input-wrapper input{font-size:18px}.auth-submit-btn{min-height:58px;border-radius:14px;font-size:16px}.auth-method-note{border-radius:14px}.otp-phone-display{flex-direction:column;align-items:flex-start;border-radius:14px}.otp-phone-display strong{font-size:15px}.otp-inputs{gap:7px}.otp-inputs input{min-height:50px;border-radius:13px;background:#f8fbfc;font-size:20px}.otp-timer{min-height:36px}}@keyframes authMobileEnter{0%{opacity:.98;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:380px){.auth-brand-panel,.auth-content-panel{padding-right:16px;padding-left:16px}.auth-step-row i{width:44px}.country-code{padding:0 12px}.phone-input-wrapper input{padding:0 10px;font-size:16px}.otp-inputs{gap:6px}.otp-inputs input{min-height:42px;font-size:18px}}.my-account-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:280px;background:#fff;border-radius:12px;box-shadow:0 8px 30px #00000026;z-index:1000;overflow:hidden;animation:slideDown .25s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-item{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer;transition:background-color .2s}.menu-item:hover{background:#f7f7f7}.menu-item.user-profile{padding:18px;background:linear-gradient(135deg,#fff 0% 100%);color:#fff;border-radius:0}.menu-item.user-profile:hover{background:linear-gradient(135deg,#f7f7f7 0% 100%)}.menu-item.user-profile .menu-icon{background:#ffffff26;border-radius:50%;padding:10px}.menu-item.user-profile .menu-icon svg{stroke:#000}.menu-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.menu-icon svg{stroke:#555}.menu-content{display:flex;flex-direction:column;gap:2px}.menu-title{font-size:15px;font-weight:600;color:#333}.menu-item.user-profile .menu-title{color:#003d57;font-size:16px}.menu-subtitle{font-size:12px;color:#888}.menu-item.user-profile .menu-subtitle{color:#003d57;font-size:13px}.menu-divider{height:1px;background:#eee;margin:6px 0}.menu-item.logout{padding:16px 18px}.menu-item.logout .menu-title{color:#002c3f}.menu-item.logout .menu-icon svg{stroke:#002c3f}.menu-item.logout:hover{background:#888}@media(max-width:768px){.my-account-dropdown{position:fixed;inset:auto 0 0;width:100%;border-radius:16px 16px 0 0;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease;z-index:9999}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.menu-item{padding:16px 20px}.menu-item.user-profile{padding:20px}}@media(max-width:480px){.my-account-dropdown{width:100%;border-radius:12px 12px 0 0}.menu-item{padding:14px 16px;gap:12px}.menu-icon{width:36px;height:36px}.menu-title{font-size:14px}.menu-subtitle{font-size:11px}.menu-item.user-profile{padding:16px}.menu-item.user-profile .menu-title{font-size:15px}.menu-item.user-profile .menu-subtitle{font-size:12px}}.profile-modal-overlay{position:fixed;inset:0;background:#002c3fb3;display:flex;align-items:center;justify-content:center;z-index:1001;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.profile-modal{background:#fff;border-radius:16px;width:100%;max-width:450px;box-shadow:0 20px 60px #0000004d;overflow:hidden;animation:slideUp .3s ease}.profile-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 24px 16px;background:linear-gradient(135deg,#002c3f,#003d57);color:#fff}.welcome-text h2{margin:0;font-size:20px;font-weight:700}.welcome-text p{margin:6px 0 0;font-size:14px;opacity:.9}.profile-modal-header .close-btn{background:#ffffff1a;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;transition:background .2s}.profile-modal-header .close-btn:hover{background:#fff3}.profile-modal-form{padding:24px}.profile-modal-form .form-group{margin-bottom:16px}.profile-modal-form label{display:block;font-size:13px;font-weight:600;color:#002c3f;margin-bottom:6px}.profile-modal-form input,.profile-modal-form select{width:100%;padding:12px 14px;border:2px solid #e8e8e8;border-radius:10px;font-size:14px;transition:all .2s;background:#fff}.profile-modal-form input:focus,.profile-modal-form select:focus{outline:none;border-color:#9c7635;box-shadow:0 0 0 3px #9c76351a}.profile-modal-form input::placeholder{color:#aaa}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}.error-message{color:#c53030;font-size:13px;margin:0 0 16px;padding:10px 14px;background:#fff5f5;border-radius:8px;border-left:3px solid #c53030}.form-actions button{flex:1;padding:14px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.skip-btn{background:#f5f5f5;color:#666}.skip-btn:hover{background:#eee}.save-btn{background:linear-gradient(135deg,#9c7635,#7a5c2a);color:#fff;box-shadow:0 4px 15px #9c76354d}.save-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #9c763566}.save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.privacy-note{padding:16px 24px;margin:0;font-size:12px;color:#888;text-align:center;background:#f8f9fa;border-top:1px solid #eee}@media(max-width:480px){.profile-modal{border-radius:16px 16px 0 0;max-height:90vh;overflow-y:auto}.profile-modal-overlay{align-items:flex-end;padding:0}.form-row{flex-direction:column;gap:16px}}.hero{position:relative;width:100%;min-height:575px;overflow:hidden;background:#002c3f}.hero-background,.hero-background picture{position:absolute;inset:0;display:block}.hero-bg-image{width:100%;height:100%;object-fit:cover;object-position:center 47%;transform:scale(1.015)}.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#002332f5,#002332c9,#00233247 74%,#00233224),linear-gradient(180deg,#001b270f,#001b271f 55%,#001b27b8)}.hero-content{position:relative;z-index:2;width:min(100%,1248px);margin:0 auto;padding:88px 24px 160px}.hero-kicker{display:inline-flex;align-items:center;gap:9px;min-height:34px;padding:0 14px;margin-bottom:20px;border:1px solid rgba(229,203,116,.42);border-radius:999px;background:#001b2757;color:#efd77f;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-kicker-dot{width:7px;height:7px;border-radius:50%;background:#efd77f;box-shadow:0 0 0 5px #efd77f1f}.hero-title{max-width:760px;margin:0 0 20px;color:#fff;font-family:Montserrat,sans-serif;font-size:clamp(42px,4vw,61px);font-weight:800;letter-spacing:-.045em;line-height:1.03;text-wrap:balance;text-shadow:0 14px 36px rgba(0,18,26,.24);animation:fadeInDown .7s ease-out}.hero-title span{display:block}.hero-title span:last-child{color:#f2d87c}.hero-subtitle{max-width:620px;margin:0 0 28px;color:#f7fcfde0;font-family:Plus Jakarta Sans,sans-serif;font-size:18px;font-weight:500;line-height:1.65;text-shadow:0 4px 16px rgba(0,18,26,.24);animation:fadeInUp .7s ease-out .12s both}.hero-proof-row{display:flex;flex-wrap:wrap;gap:10px;animation:fadeInUp .7s ease-out .2s both}.hero-proof-row span{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#001b274d;color:#ffffffe6;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:700;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-proof-row svg{flex:0 0 auto;color:#efd77f}@media(max-width:1024px){.hero{min-height:540px}.hero-content{padding-top:72px}}@media(max-width:768px){.hero{min-height:392px}.hero-bg-image{object-position:center 32%;transform:none}.hero-overlay{background:linear-gradient(90deg,#002332e0,#00233294 76%,#0023325c),linear-gradient(180deg,#001b2738,#001b2757 58%,#001b27e6)}.hero-content{padding:52px 20px 72px}.hero-kicker{min-height:30px;margin-bottom:14px;padding:0 11px;font-size:10px}.hero-title{max-width:360px;margin-bottom:13px;font-size:30px;letter-spacing:-.035em;line-height:1.08}.hero-subtitle{max-width:360px;margin-bottom:18px;font-size:14px;line-height:1.55}.hero-proof-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:360px;gap:7px}.hero-proof-row span{min-height:34px;justify-content:center;min-width:0;padding:0 5px;border-radius:8px;font-size:8.5px;white-space:nowrap}.hero-proof-row svg{width:14px;height:14px}}@media(max-width:420px){.hero-content{padding-top:42px}.hero-title{max-width:330px;font-size:27px}.hero-subtitle{max-width:330px;font-size:13px}}.search-bus-wrapper{--booking-primary: #002C3F;--booking-primary-hover: #004663;--booking-gold: #9c7635;--booking-gold-dark: #7a5c2a;--booking-gold-light: #CEB45F;--booking-border-accent: #d4b861;--booking-gold-soft: #faf7f0;--booking-border: #d9e2e7;--booking-border-strong: #c7d6de;--booking-muted: #647481;--booking-text: #082f42;--booking-surface: #ffffff;--booking-shadow: 0 18px 42px rgba(10, 36, 50, .12);--booking-shadow-hover: 0 20px 46px rgba(10, 36, 50, .14);width:100%;display:flex;justify-content:center;padding:0 24px;margin-top:-118px;margin-bottom:52px;position:relative;z-index:30}.search-container-figma{width:100%;max-width:1180px;position:relative;isolation:isolate}.search-module-header{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;overflow:hidden;padding:20px 24px 18px;border:0;border-top:4px solid var(--booking-border-accent);border-radius:8px 8px 0 0;background:#fff;box-shadow:0 12px 28px #0a243214;z-index:2}.search-module-header:before{content:none}.search-heading-copy{max-width:760px;min-width:0}.search-eyebrow{display:block;margin-bottom:7px;color:var(--booking-gold);font-family:Plus Jakarta Sans,sans-serif;font-size:11px;font-weight:800;letter-spacing:0;text-transform:uppercase}.search-module-header h2{margin:0;color:var(--booking-text);font-family:Montserrat,sans-serif;font-size:22px;font-weight:800;letter-spacing:0;line-height:1.18}.search-module-status{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 13px;border:1px solid #dfe9e4;border-radius:999px;background:#f5fbf7;color:#20583d;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;white-space:nowrap;box-shadow:inset 0 1px #ffffffbf}.status-dot{width:7px;height:7px;border-radius:50%;background:#2e8b57;box-shadow:0 0 0 4px #2e8b571f}.search-module-status.is-notice{border-color:#eadfbe;background:linear-gradient(180deg,#fffdf8,#faf4e7);color:var(--booking-gold-dark)}.search-module-status.is-notice .status-dot{background:var(--booking-gold);box-shadow:0 0 0 4px #9c76351f}.search-card-figma{position:relative;background:#fff;border-radius:0 0 8px 8px;padding:18px;display:grid;grid-template-columns:minmax(170px,1fr) 42px minmax(170px,1fr) minmax(350px,1.35fr) minmax(196px,220px);grid-template-rows:auto auto;align-items:stretch;gap:12px;box-shadow:var(--booking-shadow);animation:none;border:0;transition:box-shadow .3s ease;z-index:1}.search-card-figma:hover{box-shadow:var(--booking-shadow-hover)}.search-main-row{display:contents}.search-assurance-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:14px 24px 0;color:var(--booking-primary);font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:800}.search-assurance-row span{display:inline-flex;align-items:center;gap:8px}.search-assurance-row svg{color:var(--booking-gold-light)}.search-field-figma{display:flex;align-items:center;gap:11px;position:relative;flex:1 1 250px;min-width:0;min-height:54px;padding:10px 12px;border:1px solid var(--booking-border);border-radius:14px;background:#fff;box-shadow:0 5px 14px #0a24320a,inset 0 1px #ffffffd1;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.search-field-figma:hover{border-color:var(--booking-border-strong);background:#fff}.search-field-figma:focus-within{border-color:#9c76359e;background:#fff;box-shadow:0 0 0 3px #9c76351a}.search-field-figma.route-field{flex-basis:274px}.search-field-figma.date-field{cursor:pointer;flex:0 0 158px;gap:10px}.field-icon-img{width:28px;height:28px;flex-shrink:0;border-radius:8px;filter:drop-shadow(0 4px 8px rgba(4,26,43,.12))}.calendar-field-icon{flex:0 0 auto;color:var(--booking-gold-dark)}.field-content-figma{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.field-label-figma{font-family:Plus Jakarta Sans,sans-serif;font-size:9px;font-weight:800;color:var(--booking-muted);line-height:1.2;letter-spacing:0;text-transform:uppercase}.field-input-figma{border:none;background:transparent;font-family:Montserrat,sans-serif;font-size:13px;font-weight:700;color:var(--booking-text);padding:0;outline:none;width:100%;line-height:1.2}.field-input-figma::placeholder{color:#6f7d87;font-weight:600}.field-value-figma{font-family:Montserrat,sans-serif;font-size:13px;font-weight:800;color:var(--booking-text);line-height:1.2}.swap-btn-figma{align-self:center;width:42px;height:42px;border:1px solid #eadcc2;border-radius:50%;background:var(--booking-gold);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;flex-shrink:0;padding:0;position:relative;box-shadow:0 8px 18px #9c763538}.swap-btn-figma:hover{transform:scale(1.05);border-color:var(--booking-gold-dark);box-shadow:0 10px 22px #9c76352e}.swap-btn-figma[title]:hover:after{content:attr(title);position:absolute;bottom:-30px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:4px 10px;border-radius:4px;font-size:11px;white-space:nowrap;z-index:10}.swap-icon{width:18px;height:18px}.hidden-date-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.date-section-wrapper{display:flex;align-items:center;gap:8px;flex:0 0 auto;min-width:0;width:100%}.quick-dates-figma{display:flex;gap:8px;flex-shrink:0;min-height:54px;padding:0;border:0;border-radius:14px;background:transparent;box-shadow:none}.quick-date-btn-figma{display:flex;min-width:56px;min-height:54px;padding:7px 10px;border-radius:12px;border:1px solid var(--booking-border);background:#fff;font-family:Plus Jakarta Sans,sans-serif;font-size:11px;font-weight:800;color:var(--booking-muted);cursor:pointer;transition:all .2s ease;white-space:nowrap;align-items:center;justify-content:center;flex-direction:column;line-height:1.1;box-shadow:0 5px 14px #0a24320a}.quick-date-btn-figma:hover{background:var(--booking-gold-soft)}.quick-date-btn-figma.active{border-color:var(--booking-gold);background:var(--booking-gold);color:#fff;box-shadow:0 8px 18px #9c763538}.quick-date-btn-figma strong{font-size:15px;line-height:1}.quick-date-btn-figma span{margin-top:4px;font-size:10px}.search-btn-figma{align-self:stretch;width:100%;min-height:54px;background:var(--booking-gold);color:#fff;border:none;border-radius:14px;padding:0 18px;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:900;cursor:pointer;display:flex;align-items:center;gap:10px;transition:all .3s ease;flex-shrink:0;min-width:0;justify-content:center;grid-row:1;grid-column:5}.search-btn-figma:hover{background:var(--booking-gold-dark);transform:translateY(-1px);box-shadow:0 10px 22px #9c763547}.search-btn-figma.search-btn-prominent{padding:0 20px;font-size:15px;background:#002c3f;box-shadow:0 14px 26px #002c3f42}.search-btn-figma.search-btn-prominent:hover{background:#073c52;transform:translateY(-2px);box-shadow:0 14px 28px #002c3f47}.search-btn-figma svg{width:20px;height:20px}.search-btn-figma:disabled{opacity:.7;cursor:wait;transform:none}.seat-preference-row{grid-column:1 / -1;display:flex;align-items:center;gap:14px;min-height:54px}.seat-preference-label{flex:0 0 auto;color:#87949d;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:600}.seat-preference-options{display:flex;flex-wrap:wrap;gap:10px}.seat-preference-chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 15px;border:1px solid var(--booking-border);border-radius:12px;background:#fff;color:#5d6973;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.seat-preference-chip svg{color:var(--booking-gold-dark)}.seat-preference-chip:hover{border-color:#d6c4a4;background:#fffaf2}.seat-preference-chip.active{border-color:var(--booking-gold);background:var(--booking-primary);color:#fff;box-shadow:0 8px 18px #002c3f2e}.seat-preference-chip.active svg{color:#ceb45f}.city-dropdown{position:absolute;top:calc(100% + 10px);left:0;width:min(440px,calc(100vw - 32px));min-width:100%;background:#fff;border:1px solid #dce5ea;border-radius:8px;box-shadow:0 18px 42px #0a243229;max-height:340px;overflow-y:auto;overscroll-behavior:contain;z-index:120;list-style:none;padding:6px;margin:0}.city-dropdown li{display:flex;align-items:center;gap:11px;min-height:56px;padding:10px 12px;border-radius:7px;cursor:pointer;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;color:var(--booking-text);transition:background .16s ease,color .16s ease}.suggestion-icon{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:7px;background:#eef5f7;color:var(--booking-primary);font-size:15px}.suggestion-icon.city{background:#fbf6ea;color:var(--booking-gold-dark);font-size:18px}.suggestion-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px;max-width:none}.suggestion-copy b{color:#172733;font-size:14px;font-weight:700;word-break:break-word;line-height:1.3;white-space:normal}.suggestion-copy small{color:#71808b;font-size:12px;word-break:break-word;line-height:1.3;white-space:normal}.city-dropdown-destination{right:0;left:auto}.suggestion-icon.boarding{background:#eef6f8;color:#0b6178}.suggestion-kind{flex:0 0 auto;min-width:42px;padding:4px 8px;border:1px solid #dce5ea;border-radius:999px;color:#5e6f7b;background:#f7fafb;font-family:Plus Jakarta Sans,sans-serif;font-size:11px;font-weight:800;line-height:1;text-align:center}.city-dropdown li:hover{background:#f5f8fa;color:var(--booking-text)}.city-dropdown li:hover .suggestion-kind{border-color:#d7c6a8;background:#fffaf0;color:var(--booking-gold-dark)}.city-dropdown::-webkit-scrollbar{width:6px}.city-dropdown::-webkit-scrollbar-track{background:#f2f6f8;border-radius:3px}.city-dropdown::-webkit-scrollbar-thumb{background:#c7d4dc;border-radius:3px}.city-dropdown::-webkit-scrollbar-thumb:hover{background:#9fb1bd}.recent-searches-section{border-bottom:1px solid #edf2f4;padding-bottom:6px;margin-bottom:6px}.dropdown-section-header{padding:8px 10px 7px;font-family:Plus Jakarta Sans,sans-serif;font-size:11px;font-weight:800;color:#667786;text-transform:uppercase;letter-spacing:0;display:flex;align-items:center;gap:6px}.recent-list,.suggestions-list{list-style:none;padding:0;margin:0}.recent-list li,.suggestions-list li{display:flex;align-items:center;gap:11px;min-height:56px;padding:10px 12px;border-radius:7px;cursor:pointer;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;color:var(--booking-text);transition:background .16s ease,color .16s ease}.recent-list li:hover,.suggestions-list li:hover{background:#f5f8fa;color:var(--booking-text)}.recent-route{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden;color:#203644;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.suggestions-section{padding-top:2px}.popup-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.popup-container{background:#fff;border-radius:8px;padding:32px 40px;text-align:center;max-width:380px;width:90%;box-shadow:0 20px 60px #0003;animation:popupSlide .3s ease}@keyframes popupSlide{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.popup-icon{font-size:48px;margin-bottom:16px}.popup-message{font-family:Plus Jakarta Sans,sans-serif;font-size:16px;color:#333;margin-bottom:24px;line-height:1.5}.popup-btn{background:var(--booking-gold);color:#fff;border:none;border-radius:8px;padding:12px 40px;font-family:Montserrat,sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.popup-btn:hover{background:var(--booking-gold-dark);transform:translateY(-2px)}@media(max-width:1200px){.search-card-figma{padding:16px;gap:12px;grid-template-columns:minmax(160px,1fr) 40px minmax(160px,1fr) minmax(350px,1.25fr) minmax(180px,210px)}.search-field-figma.route-field{flex-basis:248px}.field-icon-img{width:32px;height:32px}.swap-btn-figma{width:40px;height:40px}.quick-date-btn-figma{min-height:34px;padding:0 10px;font-size:12px}.search-btn-figma{min-height:54px;padding:0 18px;font-size:14px}.field-label-figma{font-size:10px}.field-input-figma,.field-value-figma{font-size:14px}.field-content-figma{gap:6px}}@media(max-width:1024px){.search-module-header{align-items:flex-start;flex-direction:column;gap:14px;padding:20px}.search-module-header h2{font-size:20px}.search-card-figma{display:flex;flex-direction:column;align-items:stretch;border-radius:0 0 8px 8px;padding:16px;gap:16px}.search-main-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;width:100%}.search-field-figma{flex:1 1 calc(50% - 32px);min-width:160px}.search-field-figma.route-field{flex-basis:calc(50% - 38px)}.date-section-wrapper{display:grid;grid-template-columns:minmax(220px,1fr) auto;flex:1 1 100%;gap:12px}.date-section-wrapper .search-field-figma.date-field{min-width:0;width:100%;flex:unset}.swap-btn-figma{order:0}.quick-dates-figma{flex:unset;justify-content:center;gap:4px}.search-btn-figma{grid-row:auto;grid-column:auto;flex:1 1 100%;justify-content:center;min-height:56px;border-radius:8px}.seat-preference-row{width:100%;grid-column:auto}}@media(max-width:600px){.search-bus-wrapper{margin-top:-128px;padding:0 16px;margin-bottom:42px}.search-module-header{padding:18px}.search-module-header h2{font-size:18px}.search-module-status{width:100%;justify-content:center;white-space:normal}.search-card-figma{display:flex;flex-direction:column;background:#fff;border-radius:0 0 8px 8px;padding:12px;gap:10px;border:0;box-shadow:0 12px 26px #002c3f24}.search-main-row{flex-direction:column;gap:10px;max-width:100%}.search-card-figma:hover{box-shadow:0 12px 26px #002c3f24;transform:none}.search-field-figma{width:100%;flex:unset;min-height:66px;padding:13px 14px;gap:12px}.field-icon-img{width:36px;height:36px}.field-content-figma{gap:4px}.field-label-figma{font-size:11px;color:var(--booking-muted);text-transform:uppercase;letter-spacing:0}.field-input-figma,.field-value-figma{font-size:15px}.swap-btn-figma{align-self:center;margin:-4px 0;width:38px;height:38px;background:var(--booking-gold-soft);border-radius:50%;border:1px solid #e8dabb;z-index:5;transform:rotate(90deg);box-shadow:0 2px 8px #0000000f}.swap-btn-figma:hover{transform:rotate(90deg) scale(1.05)}.swap-icon{width:18px;height:18px}.date-section-wrapper{display:flex;flex-direction:column;width:100%;gap:10px;border-top:none}.date-section-wrapper .search-field-figma.date-field{width:100%;padding:13px 14px}.quick-dates-figma{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding:4px;gap:4px}.quick-date-btn-figma{min-width:0;width:100%;text-align:center;padding:0 12px;border-radius:6px;font-size:13px;background:transparent;color:var(--booking-muted)}.quick-date-btn-figma.active{background:#fff;color:var(--booking-gold-dark)}.search-btn-figma,.search-btn-figma.search-btn-prominent{width:100%;min-height:54px;margin:0;padding:0 16px;font-size:15px;justify-content:center;border-radius:8px;background:var(--booking-primary);box-shadow:0 8px 18px #002c3f38}.search-btn-figma:hover,.search-btn-figma.search-btn-prominent:hover{transform:none;background:#003d57;box-shadow:0 8px 18px #002c3f38}.city-dropdown{border-radius:8px;max-height:220px}.search-assurance-row{display:grid;grid-template-columns:1fr;gap:8px;padding:12px 4px 0;color:var(--booking-primary);font-size:12px}.seat-preference-row{align-items:flex-start;flex-direction:column;gap:9px;min-height:0}.seat-preference-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.seat-preference-chip{min-width:0;justify-content:center;padding:0 10px}}@media(max-width:480px){.search-bus-wrapper{margin-top:-118px;padding:0 12px}.search-card-figma{border-radius:0 0 8px 8px}.search-field-figma{padding:14px 16px;gap:12px}.field-icon-img{width:32px;height:32px}.swap-btn-figma{width:36px;height:36px;margin:-18px 0}.field-input-figma,.field-value-figma{font-size:14px}.field-label-figma{font-size:10px}.quick-dates-figma{padding:4px;gap:4px}.quick-date-btn-figma{min-height:34px;padding:0 10px;font-size:12px;border-radius:6px}.date-section-wrapper .search-field-figma.date-field{padding:14px 16px 10px}.search-btn-figma,.search-btn-figma.search-btn-prominent{width:100%;margin:0;padding:0 14px;font-size:14px;border-radius:8px}.city-dropdown{border-radius:8px;max-height:200px}.city-dropdown li{padding:10px 14px;font-size:13px}}@media(max-width:360px){.search-card-figma{border-radius:0 0 8px 8px}.search-field-figma{padding:12px 14px}.field-icon-img{width:28px;height:28px}.swap-btn-figma{width:32px;height:32px;margin:-16px 0}.swap-icon{width:16px;height:16px}.quick-dates-figma{padding:4px;gap:4px}.quick-date-btn-figma{padding:0 8px;font-size:11px}.search-btn-figma,.search-btn-figma.search-btn-prominent{width:100%;margin:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.search-bus-wrapper.compact{margin-top:0;margin-bottom:18px;padding:0}.search-bus-wrapper.compact .search-container-figma{max-width:100%}.search-bus-wrapper.compact .search-card-figma{display:grid;grid-template-columns:minmax(145px,1.15fr) 40px minmax(145px,1.15fr) minmax(282px,.95fr) minmax(136px,.5fr);align-items:center;gap:10px;border:1px solid #dce6eb;border-radius:12px;padding:12px;box-shadow:0 10px 24px #002c3f0f;animation:none;background:#fff}.search-bus-wrapper.compact .search-main-row{display:contents}.search-bus-wrapper.compact .search-field-figma{min-height:54px;padding:10px 12px;border-color:#dbe6eb;border-radius:10px;background:#f8fbfc;box-shadow:none;overflow:hidden}.search-bus-wrapper.compact .search-field-figma:hover,.search-bus-wrapper.compact .search-field-figma:focus-within{border-color:#9c763575;background:#fff;box-shadow:0 0 0 3px #ceb45f1f}.search-bus-wrapper.compact .field-label-figma{font-size:10px;color:#647783}.search-bus-wrapper.compact .field-input-figma{font-size:14px;color:#082f42;overflow:hidden;text-overflow:ellipsis}.search-bus-wrapper.compact .field-input-figma::placeholder{color:#7b8a93}.search-bus-wrapper.compact .field-value-figma{font-size:14px;color:#082f42;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-bus-wrapper.compact .field-icon-img{width:32px;height:32px;filter:none}.search-bus-wrapper.compact .swap-btn-figma{width:40px;height:40px;border-color:#eadfbe;background:#fffaf0;color:#9c7635;box-shadow:none}.search-bus-wrapper.compact .swap-btn-figma:hover{background:#f5eddb;border-color:#ceb45f}.search-bus-wrapper.compact .swap-icon{width:16px;height:16px}.search-bus-wrapper.compact .quick-dates-figma{display:grid;grid-template-columns:repeat(3,minmax(42px,1fr));gap:5px;min-height:46px;padding:0;border-color:transparent;background:transparent;box-shadow:none}.search-bus-wrapper.compact .quick-date-btn-figma{min-width:0;min-height:46px;padding:5px 8px;border-color:#dbe6eb;border-radius:10px;background:#fff;color:#647783}.search-bus-wrapper.compact .quick-date-btn-figma strong{font-size:14px}.search-bus-wrapper.compact .quick-date-btn-figma span{margin-top:2px;font-size:9px}.search-bus-wrapper.compact .quick-date-btn-figma:hover{background:#fffaf0;color:#9c7635}.search-bus-wrapper.compact .quick-date-btn-figma.active{background:#ceb45f;border-color:var(--booking-gold);color:#002c3f;box-shadow:none}.search-bus-wrapper.compact .date-section-wrapper{display:grid;grid-template-columns:minmax(130px,1fr) minmax(148px,.95fr);align-items:center;gap:8px;width:100%;min-width:0}.search-bus-wrapper.compact .search-btn-figma{grid-row:auto;grid-column:auto;border-radius:10px;min-height:54px;min-width:0;padding:0 14px;font-size:13px;background:#002c3f;box-shadow:none}.search-bus-wrapper.compact .search-btn-figma:hover{background:#073c52;box-shadow:0 8px 18px #002c3f2e}.search-bus-wrapper.compact .city-dropdown{background:#fff}.search-bus-wrapper.compact .city-dropdown li,.search-bus-wrapper.compact .recent-list li,.search-bus-wrapper.compact .suggestions-list li{color:#333}@media(max-width:968px){.search-bus-wrapper.compact .search-card-figma{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);padding:12px 16px}.search-bus-wrapper.compact .date-section-wrapper,.search-bus-wrapper.compact .search-btn-figma{grid-column:1 / -1}.search-bus-wrapper.compact .field-icon-img{width:28px;height:28px}}@media(max-width:768px){.search-bus-wrapper.compact .search-card-figma{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.search-bus-wrapper.compact .search-field-figma{flex:unset;min-width:0}.search-bus-wrapper.compact .date-section-wrapper{grid-template-columns:1fr}.search-bus-wrapper.compact .search-btn-figma{grid-column:auto}}.search-bus-wrapper:not(.compact){margin-top:-122px;margin-bottom:70px}.search-bus-wrapper:not(.compact) .search-container-figma{max-width:1200px}.search-bus-wrapper:not(.compact) .search-module-header{padding:20px 24px 17px;border-top:3px solid #e2c565;border-radius:18px 18px 0 0;box-shadow:0 18px 40px #001f2d1a}.search-bus-wrapper:not(.compact) .search-card-figma{border-radius:0 0 18px 18px;box-shadow:0 24px 64px #001f2d29}.search-bus-wrapper:not(.compact) .search-field-figma,.search-bus-wrapper:not(.compact) .quick-date-btn-figma,.search-bus-wrapper:not(.compact) .seat-preference-chip{border-radius:11px}.search-bus-wrapper:not(.compact) .search-field-figma{background:#fbfcfc}.search-bus-wrapper:not(.compact) .search-btn-figma.search-btn-prominent{border-radius:11px;background:linear-gradient(135deg,#003b53,#002c3f)}.search-bus-wrapper:not(.compact) .search-assurance-row{justify-content:center;gap:28px;padding-top:16px;color:#526a76;font-weight:700}@media(max-width:600px){.search-bus-wrapper:not(.compact){margin-top:-58px;margin-bottom:48px;padding:0 12px}.search-bus-wrapper:not(.compact) .search-module-header{display:none}.search-bus-wrapper:not(.compact) .search-card-figma{min-width:0;padding:12px;border-top:3px solid #e2c565;border-radius:16px;box-shadow:0 22px 52px #001f2d2e}.search-bus-wrapper:not(.compact) .search-main-row{min-width:0;gap:8px}.search-bus-wrapper:not(.compact) .search-container-figma,.search-bus-wrapper:not(.compact) .date-section-wrapper,.search-bus-wrapper:not(.compact) .quick-dates-figma{min-width:0}.search-bus-wrapper:not(.compact) .search-field-figma{min-height:58px;padding:10px 12px}.search-bus-wrapper:not(.compact) .field-icon-img{width:31px;height:31px}.search-bus-wrapper:not(.compact) .swap-btn-figma{width:32px;height:32px;margin:-13px 0;color:#8a672e}.search-bus-wrapper:not(.compact) .date-section-wrapper{gap:8px}.search-bus-wrapper:not(.compact) .quick-dates-figma{min-height:44px;padding:0}.search-bus-wrapper:not(.compact) .quick-date-btn-figma{min-height:44px;border-color:#d9e2e7;background:#fbfcfc}.search-bus-wrapper:not(.compact) .quick-date-btn-figma.active{border-color:#d7bd6d;background:#f3e5b7;color:#5d451f;box-shadow:none}.search-bus-wrapper:not(.compact) .search-btn-figma,.search-bus-wrapper:not(.compact) .search-btn-figma.search-btn-prominent{min-height:52px}.search-bus-wrapper:not(.compact) .seat-preference-row{padding-top:2px}.search-bus-wrapper:not(.compact) .seat-preference-label{font-size:11px;font-weight:800;text-transform:uppercase}.search-bus-wrapper:not(.compact) .seat-preference-chip{min-height:36px}.search-bus-wrapper:not(.compact) .search-assurance-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:12px 2px 0;text-align:center}.search-bus-wrapper:not(.compact) .search-assurance-row span{flex-direction:column;gap:4px;font-size:9px;line-height:1.3}}.our-service{position:relative;padding:92px 24px;overflow:hidden;background:radial-gradient(circle at 92% 4%,rgba(226,197,101,.14),transparent 24rem),#f7f9f8;color:#072e40}.our-service:before{content:"";position:absolute;top:0;left:50%;width:min(100% - 48px,1200px);height:1px;background:linear-gradient(90deg,transparent,rgba(0,44,63,.14),transparent);transform:translate(-50%)}.service-container{width:100%;max-width:1200px;margin:0 auto}.service-header{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:56px;align-items:end;margin-bottom:34px}.service-badge-text{display:block;margin-bottom:12px;color:#94702f;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.service-title{max-width:700px;margin:0;color:#052f41;font-family:Montserrat,sans-serif;font-size:clamp(30px,3vw,42px);font-weight:800;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}.service-summary{margin:0;color:#5f727c;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:500;line-height:1.75}.service-trust-bar{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:18px;padding:20px 22px;border:1px solid rgba(0,44,63,.1);border-radius:16px;background:#fff;box-shadow:0 14px 36px #002c3f0f}.service-trust-lead,.service-trust-points,.service-trust-points span{display:flex;align-items:center}.service-trust-lead{gap:12px}.service-trust-icon{display:grid;width:45px;height:45px;flex:0 0 45px;place-items:center;border-radius:13px;background:#002c3f;color:#efd77f}.service-trust-lead div{display:flex;flex-direction:column;gap:3px}.service-trust-lead strong{color:#052f41;font-family:Montserrat,sans-serif;font-size:14px;font-weight:800}.service-trust-lead div>span{color:#71818a;font-family:Plus Jakarta Sans,sans-serif;font-size:12px}.service-trust-points{flex-wrap:wrap;justify-content:flex-end;gap:10px 20px}.service-trust-points span{gap:7px;color:#38505d;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:700;white-space:nowrap}.service-trust-points svg{color:#a17c35}.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.svc-card{min-height:258px;padding:27px;border:1px solid rgba(0,44,63,.1);border-radius:18px;background:#fff;box-shadow:0 16px 40px #002c3f0f;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.svc-card:hover{border-color:#a17c355c;box-shadow:0 22px 48px #002c3f1a;transform:translateY(-4px)}.svc-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:34px}.svc-card-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#f4e7ba;color:#002c3f}.svc-card-number{color:#002c3f38;font-family:Montserrat,sans-serif;font-size:13px;font-weight:800}.svc-card-title{max-width:280px;margin:0 0 11px;color:#052f41;font-family:Montserrat,sans-serif;font-size:19px;font-weight:800;line-height:1.35}.svc-card-desc{margin:0;color:#657882;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;line-height:1.7}@media(max-width:900px){.our-service{padding:70px 20px}.service-header{grid-template-columns:1fr;gap:16px}.service-trust-bar{align-items:flex-start;flex-direction:column}.service-trust-points{justify-content:flex-start}.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-card:last-child{grid-column:1 / -1}}@media(max-width:600px){.our-service{padding:56px 16px}.service-header{margin-bottom:24px}.service-title{font-size:27px}.service-summary{font-size:14px}.service-trust-bar{gap:18px;padding:17px;border-radius:14px}.service-trust-points{display:grid;grid-template-columns:1fr;width:100%}.svc-grid{grid-template-columns:1fr}.svc-card,.svc-card:last-child{grid-column:auto;min-height:0;padding:22px;border-radius:15px}.svc-card-top{margin-bottom:22px}}.booking-steps{position:relative;padding:92px 24px;overflow:hidden;background:radial-gradient(circle at 86% 18%,rgba(226,197,101,.12),transparent 23rem),linear-gradient(145deg,#002c3f,#06394d);color:#fff}.booking-steps:after{content:"";position:absolute;right:-120px;bottom:-210px;width:420px;height:420px;border:1px solid rgba(226,197,101,.14);border-radius:50%;box-shadow:0 0 0 52px #e2c56509,0 0 0 104px #e2c56506}.booking-steps-container{position:relative;z-index:1;max-width:1200px;margin:0 auto}.booking-steps-header{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.7fr);gap:56px;align-items:end;margin-bottom:38px}.booking-steps-label{display:inline-block;margin-bottom:12px;color:#efd77f;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.booking-steps-title{max-width:680px;margin:0;color:#fff;font-family:Montserrat,sans-serif;font-size:clamp(30px,3vw,42px);font-weight:800;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}.booking-steps-subtitle{margin:0;color:#ebf6fab3;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;line-height:1.75}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.step-card{position:relative;min-height:290px;padding:28px;border:1px solid rgba(226,197,101,.18);border-radius:18px;background:#ffffff0e;box-shadow:inset 0 1px #ffffff0a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .25s ease,background .25s ease,transform .25s ease}.step-card:hover{border-color:#efd77f70;background:#ffffff16;transform:translateY(-4px)}.step-card-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:48px}.step-number{color:#efd77f;font-family:Montserrat,sans-serif;font-size:13px;font-weight:800;line-height:1}.step-icon-wrapper{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#e2c565;color:#002c3f;box-shadow:0 12px 26px #00121a33}.step-title{margin:0 0 12px;color:#fff;font-family:Montserrat,sans-serif;font-size:20px;font-weight:800;line-height:1.35}.step-description{margin:0;color:#ebf6fab3;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;line-height:1.7}.step-connector{position:absolute;top:50%;right:-24px;z-index:2;display:grid;width:34px;height:34px;place-items:center;border:4px solid #06394d;border-radius:50%;background:#e2c565;color:#002c3f;transform:translateY(-50%)}.steps-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:0 4px;color:#ebf6fa9e;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:600}.steps-footer a{display:inline-flex;align-items:center;gap:8px;color:#efd77f;font-weight:800;text-decoration:none}.steps-footer a:hover{color:#fff}@media(max-width:900px){.booking-steps{padding:70px 20px}.booking-steps-header{grid-template-columns:1fr;gap:16px}.steps-grid{grid-template-columns:1fr}.step-card{min-height:0}.step-card-heading{margin-bottom:28px}.step-connector{top:auto;right:50%;bottom:-25px;transform:translate(50%) rotate(90deg)}}@media(max-width:600px){.booking-steps{padding:56px 16px}.booking-steps-title{font-size:27px}.booking-steps-subtitle{font-size:14px}.step-card{padding:22px;border-radius:15px}.step-card-heading{margin-bottom:22px}.steps-footer{align-items:flex-start;flex-direction:column}}.bus-results{width:100%;background:#fff}.section-eyebrow{display:block;margin-bottom:12px;color:#94702f;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.popular-routes-section{padding:92px 24px;background:radial-gradient(circle at 12% 100%,rgba(226,197,101,.13),transparent 25rem),#fff}.popular-routes-shell,.travel-story-shell,.faq-shell{width:100%;max-width:1200px;margin:0 auto}.routes-header{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.routes-header h2,.travel-story-copy h2,.faq-heading h2{margin:0;color:#052f41;font-family:Montserrat,sans-serif;font-size:clamp(30px,3vw,42px);font-weight:800;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}.routes-header h2{max-width:720px}.routes-view-link{display:inline-flex;align-items:center;gap:8px;color:#6f5425;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.routes-view-link:hover{color:#002c3f}.popular-routes-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.route-card{position:relative;min-height:240px;padding:24px;overflow:hidden;border:1px solid rgba(0,44,63,.1);border-radius:18px;background:#f8faf9;color:inherit;text-decoration:none;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.route-card:after{content:"";position:absolute;right:-34px;bottom:-34px;width:112px;height:112px;border-radius:50%;background:#e2c56529}.route-card:hover{border-color:#94702f59;box-shadow:0 20px 45px #002c3f17;transform:translateY(-4px)}.route-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.route-index{color:#9a772f;font-family:Montserrat,sans-serif;font-size:12px;font-weight:800}.route-arrow{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(0,44,63,.1);border-radius:50%;background:#fff;color:#002c3f}.route-code{margin-bottom:10px;color:#80909a;font-family:Plus Jakarta Sans,sans-serif;font-size:10px;font-weight:800;letter-spacing:.08em}.route-cities{display:flex;align-items:center;gap:8px;color:#052f41;font-family:Montserrat,sans-serif;font-size:15px;font-weight:800}.route-line{display:inline-flex;align-items:center;color:#9a772f}.route-card p{position:relative;z-index:1;margin:12px 0 0;color:#71818a;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;line-height:1.5}.travel-story-section{padding:92px 24px;background:#f4f7f6}.travel-story-shell{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:clamp(54px,7vw,92px);align-items:center}.travel-story-visual{position:relative;min-height:480px;padding:26px 26px 56px;border-radius:26px;background:radial-gradient(circle at 74% 18%,rgba(226,197,101,.24),transparent 15rem),#002c3f}.travel-image-frame{display:flex;align-items:center;justify-content:center;width:100%;min-height:385px;overflow:hidden;border-radius:18px;background:#fff}.travel-image-frame img{display:block;width:92%;height:350px;object-fit:contain}.travel-visual-card{position:absolute;right:-24px;bottom:24px;display:flex;align-items:center;gap:12px;width:min(300px,calc(100% - 34px));padding:16px;border:1px solid rgba(0,44,63,.08);border-radius:15px;background:#fff;box-shadow:0 18px 44px #001f2d2e}.travel-visual-card>span{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:12px;background:#f2e2ac;color:#002c3f}.travel-visual-card div{display:flex;min-width:0;flex-direction:column;gap:3px}.travel-visual-card strong{color:#052f41;font-family:Montserrat,sans-serif;font-size:13px;font-weight:800}.travel-visual-card small{color:#72838c;font-family:Plus Jakarta Sans,sans-serif;font-size:10px}.travel-story-copy h2{max-width:620px;margin-bottom:20px}.travel-story-lead{margin:0 0 26px;color:#5f737e;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;line-height:1.75}.travel-benefits{display:grid;gap:13px;margin-bottom:25px}.travel-benefits div{display:flex;align-items:center;gap:10px;color:#284653;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:700}.travel-benefits svg{flex:0 0 auto;color:#9a772f}.travel-story-note{display:flex;align-items:flex-start;gap:11px;margin-bottom:28px;padding:15px 17px;border-left:3px solid #d7bd6d;border-radius:0 12px 12px 0;background:#fffdf7;color:#546b76;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;line-height:1.6}.travel-story-note svg{flex:0 0 auto;margin-top:1px;color:#9a772f}.travel-story-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 20px;border-radius:11px;background:#002c3f;color:#fff;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 12px 24px #002c3f29;transition:background .2s ease,transform .2s ease}.travel-story-cta:hover{background:#07435a;color:#fff;transform:translateY(-2px)}.faq-section{padding:92px 24px 104px;background:#fff}.faq-shell{display:grid;grid-template-columns:minmax(240px,.55fr) minmax(0,1fr);gap:clamp(50px,8vw,100px);align-items:start}.faq-heading{position:sticky;top:120px}.faq-heading h2{margin-bottom:16px}.faq-heading p{margin:0;color:#6b7d86;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;line-height:1.7}.faq-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;padding:5px;border:1px solid rgba(0,44,63,.1);border-radius:13px;background:#f5f8f7}.faq-tab{flex:1 1 auto;min-height:40px;padding:0 14px;border:0;border-radius:9px;background:transparent;color:#617580;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;white-space:nowrap}.faq-tab:hover{color:#002c3f}.faq-tab.active{background:#fff;color:#002c3f;box-shadow:0 5px 14px #002c3f14}.faq-list{display:grid;gap:10px}.faq-item{overflow:hidden;border:1px solid rgba(0,44,63,.1);border-radius:14px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.faq-item.open{border-color:#94702f52;box-shadow:0 12px 28px #002c3f0f}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:72px;padding:17px 20px;border:0;background:transparent;color:#052f41;text-align:left}.faq-question>span{font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:800;line-height:1.5}.faq-icon{flex:0 0 auto;color:#9a772f;transition:transform .2s ease}.faq-item.open .faq-icon{transform:rotate(180deg)}.faq-answer{padding:0 54px 20px 20px;animation:faqReveal .2s ease}.faq-answer p{margin:0;color:#657983;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;line-height:1.7}@keyframes faqReveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.popular-routes-section,.travel-story-section,.faq-section{padding:72px 20px}.popular-routes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.travel-story-shell{grid-template-columns:1fr}.travel-story-visual{width:min(100%,620px);margin:0 auto}.faq-shell{grid-template-columns:1fr;gap:30px}.faq-heading{position:static}}@media(max-width:600px){.popular-routes-section,.travel-story-section,.faq-section{padding:56px 16px}.routes-header{align-items:flex-start;flex-direction:column;margin-bottom:24px}.routes-header h2,.travel-story-copy h2,.faq-heading h2{font-size:27px}.popular-routes-grid{display:flex;margin-right:-16px;padding-right:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.popular-routes-grid::-webkit-scrollbar{display:none}.route-card{min-width:min(82vw,310px);min-height:220px;scroll-snap-align:start}.travel-story-visual{min-height:390px;padding:18px 18px 48px;border-radius:20px}.travel-image-frame{min-height:310px}.travel-image-frame img{height:280px}.travel-visual-card{right:12px;bottom:18px}.travel-story-lead{font-size:14px}.travel-benefits div{align-items:flex-start;font-size:13px}.faq-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.faq-question{min-height:66px;padding:15px 16px}.faq-question>span{font-size:13px}.faq-answer{padding:0 42px 17px 16px}}.sr-page{background:#f4f6f8;padding:20px;font-family:Plus Jakarta Sans,sans-serif}.sr-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh;padding:40px 20px}.logo-loader{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center;margin-bottom:30px}.loader-logo{width:60px;height:60px;animation:logoPulse 1.5s ease-in-out infinite;z-index:2}.loader-ring{position:absolute;top:0;left:0;width:100%;height:100%;border:4px solid #f0f0f0;border-top:4px solid #9c7635;border-right:4px solid #d84e55;border-radius:50%;animation:ringRotate 1.2s linear infinite}@keyframes logoPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes ringRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-text{font-size:16px;font-weight:600;color:#333;margin:0 0 8px}.loader-subtext{font-size:14px;color:#888;margin:0}.sr-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh;padding:40px 20px;text-align:center;max-width:480px;margin:0 auto}.sr-error-icon{width:88px;height:88px;border-radius:50%;background:#fff3f4;display:flex;align-items:center;justify-content:center;margin-bottom:24px;color:#d84e55;animation:errorPulse 2s ease-in-out infinite}@keyframes errorPulse{0%,to{box-shadow:0 0 #d84e5526}50%{box-shadow:0 0 0 16px #d84e5500}}.sr-error-title{font-size:24px;font-weight:700;color:#1a1a2e;margin:0 0 10px}.sr-error-message{font-size:14px;color:#666;margin:0 0 20px;line-height:1.5}.sr-error-route{display:flex;align-items:center;gap:12px;background:#f8f9fa;padding:10px 20px;border-radius:10px;font-size:14px;font-weight:600;color:#333;margin-bottom:20px}.sr-error-route-arrow{color:#d84e55;font-size:18px}.sr-error-tips{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:16px 20px;width:100%;text-align:left;margin-bottom:28px}.sr-error-tips-title{font-size:13px;font-weight:700;color:#92400e;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.sr-error-tips ul{list-style:none;padding:0;margin:0}.sr-error-tips li{font-size:13px;color:#78350f;padding:4px 0 4px 18px;position:relative;line-height:1.4}.sr-error-tips li:before{content:"•";position:absolute;left:4px;color:#f59e0b;font-weight:700}.sr-error-actions{display:flex;gap:12px;width:100%}.sr-error-btn-home,.sr-error-btn-retry{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.sr-error-btn-home{background:#f3f4f6;color:#374151}.sr-error-btn-home:hover{background:#e5e7eb}.sr-error-btn-retry{background:#9c7635;color:#fff}.sr-error-btn-retry:hover{background:#7d5e2a}.no-buses-container{display:flex;align-items:center;justify-content:center;min-height:80vh;padding:40px 20px}.no-buses-content{text-align:center;max-width:500px;background:#fff;padding:50px 40px;border-radius:20px;box-shadow:0 10px 40px #00000014}.no-buses-icon{margin-bottom:10px}.no-buses-logo{width:80px;height:auto;opacity:.9}.no-buses-illustration{margin-bottom:24px}.bus-illustration{width:180px;height:auto;opacity:.6}.no-buses-title{font-size:24px;font-weight:700;color:#333;margin:0 0 12px}.no-buses-message{font-size:14px;color:#666;margin:0 0 20px;line-height:1.5}.no-buses-route{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 24px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;margin-bottom:12px}.route-from,.route-to{font-size:16px;font-weight:600;color:#333}.route-arrow{font-size:18px;color:#9c7635}.no-buses-date{font-size:14px;color:#888;margin:0 0 24px}.no-buses-suggestions{text-align:left;background:#fff8e1;padding:16px 20px;border-radius:10px;margin-bottom:28px;border-left:4px solid #ffc107}.no-buses-suggestions p{font-size:14px;color:#333;margin:0 0 10px}.no-buses-suggestions ul{margin:0;padding-left:20px}.no-buses-suggestions li{font-size:13px;color:#666;margin-bottom:6px;line-height:1.4}.no-buses-suggestions li:last-child{margin-bottom:0}.modify-search-btn{padding:14px 32px;background:linear-gradient(135deg,#9c7635,#b8912e);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #9c76354d}.modify-search-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #9c763566;background:linear-gradient(135deg,#b8912e,#9c7635)}.sr-layout{max-width:1200px;margin:auto;display:grid;grid-template-columns:260px 1fr;gap:20px}.mobile-filter-fab,.mobile-filter-overlay{display:none}.filters-panel{background:#fff;padding:16px;border-radius:6px}.bus-summary-card{background:linear-gradient(135deg,#002c3f,#004d6d);color:#fff;padding:16px;border-radius:8px;margin-bottom:20px;box-shadow:0 4px 12px #002c3f33}.bus-summary-card h3{font-size:16px;font-weight:700;margin:0 0 6px;display:flex;align-items:center;gap:8px}.bus-summary-card p{font-size:12px;color:#fffc;margin:0 0 12px;line-height:1.4}.bus-summary-breakdown{display:flex;flex-direction:column;gap:8px;font-size:13px}.bus-summary-breakdown span{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-top:1px solid rgba(255,255,255,.1)}.bus-summary-breakdown span b{font-weight:700;color:#7fd8f3}.back-button{display:flex;align-items:center;gap:6px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:8px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:12px;width:100%;justify-content:center}.back-button:hover{background:#ffffff40;border-color:#fff6}.filters-header{display:flex;justify-content:space-between;align-items:center}.filters-header h4{font-size:15px}.clear-all{font-size:13px;color:#9aa0a6;cursor:pointer}.filter-block{margin-top:20px;padding-bottom:16px;border-bottom:1px solid #ececec}.filter-title{font-size:13px;font-weight:600;margin-bottom:12px;display:flex;align-items:center;gap:8px}.filter-icon{font-size:14px;color:#0f2a3a}.filter-search-input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;margin-bottom:10px;outline:none;transition:border-color .2s ease}.filter-search-input:focus{border-color:#0f2a3a}.filter-search-input::placeholder{color:#999}.filter-scroll-list{max-height:200px;overflow-y:auto;padding-right:4px}.filter-scroll-list::-webkit-scrollbar{width:4px}.filter-scroll-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.filter-scroll-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.filter-empty-text{margin:8px 0 0;color:#8a8f95;font-size:12px}.filter-scroll-list::-webkit-scrollbar-thumb:hover{background:#999}.price-slider{width:100%;height:2px;accent-color:#0f2a3a}.price-values{display:flex;justify-content:space-between;font-size:12px;color:#666;margin-top:6px}.bus-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.bus-type-box{background:#f3f5f8;padding:8px;font-size:12px;border-radius:6px;text-align:center;cursor:pointer;border:1px solid transparent}.bus-type-box.active{background:#e6f4f1;border-color:#9fd3c7;color:#0f2a3a}.departure-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.departure-box{background:#f3f5f8;padding:8px;font-size:12px;border-radius:6px;cursor:pointer;text-align:center;border:1px solid transparent}.departure-box.active{background:#e6f4f1;border-color:#9fd3c7}.check-row{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:6px}.sr-results{display:flex;flex-direction:column;gap:14px}.route-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#002c3f,#003d54);border-radius:12px;margin-bottom:8px}.route-header-left h2{margin:0 0 4px;font-size:20px;font-weight:700;color:#fff;letter-spacing:.5px}.route-header-left p{margin:0;font-size:13px;color:#ffffffb3}.results-count{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1a3c4d0d;border-radius:8px;margin-bottom:8px}.results-count p{margin:0;font-size:14px;font-weight:500;color:#1a3c4d}.session-timer{display:flex;align-items:center;gap:10px;background:#ffffff1a;border:1px solid rgba(190,149,31,.3);border-radius:10px;padding:10px 16px;color:#fff;transition:all .3s ease}.session-timer svg{color:#be951f;flex-shrink:0}.timer-content{display:flex;flex-direction:column;align-items:flex-end}.timer-label{font-size:10px;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.timer-value{font-size:20px;font-weight:700;font-family:SF Mono,Monaco,Consolas,monospace;color:#be951f;letter-spacing:1px}.session-timer.warning{background:#fbbf2426;border-color:#fbbf2480}.session-timer.warning .timer-value{color:#fbbf24}.session-timer.warning svg{color:#fbbf24;animation:pulse 1s ease-in-out infinite}.session-timer.critical{background:#ef444426;border-color:#ef444480}.session-timer.critical .timer-value{color:#ef4444;animation:blink .5s ease-in-out infinite}.session-timer.critical svg{color:#ef4444;animation:pulse .5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.date-selector{display:flex;align-items:stretch;background:#002c3f;border-radius:0;overflow:hidden;border:none;min-height:70px}.date-nav{background:transparent;border:none;padding:0 16px;cursor:pointer;color:#be951f;display:flex;align-items:center;justify-content:center;transition:color .2s}.date-nav:hover{color:#fff}.date-nav svg{width:18px;height:18px}.date-items-wrapper{display:flex;flex:1;align-items:stretch}.date-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 16px;cursor:pointer;transition:background .2s;background:transparent;border:none}.date-item:hover{background:#be951f33}.date-item.active{background:#be951f}.date-item .day{font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:300;color:#ffffffa6;margin-bottom:4px}.date-item.active .day{color:#002c3f}.date-item .date{font-family:Montserrat,sans-serif;font-size:16px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:-.5px}.date-item.active .date{color:#002c3f}.sr-card{background:#fff;border-radius:0;border:1px solid #e4e4e4;padding:0;display:flex;flex-direction:column;box-shadow:0 2px 8px #0000000a;position:relative;overflow:hidden}.card-header-row{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 18px 8px;border-bottom:1px solid #f0f0f0;background:#fff}.operator-route{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.operator-name{font-family:Montserrat,sans-serif;font-size:18px;font-weight:700;color:#000;margin:0}.route-breadcrumb{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.route-label,.route-point{font-family:Montserrat,sans-serif;font-size:11px;font-weight:400;color:#000;text-transform:lowercase}.route-point.other-stops{text-transform:uppercase;font-size:10px}.route-arrow{font-size:16px;color:#666}.discount-ribbon{display:none!important}.ribbon-content{background:linear-gradient(90deg,#1a1a1a,#2d2d2d);color:#fff;font-family:Montserrat,sans-serif;font-size:11px;font-weight:400;padding:4px 10px 14px;text-align:center;white-space:nowrap;line-height:1.3;clip-path:polygon(100% 0%,100% 100%,50% 80%,0% 100%,0% 0%)}.ribbon-content strong{font-weight:700;color:#be951f}.ribbon-zigzag{display:none}.sr-card.cheapest-bus{border-color:#ffc107;background:linear-gradient(to right,#fffbf0,#fff 50%)}.cheapest-badge{display:flex;align-items:center;gap:4px;background:linear-gradient(135deg,#ffb800,orange);color:#fff;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;padding:6px 10px;border-radius:4px;white-space:nowrap;box-shadow:0 2px 8px #ff98004d}.bus-summary-card,.flight-summary-card{background:#fff;border:1px solid var(--flight-border, #dfe7eb);border-radius:14px;padding:18px;box-shadow:0 20px 55px #002c3f14;margin-bottom:18px}.bus-summary-card h3{margin:0 0 6px;color:var(--flight-navy, #002c3f);font-family:Montserrat,sans-serif;font-size:18px;font-weight:800}.bus-summary-card p{margin:0 0 12px;color:#6f8088;font-size:13px}.bus-summary-breakdown{display:flex;flex-direction:column;gap:8px}.bus-summary-breakdown span{font-family:Montserrat,sans-serif;font-size:14px;color:#1d282f}.page-back-btn-inline{background:transparent;border:0;color:var(--flight-navy, #002c3f);font-weight:800;font-family:Montserrat,sans-serif;padding:6px 10px;margin-bottom:12px;cursor:pointer}.card-main-content{display:grid;grid-template-columns:minmax(320px,1fr) auto 1px auto;align-items:stretch;padding:14px 18px 18px;gap:0}.sr-info{padding-right:16px}.bus-number-badge{display:inline-flex;align-items:center;background:#ec9a19;border:1px solid #000000;border-radius:4px;padding:4px 12px;margin-bottom:8px;position:relative}.bus-number-badge .badge-dot{width:5px;height:5px;background:#000;border-radius:50%;position:absolute}.bus-number-badge .badge-dot.left{left:6px}.bus-number-badge .badge-dot.right{right:6px}.bus-number{font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;color:#000;padding:0 8px}.bus-type{font-family:Montserrat,sans-serif;font-size:14px;font-weight:400;color:#000;margin:0 0 10px}.time-row{display:flex;align-items:center;gap:0;margin-bottom:4px}.time-row .time{font-family:Montserrat,sans-serif;font-size:14px;font-weight:400;color:#000;white-space:nowrap}.location-row{display:flex;justify-content:space-between;align-items:flex-start;max-width:400px}.location-name{font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;color:#000;text-transform:uppercase}.location-name.location-end{text-align:right}.duration-connector{display:flex;align-items:center;flex:1;min-width:120px;max-width:250px;margin:0 12px}.duration-line-left{flex:1;height:2px;background:#000;min-width:30px}.duration-line-right{flex:1;height:2px;background:#000;min-width:30px;position:relative}.duration-line-right:after{content:"";position:absolute;right:-2px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:8px solid #000000;border-top:5px solid transparent;border-bottom:5px solid transparent}.duration-badge{font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;color:#000;white-space:nowrap;padding:2px 8px;background:#fff}.seat-preview{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:0 16px;gap:8px}.seat-layout-container{border:1px solid #c5c5c5;border-radius:6px;padding:6px 10px;display:flex;flex-direction:column;gap:0;overflow:hidden;background:#fff;min-width:320px}.seat-deck{display:flex;align-items:center;gap:10px;padding:6px 0;position:relative}.deck-label-wrapper{width:22px;display:flex;align-items:center;justify-content:center}.deck-label-text{writing-mode:vertical-rl;transform:rotate(180deg);font-family:Montserrat,sans-serif;font-size:11px;font-weight:400;color:#121;text-transform:capitalize;letter-spacing:.5px}.deck-seats{display:flex;flex-direction:column;gap:3px}.seat-row{display:flex;gap:5px}.seat-cell{width:32px;height:14px;border-radius:2px;display:block;border:1px solid transparent}.seat-cell.booked{background:#d9d9d9;border-color:#d9d9d9}.seat-cell.available{background:transparent;border-color:#4caf50}.seat-cell.ladies{background:transparent;border-color:#ff89be}.seat-cell.males{background:transparent;border-color:#2438b8}.steering-icon{position:absolute;right:5px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.6}.deck-divider{height:1px;background:#c5c5c5;width:calc(100% - 32px);margin:4px 0 4px 32px}.seats-info{display:flex;align-items:center;gap:8px;margin-top:4px}.seats-info .seat-icon{font-size:18px;color:#a37226}.seats-text{font-family:Montserrat,sans-serif;font-size:11px;font-weight:400;color:#a37226}.card-divider{width:2px;background:linear-gradient(180deg,transparent 0%,#c5c5c5 10%,#c5c5c5 90%,transparent 100%);align-self:stretch;margin:0 14px;min-height:140px}.price-section{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:150px;padding-left:14px}.starts-from-label{font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;color:#000;margin:0 0 2px}.price-row{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.old-price{font-family:Montserrat,sans-serif;font-size:14px;font-weight:400;color:#322d2d;text-decoration:line-through}.current-price{font-family:Montserrat,sans-serif;font-size:16px;font-weight:700;color:#000}.select-seat-btn{background:linear-gradient(180deg,#a37226 3%,#684208 90%);color:#fff;border:none;padding:8px 20px;font-family:Montserrat,sans-serif;font-size:14px;font-weight:600;border-radius:6px;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:all .2s ease;box-shadow:0 4px 8px #00000040;min-width:130px}.select-seat-btn:hover{transform:translateY(-1px);box-shadow:0 6px 12px #0000004d}.flight-results-page{--flight-navy: #002c3f;--flight-navy-soft: #073f54;--flight-gold: #9c7635;--flight-gold-bright: #d4b861;--flight-cream: #f8f2e3;--flight-border: #dfe7eb;min-height:100vh;padding:0 20px 44px;background:#f6f8fa}.flight-results-page,.flight-results-page *{box-sizing:border-box}.flight-result-page{min-height:70vh;display:grid;place-items:center}.flight-placeholder{width:min(520px,100%);padding:42px;border:1px solid var(--flight-border, #dfe7eb);border-radius:22px;background:#fff;text-align:center;box-shadow:0 20px 55px #002c3f14}.flight-placeholder-logo{width:92px;margin-bottom:20px}.flight-placeholder h2{margin:0 0 10px;color:#002c3f;font-size:26px}.flight-placeholder p{margin:0 0 22px;color:#6f8088;line-height:1.6}.flight-placeholder-button{border:0;border-radius:12px;background:linear-gradient(135deg,#d4b861,#9c7635);color:#fff;padding:12px 18px;font-weight:800;cursor:pointer}.flight-modify-panel{width:min(1580px,100%);margin:0 auto 34px;padding:30px 0 34px}.flight-search-types{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin:0 0 16px;color:#2a3035;font-size:16px;font-weight:700}.flight-search-type,.flight-direct-toggle,.flight-cabin-chip{display:inline-flex;align-items:center;gap:8px}.flight-radio-dot,.flight-direct-toggle span{display:grid;width:22px;height:22px;place-items:center;border:2px solid #a5afb6;border-radius:50%;background:#fff}.flight-search-type.active .flight-radio-dot{border:6px solid var(--flight-gold)}.flight-cabin-chip{color:var(--flight-navy)}.flight-direct-toggle{border:0;background:transparent;color:#2a3035;font:inherit;cursor:pointer}.flight-direct-toggle span{border-radius:6px}.flight-direct-toggle.active span{border-color:var(--flight-gold);background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,var(--flight-gold-bright),var(--flight-gold)) border-box;box-shadow:inset 0 0 0 5px #fff}.flight-modify-bar{display:grid;grid-template-columns:minmax(240px,1.45fr) 58px minmax(240px,1.45fr) minmax(190px,1fr) minmax(170px,.9fr) 170px;gap:0;overflow:hidden;border:5px solid var(--flight-gold-bright);border-radius:14px;background:var(--flight-gold-bright);box-shadow:0 17px 35px #002c3f17}.flight-modify-field,.flight-swap-button,.flight-modify-search{min-width:0;min-height:76px;border:0;border-right:1px solid #e7edf0;background:#fff}.flight-modify-field{display:flex;align-items:center;gap:12px;padding:12px 18px;color:#6b777d}.flight-modify-field svg,.flight-swap-button svg{flex:0 0 auto;color:var(--flight-gold)}.flight-modify-field span{min-width:0}.flight-modify-field small{display:block;margin-bottom:3px;color:#4f5d64;font-size:13px;font-weight:700}.flight-modify-field b{display:block;overflow:hidden;color:#1d282f;font-size:18px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.flight-swap-button{display:grid;place-items:center;cursor:pointer}.flight-modify-search{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-right:0;background:linear-gradient(135deg,var(--flight-navy-soft),var(--flight-navy));color:#fff;font-size:20px;font-weight:900;cursor:pointer}.flight-results-layout{display:grid;width:min(1580px,100%);grid-template-columns:370px minmax(0,1fr);gap:28px;margin:0 auto}.flight-filters-panel{display:flex;flex-direction:column;gap:28px}.flight-summary-card{padding:28px;border:1px solid var(--flight-border);border-radius:14px;background:#fff;box-shadow:0 12px 32px #002c3f0d}.flight-summary-card h3,.flight-filter-heading h3,.flight-filter-section h4{margin:0;color:#1d282f}.flight-summary-card h3{font-size:22px}.flight-summary-card p,.flight-filter-heading p{margin:8px 0 18px;color:#65737b;font-size:16px;line-height:1.45}.flight-summary-card button{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:8px;padding:13px 16px;border:1.5px solid var(--flight-gold);border-radius:8px;background:#fff;color:var(--flight-gold);font-size:16px;font-weight:900;cursor:pointer}.flight-summary-breakdown{display:grid;gap:8px;margin-top:14px;color:#586970;font-size:13px}.flight-summary-breakdown b{color:var(--flight-navy)}.flight-filter-heading{position:relative}.flight-filter-heading h3{font-size:22px}.flight-filter-heading button{border:0;background:transparent;color:var(--flight-gold);font-weight:900;cursor:pointer}.flight-filter-section{display:grid;gap:12px}.flight-filter-section h4{margin-bottom:4px;font-size:18px}.flight-filter-option{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:start;width:100%;border:0;background:transparent;color:#242b31;text-align:left;cursor:pointer}.flight-filter-radio,.flight-filter-check{width:22px;height:22px;margin-top:2px;border:2px solid #9fa9af;background:#fff}.flight-filter-radio{border-radius:50%}.flight-filter-check{border-radius:6px}.flight-filter-option.active .flight-filter-radio{border:6px solid var(--flight-gold)}.flight-filter-option.active .flight-filter-check{border-color:var(--flight-gold);background:var(--flight-gold);box-shadow:inset 0 0 0 4px #fff}.flight-filter-copy{display:grid;gap:3px}.flight-filter-copy b,.flight-filter-option strong{color:#2a3035;font-size:16px}.flight-filter-copy small{color:#68777f;font-size:14px}.flight-list-panel{min-width:0}.flight-sort-tabs{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;margin-bottom:20px;border:1px solid var(--flight-border);border-radius:12px;background:#fff}.flight-sort-tabs button{display:inline-flex;min-height:66px;align-items:center;justify-content:center;gap:7px;border:0;border-bottom:3px solid transparent;background:#fff;color:#222b31;font-size:18px;font-weight:800;cursor:pointer}.flight-sort-tabs button.active{border-bottom-color:var(--flight-gold);color:var(--flight-gold)}.flight-results-list{display:grid;gap:18px}.flight-result-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.65fr);overflow:hidden;border:1px solid var(--flight-border);border-radius:12px;background:#fff;box-shadow:0 11px 28px #002c3f0b}.flight-itinerary-side{min-width:0;padding:24px}.flight-badge-row{display:flex;flex-wrap:wrap;gap:8px;min-height:27px;margin-bottom:12px}.flight-badge-row span{padding:5px 8px;border-radius:6px;background:#eef8ef;color:#13833b;font-size:13px;font-weight:800}.flight-badge-row span.best{background:#f5efe0;color:var(--flight-gold)}.flight-badge-row .upgrade-badge{background:#eef8ef;color:#16803c}.flight-route-row{display:grid;grid-template-columns:50px minmax(105px,.72fr) minmax(150px,1fr) minmax(105px,.72fr);gap:14px;align-items:center}.flight-airline-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:10px;background:linear-gradient(145deg,var(--flight-navy),#0d536b);color:var(--flight-gold-bright);font-size:12px;font-weight:900;letter-spacing:.04em}.flight-time-block{min-width:0}.flight-time-block strong{display:block;color:#1f2529;font-size:22px;font-weight:900;line-height:1.15}.flight-time-block small{display:block;margin-top:5px;overflow:hidden;color:#66767d;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.flight-time-block.right{text-align:right}.flight-duration-line{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;color:#2d3b42;text-align:center}.flight-duration-line span{position:relative;display:block;height:1.5px;background:#a8b2b8}.flight-duration-line span:after{content:"";position:absolute;top:50%;width:8px;height:8px;border:1.5px solid #7f8b91;border-radius:50%;background:#fff;transform:translateY(-50%)}.flight-duration-line span:first-child:after{right:-2px}.flight-duration-line span:last-of-type:after{left:-2px}.flight-duration-line b{grid-column:2;padding:6px 11px;border-radius:7px;background:var(--flight-navy);color:#fff;font-size:14px;font-weight:900}.flight-duration-line small{grid-column:1 / -1;margin-top:-2px;color:#38464c;font-size:14px;font-weight:700}.flight-operator-line{margin:18px 0 0;color:#2f363b;font-size:15px;font-weight:700}.flight-fare-details{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px;padding-top:14px;border-top:1px dashed #d7e0e4}.flight-fare-details span{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:#f7fafb;color:#53656e;font-size:12px;font-weight:700}.flight-fare-side{display:grid;align-content:center;gap:16px;padding:24px;border-left:1px solid var(--flight-border);background:linear-gradient(180deg,#fff,#fffdf8)}.flight-fare-family{color:#2e3b42;font-size:16px;font-weight:800}.flight-inclusion-icons{display:flex;flex-wrap:wrap;gap:10px}.flight-inclusion-icons span{position:relative;display:inline-grid;width:28px;height:28px;place-items:center;color:#1f2d34}.flight-inclusion-icons span svg:last-child{position:absolute;right:-4px;bottom:-2px;color:#129449;fill:#fff}.flight-inclusion-icons b{display:grid;min-width:30px;height:30px;place-items:center;border-radius:999px;background:var(--flight-gold);color:#fff;font-size:13px}.flight-price-block{display:flex;align-items:center;justify-content:flex-end;gap:9px;color:#20272b}.flight-price-block strong{font-size:24px;font-weight:950}.flight-price-block svg{color:#54636b}.flight-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center}.flight-more-fares{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:transparent;color:var(--flight-gold);font-size:15px;font-weight:900;cursor:pointer}.flight-book-btn{min-height:48px;border:1.5px solid var(--flight-gold);border-radius:8px;background:#fff;color:var(--flight-gold);padding:0 20px;font-size:16px;font-weight:900;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.flight-book-btn:hover{transform:translateY(-1px);background:var(--flight-cream);box-shadow:0 8px 18px #9c76352e}.flight-book-btn:disabled{opacity:.65;cursor:wait}.flight-booking-error{width:min(1580px,100%);margin:0 auto 18px;padding:12px 16px;border:1px solid #efb1b1;border-radius:10px;background:#fff1f1;color:#9c2626;font-size:14px}.flight-no-filter-results{padding:54px 24px;border:1px solid var(--flight-border);border-radius:14px;background:#fff;text-align:center}.flight-no-filter-results h3{margin:0 0 8px;color:var(--flight-navy)}.flight-no-filter-results p{margin:0 0 18px;color:#71818a}.flight-no-filter-results button{border:0;border-radius:999px;background:var(--flight-gold);color:#fff;padding:11px 18px;font-weight:900;cursor:pointer}@media(max-width:1360px){.flight-results-layout{grid-template-columns:310px minmax(0,1fr);gap:22px}.flight-route-row{grid-template-columns:48px minmax(92px,.7fr) minmax(132px,1fr) minmax(92px,.7fr);gap:12px}.flight-time-block strong{font-size:20px}.flight-card-actions{grid-template-columns:1fr}}@media(max-width:1180px){.flight-modify-bar{display:flex;flex-wrap:wrap}.flight-modify-field.wide{flex:1 1 calc(50% - 32px)}.flight-swap-button{flex:0 0 58px}.flight-modify-field:not(.wide),.flight-modify-search{flex:1 1 220px}.flight-result-card{grid-template-columns:1fr}.flight-fare-side{grid-template-columns:1fr auto auto;align-items:center;border-top:1px solid var(--flight-border);border-left:0}.flight-card-actions{min-width:270px}}@media(max-width:960px){.flight-results-page{padding:0 14px 36px}.flight-modify-panel{margin-bottom:22px;padding-top:22px}.flight-search-types{flex-wrap:nowrap;gap:14px;overflow-x:auto;padding-bottom:4px;font-size:14px}.flight-search-type,.flight-direct-toggle,.flight-cabin-chip{flex:0 0 auto}.flight-results-layout{grid-template-columns:1fr}.flight-filters-panel{display:grid;grid-template-columns:1fr 1fr;gap:14px}.flight-summary-card,.flight-filter-section,.flight-filter-heading{padding:18px;border:1px solid var(--flight-border);border-radius:14px;background:#fff}.flight-summary-card{grid-column:1 / -1}.flight-filter-heading{display:flex;align-items:center;justify-content:space-between;grid-column:1 / -1;gap:12px}.flight-filter-heading p{margin:0}}@media(max-width:760px){.flight-modify-bar{display:grid;grid-template-columns:1fr;border-width:4px}.flight-modify-field,.flight-swap-button,.flight-modify-search{width:100%;min-height:62px;border-right:0;border-bottom:1px solid #e7edf0}.flight-swap-button{min-height:46px}.flight-modify-field b{font-size:16px}.flight-filters-panel{grid-template-columns:1fr}.flight-sort-tabs button{min-height:56px;font-size:15px}.flight-itinerary-side,.flight-fare-side{padding:18px}.flight-route-row{grid-template-columns:44px minmax(0,1fr);gap:10px 12px}.flight-airline-mark{grid-column:1;grid-row:1}.flight-duration-line{grid-column:1 / -1;margin:6px}.flight-time-block.right{grid-column:2;text-align:left}.flight-fare-side{grid-template-columns:1fr}.flight-price-block{justify-content:flex-start}.flight-card-actions{min-width:0}}@media(max-width:768px){.flight-results-page{padding:0 0 calc(var(--mobile-nav-height, 74px) + env(safe-area-inset-bottom) + 20px);background:#eef4f6}.flight-modify-panel{margin-bottom:14px;padding:14px 12px 6px}.flight-search-types{gap:10px;margin-bottom:12px;padding-bottom:8px;font-size:12px}.flight-radio-dot,.flight-direct-toggle span{width:18px;height:18px}.flight-modify-bar{gap:9px;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.flight-modify-field,.flight-swap-button,.flight-modify-search{min-height:56px;border:1px solid #dce7ec;border-radius:16px;box-shadow:0 8px 20px #002c3f0f}.flight-swap-button{display:none}.flight-modify-field{padding:10px 13px}.flight-modify-field small{font-size:11px}.flight-modify-field b{font-size:14px}.flight-modify-search{min-height:54px;font-size:16px}.flight-results-layout{gap:12px}.flight-filters-panel{display:grid;gap:10px;margin:0 12px}.flight-summary-card{display:none}.flight-filter-heading,.flight-filter-section{border-radius:18px;box-shadow:0 8px 20px #002c3f0d}.flight-filter-heading,.flight-filter-section{padding:14px}.flight-filter-section h4{font-size:15px}.flight-filter-copy b,.flight-filter-option strong{font-size:14px}.flight-filter-copy small{font-size:12px}.flight-list-panel{padding:0 12px}.flight-sort-tabs{position:sticky;top:calc(62px + env(safe-area-inset-top));z-index:15;margin:4px 0 12px;border-radius:18px;box-shadow:0 10px 24px #002c3f12}.flight-sort-tabs button{min-height:50px;font-size:14px}.flight-results-list{gap:12px}.flight-result-card{border-radius:20px;box-shadow:0 12px 28px #002c3f14}.flight-itinerary-side,.flight-fare-side{padding:16px}.flight-fare-side{gap:12px;background:#fffdf7}.flight-summary-card h3,.flight-filter-heading h3{font-size:20px}.flight-summary-card p,.flight-filter-heading p{font-size:14px}.flight-badge-row{min-height:0}.flight-badge-row span{font-size:11px}.flight-time-block strong{font-size:19px}.flight-time-block small,.flight-duration-line small,.flight-operator-line{font-size:13px}.flight-price-block strong{font-size:22px}.flight-card-actions{grid-template-columns:1fr;gap:10px}.flight-more-fares,.flight-book-btn{min-height:46px;border-radius:14px}.flight-book-btn{border-color:var(--flight-gold);background:var(--flight-gold);color:#fff}.flight-placeholder{width:calc(100% - 24px);padding:28px 18px;border-radius:24px}}.seats-left-indicator{display:flex;align-items:center;gap:4px;margin-top:8px;padding:4px 0}.seats-left-indicator .seats-icon{font-size:14px}.seats-left-indicator .seats-count{font-family:Montserrat,sans-serif;font-size:12px;font-weight:600;color:#e53935}.seats-available-btn{display:none}.no-results{text-align:center;padding:40px;background:#fff;border-radius:6px;color:#999}@media(max-width:1200px){.sr-card{gap:0}.card-main-content{grid-template-columns:minmax(280px,1fr) auto 1px auto;gap:0;padding:14px 16px 16px}.operator-name{font-size:20px}.route-breadcrumb{display:none}.seat-cell{width:28px;height:12px}.seat-layout-container{min-width:280px}}@media(max-width:1024px){.sr-layout{grid-template-columns:1fr}.filters-panel{display:none}.mobile-filter-fab{display:flex;position:fixed;bottom:calc(104px + env(safe-area-inset-bottom));right:16px;z-index:99;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#9c7635,#7a5c2a);color:#fff;border:none;align-items:center;justify-content:center;box-shadow:0 4px 16px #9c763566;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-filter-fab .filter-count-badge{position:absolute;top:-4px;right:-4px;background:#e53935;color:#fff;font-size:11px;font-weight:700;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Plus Jakarta Sans,sans-serif}.mobile-filter-overlay{display:block;position:fixed;inset:0;background:#00000080;z-index:1100;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.mobile-filter-overlay.open{opacity:1;visibility:visible}.mobile-filter-sheet{position:fixed;bottom:0;left:0;right:0;max-height:85vh;background:#fff;border-radius:16px 16px 0 0;z-index:1101;transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;overflow:hidden}.mobile-filter-overlay.open .mobile-filter-sheet{transform:translateY(0)}.mobile-filter-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eee;flex-shrink:0}.mobile-filter-sheet-header h3{font-family:Plus Jakarta Sans,sans-serif;font-size:18px;font-weight:700;color:#002c3f;margin:0}.mobile-filter-sheet-close{background:none;border:none;padding:8px;cursor:pointer;color:#666}.mobile-filter-sheet-body{flex:1;overflow-y:auto;padding:16px 20px 24px;-webkit-overflow-scrolling:touch}.mobile-filter-sheet-body .filter-block{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #f0f0f0}.mobile-filter-sheet-body .filter-block:last-child{border-bottom:none}.mobile-filter-sheet-footer{display:flex;gap:12px;padding:12px 20px;padding-bottom:max(20px,env(safe-area-inset-bottom));border-top:1px solid #eee;flex-shrink:0;background:#fff}.mobile-filter-clear-btn{flex:1;padding:14px;border:1.5px solid #ddd;border-radius:10px;background:#fff;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:600;color:#333;cursor:pointer}.mobile-filter-apply-btn{flex:1;padding:14px;border:none;border-radius:10px;background:linear-gradient(135deg,#9c7635,#7a5c2a);font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:600;color:#fff;cursor:pointer}.sr-card{gap:0}.card-main-content{grid-template-columns:1fr;gap:16px}.card-divider{display:none}.sr-info{padding-right:0;order:1}.seat-preview{order:3;padding:16px 0;border-top:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;flex-direction:row;justify-content:space-between;flex-wrap:wrap;gap:16px}.seat-layout-container{min-width:260px}.price-section{display:contents}.starts-from-label,.price-row{order:2}.select-seat-btn{order:4}.seats-left-indicator{order:5}.discount-ribbon{position:relative}}@media(max-width:768px){.sr-search-bar-desktop{display:none}.sr-page{padding:12px;padding-bottom:calc(220px + env(safe-area-inset-bottom))}.route-header{flex-direction:column;gap:12px;align-items:flex-start;padding:14px 16px}.route-header-left h2{font-size:18px}.session-timer{width:100%;justify-content:space-between;padding:8px 14px}.timer-content{align-items:flex-start;flex-direction:row;gap:8px;align-items:center}.timer-label{font-size:11px}.timer-value{font-size:18px}.date-selector{overflow-x:auto;-webkit-overflow-scrolling:touch}.date-item{min-width:70px;padding:8px 6px}.date-item .day{font-size:10px}.date-item .date{font-size:12px}.card-header-row{padding:10px 14px 8px}.operator-name{font-size:18px}.card-main-content{padding:12px 14px 16px}.bus-type{font-size:14px}.time-block .time{font-size:15px}.time-block .location-name{font-size:14px}.duration-connector{max-width:150px}.seat-preview{order:3;width:100%;flex-direction:column;align-items:center;border-top:none;border-bottom:none;padding:8px 0}.seat-layout-container{width:100%;max-width:320px;min-width:auto}.seat-cell{width:24px;height:10px}.price-section{display:contents}.starts-from-label{order:2;text-align:center}.price-row{order:2;justify-content:center}.select-seat-btn{order:4;width:100%;padding:12px 24px;font-size:16px}.seats-left-indicator{order:5;justify-content:center;width:100%}.ribbon-content{font-size:13px;padding:6px 12px 8px}.starts-from-label,.old-price{font-size:16px}.current-price{font-size:18px}}@media(max-width:480px){.sr-page{padding:8px}.date-selector{border-radius:4px}.date-nav{padding:0 8px;font-size:16px}.date-item{min-width:55px;padding:6px 4px}.card-header-row{padding:8px 12px}.operator-name{font-size:16px}.card-main-content{padding:10px 12px 14px}.bus-number-badge{padding:3px 10px}.bus-number{font-size:13px}.time-row{flex-wrap:wrap;gap:8px}.duration-connector{flex:0 0 100%;max-width:100%;order:2;margin:8px 0;justify-content:center}.seat-cell{width:20px;height:8px}.select-seat-btn{width:100%;padding:12px}.load-more-btn{width:100%;padding:14px}.route-header{padding:10px 12px}.route-header-left h2{font-size:16px}.bus-type{font-size:12px}.sr-card{border-radius:10px;margin-bottom:10px}.time-block .time{font-size:14px}.time-block .location-name{font-size:12px}.current-price{font-size:16px}.old-price{font-size:14px}}.sr-page{min-height:100vh;padding:28px 24px 56px;background:#f5f7f9}.sr-layout{max-width:1440px;grid-template-columns:290px minmax(0,1fr);gap:24px}.page-back-btn-inline{display:block;width:min(1440px,100%);margin:0 auto 12px;padding:8px 0;color:#52636c;text-align:left}.filters-panel{position:sticky;top:88px;align-self:start;padding:18px;border:1px solid #e1e8ec;border-radius:16px;box-shadow:0 10px 30px #002c3f0d}.bus-summary-card.flight-summary-card{margin:-18px -18px 20px;padding:22px 18px;border:0;border-bottom:1px solid #e6ecef;border-radius:16px 16px 0 0;box-shadow:none}.bus-summary-card.flight-summary-card h3{color:#17242b;font-size:20px}.bus-summary-card.flight-summary-card p{overflow:hidden;margin:7px 0 16px;color:#687981;text-overflow:ellipsis;white-space:nowrap}.bus-summary-card.flight-summary-card button{min-height:44px;border-color:#be951f;border-radius:10px;background:#be951f;color:#fff}.bus-summary-card.flight-summary-card button:hover{border-color:#a47f18;background:#a47f18;color:#fff}.bus-summary-breakdown{margin-top:14px;padding:4px 2px 0}.bus-summary-breakdown span{padding:8px 0;border-top:1px solid #edf1f3;color:#53646c}.bus-summary-breakdown span b{color:#00394e}.bus-route-overview{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border:1px solid #dce5e9;border-radius:16px;background:linear-gradient(135deg,#fff,#f7fafb);box-shadow:0 12px 32px #002c3f0f}.bus-route-eyebrow{color:#9c7635;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.bus-route-copy h1{display:flex;align-items:center;gap:12px;margin:6px 0 7px;color:#17242b;font-family:Montserrat,sans-serif;font-size:24px;line-height:1.25}.bus-route-copy h1 svg{flex:0 0 auto;color:#9c7635}.bus-route-copy p{display:flex;align-items:center;gap:7px;margin:0;color:#687981;font-size:13px}.bus-route-stat{display:flex;align-items:center;gap:10px;flex:0 0 auto;padding:12px 16px;border-radius:12px;background:#edf5f7;color:#14495c}.bus-route-stat span{display:flex;flex-direction:column;font-size:12px}.bus-route-stat strong{font-size:18px}.date-selector{min-height:68px;border-radius:14px;box-shadow:0 8px 22px #002c3f1f}.bus-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border:1px solid #e0e7ea;border-radius:14px;background:#fff}.bus-results-toolbar>div:first-child{display:flex;min-width:180px;flex-direction:column;gap:3px}.bus-results-toolbar strong{color:#17242b;font-size:15px}.bus-results-toolbar span{color:#75858c;font-size:12px}.bus-sort-tabs{display:flex;gap:4px;padding:4px;border-radius:10px;background:#f1f4f5}.bus-sort-tabs button{min-height:34px;padding:7px 12px;border:0;border-radius:7px;background:transparent;color:#65757d;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.bus-sort-tabs button:hover,.bus-sort-tabs button.active{background:#fff;color:#00394e;box-shadow:0 2px 8px #002c3f1a}.sr-card{border-color:#dde5e9;border-radius:16px;box-shadow:0 8px 26px #002c3f0e;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.sr-card:hover{transform:translateY(-2px);border-color:#c9d5da;box-shadow:0 14px 34px #002c3f1a}.sr-card.cheapest-bus{border-color:#d3b45d;background:linear-gradient(90deg,#fffdf6,#fff 38%)}.card-header-row{align-items:center;padding:16px 20px 12px;background:transparent}.operator-route{align-items:baseline;gap:12px}.operator-name{color:#16242b;font-size:17px}.route-point{color:#65757d;font-size:11px;text-transform:none}.card-main-content{padding:18px 20px 20px}.bus-type{color:#52636b;font-size:13px;font-weight:600}.time-row .time{color:#17242b;font-size:16px;font-weight:700}.location-name{max-width:46%;color:#65757d;font-size:11px;line-height:1.35;text-transform:none}.duration-line-left,.duration-line-right{height:1px;background:#9aabb2}.duration-line-right:after{border-left-color:#9aabb2;border-top-width:4px;border-bottom-width:4px}.duration-badge{color:#687981;font-weight:700}.price-section{min-width:174px}.starts-from-label{color:#687981;font-size:12px}.current-price{color:#17242b;font-size:24px;font-weight:800}.price-row{margin:3px 0 1px}.base-fare-note{margin-bottom:12px;color:#88969c;font-size:10px}.select-seat-btn{min-width:142px;min-height:42px;border-radius:9px;background:linear-gradient(135deg,#a37226,#7d5417);box-shadow:0 5px 14px #7d54173d}@media(max-width:1180px){.bus-results-toolbar{align-items:flex-start;flex-direction:column}.bus-sort-tabs{width:100%;overflow-x:auto}.bus-sort-tabs button{flex:1 0 auto}}@media(max-width:1024px){.filters-panel{display:none}.sr-layout{grid-template-columns:1fr}}@media(max-width:768px){.sr-page{padding:12px 12px calc(220px + env(safe-area-inset-bottom))}.page-back-btn-inline{padding-left:4px}.bus-route-overview{align-items:flex-start;padding:18px}.bus-route-copy h1{align-items:flex-start;flex-direction:column;gap:4px;font-size:19px}.bus-route-copy h1 svg{transform:rotate(90deg)}.bus-route-copy p{align-items:flex-start;line-height:1.45}.bus-route-stat{padding:10px}.bus-results-toolbar{padding:14px}.card-header-row{padding:14px 16px 10px}.card-main-content{padding:14px 16px 18px}.base-fare-note{order:2;width:100%;text-align:center}.bus-details-chips{padding:10px 14px}}@media(max-width:480px){.bus-route-stat svg{display:none}.bus-route-stat strong{font-size:16px}.current-price{font-size:22px}}.load-more-container{display:flex;justify-content:center;padding:24px 0;margin-top:8px}.load-more-btn{background:linear-gradient(135deg,#a37226,#c9944d);color:#fff;border:none;padding:14px 48px;font-size:15px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #a372264d}.load-more-btn:hover{background:linear-gradient(135deg,#8a5f1e,#a37226);transform:translateY(-2px);box-shadow:0 6px 20px #a3722666}.load-more-btn:active{transform:translateY(0);box-shadow:0 2px 10px #a372264d}.bus-details-chips{display:flex;align-items:center;gap:8px;padding:10px 18px;border-top:1px solid #f0f0f0;background:#fafafa;flex-wrap:wrap}.rating-chip{display:flex;align-items:center;gap:4px;background:linear-gradient(135deg,#fff8e6,#fff3d4);padding:4px 8px;border-radius:4px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;border:1px solid #f5e6c8}.rating-chip svg{flex-shrink:0}.rating-value{color:#333}.rating-divider{color:#ccc;margin:0 2px}.rating-count{color:#666;font-weight:500}.detail-chip{display:flex;align-items:center;gap:4px;padding:5px 10px;background:#fff;border:1px solid #e0e0e0;border-radius:16px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:500;color:#444;cursor:pointer;transition:all .2s ease}.detail-chip:hover{background:#f8f4ed;border-color:#d4c5a9;color:#9c7635}.detail-chip:hover svg{color:#9c7635}.detail-chip svg{color:#666;flex-shrink:0}.seat-selection-modal-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#002c3fcc,#0f172a8c),#00121cb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.seat-selection-modal{width:min(1180px,100%);max-height:calc(100dvh - 40px);overflow:hidden;border:1px solid rgba(222,232,238,.88);border-radius:18px;background:linear-gradient(180deg,#fff,#f7fafb);box-shadow:0 30px 90px #00141e70;animation:seatModalEnter .22s cubic-bezier(.22,1,.36,1)}.seat-selection-modal .selectseat-container{display:flex;flex-direction:column;max-height:calc(100dvh - 40px);border:0;border-radius:18px;box-shadow:none}.seat-selection-modal .selectseat-header{flex-shrink:0}.seat-selection-modal .selectseat-body{min-height:0;overflow-y:auto}@keyframes seatModalEnter{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.bus-details-modal-overlay{position:fixed;inset:0;background:#002c3f99;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bus-details-modal{background:#fff;border-radius:12px;width:100%;max-width:760px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #002c3f66}.modal-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid #e8e8e8;background:#fff}.modal-close-btn{background:none;border:none;color:#666;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close-btn:hover{background:#f0f0f0;color:#333}.modal-title{font-family:Montserrat,sans-serif;font-size:16px;font-weight:600;color:#333;margin:0}.modal-bus-info{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 20px;border-bottom:1px solid #f0f0f0;background:#fafafa}.modal-bus-name h3{font-family:Montserrat,sans-serif;font-size:18px;font-weight:700;color:#333;margin:0 0 4px}.modal-bus-name p{font-family:Montserrat,sans-serif;font-size:13px;color:#666;margin:0}.modal-bus-rating{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.modal-rating-badge{display:flex;align-items:center;gap:4px;background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;padding:4px 10px;border-radius:4px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:600}.modal-rating-count{display:flex;align-items:center;gap:4px;font-family:Montserrat,sans-serif;font-size:12px;color:#666}.modal-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:16px 20px;border-bottom:1px solid #e0e0e0;background:#fff}.modal-tabs::-webkit-scrollbar{display:none}.modal-tab{padding:12px 20px;background:#fff;border:1px solid #e0e0e0;border-radius:24px;font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;color:#555;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0;line-height:1.5;display:inline-flex;align-items:center;justify-content:center;height:auto;min-height:44px;overflow:visible}.modal-tab:hover{background:#f8f4ed;border-color:#d4c5a9}.modal-tab.active{background:linear-gradient(135deg,#9c7635,#b8912e);border-color:#9c7635;color:#fff}.modal-content{padding:16px 20px;overflow-y:auto;flex:1}.content-section-title{font-family:Montserrat,sans-serif;font-size:15px;font-weight:700;color:#333;margin:0 0 14px}.points-timeline{margin-bottom:20px}.timeline-item{display:flex;gap:10px;margin-bottom:0}.timeline-time{min-width:50px;text-align:right}.point-time{font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;color:#333;display:block}.point-date{font-family:Montserrat,sans-serif;font-size:10px;color:#999;display:block}.timeline-marker{display:flex;flex-direction:column;align-items:center;min-height:50px}.marker-dot{width:10px;height:10px;background:#fff;border:2px solid #9c7635;border-radius:50%;flex-shrink:0}.marker-line{width:2px;flex:1;background:linear-gradient(180deg,#9c7635,#be951f);margin-top:4px}.timeline-details{flex:1;padding-bottom:14px}.point-name{font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;color:#333;display:block;margin-bottom:2px}.point-address{font-family:Montserrat,sans-serif;font-size:11px;color:#666;display:block}.view-more-btn{width:100%;padding:10px;background:linear-gradient(135deg,#fff8e6,#fff3d4);border:1px solid #f5e6c8;border-radius:6px;color:#9c7635;font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;cursor:pointer;margin-top:8px;transition:all .2s}.view-more-btn:hover{background:linear-gradient(135deg,#fff3d4,#ffe9b8);border-color:#e6d4a5}.cancellation-table{border:1px solid #e8e8e8;border-radius:8px;overflow:hidden;margin-bottom:14px}.table-header{display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(135deg,#002c3f,#0a3d54);padding:10px 14px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:600;color:#fff}.table-subheader{display:grid;grid-template-columns:1fr 1fr;background:#f5f5f5;padding:4px 14px 10px;font-family:Montserrat,sans-serif;font-size:10px;color:#888;border-bottom:1px solid #e8e8e8}.table-row{display:grid;grid-template-columns:1fr 1fr;padding:10px 14px;border-bottom:1px solid #f0f0f0;font-family:Montserrat,sans-serif;font-size:12px}.table-row:last-child{border-bottom:none}.table-row:nth-child(2n){background:#fafafa}.cancellation-time{color:#333;font-weight:400;font-size:13px}.refund-amount{color:#9c7635;text-align:right;font-weight:500;font-size:13px}.cancellation-notes{background:linear-gradient(135deg,#fff8e6,#fff3d4);padding:12px 14px;border-radius:6px;border:1px solid #f5e6c8}.cancellation-notes p{font-family:Montserrat,sans-serif;font-size:11px;color:#666;margin:4px 0;display:flex;align-items:center;gap:6px}.cancellation-notes p svg{color:#9c7635;flex-shrink:0}.amenities-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.amenity-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;background:#f8f8f8;border-radius:10px;border:1px solid #eee;transition:all .2s}.amenity-item:hover{background:#f8f4ed;border-color:#e6d4a5}.amenity-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#9c7635}.amenity-name{font-family:Montserrat,sans-serif;font-size:10px;color:#555;text-align:center;line-height:1.3}.policy-content{display:flex;flex-direction:column;gap:0}.policy-item{display:flex;flex-direction:column;padding:16px 0 16px 16px;border-bottom:1px solid #f0f0f0;border-left:3px solid #d4a623;margin-bottom:12px;border-radius:0}.policy-item:last-child{border-bottom:none;margin-bottom:0}.policy-item h5{font-family:Montserrat,sans-serif;font-size:14px;font-weight:700;color:#333;margin:0 0 8px;display:block;width:100%}.policy-item p{font-family:Montserrat,sans-serif;font-size:13px;color:#666;line-height:1.6;margin:0;display:block;width:100%}@media(max-width:768px){.seat-selection-modal-overlay{align-items:flex-end;padding:0}.seat-selection-modal{width:100%;max-height:92dvh;border-radius:16px 16px 0 0;animation:seatModalSheetEnter .24s ease}.seat-selection-modal .selectseat-container{max-height:92dvh;border-radius:16px 16px 0 0}.seat-selection-modal .fare-action-bar{position:sticky;bottom:0;left:auto;right:auto;z-index:20;border-radius:14px}@keyframes seatModalSheetEnter{0%{transform:translateY(24px)}to{transform:translateY(0)}}.bus-details-modal-overlay{padding:0;align-items:flex-end}.bus-details-modal{max-width:100%;max-height:90vh;border-radius:16px 16px 0 0}.modal-tabs{padding:14px 16px;gap:8px}.modal-tab{padding:10px 16px;font-size:13px;line-height:1.5;border-radius:22px;min-height:40px;overflow:visible}.amenities-grid{grid-template-columns:repeat(3,1fr);gap:10px}.bus-details-chips{padding:8px 12px;gap:6px}.detail-chip{padding:4px 8px;font-size:10px;border-radius:12px}.detail-chip span{display:none}.rating-chip{padding:4px 6px;font-size:10px}}.session-expired-overlay{position:fixed;inset:0;background:#002c3fd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeInOverlay .3s ease}.bus-details-chips{justify-content:flex-start;padding:11px 20px;background:#f9fbfb}.detail-chip{min-height:30px;border-color:#dce4e7;border-radius:8px;color:#52636b}.sr-page{--sr-navy: #002c3f;--sr-navy-soft: #0c3f54;--sr-gold: #ceb45f;--sr-gold-dark: #9c7635;--sr-page-bg: #eef3f5;--sr-card: #ffffff;--sr-line: #dbe5ea;--sr-line-soft: #edf2f4;--sr-text: #18252d;--sr-muted: #63747d;--sr-soft: #f7fafb;min-height:100vh;padding:30px 24px 64px;background:linear-gradient(180deg,#f8fbfc 0%,var(--sr-page-bg) 260px),var(--sr-page-bg);color:var(--sr-text);font-family:Plus Jakarta Sans,system-ui,sans-serif}.sr-page,.sr-page *{box-sizing:border-box}.page-back-btn-inline{display:inline-flex;width:min(1440px,100%);min-height:34px;align-items:center;gap:6px;margin:0 auto 14px;padding:0;border:0;background:transparent;color:#53656e;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:15px;font-weight:800}.page-back-btn-inline:hover{color:var(--sr-navy)}.sr-layout{display:grid;width:min(1440px,100%);grid-template-columns:290px minmax(0,1fr);gap:24px;margin:0 auto}.sr-results{min-width:0;gap:16px}.sr-search-bar-desktop{position:relative;z-index:20}.sr-search-bar-desktop .search-bus-wrapper.compact{margin-bottom:2px}.filters-panel{position:sticky;top:106px;align-self:start;overflow:hidden;padding:0;border:1px solid var(--sr-line);border-radius:14px;background:var(--sr-card);box-shadow:0 10px 26px #002c3f0b}.bus-summary-card.flight-summary-card{margin:0;padding:22px 18px;border:0;border-bottom:1px solid var(--sr-line-soft);border-radius:0;background:linear-gradient(180deg,#fff,#f7fafb);box-shadow:none}.bus-summary-card.flight-summary-card h3{margin:0 0 8px;color:var(--sr-text);font-size:20px;letter-spacing:0}.bus-summary-card.flight-summary-card p{overflow:hidden;margin:0 0 16px;color:var(--sr-muted);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.bus-summary-card.flight-summary-card button{min-height:42px;border:0;border-radius:9px;background:#c8a11c;color:#fff;box-shadow:none}.bus-summary-card.flight-summary-card button:hover{background:#a98414}.bus-summary-breakdown{margin-top:14px;gap:0}.bus-summary-breakdown span{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid var(--sr-line-soft);color:#53656e;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:13px}.bus-summary-breakdown span b{color:var(--sr-navy)}.filters-header{padding:20px 18px 2px}.filters-header h4{margin:0;color:var(--sr-text);font-size:16px;font-weight:900}.clear-all{color:#98a6ad;font-size:12px;font-weight:800}.clear-all:hover{color:var(--sr-gold-dark)}.filter-block{margin:0 18px;padding:20px 0;border-bottom:1px solid var(--sr-line-soft)}.filter-block:last-child{border-bottom:0}.filter-title{margin-bottom:12px;color:#25323a;font-size:13px;font-weight:850}.filter-icon{color:var(--sr-navy)}.filter-search-input{min-height:40px;border:1px solid var(--sr-line);border-radius:9px;background:var(--sr-soft);color:var(--sr-text)}.filter-search-input:focus{border-color:#9c76358c;background:#fff;box-shadow:0 0 0 3px #ceb45f21}.price-slider{height:4px;accent-color:var(--sr-navy)}.price-values{margin-top:9px;color:#778891;font-weight:650}.bus-type-grid,.departure-grid{gap:9px}.bus-type-box,.departure-box{min-height:38px;display:grid;place-items:center;border:1px solid transparent;border-radius:9px;background:#f3f6f8;color:#475861;font-size:12px;font-weight:750}.bus-type-box:hover,.departure-box:hover{border-color:#d5e1e7;background:#fff}.bus-type-box.active,.departure-box.active{border-color:#ceb45f85;background:#fbf6e7;color:var(--sr-navy)}.check-row{min-height:30px;color:#475861;font-size:13px;line-height:1.35}.check-row input{accent-color:var(--sr-navy)}.filter-scroll-list{max-height:176px}.bus-route-overview{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 24px;border:1px solid var(--sr-line);border-radius:14px;background:var(--sr-card);box-shadow:0 10px 24px #002c3f0b}.bus-route-eyebrow{color:var(--sr-gold-dark);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.bus-route-copy h1{display:flex;min-width:0;align-items:center;gap:12px;margin:8px 0;color:var(--sr-text);font-size:clamp(20px,2vw,25px);font-weight:850;letter-spacing:0;line-height:1.18}.bus-route-copy h1 span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bus-route-copy h1 svg{flex:0 0 auto;color:var(--sr-gold-dark)}.bus-route-copy p{display:flex;align-items:center;gap:7px;margin:0;color:var(--sr-muted);font-size:13px}.bus-route-stat{min-width:104px;justify-content:center;padding:14px 16px;border-radius:12px;background:#eef6f8;color:var(--sr-navy)}.bus-route-stat strong{font-size:20px;line-height:1}.bus-route-stat span{gap:2px}.date-selector{min-height:58px;overflow:hidden;border:1px solid rgba(0,44,63,.08);border-radius:14px;background:var(--sr-navy);box-shadow:none}.date-nav{padding:0 16px;color:var(--sr-gold)}.date-nav:hover{background:#ffffff0f}.date-item{min-height:58px;padding:9px 12px}.date-item:hover{background:#ffffff14}.date-item.active{background:#c8a11c}.date-item .day{color:#ffffffad;font-size:11px;font-weight:500}.date-item .date{color:#fff;font-size:15px;font-weight:800;letter-spacing:0}.date-item.active .day,.date-item.active .date{color:var(--sr-navy)}.bus-results-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 16px;border:1px solid var(--sr-line);border-radius:14px;background:var(--sr-card);box-shadow:0 8px 20px #002c3f09}.bus-results-toolbar>div:first-child{display:grid;min-width:0;gap:3px}.bus-results-toolbar strong{color:var(--sr-text);font-size:15px;font-weight:900}.bus-results-toolbar span{color:var(--sr-muted);font-size:12px}.bus-sort-tabs{display:inline-flex;gap:3px;padding:4px;border-radius:11px;background:#eef3f5}.bus-sort-tabs button{min-height:34px;padding:7px 13px;border:0;border-radius:8px;background:transparent;color:#60717a;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:12px;font-weight:850}.bus-sort-tabs button:hover,.bus-sort-tabs button.active{background:#fff;color:var(--sr-navy);box-shadow:0 2px 8px #002c3f14}.sr-card{overflow:hidden;border:1px solid var(--sr-line);border-radius:14px;background:var(--sr-card);box-shadow:0 10px 24px #002c3f0b;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.sr-card:hover{border-color:#c6d5dc;box-shadow:0 16px 34px #002c3f14;transform:translateY(-1px)}.sr-card.cheapest-bus{border-color:#ceb45fc7;background:#fff}.sr-card.cheapest-bus:before{content:"";display:block;height:3px;background:var(--sr-gold)}.card-header-row{align-items:center;padding:16px 20px 13px;border-bottom:1px solid var(--sr-line-soft);background:#fff}.operator-route{min-width:0;align-items:center;gap:10px}.operator-name{margin:0;color:var(--sr-text);font-size:15px;font-weight:900}.route-breadcrumb{min-width:0}.route-point{max-width:150px;overflow:hidden;color:#72818a;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:11px;font-weight:700;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.route-arrow{color:#99a7ae}.cheapest-badge{gap:5px;padding:6px 10px;border:1px solid rgba(206,180,95,.45);border-radius:999px;background:#fff8e3;color:#805f14;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:11px;font-weight:900;box-shadow:none}.card-main-content{display:grid;grid-template-columns:minmax(340px,1fr) minmax(210px,300px) 1px minmax(150px,166px);align-items:center;gap:20px;padding:18px 20px}.sr-info{min-width:0;padding-right:0}.bus-type{margin:0 0 14px;color:#657681;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:13px;font-weight:800}.time-row{gap:8px;margin-bottom:8px}.time-row .time{color:var(--sr-text);font-size:17px;font-weight:900}.duration-connector{min-width:110px;max-width:250px;margin:0 6px}.duration-line-left,.duration-line-right{height:1px;background:#9baab2}.duration-line-right:after{border-left-color:#9baab2;border-top-width:4px;border-bottom-width:4px}.duration-badge{color:#657681;font-size:11px;font-weight:850;background:#fff}.location-row{max-width:420px}.location-name{max-width:46%;overflow:hidden;color:#63747d;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:12px;font-weight:750;line-height:1.35;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.seat-preview{min-width:0;padding:0}.mini-seat-preview-container{width:100%;min-width:0}.mini-seat-layout{max-width:100%;border-color:#dce6eb;background:#f9fbfc}.card-divider{width:1px;min-height:118px;margin:0;background:linear-gradient(180deg,transparent 0%,#d8e1e6 16%,#d8e1e6 84%,transparent 100%)}.price-section{min-width:0;align-items:flex-start;padding-left:0}.starts-from-label{color:#667781;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:12px;font-weight:750}.price-row{margin:4px 0 1px}.current-price{color:var(--sr-text);font-size:25px;font-weight:950;letter-spacing:0}.base-fare-note{margin:0 0 12px;color:#8b99a0;font-size:10px;font-weight:650}.select-seat-btn{width:100%;min-width:0;min-height:42px;padding:0 16px;border-radius:9px;background:#9c7635;box-shadow:none;color:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:13px;font-weight:900;letter-spacing:.04em}.select-seat-btn:hover{background:#805f27;box-shadow:0 8px 18px #9c763538}.seats-left-indicator{margin-top:9px;padding:0}.seats-left-indicator .seats-count{color:#d44535;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:12px;font-weight:850}.bus-details-chips{display:flex;gap:8px;padding:11px 20px;border-top:1px solid var(--sr-line-soft);background:#fbfcfd}.detail-chip{min-height:31px;padding:5px 10px;border:1px solid #dce6eb;border-radius:999px;background:#fff;color:#596b75;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:11px;font-weight:800}.detail-chip:hover{border-color:#ceb45f9e;background:#fffaf0;color:var(--sr-gold-dark)}.detail-chip svg{color:currentColor}.load-more-container{padding:22px 0 6px}.load-more-btn{min-height:46px;border-radius:10px;background:var(--sr-navy);box-shadow:none;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-weight:900}.load-more-btn:hover{background:var(--sr-navy-soft);box-shadow:0 10px 22px #002c3f2e}.no-results{border:1px solid var(--sr-line);border-radius:14px;background:#fff;color:var(--sr-muted)}@media(max-width:1320px){.card-main-content{grid-template-columns:minmax(300px,1fr) minmax(180px,230px) 1px minmax(146px,160px);gap:16px}.route-breadcrumb{display:none}}@media(max-width:1180px){.sr-layout{grid-template-columns:260px minmax(0,1fr);gap:18px}.bus-results-toolbar{align-items:stretch;grid-template-columns:1fr}.bus-sort-tabs{width:100%;overflow-x:auto}.bus-sort-tabs button{flex:1 0 auto}.card-main-content{grid-template-columns:minmax(0,1fr) minmax(146px,170px)}.seat-preview,.card-divider{display:none}}@media(max-width:1024px){.sr-page{padding:20px 16px 56px}.sr-layout{grid-template-columns:1fr}.filters-panel{display:none}.mobile-filter-fab{background:var(--sr-navy);box-shadow:0 8px 20px #002c3f38}}@media(max-width:768px){.sr-page{padding:14px 12px calc(var(--mobile-nav-height, 74px) + env(safe-area-inset-bottom) + 92px)}.page-back-btn-inline{min-height:32px;margin-bottom:10px;font-size:14px}.sr-search-bar-desktop{display:none}.bus-route-overview{grid-template-columns:1fr;padding:17px;gap:14px}.bus-route-copy h1{align-items:flex-start;flex-direction:column;gap:5px;font-size:20px}.bus-route-copy h1 svg{transform:rotate(90deg)}.bus-route-copy h1 span{white-space:normal}.bus-route-copy p{align-items:flex-start;line-height:1.45}.bus-route-stat{width:100%;justify-content:flex-start}.date-selector{min-height:56px;overflow-x:auto}.date-items-wrapper{min-width:560px}.date-item{min-width:70px;padding:8px 7px}.bus-results-toolbar{padding:13px}.bus-sort-tabs{display:grid;grid-template-columns:repeat(4,minmax(96px,1fr))}.card-header-row{padding:14px 15px 11px}.operator-route{align-items:flex-start;flex-direction:column;gap:5px}.operator-name{font-size:15px}.cheapest-badge{padding:6px 8px}.card-main-content{grid-template-columns:1fr;gap:14px;padding:15px}.time-row{flex-wrap:wrap;gap:8px}.duration-connector{flex:0 0 100%;order:2;max-width:100%;margin:4px 0}.location-row{max-width:none}.price-section{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 12px;padding:14px;border:1px solid var(--sr-line-soft);border-radius:12px;background:var(--sr-soft)}.starts-from-label,.price-row,.base-fare-note,.seats-left-indicator{order:initial;width:auto;text-align:left}.price-row{grid-row:1 / span 2;grid-column:2;justify-content:flex-end}.base-fare-note{margin:0}.select-seat-btn{grid-column:1 / -1;margin-top:10px}.seats-left-indicator{grid-column:1 / -1;justify-content:flex-start}.bus-details-chips{padding:10px 14px}}@media(max-width:480px){.sr-page{padding-right:10px;padding-left:10px}.bus-route-copy h1{font-size:18px}.bus-route-stat svg{display:block}.date-nav{padding:0 9px}.date-items-wrapper{min-width:500px}.bus-sort-tabs{grid-template-columns:repeat(4,minmax(88px,1fr))}.card-header-row{align-items:flex-start;gap:10px}.time-row .time{font-size:16px}.location-name{font-size:11px}.current-price{font-size:22px}.detail-chip span{display:none}}@media(max-width:768px){.seat-selection-modal-overlay{align-items:flex-end;padding:8px 0 0;background:#141e248f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.seat-selection-modal{width:100%;height:auto;max-height:calc(100dvh - 8px);border:0;border-radius:18px 18px 0 0;background:#fff;box-shadow:0 -12px 36px #141e242e}.seat-selection-modal .selectseat-container{height:auto;max-height:calc(100dvh - 8px);border-radius:18px 18px 0 0}.seat-selection-modal .selectseat-header{display:grid;grid-template-columns:minmax(0,1fr) 36px;grid-template-rows:auto auto;column-gap:10px;row-gap:5px;padding:13px 14px 11px 18px}.seat-selection-modal .selectseat-header:before{position:absolute;top:16px;bottom:16px;left:0;height:auto}.seat-selection-modal .selectseat-header h4{grid-column:1;grid-row:1;min-width:0;font-size:15px}.seat-selection-modal .bus-type-badge{grid-column:1;grid-row:2;justify-self:start;max-width:100%;margin:0;padding:4px 8px;font-size:10px}.seat-selection-modal .close-btn{grid-column:2;grid-row:1 / span 2;align-self:center}.seat-selection-modal .selectseat-body{display:flex;min-height:0;padding:10px;flex:0 1 auto;flex-direction:column;gap:12px;overflow-y:auto;overscroll-behavior:contain;background:#f5f7f8}}.sr-page{--sr-navy: #002c3f;--sr-navy-deep: #001f2d;--sr-navy-soft: #0a4359;--sr-gold: #dfc15f;--sr-gold-dark: #96702c;--sr-cream: #fff9e9;--sr-mint: #eaf5f2;--sr-page-bg: #edf3f4;--sr-card: #ffffff;--sr-line: #d8e3e7;--sr-line-soft: #eaf0f2;--sr-text: #092f40;--sr-muted: #657984;padding-top:24px;background:radial-gradient(circle at 88% 8%,rgba(223,193,95,.14),transparent 24rem),radial-gradient(circle at 8% 32%,rgba(0,91,119,.08),transparent 28rem),linear-gradient(180deg,#f9fbfc 0%,var(--sr-page-bg) 320px)}.page-back-btn-inline{width:min(1500px,100%);min-height:38px;gap:8px;margin-bottom:16px;color:#657984;font-size:13px;transition:color .18s ease,transform .18s ease}.page-back-btn-inline:hover{color:var(--sr-navy);transform:translate(-3px)}.sr-layout{width:min(1500px,100%);grid-template-columns:306px minmax(0,1fr);gap:26px}.filters-panel{top:104px;max-height:calc(100vh - 124px);overflow-x:hidden;overflow-y:auto;border-color:#002c3f1a;border-radius:20px;box-shadow:0 18px 46px #002c3f12;scrollbar-color:rgba(0,44,63,.22) transparent;scrollbar-width:thin}.filters-panel::-webkit-scrollbar{width:5px}.filters-panel::-webkit-scrollbar-thumb{border-radius:10px;background:#002c3f33}.bus-summary-card.flight-summary-card{position:relative;margin:0;padding:22px;overflow:hidden;border:0;border-radius:0;background:radial-gradient(circle at 100% 0,rgba(223,193,95,.22),transparent 9rem),linear-gradient(145deg,#002c3f,#073e53);color:#fff}.bus-summary-card.flight-summary-card:after{content:"";position:absolute;right:-44px;bottom:-66px;width:150px;height:150px;border:1px solid rgba(223,193,95,.16);border-radius:50%;box-shadow:0 0 0 22px #dfc15f09}.bus-summary-kicker,.bus-summary-date,.bus-summary-card.flight-summary-card button{display:flex;align-items:center}.bus-summary-kicker{position:relative;z-index:1;gap:9px;color:#efd77f;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.bus-summary-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#dfc15f;color:#002c3f}.bus-summary-route{position:relative;z-index:1;display:grid;gap:10px;margin:22px 0 14px}.bus-summary-route>div{display:grid;gap:3px}.bus-summary-route small{color:#ffffff8a;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.bus-summary-route strong{overflow:hidden;color:#fff;font-family:Montserrat,sans-serif;font-size:15px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.bus-summary-route-line{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;width:100%;color:#dfc15f}.bus-summary-route-line>span{height:1px;background:#dfc15f61}.bus-summary-date{position:relative;z-index:1;gap:7px;margin-bottom:16px;color:#ffffffad;font-size:11px;font-weight:700}.bus-summary-card.flight-summary-card button{position:relative;z-index:1;justify-content:center;gap:7px;width:100%;min-height:42px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:#ffffff17;color:#fff}.bus-summary-card.flight-summary-card button:hover{border-color:#dfc15f73;background:#dfc15f24}.bus-summary-breakdown{position:relative;z-index:1;margin-top:14px}.bus-summary-breakdown span{border-color:#ffffff1a;color:#ffffffa3}.bus-summary-breakdown span b{color:#efd77f}.filters-header{padding:21px 20px 3px}.filters-header h4{display:inline-flex;align-items:center;gap:8px;color:var(--sr-text);font-size:16px}.desktop-filter-count{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:var(--sr-navy);color:#fff;font-size:10px}.filter-block{margin:0 20px;padding:19px 0}.filter-title{color:#294652;font-size:12px;font-weight:850;letter-spacing:.01em}.bus-type-box,.departure-box{min-height:40px;border:1px solid #e4ebee;border-radius:11px;background:#f6f9fa;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.bus-type-box:hover,.departure-box:hover{border-color:#96702c57;background:var(--sr-cream);transform:translateY(-1px)}.bus-type-box.active,.departure-box.active{border-color:#dfc15f;background:#f5e7b4;color:#002c3f;box-shadow:inset 0 0 0 1px #96702c14}.filter-search-input{border-radius:11px;background:#f7fafb}.check-row{min-height:34px;margin-bottom:2px;border-radius:8px;color:#536873;transition:background .15s ease,color .15s ease}.check-row:hover{background:#f5f8f9;color:var(--sr-navy)}.sr-search-bar-desktop .search-bus-wrapper.compact .search-card-figma{border-radius:16px;box-shadow:0 14px 34px #002c3f12}.bus-route-overview{position:relative;grid-template-columns:minmax(0,1fr) minmax(330px,.55fr);min-height:185px;padding:30px;overflow:hidden;border:0;border-radius:22px;background:radial-gradient(circle at 92% 5%,rgba(223,193,95,.22),transparent 15rem),linear-gradient(135deg,#002c3f,#07445a);box-shadow:0 20px 48px #002c3f29}.bus-route-overview:before,.bus-route-overview:after{content:"";position:absolute;border:1px solid rgba(223,193,95,.12);border-radius:50%;pointer-events:none}.bus-route-overview:before{right:-80px;bottom:-170px;width:340px;height:340px;box-shadow:0 0 0 44px #dfc15f06}.bus-route-overview:after{top:-80px;left:44%;width:170px;height:170px}.bus-route-copy,.bus-route-stats{position:relative;z-index:1}.bus-route-eyebrow{display:inline-flex;align-items:center;gap:7px;color:#efd77f;font-size:10px}.bus-route-copy h1{max-width:760px;margin:12px 0 16px;color:#fff;font-size:clamp(25px,2.25vw,34px);letter-spacing:-.035em;line-height:1.12}.bus-route-copy h1 svg{width:27px;height:27px;color:#dfc15f}.bus-route-meta{display:flex;flex-wrap:wrap;gap:8px}.bus-route-meta>span{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid rgba(255,255,255,.13);border-radius:9px;background:#ffffff0f;color:#ffffffbd;font-size:10px;font-weight:700;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bus-route-meta svg{color:#efd77f}.bus-route-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bus-route-stat{display:flex;min-width:0;min-height:90px;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:12px 8px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:#ffffff13;color:#efd77f;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bus-route-stat span{display:flex;min-width:0;align-items:center;flex-direction:column;gap:3px;color:#ffffff94;font-size:9px;font-weight:700;line-height:1.2}.bus-route-stat strong{color:#fff;font-family:Montserrat,sans-serif;font-size:19px;font-weight:800}.date-selector{min-height:68px;border:0;border-radius:18px;background:var(--sr-navy-deep);box-shadow:0 12px 30px #002c3f1c}.date-item{position:relative;min-height:68px;padding:10px 12px}.date-item:after{content:"";position:absolute;right:12px;bottom:7px;left:12px;height:2px;border-radius:2px;background:transparent}.date-item.active{background:linear-gradient(135deg,#efd77f,#d7b54b)}.date-item.active:after{background:var(--sr-navy)}.date-item .day{font-size:10px}.date-item .date{font-size:14px}.bus-results-toolbar{min-height:70px;padding:13px 14px;border-radius:18px;box-shadow:0 10px 26px #002c3f0b}.bus-results-toolbar>div:first-child{display:flex;align-items:center;flex-direction:row;gap:11px}.results-toolbar-icon{display:grid;width:39px;height:39px;flex:0 0 39px;place-items:center;border-radius:12px;background:#f4e7ba;color:#002c3f!important}.results-toolbar-copy{display:grid;gap:3px}.results-toolbar-copy strong{font-size:14px}.bus-sort-tabs{gap:4px;padding:5px;border-radius:13px}.bus-sort-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:7px 12px;border-radius:9px;font-size:11px}.bus-sort-tabs button svg{color:#9b762f}.sr-card{border-color:#002c3f1c;border-radius:18px;box-shadow:0 12px 30px #002c3f0f;transform:translateZ(0)}.sr-card:hover{border-color:#96702c47;box-shadow:0 18px 38px #002c3f17;transform:translateY(-2px)}.sr-card.cheapest-bus{border-color:#dfc15fd1}.sr-card.cheapest-bus:before{height:4px;background:linear-gradient(90deg,#dfc15f,#f4df94 46%,#dfc15f)}.card-header-row{min-height:55px;padding:8px 14px;background:linear-gradient(180deg,#fff,#fbfcfc)}.operator-route{flex-wrap:nowrap;gap:10px}.operator-avatar{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:12px;background:linear-gradient(145deg,#073e53,#002c3f);color:#efd77f;font-family:Montserrat,sans-serif;font-size:14px;font-weight:850;box-shadow:0 9px 20px #002c3f29}.operator-copy{display:grid;min-width:0;gap:3px}.operator-title-line,.operator-meta,.card-header-badges,.availability-badge,.fare-kicker,.fare-assurance,.journey-insights,.seat-preview-heading{display:flex;align-items:center}.operator-title-line{min-width:0;gap:8px}.result-rank{color:#a58335;font-size:9px;font-weight:900;letter-spacing:.04em}.operator-name{overflow:hidden;color:var(--sr-text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.operator-meta{flex-wrap:wrap;gap:6px}.operator-meta span{display:inline-flex;align-items:center;gap:5px;color:#778a93;font-size:9px;font-weight:700}.operator-meta span+span:before{content:"";width:3px;height:3px;margin-right:2px;border-radius:50%;background:#bdc8cd}.card-header-badges{justify-content:flex-end;flex-wrap:wrap;gap:7px}.availability-badge,.cheapest-badge{min-height:25px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:850}.availability-badge{gap:5px;border:1px solid #cfe5dc;background:#eff8f4;color:#287155}.availability-badge.urgent{border-color:#f1d3ce;background:#fff1ef;color:#b44437}.cheapest-badge{background:var(--sr-cream)}.card-main-content{grid-template-columns:minmax(320px,1.25fr) minmax(190px,.62fr) minmax(175px,.5fr);align-items:center;gap:10px;padding:10px 14px}.card-divider{display:none}.sr-info{padding:0 4px 0 0}.journey-column-labels{display:flex;justify-content:space-between;margin-bottom:5px;color:#91a0a7;font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.time-row{gap:7px;margin:0 0 4px}.time-row .time{display:inline-flex;align-items:center;gap:6px;color:var(--sr-text);font-size:16px}.time-row .time i{display:block;width:7px;height:7px;flex:0 0 7px;border:2px solid #9b762f;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #dfc15f29}.duration-connector{min-width:95px;margin:0 5px}.duration-line-left,.duration-line-right{background:linear-gradient(90deg,#cad4d8,#8498a1)}.duration-badge{padding:1px 6px;color:#6b7d86;font-size:10px}.location-row{padding-left:15px}.location-name{color:#536873;font-size:10px}.journey-insights{flex-wrap:wrap;gap:6px;margin-top:9px}.journey-insights span{display:inline-flex;align-items:center;gap:5px;min-height:23px;padding:0 7px;border-radius:7px;background:#f3f7f8;color:#667983;font-size:9px;font-weight:750}.journey-insights svg{color:#9b762f}.seat-preview{display:flex;flex-direction:column;align-self:center;justify-content:center;min-height:72px;padding:7px 8px 6px;border:1px solid #e0e9ec;border-radius:12px;background:#f8fbfc}.seat-preview-heading{justify-content:space-between;width:100%;gap:12px;color:#2f4b58;font-size:10px;font-weight:850}.seat-preview-heading>span{display:inline-flex;align-items:center;gap:6px}.seat-preview-heading svg{color:#9b762f}.seat-preview-heading small{color:#438165;font-size:9px;font-weight:750}.seat-preview-map-viewport{position:relative;width:100%;min-height:53px;margin-top:2px;overflow:hidden}.seat-preview-map-viewport .mini-seat-preview-container{--cell-w: 8px;--cell-h: 5px;--cell-gap: 1.5px;width:100%;min-width:0;padding:0}.seat-preview-map-viewport .mini-seat-layout{width:100%;max-width:100%;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:2px 2px 0;border:0;background:transparent}.seat-preview-map-viewport .mini-deck{width:max-content;max-width:100%;gap:3px}.seat-preview-map-viewport .mini-deck.lower{order:1}.seat-preview-map-viewport .mini-deck.upper{order:2}.seat-preview-map-viewport .mini-deck .deck-label{min-width:9px;padding:2px 0;font-size:5px}.seat-preview-map-viewport .mini-deck .deck-label.driver-cell{min-width:11px;padding:0;font-size:10px}.seat-preview-map-viewport .deck-divider,.seat-preview-map-viewport .mini-seat-summary{display:none}.seat-preview-map-viewport .mini-preview-loading{padding:2px 0}.seat-preview-map-viewport .loading-shimmer{width:100%;height:38px}.seat-preview-map-viewport .mini-seat-fallback{min-height:38px;padding:6px 10px}.price-section{display:grid;grid-template-columns:minmax(66px,1fr) minmax(110px,1fr);align-self:center;align-items:center;min-height:78px;gap:0 8px;padding:8px 9px;border:1px solid #f0e2b8;border-radius:13px;background:radial-gradient(circle at 100% 0,rgba(223,193,95,.2),transparent 8rem),#fffbf0}.fare-kicker{grid-column:1 / -1;gap:5px;margin-bottom:2px;color:#8a6725;font-size:9px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.starts-from-label{grid-row:2;grid-column:1;margin-bottom:0;color:#768891;font-size:10px}.price-row{grid-row:3;grid-column:1;margin:0}.current-price{color:#082f40;font-size:24px}.base-fare-note{display:none}.select-seat-btn{display:flex;width:100%;min-width:0;grid-row:2 / span 2;grid-column:2;align-items:center;justify-content:space-between;min-height:37px;padding:0 8px;border-radius:9px;background:linear-gradient(135deg,#a77f34,#876321);letter-spacing:0;text-transform:none}.select-seat-btn span{white-space:nowrap}.select-seat-btn:hover{background:linear-gradient(135deg,#8f6a28,#6f501b)}.fare-assurance{display:none}.bus-details-chips{gap:6px;min-height:38px;padding:4px 14px;background:linear-gradient(180deg,#fcfdfd,#f7fafb)}.sr-results>.sr-card{margin-top:-5px}.bus-details-chips .route-breadcrumb{display:flex;min-width:0;align-items:center;gap:4px;margin-right:auto}.bus-details-chips .route-point{max-width:130px}.detail-chip{min-height:27px;border-radius:8px;background:#fff}.load-more-btn{min-height:50px;padding:0 30px;border-radius:12px;background:linear-gradient(135deg,#00374d,#002c3f)}@media(max-width:1360px){.sr-layout{grid-template-columns:280px minmax(0,1fr);gap:20px}.bus-route-overview{grid-template-columns:minmax(0,1fr) minmax(290px,.55fr)}.card-main-content{grid-template-columns:minmax(300px,1fr) minmax(175px,.58fr) minmax(165px,.47fr);gap:11px}.bus-details-chips .route-breadcrumb{display:none}}@media(max-width:1180px){.bus-route-overview{grid-template-columns:1fr}.bus-route-stats{width:min(100%,460px)}.card-main-content{grid-template-columns:minmax(0,1fr) minmax(180px,.48fr)}.seat-preview{display:none}}@media(max-width:1024px){.sr-layout{grid-template-columns:1fr}.filters-panel{display:none}}@media(max-width:768px){.sr-page{padding-top:12px}.page-back-btn-inline{min-height:34px;margin-bottom:8px}.bus-route-overview{min-height:0;padding:21px 18px;border-radius:18px}.bus-route-copy h1{gap:8px;margin:10px 0 14px;font-size:23px}.bus-route-copy h1 svg{width:20px;height:20px}.bus-route-meta{gap:6px}.bus-route-meta>span{min-height:29px;padding:0 8px;font-size:9px}.bus-route-meta>span:last-child{display:none}.bus-route-stats{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.bus-route-stat{min-height:74px;padding:9px 5px;border-radius:12px}.bus-route-stat strong{font-size:15px}.date-selector{min-height:60px;border-radius:15px}.date-item{min-height:60px}.bus-results-toolbar{grid-template-columns:1fr}.bus-sort-tabs{display:flex;width:100%;overflow-x:auto;scrollbar-width:none}.bus-sort-tabs button{flex:0 0 auto;min-width:max-content}.sr-card{border-radius:18px}.card-header-row{align-items:center;min-height:0;padding:9px 12px}.operator-route{align-items:center;flex-direction:row}.operator-avatar{width:35px;height:35px;flex-basis:35px;border-radius:10px}.operator-name{max-width:180px}.operator-meta span+span{display:none}.availability-badge{display:none}.card-main-content{grid-template-columns:1fr;gap:8px;padding:11px 12px}.journey-column-labels{display:flex}.time-row{flex-wrap:nowrap}.duration-connector{flex:1 1 auto;order:initial;margin:0 3px}.location-row{padding-left:14px}.journey-insights{margin-top:8px}.price-section{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:62px;gap:0 12px;padding:9px 10px}.fare-kicker{display:none}.starts-from-label{grid-column:1;grid-row:1}.price-row{grid-row:2;grid-column:1;justify-content:flex-start;margin:0}.base-fare-note{display:none}.select-seat-btn{grid-row:1 / span 2;grid-column:2;width:140px;margin:0}.fare-assurance{display:none}.bus-details-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-height:41px;padding:5px 10px}.bus-details-chips .route-breadcrumb{display:none}.detail-chip{justify-content:center;min-width:0;padding:5px}.mobile-filter-fab{right:18px;bottom:calc(var(--mobile-nav-height, 74px) + env(safe-area-inset-bottom) + 16px);display:inline-flex;width:auto;min-width:104px;height:48px;align-items:center;justify-content:center;gap:8px;padding:0 16px;border-radius:14px;background:linear-gradient(135deg,#003b52,#002c3f);color:#fff;font-size:12px;font-weight:850;box-shadow:0 12px 30px #002c3f47}.filter-count-badge{top:-7px;right:-7px}}@media(max-width:480px){.bus-route-copy h1{font-size:21px}.bus-route-meta>span:nth-child(2){display:none}.bus-route-stat svg{width:17px;height:17px}.results-toolbar-icon{display:none}.mobile-filter-fab{width:48px;min-width:48px;padding:0;border-radius:50%}.mobile-filter-fab>span:not(.filter-count-badge){display:none}.operator-name{max-width:135px;font-size:14px}.cheapest-badge{padding:0 8px}.time-row .time{font-size:15px}.time-row .time i{display:none}.duration-badge{padding:2px 4px;font-size:9px}.journey-insights span{font-size:8px}.detail-chip span{display:none}}.selectseat-container{background:#fff;border-radius:12px;border:1px solid #e0e0e0;box-shadow:0 4px 20px #00000014;overflow:hidden}.selectseat-header{padding:16px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background:#fafafa}.selectseat-header h4{margin:0;font-size:15px;color:#333;flex:1}.bus-type-badge{font-size:12px;color:#666;background:#f0f0f0;padding:4px 10px;border-radius:12px;margin-right:12px}.close-btn{cursor:pointer;color:#666;font-size:22px;transition:color .2s}.close-btn:hover{color:#333}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;min-height:400px}.loading-spinner{width:50px;height:50px;border:4px solid #f0f0f0;border-top:4px solid #d84e55;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:24px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{font-size:16px;font-weight:600;color:#333;margin:0 0 8px}.loading-subtext{font-size:13px;color:#888;margin:0}.amenities-loader{display:flex;gap:20px;margin-top:32px;padding:16px 28px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;border:1px solid #e0e0e0}.amenity-item{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:#444}.amenity-item span{font-size:18px}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;min-height:300px;text-align:center}.error-icon{font-size:56px;margin-bottom:16px}.error-text{font-size:16px;color:#d84e55;margin:0 0 8px;font-weight:500}.error-subtext{font-size:14px;color:#888;margin:0 0 24px}.retry-btn{padding:12px 28px;background:#d84e55;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.retry-btn:hover{background:#c43e45}.selectseat-body{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;padding:16px}.bus-view{background:#e9e9e9;border-radius:12px;padding:14px;overflow:hidden}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:11px;margin-bottom:14px;color:#555;padding:10px 14px;background:#f8f9fa;border-radius:8px}.legend span{display:flex;align-items:center;gap:8px;font-weight:500}.legend-icon{display:inline-block;position:relative;flex-shrink:0}.legend-icon.seat-icon{width:26px;height:26px;border-radius:4px;border:2px solid}.legend-icon.seat-icon:before{content:"";position:absolute;left:-5px;top:2px;bottom:2px;width:6px;background:inherit;border:2px solid;border-color:inherit;border-right:none;border-radius:3px 0 0 3px}.legend-icon.sleeper-icon{width:45px;height:18px;border-radius:6px;border:2px solid}.legend-icon.available,.box.available{background:#fff;border-color:#ccc}.legend-icon.selected,.box.selected{background:#c8e6c9;border-color:#4caf50}.legend-icon.female,.box.female{background:#fce4ec;border-color:#f06292}.legend-icon.booked,.box.booked{background:#bdbdbd;border-color:#9e9e9e}.box{width:24px;height:18px;border-radius:3px 6px 6px 3px;display:inline-block;position:relative}.box:before{content:"";position:absolute;left:-6px;top:2px;bottom:2px;width:7px;background:inherit;border:inherit;border-right:none;border-radius:3px 0 0 3px}.box.available{background:#fff;border:2px solid #ccc}.box.selected{background:#c8e6c9;border:2px solid #4caf50}.box.female{background:#fce4ec;border:2px solid #f06292}.box.booked{background:#bdbdbd;border:2px solid #9e9e9e}.sleeper-box,.seater-box{width:24px;height:18px;border-radius:3px 6px 6px 3px;position:relative}.sleeper-box:before,.seater-box:before{content:"";position:absolute;left:-6px;top:2px;bottom:2px;width:7px;background:inherit;border:inherit;border-right:none;border-radius:3px 0 0 3px}.deck{display:flex;align-items:flex-start;margin-bottom:14px;padding-bottom:14px;border-bottom:1px dashed #ccc}.deck:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.deck-label{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-weight:600;font-size:11px;color:#666;margin-right:10px;padding:6px 0}.deck-section{margin-bottom:10px}.lower-with-steering{display:flex;align-items:flex-start;gap:14px}.driver{display:flex;flex-direction:column;align-items:center;justify-content:center;width:38px;gap:4px;background:#fff;border-radius:8px;color:#666;box-shadow:0 2px 8px #0000001f;margin-top:6px;flex-shrink:0;padding:8px 4px}.driver-label{font-size:9px;font-weight:600;color:#666;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg)}.seat-grid-container,.seater-grid{display:flex;flex-direction:column;gap:4px;padding:8px;background:#f5f5f5;border-radius:10px}.seat-row{display:grid;grid-auto-columns:minmax(24px,auto);grid-auto-flow:column;gap:4px;align-items:center}.seat-row.front-row{margin-bottom:8px}.seat-wrapper{display:flex;align-items:center;position:relative}.seat-wrapper.empty-seat{width:3px;height:24px;visibility:hidden}.seat-wrapper.sleeper-wrapper{min-width:auto}.seater-wrapper{display:flex;flex-direction:row;align-items:center}.seat-price{font-size:7px;font-weight:600;color:#555;display:flex;align-items:center;justify-content:center}.seat-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#333;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap;opacity:0;visibility:hidden;transition:all .15s ease;z-index:100;pointer-events:none}.seat-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#333}.seat:hover .seat-tooltip,.sleeper:hover .seat-tooltip{opacity:1;visibility:visible}.seat{width:24px;height:24px;background:#fff;border:2px solid #ccc;border-radius:4px;cursor:pointer;transition:all .15s ease;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.seat:before{content:"";position:absolute;left:-5px;top:2px;bottom:2px;width:5px;background:inherit;border:2px solid;border-color:inherit;border-right:none;border-radius:3px 0 0 3px}.seat:hover:not(.booked){transform:translate(2px);box-shadow:0 3px 10px #00000026}.seat.available{background:#fff;border-color:#ccc}.seat.available:before{background:#fff;border-color:#ccc}.seat.active{background:#c8e6c9;border-color:#4caf50;box-shadow:0 2px 8px #4caf504d}.seat.active:before{background:#c8e6c9;border-color:#4caf50}.seat.booked{background:#bdbdbd;border-color:#9e9e9e;cursor:not-allowed}.seat.booked:before{background:#bdbdbd;border-color:#9e9e9e}.seat.booked:hover{transform:none;box-shadow:none}.seat.booked .seat-tooltip,.seat.booked .seat-price{display:none}.seat.female{border-color:#f06292}.seat.female:before{border-color:#f06292}.seat.female.available{background:#fff}.seat.female.available:before{background:#fff}.seat.female.booked{background:#fce4ec}.seat.female.booked:before{background:#fce4ec}.seat.female .seat-price{color:#c2185b}.seat.active .seat-price{color:#2e7d32}.seat.female.active{background:#fff;border-color:#4caf50}.seat.female.active:before{background:#fff;border-color:#4caf50}.seat.female.active .seat-price{color:#2e7d32}.sleeper-grid{display:flex;flex-direction:column;gap:3px}.sleeper-grid .seat-row{display:flex;gap:3px}.sleeper-grid .seat-row.front-row{margin-bottom:8px}.sleeper-grid .seat-wrapper.empty-seat{width:3px;height:30px;visibility:hidden}.sleeper{position:relative;min-width:48px;height:24px;background:#d8d8d8;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;gap:1px;padding:2px 4px}.sleeper .seat-price{font-size:7px;font-weight:600;color:#555}.sleeper:hover:not(.booked){transform:scale(1.03);z-index:10}.sleeper.available{background:#fff;border:2px solid #ddd}.sleeper.active{background:#c8e6c9;border:2px solid #4caf50;box-shadow:0 2px 8px #4caf5040}.sleeper.active .seat-price{color:#2e7d32}.sleeper.booked{background:#bdbdbd;cursor:not-allowed}.sleeper.booked .seat-price,.sleeper.booked .seat-tooltip{display:none}.sleeper.booked:hover{transform:none}.sleeper.female{border:2px solid #f06292}.sleeper.female.available{background:#fff}.sleeper.female.booked{background:#fce4ec}.sleeper.social-distancing,.seat.social-distancing{background:#f5f5f5;border:2px dashed #bdbdbd;cursor:not-allowed;opacity:.6}.sleeper.social-distancing .seat-price,.seat.social-distancing .seat-price{display:none}.sleeper.male,.seat.male{border:2px solid #64b5f6}.sleeper.male.available,.seat.male.available{background:#fff}.sleeper.male.booked,.seat.male.booked{background:#e3f2fd}.sleeper.horizontal-sleeper{min-width:56px;width:100%;height:26px;border-radius:6px;flex-direction:row;gap:3px}.seat-wrapper.horizontal{min-width:56px}.sleeper.vertical-sleeper{min-width:26px;width:26px;height:56px;border-radius:6px;flex-direction:column}.seat-wrapper.vertical{min-height:56px}.sleeper.female .seat-price{color:#c2185b}.sleeper.female.active{background:#fff;border:2px solid #4caf50}.sleeper.female.active .seat-price{color:#2e7d32}.selected-summary{margin-top:16px;padding:12px 14px;background:#e8f5e9;border-radius:8px;font-size:13px}.selected-summary p{margin:4px 0;color:#2e7d32}.points-panel{min-width:280px}.tabs{display:flex;border-radius:10px;overflow:hidden;border:1px solid #ddd}.tabs button{flex:1;padding:12px 10px;background:#f7f7f7;border:none;font-size:13px;cursor:pointer;transition:all .2s}.tabs button:hover{background:#eee}.tabs .active{background:#fff;font-weight:600;border-bottom:3px solid #d84e55}.search{width:100%;padding:11px 16px;margin:14px 0;border-radius:24px;border:1px solid #ddd;font-size:14px;box-sizing:border-box;outline:none;transition:border-color .2s}.search:focus{border-color:#9c7635}.points-list{max-height:320px;overflow-y:auto}.point-row{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #eee;cursor:pointer;transition:background .2s}.point-row:hover{background:#f9f9f9}.point-row input[type=radio]{margin-top:4px;accent-color:#d84e55;width:16px;height:16px}.point-info{flex:1}.point-head{display:flex;justify-content:space-between;align-items:center}.point-head strong{font-size:14px;color:#333}.point-head span{font-size:13px;color:#666;font-weight:500}.point-info p{font-size:12px;color:#888;margin:6px 0 0}.point-info .contact{color:#666;font-size:11px}.no-points{text-align:center;color:#999;padding:30px 20px;font-size:14px}.fare-action-bar{display:flex;align-items:center;gap:16px;padding:16px;margin-top:18px;background:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 2px 8px #0000000f}.fare-summary{display:flex;flex-direction:column;padding-right:16px;border-right:1px solid #e0e0e0}.fare-amount{display:flex;align-items:baseline;gap:6px}.fare-amount .original-price{font-size:13px;color:#999;text-decoration:line-through}.fare-amount .final-price{font-size:20px;font-weight:700;color:#333}.fare-note{font-size:11px;color:#888;margin-top:2px}.seat-count{display:flex;flex-direction:column;align-items:center;padding:0 16px;border-right:1px solid #e0e0e0}.seat-count .count{font-size:20px;font-weight:700;color:#333}.seat-count .label{font-size:12px;color:#888}.fare-action-bar .proceed-btn{flex:1;padding:14px 24px;margin-top:0;background:#d4a623;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.fare-action-bar .proceed-btn:hover:not(.disabled){background:#d4a623}.fare-action-bar .proceed-btn.disabled{background:#ccc;color:#888;cursor:not-allowed}.fare-details-panel{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.back-btn{background:none;border:none;color:#9c7635;font-size:14px;font-weight:600;cursor:pointer;padding:0;margin-bottom:16px}.back-btn:hover{text-decoration:underline}.fare-structure{background:#f8f8f8;border-radius:10px;padding:16px;margin-bottom:16px}.fare-structure h3{font-size:15px;margin:0 0 14px;color:#333}.fare-row{display:flex;justify-content:space-between;padding:10px 0;font-size:14px;color:#555;border-bottom:1px solid #eee}.fare-row:last-child{border-bottom:none}.fare-row.total{font-weight:700;font-size:16px;color:#333;border-top:2px solid #ddd;margin-top:8px;padding-top:14px}.passenger-form{background:#fff;border:1px solid #eee;border-radius:10px;padding:16px}.passenger-form h3{font-size:15px;margin:0 0 14px;color:#333}.passenger-form .form-group{margin-bottom:14px}.passenger-form .form-group label{display:block;font-size:12px;font-weight:600;color:#555;margin-bottom:6px}.passenger-form .form-group input,.passenger-form .form-group select{width:100%;padding:11px 14px;border:1px solid #ddd;border-radius:8px;font-size:14px;outline:none;box-sizing:border-box;transition:border-color .2s}.passenger-form .form-group input:focus,.passenger-form .form-group select:focus{border-color:#9c7635}.form-row{display:flex;gap:12px}.form-group.half{flex:1}.proceed-btn{width:100%;padding:14px;margin-top:18px;background:#d4a623;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.proceed-btn:hover{background:#d4a623}@media(max-width:900px){.selectseat-body{grid-template-columns:1fr;gap:16px;padding:14px}.points-panel{min-width:100%}.selectseat-header{padding:12px 16px}.selectseat-header h4{font-size:13px}.amenities-loader{flex-wrap:wrap;justify-content:center;gap:12px}}@media(max-width:768px){.bus-view{padding:12px 8px;overflow-x:hidden;overflow-y:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.bus-view>.legend{width:100%;flex-shrink:0}.bus-view>.deck{flex:1;min-width:0}.bus-view>.deck-section.lower-with-steering{flex:1;min-width:0}.legend{gap:8px;font-size:10px;margin-bottom:12px;padding:10px 12px;justify-content:center;flex-wrap:wrap}.legend-icon.seat-icon{width:20px;height:20px}.legend-icon.seat-icon:before{inset:-4px 3px auto;width:auto;height:5px;border:2px solid;border-color:inherit;border-bottom:none;border-right:unset;border-left:unset;border-radius:3px 3px 0 0}.box:before{inset:-5px 2px auto;width:auto;height:5px;border-bottom:none;border-right:unset;border-left:unset;border-radius:3px 3px 0 0}.legend-icon.sleeper-icon{width:34px;height:14px}.seat-grid-container{flex-direction:row;justify-content:center;align-items:flex-start;gap:8px;padding:10px 6px}.seat-row{display:grid;grid-auto-flow:row;grid-auto-rows:minmax(30px,auto);grid-auto-columns:auto;grid-template-columns:1fr;gap:8px;align-items:center;justify-items:center}.seat-row.front-row{margin-bottom:0;margin-right:14px}.seat-wrapper.horizontal{grid-column:auto!important;grid-row:span 2!important;min-width:unset;min-height:62px}.seat-wrapper.vertical{grid-row:auto!important;grid-column:span 2!important;min-height:unset;min-width:62px}.seat-wrapper.empty-seat{width:30px;height:30px}.seat{width:30px;height:28px;border-radius:4px}.seat:before{inset:-5px 3px auto;width:auto;height:5px;border:2px solid;border-color:inherit;border-right:unset;border-left:unset;border-bottom:none;border-radius:3px 3px 0 0}.seat-price{font-size:6px}.seat-number-label{font-size:8px;min-width:12px}.sleeper{min-width:unset}.sleeper.horizontal-sleeper{min-width:unset;width:30px;height:100%;min-height:62px;flex-direction:column}.sleeper.vertical-sleeper{width:100%;min-width:62px;height:28px;flex-direction:row}.sleeper .seat-price,.sleeper span{font-size:7px}.sleeper-grid{gap:3px}.lower-with-steering{flex-direction:column;align-items:center;gap:8px}.driver{flex-direction:row;width:auto;padding:6px 14px;gap:8px;margin-top:0;border-radius:20px}.driver-label{writing-mode:horizontal-tb;transform:none;font-size:10px}.deck{flex-direction:column;align-items:center;border-bottom:none;padding-bottom:0;margin-bottom:0}.deck-label{writing-mode:horizontal-tb;transform:none;margin-right:0;margin-bottom:8px;font-size:11px;padding:0}.tabs button{padding:10px 8px;font-size:12px}.points-list{max-height:260px}.point-head strong{font-size:13px}.fare-action-bar{position:fixed;bottom:calc(82px + env(safe-area-inset-bottom));left:0;right:0;z-index:1002;margin:0;border-radius:0;border:none;border-top:1px solid #e0e0e0;padding:12px 16px;gap:12px;box-shadow:0 -2px 12px #00000014}.points-panel{padding-bottom:190px}.fare-amount .final-price,.seat-count .count{font-size:18px}.fare-action-bar .proceed-btn{padding:12px 16px;font-size:14px}}@media(max-width:480px){.selectseat-body{padding:8px;gap:10px}.loading-container{padding:40px 16px;min-height:300px}.loading-spinner{width:40px;height:40px}.amenities-loader{padding:12px 16px;gap:10px}.amenity-item{font-size:11px}.legend{gap:6px;font-size:9px;padding:8px 10px}.legend-icon.seat-icon{width:18px;height:18px}.legend-icon.sleeper-icon{width:30px;height:12px}.box{width:18px;height:12px}.seat{width:26px;height:24px;border-width:1.5px}.seat:before{inset:-4px 3px auto;width:auto;height:5px;border-width:1.5px;border-bottom:none;border-right:unset;border-left:unset;border-radius:3px 3px 0 0}.seat-price{font-size:5.5px}.seat-number-label{font-size:7px;min-width:10px}.seat-wrapper.empty-seat{width:26px;height:26px}.seater-wrapper{gap:2px}.sleeper.horizontal-sleeper{width:26px;min-height:54px}.sleeper.vertical-sleeper{min-width:54px;height:24px}.sleeper .seat-price,.sleeper span{font-size:6px}.seat-wrapper.horizontal{min-height:54px}.seat-wrapper.vertical{min-width:54px}.seat-grid-container{gap:6px;padding:8px 4px}.seat-row{gap:6px;grid-auto-rows:minmax(26px,auto)}.bus-view{padding:8px 4px}.fare-structure,.passenger-form{padding:12px}.form-row{flex-direction:column;gap:0}.form-group.half{width:100%}.fare-action-bar{padding:10px;gap:10px}.fare-summary{padding-right:10px}.fare-amount .original-price{font-size:11px}.fare-amount .final-price{font-size:16px}.fare-note{font-size:10px}.seat-count{padding:0 10px}.seat-count .count{font-size:16px}.seat-count .label{font-size:10px}.fare-action-bar .proceed-btn{padding:10px 12px;font-size:13px}.points-panel{padding:10px}.tabs{flex-wrap:wrap;gap:4px}.tabs button{flex:1;min-width:80px;padding:8px 6px;font-size:11px}.points-list{max-height:200px}.point-head strong{font-size:12px}.point-details,.point-address{font-size:10px}}@media(max-width:360px){.selectseat-body{padding:4px;gap:6px}.selectseat-header{padding:10px 12px}.selectseat-header h4{font-size:12px}.bus-type-badge{font-size:10px;padding:3px 8px}.legend{gap:5px;padding:6px 8px;font-size:8px}.seat{width:22px;height:20px}.seat-wrapper.empty-seat{width:22px;height:22px}.seat-number-label{font-size:6px;min-width:8px}.seat-price{font-size:5px}.sleeper.horizontal-sleeper{width:22px;min-height:46px}.sleeper.vertical-sleeper{min-width:46px;height:20px}.seat-wrapper.horizontal{min-height:46px}.seat-wrapper.vertical{min-width:46px}.sleeper .seat-price,.sleeper span{font-size:5px}.seat-grid-container{gap:5px;padding:6px 3px}.seat-row{gap:5px;grid-auto-rows:minmax(22px,auto)}.fare-action-bar{padding:8px;flex-direction:column;gap:12px}.fare-summary{border-right:none;padding-right:0;padding-bottom:10px;border-bottom:1px solid #eee;text-align:center}.seat-count{border-left:none;padding:8px 0}.fare-action-bar .proceed-btn{width:100%;padding:14px;font-size:14px}}.session-expired-overlay{position:fixed;inset:0;background:#002c3fe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeInOverlay .3s ease}.session-expired-popup{background:#fff;border-radius:24px;padding:40px 36px;max-width:420px;width:100%;text-align:center;box-shadow:0 25px 60px #002c3f66;animation:popupSlideUp .4s ease}.session-expired-popup h2{margin:0 0 14px;font-size:26px;font-weight:700;color:#002c3f}.session-btn-primary{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 24px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#9c7635,#7a5c2a);border:none;border-radius:14px;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #9c763559}.session-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #9c763573}.session-btn-secondary{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;font-size:15px;font-weight:600;color:#002c3f;background:#f1f5f9;border:2px solid #e2e8f0;border-radius:14px;cursor:pointer;transition:all .3s ease}.selectseat-container{overflow:hidden;border:1px solid #dce7ec;border-radius:18px;background:#f7fafb;color:#22313a}.selectseat-header{position:relative;gap:14px;padding:17px 18px;border-bottom:1px solid #dfe9ed;background:linear-gradient(135deg,#ceb45f2e,#ceb45f00 34%),linear-gradient(180deg,#fff,#f8fbfc)}.selectseat-header:before{content:"";width:4px;height:32px;flex:0 0 4px;border-radius:999px;background:linear-gradient(180deg,#00374d,#c6a14a)}.selectseat-header h4{min-width:0;color:#172a33;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-size:17px;font-weight:900;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bus-type-badge{max-width:360px;margin-right:0;overflow:hidden;border:1px solid #ead9b2;border-radius:999px;background:#fffaf0;color:#8a6725;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-size:12px;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.close-btn{display:inline-flex;width:36px;height:36px;flex:0 0 36px;align-items:center;justify-content:center;border:1px solid #d8e4e9;border-radius:50%;background:#fff;color:#536873;box-shadow:0 8px 22px #002c3f14}.close-btn:hover{border-color:#c6a14a;background:#fffaf0;color:#7a5c2a}.selectseat-body{grid-template-columns:minmax(0,1.55fr) minmax(330px,.95fr);gap:18px;padding:18px;background:linear-gradient(180deg,#f8fbfc,#edf4f6)}.bus-view{position:relative;isolation:isolate;min-width:0;padding:14px;overflow:auto;border:1px solid #d9e5ea;border-radius:18px;background:linear-gradient(90deg,rgba(0,55,77,.04) 0 1px,transparent 1px 100%),linear-gradient(180deg,#f8fafb,#e5edf0);background-size:18px 100%,auto;box-shadow:inset 0 1px #ffffffe6,0 18px 40px #142b341a}.bus-view:before{content:"";position:absolute;inset:72px 14px 16px;z-index:0;border:1px solid rgba(115,139,149,.2);border-radius:26px;background:linear-gradient(90deg,transparent 0 18px,rgba(255,255,255,.58) 18px calc(100% - 18px),transparent calc(100% - 18px)),linear-gradient(180deg,#00374d0d,#c6a14a14)}.bus-view:after{content:"";position:absolute;right:30px;bottom:24px;left:30px;z-index:0;height:5px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(0,55,77,.18),transparent)}.bus-view>*{position:relative;z-index:1}.legend{position:relative;z-index:1;gap:16px;margin-bottom:14px;padding:11px 13px;border:1px solid #e3ebef;border-radius:14px;background:#ffffffeb;color:#516671;box-shadow:0 10px 24px #002c3f0f}.legend span{font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-weight:800}.legend-icon.seat-icon,.legend-icon.sleeper-icon,.box{box-shadow:0 3px 10px #243a441a}.deck,.lower-with-steering{position:relative;z-index:1;overflow:visible;border:1px solid #e0e8ec;border-radius:16px;background:linear-gradient(180deg,#fffffff5,#fafcfdeb),#fff;box-shadow:0 14px 32px #162c3614}.deck{align-items:center;margin-bottom:14px;padding:16px 14px;border-bottom:1px solid #e0e8ec}.deck-label{min-width:26px;margin-right:13px;padding:10px 4px;border:1px solid #dce8ed;border-radius:999px;background:#eef6f8;color:#294653;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-size:10px;font-weight:900}.lower-with-steering{align-items:center;gap:16px;margin-bottom:0;padding:16px 14px}.driver{width:46px;min-height:76px;margin-top:0;border:1px solid #dce8ed;border-radius:16px;background:linear-gradient(180deg,#fff,#eef5f7);color:#2f4955;box-shadow:0 10px 24px #002c3f1a}.driver svg{color:#274653;filter:drop-shadow(0 2px 5px rgba(0,44,63,.14))}.driver-label{color:#586e78;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-weight:800}.seat-grid-container{position:relative;z-index:1;gap:6px;padding:10px;overflow:visible;border:1px solid #e2eaee;border-radius:14px;background:linear-gradient(90deg,rgba(255,255,255,.65),transparent 18%,transparent 82%,rgba(255,255,255,.65)),linear-gradient(180deg,#f7fafb,#edf3f5);box-shadow:inset 0 1px #ffffffeb}.seat-grid-container:before{content:"";position:absolute;inset:9px;z-index:0;border-radius:11px;background:repeating-linear-gradient(90deg,rgba(0,55,77,.045) 0,rgba(0,55,77,.045) 1px,transparent 1px,transparent 14px)}.seat-row{position:relative;z-index:1;gap:6px;grid-auto-columns:minmax(28px,auto)}.seat-wrapper{justify-content:center}.seat,.sleeper{border-width:1.5px;color:#435862;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;box-shadow:0 2px #43586214,0 8px 16px #21333c14}.seat{width:28px;height:26px;border-radius:7px;background:linear-gradient(180deg,#fff,#f8fafb);border-color:#c8d4da}.seat:before{left:-5px;width:6px;border-width:1.5px;border-color:inherit;background:inherit}.seat:hover:not(.booked),.sleeper:hover:not(.booked){transform:translateY(-2px);box-shadow:0 2px #43586214,0 12px 22px #21333c24}.seat.available,.seat.available:before,.sleeper.available{background:linear-gradient(180deg,#fff,#f8fafb);border-color:#c8d4da}.seat.active,.seat.active:before,.sleeper.active{background:linear-gradient(180deg,#dff8ea,#bff0d2);border-color:#25a55f;box-shadow:0 0 0 3px #25a55f1f,0 10px 22px #25a55f2e}.seat.female,.seat.female:before,.sleeper.female{border-color:#f45d98}.seat.female.available,.seat.female.available:before,.sleeper.female.available{background:linear-gradient(180deg,#fff,#fff5f9)}.seat.female.active,.seat.female.active:before,.sleeper.female.active{background:linear-gradient(180deg,#dff8ea,#bff0d2);border-color:#25a55f}.seat.male,.sleeper.male{border-color:#4fa8f8}.seat.booked,.seat.booked:before,.sleeper.booked{background:linear-gradient(180deg,#d2d6da,#b4bbc0);border-color:#aab3b9;box-shadow:inset 0 1px #ffffff4d}.seat-price,.sleeper .seat-price{color:#435862;font-weight:900}.seat.active .seat-price,.sleeper.active .seat-price{color:#12663a}.seat.female .seat-price,.sleeper.female .seat-price{color:#b91e5f}.sleeper{min-width:56px;height:26px;border:1.5px solid #c8d4da;border-radius:9px;background:linear-gradient(180deg,#fff,#f8fafb)}.sleeper.horizontal-sleeper{min-width:64px;height:28px;border-radius:9px}.seat-wrapper.horizontal{min-width:64px}.sleeper.vertical-sleeper{width:28px;min-width:28px;height:64px;border-radius:9px}.seat-wrapper.vertical{min-height:64px}.points-panel{min-width:0;padding:14px;border:1px solid #dfe9ee;border-radius:18px;background:#fff;box-shadow:0 18px 38px #162c3617}.tabs{gap:4px;padding:4px;border:1px solid #e0e9ee;border-radius:15px;background:#f3f7f8}.tabs button{min-height:40px;border-radius:11px;color:#435862;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-weight:850}.tabs button:hover{background:#fff}.tabs .active{border-bottom:0;background:#fff;color:#172a33;box-shadow:0 6px 18px #002c3f14,inset 0 -2px #c6a14a}.search{margin:14px 0 12px;padding:12px 16px;border:1px solid #dce7ec;background:#fbfdfe;color:#22313a;box-shadow:inset 0 1px 2px #002c3f0a}.search:focus{border-color:#c6a14a;box-shadow:0 0 0 3px #c6a14a29,inset 0 1px 2px #002c3f0a}.points-list{max-height:360px;padding-right:4px}.points-list::-webkit-scrollbar{width:8px}.points-list::-webkit-scrollbar-track{background:#eef4f6;border-radius:999px}.points-list::-webkit-scrollbar-thumb{border:2px solid #eef4f6;border-radius:999px;background:#9fb0b8}.point-row{align-items:flex-start;gap:12px;margin-bottom:6px;padding:13px 12px;border:1px solid transparent;border-bottom-color:#edf1f3;border-radius:13px}.point-row:hover,.point-row:has(input:checked){border-color:#e8d9b7;background:#fffaf0}.point-row input[type=radio]{appearance:none;width:18px;height:18px;min-width:18px;min-height:18px;max-width:18px;max-height:18px;padding:0;flex:0 0 18px;margin-top:2px;border:1.5px solid #9dafb7;border-radius:50%;background:#fff}.point-row input[type=radio]:checked{border-color:#9c7635;background:radial-gradient(circle,#9c7635 0 42%,#fff 46%)}.point-head strong{color:#263943;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-weight:900}.point-head span{color:#60727b;font-family:Plus Jakarta Sans,Montserrat,system-ui,sans-serif;font-weight:750}.point-info p{color:#85929a;line-height:1.35}.fare-action-bar{border:1px solid #e8d9b7;border-radius:16px;background:linear-gradient(135deg,#c6a14a24,#c6a14a00 46%),#fff;box-shadow:0 18px 36px #162c361f}.fare-amount .final-price,.seat-count .count{color:#172a33}.fare-action-bar .proceed-btn,.proceed-btn{border-radius:12px;background:linear-gradient(135deg,#a77f34,#876321);box-shadow:0 10px 24px #87632138}.fare-action-bar .proceed-btn:hover:not(.disabled),.proceed-btn:hover{background:linear-gradient(135deg,#946e2a,#72521d)}.fare-action-bar .proceed-btn.disabled{box-shadow:none}@media(max-width:900px){.selectseat-body{grid-template-columns:1fr;padding:14px}.points-panel{min-width:0}.bus-type-badge{max-width:260px}}@media(max-width:768px){.selectseat-header{padding:14px}.selectseat-header h4{font-size:14px}.bus-type-badge{max-width:170px;font-size:11px}.bus-view{display:flex;flex-wrap:wrap;gap:10px;padding:12px;overflow-x:hidden}.bus-view:before{inset:66px 12px 12px}.legend{width:100%;justify-content:center}.deck,.lower-with-steering{flex:1 1 250px;padding:12px}.deck{flex-direction:column;align-items:center;margin-bottom:0}.deck-label{writing-mode:horizontal-tb;transform:none;min-width:0;margin-right:0;margin-bottom:10px;padding:6px 12px}.lower-with-steering{flex-direction:column;align-items:center}.driver{flex-direction:row;width:auto;min-height:0;padding:8px 14px;border-radius:999px}.driver-label{writing-mode:horizontal-tb;transform:none}.seat{width:30px;height:28px}.sleeper.horizontal-sleeper{width:30px;min-height:64px}.sleeper.vertical-sleeper{min-width:64px;height:28px}.points-list{max-height:300px}.fare-action-bar{margin-top:14px}}@media(max-width:480px){.selectseat-header{gap:8px}.selectseat-header:before{height:28px}.close-btn{width:34px;height:34px;flex-basis:34px}.selectseat-body{padding:10px}.bus-view,.points-panel{border-radius:15px}.deck,.lower-with-steering{flex-basis:100%}.tabs button{min-width:0}}.bus-view{display:flex;flex-direction:column;align-items:stretch;padding:16px;overflow:auto;background:#edf3f5}.bus-view:before,.bus-view:after{display:none}.legend{width:100%;margin-bottom:16px}.seat-map-cabin{position:relative;display:flex;width:max-content;margin:0 auto;padding:18px;flex-direction:column;gap:14px;border:1px solid #cfdde3;border-radius:20px;background:linear-gradient(90deg,rgba(0,55,77,.035) 0 1px,transparent 1px 100%),#fff;background-size:24px 100%,auto;box-shadow:inset 0 1px #fffffff5,0 12px 28px #19343f14}.seat-map-cabin:after{content:"";position:absolute;top:50%;right:20px;left:20px;border-top:1px dashed #d8e3e7;pointer-events:none}.deck,.lower-with-steering{width:max-content;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.deck{align-items:center;padding-bottom:14px;border-bottom:1px solid #e2ebee}.deck-section{margin-bottom:0}.lower-with-steering{align-items:center;gap:12px;padding-top:0}.deck-label{min-width:24px;margin-right:12px;padding:9px 4px;border-color:#d4e1e6;background:#f4f8f9;color:#46606b;font-size:9px;letter-spacing:0}.driver{width:42px;min-height:74px;padding:7px 3px;border-radius:12px;box-shadow:none}.seat-grid-container{--seat-cell: 34px;--seat-row: 32px;--seat-gap: 7px;display:grid;width:max-content;padding:11px 12px 11px 17px;grid-template-columns:repeat(var(--seat-column-count),var(--seat-cell));grid-template-rows:repeat(var(--seat-row-count),var(--seat-row));gap:var(--seat-gap);overflow:visible;border-color:#d6e2e6;border-radius:12px;background:#f8fbfc;box-shadow:inset 0 1px #fffffff2}.seat-grid-container:before{display:none}.seat-wrapper,.seat-wrapper.horizontal,.seat-wrapper.vertical{width:100%;min-width:0;min-height:0;height:100%;justify-content:stretch}.seat-wrapper.empty-seat{width:auto;height:auto}.seat,.sleeper,.sleeper.horizontal-sleeper,.sleeper.vertical-sleeper{box-sizing:border-box;width:100%;min-width:0;min-height:0;height:100%;padding:0 2px;border-radius:6px}.seat{border-color:#bfcfd5}.seat:before{top:5px;bottom:5px;left:-5px;width:6px}.sleeper{border-color:#bfcfd5}.seat-price,.sleeper .seat-price{font-size:7px;line-height:1}@media(max-width:768px){.bus-view{display:block;padding:12px;overflow:auto}.seat-map-cabin{margin:0 auto;padding:14px}.deck,.lower-with-steering{width:max-content;max-width:none;flex:none}.deck{flex-direction:row;align-items:center;margin:0;padding-bottom:12px}.lower-with-steering{flex-direction:row;align-items:center;padding-top:0}.deck-label{min-width:24px;margin:0 12px 0 0;padding:9px 4px;writing-mode:vertical-rl;transform:rotate(180deg)}.driver{width:42px;min-height:74px;padding:7px 3px;flex-direction:column;border-radius:12px}.driver-label{writing-mode:vertical-rl;transform:rotate(180deg)}.seat-grid-container{--seat-cell: 32px;--seat-row: 30px;--seat-gap: 6px;display:grid;width:max-content;padding:10px 10px 10px 15px;flex-direction:unset}.seat,.sleeper,.sleeper.horizontal-sleeper,.sleeper.vertical-sleeper{width:100%;min-width:0;min-height:0;height:100%}}@media(max-width:480px){.bus-view{padding:8px}.seat-map-cabin{padding:10px;border-radius:16px}.seat-grid-container{--seat-cell: 29px;--seat-row: 28px;--seat-gap: 5px;padding:8px 8px 8px 13px}.deck-label{min-width:22px;margin-right:9px}.driver{width:38px;min-height:68px}}.selectseat-header{background:#fff;border-bottom-color:#e6eaed}.selectseat-header:before{width:3px;flex-basis:3px;border-radius:2px;background:#d84e55}.bus-type-badge{border-color:#dfe5e8;background:#f7f8f9;color:#53616a}.close-btn{border-color:#dbe2e6;box-shadow:none}.bus-view{background:#f5f7f8;border-color:#e1e6e8;border-radius:12px;box-shadow:none}.legend{justify-content:flex-start;padding:10px 12px;border-color:#e0e6e9;border-radius:10px;background:#fff;color:#53616a;box-shadow:none}.legend span{font-size:11px;font-weight:700}.seat-map-cabin{gap:12px;padding:16px;border-color:#d9e0e3;border-radius:12px;background:#fff;background-size:auto;box-shadow:none}.seat-map-cabin:after{display:none}.deck{flex-direction:column;align-items:flex-start;padding-bottom:12px;border-bottom-color:#e8edef}.deck-label{min-width:0;margin:0 0 8px 54px;padding:0;border:0;border-radius:0;background:transparent;color:#6a7880;font-size:10px;font-weight:800;line-height:1;writing-mode:horizontal-tb;transform:none}.deck .seat-grid-container{margin-left:54px}.lower-with-steering{gap:12px}.driver{border-color:#d4dde1;border-radius:10px;background:#fff;color:#58676f}.driver svg{color:#58676f;filter:none}.driver-label{color:#687780;font-size:9px}.seat-grid-container{border-color:#d9e1e4;border-radius:8px;background:#fbfcfc;box-shadow:none}.seat,.sleeper,.sleeper.horizontal-sleeper,.sleeper.vertical-sleeper{border-width:1.5px;border-radius:5px;box-shadow:none}.seat,.seat.available,.seat.available:before,.sleeper,.sleeper.available{border-color:#b7c2c8;background:#fff}.seat:before{border-color:inherit;background:inherit}.seat:hover:not(.booked),.sleeper:hover:not(.booked){transform:none;border-color:#6f7f88;box-shadow:0 0 0 2px #5269751f}.seat.active,.seat.active:before,.sleeper.active{border-color:#2f6eb9;background:#eaf2ff;box-shadow:0 0 0 2px #2f6eb924}.seat.active .seat-price,.sleeper.active .seat-price{color:#245996}.seat.female,.seat.female:before,.sleeper.female{border-color:#d76b8e}.seat.female.available,.seat.female.available:before,.sleeper.female.available{background:#fff7f9}.seat.female.active,.seat.female.active:before,.sleeper.female.active{border-color:#2f6eb9;background:#eaf2ff}.seat.female .seat-price,.sleeper.female .seat-price{color:#b44d70}.seat.female.active .seat-price,.sleeper.female.active .seat-price{color:#245996}.seat.male,.sleeper.male{border-color:#7197c8}.seat.male.available,.sleeper.male.available{background:#f5f8ff}.seat.booked,.seat.booked:before,.sleeper.booked{border-color:#c1c9cd;background:#dfe4e6;box-shadow:none}.seat.female.booked,.seat.female.booked:before,.sleeper.female.booked{border-color:#d5a2b2;background:#f2e0e6}.seat.male.booked,.sleeper.male.booked{border-color:#b5c7dc;background:#e4ebf4}.seat.booked .seat-price,.sleeper.booked .seat-price{color:#7c898f}.legend-icon.available,.box.available{border-color:#b7c2c8;background:#fff}.legend-icon.selected,.box.selected{border-color:#2f6eb9;background:#eaf2ff}.legend-icon.female,.box.female{border-color:#d76b8e;background:#fff7f9}.legend-icon.booked,.box.booked{border-color:#c1c9cd;background:#dfe4e6}@media(max-width:768px){.deck{flex-direction:column;align-items:flex-start}.deck-label{margin:0 0 8px 48px;writing-mode:horizontal-tb;transform:none}.deck .seat-grid-container{margin-left:48px}}@media(max-width:480px){.deck-label,.deck .seat-grid-container{margin-left:44px}}@media(max-width:768px){.bus-view{width:100%;padding:10px;overflow-x:auto;overflow-y:hidden;border-radius:10px;-webkit-overflow-scrolling:touch}.legend{min-width:max-content;margin-bottom:10px;padding:8px 10px;gap:8px 12px}.legend span{gap:6px;font-size:10px}.legend-icon.seat-icon{width:22px;height:22px}.legend-icon.sleeper-icon{width:32px;height:16px}.seat-map-cabin{width:max-content;min-width:100%;margin:0;padding:12px;gap:10px;border-radius:10px}.deck{padding-bottom:10px}.deck-label,.deck .seat-grid-container{margin-left:46px}.lower-with-steering{gap:10px}.driver{width:36px;min-height:70px;padding:6px 2px}.driver svg{width:23px;height:23px}.seat-grid-container{--seat-cell: 30px;--seat-row: 34px;--seat-gap: 5px;padding:9px 9px 9px 14px}.seat-price,.sleeper .seat-price{font-size:6.5px}.points-panel{width:100%;min-width:0;padding:12px;border-radius:10px;box-shadow:none}.tabs{border-radius:9px}.tabs button{min-height:38px;padding:8px 6px;font-size:11px}.search{margin:10px 0;padding:10px 12px;font-size:13px}.points-list{max-height:min(32dvh,260px)}.point-row{padding:11px 8px}.fare-action-bar{position:sticky;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;margin:12px 0 0;padding:10px;border:1px solid #dfe5e8;border-radius:10px;background:#fff;box-shadow:0 -6px 18px #1b2b3314}.fare-summary{padding-right:0;border-right:0}.seat-count{padding:0 0 0 12px;border-right:0;border-left:1px solid #e1e6e8}.fare-action-bar .proceed-btn{width:100%;min-height:42px;margin-top:10px;grid-column:1 / -1;font-size:14px}}@media(max-width:390px){.seat-grid-container{--seat-cell: 28px;--seat-row: 32px;--seat-gap: 4px}.seat-map-cabin{padding:10px}}.seat-grid-responsive>.seat-wrapper{grid-column:var(--seat-grid-column)!important;grid-row:var(--seat-grid-row)!important}@media(max-width:768px){.bus-view{display:block;width:100%;padding:0;overflow-x:hidden;overflow-y:visible;border:0;border-radius:0;background:transparent;-webkit-overflow-scrolling:touch}.bus-view .legend{position:sticky;left:0;width:100%;min-width:0;margin-bottom:10px;border-radius:10px}.seat-map-cabin{box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;flex-direction:row;align-items:flex-start;justify-content:space-evenly;gap:6px;border:0;border-radius:0;background:transparent}.seat-map-cabin:after{display:none}.deck,.lower-with-steering{position:relative;display:flex;width:max-content;min-width:0;flex:0 0 auto;flex-direction:column;align-items:center;border:0;border-radius:0;background:transparent;box-shadow:none}.deck{order:2;padding:0;flex-direction:column;align-items:center;border-bottom:0}.deck-label{position:static;display:flex;min-height:39px;margin:0 auto 8px;padding:0 8px;align-items:center;justify-content:center;border:1px solid #e4e8ea;border-radius:999px;background:#fff;color:#62717a;font-size:10px;line-height:1;writing-mode:horizontal-tb;transform:none}.deck .seat-grid-container{margin-left:0}.lower-with-steering{order:1;padding:0;flex-direction:column;align-items:center;gap:8px}.driver{position:static;width:auto;min-height:39px;margin:0 auto;padding:6px 10px;flex-direction:row;gap:7px;border-radius:999px}.driver svg{width:22px;height:22px;order:initial}.driver-label{display:block;font-size:9px;writing-mode:horizontal-tb;transform:none;order:1}.driver svg{order:2}.seat-grid-responsive{--seat-cell: var(--mobile-fitted-seat-size, 20px);--seat-row: var(--mobile-fitted-seat-size, 20px);--seat-gap: 3px;display:grid;width:max-content;margin:0;padding:8px;grid-template-columns:repeat(var(--mobile-seat-column-count),var(--seat-cell));grid-template-rows:repeat(var(--mobile-seat-row-count),var(--seat-row));gap:var(--seat-gap);border:1px solid #d9e1e4;border-radius:8px;background:#fbfcfc}.seat-grid-responsive>.seat-wrapper{grid-column:var(--mobile-seat-grid-column)!important;grid-row:var(--mobile-seat-grid-row)!important}.seat-grid-responsive .seat,.seat-grid-responsive .sleeper,.seat-grid-responsive .sleeper.horizontal-sleeper,.seat-grid-responsive .sleeper.vertical-sleeper{width:100%;min-width:0;min-height:0;height:100%}.seat-grid-responsive .sleeper.horizontal-sleeper{flex-direction:column}.seat-grid-responsive .sleeper.vertical-sleeper{flex-direction:row}.seat-grid-responsive .seat:before{inset:-4px 4px auto;width:auto;height:5px;border:1.5px solid;border-color:inherit;border-bottom:0;border-radius:3px 3px 0 0}.seat-grid-responsive .seat-price,.seat-grid-responsive .sleeper .seat-price{font-size:6px;line-height:1;white-space:nowrap;transform:none}.points-panel{display:none}.points-panel.selection-ready{display:block}}@media(max-width:768px){.points-panel.selection-ready{box-sizing:border-box;display:flex;width:100%;max-height:calc(100dvh - 104px);padding:10px;flex-direction:column;overflow:hidden;border-radius:10px;scroll-margin-top:10px}.points-panel.selection-ready .tabs{display:grid;padding:3px;grid-template-columns:repeat(2,minmax(0,1fr));flex:0 0 auto;gap:3px;border-radius:9px}.points-panel.selection-ready .tabs button{width:100%;min-width:0;min-height:34px;padding:6px 4px;overflow:hidden;border-radius:7px;font-size:10.5px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.points-panel.selection-ready .search{height:38px;margin:8px 0;padding:8px 12px;flex:0 0 auto;font-size:12px}.points-panel.selection-ready .points-list{min-height:0;max-height:min(42dvh,250px);padding-right:2px;flex:1 1 auto;overflow-y:auto}.points-panel.selection-ready .point-row{display:flex;gap:8px;margin:0;padding:9px 6px;align-items:flex-start;border-radius:8px}.points-panel.selection-ready .point-row input[type=radio]{width:16px;height:16px;min-width:16px;min-height:16px;max-width:16px;max-height:16px;padding:0;margin-top:1px;flex:0 0 16px}.points-panel.selection-ready .point-info{min-width:0}.points-panel.selection-ready .point-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.points-panel.selection-ready .point-head strong{min-width:0;font-size:12px;line-height:1.3;overflow-wrap:anywhere}.points-panel.selection-ready .point-head span{font-size:10.5px;line-height:1.3;white-space:nowrap}.points-panel.selection-ready .point-info p{display:-webkit-box;margin-top:3px;overflow:hidden;font-size:10.5px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.points-panel.selection-ready .fare-action-bar{position:static;display:grid;margin:8px 0 0;padding:8px;grid-template-columns:auto auto minmax(96px,1fr);align-items:center;gap:8px;flex:0 0 auto;border-radius:9px;box-shadow:none}.points-panel.selection-ready .fare-summary{padding:0;border:0}.points-panel.selection-ready .fare-amount .final-price,.points-panel.selection-ready .seat-count .count{font-size:15px;line-height:1.1}.points-panel.selection-ready .fare-note,.points-panel.selection-ready .seat-count .label{font-size:9px;line-height:1.1}.points-panel.selection-ready .seat-count{padding:0 8px;border-right:0;border-left:1px solid #e1e6e8}.points-panel.selection-ready .fare-action-bar .proceed-btn{width:100%;min-height:36px;margin:0;padding:8px 10px;grid-column:auto;border-radius:8px;font-size:12px}}.mini-seat-preview-container{--cell-w: 13px;--cell-h: 11px;--cell-gap: 3px;display:flex;flex-direction:column;align-items:center;padding:6px;-webkit-user-select:none;user-select:none;min-width:160px}.mini-seat-layout{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px 10px;background:#fff;border:1px solid #ddd;border-radius:8px}.mini-deck{display:flex;align-items:stretch;gap:4px}.mini-deck .deck-label{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:7px;font-weight:700;color:#1976d2;text-transform:uppercase;letter-spacing:.3px;padding:4px 0;min-width:12px;display:flex;align-items:center;justify-content:center;background:#e3f2fd;border-radius:2px}.mini-deck .deck-label.driver-cell{writing-mode:horizontal-tb;transform:none;font-size:14px;min-width:16px;padding:2px;background:transparent;display:flex;align-items:flex-start;justify-content:center}.deck-divider{width:100%;height:1px;border-top:1px dashed #ccc;margin:3px 0}.mini-seat-grid{display:flex;flex-direction:column;gap:var(--cell-gap)}.mini-seat-row{display:grid;grid-template-columns:repeat(auto-fill,var(--cell-w));grid-auto-columns:var(--cell-w);grid-auto-flow:column;gap:var(--cell-gap);align-items:center}.mini-seat-cell{width:var(--cell-w);height:var(--cell-h);border-radius:2px;transition:all .15s ease;box-sizing:border-box}.mini-seat-cell.empty{width:var(--cell-w);height:var(--cell-h);visibility:hidden}.mini-seat-cell.aisle{width:6px;visibility:hidden}.mini-seat-cell.seater{width:var(--cell-w);height:var(--cell-h);position:relative;background:#4caf50;border-radius:3px;box-shadow:inset -2px 0 #00000026}.mini-seat-cell.seater.booked{background:#bdbdbd}.mini-seat-cell.seater.ladies.available{background:#e91e63}.mini-seat-cell.seater.ladies.booked{background:#f48fb1}.mini-seat-cell.seater.males.booked{background:#78909c}.mini-seat-cell.sleeper{width:var(--cell-w);height:var(--cell-h);border-radius:2px}.mini-seat-cell.sleeper.horizontal{width:auto;min-width:calc(2 * var(--cell-w) + var(--cell-gap))}.mini-seat-cell.sleeper.vertical{width:var(--cell-w)}.mini-seat-cell.sleeper.available{background:#4caf50;border:none}.mini-seat-cell.sleeper.booked{background:#bdbdbd;border:none}.mini-seat-cell.sleeper.ladies.available{background:#e91e63}.mini-seat-cell.sleeper.ladies.booked{background:#f48fb1}.mini-seat-cell.sleeper.males.booked{background:#78909c;position:relative}.mini-seat-cell.sleeper.males.booked:after{content:"";position:absolute;width:4px;height:4px;background:#455a64;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.mini-seat-summary{display:flex;align-items:center;gap:4px;margin-top:4px;padding-top:4px;border-top:1px solid #eee;width:100%;justify-content:center}.mini-seat-summary .seat-icon{font-size:11px}.mini-seat-summary .seat-count{font-size:11px;font-weight:600;color:#4caf50}.mini-seat-summary .single-count{font-size:9px;color:#888}.mini-seat-fallback{display:flex;align-items:center;gap:6px;padding:12px 16px;background:#f5f5f5;border-radius:6px}.mini-seat-fallback .seat-icon{font-size:14px}.mini-seat-fallback .seat-count{font-size:13px;font-weight:500;color:#4caf50}.mini-preview-loading{width:100%;padding:8px 0}.loading-shimmer{width:160px;height:80px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:900px){.mini-seat-preview-container{--cell-w: 11px;--cell-h: 9px;--cell-gap: 2px;min-width:140px;padding:4px}.mini-seat-layout{padding:6px 8px}.mini-deck .deck-label{font-size:6px;min-width:10px}}@media(max-width:768px){.mini-seat-preview-container{--cell-w: 9px;--cell-h: 7px;--cell-gap: 2px;min-width:100px;padding:2px}.mini-seat-layout{padding:4px 6px}.mini-deck .deck-label{font-size:5px;min-width:8px}.mini-deck .deck-label.driver-cell{font-size:10px;min-width:12px}.deck-divider{margin:2px 0}}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none}.toast-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026,0 0 0 1px #0000000d;animation:toastSlideIn .3s ease-out;pointer-events:auto;min-width:300px;max-width:400px}.toast-item.toast-exit{animation:toastSlideOut .3s ease-in forwards}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-success{border-left:4px solid #10b981}.toast-success .toast-icon{color:#10b981;background:#d1fae5}.toast-error{border-left:4px solid #ef4444}.toast-error .toast-icon{color:#ef4444;background:#fee2e2}.toast-warning{border-left:4px solid #f59e0b}.toast-warning .toast-icon{color:#f59e0b;background:#fef3c7}.toast-info{border-left:4px solid #3b82f6}.toast-info .toast-icon{color:#3b82f6;background:#dbeafe}.toast-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;flex-shrink:0}.toast-content{flex:1;min-width:0}.toast-message{margin:0;font-size:14px;font-weight:500;color:#1f2937;line-height:1.5;word-wrap:break-word}.toast-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:#9ca3af;cursor:pointer;border-radius:6px;transition:all .2s;flex-shrink:0;margin-left:auto}.toast-close:hover{background:#f3f4f6;color:#4b5563}@media(max-width:480px){.toast-container{inset:auto 16px 20px;max-width:none}.toast-item{min-width:auto;max-width:none}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}}.no-result-page{min-height:100vh;width:100%;background:linear-gradient(180deg,#f8f9fa,#e9ecef);display:flex;align-items:center;justify-content:center;padding:0;font-family:Plus Jakarta Sans,sans-serif}.no-result-container{width:100%;height:100vh;display:flex;align-items:center;justify-content:center}.no-result-content{background:#fff;border-radius:0;padding:60px 40px;box-shadow:none;text-align:center;animation:fadeInUp .5s ease-out;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.no-result-logo{margin-bottom:8px}.no-result-logo img{width:100px;height:auto;animation:logoPulse 2s ease-in-out infinite}@keyframes logoPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.bus-illustration-wrapper{margin-bottom:24px}.bus-svg{width:220px;height:auto;animation:busFloat 3s ease-in-out infinite}@keyframes busFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.no-result-title{font-size:24px;font-weight:700;color:#1a1a2e;margin:0 0 10px}.no-result-subtitle{font-size:14px;color:#6c757d;margin:0 0 28px;line-height:1.5}.route-info-card{background:linear-gradient(135deg,#fafbfc,#f0f2f5);border-radius:16px;padding:24px 40px;margin-bottom:28px;border:1px solid #e9ecef;max-width:450px;width:100%}.route-cities{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:16px}.city-name{font-size:17px;font-weight:600;color:#333;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-line{display:flex;align-items:center;gap:4px}.route-line .dot{width:8px;height:8px;background:#9c7635;border-radius:50%}.route-line .line{width:20px;height:2px;background:linear-gradient(90deg,#9c7635,#d84e55)}.route-line .arrow{font-size:18px;color:#d84e55;font-weight:700}.travel-date{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:14px;border-top:1px dashed #dee2e6}.date-icon{font-size:18px}.date-text{font-size:14px;color:#555;font-weight:500}.suggestions-card{background:#fffbeb;border-radius:14px;padding:18px 20px;margin-bottom:28px;border-left:4px solid #f59e0b;text-align:left}.suggestions-header{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#92400e;margin-bottom:12px}.bulb-icon{font-size:18px}.suggestions-list{margin:0;padding-left:24px}.suggestions-list li{font-size:13px;color:#78350f;margin-bottom:8px;line-height:1.5}.suggestions-list li:last-child{margin-bottom:0}.modify-search-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 40px;background:linear-gradient(135deg,#9c7635,#b8912e);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #9c763559}.modify-search-btn:hover{transform:translateY(-3px);box-shadow:0 12px 32px #9c763573;background:linear-gradient(135deg,#b8912e,#9c7635)}.modify-search-btn:active{transform:translateY(-1px)}.btn-icon{font-size:18px;transition:transform .3s ease}.modify-search-btn:hover .btn-icon{transform:translate(-4px)}@media(max-width:600px){.no-result-page{padding:20px 16px}.no-result-content{padding:36px 24px;border-radius:20px}.no-result-logo img{width:80px}.bus-svg{width:180px}.no-result-title{font-size:24px}.no-result-subtitle{font-size:14px}.route-cities{flex-direction:column;gap:12px}.route-line{transform:rotate(90deg)}.city-name{font-size:16px;max-width:200px}.suggestions-card{padding:14px 16px}.suggestions-header{font-size:14px}.suggestions-list li{font-size:12px}.modify-search-btn{width:100%;padding:14px 32px;font-size:15px}}@media(max-width:400px){.no-result-content{padding:28px 18px}.no-result-title{font-size:22px}.bus-svg{width:160px}.route-info-card{padding:18px 14px}.city-name{font-size:15px}.date-text{font-size:13px}.no-result-logo img{width:60px}.no-result-subtitle{font-size:13px;margin-bottom:20px}.suggestions-card{padding:12px}.suggestions-header{font-size:12px}.modify-search-btn{padding:12px 24px;font-size:14px}}.footer{background:#012433;color:#fff;margin-top:0;border-top:1px solid rgba(206,180,95,.18)}.footer-main{padding:4.5rem 2rem 4rem}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2rem}.footer-section{min-width:0}.footer-title{font-family:Montserrat,sans-serif;font-size:18px;font-weight:600;color:#fff;margin:0 0 1.25rem;line-height:1.4}.company-section{padding-right:2rem}.footer-brand{display:flex;align-items:center;gap:11px;margin-bottom:18px}.footer-brand>span{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px;background:#ceb45f;color:#012433}.footer-brand>div{display:flex;flex-direction:column;gap:4px}.footer-brand strong{color:#fff;font-family:Plus Jakarta Sans,sans-serif;font-size:20px;font-weight:800;letter-spacing:-.03em;line-height:1}.footer-brand small{color:#ffffff8f;font-family:Plus Jakarta Sans,sans-serif;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.company-tagline{font-family:Plus Jakarta Sans,sans-serif;font-size:14px;color:#ffffffb3;line-height:1.6;margin:0 0 1.5rem}.footer .contact-info{display:flex;flex-direction:column;gap:.75rem;background-color:#ffffff09!important;padding:1.25rem;border-radius:14px;box-shadow:none;border:1px solid rgba(206,180,95,.28)}.contact-item{display:flex;align-items:flex-start;gap:10px;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;color:#fff;line-height:1.5;word-break:break-word}.contact-item svg{color:#d4a017;flex-shrink:0;margin-top:2px;min-width:16px}.contact-item a{color:#fff;text-decoration:none;transition:color .3s ease}.contact-item a:hover{color:#d4a017}.footer-nav-vertical{display:flex;flex-direction:column;gap:.75rem}.footer-nav-vertical a{font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:400;color:#fffc;text-decoration:none;transition:all .3s ease;line-height:1.5}.footer-nav-vertical a:hover{color:#ceb45f;padding-left:4px}.footer-social{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(206,180,95,.5);border-radius:12px;color:#ceb45f;text-decoration:none;transition:all .3s ease}.social-link:hover{background:#ceb45f;border-color:#ceb45f;color:#012433;transform:translateY(-2px)}.scroll-top-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:transparent;border:1px solid rgba(206,180,95,.5);border-radius:10px;color:#ceb45f;font-family:Montserrat,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease}.scroll-top-btn:hover{background:#ceb45f;border-color:#ceb45f;color:#012433}.footer-bottom{background:#001a26;padding:1.25rem 2rem;border-top:1px solid rgba(255,255,255,.1)}.footer-bottom-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-bottom p{font-family:Plus Jakarta Sans,sans-serif;font-size:13px;color:#fff9;margin:0}.footer-bottom-links{display:flex;align-items:center;gap:8px}.footer-bottom-links a{color:#fff9;text-decoration:none;transition:color .3s ease}.footer-bottom-links a:hover{color:#ceb45f}.footer-bottom-links span{color:#ffffff4d}@media(max-width:1024px){.footer-content{grid-template-columns:1fr 1fr;gap:2.5rem}.company-section{padding-right:0}}@media(max-width:768px){.footer{display:none}.footer.footer-home{display:block}.footer-main{padding:2.5rem 1.5rem}.footer-content{grid-template-columns:1fr;gap:1.5rem}.footer-title{font-size:18px;margin-bottom:.75rem;color:#d4a017}.company-tagline{font-size:13px}.footer .contact-info{padding:1rem;gap:.5rem}.contact-item{font-size:13px;gap:8px}.contact-item svg{width:14px;height:14px;min-width:14px}.footer-nav-vertical{gap:.5rem}.footer-nav-vertical a{font-size:14px;padding:6px 0}.footer-social{margin-bottom:1rem;justify-content:flex-start;gap:12px}.social-link{width:44px;height:44px;border:2px solid #d4a017}.social-link svg{width:20px;height:20px}.footer-bottom{padding:1rem 1.5rem}.footer-bottom-content{flex-direction:column;text-align:center;gap:.5rem}.footer-bottom p{font-size:12px}}@media(max-width:480px){.footer-main{padding:2rem 1rem}.footer-content{gap:1.25rem}.footer-title{font-size:16px;margin-bottom:.5rem}.company-tagline{font-size:12px}.footer-nav-vertical{gap:.25rem}.footer-nav-vertical a{font-size:13px;padding:4px 0}.footer .contact-info{padding:.75rem;gap:.5rem;border-radius:8px}.contact-item{font-size:11px;gap:6px}.contact-item svg{width:12px;height:12px;min-width:12px}.footer-social{gap:10px}.social-link{width:40px;height:40px;border-width:2px}.social-link svg{width:18px;height:18px}.scroll-top-btn{font-size:12px;padding:8px 12px}.footer-bottom{padding:1rem}.footer-bottom-links{font-size:11px;flex-wrap:wrap;justify-content:center}}.privacy-container{max-width:900px;margin:0 auto;padding:60px 24px;background:#fff}.privacy-content{line-height:1.8;color:#333}.privacy-content h1{font-size:2.5rem;color:#9c7635;margin-bottom:10px;padding-bottom:16px;border-bottom:3px solid #9c7635}.privacy-content .terms-title{margin-top:60px}.privacy-content .last-updated{color:#666;font-size:.95rem;margin-bottom:40px}.privacy-content h2{font-size:1.5rem;color:#333;margin-top:40px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #eee}.privacy-content h3{font-size:1.15rem;color:#444;margin-top:24px;margin-bottom:12px}.policy-section{margin-bottom:32px}.policy-section p{margin-bottom:16px;text-align:justify}.policy-section ul{margin:16px 0;padding-left:24px}.policy-section ul li{margin-bottom:10px;position:relative}.policy-section ul li::marker{color:#9c7635}.policy-section ul li strong{color:#333}.contact-info{background:#f8f8f8;padding:20px 24px;border-radius:8px;margin-top:16px;border-left:4px solid #9c7635}.contact-info p{margin-bottom:8px}.contact-info p:last-child{margin-bottom:0}.cancellation-table{margin:24px 0;overflow-x:auto}.cancellation-table table{width:100%;border-collapse:collapse;background:#fff;box-shadow:0 2px 8px #00000014;border-radius:8px;overflow:hidden}.cancellation-table th,.cancellation-table td{padding:14px 20px;text-align:left;border-bottom:1px solid #eee}.cancellation-table th{background:#9c7635;color:#fff;font-weight:600}.cancellation-table tr:last-child td{border-bottom:none}.cancellation-table tr:hover{background:#f9f9f9}@media(max-width:768px){.privacy-container{padding:40px 16px}.privacy-content h1{font-size:2rem}.privacy-content h2{font-size:1.3rem}.cancellation-table th,.cancellation-table td{padding:12px 14px;font-size:.9rem}}@media(max-width:480px){.privacy-content h1{font-size:1.75rem}.privacy-content h2{font-size:1.2rem}.contact-info{padding:16px}}.details-page{--details-navy: #002c3f;--details-navy-light: #0c455b;--details-ink: #142b34;--details-muted: #6b7d84;--details-gold: #ceb45f;--details-gold-deep: #a98527;--details-gold-pale: #fbf6e8;--details-paper: #ffffff;--details-surface: #f4f7f7;--details-border: #dfe8ea;position:relative;isolation:isolate;min-height:calc(100vh - 86px);padding:34px 24px 64px;overflow:hidden;background:radial-gradient(circle at 8% 2%,rgba(206,180,95,.18),transparent 24rem),radial-gradient(circle at 96% 35%,rgba(0,44,63,.08),transparent 28rem),#eef3f3;color:var(--details-ink);font-family:Plus Jakarta Sans,sans-serif}.details-page:before{content:"";position:absolute;z-index:-1;top:-240px;left:50%;width:880px;height:440px;border:1px solid rgba(206,180,95,.18);border-radius:50%;transform:translate(-50%) rotate(-8deg);box-shadow:0 0 0 70px #ceb45f09,0 0 0 140px #ceb45f06;pointer-events:none}.details-page .booking-progress{position:relative;z-index:2;display:flex;align-items:center;width:min(100%,720px);margin:0 auto 28px;padding:12px 18px;border:1px solid rgba(0,44,63,.08);border-radius:18px;background:#ffffffdb;box-shadow:0 12px 35px #002c3f12;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.details-page .progress-step{display:flex;align-items:center;gap:10px;min-width:max-content;color:#8a999e}.details-page .step-icon{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid #dfe6e8;border-radius:12px;background:#f2f5f5;transition:transform .25s ease,box-shadow .25s ease}.details-page .step-copy{display:grid;gap:1px}.details-page .step-copy small{color:#a0adb1;font-size:9px;font-weight:800;letter-spacing:.1em;line-height:1.2;text-transform:uppercase}.details-page .step-copy span{font-size:12px;font-weight:750;line-height:1.25}.details-page .progress-step.completed{color:#298665}.details-page .progress-step.completed .step-icon{border-color:#cfe8df;background:#e9f7f1;color:#21805e}.details-page .progress-step.active{color:var(--details-navy)}.details-page .progress-step.active .step-icon{border-color:var(--details-gold);background:var(--details-navy);color:var(--details-gold);box-shadow:0 8px 20px #002c3f33;transform:translateY(-1px)}.details-page .progress-step.active .step-copy small{color:var(--details-gold-deep)}.details-page .progress-line{height:1px;flex:1 1 70px;min-width:28px;margin:0 14px;overflow:hidden;background:#dce4e6}.details-page .progress-line.completed{background:linear-gradient(90deg,#69af94,var(--details-gold))}.details-page .details-container{width:min(100%,1240px);margin:0 auto;overflow:hidden;border:1px solid rgba(0,44,63,.1);border-radius:28px;background:#ffffffbd;box-shadow:0 30px 80px #002c3f1f;animation:detailsRise .5s cubic-bezier(.2,.75,.25,1) both}@keyframes detailsRise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.details-page .details-header{position:relative;display:flex;min-height:158px;align-items:center;justify-content:space-between;gap:28px;padding:34px 38px;overflow:hidden;background:linear-gradient(115deg,rgba(255,255,255,.035),transparent 42%),linear-gradient(135deg,var(--details-navy),#073c50 66%,#0b4b61);color:#fff}.details-page .details-header:after{content:"";position:absolute;right:27%;bottom:-48px;width:115px;height:115px;border:1px solid rgba(206,180,95,.14);border-radius:50%}.details-page .hero-orbit{position:absolute;border:1px solid rgba(206,180,95,.18);border-radius:50%;pointer-events:none}.details-page .hero-orbit-one{top:-95px;right:-20px;width:280px;height:280px}.details-page .hero-orbit-two{top:-48px;right:49px;width:160px;height:160px}.details-page .header-left,.details-page .hero-meta{position:relative;z-index:1;display:flex;align-items:center}.details-page .header-left{gap:18px}.details-page .header-left>h4{margin:0;color:#fff;font-size:19px}.details-page .back-btn{display:grid;width:46px;height:46px;flex:0 0 46px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:#ffffff14;color:#fff;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}.details-page .back-btn:hover{border-color:#ceb45fb3;background:#ceb45f24;transform:translate(-3px)}.details-page .details-eyebrow{display:flex;align-items:center;gap:6px;margin-bottom:7px;color:var(--details-gold);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.details-page .header-info h1{margin:0;color:#fff;font-family:Montserrat,sans-serif;font-size:clamp(24px,3vw,34px);font-weight:700;letter-spacing:-.035em;line-height:1.12}.details-page .header-info p{max-width:520px;margin:8px 0 0;color:#ffffffab;font-size:13px}.details-page .hero-meta{flex-direction:column;align-items:flex-end;gap:10px}.details-page .header-badge,.details-page .hero-seat-count{display:flex;align-items:center;gap:7px;border-radius:999px;font-size:11px;font-weight:700}.details-page .header-badge{padding:9px 13px;border:1px solid rgba(206,180,95,.38);background:#ceb45f21;color:#f8e8ad}.details-page .hero-seat-count{padding-right:5px;color:#ffffffa6}.details-page .details-body{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:26px;align-items:start;padding:28px;background:linear-gradient(#ffffffd1,#ffffffd1),repeating-linear-gradient(135deg,rgba(0,44,63,.025) 0 1px,transparent 1px 11px)}.details-page .passenger-section{display:flex;min-width:0;flex-direction:column;gap:20px}.details-page .bus-summary-card{position:relative;overflow:hidden;border:1px solid #d9e4e6;border-radius:20px;background:var(--details-paper);box-shadow:0 12px 30px #002c3f12}.details-page .bus-summary-card:before,.details-page .bus-summary-card:after{content:"";position:absolute;z-index:3;top:84px;width:22px;height:22px;border:1px solid #d9e4e6;border-radius:50%;background:#f7f9f9}.details-page .bus-summary-card:before{left:-12px}.details-page .bus-summary-card:after{right:-12px}.details-page .bus-summary-header{display:flex;min-height:74px;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;background:var(--details-navy);color:#fff}.details-page .operator-lockup{display:flex;min-width:0;align-items:center;gap:12px}.details-page .operator-icon{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border:1px solid rgba(206,180,95,.38);border-radius:12px;background:#ceb45f1f;color:var(--details-gold)}.details-page .operator-lockup>div{display:grid;min-width:0;gap:2px}.details-page .summary-kicker,.details-page .fare-kicker{color:var(--details-gold);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.details-page .operator-lockup strong{overflow:hidden;color:#fff;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.details-page .journey-date-pill{display:flex;flex:0 0 auto;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#ffffff13;color:#ffffffd1;font-size:10px;font-weight:650}.details-page .bus-summary-content{padding:20px 24px 18px}.details-page .bus-operator{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.details-page .bus-type-badge,.details-page .ticket-confirmation{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:750}.details-page .bus-type-badge{padding:6px 10px;border:1px solid #e7d8a7;border-radius:7px;background:var(--details-gold-pale);color:#80651c}.details-page .ticket-confirmation{color:#2c8665}.details-page .journey-route{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(170px,1.2fr) minmax(120px,.9fr);align-items:center;gap:16px}.details-page .route-point{min-width:0}.details-page .route-point-end{text-align:right}.details-page .point-info{display:grid;gap:2px}.details-page .point-label{color:#92a0a5;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.details-page .point-time{color:var(--details-ink);font-family:Montserrat,sans-serif;font-size:clamp(19px,2.2vw,25px);font-weight:700;letter-spacing:-.03em}.details-page .point-name{overflow:hidden;color:var(--details-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.details-page .route-line{display:flex;align-items:center;color:var(--details-gold-deep)}.details-page .point-marker{width:9px;height:9px;flex:0 0 9px;border:2px solid var(--details-gold-deep);border-radius:50%;background:#fff;box-shadow:0 0 0 4px #ceb45f24}.details-page .point-marker.end{background:var(--details-gold)}.details-page .route-dashes{height:1px;flex:1;border-top:1px dashed #c5d0d3}.details-page .route-bus{display:grid;width:34px;height:34px;flex:0 0 34px;margin:0 7px;place-items:center;border:1px solid #e3d293;border-radius:50%;background:var(--details-gold-pale)}.details-page .journey-footnote{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px dashed #d8e1e3;color:#798a90;font-size:10px}.details-page .journey-footnote>span{display:flex;align-items:center;gap:6px}.details-page .journey-seat-note{flex:0 0 auto;color:var(--details-gold-deep);font-weight:750}.details-page .section-card{padding:26px;border:1px solid var(--details-border);border-radius:20px;background:var(--details-paper);box-shadow:0 10px 28px #002c3f0e;transition:border-color .25s ease,box-shadow .25s ease}.details-page .section-card:focus-within{border-color:#ceb45fb3;box-shadow:0 14px 36px #002c3f14}.details-page .section-header,.details-page .assurance-header{display:flex;align-items:center;gap:13px}.details-page .section-header{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid #edf1f2}.details-page .section-icon,.details-page .assurance-icon{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border-radius:13px;background:var(--details-navy);color:var(--details-gold);box-shadow:inset 0 0 0 1px #ceb45f26}.details-page .section-title-group,.details-page .assurance-title{min-width:0;flex:1}.details-page .section-kicker{display:block;margin-bottom:2px;color:var(--details-gold-deep);font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.details-page .section-title-group h3,.details-page .assurance-title h3{margin:0;color:var(--details-ink);font-size:17px;font-weight:700;letter-spacing:-.02em}.details-page .section-subtitle,.details-page .assurance-price{display:block;margin:3px 0 0;color:#819096;font-size:11px}.details-page .passenger-form{margin-bottom:14px;padding:18px;border:1px solid #e2e9eb;border-radius:16px;background:linear-gradient(135deg,#f8fafa,#f4f7f7)}.details-page .passenger-form:last-child{margin-bottom:0}.details-page .passenger-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px;padding-bottom:14px;border-bottom:1px dashed #d9e2e4}.details-page .passenger-info{display:flex;min-width:0;align-items:center;gap:10px}.details-page .passenger-avatar{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:10px;background:var(--details-navy);color:var(--details-gold);font-size:10px;font-weight:800}.details-page .passenger-title{display:grid;gap:1px}.details-page .passenger-number{color:var(--details-ink);font-size:13px;font-weight:750}.details-page .passenger-title small{color:#87969b;font-size:9px}.details-page .primary-badge{padding:4px 7px;border-radius:999px;background:#e9f5f0;color:#277b5c;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.details-page .seat-tag,.details-page .seat-badge{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e1cf8e;background:var(--details-gold-pale);color:#7a6019;font-weight:800}.details-page .seat-tag{gap:6px;padding:7px 10px;border-radius:9px;font-size:10px}.details-page .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.details-page .form-row.three-cols{grid-template-columns:minmax(0,1.8fr) minmax(90px,.7fr) minmax(120px,.85fr)}.details-page .form-group{min-width:0}.details-page .form-group label{display:flex;align-items:center;gap:5px;margin-bottom:7px;color:#52656c;font-size:10px;font-weight:750}.details-page .form-group label svg{color:var(--details-gold-deep)}.details-page .required{color:#c34f55}.details-page .form-group input,.details-page .form-group select,.details-page .phone-field,.details-page .country-code,.details-page .input-with-icon{min-height:50px;border:1px solid #d7e0e2;border-radius:12px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.details-page .form-group input,.details-page .form-group select{width:100%;padding:0 14px;outline:none;color:var(--details-ink);font-family:inherit;font-size:12px}.details-page .form-group input::placeholder,.details-page .phone-field input::placeholder,.details-page .contact-input::placeholder{color:#a3afb3}.details-page .form-group input:focus,.details-page .form-group select:focus,.details-page .phone-field:focus-within,.details-page .country-code:focus-within,.details-page .input-with-icon:focus-within{border-color:var(--details-gold);box-shadow:0 0 0 3px #ceb45f24;background:#fffefb}.details-page .field-error{display:block;margin-top:5px;padding-left:2px;color:#bf454c;font-size:10px;animation:fieldErrorIn .2s ease both}@keyframes fieldErrorIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.details-page .form-group.has-error input,.details-page .form-group.has-error select,.details-page .phone-field.input-error,.details-page .has-error.input-with-icon,.details-page .has-error .contact-input,.details-page .has-error select{border-color:#d85c63!important;box-shadow:0 0 0 3px #d85c631a!important}.details-page .form-group.has-error label{color:#bf454c}.details-page .contact-form{display:grid;gap:14px}.details-page .contact-field-wrapper{display:grid}.details-page .phone-input-group{display:grid;grid-template-columns:126px minmax(0,1fr);gap:10px}.details-page .country-code{display:flex;flex-direction:column;justify-content:center;padding:7px 13px}.details-page .code-label{margin-bottom:1px;color:#89979c;font-size:8px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.details-page .country-code select{width:100%;padding:0;border:0;outline:0;background:transparent;color:var(--details-ink);font-family:inherit;font-size:12px;font-weight:700}.details-page .phone-field,.details-page .input-with-icon{display:flex;align-items:center;gap:10px;padding:0 14px}.details-page .field-icon{flex:0 0 auto;color:#91a0a5}.details-page .phone-field input,.details-page .input-with-icon .contact-input{width:100%;min-width:0;height:48px;padding:0;border:0;outline:0;background:transparent;color:var(--details-ink);font-family:inherit;font-size:12px}.details-page .input-with-icon.state-wrapper{position:relative;padding:0}.details-page .state-wrapper .field-icon{position:absolute;z-index:1;top:50%;left:14px;transform:translateY(-50%);pointer-events:none}.details-page .input-with-icon.state-wrapper select.contact-input{width:100%;height:48px;padding:0 44px 0 42px;border:0;outline:0;appearance:none;-webkit-appearance:none;background:linear-gradient(45deg,transparent 50%,#708187 50%) right 18px top 22px / 5px 5px no-repeat,linear-gradient(135deg,#708187 50%,transparent 50%) right 13px top 22px / 5px 5px no-repeat;color:var(--details-ink);font-family:inherit;font-size:12px}.details-page .input-hint{margin-top:5px;padding-left:2px;color:#95a1a5;font-size:9px}.details-page .whatsapp-toggle{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid #cce8d9;border-radius:13px;background:linear-gradient(135deg,#f1fbf6,#eaf8f1)}.details-page .whatsapp-icon{display:grid;flex:0 0 auto;place-items:center}.details-page .whatsapp-content{display:grid;min-width:0;flex:1}.details-page .whatsapp-title{color:#236b50;font-size:11px;font-weight:750}.details-page .whatsapp-text{color:#5b8d78;font-size:9px}.details-page .toggle-switch{position:relative;width:44px;height:24px;flex:0 0 44px;cursor:pointer}.details-page .toggle-switch input{position:absolute;opacity:0;pointer-events:none}.details-page .toggle-slider{position:absolute;inset:0;border-radius:999px;background:#b8c5c1;transition:background .2s ease}.details-page .toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #002c3f33;transition:transform .2s ease}.details-page .toggle-switch input:checked+.toggle-slider{background:#25a867}.details-page .toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.details-page .toggle-switch input:focus-visible+.toggle-slider{outline:3px solid rgba(37,168,103,.2);outline-offset:2px}.details-page .assurance-card{position:relative;overflow:hidden;border-color:#e4d8ad;background:radial-gradient(circle at 100% 0,rgba(206,180,95,.18),transparent 18rem),#fffdf7}.details-page .assurance-card:after{content:"";position:absolute;top:-52px;right:-48px;width:132px;height:132px;border:1px solid rgba(169,133,39,.13);border-radius:50%;pointer-events:none}.details-page .assurance-coming-soon-card{min-height:390px;cursor:not-allowed;isolation:isolate}.details-page .assurance-coming-soon-card>:not(.assurance-coming-soon-overlay){opacity:.48;filter:blur(2.6px);pointer-events:none;-webkit-user-select:none;user-select:none}.details-page .assurance-coming-soon-overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:28px;overflow:hidden;border-radius:inherit;background:linear-gradient(135deg,#f6f9f861,#eef2f194),#fff3;-webkit-backdrop-filter:blur(6px) saturate(.8);backdrop-filter:blur(6px) saturate(.8)}.details-page .assurance-coming-soon-overlay:before{content:"";position:absolute;top:-90px;left:-60px;width:230px;height:230px;border-radius:50%;background:#ceb45f33;filter:blur(24px);pointer-events:none}.details-page .assurance-coming-soon-message{position:relative;z-index:1;width:min(350px,100%);padding:25px 26px;border:1px solid rgba(255,255,255,.78);border-radius:20px;background:#ffffffb3;box-shadow:0 22px 55px #002c3f21,inset 0 1px #ffffffdb;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);text-align:center}.details-page .coming-soon-badge{display:inline-flex;min-height:27px;align-items:center;gap:6px;padding:5px 9px;border:1px solid rgba(169,133,39,.26);border-radius:999px;background:#fff8dbe0;color:#806519;font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.details-page .assurance-coming-soon-message h3{margin:13px 0 7px;color:var(--details-navy);font-size:19px}.details-page .assurance-coming-soon-message p{margin:0 auto;max-width:290px;color:#66787e;font-size:10px;line-height:1.65}.details-page .assurance-header{position:relative;z-index:1;margin-bottom:20px}.details-page .assurance-badge{flex:0 0 auto;padding:6px 9px;border:1px solid #dfc86f;border-radius:999px;background:#fff8db;color:#7e6518;font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.details-page .assurance-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.details-page .benefit-card{min-width:0;padding:14px 10px;border:1px solid #e8dfc2;border-radius:13px;background:#ffffffdb;text-align:center}.details-page .benefit-icon{display:grid;width:34px;height:34px;margin:0 auto 8px;place-items:center;border-radius:10px;background:var(--details-navy);color:var(--details-gold)}.details-page .benefit-info{display:grid;gap:1px}.details-page .benefit-label{color:#7a8588;font-size:8px}.details-page .benefit-value{color:var(--details-ink);font-family:Montserrat,sans-serif;font-size:15px;font-weight:750}.details-page .benefit-breakdown{overflow:hidden;color:#9a9180;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.details-page .assurance-options{display:grid;gap:8px;margin-bottom:13px}.details-page .assurance-option{display:flex;min-height:50px;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid #e1e6e7;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.details-page .assurance-option:hover{border-color:#d6bd62;transform:translateY(-1px)}.details-page .assurance-option.selected{border-color:var(--details-gold);background:var(--details-gold-pale)}.details-page .option-content{display:flex;min-width:0;align-items:center;gap:8px;color:#54666c}.details-page .option-content svg{flex:0 0 auto;color:#a9b4b7}.details-page .option-content svg.checked{color:#2a8966}.details-page .option-content span{font-size:11px;font-weight:650}.details-page .assurance-option input{position:absolute;opacity:0}.details-page .radio-circle{position:relative;width:19px;height:19px;flex:0 0 19px;border:2px solid #cbd4d6;border-radius:50%;background:#fff}.details-page .assurance-option.selected .radio-circle{border-color:var(--details-gold-deep)}.details-page .assurance-option.selected .radio-circle:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--details-gold-deep)}.details-page .assurance-option input:focus-visible~.radio-circle{outline:3px solid rgba(206,180,95,.2);outline-offset:2px}.details-page .terms-link{display:inline-flex;min-height:auto;align-items:center;gap:5px;padding:3px 0;border:0;border-radius:0;background:transparent;color:#8b701e;font-family:inherit;font-size:9px;font-weight:700;cursor:pointer}.details-page .terms-link:hover{color:var(--details-navy)}.details-page .fare-section{position:sticky;top:110px;height:fit-content}.details-page .fare-card{overflow:hidden;border:1px solid #d8e3e5;border-radius:20px;background:#fff;box-shadow:0 18px 44px #002c3f1a}.details-page .fare-card-header{position:relative;display:flex;min-height:86px;align-items:center;justify-content:space-between;padding:18px 20px;overflow:hidden;background:linear-gradient(135deg,var(--details-navy),var(--details-navy-light));color:#fff}.details-page .fare-card-header:after{content:"";position:absolute;top:-47px;right:-36px;width:120px;height:120px;border:1px solid rgba(206,180,95,.19);border-radius:50%}.details-page .fare-card-header>div,.details-page .fare-header-icon{position:relative;z-index:1}.details-page .fare-card-header h3{margin:3px 0 0;color:#fff;font-size:18px;font-weight:700}.details-page .fare-header-icon{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(206,180,95,.36);border-radius:12px;background:#ceb45f1f;color:var(--details-gold)}.details-page .selected-seats-display{position:relative;padding:17px 20px;border-bottom:1px dashed #d5dfe1;background:#fbfcfc}.details-page .selected-seats-display:before,.details-page .selected-seats-display:after{content:"";position:absolute;bottom:-9px;width:16px;height:16px;border:1px solid #d8e3e5;border-radius:50%;background:#f6f8f8}.details-page .selected-seats-display:before{left:-9px}.details-page .selected-seats-display:after{right:-9px}.details-page .seats-header{display:flex;align-items:center;gap:7px;margin-bottom:10px;color:#718288;font-size:10px;font-weight:700}.details-page .seats-list{display:flex;flex-wrap:wrap;gap:7px}.details-page .seat-badge{min-width:36px;min-height:29px;padding:5px 10px;border-radius:8px;font-size:10px}.details-page .fare-breakdown{padding:15px 20px 0}.details-page .fare-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #f0f3f4;color:#64767c;font-size:11px}.details-page .fare-row>span:last-child{flex:0 0 auto;color:#324950;font-weight:700}.details-page .fare-row.assurance-row,.details-page .fare-row.assurance-row>span:last-child{color:#8b701e}.details-page .fare-row.assurance-row>span:first-child{display:flex;align-items:center;gap:5px}.details-page .fare-row.total{align-items:flex-end;margin:9px -20px 0;padding:15px 20px;border-top:1px dashed #d5dfe1;border-bottom:0;background:#f5f8f8}.details-page .fare-row.total>span:first-child{display:grid;color:var(--details-ink);font-size:13px;font-weight:750}.details-page .fare-row.total small{color:#8c9a9f;font-size:8px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.details-page .fare-row.total>span:last-child{color:var(--details-navy);font-family:Montserrat,sans-serif;font-size:22px;font-weight:750;letter-spacing:-.04em}.details-page .proceed-btn{display:flex;width:calc(100% - 40px);min-height:52px;align-items:center;justify-content:center;gap:8px;margin:18px 20px 11px;padding:13px 16px;border:0;border-radius:13px;background:var(--details-gold);box-shadow:0 10px 24px #a985273d;color:var(--details-navy);font-family:inherit;font-size:12px;font-weight:850;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.details-page .proceed-btn:hover:not(:disabled){background:#d9c477;box-shadow:0 13px 28px #a985274f;transform:translateY(-2px)}.details-page .proceed-btn:disabled{cursor:wait;opacity:.72}.details-page .btn-loader{width:16px;height:16px;border:2px solid rgba(0,44,63,.25);border-top-color:var(--details-navy);border-radius:50%;animation:detailsSpin .75s linear infinite}@keyframes detailsSpin{to{transform:rotate(360deg)}}.details-page .secure-info{display:flex;align-items:center;justify-content:center;gap:6px;padding:3px 18px 14px;color:#7f8e93;font-size:8px;text-align:center}.details-page .secure-info svg{color:#2f8867}.details-page .booking-trust-list{display:grid;gap:7px;padding:13px 20px 17px;border-top:1px solid #edf1f2;background:#fbfcfc;color:#77878c;font-size:9px}.details-page .booking-trust-list span{display:flex;align-items:center;gap:6px}.details-page .booking-trust-list svg{color:#278563}.details-page .no-data-state{display:grid;justify-items:center;padding:76px 24px;text-align:center}.details-page .no-data-icon{display:grid;width:76px;height:76px;margin-bottom:20px;place-items:center;border:1px solid #e2d59f;border-radius:22px;background:var(--details-gold-pale);color:var(--details-gold-deep)}.details-page .no-data-state h3{margin:0 0 7px;color:var(--details-ink);font-size:20px}.details-page .no-data-state p{margin:0 0 22px;color:var(--details-muted);font-size:12px}.details-page .primary-btn{display:inline-flex;min-height:46px;align-items:center;gap:7px;padding:11px 18px;border:0;border-radius:12px;background:var(--details-gold);color:var(--details-navy);font-family:inherit;font-size:11px;font-weight:800}@media(max-width:1080px){.details-page .details-body{grid-template-columns:minmax(0,1fr) 320px;gap:20px;padding:22px}.details-page .journey-route{grid-template-columns:minmax(110px,.9fr) minmax(125px,1fr) minmax(110px,.9fr);gap:12px}.details-page .form-row.three-cols{grid-template-columns:1fr .55fr}.details-page .form-row.three-cols .form-group:last-child{grid-column:1 / -1}}@media(max-width:900px){.details-page{padding:24px 14px 100px}.details-page .details-body{grid-template-columns:1fr}.details-page .fare-section{position:static}.details-page .fare-section .proceed-btn{position:fixed;z-index:90;right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px;width:calc(100% - 24px);min-height:56px;margin:0;border:1px solid rgba(0,44,63,.13);box-shadow:0 14px 38px #002c3f3d}}@media(max-width:700px){.details-page{padding:16px 10px 96px}.details-page .booking-progress{margin-bottom:14px;padding:9px 12px;border-radius:15px}.details-page .step-icon{width:34px;height:34px;flex-basis:34px;border-radius:10px}.details-page .step-copy small{display:none}.details-page .step-copy span{font-size:10px}.details-page .progress-line{margin:0 8px}.details-page .details-container{border-radius:22px}.details-page .details-header{min-height:144px;align-items:flex-start;padding:25px 20px}.details-page .header-left{align-items:flex-start;gap:12px}.details-page .back-btn{width:40px;height:40px;flex-basis:40px}.details-page .header-info h1{font-size:22px}.details-page .header-info p{max-width:300px;font-size:11px}.details-page .hero-meta{position:absolute;right:17px;bottom:16px;flex-direction:row}.details-page .hero-seat-count{display:none}.details-page .details-body{gap:14px;padding:14px}.details-page .bus-summary-card,.details-page .section-card,.details-page .fare-card{border-radius:16px}.details-page .journey-route{grid-template-columns:1fr;gap:10px}.details-page .route-point-end{text-align:left}.details-page .route-line{width:2px;height:64px;flex-direction:column;margin-left:4px}.details-page .route-dashes{width:1px;height:100%;flex:1;border-top:0;border-left:1px dashed #c5d0d3}.details-page .route-bus{width:30px;height:30px;flex-basis:30px;margin:3px 0}.details-page .journey-footnote{align-items:flex-start;flex-direction:column}.details-page .section-card{padding:18px}.details-page .form-row,.details-page .form-row.three-cols{grid-template-columns:1fr}.details-page .form-row.three-cols .form-group:last-child{grid-column:auto}.details-page .assurance-benefits{grid-template-columns:1fr}.details-page .benefit-card{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:10px;padding:11px;text-align:left}.details-page .benefit-icon{margin:0}.details-page .benefit-info{min-width:0}}@media(max-width:480px){.details-page .step-copy{display:none}.details-page .progress-step{min-width:auto}.details-page .progress-line{flex-basis:50px}.details-page .details-header{min-height:154px;padding:21px 16px}.details-page .details-eyebrow{font-size:8px}.details-page .header-info h1{font-size:19px}.details-page .header-info p{font-size:10px}.details-page .header-badge{padding:7px 10px;font-size:9px}.details-page .bus-summary-header{align-items:flex-start;flex-direction:column;gap:9px}.details-page .journey-date-pill{margin-left:52px}.details-page .bus-summary-content{padding:18px}.details-page .bus-operator,.details-page .passenger-header{align-items:flex-start;flex-direction:column}.details-page .passenger-info{width:100%;flex-wrap:wrap}.details-page .seat-tag{margin-left:44px}.details-page .phone-input-group{grid-template-columns:1fr}.details-page .assurance-header{align-items:flex-start;flex-wrap:wrap}.details-page .assurance-badge{margin-left:57px}.details-page .option-content span{font-size:10px}}@media(prefers-reduced-motion:reduce){.details-page .details-container,.details-page .field-error,.details-page .btn-loader{animation:none}.details-page *,.details-page *:before,.details-page *:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{--color-primary: #1a365d;--color-primary-light: #2c5282;--color-primary-dark: #0d1b2a;--color-secondary: #b8860b;--color-secondary-light: #d4a017;--color-secondary-dark: #8b6914;--color-accent: #2d3748;--color-success: #059669;--color-success-light: #10b981;--color-success-bg: #ecfdf5;--color-warning: #d97706;--color-error: #dc2626;--color-bg: #f7fafc;--color-bg-secondary: #edf2f7;--color-card: #ffffff;--color-text: #1a202c;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease}.payment-page{min-height:100vh;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 50%,var(--color-primary) 100%);padding-top:80px;position:relative}.payment-page:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(184,134,11,.1) 0%,transparent 40%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.05) 0%,transparent 40%);pointer-events:none}.payment-container{max-width:600px;margin:0 auto;padding:16px;position:relative;z-index:1}.payment-header{display:flex;justify-content:space-between;align-items:center;background:var(--color-card);padding:16px 20px;border-radius:var(--radius-lg);margin-bottom:20px;box-shadow:var(--shadow-lg)}.header-left{display:flex;align-items:center;gap:14px}.back-btn{width:42px;height:42px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-accent);transition:var(--transition-fast)}.back-btn:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translate(-2px)}.header-content h1{margin:0;font-size:18px;font-weight:700;color:var(--color-text);letter-spacing:-.02em}.header-subtitle{font-size:13px;color:var(--color-text-secondary)}.header-right{display:flex;align-items:center}.secure-indicator{display:flex;align-items:center;gap:6px;background:var(--color-success-bg);color:var(--color-success);padding:8px 14px;border-radius:var(--radius-full);font-size:12px;font-weight:600}.secure-indicator svg{flex-shrink:0}.payment-main{padding-bottom:40px}.payment-content{display:flex;flex-direction:column;gap:16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-header h2{font-size:15px;font-weight:700;color:var(--color-text);margin:0}.edit-btn{background:none;border:none;color:var(--color-secondary);font-size:13px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:var(--transition-fast)}.edit-btn:hover{background:#b8860b1a}.passenger-count{font-size:13px;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding:4px 10px;border-radius:var(--radius-full)}.summary-section{background:var(--color-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.journey-summary-card{background:var(--color-card);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-md);border:none}.bus-header{display:flex;align-items:center;gap:14px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--color-border)}.bus-icon-wrapper{width:48px;height:48px;background:linear-gradient(135deg,var(--color-secondary),var(--color-secondary-light));border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff}.bus-details h3{margin:0;font-size:16px;font-weight:700;color:var(--color-text)}.bus-type{font-size:13px;color:var(--color-text-secondary)}.route-timeline{position:relative;padding-left:24px;margin-bottom:20px}.timeline-item{display:flex;align-items:flex-start;gap:12px;position:relative}.timeline-marker{position:absolute;left:-24px;width:12px;height:12px;border-radius:var(--radius-full);background:var(--color-secondary);border:2px solid var(--color-card);box-shadow:0 0 0 2px var(--color-secondary)}.timeline-item.end .timeline-marker{background:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.timeline-connector{position:absolute;left:-19px;top:20px;bottom:20px;width:2px;background:linear-gradient(180deg,var(--color-secondary),var(--color-primary))}.timeline-content{flex:1;padding-bottom:24px}.timeline-item.end .timeline-content{padding-bottom:0}.timeline-time{display:flex;align-items:center;gap:6px;font-size:16px;font-weight:700;color:var(--color-text);margin-bottom:2px}.timeline-time svg{color:var(--color-text-muted)}.timeline-city{font-size:14px;font-weight:600;color:var(--color-text);margin-bottom:4px}.timeline-location{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-secondary)}.timeline-location svg{color:var(--color-text-muted);flex-shrink:0}.seats-section{display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:1px solid var(--color-border)}.seats-label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary)}.seats-label svg{color:var(--color-secondary)}.seats-list{display:flex;gap:6px;flex-wrap:wrap}.seat-tag{background:var(--color-bg);color:var(--color-secondary);border:1px solid var(--color-border);padding:5px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600}.passengers-section{background:var(--color-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.passengers-list{display:flex;flex-direction:column;gap:10px}.passenger-card{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border)}.passenger-avatar{width:40px;height:40px;background:var(--color-primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff}.passenger-info{flex:1}.passenger-name{display:block;font-size:14px;font-weight:600;color:var(--color-text)}.passenger-meta{font-size:12px;color:var(--color-text-secondary)}.passenger-seat{display:flex;align-items:center;gap:4px;background:var(--color-bg-secondary);padding:6px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;color:var(--color-secondary)}.passenger-seat svg{flex-shrink:0}.fare-section{background:var(--color-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.fare-breakdown{display:flex;flex-direction:column;gap:12px}.fare-item{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--color-text-secondary);padding-bottom:12px;border-bottom:1px dashed var(--color-border-light)}.fare-item:last-of-type:not(.fare-total){border-bottom:none}.fare-item.assurance{color:var(--color-success)}.fare-item.assurance span:first-child{display:flex;align-items:center;gap:6px}.fare-total{display:flex;justify-content:space-between;align-items:center;font-size:18px;font-weight:700;color:var(--color-text);padding-top:12px;margin-top:4px;border-top:2px solid var(--color-border);border-bottom:none}.trust-section{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.trust-badge{display:flex;align-items:center;gap:6px;background:#fffffff2;padding:10px 16px;border-radius:var(--radius-full);font-size:12px;font-weight:600;color:var(--color-text);box-shadow:var(--shadow-sm)}.trust-badge svg{color:var(--color-success);flex-shrink:0}.gst-invoice-section{background:var(--color-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.gst-checkbox-wrapper{display:flex;align-items:center}.gst-checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.gst-checkbox{display:none}.gst-checkbox-custom{width:22px;height:22px;border:2px solid var(--color-border);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:var(--transition-normal);flex-shrink:0;position:relative}.gst-checkbox:checked+.gst-checkbox-custom{background:var(--color-secondary);border-color:var(--color-secondary)}.gst-checkbox:checked+.gst-checkbox-custom:after{content:"✓";color:#fff;font-size:14px;font-weight:700}.gst-checkbox-text{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--color-text)}.gst-checkbox-text svg{color:var(--color-secondary)}.gst-details-form{margin-top:20px;padding-top:20px;border-top:1px dashed var(--color-border-light);display:flex;flex-direction:column;gap:16px}.gst-input-group{display:flex;flex-direction:column;gap:6px}.gst-input-group label{font-size:13px;font-weight:600;color:var(--color-text-secondary)}.gst-input-group input{padding:12px 14px;font-size:14px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text);transition:var(--transition-normal)}.gst-input-group input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px #d4a01726}.gst-input-group input::placeholder{color:var(--color-text-muted)}.pay-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 24px;font-size:16px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--color-secondary),var(--color-secondary-dark));border:none;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-normal);box-shadow:0 8px 20px #b8860b59;position:relative;overflow:hidden}.pay-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.pay-button:hover:not(:disabled):before{left:100%}.pay-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px #b8860b73}.pay-button:active:not(:disabled){transform:translateY(0)}.pay-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.pay-button svg{flex-shrink:0}.spinner{animation:spin 1s linear infinite}.footer-info{text-align:center;padding:8px 0}.help-text{font-size:13px;color:#fffc;margin:0 0 8px}.help-link{display:inline-flex;align-items:center;gap:4px;color:#fff;font-weight:600;text-decoration:none}.help-link:hover{text-decoration:underline}.terms-text{font-size:12px;color:#fff9;margin:0}.terms-text a{color:#fffc;text-decoration:underline}.no-data-card{background:var(--color-card);border-radius:var(--radius-xl);padding:60px 40px;text-align:center;max-width:450px;margin:40px auto;box-shadow:var(--shadow-xl)}.no-data-icon{color:var(--color-text-muted);margin-bottom:20px}.no-data-card h3{font-size:22px;color:var(--color-text);margin:0 0 12px;font-weight:700}.no-data-card p{font-size:14px;color:var(--color-text-secondary);margin:0 0 28px;line-height:1.6}.go-home-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--color-secondary),var(--color-secondary-dark));border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-normal);box-shadow:0 4px 12px #b8860b4d}.go-home-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #b8860b66}.payment-page-processing{display:flex;align-items:center;justify-content:center;padding-top:0}.processing-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 160px);padding:20px}.processing-card{text-align:center;background:var(--color-card);padding:50px 60px;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:420px;width:100%}.processing-animation{margin-bottom:28px}.processing-animation svg{color:var(--color-secondary)}.processing-card h2{font-size:24px;color:var(--color-text);margin:0 0 10px;font-weight:700}.processing-card>p{font-size:14px;color:var(--color-text-secondary);margin:0 0 24px}.processing-amount{font-size:40px;font-weight:800;background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:32px}.processing-steps{display:flex;flex-direction:column;gap:16px;align-items:flex-start;padding-left:20px}.processing-steps .step{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--color-text-muted)}.processing-steps .step.active{color:var(--color-secondary);font-weight:600}.step-indicator{width:10px;height:10px;border-radius:var(--radius-full);background:var(--color-border)}.processing-steps .step.active .step-indicator{background:var(--color-secondary);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.payment-page-success{display:flex;align-items:center;justify-content:center;padding-top:0}.success-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:20px}.success-card{text-align:center;background:var(--color-card);padding:40px 32px;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:500px;width:100%}.success-animation{position:relative;width:100px;height:100px;margin:0 auto 24px}.success-circle{position:relative;z-index:2;animation:scaleIn .5s ease}.success-circle svg{color:var(--color-success)}.success-pulse{position:absolute;inset:-10px;background:var(--color-success-bg);border-radius:var(--radius-full);animation:successPulse 1.5s ease-out infinite}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes successPulse{0%{transform:scale(.8);opacity:.8}to{transform:scale(1.4);opacity:0}}.success-title{font-size:26px;font-weight:800;color:var(--color-text);margin:0 0 8px}.success-subtitle{font-size:15px;color:var(--color-text-secondary);margin:0 0 24px}.booking-reference{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:24px}.reference-item{display:flex;flex-direction:column;align-items:center;background:var(--color-bg);padding:12px 20px;border-radius:var(--radius-md);border:1px solid var(--color-border)}.reference-label{font-size:11px;text-transform:uppercase;color:var(--color-text-secondary);letter-spacing:.05em;margin-bottom:4px}.reference-value{font-size:15px;font-weight:700;color:var(--color-secondary)}.ticket-card-redesigned{background:var(--color-card);border-radius:var(--radius-lg);margin-bottom:24px;box-shadow:0 4px 20px #00000014;overflow:hidden}.ticket-top-strip,.ticket-bottom-strip{height:8px;background:linear-gradient(135deg,var(--color-secondary),var(--color-secondary-light));position:relative}.strip-pattern{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0px,transparent 8px,rgba(255,255,255,.2) 8px,rgba(255,255,255,.2) 16px)}.ticket-content{padding:20px}.ticket-bus-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.bus-info-left{display:flex;align-items:center;gap:12px}.bus-icon-badge{width:44px;height:44px;background:linear-gradient(135deg,var(--color-bg),var(--color-bg-secondary));border:2px dashed var(--color-border);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-secondary)}.bus-text{text-align:left}.bus-text h4{margin:0;font-size:16px;font-weight:700;color:var(--color-text)}.bus-text span{font-size:13px;color:var(--color-text-secondary)}.total-paid-badge{text-align:right}.paid-label{display:block;font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:4px}.paid-amount{font-size:22px;font-weight:800;color:var(--color-secondary)}.ticket-divider{display:flex;align-items:center;margin:0 -20px 20px;position:relative}.divider-circle{width:20px;height:20px;background:var(--color-bg);border-radius:var(--radius-full);flex-shrink:0}.divider-circle.left{margin-left:-10px}.divider-circle.right{margin-right:-10px}.divider-line{flex:1;height:1px;background:repeating-linear-gradient(90deg,var(--color-border) 0px,var(--color-border) 6px,transparent 6px,transparent 12px)}.journey-route-section{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;padding:16px;background:var(--color-bg);border-radius:var(--radius-md)}.journey-point{flex:1}.journey-point.departure{text-align:left}.journey-point.arrival{text-align:right}.journey-time{font-size:24px;font-weight:800;color:var(--color-text);line-height:1.1;margin-bottom:6px}.journey-city{font-size:15px;font-weight:600;color:var(--color-text);margin-bottom:6px}.journey-location{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-secondary)}.journey-point.arrival .journey-location{justify-content:flex-end}.journey-location svg{color:var(--color-text-muted);flex-shrink:0}.journey-connector{display:flex;flex-direction:column;align-items:center;padding:0 16px;margin-top:8px}.connector-line{display:flex;align-items:center;gap:6px;margin-bottom:6px}.connector-line span{width:6px;height:6px;background:var(--color-text-muted);border-radius:var(--radius-full);opacity:.5}.connector-line span:nth-child(3){opacity:.7}.connector-arrow{color:var(--color-secondary)}.ticket-info-chips{display:flex;justify-content:center;gap:16px}.info-chip{display:flex;align-items:center;gap:10px;padding:12px 20px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-full);min-width:130px}.info-chip svg{color:var(--color-secondary);flex-shrink:0}.chip-content{text-align:left}.chip-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.chip-value{font-size:14px;font-weight:700;color:var(--color-text)}.confirmation-message{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;background:var(--color-success-bg);border-radius:var(--radius-md);margin-bottom:24px}.confirmation-message svg{color:var(--color-success);flex-shrink:0}.confirmation-message p{font-size:13px;color:var(--color-success);margin:0;text-align:left}.confirmation-message strong{color:var(--color-text)}.success-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn-primary{display:flex;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--color-secondary),var(--color-secondary-dark));border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-normal);box-shadow:0 4px 12px #b8860b4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #b8860b66}.btn-secondary{display:flex;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:600;color:var(--color-text);background:var(--color-card);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-normal)}.btn-secondary:hover{background:var(--color-bg);border-color:var(--color-primary)}@media(max-width:640px){.payment-container{padding:12px}.payment-header{flex-direction:column;gap:12px;padding:16px;text-align:center}.header-left{width:100%;justify-content:flex-start}.header-right{width:100%;justify-content:center}.summary-section,.passengers-section,.fare-section{padding:16px}.journey-summary-card{padding:14px}.trust-section{flex-direction:column;gap:10px}.trust-badge{justify-content:center;width:100%}.pay-button{padding:16px 20px;font-size:16px}.processing-card{padding:40px 24px}.processing-amount{font-size:32px}.success-card{padding:32px 20px}.success-title{font-size:22px}.booking-reference{flex-direction:column;gap:10px}.reference-item{width:100%}.ticket-bus-row{flex-direction:column;gap:16px;align-items:flex-start}.total-paid-badge{text-align:left}.journey-route-section{flex-direction:column;gap:12px;padding:14px}.journey-point.departure,.journey-point.arrival{text-align:center;width:100%}.journey-location{justify-content:center!important}.journey-connector{transform:rotate(90deg);padding:12px 0}.ticket-info-chips{flex-direction:column;gap:10px}.info-chip{width:100%;justify-content:center}.success-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}}@media(max-width:380px){.header-content h1{font-size:16px}.secure-indicator{font-size:11px;padding:6px 12px}.section-header h2,.bus-details h3,.timeline-time{font-size:14px}.fare-total{font-size:16px}.payment-container{padding:8px}.payment-header{padding:12px;border-radius:var(--radius-md);margin-bottom:12px}.back-btn{width:36px;height:36px}.summary-section,.passengers-section,.fare-section{padding:12px;border-radius:var(--radius-md)}.passenger-card{padding:12px}.passenger-detail span{font-size:12px}.fare-row{font-size:13px}.pay-button{padding:14px 16px;font-size:15px;border-radius:var(--radius-md)}.processing-card{padding:30px 16px;border-radius:var(--radius-lg)}.processing-amount{font-size:28px}.success-card{padding:24px 16px}.success-title{font-size:20px}.download-ticket-btn,.btn-primary,.btn-secondary{padding:12px 16px;font-size:14px}}.session-expired-overlay{position:fixed;inset:0;background:#1a365de6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeInOverlay .3s ease}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.session-expired-popup{background:#fff;border-radius:24px;padding:40px 36px;max-width:420px;width:100%;text-align:center;box-shadow:0 25px 60px #1a365d66;animation:popupSlideUp .4s ease}@keyframes popupSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.session-expired-icon{width:90px;height:90px;background:linear-gradient(135deg,#fff3cd,#ffeeba);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;color:#d97706;animation:iconPulse 2s ease-in-out infinite}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.session-expired-popup h2{margin:0 0 14px;font-size:26px;font-weight:700;color:var(--color-primary)}.session-expired-popup p{margin:0 0 28px;font-size:15px;line-height:1.7;color:#64748b}.session-expired-actions{display:flex;flex-direction:column;gap:12px}.session-btn-primary{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 24px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--color-secondary),#9a7b3a);border:none;border-radius:14px;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #b8860b59}.session-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #b8860b73}.session-btn-primary:active{transform:translateY(0)}.session-btn-secondary{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;font-size:15px;font-weight:600;color:var(--color-primary);background:#f1f5f9;border:2px solid #e2e8f0;border-radius:14px;cursor:pointer;transition:all .3s ease}.session-btn-secondary:hover{background:#e2e8f0;border-color:#cbd5e1}@media(max-width:480px){.session-expired-popup{padding:32px 24px;margin:16px}.session-expired-icon{width:76px;height:76px;margin-bottom:20px}.session-expired-icon svg{width:44px;height:44px}.session-expired-popup h2{font-size:22px}.session-expired-popup p{font-size:14px}.session-btn-primary,.session-btn-secondary{padding:14px 20px;font-size:15px}}.payment-page{--payment-navy: #002c3f;--payment-navy-soft: #0a465d;--payment-gold: #be951f;--payment-border: #dfe7ea;min-height:100vh;padding:32px 24px 56px;background:radial-gradient(circle at 8% 0%,rgba(190,149,31,.1),transparent 30%),#f4f7f8}.payment-page:before{display:none}.payment-page .payment-container{max-width:1180px;padding:0}.payment-page .payment-header{padding:20px 24px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--payment-navy),var(--payment-navy-soft));box-shadow:0 14px 36px #002c3f24}.payment-page .header-content h1{color:#fff;font-size:22px}.payment-page .header-subtitle{color:#ffffffb3}.payment-page .back-btn{border-color:#fff3;background:#ffffff1a;color:#fff}.payment-page .back-btn:hover{border-color:#ffffff59;background:#ffffff2e}.payment-page .secure-indicator{border:1px solid rgba(135,224,187,.22);background:#1a8b602e;color:#baf1d8}.checkout-progress{display:flex;max-width:680px;align-items:center;justify-content:center;margin:22px auto 26px;padding:13px 20px;border:1px solid var(--payment-border);border-radius:999px;background:#fff;box-shadow:0 8px 24px #002c3f0d}.checkout-step{display:flex;align-items:center;gap:7px;color:#819097;font-size:12px;font-weight:700;white-space:nowrap}.checkout-step.complete{color:#16845b}.checkout-step.active{color:var(--payment-navy)}.checkout-line{width:64px;height:2px;margin:0 12px;background:#dfe7ea}.checkout-line.complete,.checkout-line.active{background:linear-gradient(90deg,#16845b,var(--payment-gold))}.payment-page .payment-main{padding-bottom:0}.payment-page .payment-content{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.75fr);gap:20px 24px;align-items:start}.payment-page .summary-section,.payment-page .passengers-section,.payment-page .fare-section,.payment-page .gst-invoice-section{border:1px solid var(--payment-border);border-radius:16px;background:#fff;box-shadow:0 10px 30px #002c3f0e}.payment-page .summary-section{grid-column:1;grid-row:1;padding:22px}.payment-page .passengers-section{grid-column:1;grid-row:2 / span 5;padding:22px}.payment-page .fare-section{position:sticky;top:88px;grid-column:2;grid-row:1;padding:22px}.payment-page .gst-invoice-section{grid-column:2;grid-row:2;padding:20px}.payment-page .trust-section,.payment-page .payment-error-banner,.payment-page .pay-button,.payment-page .footer-info{grid-column:2}.payment-page .trust-section{grid-row:3}.payment-page .payment-error-banner{grid-row:4}.payment-page .pay-button{grid-row:5}.payment-page .footer-info{grid-row:6}.payment-page .section-header{margin-bottom:16px;padding:0 0 14px;border-bottom:1px solid #edf1f3}.payment-page .section-header h2{color:#17262d;font-size:17px}.payment-page .journey-summary-card{padding:0;border:0;box-shadow:none}.payment-page .bus-header{position:relative;padding:4px 0 18px}.payment-page .bus-icon-wrapper,.payment-page .passenger-avatar{background:var(--payment-navy)}.payment-page .journey-date-chip{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:7px 10px;border-radius:999px;background:#f4f7f8;color:#61727a;font-size:11px;font-weight:700}.payment-page .timeline-marker{background:var(--payment-gold);box-shadow:0 0 0 2px var(--payment-gold)}.payment-page .timeline-connector{background:linear-gradient(180deg,var(--payment-gold),var(--payment-navy))}.payment-page .seat-tag,.payment-page .passenger-seat{border-color:#be951f4d;background:#fffaf0;color:#8b6a10}.payment-page .passenger-card{border-color:#e3e9ec;background:#f7f9fa}.payment-page .fare-total{margin-top:8px;padding:16px 14px 0;border-top-color:#be951f73;color:var(--payment-navy);font-size:20px}.payment-page .gst-checkbox:checked+.gst-checkbox-custom{border-color:var(--payment-gold);background:var(--payment-gold)}.payment-page .trust-section{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.payment-page .trust-badge{justify-content:center;padding:10px 8px;border:1px solid var(--payment-border);border-radius:10px;box-shadow:none;text-align:center}.payment-page .payment-error-banner{display:flex;align-items:flex-start;gap:9px;padding:13px 14px;border:1px solid #f3b9b9;border-radius:10px;background:#fff2f2;color:#a72e2e;font-size:13px;line-height:1.45}.payment-page .payment-error-banner svg{flex:0 0 auto}.payment-page .pay-button{min-height:56px;background:var(--payment-gold);box-shadow:0 9px 22px #be951f42}.payment-page .pay-button:hover:not(:disabled){background:#a98218}.payment-page .help-text,.payment-page .terms-text{color:#6c7c84}.payment-page .help-link,.payment-page .terms-text a{color:#8b6a10}.payment-page-success,.payment-page-processing{padding:36px 20px}.payment-page .success-container,.payment-page .processing-container{width:100%;min-height:calc(100vh - 72px)}.payment-page .success-card{max-width:780px;padding:42px;border:1px solid var(--payment-border);border-radius:20px;box-shadow:0 24px 70px #002c3f1f}.payment-page .success-kicker{display:inline-flex;align-items:center;gap:6px;margin:2px 0 8px;padding:6px 10px;border-radius:999px;background:#eaf8f1;color:#16845b;font-size:11px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.payment-page .ticket-card-redesigned{border:1px solid var(--payment-border);box-shadow:0 12px 36px #002c3f14}.payment-page .ticket-top-strip,.payment-page .ticket-bottom-strip{background:linear-gradient(90deg,var(--payment-navy),var(--payment-gold))}.payment-page .btn-primary{background:var(--payment-gold)}@media(max-width:900px){.payment-page{padding:20px 14px 90px}.payment-page .payment-content{grid-template-columns:1fr}.payment-page .summary-section,.payment-page .passengers-section,.payment-page .fare-section,.payment-page .gst-invoice-section,.payment-page .trust-section,.payment-page .payment-error-banner,.payment-page .pay-button,.payment-page .footer-info{position:static;grid-column:1;grid-row:auto}.payment-page .summary-section{order:1}.payment-page .passengers-section{order:2}.payment-page .fare-section{order:3}.payment-page .gst-invoice-section{order:4}.payment-page .trust-section{order:5}.payment-page .payment-error-banner{order:6}.payment-page .pay-button{order:7}.payment-page .footer-info{order:8}}@media(max-width:640px){.payment-page .payment-header{align-items:stretch}.checkout-progress{justify-content:space-between;border-radius:14px}.checkout-step span,.checkout-line,.payment-page .journey-date-chip{display:none}.payment-page .success-card{padding:28px 18px}}.my-bookings-page{--bookings-ink: #002c3f;--bookings-ink-soft: #0b4157;--bookings-gold: #ceb45f;--bookings-gold-dark: #98762a;--bookings-cream: #fff9eb;--bookings-text: #173645;--bookings-muted: #72828b;--bookings-border: #e6ecec;--bookings-surface: #ffffff;position:relative;min-height:72vh;padding:clamp(30px,4vw,58px) clamp(18px,4vw,54px) clamp(70px,7vw,100px);overflow:hidden;background:radial-gradient(circle at 7% 8%,rgba(206,180,95,.18),transparent 24%),radial-gradient(circle at 96% 58%,rgba(0,44,63,.08),transparent 22%),linear-gradient(180deg,#f9fbfa,#f3f7f7);color:var(--bookings-text)}.my-bookings-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bookings-orbit{position:absolute;border:1px solid rgba(206,180,95,.25);border-radius:50%;pointer-events:none}.bookings-orbit:before,.bookings-orbit:after{content:"";position:absolute;border-radius:50%;background:var(--bookings-gold);box-shadow:0 0 0 7px #ceb45f1f}.bookings-orbit-one{top:30px;left:-150px;width:330px;height:330px}.bookings-orbit-one:before{top:48px;right:35px;width:7px;height:7px}.bookings-orbit-two{right:-110px;bottom:140px;width:270px;height:270px}.bookings-orbit-two:after{bottom:30px;left:47px;width:6px;height:6px}.bookings-shell{position:relative;z-index:1;display:grid;min-width:0;grid-template-columns:258px minmax(0,1fr);gap:clamp(24px,3vw,42px);width:100%;max-width:1360px;margin:0 auto}.bookings-sidebar{position:sticky;top:112px;width:100%;min-width:0;max-width:100%;align-self:start;padding:22px;border:1px solid rgba(0,44,63,.08);border-radius:24px;background:#ffffffe0;box-shadow:0 20px 55px #002c3f14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bookings-profile{display:flex;min-width:0;align-items:center;gap:13px;padding-bottom:20px;border-bottom:1px solid var(--bookings-border)}.bookings-avatar{position:relative;display:grid;width:54px;height:54px;flex:0 0 54px;place-items:center;overflow:visible;border:3px solid #fff;border-radius:18px;background:linear-gradient(145deg,var(--bookings-gold) 0%,#e7cf80 100%);box-shadow:0 10px 24px #98762a38;color:var(--bookings-ink);font-size:21px;font-weight:800}.bookings-avatar img{width:100%;height:100%;border-radius:15px;object-fit:cover}.bookings-avatar-status{position:absolute;right:-3px;bottom:-3px;width:13px;height:13px;border:3px solid #fff;border-radius:50%;background:#2ba471}.bookings-profile-copy{display:flex;min-width:0;flex-direction:column}.bookings-profile-copy>span{color:var(--bookings-muted);font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.bookings-profile-copy strong{overflow:hidden;color:var(--bookings-ink);font-size:16px;text-overflow:ellipsis;white-space:nowrap}.bookings-profile-copy small{display:block;max-width:140px;margin-top:2px;overflow:hidden;color:var(--bookings-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.bookings-nav{display:flex;min-width:0;max-width:100%;flex-direction:column;gap:6px;padding:18px 0}.bookings-nav-item{display:flex;width:100%;min-height:46px;align-items:center;justify-content:space-between;padding:11px 12px;border:1px solid transparent;border-radius:13px;background:transparent;color:#526772;font-size:13px;font-weight:650;text-align:left;transition:.2s ease}.bookings-nav-item>span:first-child{display:flex;align-items:center;gap:10px}.bookings-nav-item:hover:not(:disabled){border-color:#ceb45f4d;background:var(--bookings-cream);color:var(--bookings-ink);transform:translate(2px)}.bookings-nav-item.active{border-color:#ceb45f57;background:linear-gradient(110deg,#fff8e4,#fffdf8);color:var(--bookings-ink);box-shadow:0 8px 20px #98762a14}.bookings-nav-item:disabled{cursor:not-allowed;opacity:.55}.bookings-nav-item>small{padding:3px 6px;border-radius:999px;background:#eef2f2;color:#71818a;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.bookings-nav-count{display:grid;min-width:22px;height:22px;place-items:center;padding:0 6px;border-radius:999px;background:var(--bookings-ink);color:#fff;font-size:10px;font-weight:800}.bookings-sidebar-cta{position:relative;display:flex;flex-direction:column;gap:12px;overflow:hidden;padding:18px;border-radius:18px;background:radial-gradient(circle at 100% 0,rgba(206,180,95,.28),transparent 42%),var(--bookings-ink);color:#fff}.bookings-sidebar-cta:after{content:"";position:absolute;right:-24px;bottom:-30px;width:90px;height:90px;border:1px solid rgba(206,180,95,.25);border-radius:50%}.bookings-cta-icon{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;background:var(--bookings-gold);color:var(--bookings-ink)}.bookings-sidebar-cta strong{font-size:13px}.bookings-sidebar-cta p{margin:3px 0 0;color:#ffffffa3;font-size:11px;line-height:1.55}.bookings-sidebar-cta button{position:relative;z-index:1;display:flex;min-height:39px;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border:0;border-radius:11px;background:#fff;color:var(--bookings-ink);font-size:11px;font-weight:800}.bookings-content{width:100%;min-width:0;max-width:100%}.bookings-hero{position:relative;display:grid;width:100%;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr) auto;gap:28px;min-height:292px;align-items:end;overflow:hidden;padding:clamp(28px,4vw,44px);border-radius:30px;background:radial-gradient(circle at 87% 16%,rgba(206,180,95,.26),transparent 28%),linear-gradient(135deg,#002c3f,#053b50 62%,#0b4b61);box-shadow:0 26px 60px #002c3f33;color:#fff}.bookings-hero:before{content:"";position:absolute;top:-100px;right:-60px;width:300px;height:300px;border:1px solid rgba(255,255,255,.11);border-radius:50%;box-shadow:0 0 0 38px #ffffff06,0 0 0 76px #ffffff05}.bookings-hero-route{position:absolute;top:38px;right:42px;display:flex;width:min(30%,250px);align-items:center;color:var(--bookings-gold)}.bookings-hero-route>span{height:1px;flex:1;border-top:1px dashed rgba(206,180,95,.55)}.bookings-hero-route svg{margin:0 10px;transform:rotate(-4deg)}.bookings-hero-copy{position:relative;z-index:1;min-width:0;max-width:620px}.bookings-eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:17px;color:var(--bookings-gold);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.bookings-hero h1{margin:0;color:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:clamp(30px,4vw,48px);font-weight:750;letter-spacing:-.045em;line-height:1.07;overflow-wrap:anywhere}.bookings-hero h1 span{color:var(--bookings-gold)}.bookings-hero-copy>p{max-width:510px;margin:15px 0 0;color:#ffffffab;font-size:13px}.bookings-stats{position:relative;z-index:1;display:flex;align-items:stretch;padding:12px 2px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#ffffff12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bookings-stats>div{display:flex;min-width:92px;flex-direction:column;align-items:center;justify-content:center;padding:2px 14px;border-right:1px solid rgba(255,255,255,.12)}.bookings-stats>div:last-child{border-right:0}.bookings-stats strong{color:#fff;font-size:22px;line-height:1}.bookings-stats span{margin-top:6px;color:#ffffff8c;font-size:8px;font-weight:700;letter-spacing:.06em;white-space:nowrap;text-transform:uppercase}.bookings-toolbar{display:flex;width:100%;min-width:0;max-width:100%;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:34px}.bookings-toolbar-kicker{color:var(--bookings-gold-dark);font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.bookings-toolbar h2{margin:3px 0 0;color:var(--bookings-ink);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:27px;font-weight:800;letter-spacing:-.035em}.bookings-search{position:relative;display:flex;width:min(100%,354px);height:48px;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--bookings-border);border-radius:15px;background:#ffffffeb;color:#8a989f;box-shadow:0 9px 25px #002c3f0b;transition:.2s ease}.bookings-search:focus-within{border-color:#ceb45fe6;box-shadow:0 0 0 4px #ceb45f21;color:var(--bookings-gold-dark)}.bookings-search input{width:100%;min-width:0;height:100%;padding:0;border:0;outline:0;background:transparent;color:var(--bookings-text);font:inherit;font-size:12px}.bookings-search input::placeholder{color:#98a4aa}.bookings-search input::-webkit-search-cancel-button{display:none}.bookings-search button{display:grid;width:28px;height:28px;min-height:28px;flex:0 0 28px;place-items:center;padding:0;border:0;border-radius:50%;background:#edf2f2;color:#657982}.my-bookings-page .booking-tabs{display:flex;width:100%;min-width:0;max-width:100%;gap:7px;margin:20px 0 24px;padding:6px;overflow-x:auto;border:1px solid var(--bookings-border);border-radius:16px;background:#ffffffa3;scrollbar-width:none}.my-bookings-page .booking-tabs::-webkit-scrollbar{display:none}.booking-tab{display:inline-flex;min-height:38px;align-items:center;gap:7px;padding:8px 13px;border:0;border-radius:11px;background:transparent;color:#6c7e87;font-size:11px;font-weight:750;white-space:nowrap;transition:.2s ease}.booking-tab:hover{background:#fff;color:var(--bookings-ink)}.booking-tab span{display:grid;min-width:19px;height:19px;place-items:center;padding:0 5px;border-radius:999px;background:#e9efef;color:#647781;font-size:8px;font-weight:800}.booking-tab.active{background:var(--bookings-ink);color:#fff;box-shadow:0 8px 18px #002c3f26}.booking-tab.active span{background:var(--bookings-gold);color:var(--bookings-ink)}.bookings-state{display:flex;min-height:310px;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;border:1px dashed #d9e1e1;border-radius:24px;background:#ffffffb8;text-align:center}.bookings-spinner{display:block;width:38px;height:38px;border:3px solid rgba(0,44,63,.11);border-top-color:var(--bookings-gold);border-radius:50%;animation:bookings-spin .75s linear infinite}@keyframes bookings-spin{to{transform:rotate(360deg)}}.bookings-state h3{margin:18px 0 0;color:var(--bookings-ink);font-size:18px}.bookings-state p{max-width:390px;margin:8px 0 0;color:var(--bookings-muted);font-size:12px;line-height:1.65}.bookings-state>button{min-height:42px;margin-top:20px;padding:10px 20px;border:0;border-radius:12px;background:var(--bookings-ink);color:#fff;font-size:11px;font-weight:800}.bookings-state-icon{display:grid;width:62px;height:62px;place-items:center;border-radius:20px;background:#fff0f0;color:#c64b4b}.empty-ticket{position:relative;display:grid;width:92px;height:72px;place-items:center;border:2px solid var(--bookings-gold);border-radius:15px;background:var(--bookings-cream);color:var(--bookings-ink);transform:rotate(-4deg)}.empty-ticket:before,.empty-ticket:after{content:"";position:absolute;top:50%;width:15px;height:15px;border:2px solid var(--bookings-gold);border-radius:50%;background:#f5f8f7;transform:translateY(-50%)}.empty-ticket:before{left:-10px}.empty-ticket:after{right:-10px}.empty-ticket>span{position:absolute;left:14px;right:14px;bottom:9px;border-bottom:1px dashed rgba(152,118,42,.45)}.bookings-list{display:flex;width:100%;min-width:0;max-width:100%;flex-direction:column;gap:15px}.bookings-result-note{display:flex;align-items:center;justify-content:space-between;padding:0 3px 3px;color:#8b999f;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.booking-card{position:relative;width:100%;min-width:0;max-width:100%;overflow:hidden;border:1px solid var(--bookings-border);border-radius:23px;background:var(--bookings-surface);box-shadow:0 13px 36px #002c3f11;animation:booking-card-in .4s ease both;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}@keyframes booking-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.booking-card:before{content:"";position:absolute;top:0;bottom:0;left:0;z-index:2;width:4px;background:#8c9ba1}.booking-card.status-confirmed:before,.booking-card.status-completed:before{background:#2f9d70}.booking-card.status-pending:before{background:#d49c2e}.booking-card.status-cancelled:before,.booking-card.status-failed:before{background:#c95555}.booking-card:hover{border-color:#ceb45f80;box-shadow:0 18px 45px #002c3f1c;transform:translateY(-2px)}.booking-card.expanded{border-color:#ceb45f94;box-shadow:0 22px 50px #002c3f1f}.booking-card-summary{display:block;width:100%;padding:0;border:0;border-radius:0;background:#fff;color:inherit;text-align:left}.booking-card-summary:focus-visible{outline:3px solid rgba(206,180,95,.45);outline-offset:-3px}.booking-card-topline{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:18px 23px 16px 27px;border-bottom:1px dashed #dce4e4;background:linear-gradient(90deg,#fff 65%,#fbfcfb)}.booking-date span,.booking-reference span{display:flex;align-items:center;gap:6px;margin-bottom:3px;color:var(--bookings-muted);font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.booking-date span svg{color:var(--bookings-gold-dark)}.booking-date strong{color:var(--bookings-ink);font-size:13px;font-weight:750}.booking-reference{max-width:190px;text-align:right}.booking-reference span{justify-content:flex-end}.booking-reference strong{display:block;overflow:hidden;color:#506670;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.booking-status{display:inline-flex;min-height:28px;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:#edf2f2;color:#61737c;font-size:9px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.booking-status>span{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px currentColor;opacity:.85}.booking-status.confirmed,.booking-status.completed{background:#e9f7f1;color:#227e58}.booking-status.pending{background:#fff5dd;color:#a87616}.booking-status.cancelled,.booking-status.failed{background:#fff0ef;color:#b74545}.booking-route{display:grid;grid-template-columns:minmax(110px,1fr) minmax(130px,1.2fr) minmax(110px,1fr);align-items:center;gap:clamp(12px,3vw,32px);padding:24px 27px}.booking-route-stop{min-width:0}.booking-route-stop>span{display:block;margin-bottom:3px;color:var(--bookings-gold-dark);font-size:11px;font-weight:800}.booking-route-stop strong{display:block;overflow:hidden;color:var(--bookings-ink);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:clamp(17px,2vw,23px);font-weight:800;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap}.booking-route-stop small{display:block;margin-top:3px;color:#9aa5aa;font-size:9px}.booking-route-stop.destination{text-align:right}.booking-route-line{display:flex;align-items:center}.booking-route-line>span{position:relative;height:1px;flex:1;border-top:1px dashed #c8d3d4}.booking-route-line>span:first-child:before,.booking-route-line>span:last-child:after{content:"";position:absolute;top:-4px;width:7px;height:7px;border:2px solid var(--bookings-gold);border-radius:50%;background:#fff}.booking-route-line>span:first-child:before{left:0}.booking-route-line>span:last-child:after{right:0}.booking-route-line>div{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;margin:0 8px;border-radius:12px;background:var(--bookings-ink);color:var(--bookings-gold);box-shadow:0 8px 16px #002c3f24}.booking-card-footer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:15px 23px 16px 27px;border-top:1px solid #eef2f2;background:#fbfcfc}.booking-operator{display:flex;min-width:0;align-items:center;gap:10px}.booking-operator-icon{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border:1px solid #e5ebeb;border-radius:11px;background:#fff;color:var(--bookings-ink)}.booking-operator>span:last-child{display:flex;min-width:0;flex-direction:column}.booking-operator strong{overflow:hidden;color:var(--bookings-text);font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.booking-operator small{overflow:hidden;margin-top:2px;color:#89979e;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.booking-card-facts{display:flex;align-items:center;gap:15px;color:#647780}.booking-card-facts span{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700}.booking-card-facts svg{color:var(--bookings-gold-dark)}.booking-card-facts strong{color:var(--bookings-ink);font-size:14px}.booking-expand-label{display:inline-flex;align-items:center;gap:5px;color:var(--bookings-ink);font-size:9px;font-weight:800;text-transform:uppercase}.booking-expand-label svg{transition:transform .2s ease}.booking-card.expanded .booking-expand-label svg{transform:rotate(180deg)}.booking-card-details{padding:25px 27px 27px;border-top:1px solid var(--bookings-border);background:linear-gradient(#ffffffeb,#ffffffeb),radial-gradient(circle at 10px 10px,#dfe7e7 1px,transparent 1.2px);background-size:auto,18px 18px;animation:booking-details-in .25s ease both}@keyframes booking-details-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.booking-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.booking-detail-item{display:flex;min-width:0;align-items:flex-start;gap:9px;padding:14px;border:1px solid #e9eeee;border-radius:14px;background:#ffffffe6}.detail-icon{display:grid;width:33px;height:33px;flex:0 0 33px;place-items:center;border-radius:10px;background:var(--bookings-cream);color:var(--bookings-gold-dark)}.booking-detail-item>div{display:flex;min-width:0;flex-direction:column}.booking-detail-item small,.booking-payment-row small{margin-bottom:3px;color:#8b999f;font-size:8px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.booking-detail-item strong{overflow:hidden;color:var(--bookings-text);font-size:10px;font-weight:750;line-height:1.4;text-overflow:ellipsis}.booking-passengers{margin-top:18px;padding:18px;border:1px solid #e7eded;border-radius:16px;background:#fffffff0}.booking-section-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #edf1f1}.booking-section-heading>div{display:flex;align-items:center;gap:8px;color:var(--bookings-ink);font-size:11px;font-weight:800;text-transform:uppercase}.booking-section-heading>div svg{color:var(--bookings-gold-dark)}.booking-section-heading>small{color:#8c9a9f;font-size:9px}.booking-passenger-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-top:12px}.booking-passenger{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;min-width:0;padding:8px;border-radius:12px;background:#f8fafa}.passenger-initial{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:var(--bookings-ink);color:var(--bookings-gold);font-size:11px;font-weight:800}.booking-passenger>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.booking-passenger strong{overflow:hidden;color:var(--bookings-text);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.booking-passenger small{color:#929fa5;font-size:8px}.passenger-seat-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #eadfb8;border-radius:9px;background:var(--bookings-cream);color:#765b1d;font-size:8px;font-weight:800}.booking-payment-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:16px 18px;border-radius:15px;background:var(--bookings-ink);color:#fff}.booking-payment-row>div{display:flex;align-items:center;gap:10px}.booking-payment-row>div:last-child{flex-direction:column;align-items:flex-end;gap:0}.booking-payment-row .detail-icon{background:#ceb45f26;color:var(--bookings-gold)}.booking-payment-row>div:first-child>span:last-child{display:flex;flex-direction:column}.booking-payment-row small{color:#ffffff80}.booking-payment-row strong{color:#fff;font-size:11px}.booking-payment-row>div:last-child strong{color:var(--bookings-gold);font-size:18px}.booking-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:18px}.booking-actions button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:10px 17px;border-radius:12px;font-size:10px;font-weight:800;transition:.2s ease}.booking-actions .download-ticket-btn{border:1px solid var(--bookings-ink);background:var(--bookings-ink);color:#fff}.booking-actions .download-ticket-btn:hover{background:var(--bookings-ink-soft);transform:translateY(-1px)}.booking-actions .cancel-ticket-btn{border:1px solid #efcccc;background:#fff7f7;color:#b94343}.booking-actions .cancel-ticket-btn:hover{border-color:#c85555;background:#c85555;color:#fff}.cancel-modal-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#001a26b8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:cancel-overlay-in .2s ease both}@keyframes cancel-overlay-in{0%{opacity:0}to{opacity:1}}.cancel-modal{display:flex;width:min(100%,510px);max-height:min(88vh,760px);flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.25);border-radius:24px;background:#fff;box-shadow:0 35px 100px #00141d61;animation:cancel-modal-in .25s ease both}@keyframes cancel-modal-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cancel-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid #e8eeee;background:linear-gradient(135deg,#fff 60%,#fff9ed)}.cancel-modal-header>div{display:flex;align-items:center;gap:12px}.cancel-modal-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:#fff0ef;color:#c54c4c}.cancel-modal-header small{color:#8b999f;font-size:8px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.cancel-modal-header h3{margin:1px 0 0;color:#002c3f;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:19px;letter-spacing:-.025em}.close-modal-btn{display:grid;width:38px;height:38px;min-height:38px;place-items:center;padding:0;border:1px solid #e4eaea;border-radius:12px;background:#fff;color:#6d7f87}.close-modal-btn:hover{border-color:#efc8c8;color:#bd4444}.cancel-modal-body{flex:1;padding:22px;overflow-y:auto}.cancel-warning{margin:0 0 16px;color:#637680;font-size:12px;line-height:1.6}.cancel-trip-card{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;padding:17px;border:1px solid #e6ecec;border-radius:16px;background:#f9fbfb}.cancel-trip-card>div{display:flex;min-width:0;flex-direction:column}.cancel-trip-card>div:last-child{align-items:flex-end;text-align:right}.cancel-trip-card span{margin-bottom:4px;color:#8d9ba1;font-size:8px;font-weight:750;text-transform:uppercase}.cancel-trip-card strong{overflow:hidden;color:#002c3f;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.cancel-trip-card>svg{color:#b69840}.cancel-reference-row{display:flex;justify-content:space-between;gap:16px;padding:10px 3px 0;color:#87969c;font-size:9px}.cancel-reference-row span:last-child{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.cancellation-details-card{margin-top:18px;overflow:hidden;border:1px solid #e5ebeb;border-radius:17px}.cancellation-card-title{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid #e8eded;background:#fff9ec}.cancellation-card-title span{color:#002c3f;font-size:11px;font-weight:800;text-transform:uppercase}.cancellation-card-title small{color:#94762c;font-size:9px;font-weight:750}.cancellation-breakdown{padding:8px 16px 13px}.cancellation-breakdown>div{display:flex;align-items:center;justify-content:space-between;padding:8px 0;color:#667983;font-size:11px}.cancellation-breakdown strong{color:#173645}.cancellation-breakdown strong.negative{color:#bd4949}.cancellation-breakdown .refund-total{margin-top:4px;padding-top:13px;border-top:1px dashed #d6dfdf;color:#002c3f;font-weight:800}.cancellation-breakdown .refund-total strong{color:#21815a;font-size:17px}.partial-note{margin:-4px 16px 14px;color:#7d8d94;font-size:9px}.cancellation-policy{margin-top:16px;padding:15px 17px;border:1px solid #eadfb8;border-radius:14px;background:#fffbef}.cancellation-policy h4{margin:0 0 8px;color:#765b1d;font-size:11px}.cancellation-policy ul{margin:0;padding-left:17px}.cancellation-policy li{margin-top:4px;color:#806b36;font-size:10px}.cancel-error-message{margin-top:16px;padding:12px 14px;border:1px solid #f0c9c9;border-radius:12px;background:#fff2f2;color:#b64141;font-size:10px;line-height:1.55}.loading-cancellation,.cancel-success-message{display:flex;min-height:270px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.loading-cancellation h4,.cancel-success-message h4{margin:17px 0 0;color:#002c3f;font-size:17px}.loading-cancellation p,.cancel-success-message p{max-width:340px;margin:7px 0 0;color:#72838b;font-size:11px;line-height:1.6}.cancel-success-message>span{display:grid;width:66px;height:66px;place-items:center;border-radius:22px;background:#e8f7f0;color:#26845d}.cancel-modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px 22px 20px;border-top:1px solid #e8eeee;background:#fbfcfc}.cancel-modal-actions button{display:inline-flex;min-height:45px;align-items:center;justify-content:center;gap:7px;padding:11px 15px;border-radius:12px;font-size:10px;font-weight:800}.keep-ticket-btn{border:1px solid #dfe6e6;background:#fff;color:#173645}.confirm-cancel-btn{border:1px solid #bf4848;background:#bf4848;color:#fff}.confirm-cancel-btn:disabled,.keep-ticket-btn:disabled{cursor:not-allowed;opacity:.55}.cancel-modal-actions .btn-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:bookings-spin .7s linear infinite}@media(max-width:1180px){.bookings-shell{grid-template-columns:230px minmax(0,1fr);gap:25px}.bookings-sidebar{padding:18px}.bookings-hero{grid-template-columns:1fr;min-height:310px}.bookings-stats{width:max-content}.booking-card-footer{grid-template-columns:minmax(0,1fr) auto}.booking-expand-label{grid-column:1 / -1;justify-content:flex-end;margin-top:-7px}.booking-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:920px){.my-bookings-page{padding-inline:20px}.bookings-shell{grid-template-columns:1fr}.bookings-sidebar{position:relative;top:auto;display:grid;grid-template-columns:minmax(190px,.85fr) minmax(0,1.3fr);gap:18px;align-items:center;padding:15px 18px}.bookings-profile{padding:0 18px 0 0;border-right:1px solid var(--bookings-border);border-bottom:0}.bookings-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0}.bookings-nav-item{min-height:43px;padding-inline:9px}.bookings-nav-item>span:first-child{gap:7px}.bookings-nav-item>span:first-child svg{width:16px}.bookings-nav-count,.bookings-nav-item>svg,.bookings-nav-item>small{display:none}.bookings-sidebar-cta{display:none}}@media(max-width:720px){.my-bookings-page{padding:22px 14px 90px}.bookings-orbit{display:none}.bookings-shell{gap:18px}.bookings-sidebar{grid-template-columns:1fr;gap:12px;border-radius:20px}.bookings-profile{padding:0 0 12px;border-right:0;border-bottom:1px solid var(--bookings-border)}.bookings-profile-copy small{max-width:220px}.bookings-hero{min-height:335px;padding:28px 22px;border-radius:24px}.bookings-hero-route{top:28px;right:24px;width:38%}.bookings-hero h1{font-size:clamp(29px,8vw,40px)}.bookings-stats{width:100%}.bookings-stats>div{min-width:0;flex:1;padding-inline:7px}.bookings-toolbar{align-items:stretch;flex-direction:column;gap:14px;margin-top:27px}.bookings-search{width:100%}.my-bookings-page .booking-tabs{margin-top:14px}.booking-card-topline{grid-template-columns:1fr auto;padding:16px 17px 14px 21px}.booking-reference{grid-column:1 / -1;grid-row:2;max-width:none;text-align:left}.booking-reference span{display:inline;margin-right:7px}.booking-reference strong{display:inline}.booking-route{gap:10px;padding:22px 20px}.booking-route-line>div{width:34px;height:34px;flex-basis:34px;margin-inline:5px}.booking-route-stop strong{font-size:17px}.booking-card-footer{grid-template-columns:1fr;gap:13px;padding:14px 17px 15px 21px}.booking-card-facts{justify-content:space-between;padding-top:12px;border-top:1px solid #e8eeee}.booking-expand-label{grid-column:auto;justify-content:flex-end;margin-top:0}.booking-card-details{padding:20px}.booking-passenger-list{grid-template-columns:1fr}}@media(max-width:520px){.bookings-nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.bookings-nav-item{flex:0 0 auto;min-width:max-content}.bookings-nav-item:disabled{display:none}.bookings-hero{min-height:355px}.bookings-hero-copy>p{font-size:11px}.bookings-stats span{font-size:7px;letter-spacing:.02em}.bookings-toolbar h2{font-size:24px}.bookings-result-note span:last-child{display:none}.booking-route{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);padding-inline:17px}.booking-route-line>div{width:30px;height:30px;flex-basis:30px}.booking-route-line>div svg{width:16px}.booking-route-stop strong{font-size:15px}.booking-detail-grid{grid-template-columns:1fr}.booking-passengers{padding:14px}.booking-section-heading>small{display:none}.booking-passenger{grid-template-columns:34px minmax(0,1fr)}.passenger-seat-pill{grid-column:2;justify-self:start}.booking-payment-row{align-items:stretch;flex-direction:column}.booking-payment-row>div:last-child{align-items:flex-start;padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}.booking-actions{flex-direction:column}.booking-actions button{width:100%}.cancel-modal-overlay{align-items:end;padding:0}.cancel-modal{width:100%;max-height:92vh;border-radius:24px 24px 0 0}.cancel-modal-actions{grid-template-columns:1fr;padding-bottom:max(18px,env(safe-area-inset-bottom))}}@media(max-width:380px){.bookings-stats>div{padding-inline:4px}.bookings-stats strong{font-size:19px}.booking-route{grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr);padding-inline:15px}.booking-route-line>span{display:none}.booking-route-line{justify-content:center}.booking-card-facts{gap:8px}}@media(prefers-reduced-motion:reduce){.booking-card,.booking-card-details,.cancel-modal-overlay,.cancel-modal{animation:none}.bookings-spinner{animation-duration:1.4s}}.booking-details-page{--ticket-ink: #002c3f;--ticket-ink-soft: #123f51;--ticket-gold: #ceb45f;--ticket-gold-dark: #9a792d;--ticket-paper: #ffffff;--ticket-muted: #6f7f86;--ticket-line: #e4ebed;min-height:calc(100vh - 160px);padding:38px 24px 80px;color:var(--ticket-ink);background:radial-gradient(circle at 10% 5%,rgba(206,180,95,.18),transparent 26%),radial-gradient(circle at 90% 22%,rgba(0,44,63,.09),transparent 28%),#f4f7f6;position:relative;isolation:isolate}.booking-details-page:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.28;pointer-events:none;background-image:radial-gradient(rgba(0,44,63,.16) .7px,transparent .7px);background-size:22px 22px;-webkit-mask-image:linear-gradient(to bottom,#000,transparent 58%);mask-image:linear-gradient(to bottom,#000,transparent 58%)}.booking-details-container{width:min(1180px,100%);margin:0 auto}.booking-details-page .details-header{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:22px;margin-bottom:24px}.booking-details-page .back-button{display:inline-flex;align-items:center;align-self:center;gap:9px;min-height:42px;padding:9px 14px;color:var(--ticket-ink);background:#ffffffc7;border:1px solid rgba(0,44,63,.1);border-radius:13px;box-shadow:0 8px 24px #002c3f0f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:13px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.booking-details-page .back-button:hover{transform:translate(-3px);background:#fff;box-shadow:0 10px 24px #002c3f1a}.details-title-copy{min-width:0}.details-eyebrow{display:block;margin-bottom:5px;color:var(--ticket-gold-dark);font-size:11px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase}.details-title-copy h1{margin:0;color:var(--ticket-ink);font-family:Montserrat,sans-serif;font-size:clamp(25px,3vw,34px);line-height:1.15;letter-spacing:-.8px}.details-title-copy p{margin:7px 0 0;color:var(--ticket-muted);font-size:13px}.header-status-pill{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:10px 14px;border:1px solid;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.header-status-pill.confirmed,.status-card.confirmed{color:#137048;background:#eaf8f0;border-color:#c3ead3}.header-status-pill.cancelled,.status-card.cancelled{color:#b43d45;background:#fff0f1;border-color:#f3c8cb}.header-status-pill.travelled,.status-card.travelled{color:#28668a;background:#eaf5fb;border-color:#c9e3f0}.header-status-pill.service-cancelled,.status-card.service-cancelled,.header-status-pill.pending,.status-card.pending{color:#8b6515;background:#fff7df;border-color:#ecd99e}.booking-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:22px}.ticket-detail-card{min-width:0;overflow:hidden;background:var(--ticket-paper);border:1px solid rgba(0,44,63,.07);border-radius:26px;box-shadow:0 24px 70px #002c3f1f}.ticket-cover{min-height:360px;padding:30px 34px 26px;color:#fff;overflow:hidden;position:relative;background:linear-gradient(125deg,rgba(255,255,255,.04),transparent 45%),linear-gradient(135deg,#002c3f,#073f53 58%,#0b5366)}.ticket-cover:after{content:"";position:absolute;right:-75px;bottom:-90px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(206,180,95,.2),transparent 65%)}.ticket-cover-orbit{position:absolute;border:1px solid rgba(206,180,95,.15);border-radius:50%;pointer-events:none}.orbit-one{top:-180px;right:-105px;width:360px;height:360px}.orbit-two{top:-120px;right:-45px;width:240px;height:240px}.ticket-cover-topline,.route-hero,.booking-journey-date-chip{position:relative;z-index:2}.ticket-cover-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.operator-mark{display:flex;align-items:center;gap:12px;min-width:0}.operator-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;color:var(--ticket-ink);background:var(--ticket-gold);border-radius:15px;box-shadow:0 10px 25px #ceb45f33}.cover-kicker{display:block;margin-bottom:3px;color:#ffffff94;font-size:10px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase}.operator-mark h2{max-width:430px;margin:0;color:#fff;font-size:18px;line-height:1.3}.service-type{display:inline-flex;max-width:230px;padding:8px 12px;overflow:hidden;color:#ffffffd1;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:999px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.route-hero{display:grid;grid-template-columns:minmax(140px,1fr) minmax(150px,.95fr) minmax(140px,1fr);align-items:center;gap:18px;margin-top:48px}.route-city{display:flex;min-width:0;flex-direction:column}.route-city-destination{text-align:right;align-items:flex-end}.route-time{margin-bottom:5px;color:var(--ticket-gold);font-family:Montserrat,sans-serif;font-size:17px;font-weight:700}.route-city strong{overflow:hidden;color:#fff;font-family:Montserrat,sans-serif;font-size:clamp(19px,2.5vw,28px);line-height:1.18;text-overflow:ellipsis;white-space:nowrap}.route-city>span:last-child{max-width:230px;margin-top:8px;overflow:hidden;color:#ffffff94;font-size:11px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.route-track{display:flex;align-items:center;width:100%}.route-dot{flex:0 0 9px;width:9px;height:9px;background:var(--ticket-gold);border:2px solid var(--ticket-ink-soft);border-radius:50%;box-shadow:0 0 0 2px var(--ticket-gold)}.route-dot.destination{background:#fff;box-shadow:0 0 0 2px #ffffffd1}.route-dash{flex:1;height:1px;margin:0 6px;background-image:linear-gradient(to right,rgba(255,255,255,.4) 55%,transparent 0%);background-position:bottom;background-size:7px 1px;background-repeat:repeat-x}.route-bus{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;color:var(--ticket-ink);background:#fff;border-radius:50%;box-shadow:0 7px 18px #0003}.booking-journey-date-chip{display:inline-flex;align-items:center;gap:8px;margin-top:32px;padding:9px 12px;color:#ffffffdb;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:11px;font-size:11px;font-weight:650}.booking-journey-date-chip svg{color:var(--ticket-gold)}.ticket-references{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:20px 30px;position:relative;background:#fbfaf5;border-bottom:1px dashed #d4dddf}.ticket-references:before,.ticket-references:after{content:"";position:absolute;top:-14px;width:28px;height:28px;background:#f4f7f6;border-radius:50%}.ticket-references:before{left:-14px}.ticket-references:after{right:-14px}.ticket-reference{min-width:0;padding:0 20px;border-right:1px solid #e4e5dd}.ticket-reference:first-child{padding-left:0}.ticket-reference:last-child{padding-right:0;border-right:0}.ticket-reference>span{display:block;margin-bottom:6px;color:#899497;font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.ticket-reference>div{display:flex;align-items:center;gap:7px;min-width:0}.ticket-reference strong{overflow:hidden;color:var(--ticket-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.copy-reference{display:grid;place-items:center;flex:0 0 26px;width:26px;min-height:26px;padding:0;color:#738087;background:transparent;border:0;border-radius:7px;transition:color .2s ease,background .2s ease}.copy-reference:hover,.copy-reference.copied{color:var(--ticket-ink);background:#e7eeec}.ticket-body{padding:4px 30px 30px}.detail-section{padding:28px 0;border-bottom:1px solid var(--ticket-line)}.detail-section:last-child{padding-bottom:4px;border-bottom:0}.section-heading,.section-heading-main{display:flex;align-items:center;gap:12px}.section-heading{margin-bottom:18px}.section-heading-row{justify-content:space-between}.section-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:var(--ticket-gold-dark);background:#f8f3e4;border-radius:12px}.section-heading h3{margin:0;color:var(--ticket-ink);font-size:14px;line-height:1.2}.section-heading p{margin:4px 0 0;color:#839096;font-size:10px}.booking-passenger-count{display:grid;place-items:center;width:34px;height:34px;color:var(--ticket-ink);background:#edf2f1;border-radius:50%;font-size:11px;font-weight:800}.info-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.info-card{display:flex;align-items:flex-start;gap:11px;min-width:0;padding:14px;background:#f7f9f8;border:1px solid #edf1f0;border-radius:14px}.info-card-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;color:#58717a;background:#fff;border:1px solid #e7eceb;border-radius:9px}.info-card>div{min-width:0}.info-card span:not(.info-card-icon){display:block;margin-bottom:3px;color:#8a969b;font-size:9px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.info-card strong{display:block;overflow:hidden;color:#294753;font-size:11px;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.travelers-list{display:flex;flex-direction:column;gap:9px}.traveler-item{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(60px,auto) minmax(78px,auto);align-items:center;gap:12px;padding:13px 14px;background:#fff;border:1px solid #e9eeee;border-radius:15px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.traveler-item:hover{transform:translateY(-2px);border-color:#d9e2e2;box-shadow:0 10px 24px #002c3f0f}.traveler-avatar{display:grid;place-items:center;width:38px;height:38px;color:var(--ticket-ink);background:linear-gradient(145deg,#eadca7,var(--ticket-gold));border-radius:12px;font-size:11px;font-weight:800}.traveler-info{display:flex;min-width:0;flex-direction:column;gap:3px}.traveler-name{overflow:hidden;color:#173d4c;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.traveler-meta{color:#8a959a;font-size:10px}.traveler-seat,.traveler-fare{display:flex;align-items:flex-end;flex-direction:column;gap:4px}.seat-label,.fare-label{display:inline-flex;align-items:center;gap:4px;color:#8a959a;font-size:9px;font-weight:700;text-transform:uppercase}.seat-number{min-width:34px;padding:4px 8px;color:var(--ticket-ink);background:#edf3f2;border-radius:8px;font-size:11px;font-weight:800;text-align:center}.fare-amount{color:#294753;font-size:11px;font-weight:750}.booking-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.booking-info-item{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:3px 8px;padding:13px 14px;color:#5e737b;background:#f8faf9;border-radius:13px}.booking-info-item svg{grid-row:1 / 3;color:#809096}.booking-info-item span{color:#8a969b;font-size:9px;font-weight:700;text-transform:uppercase}.booking-info-item strong{color:#294753;font-size:10px;line-height:1.45}.booking-info-item.refund-info svg,.booking-info-item.refund-info strong{color:#137048}.policy-list{display:flex;flex-direction:column;gap:8px}.booking-policy-item{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;padding:12px 14px;background:#fffbf0;border:1px solid #efe4bf;border-radius:13px}.policy-clock{display:grid;place-items:center;width:34px;height:34px;color:#8f7129;background:#fff;border-radius:10px}.policy-time,.policy-note{display:block}.policy-time{color:#384f57;font-size:10px;font-weight:750}.policy-note{margin-top:3px;color:#8e989b;font-size:9px}.policy-refund{padding:6px 8px;color:#137048;background:#eaf8f0;border-radius:8px;font-size:9px;font-weight:800;white-space:nowrap}.policy-text{margin:0;padding:14px;color:#5e7076;background:#fffbf0;border:1px solid #efe4bf;border-radius:13px;font-size:10px;line-height:1.65}.booking-side-panel{display:flex;position:sticky;top:105px;flex-direction:column;gap:13px}.status-card,.fare-summary-card,.help-card{border:1px solid rgba(0,44,63,.08);border-radius:19px;box-shadow:0 14px 35px #002c3f12}.status-card{display:flex;align-items:flex-start;gap:12px;padding:18px}.status-card-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;color:currentColor;background:#ffffffb8;border-radius:13px}.status-kicker,.side-card-kicker{display:block;margin-bottom:4px;font-size:8px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;opacity:.72}.status-card h3,.fare-summary-card h3,.help-card h3{margin:0;font-size:13px}.status-card p,.help-card p{margin:5px 0 0;color:currentColor;font-size:9px;line-height:1.5;opacity:.72}.fare-summary-card{padding:20px;background:#fff}.side-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.side-card-kicker{color:#8a969b}.summary-icon{display:grid;place-items:center;width:38px;height:38px;color:var(--ticket-gold-dark);background:#f8f3e4;border-radius:12px}.summary-list{display:flex;flex-direction:column;gap:12px;padding-bottom:17px;border-bottom:1px dashed #dbe2e3}.summary-list>div,.fare-total{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.summary-list span{color:#849095;font-size:10px}.summary-list strong{max-width:160px;color:#304d57;font-size:10px;line-height:1.4;text-align:right}.fare-total{align-items:flex-end;padding-top:17px}.fare-total span{color:#576d75;font-size:11px;font-weight:700}.fare-total strong{color:var(--ticket-ink);font-family:Montserrat,sans-serif;font-size:22px;line-height:1}.booking-details-page .action-buttons{display:flex;flex-direction:column;gap:9px;padding:0}.booking-details-page .download-btn,.booking-details-page .cancel-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:11px 16px;border-radius:13px;font-size:11px;font-weight:800;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.booking-details-page .download-btn{color:#fff;background:linear-gradient(135deg,var(--ticket-ink) 0%,#0d4a5d 100%);border:1px solid var(--ticket-ink);box-shadow:0 12px 26px #002c3f2b}.booking-details-page .download-btn:hover{transform:translateY(-2px);box-shadow:0 15px 30px #002c3f3d}.booking-details-page .cancel-btn{color:#b43d45;background:#fff;border:1px solid #edc4c7}.booking-details-page .cancel-btn:hover{color:#972d35;background:#fff4f5}.help-card{display:flex;align-items:center;gap:11px;padding:15px 17px;color:#586d75;background:#ffffffc2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.help-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;color:var(--ticket-gold-dark);background:#f8f3e4;border-radius:12px}.booking-details-page.state-page{display:grid;place-items:center}.booking-state-card{display:flex;width:min(440px,calc(100% - 24px));min-height:320px;padding:40px;align-items:center;justify-content:center;flex-direction:column;color:var(--ticket-ink);text-align:center;background:#fff;border:1px solid rgba(0,44,63,.08);border-radius:24px;box-shadow:0 22px 60px #002c3f1a}.booking-state-card h2{margin:19px 0 8px;font-size:20px}.booking-state-card p{max-width:340px;margin:0;color:#7b898e;font-size:12px;line-height:1.6}.ticket-loader,.state-icon{display:grid;place-items:center;width:62px;height:62px;color:var(--ticket-ink);background:#f4eedb;border-radius:19px}.ticket-loader{position:relative;animation:ticketFloat 1.5s ease-in-out infinite}.ticket-loader:after{content:"";position:absolute;inset:-7px;border:2px solid rgba(206,180,95,.55);border-top-color:transparent;border-radius:23px;animation:modalSpin 1.1s linear infinite}.state-icon{color:#a5454d;background:#fff0f1}.booking-details-page .error-actions{display:flex;gap:9px;margin-top:22px}.booking-details-page .retry-btn,.booking-details-page .back-btn{min-height:43px;padding:10px 16px;border-radius:12px;font-size:11px;font-weight:800}.booking-details-page .retry-btn{color:#fff;background:var(--ticket-ink);border:1px solid var(--ticket-ink)}.booking-details-page .back-btn{color:var(--ticket-ink);background:#fff;border:1px solid #dbe3e4}@keyframes ticketFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.booking-details-cancel-overlay{position:fixed;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center;padding:20px;background:#001c28ad;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:modalFadeIn .2s ease-out}.booking-details-cancel-overlay .cancel-modal{width:min(480px,100%);overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.25);border-radius:23px;box-shadow:0 30px 90px #00111959;animation:modalScaleIn .25s ease-out}.booking-details-cancel-overlay .cancel-modal-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;background:#fff9ec;border-bottom:1px solid #f0e5c4}.modal-title-group{display:flex;align-items:center;gap:11px}.modal-warning-icon{display:grid;place-items:center;width:40px;height:40px;color:#9b6a13;background:#f7e8ba;border-radius:12px}.modal-title-group span:not(.modal-warning-icon){display:block;margin-bottom:2px;color:#a2813c;font-size:8px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.modal-title-group h3{margin:0;color:#203e49;font-size:16px}.booking-details-cancel-overlay .close-btn{display:grid;place-items:center;flex:0 0 36px;width:36px;min-height:36px;padding:0;color:#718188;background:#ffffffb3;border:1px solid #eadfbf;border-radius:11px}.booking-details-cancel-overlay .cancel-modal-body{padding:22px}.booking-details-cancel-overlay .warning-text{margin:0 0 15px;color:#60727a;font-size:11px;line-height:1.55}.booking-details-cancel-overlay .ticket-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:13px;background:#f6f8f7;border:1px solid #e7eceb;border-radius:14px}.booking-details-cancel-overlay .ticket-summary>div{min-width:0;padding-right:8px;border-right:1px solid #e0e6e5}.booking-details-cancel-overlay .ticket-summary>div:last-child{padding-right:0;border-right:0}.booking-details-cancel-overlay .ticket-summary span,.booking-details-cancel-overlay .ticket-summary strong{display:block}.booking-details-cancel-overlay .ticket-summary span{margin-bottom:4px;color:#8b979b;font-size:8px;font-weight:700;text-transform:uppercase}.booking-details-cancel-overlay .ticket-summary strong{overflow:hidden;color:#304d58;font-size:9px;line-height:1.45;text-overflow:ellipsis}.booking-details-cancel-overlay .cancellation-breakdown{margin-top:14px;padding:17px;background:#fff6f6;border:1px solid #f0d2d4;border-radius:15px}.breakdown-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.breakdown-heading h4{margin:0;color:#5e3e42;font-size:12px}.breakdown-heading span{padding:5px 7px;color:#a34249;background:#fff;border-radius:7px;font-size:8px;font-weight:800}.booking-details-cancel-overlay .breakdown-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 0;color:#6f7c81;border-bottom:1px solid #efdcde;font-size:10px}.booking-details-cancel-overlay .breakdown-item strong{color:#3a515a}.booking-details-cancel-overlay .breakdown-item.charges strong{color:#b33f47}.booking-details-cancel-overlay .breakdown-item.refund{padding:13px 0 0;color:#183d4a;border-bottom:0;font-weight:800}.booking-details-cancel-overlay .breakdown-item.refund strong{color:#137048;font-family:Montserrat,sans-serif;font-size:17px}.booking-details-cancel-overlay .error-message{display:flex;align-items:flex-start;gap:9px;margin-top:13px;padding:11px 12px;color:#a13d45;background:#fff0f1;border:1px solid #f0c7ca;border-radius:11px}.booking-details-cancel-overlay .error-message svg{flex:0 0 17px}.booking-details-cancel-overlay .error-message p{margin:0;font-size:9px;line-height:1.5}.booking-details-cancel-overlay .modal-actions{display:flex;gap:9px;margin-top:18px}.booking-details-cancel-overlay .keep-btn,.booking-details-cancel-overlay .confirm-cancel-btn{flex:1;min-height:44px;padding:10px 14px;border-radius:12px;font-size:10px;font-weight:800}.booking-details-cancel-overlay .keep-btn{color:#2d4b56;background:#fff;border:1px solid #dce4e5}.booking-details-cancel-overlay .confirm-cancel-btn{color:#fff;background:#b43d45;border:1px solid #b43d45}.booking-details-cancel-overlay .confirm-cancel-btn:disabled{color:#f9e8e9;background:#d89ca0;border-color:#d89ca0;cursor:not-allowed}.booking-details-cancel-overlay .loading-state,.booking-details-cancel-overlay .success-message{display:flex;min-height:230px;align-items:center;justify-content:center;flex-direction:column;text-align:center}.modal-loader{width:42px;height:42px;border:3px solid #e8edec;border-top-color:#a88636;border-radius:50%;animation:modalSpin .9s linear infinite}.booking-details-cancel-overlay .loading-state h4,.booking-details-cancel-overlay .success-message h4{margin:17px 0 6px;color:#294753;font-size:15px}.booking-details-cancel-overlay .loading-state p,.booking-details-cancel-overlay .success-message p{max-width:320px;margin:0;color:#7e8c91;font-size:10px;line-height:1.6}.booking-details-cancel-overlay .success-icon{display:grid;place-items:center;width:62px;height:62px;color:#fff;background:#21815a;border-radius:20px;box-shadow:0 13px 30px #21815a33}@keyframes modalSpin{to{transform:rotate(360deg)}}@keyframes modalFadeIn{0%{opacity:0}}@keyframes modalScaleIn{0%{opacity:0;transform:translateY(10px) scale(.98)}}@media(max-width:980px){.booking-content-grid{grid-template-columns:minmax(0,1fr) 270px}.ticket-cover{padding-right:26px;padding-left:26px}.ticket-reference{padding:0 12px}}@media(max-width:820px){.booking-details-page{padding-right:16px;padding-left:16px}.booking-content-grid{grid-template-columns:1fr}.booking-side-panel{display:grid;position:static;grid-template-columns:1fr 1fr}.booking-details-page .action-buttons,.help-card{grid-column:1 / -1}.booking-details-page .action-buttons{flex-direction:row}}@media(max-width:768px){.booking-details-page{min-height:100vh;padding:18px 12px 190px;background:radial-gradient(circle at 0 0,rgba(206,180,95,.18),transparent 30%),#f4f7f6}.booking-details-page:before{display:none}.booking-details-page .details-header{grid-template-columns:42px 1fr;align-items:center;gap:11px;margin-bottom:15px}.booking-details-page .back-button{justify-content:center;width:42px;min-height:42px;padding:0}.booking-details-page .back-button span,.details-title-copy p,.details-eyebrow{display:none}.details-title-copy h1{font-size:20px;letter-spacing:-.4px}.header-status-pill{grid-column:1 / -1;justify-content:center;min-height:38px;padding:8px 12px}.ticket-detail-card{border-radius:21px;box-shadow:0 16px 45px #002c3f1c}.ticket-cover{min-height:auto;padding:22px 19px 20px}.operator-icon{flex-basis:40px;width:40px;height:40px;border-radius:12px}.operator-mark h2{max-width:190px;font-size:14px}.service-type{max-width:105px;padding:7px 9px;font-size:9px}.route-hero{grid-template-columns:1fr;gap:10px;margin-top:32px}.route-city-destination{align-items:flex-start;text-align:left}.route-time{font-size:14px}.route-city strong{font-size:21px}.route-city>span:last-child{max-width:calc(100vw - 74px);margin-top:4px}.route-track{width:36px;height:56px;margin-left:5px;flex-direction:column}.route-dash{width:1px;min-height:5px;margin:5px 0;background-image:linear-gradient(to bottom,rgba(255,255,255,.4) 55%,transparent 0%);background-position:right;background-size:1px 7px;background-repeat:repeat-y}.route-bus{flex-basis:32px;width:32px;height:32px}.booking-journey-date-chip{width:100%;margin-top:24px;justify-content:center}.ticket-references{display:flex;gap:10px;padding:17px 19px;overflow-x:auto;scrollbar-width:none}.ticket-references::-webkit-scrollbar{display:none}.ticket-reference{flex:0 0 auto;min-width:155px;padding:0 12px 0 0}.ticket-body{padding:2px 18px 22px}.detail-section{padding:23px 0}.info-card-grid{grid-template-columns:1fr}.traveler-item{grid-template-columns:36px minmax(0,1fr) auto;gap:9px;padding:12px}.traveler-avatar{width:36px;height:36px}.traveler-fare{display:none}.traveler-seat{align-items:center}.booking-info-grid{grid-template-columns:1fr}.booking-policy-item{grid-template-columns:31px 1fr}.policy-refund{grid-column:2;justify-self:start}.booking-side-panel{display:flex;margin-top:1px}.status-card{order:1}.fare-summary-card{order:2}.help-card{order:4}.booking-details-page .action-buttons{position:fixed;right:0;bottom:var(--mobile-nav-height, 74px);left:0;z-index:990;display:grid;grid-template-columns:1.2fr 1fr;gap:8px;order:3;padding:10px 12px;background:#fffffff2;border-top:1px solid rgba(0,44,63,.08);box-shadow:0 -10px 28px #002c3f1a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.booking-details-page .download-btn,.booking-details-page .cancel-btn{min-height:46px;padding:9px 10px;border-radius:12px;font-size:10px}.booking-state-card{min-height:300px;padding:30px 20px}.booking-details-cancel-overlay{align-items:flex-end;padding:0}.booking-details-cancel-overlay .cancel-modal{max-height:min(88vh,720px);overflow-y:auto;border-radius:23px 23px 0 0;animation:modalSlideUp .28s ease-out}.booking-details-cancel-overlay .cancel-modal-header{position:sticky;top:0;z-index:2;padding:18px}.booking-details-cancel-overlay .cancel-modal-header:before{content:"";position:absolute;top:7px;left:50%;width:34px;height:4px;background:#d4c9aa;border-radius:4px;transform:translate(-50%)}.booking-details-cancel-overlay .cancel-modal-body{padding:18px 16px max(24px,env(safe-area-inset-bottom))}.booking-details-cancel-overlay .ticket-summary{grid-template-columns:1fr}.booking-details-cancel-overlay .ticket-summary>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:0 0 8px;border-right:0;border-bottom:1px solid #e0e6e5}.booking-details-cancel-overlay .ticket-summary>div:last-child{padding-bottom:0;border-bottom:0}.booking-details-cancel-overlay .ticket-summary strong{text-align:right}@keyframes modalSlideUp{0%{opacity:.7;transform:translateY(100%)}}}@media(max-width:380px){.ticket-cover-topline{align-items:flex-start;flex-direction:column}.service-type{max-width:100%}.section-heading p{display:none}.booking-details-cancel-overlay .modal-actions{flex-direction:column-reverse}}@media(prefers-reduced-motion:reduce){.ticket-loader,.ticket-loader:after,.modal-loader,.booking-details-cancel-overlay,.booking-details-cancel-overlay .cancel-modal{animation:none}}.profile-page{--profile-navy: #002c3f;--profile-navy-light: #0b485d;--profile-gold: #ceb45f;--profile-cream: #fbf8ef;--profile-ink: #16323e;--profile-muted: #6c7e85;--profile-line: #dfe7e9;min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 8% 16%,rgba(206,180,95,.13),transparent 24rem),linear-gradient(180deg,#f8fbfb,#eef4f5);color:var(--profile-ink)}.profile-container{flex:1;width:min(1180px,calc(100% - 40px));margin:0 auto;padding:clamp(36px,5vw,64px) 0 72px}.profile-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.profile-eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:11px;color:#92792c;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.profile-page-heading h1{margin:0;color:var(--profile-navy);font-family:Montserrat,sans-serif;font-size:clamp(30px,4vw,48px);font-weight:700;letter-spacing:-.045em;line-height:1.08}.profile-page-heading p{margin:12px 0 0;color:var(--profile-muted);font-size:15px}.profile-heading-stamp{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding:10px 14px;border:1px solid rgba(0,44,63,.12);border-radius:999px;background:#ffffffb8;color:var(--profile-navy);box-shadow:0 10px 30px #0f34410f;font-size:12px;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-dashboard{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.55fr);gap:22px;align-items:stretch}.profile-identity-card,.profile-content-card,.profile-quick-section{border:1px solid rgba(0,44,63,.08);border-radius:26px;box-shadow:0 24px 60px #1b3c4817}.profile-identity-card{position:relative;isolation:isolate;overflow:hidden;padding:34px;background:linear-gradient(150deg,rgba(255,255,255,.06),transparent 38%),linear-gradient(145deg,#002c3f,#073f54 62%,#0c5668);color:#fff}.identity-decoration{position:absolute;z-index:-1;border-radius:50%;pointer-events:none}.identity-decoration-one{width:190px;height:190px;top:-78px;right:-58px;border:38px solid rgba(206,180,95,.13)}.identity-decoration-two{width:110px;height:110px;right:40px;bottom:-72px;background:#ceb45f1f;filter:blur(2px)}.identity-route{position:absolute;top:41px;right:34px;width:76px;height:42px;border-top:1px dashed rgba(255,255,255,.38);border-radius:50%;transform:rotate(-12deg)}.identity-route span{position:absolute;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--profile-gold);box-shadow:0 0 0 4px #ceb45f1f}.identity-route span:first-child{left:0}.identity-route span:nth-child(2){left:34px;top:-13px}.identity-route span:last-child{right:0;top:-2px}.profile-avatar-wrap{position:relative;width:fit-content;margin-bottom:22px}.profile-avatar{width:84px;height:84px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.42);border-radius:25px;background:linear-gradient(145deg,#f4dfa1,var(--profile-gold));color:var(--profile-navy);box-shadow:0 18px 36px #00141e47,inset 0 1px #ffffff8c;font-family:Montserrat,sans-serif;font-size:34px;font-weight:800}.profile-online-dot{position:absolute;right:-7px;bottom:-5px;width:28px;height:28px;display:grid;place-items:center;border:4px solid var(--profile-navy);border-radius:50%;background:#51c89a;color:#fff}.profile-identity-copy{padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.13)}.profile-kicker{margin:0 0 7px;color:var(--profile-gold);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.profile-identity-copy h2{margin:0;color:#fff;font-size:clamp(22px,2vw,27px);font-weight:700;letter-spacing:-.025em}.profile-phone{display:flex;align-items:center;gap:7px;margin:8px 0 0;color:#ffffffb3;font-size:13px}.profile-completion-card{margin-top:25px}.completion-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.completion-heading div{display:flex;flex-direction:column;gap:2px}.completion-heading span{color:#ffffff94;font-size:11px;font-weight:600}.completion-heading strong{font-size:15px;font-weight:700}.completion-heading .completion-score{color:var(--profile-gold);font-family:Montserrat,sans-serif;font-size:22px;font-weight:700}.completion-track{height:7px;margin-top:14px;overflow:hidden;border-radius:999px;background:#ffffff1f}.completion-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ceb45f,#f0d984);box-shadow:0 0 18px #ceb45f73;transition:width .5s ease}.profile-completion-card>p{margin:11px 0 0;color:#ffffff94;font-size:11px;line-height:1.6}.profile-trust-note{display:flex;align-items:flex-start;gap:10px;margin-top:24px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:#ffffff0f}.profile-trust-note>svg{flex:0 0 auto;margin-top:2px;color:var(--profile-gold)}.profile-trust-note div{display:flex;flex-direction:column;gap:2px}.profile-trust-note strong{font-size:12px}.profile-trust-note span{color:#ffffff8c;font-size:10px;line-height:1.5}.profile-content-card{padding:clamp(24px,3vw,36px);background:#ffffffe6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.profile-section-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.section-title-wrap{display:flex;align-items:center;gap:13px}.section-title-icon{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;border-radius:13px;background:var(--profile-cream);color:#987f31}.section-title-wrap p{margin:0 0 3px;color:var(--profile-muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.section-title-wrap h2{margin:0;color:var(--profile-navy);font-size:20px;letter-spacing:-.02em}.profile-edit-btn,.profile-cancel-btn,.profile-save-btn{min-height:42px;border:0;font-family:inherit;font-weight:700}.profile-edit-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;border:1px solid rgba(0,44,63,.12);border-radius:12px;background:#fff;color:var(--profile-navy);box-shadow:0 6px 18px #002c3f0f;font-size:13px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.profile-edit-btn:hover{border-color:#ceb45fb3;box-shadow:0 9px 24px #002c3f1a;transform:translateY(-2px)}.profile-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.profile-detail-tile{min-width:0;min-height:92px;display:flex;align-items:center;gap:13px;padding:17px;border:1px solid #e6edef;border-radius:17px;background:linear-gradient(145deg,#fff,#fbfdfd);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.profile-detail-tile:hover{border-color:#ceb45f8c;box-shadow:0 12px 28px #0f344112;transform:translateY(-2px)}.profile-detail-wide{grid-column:1 / -1}.detail-icon{width:39px;height:39px;display:grid;place-items:center;flex:0 0 39px;border-radius:12px;background:#edf4f5;color:var(--profile-navy-light)}.profile-detail-tile>div{min-width:0;display:flex;flex:1;flex-direction:column;gap:5px}.profile-detail-tile .detail-label{color:var(--profile-muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.profile-detail-tile strong{overflow:hidden;color:var(--profile-ink);font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.profile-detail-tile strong.is-empty{color:#9aa8ad;font-style:italic;font-weight:500}.verified-chip{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;padding:5px 8px;border-radius:999px;background:#e8f8f1;color:#16865e;font-size:10px;font-weight:800}.profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.profile-form-field{min-width:0;display:flex;flex-direction:column;gap:7px}.profile-phone-field{grid-column:1 / -1}.profile-form-field label{color:var(--profile-ink);font-size:12px;font-weight:700}.profile-form-field label span{color:#d25c4d}.profile-form-field small{color:var(--profile-muted);font-size:10px}.profile-input-wrap{position:relative;display:flex;align-items:center}.profile-input-wrap>svg{position:absolute;z-index:1;left:14px;color:#82949a;pointer-events:none}.profile-input-wrap input,.profile-input-wrap select{width:100%;min-width:0;height:48px;padding:0 14px 0 43px;border:1px solid #dbe4e6;border-radius:13px;outline:none;background:#fbfdfd;color:var(--profile-ink);font-family:inherit;font-size:13px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.profile-input-wrap select{appearance:none;cursor:pointer}.profile-select-wrap:after{content:"";position:absolute;right:16px;width:7px;height:7px;border-right:2px solid #819198;border-bottom:2px solid #819198;transform:translateY(-2px) rotate(45deg);pointer-events:none}.profile-input-wrap input:focus,.profile-input-wrap select:focus{border-color:var(--profile-gold);background:#fff;box-shadow:0 0 0 4px #ceb45f26}.profile-input-wrap.is-disabled input{padding-right:98px;background:#f1f5f6;color:#71848b;cursor:not-allowed}.profile-input-wrap .verified-chip{position:absolute;right:10px}.profile-alert{display:flex;align-items:center;gap:8px;margin-top:18px;padding:11px 14px;border-radius:12px;font-size:12px;font-weight:600}.profile-alert.error{border:1px solid #f5d4d0;background:#fff3f1;color:#a9483c}.profile-alert.success{border:1px solid #cceadd;background:#effaf5;color:#177552}.profile-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:20px;border-top:1px solid #edf1f2}.profile-cancel-btn,.profile-save-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:118px;padding:10px 17px;border-radius:12px;font-size:12px;transition:transform .2s ease,box-shadow .2s ease}.profile-cancel-btn{background:#edf2f3;color:#60737a}.profile-save-btn{background:var(--profile-navy);color:#fff;box-shadow:0 9px 20px #002c3f33}.profile-cancel-btn:hover,.profile-save-btn:hover:not(:disabled){transform:translateY(-2px)}.profile-save-btn:disabled{cursor:wait;opacity:.65}.profile-btn-spinner,.profile-loading-spinner{display:inline-block;border:2px solid rgba(255,255,255,.35);border-top-color:currentColor;border-radius:50%;animation:profile-spin .8s linear infinite}.profile-btn-spinner{width:14px;height:14px}.profile-quick-section{margin-top:22px;padding:clamp(24px,3vw,32px);background:#ffffffc7}.quick-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:21px}.quick-section-heading span{color:#9b8334;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.quick-section-heading h2{margin:4px 0 0;color:var(--profile-navy);font-size:20px;letter-spacing:-.025em}.quick-section-heading p{margin:0;color:var(--profile-muted);font-size:12px}.profile-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.profile-action-card{min-width:0;min-height:100px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;border:1px solid #e4ebed;border-radius:17px;background:#fff;color:var(--profile-ink);text-align:left;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.profile-action-card:hover{border-color:var(--action-accent);box-shadow:0 14px 28px #15374417;transform:translateY(-4px)}.profile-action-card.gold{--action-accent: #ceb45f;--action-wash: #fbf5e1;--action-ink: #927629}.profile-action-card.teal{--action-accent: #67b8ad;--action-wash: #eaf7f5;--action-ink: #267f74}.profile-action-card.coral{--action-accent: #e5a07e;--action-wash: #fff0e9;--action-ink: #b85f39}.profile-action-card .action-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:var(--action-wash);color:var(--action-ink)}.action-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.action-copy strong{color:var(--profile-navy);font-size:13px;font-weight:800}.action-copy small{color:var(--profile-muted);font-size:10px;line-height:1.45}.action-arrow{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#f1f5f5;color:var(--profile-navy);transition:color .2s ease,background .2s ease,transform .2s ease}.profile-action-card:hover .action-arrow{background:var(--action-accent);color:#fff;transform:rotate(8deg)}.profile-loading{flex:1;min-height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--profile-muted);font-size:13px}.profile-loading-spinner{width:38px;height:38px;border-color:#002c3f24;border-top-color:var(--profile-gold)}@keyframes profile-spin{to{transform:rotate(360deg)}}@media(max-width:900px){.profile-dashboard{grid-template-columns:1fr}.profile-identity-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0 20px}.profile-avatar-wrap{grid-row:1 / 3;margin:0}.profile-identity-copy{align-self:end;padding:0 0 17px}.profile-completion-card,.profile-trust-note{grid-column:1 / -1}.profile-actions-grid{grid-template-columns:1fr}.profile-action-card{min-height:84px}}@media(max-width:640px){.profile-page{padding-bottom:72px}.profile-container{width:min(100% - 24px,560px);padding:26px 0 36px}.profile-page-heading{align-items:flex-start;margin-bottom:22px}.profile-heading-stamp{display:none}.profile-page-heading h1{font-size:30px}.profile-page-heading p{margin-top:9px;font-size:13px}.profile-identity-card,.profile-content-card,.profile-quick-section{border-radius:21px}.profile-identity-card{display:block;padding:26px}.profile-avatar-wrap{margin-bottom:20px}.profile-identity-copy{padding-bottom:22px}.profile-content-card{padding:20px}.profile-section-header{align-items:flex-start;margin-bottom:21px}.profile-edit-btn{min-width:42px;padding:10px;font-size:0}.profile-edit-btn svg{width:18px;height:18px}.profile-details-grid,.profile-form-grid{grid-template-columns:1fr}.profile-detail-wide,.profile-phone-field{grid-column:auto}.profile-detail-tile{min-height:82px}.profile-detail-tile .verified-chip{margin-left:auto}.profile-form-actions{display:grid;grid-template-columns:1fr 1.2fr}.profile-cancel-btn,.profile-save-btn{min-width:0;width:100%}.quick-section-heading{display:block}.quick-section-heading p{margin-top:7px}.profile-quick-section{padding:20px}}@media(max-width:380px){.profile-container{width:calc(100% - 16px)}.profile-identity-card,.profile-content-card,.profile-quick-section{border-radius:18px}.profile-identity-card{padding:22px}.profile-detail-tile{padding:14px}.profile-detail-tile>.verified-chip{display:none}.profile-form-actions{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.profile-page *,.profile-page *:before,.profile-page *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.travellers-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.travellers-loading,.travellers-loading-inline{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#002c3f;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.travellers-container{flex:1;max-width:700px;width:100%;margin:0 auto;padding:32px 20px}.travellers-header{margin-bottom:24px}.travellers-header h1{margin:0;font-size:24px;color:#002c3f;font-weight:700}.travellers-header p{margin:8px 0 0;color:#666;font-size:14px}.success-alert{padding:12px 16px;background:#f0fff4;border:1px solid #c6f6d5;border-radius:8px;color:#38a169;font-size:14px;margin-bottom:20px}.add-traveller-btn{display:flex;align-items:center;gap:8px;padding:14px 24px;background:linear-gradient(135deg,#002c3f,#004a6b);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:24px}.add-traveller-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #002c3f4d}.traveller-form-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:24px;margin-bottom:24px}.traveller-form-card h3{margin:0 0 20px;font-size:18px;color:#333}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:#333;margin-bottom:6px}.required{color:#e53e3e}.form-group input,.form-group select{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#002c3f;box-shadow:0 0 0 3px #002c3f1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.error-message{padding:12px 16px;background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;color:#c53030;font-size:14px;margin-bottom:16px}.form-actions{display:flex;gap:12px;margin-top:20px}.form-actions button{flex:1;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn{background:#f0f0f0;color:#666}.cancel-btn:hover{background:#e0e0e0}.save-btn{background:linear-gradient(135deg,#002c3f,#004a6b);color:#fff}.save-btn:hover{background:linear-gradient(135deg,#003d57,#005580)}.no-travellers{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014}.no-travellers svg{margin-bottom:16px}.no-travellers h3{margin:0 0 8px;font-size:18px;color:#333}.no-travellers p{margin:0;color:#888;font-size:14px}.travellers-list{display:flex;flex-direction:column;gap:12px}.traveller-card{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;transition:all .2s}.traveller-card:hover{box-shadow:0 4px 12px #0000001a}.traveller-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#002c3f,#004a6b);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600;color:#fff;flex-shrink:0}.traveller-info{flex:1}.traveller-info h4{margin:0;font-size:16px;color:#333;font-weight:600}.traveller-info p{margin:4px 0 0;font-size:13px;color:#888}.delete-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff5f5;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.delete-btn svg{stroke:#e53e3e}.delete-btn:hover{background:#fed7d7}@media(max-width:640px){.travellers-page{padding-bottom:72px}.travellers-container{padding:20px 16px}.travellers-header h1{font-size:24px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.traveller-card{padding:14px 16px}.traveller-avatar{width:44px;height:44px;font-size:18px}}@media(max-width:480px){.travellers-container{padding:16px 12px}.travellers-header h1{font-size:20px}.travellers-header p{font-size:13px}.add-traveller-btn{width:100%;padding:12px 20px;font-size:14px}.traveller-form-card{padding:16px}.form-group input,.form-group select{padding:10px 12px;font-size:14px}.traveller-card{padding:12px;gap:12px}.traveller-avatar{width:40px;height:40px;font-size:16px}.traveller-info h4{font-size:14px}.traveller-info p{font-size:12px}.delete-btn{width:36px;height:36px}.no-travellers{padding:40px 16px}}.mobile-bottom-nav{display:none}@media(max-width:768px){.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;min-height:var(--mobile-nav-height, 74px);background:#fffffff0;border-top:1px solid rgba(0,44,63,.08);box-shadow:0 -12px 30px #002c3f1a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:1000;padding:7px 10px;padding-bottom:max(7px,env(safe-area-inset-bottom));justify-content:space-around;align-items:center}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:56px;padding:6px 10px;background:none;border:none;border-radius:18px;cursor:pointer;color:#8b95a5;font-family:Plus Jakarta Sans,sans-serif;font-size:10px;font-weight:500;letter-spacing:.2px;transition:color .2s ease;-webkit-tap-highlight-color:transparent;position:relative;min-width:66px}.bottom-nav-item svg{width:22px;height:22px;stroke-width:1.8;transition:all .2s ease}.bottom-nav-item.active{color:#9c7635;background:#faf4e8}.bottom-nav-item.active svg{stroke-width:2.2}.bottom-nav-item.active:before{display:none}.bottom-nav-item:active{transform:scale(.92)}.bottom-nav-label{line-height:1}}.flight-booking-page{min-height:calc(100vh - 160px);padding:32px max(20px,calc((100vw - 1180px)/2));background:#f4f7f8;color:#163343}.flight-back-button{display:inline-flex;align-items:center;gap:5px;margin-bottom:20px;padding:0;border:0;background:transparent;color:#274b5d;font-weight:700;cursor:pointer}.flight-booking-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:24px;align-items:start}.flight-review-panel,.flight-passenger-form,.flight-booking-empty,.flight-booking-success{background:#fff;border:1px solid #dce5e9;border-radius:18px;box-shadow:0 12px 35px #002c3f14}.flight-review-panel{padding:24px;position:sticky;top:20px}.flight-review-heading{display:flex;align-items:center;gap:12px;padding-bottom:20px;border-bottom:1px solid #e5ecef}.flight-review-heading svg{color:#b58b25}.flight-review-heading h1,.flight-form-heading h2,.flight-rule-box h2{margin:0;color:#002c3f}.flight-review-heading h1{font-size:22px}.flight-review-heading p,.flight-form-heading span{margin:3px 0 0;color:#6b7e87;font-size:13px}.flight-review-route{display:grid;grid-template-columns:1fr .8fr 1fr;gap:12px;align-items:center;padding:24px 0 12px}.flight-review-route>div:last-child{text-align:right}.flight-review-route strong{display:block;font-size:26px;color:#002c3f}.flight-review-route span{display:block;margin-top:4px;color:#6b7e87;font-size:12px}.flight-review-line{text-align:center}.flight-review-line i{display:block;height:1px;margin-top:8px;background:linear-gradient(90deg,#b58b25,#d7c27e,#b58b25)}.flight-review-carrier{display:flex;justify-content:space-between;padding:12px 0 20px;color:#3d5865;font-weight:700;font-size:13px}.flight-fare-summary{padding:16px;background:#f7fafb;border-radius:12px}.flight-fare-summary>div{display:flex;justify-content:space-between;padding:6px 0}.flight-fare-summary .total{margin-top:8px;padding-top:13px;border-top:1px solid #dce5e9;color:#002c3f;font-size:18px}.flight-rule-box{margin-top:18px;padding:16px;border:1px solid #e7ddbd;border-radius:12px;background:#fffdf6}.flight-rule-box h2{font-size:15px}.flight-rule-box p{max-height:170px;margin:10px 0 0;overflow:auto;white-space:pre-line;color:#536872;font-size:13px;line-height:1.55}.flight-passenger-form{padding:26px}.flight-form-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.flight-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.flight-form-grid.three{grid-template-columns:.55fr 1.25fr 1.2fr}.flight-passenger-form label,.flight-full-field{display:flex;flex-direction:column;gap:7px;color:#385361;font-size:13px;font-weight:700}.flight-passenger-form input,.flight-passenger-form select{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cfdce2;border-radius:9px;background:#fff;color:#163343;font:inherit;font-weight:500;box-sizing:border-box}.flight-passenger-form input:focus,.flight-passenger-form select:focus{outline:2px solid rgba(181,139,37,.22);border-color:#b58b25}.flight-document-section{margin:22px 0;padding:18px;border-radius:12px;background:#f7fafb}.flight-document-section h3{margin:0 0 14px;font-size:15px}.flight-full-field{margin-bottom:18px}.flight-ssr-note,.flight-preparation-warning,.flight-signin-notice,.flight-form-error{margin:14px 0;padding:12px 14px;border-radius:9px;font-size:13px}.flight-ssr-note,.flight-signin-notice{background:#eef6f8;color:#28566a}.flight-preparation-warning{background:#fff8e6;color:#765911}.flight-form-error{background:#fff0f0;color:#a32626}.flight-terms{flex-direction:row!important;align-items:flex-start;gap:10px!important;margin:20px 0;line-height:1.45}.flight-terms input{width:18px;min-height:18px;margin-top:1px}.flight-pay-button,.flight-booking-empty button,.flight-booking-success button{display:inline-flex;justify-content:center;align-items:center;gap:8px;width:100%;min-height:50px;border:0;border-radius:11px;background:#b58b25;color:#fff;font-weight:800;cursor:pointer}.flight-pay-button:disabled{opacity:.55;cursor:not-allowed}.flight-booking-empty,.flight-booking-success{max-width:560px;margin:45px auto;padding:42px;text-align:center}.flight-booking-empty svg,.flight-booking-success svg{color:#b58b25}.flight-booking-empty h1,.flight-booking-success h1{margin:16px 0 8px;color:#002c3f}.flight-success-actions{display:flex;gap:12px;margin-top:24px}.flight-booking-success button.danger{background:#a43d3d}@media(max-width:900px){.flight-booking-layout{grid-template-columns:1fr}.flight-review-panel{position:static}}@media(max-width:768px){.flight-booking-page{width:100vw;max-width:100%;min-height:100dvh;padding:0 0 calc(96px + env(safe-area-inset-bottom));background:#eef4f6;overflow-x:hidden}.flight-back-button{position:sticky;top:calc(62px + env(safe-area-inset-top));z-index:12;width:calc(100% - 24px);min-height:48px;margin:10px 12px 12px;padding:0 12px;border:1px solid #d7e2e7;border-radius:16px;background:#ffffffeb;box-shadow:0 10px 24px #002c3f12;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.flight-booking-layout{display:flex;flex-direction:column;gap:12px}.flight-review-panel,.flight-passenger-form{border-right:0;border-left:0;box-shadow:none}.flight-review-panel{margin:0 12px;padding:16px;border-radius:20px;box-shadow:0 12px 28px #002c3f14}.flight-review-heading{gap:10px;padding-bottom:14px}.flight-review-heading h1{font-size:19px}.flight-review-heading p{font-size:12px}.flight-review-route{grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr);gap:8px;padding:18px 0 10px}.flight-form-grid,.flight-form-grid.three{grid-template-columns:1fr;gap:14px}.flight-review-route strong{font-size:21px}.flight-review-route span,.flight-review-line span{font-size:11px}.flight-review-carrier{gap:10px;padding-bottom:16px;font-size:12px}.flight-fare-summary,.flight-rule-box{border-radius:16px}.flight-passenger-form{margin-top:4px;padding:22px 16px 0;border-radius:28px 28px 0 0;background:#fff}.flight-form-heading{position:sticky;top:calc(120px + env(safe-area-inset-top));z-index:10;margin:-22px -16px 20px;padding:18px 16px 14px;border-bottom:1px solid #edf2f4;border-radius:28px 28px 0 0;background:#fffffff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.flight-form-heading h2{font-size:22px}.flight-passenger-form label,.flight-full-field{gap:8px;font-size:13px}.flight-passenger-form input,.flight-passenger-form select{min-height:54px;padding:13px 14px;border-radius:14px;background:#f8fbfc;font-size:16px}.flight-document-section{margin:18px -4px;padding:16px;border-radius:20px}.flight-signin-notice,.flight-form-error,.flight-ssr-note,.flight-preparation-warning{border-radius:14px}.flight-terms{margin:20px 0 88px;padding:13px;border:1px solid #e4edf1;border-radius:16px;background:#fbfdfe}.flight-pay-button{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));left:16px;z-index:80;width:auto;min-height:58px;border-radius:18px;box-shadow:0 18px 34px #b58b2552}.flight-booking-empty,.flight-booking-success{display:flex;flex-direction:column;align-items:center;width:min(330px,calc(100vw - 72px));max-width:calc(100vw - 72px);min-width:0;min-height:calc(100dvh - 120px);margin:12px auto;padding:28px 18px;border-radius:24px;overflow:hidden}.flight-booking-empty>*,.flight-booking-success>*{max-width:100%;min-width:0}.flight-booking-empty h1,.flight-booking-success h1,.flight-booking-empty p,.flight-booking-success p{max-width:min(100%,310px);overflow-wrap:anywhere;white-space:normal}.flight-booking-empty button,.flight-booking-success button{width:100%;max-width:100%;min-width:0;padding-inline:14px}.flight-success-actions{flex-direction:column}}.flight-home{--fh-navy: #002c3f;--fh-navy-soft: #073f54;--fh-gold: #9c7635;--fh-gold-bright: #ceb45f;--fh-cream: #f7f1e6;--fh-ink: #153746;background:#fbfcfc;color:var(--fh-ink);overflow:hidden}.flight-home,.flight-home *{box-sizing:border-box}.fh-hero{position:relative;min-height:720px;padding:72px max(24px,calc((100vw - 1220px)/2)) 130px;background:radial-gradient(circle at 86% 22%,rgba(206,180,95,.18),transparent 29%),linear-gradient(132deg,#001f2d 0%,var(--fh-navy) 47%,#075169 100%);isolation:isolate}.fh-hero:after{content:"";position:absolute;inset:auto 0 0;height:130px;background:linear-gradient(176deg,transparent 48%,#fbfcfc 49%);z-index:-1}.fh-hero-orbit{position:absolute;border:1px solid rgba(206,180,95,.2);border-radius:50%;pointer-events:none}.fh-hero-orbit.orbit-one{width:520px;height:520px;right:-180px;top:-150px}.fh-hero-orbit.orbit-two{width:350px;height:350px;right:-70px;top:-65px}.fh-hero-plane{position:absolute;right:max(20px,calc((100vw - 1220px)/2));top:70px;color:#ffffff14;transform:rotate(-12deg);pointer-events:none}.fh-hero-copy{position:relative;z-index:2;width:min(720px,100%);max-width:720px;margin-bottom:42px}.fh-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--fh-gold-bright);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.fh-hero-copy h1{margin:16px 0 18px;color:#fff;font-family:Montserrat,sans-serif;font-size:clamp(42px,5vw,68px);line-height:1.04;letter-spacing:-.045em}.fh-hero-copy h1 em{color:var(--fh-gold-bright);font-family:Koguli,Times New Roman,serif;font-style:normal;font-weight:500}.fh-hero-copy p{max-width:610px;margin:0;color:#ffffffb8;font-size:17px;line-height:1.65}.fh-booking-shell{position:relative;z-index:5;width:100%;max-width:1220px}.fh-service-tabs{display:flex;width:fit-content;max-width:100%;padding:7px 8px 0;overflow-x:auto;border-radius:16px 16px 0 0;background:#00141da3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.fh-service-tabs button{display:flex;align-items:center;gap:8px;min-width:max-content;padding:13px 20px 15px;border:0;border-bottom:3px solid transparent;background:transparent;color:#ffffffb8;font-weight:700;cursor:pointer}.fh-service-tabs button:hover,.fh-service-tabs button.active{border-bottom-color:var(--fh-gold-bright);color:#fff}.fh-search-card{padding:26px;border:1px solid rgba(255,255,255,.38);border-radius:0 20px 20px;background:#fffffffa;box-shadow:0 28px 65px #000e154d}.fh-search-topline,.fh-search-options,.fh-special-fares,.fh-promo-row{display:flex;align-items:center}.fh-search-topline{justify-content:space-between;gap:20px;margin-bottom:20px}.fh-trip-types{display:flex;gap:18px}.fh-trip-types button{display:flex;align-items:center;gap:7px;padding:5px 0;border:0;background:transparent;color:#627781;font-weight:700;cursor:pointer}.fh-trip-types button>span{width:15px;height:15px;border:1.5px solid #9dafb7;border-radius:50%;box-shadow:inset 0 0 0 3px #fff}.fh-trip-types button.active{color:var(--fh-navy)}.fh-trip-types button.active>span{border-color:var(--fh-gold);background:var(--fh-gold)}.fh-best-fare{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#edf5f2;color:#27624c;font-size:12px;font-weight:800}.fh-segment-row{position:relative;display:grid;grid-template-columns:minmax(420px,2fr) minmax(145px,.7fr) minmax(145px,.7fr);gap:10px;margin-bottom:12px}.fh-segments.multi .fh-segment-row{grid-template-columns:minmax(420px,2fr) minmax(160px,.7fr) auto;padding-top:24px}.fh-flight-number{position:absolute;top:0;left:3px;color:var(--fh-gold);font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.fh-route-fields{display:grid;grid-template-columns:1fr 38px 1fr;align-items:stretch;border:1px solid #d4dfe4;border-radius:12px;background:#fff}.fh-field{position:relative;display:flex;min-width:0;flex-direction:column;gap:6px;padding:10px 14px;border:1px solid #d4dfe4;border-radius:12px;background:#fff}.fh-route-fields .fh-field{border:0;border-radius:0}.fh-field-label{display:flex;align-items:center;gap:5px;color:#778b94;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.fh-field input,.fh-field button{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--fh-navy);font:inherit;font-size:15px;font-weight:800}.fh-field input::placeholder{color:#9aabb2;font-weight:600}.fh-airport-input-row{display:flex;align-items:center;gap:6px}.fh-airport-input-row strong{padding:4px 6px;border-radius:5px;background:var(--fh-cream);color:var(--fh-gold);font-size:11px}.fh-swap{align-self:center;width:32px;height:32px;padding:0;border:1px solid #d7e1e5;border-radius:50%;background:#fff;color:var(--fh-gold);cursor:pointer;transform:rotate(180deg)}.fh-swap:hover{border-color:var(--fh-gold);background:var(--fh-cream)}.fh-airport-dropdown{position:absolute;z-index:30;top:calc(100% + 8px);left:0;width:min(380px,85vw);padding:7px;border:1px solid #d9e2e6;border-radius:12px;background:#fff;color:var(--fh-navy);box-shadow:0 16px 40px #002c3f2e}.fh-floating-popover{--fh-navy: #002c3f;--fh-navy-soft: #073f54;--fh-gold: #9c7635;--fh-gold-bright: #ceb45f;--fh-cream: #f7f1e6;--fh-ink: #153746;position:fixed;z-index:2000;box-sizing:border-box;font-family:inherit}.fh-floating-popover *{box-sizing:border-box}.fh-airport-dropdown button{display:flex;width:100%;align-items:center;gap:11px;padding:10px;border:0;border-radius:8px;background:transparent;color:var(--fh-navy);font:inherit;text-align:left;cursor:pointer}.fh-airport-dropdown button:hover{background:#f5f8f9}.fh-airport-code{display:inline-flex;min-width:43px;min-height:30px;align-items:center;justify-content:center;padding:7px 6px;border-radius:7px;background:var(--fh-navy);color:#fff;text-align:center;font-size:11px;font-weight:900}.fh-airport-dropdown b,.fh-airport-dropdown small{display:block}.fh-airport-dropdown b{color:var(--fh-navy);font-size:13px}.fh-airport-dropdown small{max-width:260px;margin-top:2px;overflow:hidden;color:#788b94;font-size:11px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.fh-date-field.muted{border-style:dashed;background:#fafbfb}.fh-date-field.muted button{color:var(--fh-gold);text-align:left;cursor:pointer}.fh-fare-date-field{overflow:visible}.fh-fare-date-field.active{border-color:#d8c38a;box-shadow:0 0 0 3px #ceb45f1f}.fh-date-trigger{display:flex;min-height:25px;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer}.fh-date-trigger b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-date-popover{position:absolute;z-index:90;top:calc(100% + 10px);left:0;width:min(360px,calc(100vw - 32px));padding:16px;border:1px solid #d7e3e8;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdfe);box-shadow:0 24px 70px #002c3f3d}.fh-date-popover.fh-floating-popover{position:fixed;z-index:2000}.fh-date-popover:before{position:absolute;top:-7px;left:28px;width:12px;height:12px;border-top:1px solid #d7e3e8;border-left:1px solid #d7e3e8;background:#fff;content:"";transform:rotate(45deg)}.fh-date-popover-head{display:grid;grid-template-columns:74px minmax(0,1fr) 74px;align-items:center;gap:8px;margin-bottom:13px;padding-bottom:12px;border-bottom:1px solid #edf3f6}.fh-date-popover-head strong{color:var(--fh-navy);text-align:center;font-size:14px;font-weight:900;line-height:1.2}.fh-date-popover-head>.fh-date-nav{justify-self:start}.fh-date-head-actions{display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:6px}.fh-date-nav,.fh-date-close{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid #dde7eb;border-radius:8px;background:#fff;color:var(--fh-navy);cursor:pointer}.fh-date-close{background:#f5f8fa;color:#617681}.fh-date-nav:hover,.fh-date-close:hover{border-color:#d8c38a;background:#fffaf0;color:var(--fh-gold)}.fh-date-weekdays,.fh-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.fh-date-weekdays{margin-bottom:6px}.fh-date-weekdays span{color:#768992;text-align:center;font-size:11px;font-weight:850;letter-spacing:0}.fh-date-cell{display:grid;min-height:52px;align-content:center;justify-items:center;gap:2px;padding:5px 2px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--fh-navy);cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}.fh-date-cell.blank{min-height:52px}.fh-date-cell:disabled{color:#bcc8ce;cursor:not-allowed}.fh-date-cell:hover:not(:disabled),.fh-date-cell.selected{border-color:#d8c38a;background:#fff9eb}.fh-date-cell.has-fare:not(.selected):not(:hover){background:#fbfefd}.fh-date-cell.selected{box-shadow:inset 0 0 0 1px #9c763547,0 6px 16px #9c76351f}.fh-date-cell span{color:inherit;font-size:14px;font-weight:750;line-height:1;font-variant-numeric:tabular-nums}.fh-date-cell small{color:#009d49;font-size:10px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.fh-date-popover-note{margin-top:10px;padding:8px 9px;border-radius:8px;background:#f5f9fa;color:#627882;font-size:11px;font-weight:750;text-align:center}.fh-date-popover-note.error{background:#fff7ea;color:#8a5d1f}.fh-remove-flight{align-self:stretch;padding:0 12px;border:1px solid #efd3d3;border-radius:10px;background:#fff8f8;color:#a74a4a;font-weight:800;cursor:pointer}.fh-add-flight{display:flex;align-items:center;gap:6px;margin:5px 0 14px;padding:8px 11px;border:1px dashed #bea66b;border-radius:8px;background:#fffdf7;color:var(--fh-gold);font-weight:800;cursor:pointer}.fh-search-options{position:relative;gap:10px;margin-top:12px}.fh-passenger-wrap{position:relative;flex:1.1}.fh-option-button{display:flex;min-height:58px;flex:1;align-items:center;gap:10px;padding:8px 13px;border:1px solid #d4dfe4;border-radius:11px;background:#fff;color:var(--fh-navy);text-align:left;cursor:pointer}.fh-passenger-wrap>.fh-option-button{width:100%}.fh-option-button>span{display:flex;min-width:0;flex:1;flex-direction:column}.fh-option-button small{color:#7c8e96;font-size:10px;font-weight:800;text-transform:uppercase}.fh-option-button b{margin-top:2px;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.fh-passenger-popover{position:absolute;z-index:40;top:calc(100% + 8px);left:0;width:340px;max-width:88vw;padding:18px;border:1px solid #d8e2e6;border-radius:13px;background:#fff;box-shadow:0 18px 45px #002c3f33}.fh-passenger-counter{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #edf1f3}.fh-passenger-counter>span,.fh-passenger-counter>span small{display:block}.fh-passenger-counter>span small{color:#82949d;font-size:11px}.fh-passenger-counter>div{display:flex;align-items:center;gap:12px}.fh-passenger-counter button{display:grid;width:29px;height:29px;place-items:center;border:1px solid #cdd9de;border-radius:50%;background:#fff;color:var(--fh-navy);cursor:pointer}.fh-passenger-counter button:disabled{opacity:.35}.fh-passenger-popover>label{display:flex;flex-direction:column;gap:6px;margin-top:14px;font-size:12px;font-weight:800}.fh-passenger-popover select{padding:9px;border:1px solid #d4dfe4;border-radius:8px}.fh-popover-done{width:100%;margin-top:14px;padding:10px;border:0;border-radius:8px;background:var(--fh-navy);color:#fff;font-weight:800;cursor:pointer}.fh-search-button{display:flex;min-height:58px;align-items:center;justify-content:center;gap:8px;padding:0 24px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--fh-gold-bright),var(--fh-gold));color:#fff;box-shadow:0 8px 20px #9c763540;font-size:14px;font-weight:900;cursor:pointer}.fh-search-button:hover{transform:translateY(-1px);box-shadow:0 11px 24px #9c763552}.fh-promo-row{width:min(420px,100%);gap:9px;margin:10px 0;padding:9px 12px;border-radius:9px;background:var(--fh-cream)}.fh-promo-row input{min-width:0;flex:1;padding:7px;border:0;border-bottom:1px solid #baa36c;outline:0;background:transparent;font-weight:800}.fh-promo-row button{border:0;background:transparent;color:var(--fh-gold);font-weight:900;cursor:pointer}.fh-special-fares{flex-wrap:wrap;gap:8px;margin-top:16px}.fh-special-fares>span{margin-right:4px;color:#687d86;font-size:11px;font-weight:900;text-transform:uppercase}.fh-special-fares button{padding:7px 11px;border:1px solid #d8e1e5;border-radius:999px;background:#fff;color:#536b76;font-size:11px;font-weight:800;cursor:pointer}.fh-special-fares button.active{border-color:#d8c38a;background:var(--fh-cream);color:var(--fh-gold)}.fh-search-error{margin-top:14px;padding:10px 12px;border-radius:8px;background:#fff0f0;color:#a32c2c;font-size:13px;font-weight:700}.fh-utility-notice{position:fixed;z-index:200;right:24px;bottom:24px;padding:13px 17px;border:1px solid rgba(206,180,95,.4);border-radius:10px;background:var(--fh-navy);color:#fff;box-shadow:0 12px 30px #002c3f4d;font-size:13px;font-weight:700}.fh-trust-strip{position:relative;z-index:6;display:grid;width:min(1100px,calc(100% - 40px));grid-template-columns:repeat(3,1fr);margin:-52px auto 80px;border:1px solid #dce5e8;border-radius:16px;background:#fff;box-shadow:0 18px 45px #002c3f17}.fh-trust-strip>div{display:flex;align-items:center;gap:12px;padding:21px 26px}.fh-trust-strip>div+div{border-left:1px solid #e6edef}.fh-trust-strip svg{color:var(--fh-gold)}.fh-trust-strip span,.fh-trust-strip small{display:block}.fh-trust-strip b{color:var(--fh-navy);font-size:13px}.fh-trust-strip small{margin-top:3px;color:#7a8d96;font-size:11px}.fh-offers-section{width:min(1180px,calc(100% - 40px));margin:0 auto 100px}.fh-section-heading{max-width:600px;margin-bottom:34px}.fh-section-heading>span{color:var(--fh-gold);font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.fh-section-heading h2{margin:10px 0;color:var(--fh-navy);font-family:Montserrat,sans-serif;font-size:clamp(28px,4vw,44px);letter-spacing:-.035em}.fh-section-heading p{margin:0;color:#69808b;line-height:1.6}.fh-offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fh-offer-grid article{position:relative;min-height:260px;padding:28px;overflow:hidden;border:1px solid #dce5e8;border-radius:18px;background:#fff;transition:transform .25s ease,box-shadow .25s ease}.fh-offer-grid article:after{content:"";position:absolute;right:-42px;bottom:-42px;width:130px;height:130px;border-radius:50%;background:#ceb45f1c}.fh-offer-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 38px #002c3f1a}.fh-offer-icon{display:grid;width:50px;height:50px;margin-bottom:30px;place-items:center;border-radius:13px;background:var(--fh-cream);color:var(--fh-gold)}.fh-offer-grid article>span{color:var(--fh-gold);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.fh-offer-grid h3{max-width:320px;margin:10px 0;color:var(--fh-navy);font-size:21px;line-height:1.28}.fh-offer-grid p{margin:0;color:#70848e;font-size:13px;line-height:1.6}.fh-destination-band{display:flex;width:min(1180px,calc(100% - 40px));align-items:flex-end;justify-content:space-between;gap:40px;margin:0 auto 100px;padding:50px;border-radius:24px;background:radial-gradient(circle at 85% 20%,rgba(206,180,95,.22),transparent 28%),var(--fh-navy);color:#fff}.fh-kicker.dark{color:var(--fh-gold-bright)}.fh-destination-band h2{margin:14px 0;font-family:Montserrat,sans-serif;font-size:clamp(28px,4vw,46px);line-height:1.15;letter-spacing:-.04em}.fh-destination-band p{max-width:610px;margin:0;color:#ffffffa6;line-height:1.65}.fh-destination-band button{display:flex;min-width:max-content;align-items:center;gap:8px;padding:14px 18px;border:1px solid rgba(255,255,255,.24);border-radius:10px;background:var(--fh-gold);color:#fff;font-weight:900;cursor:pointer}@media(max-width:1000px){.fh-hero{min-height:auto;padding-top:54px}.fh-segment-row,.fh-segments.multi .fh-segment-row{grid-template-columns:1fr 1fr}.fh-route-fields{grid-column:1 / -1}.fh-remove-flight{min-height:50px}}@media(max-width:760px){.fh-hero{padding:42px 14px 110px}.fh-booking-shell{width:calc(100vw - 28px);max-width:calc(100vw - 28px)}.fh-hero-copy{width:100%;max-width:100%;margin-bottom:28px}.fh-hero-copy h1{font-size:clamp(31px,9vw,40px);letter-spacing:-.035em}.fh-hero-copy p{width:100%;max-width:100%;font-size:14px}.fh-hero-plane{display:none}.fh-service-tabs{width:calc(100vw - 28px)}.fh-service-tabs button{padding-inline:14px;font-size:12px}.fh-search-card{width:100%;max-width:100%;padding:18px;border-radius:0 15px 15px}.fh-search-topline{align-items:flex-start;flex-direction:column}.fh-trip-types{width:100%;gap:13px;overflow-x:auto}.fh-trip-types button{min-width:max-content;font-size:12px}.fh-segment-row,.fh-segments.multi .fh-segment-row{grid-template-columns:1fr}.fh-route-fields{grid-template-columns:1fr;gap:0;padding:0}.fh-route-fields .fh-field{min-height:62px}.fh-route-fields .fh-field:first-child{border-bottom:1px solid #e0e7ea}.fh-swap{position:absolute;z-index:4;right:18px;top:48px;transform:rotate(90deg)}.fh-search-options{align-items:stretch;flex-direction:column}.fh-option-button,.fh-search-button{width:100%}.fh-trust-strip{grid-template-columns:1fr;margin-top:-45px}.fh-trust-strip>div+div{border-top:1px solid #e6edef;border-left:0}.fh-offer-grid{grid-template-columns:1fr}.fh-destination-band{align-items:flex-start;flex-direction:column;padding:30px 24px}}@media(max-width:520px){.fh-hero-copy h1{max-width:100%;font-size:30px;line-height:1.08;letter-spacing:-.025em}.fh-search-card{padding:14px}.fh-best-fare{display:none}.fh-special-fares>span{width:100%}.fh-trust-strip,.fh-offers-section,.fh-destination-band{width:calc(100% - 24px)}}.hotel-home{--hh-ink: #102f3f;--hh-muted: #627582;--hh-line: #d9e2e8;--hh-soft: #f5f8fa;--hh-panel: #ffffff;--hh-navy: #05364c;--hh-navy-deep: #022638;--hh-teal: #12706a;--hh-gold: #a6782a;--hh-green: #287454;--hh-red: #b42318;--hh-shadow: 0 24px 60px rgba(4, 31, 45, .14);background:#f8fafb;color:var(--hh-ink);overflow-x:hidden}.hotel-home,.hotel-home *{box-sizing:border-box}.hh-hero{padding:56px max(20px,calc((100vw - 1220px)/2)) 32px;background:linear-gradient(145deg,#032f43f5,#05364ce6),url(https://images.unsplash.com/photo-1566073771259-6a8506099945?auto=format&fit=crop&w=1800&q=80);background-position:center;background-size:cover}.hh-hero-copy{width:min(720px,100%);margin-bottom:28px}.hh-kicker{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;color:#e9c46a;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hh-hero-copy h1{margin:0 0 14px;color:#fff;font-family:Montserrat,sans-serif;font-size:54px;line-height:1.06;letter-spacing:0}.hh-hero-copy p{max-width:640px;margin:0;color:#ffffffc7;font-size:16px;line-height:1.65}.hh-search-shell{width:100%}.hh-search-card{display:grid;grid-template-columns:minmax(240px,1.3fr) minmax(150px,.72fr) minmax(150px,.72fr) minmax(230px,1fr) minmax(170px,.7fr);gap:12px;align-items:stretch;padding:16px;border:1px solid rgba(255,255,255,.38);border-radius:8px;background:#fffffffa;box-shadow:var(--hh-shadow)}.hh-field,.hh-guest-btn{min-height:70px;border:1px solid var(--hh-line);border-radius:8px;background:#fff}.hh-field{position:relative;display:flex;flex-direction:column;gap:8px;padding:12px 14px}.hh-field>span,.hh-guest-btn small{display:flex;align-items:center;gap:6px;color:#697d8a;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.hh-field input,.hh-rating-select select,.hh-guest-form input,.hh-guest-form select{width:100%;border:0;background:transparent;color:var(--hh-ink);font:inherit;font-weight:750;outline:none}.hh-field input[type=date]{min-width:0;color-scheme:light}.hh-city-menu,.hh-guest-popover{position:absolute;z-index:20;top:calc(100% + 8px);left:0;right:0;border:1px solid var(--hh-line);border-radius:8px;background:#fff;box-shadow:0 18px 48px #031f2c29}.hh-city-menu{overflow:hidden}.hh-city-menu button{display:flex;width:100%;flex-direction:column;gap:3px;padding:12px 14px;border:0;border-bottom:1px solid #edf2f5;background:#fff;color:var(--hh-ink);text-align:left;cursor:pointer}.hh-city-menu button:hover{background:#f4f8fa}.hh-city-menu small,.hh-panel-title small,.hh-room-option small,.hh-trust-row small{color:var(--hh-muted)}.hh-guest-wrap{position:relative}.hh-guest-btn{display:grid;width:100%;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px 14px;color:var(--hh-ink);text-align:left;cursor:pointer}.hh-guest-btn b{display:block;margin-top:4px;font-size:15px}.hh-guest-popover{left:auto;width:min(330px,calc(100vw - 32px));padding:14px}.hh-counter{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #edf2f5}.hh-counter span{display:grid;gap:2px}.hh-counter small{color:var(--hh-muted);font-size:12px}.hh-counter>div{display:inline-grid;grid-template-columns:30px 34px 30px;align-items:center;gap:4px}.hh-counter button{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid var(--hh-line);border-radius:8px;background:#fff;color:var(--hh-navy);cursor:pointer}.hh-counter button:disabled{color:#aab7bf;cursor:not-allowed}.hh-counter strong{text-align:center}.hh-rating-select{display:grid;gap:7px;padding:13px 0;color:var(--hh-ink);font-size:13px;font-weight:800}.hh-rating-select select,.hh-guest-form input,.hh-guest-form select{height:42px;padding:0 11px;border:1px solid var(--hh-line);border-radius:8px;background:#fff;font-weight:700}.hh-popover-done,.hh-search-btn,.hh-primary-btn,.hh-secondary-btn,.hh-text-btn,.hh-hotel-footer button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.hh-popover-done{width:100%;height:42px;border:1px solid var(--hh-navy);background:var(--hh-navy);color:#fff}.hh-search-btn{min-height:70px;border:0;background:linear-gradient(135deg,var(--hh-navy),var(--hh-teal));color:#fff;font-size:15px;box-shadow:0 14px 28px #05364c3d}.hh-search-btn:hover,.hh-primary-btn:hover,.hh-hotel-footer button:hover{transform:translateY(-1px)}.hh-search-btn:disabled,.hh-primary-btn:disabled,.hh-secondary-btn:disabled,.hh-text-btn:disabled,.hh-hotel-footer button:disabled{opacity:.65;cursor:not-allowed;transform:none}.hh-spin{animation:hh-spin .8s linear infinite}@keyframes hh-spin{to{transform:rotate(360deg)}}.hh-workspace{width:min(1220px,calc(100% - 40px));margin:28px auto 70px}.hh-alert{margin-bottom:18px;padding:13px 15px;border:1px solid #bee7d2;border-radius:8px;background:#f0fbf5;color:var(--hh-green);font-weight:750}.hh-alert.error{border-color:#fecaca;background:#fff5f5;color:var(--hh-red)}.hh-results-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.9fr);gap:22px;align-items:start}.hh-results-panel,.hh-detail-panel{border:1px solid var(--hh-line);border-radius:8px;background:var(--hh-panel);box-shadow:0 12px 36px #102f3f14}.hh-results-panel{min-height:520px;padding:18px}.hh-detail-panel{position:sticky;top:88px;padding:20px}.hh-panel-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #edf2f5}.hh-panel-title span{display:inline-flex;align-items:center;gap:8px;font-weight:850}.hh-empty-state{display:grid;min-height:280px;place-items:center;align-content:center;gap:14px;padding:28px;color:#6a7d89;text-align:center}.hh-empty-state svg{color:#91a3ae}.hh-empty-state p{max-width:340px;margin:0;line-height:1.55}.hh-empty-state.tall{min-height:440px}.hh-hotel-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:14px;border:1px solid var(--hh-line);border-radius:8px;background:#fff}.hh-hotel-card+.hh-hotel-card{margin-top:14px}.hh-hotel-card.active{border-color:#a6782acc;box-shadow:0 0 0 3px #a6782a1f}.hh-hotel-image{display:grid;min-height:138px;place-items:center;overflow:hidden;border-radius:8px;background:linear-gradient(135deg,#e9f2f3,#fff7e6);color:var(--hh-navy)}.hh-hotel-image img{width:100%;height:100%;object-fit:cover}.hh-hotel-main{min-width:0}.hh-hotel-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px}.hh-hotel-head h3,.hh-selected-head h2,.hh-room-list h3{margin:0;font-family:Montserrat,sans-serif;letter-spacing:0}.hh-hotel-head h3{font-size:18px;line-height:1.25}.hh-hotel-head span{display:inline-flex;align-items:center;gap:5px;margin-top:6px;color:var(--hh-muted);font-size:13px}.hh-rating{display:inline-flex;flex:0 0 auto;gap:2px;color:#d89a1f}.hh-hotel-main p{margin:0 0 14px;color:#536a77;font-size:14px;line-height:1.55}.hh-hotel-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.hh-hotel-footer strong,.hh-price-row strong{color:var(--hh-navy);font-size:19px}.hh-hotel-footer strong small{color:var(--hh-muted);font-size:12px;font-weight:700}.hh-hotel-footer button,.hh-primary-btn{min-height:42px;padding:0 15px;border:0;background:var(--hh-navy);color:#fff}.hh-selected-head{padding-bottom:16px;border-bottom:1px solid #edf2f5}.hh-selected-head span{color:var(--hh-gold);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.hh-selected-head h2{margin-top:6px;font-size:24px;line-height:1.2}.hh-selected-head p{margin:8px 0 0;color:var(--hh-muted);line-height:1.45}.hh-info-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.hh-info-strip span{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:6px;border:1px solid #e5edf1;border-radius:8px;background:var(--hh-soft);color:#385463;font-size:12px;font-weight:800;text-align:center}.hh-facilities{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.hh-facilities span{padding:7px 9px;border:1px solid #d9eadf;border-radius:999px;background:#f2faf5;color:#2f6d51;font-size:12px;font-weight:800}.hh-room-list{display:grid;gap:10px}.hh-room-list h3{font-size:16px}.hh-room-option{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--hh-line);border-radius:8px;background:#fff;color:var(--hh-ink);text-align:left;cursor:pointer}.hh-room-option.active{border-color:var(--hh-gold);background:#fffaf0}.hh-room-option span{display:grid;min-width:0;gap:4px}.hh-room-option strong{color:var(--hh-navy);white-space:nowrap}.hh-checkout-box{margin-top:16px;padding-top:16px;border-top:1px solid #edf2f5}.hh-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:10px}.hh-price-row span{color:#405969;font-weight:800}.hh-checkout-box p{margin:0 0 15px;color:var(--hh-muted);font-size:13px;line-height:1.55}.hh-guest-form{display:grid;grid-template-columns:.62fr repeat(4,minmax(0,1fr));gap:10px}.hh-guest-form label{display:grid;min-width:0;gap:7px;color:#5c6f7a;font-size:12px;font-weight:800}.hh-guest-form label:nth-child(1){grid-column:1 / 2}.hh-guest-form label:nth-child(2){grid-column:2 / 4}.hh-guest-form label:nth-child(3){grid-column:4 / 6}.hh-guest-form label:nth-child(4),.hh-guest-form label:nth-child(5){grid-column:span 2}.hh-guest-form label:nth-child(5){grid-column:3 / 6}.hh-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.hh-secondary-btn,.hh-text-btn{min-height:42px;padding:0 13px;border:1px solid var(--hh-line);background:#fff;color:var(--hh-navy)}.hh-primary-btn{background:linear-gradient(135deg,var(--hh-navy),var(--hh-navy-deep))}.hh-text-btn{grid-column:1 / -1;border-color:#ead8b6;background:#fff8eb;color:#875f1d}.hh-confirmation{display:flex;align-items:center;gap:12px;margin-top:16px;padding:14px;border:1px solid #bce5cf;border-radius:8px;background:#effbf5;color:var(--hh-green)}.hh-confirmation span{display:block;margin-bottom:3px;font-size:12px;font-weight:800;text-transform:uppercase}.hh-confirmation b{color:#154e37}.hh-trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.hh-trust-row>div{display:flex;gap:12px;align-items:center;min-height:76px;padding:14px;border:1px solid #dfe8ed;border-radius:8px;background:#fff;color:var(--hh-navy)}.hh-trust-row span{display:grid;gap:3px}@media(max-width:1080px){.hh-search-card{grid-template-columns:repeat(2,minmax(0,1fr))}.hh-city-field,.hh-guest-wrap,.hh-search-btn{grid-column:span 2}.hh-results-grid{grid-template-columns:1fr}.hh-detail-panel{position:static}}@media(max-width:720px){.hh-hero{padding:36px 16px 22px}.hh-hero-copy{margin-bottom:20px}.hh-hero-copy p{font-size:15px}.hh-hero-copy h1{font-size:38px}.hh-search-card{grid-template-columns:1fr;padding:12px}.hh-city-field,.hh-guest-wrap,.hh-search-btn{grid-column:auto}.hh-workspace{width:min(100% - 24px,1220px);margin-top:18px}.hh-results-panel,.hh-detail-panel{padding:14px}.hh-hotel-card{grid-template-columns:1fr}.hh-hotel-image{min-height:180px}.hh-hotel-head,.hh-hotel-footer,.hh-price-row{flex-direction:column;align-items:flex-start}.hh-hotel-footer button,.hh-search-btn{width:100%}.hh-info-strip,.hh-trust-row,.hh-guest-form,.hh-actions{grid-template-columns:1fr}.hh-guest-form label:nth-child(4),.hh-guest-form label:nth-child(5),.hh-guest-form label:nth-child(1),.hh-guest-form label:nth-child(2),.hh-guest-form label:nth-child(3),.hh-text-btn{grid-column:auto}}@media(max-width:420px){.hh-hero-copy h1{font-size:31px}.hh-field,.hh-guest-btn,.hh-search-btn{min-height:64px}}
