@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}@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:hidden}@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}.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: #eff5f7;--header-gold: #9c7635;--header-gold-dark: #7a5c2a;--header-gold-light: #CEB45F;--header-gold-soft: #faf7f0;--header-gold-wash: #f6efe1;position:sticky;top:0;z-index:100;background:#fff;color:var(--header-primary);border-bottom:1px solid #e5e7ef;box-shadow:0 8px 28px #1a21340d}.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(.75rem,1.2vw,1.35rem)}.brand-cluster,.header-actions,.mode-tabs-header,.header-action-link,.login-btn,.header-timer,.page-back-btn{display:flex;align-items:center}.brand-cluster{flex:0 0 auto;gap:12px;min-width:0}.logo{border:0;background:transparent;padding:0;cursor:pointer}.logo-text{display:inline-flex;align-items:center;min-height:40px;padding:0 13px;border-radius:7px;background:var(--header-gold);color:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:24px;font-weight:800;letter-spacing:0;line-height:1;box-shadow:0 10px 22px #9c76352e}.page-back-btn{justify-content:center;width:36px;height:36px;border:1px solid #e6e8ef;border-radius:50%;background:#fff;color:#3f4658;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.page-back-btn:hover{border-color:var(--header-gold);color:var(--header-gold);background:var(--header-gold-soft)}.header-actions{justify-content:flex-end;flex:0 1 auto;gap:clamp(.65rem,.9vw,1rem);margin-left:auto;min-width:0}.header-action-link{gap:7px;color:#5f6472;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:0 0 auto;align-self:stretch;justify-content:center;min-width:max-content;gap:clamp(.9rem,1.45vw,1.75rem)}.mode-tab{position:relative;display:inline-flex;align-items:center;gap:9px;min-height:86px;padding:0;border:0;background:transparent;color:#5f6472;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: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-primary)}.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:#5f6472}.mode-tab-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:var(--header-gold-wash);color:var(--header-primary);box-shadow:inset -8px -4px #ceb45f6b;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-gold-dark);background:var(--header-gold-soft);transform:translateY(-1px)}.mode-tab:disabled .mode-tab-icon{color:#697081;background:#f2f4f8;box-shadow:inset -8px -4px #dce1ebbf;transform:none}.booking-context{flex:0 1 auto;overflow:hidden;max-width:220px;margin:0;color:var(--header-primary);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 #bde6c2;border-radius:999px;background:#ecf9ee;color:#287a35;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:#ffd28b;background:#fff6e8;color:#c96800;animation:pulse-warning 1s infinite}.header-timer.critical{border-color:#ffa4a4;background:#fff0f0;color:#c62828;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 #c6282847;transform:scale(1)}50%{box-shadow:0 0 0 4px #c6282814;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-gold-dark)}.login-btn:disabled{color:#8b90a0;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:#fff;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 #e6e8ef;border-radius:50%;background:#fff;color:#293143;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:.85rem}}@media(max-width:1024px){.header-main-inner{gap:1rem}.header-actions{gap:12px}.header-action-link{font-size:13px}.mode-tabs-header{gap:1rem}.mode-tab{gap:8px;font-size:14px}.mode-tab-icon{width:36px;height:36px;flex-basis:36px}.booking-context{display:none}}@media(max-width:900px){.header{border-bottom:1px solid rgba(0,44,63,.08);background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 24px #002c3f0f}.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-text{min-height:36px;max-width:44vw;padding:0 11px;font-size:21px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-back-btn{width:34px;height:34px}.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:0;padding:0;border-color:var(--header-gold);background:var(--header-gold);color:#fff;box-shadow:0 10px 22px #9c763538}.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:#0d142175;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:#fff;box-shadow:-12px 0 34px #161b262e;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 #eef0f5}.nav-drawer-logo{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border-radius:7px;background:var(--header-gold);color:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:20px;font-weight:800}.nav-close-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #e7e9ef;border-radius:50%;background:#fff;color:#4d5362;cursor:pointer}.nav-close-btn svg{width:21px;height:21px;color:#293143;stroke-width:2.4}.mobile-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 18px;border-bottom:1px solid #eef0f5}.mobile-mode-tabs .mode-tab{justify-content:flex-start;min-height:52px;padding:8px 10px;border:1px solid #e7e9ef;border-radius:8px;background:#fff;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-soft);color:var(--header-gold-dark)}.mobile-mode-tabs .mode-tab-icon{width:32px;height:32px;flex-basis:32px;box-shadow:inset -5px -3px #ceb45f6b}.mobile-mode-tabs .mode-tab:disabled .mode-tab-icon{box-shadow:inset -5px -3px #dce1ebbf}.nav-user-section{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #eef0f5;background:var(--header-primary);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:#fff;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:#fff;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:#ffffffb3;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:12px}.nav-user-chevron{color:#ffffffa6;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:#333948;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-dark)}.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 #eef0f5}.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:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 10px 20px #9c763538}}@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{width:40px;height:40px;flex-basis:40px}.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}.page-back-btn{width:32px;height:32px;flex:0 0 32px}.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%;height:620px;min-height:560px;overflow:visible}.hero-background{position:absolute;inset:0;overflow:hidden}.hero-bg-image{width:100%;height:100%;object-fit:cover;object-position:center center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#002c3fe6,#002c3fb8 42%,#002c3f52),linear-gradient(180deg,#002c3f2e,#002c3f80);z-index:1}.hero-content{position:absolute;top:92px;left:max(32px,calc((100vw - 1200px)/2));max-width:680px;text-align:left;z-index:2;padding:0 24px}.hero-kicker{display:inline-flex;align-items:center;min-height:32px;padding:0 13px;margin-bottom:18px;border:1px solid rgba(206,180,95,.42);border-radius:999px;background:#faf7f014;color:#ceb45f;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.hero-title{font-family:Montserrat,sans-serif;font-size:52px;font-weight:800;color:#fff;margin:0 0 18px;text-shadow:0 12px 34px rgba(0,0,0,.26);letter-spacing:0;animation:fadeInDown .8s ease-out}.hero-title span{display:block}.hero-subtitle{font-family:Plus Jakarta Sans,sans-serif;font-size:18px;font-weight:500;color:#ffffffd1;margin:0 0 26px;text-shadow:0 2px 12px rgba(0,0,0,.18);max-width:620px;animation:fadeInUp .8s ease-out .2s both}.hero-proof-row{display:flex;flex-wrap:wrap;gap:12px;animation:fadeInUp .8s ease-out .28s both}.hero-proof-row span{display:inline-flex;align-items:baseline;gap:6px;min-height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff14;color:#ffffffc7;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:700;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-proof-row strong{color:#ceb45f;font-size:18px;font-weight:900}@media(max-width:1024px){.hero{height:580px;min-height:540px}.hero-content{top:80px}.hero-title{font-size:42px}.hero-subtitle{font-size:18px}}@media(max-width:768px){.hero{height:560px;min-height:520px}.hero-content{top:64px;left:0;width:100%;max-width:none;padding:0 20px}.hero-title{max-width:520px;font-size:28px;line-height:1.14;margin-bottom:12px}.hero-subtitle{font-size:16px}.hero-proof-row{gap:8px}.hero-proof-row span{min-height:38px;padding:0 12px;font-size:12px}}@media(max-width:480px){.hero{height:530px;min-height:500px}.hero-title{max-width:340px;font-size:24px}.hero-subtitle{font-size:14px}.hero-proof-row span{width:100%}}.search-bus-wrapper{--booking-primary: #002C3F;--booking-primary-hover: #004663;--booking-gold: #9c7635;--booking-gold-dark: #7a5c2a;--booking-gold-light: #CEB45F;--booking-gold-soft: #faf7f0;--booking-border: #d9e2e7;--booking-border-strong: #c7d6de;--booking-muted: #647481;--booking-text: #082f42;--booking-surface: #fbfcfd;--booking-shadow: 0 24px 58px rgba(0, 44, 63, .16);--booking-shadow-hover: 0 28px 66px rgba(0, 44, 63, .2);width:100%;display:flex;justify-content:center;padding:0 24px;margin-top:-150px;margin-bottom:56px;position:relative;z-index:30}.search-container-figma{width:100%;max-width:1240px;position:relative;isolation:isolate}.search-module-header{display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;overflow:hidden;padding:24px 26px 20px;border:1px solid var(--booking-border);border-bottom:0;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#fffffffa,#f8fbfcfa);box-shadow:0 18px 40px #002c3f1f;z-index:2}.search-module-header:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--booking-primary) 0%,#1f6c7f 58%,var(--booking-gold-light) 100%)}.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:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.search-module-header h2{margin:0;color:var(--booking-text);font-family:Montserrat,sans-serif;font-size:24px;font-weight:800;letter-spacing:0;line-height:1.18}.search-module-status{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border:1px solid #dfe9e4;border-radius:999px;background:linear-gradient(180deg,#f7fcf8,#eff8f2);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:linear-gradient(180deg,#ffffff 0%,var(--booking-surface) 100%);border-radius:0 0 8px 8px;padding:18px;display:flex;align-items:center;gap:12px;box-shadow:var(--booking-shadow);animation:none;border:1px solid var(--booking-border);border-top-color:#eef3f6;transition:box-shadow .3s ease;z-index:1}.search-card-figma:hover{box-shadow:var(--booking-shadow-hover)}.search-assurance-row{display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding:14px 26px 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:12px;position:relative;flex:1 1 250px;min-width:0;min-height:74px;padding:12px 14px;border:1px solid var(--booking-border);border-radius:8px;background:#ffffffc2;box-shadow:inset 0 1px #ffffffd1;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .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:286px}.search-field-figma.date-field{cursor:pointer;flex:0 0 188px;gap:12px}.field-icon-img{width:36px;height:36px;flex-shrink:0;border-radius:10px;filter:drop-shadow(0 6px 10px rgba(4,26,43,.14))}.field-icon-img.cal-icon{width:32px;height:32px;border-radius:8px}.field-content-figma{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.field-label-figma{font-family:Plus Jakarta Sans,sans-serif;font-size:10px;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:15px;font-weight:800;color:var(--booking-text);padding:0;outline:none;width:100%;line-height:1.2}.field-input-figma::placeholder{color:#9aa6ae;font-weight:700}.field-value-figma{font-family:Montserrat,sans-serif;font-size:15px;font-weight:800;color:var(--booking-text);line-height:1.2}.swap-btn-figma{width:42px;height:42px;border:1px solid #eadcc2;border-radius:50%;background:linear-gradient(180deg,#fffdf8,#f8efe1);color:var(--booking-primary);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 #9c76351f}.swap-btn-figma:hover{transform:scale(1.05);border-color:var(--booking-gold);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:12px;flex:0 0 auto}.quick-dates-figma{display:flex;gap:4px;flex-shrink:0;min-height:44px;padding:4px;border:1px solid var(--booking-border);border-radius:8px;background:#f6f9fa;box-shadow:inset 0 1px #ffffffb8}.quick-date-btn-figma{min-height:34px;padding:0 12px;border-radius:6px;border:0;background:transparent;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:800;color:var(--booking-muted);cursor:pointer;transition:all .2s ease;white-space:nowrap}.quick-date-btn-figma:hover{background:var(--booking-gold-soft)}.quick-date-btn-figma.active{background:#fff;color:var(--booking-gold-dark);box-shadow:0 4px 12px #9c76351f}.search-btn-figma{min-height:74px;background:var(--booking-gold);color:#fff;border:none;border-radius:8px;padding:0 24px;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:182px;justify-content:center}.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 28px;font-size:15px;background:linear-gradient(135deg,var(--booking-primary) 0%,#004d6d 100%);box-shadow:0 14px 26px #002c3f42}.search-btn-figma.search-btn-prominent:hover{background:linear-gradient(135deg,#003d57,#005a82);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}.city-dropdown{position:absolute;top:100%;left:0;width:min(420px,calc(100vw - 32px));min-width:100%;background:#fff;border-radius:8px;box-shadow:0 8px 30px #00000026;max-height:250px;overflow-y:auto;z-index:100;list-style:none;padding:8px 0;margin:8px 0 0}.city-dropdown li{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;color:#333;transition:background .2s ease}.suggestion-icon{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:8px;background:#f7f9fb;color:#6b7280;font-size:15px}.suggestion-icon.city{background:var(--booking-gold-soft);color:var(--booking-gold);font-size:18px}.suggestion-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px;max-width:none}.suggestion-copy b{color:#1f2933;font-size:15px;font-weight:700;word-break:break-word;line-height:1.3;white-space:normal}.suggestion-copy small{color:#8b95a1;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-arrow{color:#8b95a1;font-size:17px}.city-dropdown li:hover{background:var(--booking-gold-soft);color:var(--booking-gold)}.city-dropdown::-webkit-scrollbar{width:6px}.city-dropdown::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.city-dropdown::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.city-dropdown::-webkit-scrollbar-thumb:hover{background:#aaa}.recent-searches-section{border-bottom:1px solid #eaeaea;padding-bottom:8px;margin-bottom:8px}.dropdown-section-header{padding:8px 16px 6px;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:600;color:var(--booking-gold);text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px}.section-icon{font-size:14px}.recent-list,.suggestions-list{list-style:none;padding:0;margin:0}.recent-list li,.suggestions-list li{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;color:#333;transition:background .2s ease}.recent-list li:hover,.suggestions-list li:hover{background:var(--booking-gold-soft);color:var(--booking-gold)}.recent-route{display:flex;align-items:center;gap:4px}.suggestions-section{padding-top:4px}.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}.search-field-figma.route-field{flex-basis:248px}.field-icon-img{width:32px;height:32px}.field-icon-img.cal-icon{width:28px;height:28px}.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:68px;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:900px){.search-module-header{align-items:flex-start;flex-direction:column;gap:14px;padding:20px}.search-module-header h2{font-size:20px}.search-card-figma{flex-wrap:wrap;border-radius:0 0 8px 8px;padding:16px;gap:16px}.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{flex:1 1 100%;justify-content:center}}@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{flex-direction:column;background:linear-gradient(180deg,#fff,#fbfcfd);border-radius:0 0 8px 8px;padding:12px;gap:10px;border:1px solid var(--booking-border);box-shadow:0 12px 26px #002c3f24}.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-icon-img.cal-icon{width:30px;height:30px}.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{width:100%;padding:4px;gap:4px}.quick-date-btn-figma{flex:1;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}}@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}.field-icon-img.cal-icon{width:28px;height:28px}.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}}.search-bus-wrapper.compact{margin-top:0;margin-bottom:20px;padding:0}.search-bus-wrapper.compact .search-container-figma{max-width:100%}.search-bus-wrapper.compact .search-card-figma{border-radius:8px;padding:14px 20px;border-width:0;box-shadow:0 4px 20px #0000001a;animation:none;background:#1a3c4d}.search-bus-wrapper.compact .search-field-figma{min-height:58px;padding:10px 12px;border-color:#ffffff24;background:#ffffff0f;box-shadow:none}.search-bus-wrapper.compact .search-field-figma:hover,.search-bus-wrapper.compact .search-field-figma:focus-within{border-color:#ceb45f73;background:#ffffff1a;box-shadow:none}.search-bus-wrapper.compact .field-label-figma{font-size:11px;color:#ffffffb3}.search-bus-wrapper.compact .field-input-figma{font-size:14px;color:#fff}.search-bus-wrapper.compact .field-input-figma::placeholder{color:#ffffff80}.search-bus-wrapper.compact .field-value-figma{font-size:14px;color:#fff}.search-bus-wrapper.compact .field-icon-img{width:36px;height:36px;filter:none}.search-bus-wrapper.compact .field-icon-img.cal-icon{width:30px;height:30px}.search-bus-wrapper.compact .swap-btn-figma{width:32px;height:32px;border-color:#ffffff29;background:#ffffff26;color:#fff;box-shadow:none}.search-bus-wrapper.compact .swap-btn-figma:hover{background:#ffffff40}.search-bus-wrapper.compact .swap-icon{width:16px;height:16px}.search-bus-wrapper.compact .quick-dates-figma{gap:4px;min-height:38px;padding:3px;border-color:#ffffff29;background:#ffffff14;box-shadow:none}.search-bus-wrapper.compact .quick-date-btn-figma{min-height:30px;padding:0 12px;font-size:11px;background:transparent;color:#fffc}.search-bus-wrapper.compact .quick-date-btn-figma:hover{background:#fff3;color:#fff}.search-bus-wrapper.compact .quick-date-btn-figma.active{background:var(--booking-gold);border-color:var(--booking-gold);color:#fff}.search-bus-wrapper.compact .search-btn-figma{min-height:52px;min-width:0;padding:0 22px;font-size:13px}.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{padding:12px 16px}.search-bus-wrapper.compact .field-icon-img{width:28px;height:28px}}@media(max-width:768px){.search-bus-wrapper.compact .search-card-figma{flex-wrap:wrap;gap:12px}.search-bus-wrapper.compact .search-field-figma{flex:1 1 calc(50% - 30px);min-width:140px}.search-bus-wrapper.compact .date-section-wrapper,.search-bus-wrapper.compact .search-btn-figma{flex:1 1 100%}}.features{padding:4rem 1rem;background:linear-gradient(180deg,#f8fafc,#fff)}.features-container{max-width:1200px;margin:0 auto;padding:0 2rem}.features-header{text-align:center;margin-bottom:3rem}.features-label{font-family:Montserrat,sans-serif;font-size:14px;font-weight:600;color:#9c7635;text-transform:uppercase;letter-spacing:2px;display:block;margin-bottom:8px}.features-title{font-family:Montserrat,sans-serif;font-size:36px;font-weight:700;color:#012432;margin:0}.stats-section{text-align:center}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.stat-card{text-align:center;padding:2rem 1.5rem;background:#fff;border-radius:16px;box-shadow:0 4px 20px #0024320f;transition:all .3s ease;border:1px solid rgba(0,36,50,.05)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0024321a}.stat-icon{width:64px;height:64px;margin:0 auto 1rem;background:linear-gradient(135deg,#9c7635,#ceb45f);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.stat-number{font-family:Montserrat,sans-serif;font-size:42px;font-weight:700;color:#012432;line-height:1;margin-bottom:8px}.stat-label{font-family:Montserrat,sans-serif;font-size:16px;font-weight:600;color:#012432;margin-bottom:8px}.stat-description{font-family:Plus Jakarta Sans,sans-serif;font-size:14px;color:#666;margin:0;line-height:1.5}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.features-title{font-size:32px}}@media(max-width:768px){.features{padding:3rem 1rem}.features-container{padding:0 1rem}.features-header{margin-bottom:2rem}.features-title{font-size:28px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{padding:1.5rem 1rem}.stat-icon{width:56px;height:56px}.stat-icon svg{width:24px;height:24px}.stat-number{font-size:36px}.stat-label{font-size:14px}.stat-description{font-size:12px}}@media(max-width:480px){.features{padding:2rem 1rem}.features-label{font-size:12px}.features-title{font-size:24px}.stats-grid{grid-template-columns:1fr 1fr;gap:.75rem}.stat-card{padding:1.25rem .75rem;border-radius:12px}.stat-icon{width:48px;height:48px;margin-bottom:.75rem}.stat-icon svg{width:20px;height:20px}.stat-number{font-size:28px}.stat-label{font-size:12px;margin-bottom:4px}.stat-description{font-size:11px}}.our-service{padding:76px 24px;background:linear-gradient(180deg,#052f40,#002435);border-top:1px solid rgba(206,180,95,.18);border-bottom:1px solid rgba(206,180,95,.18);color:#fff}.service-container{width:100%;max-width:1200px;margin:0 auto}.service-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:32px;align-items:end;margin-bottom:28px}.service-badge-text{display:block;margin-bottom:10px;color:#d7bd6d;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.service-title{margin:0;color:#fff;font-family:Montserrat,sans-serif;font-size:32px;font-weight:800;line-height:1.18;letter-spacing:0}.service-summary{margin:0;color:#ebf6fac7;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:600;line-height:1.7}.svc-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px;border:1px solid rgba(206,180,95,.3);border-radius:8px;background:#07364a;box-shadow:0 22px 55px #00111838;overflow:hidden}.svc-metrics div{padding:18px 22px;border-right:1px solid rgba(206,180,95,.18)}.svc-metrics div:last-child{border-right:0}.svc-metrics strong,.svc-metrics span{display:block;font-family:Plus Jakarta Sans,sans-serif}.svc-metrics strong{color:#fff;font-size:24px;font-weight:900;line-height:1}.svc-metrics span{margin-top:6px;color:#ebf6faad;font-size:13px;font-weight:700}.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.svc-card{min-height:174px;padding:22px;border:1px solid rgba(206,180,95,.22);border-radius:8px;background:#073044;box-shadow:0 14px 32px #00111829;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}.svc-card:hover{border-color:#d7bd6d80;background:#0a394d;box-shadow:inset 0 3px #d7bd6d,0 18px 38px #0011183d;transform:translateY(-2px)}.svc-card-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:18px;border-radius:8px;background:#d7bd6d;color:#002c3f}.svc-card-title{margin:0 0 8px;color:#fff;font-family:Montserrat,sans-serif;font-size:16px;font-weight:800;line-height:1.3}.svc-card-desc{margin:0;color:#ebf6fab3;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:600;line-height:1.55}@media(max-width:900px){.our-service{padding:56px 18px}.service-header{grid-template-columns:1fr;gap:14px}.service-title{font-size:28px}.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.our-service{padding:44px 14px}.service-title{font-size:24px}.svc-metrics,.svc-grid{grid-template-columns:1fr}.svc-metrics div{border-right:0;border-bottom:1px solid rgba(206,180,95,.18)}.svc-metrics div:last-child{border-bottom:0}.svc-card{min-height:auto}}.booking-steps{padding:76px 24px;background:linear-gradient(180deg,#eef6f7,#efe4c8);border-top:1px solid #cdb878;border-bottom:1px solid #d9c995;color:#002c3f}.booking-steps-container{max-width:1200px;margin:0 auto}.booking-steps-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,480px);gap:32px;align-items:end;margin-bottom:28px}.booking-steps-label{display:inline-block;margin-bottom:10px;color:#9c7635;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.booking-steps-title{margin:0;color:#002c3f;font-family:Montserrat,sans-serif;font-size:32px;font-weight:800;line-height:1.18;letter-spacing:0}.booking-steps-title .highlight{color:#9c7635}.booking-steps-subtitle{margin:0;color:#4e6571;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:600;line-height:1.7}.steps-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid rgba(156,118,53,.42);border-radius:8px;background:#07364a;box-shadow:0 24px 60px #002c3f2e;overflow:hidden}.step-card{position:relative;min-height:214px;padding:24px 18px;border-right:1px solid rgba(206,180,95,.2);background:#073044;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.step-card:last-child{border-right:0}.step-card:hover{background:#0a394d;box-shadow:inset 0 3px #d7bd6d;transform:translateY(-1px)}.step-number{display:block;margin-bottom:20px;color:#d7bd6d;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:900;line-height:1}.step-icon-wrapper{display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:18px;border-radius:8px;background:#d7bd6d;color:#002c3f}.step-icon-wrapper.gold,.step-icon-wrapper.teal{background:#d7bd6d;box-shadow:0 10px 22px #d7bd6d2e}.step-icon{color:#002c3f}.step-content{position:relative;z-index:1}.step-label{display:block;margin-bottom:6px;color:#d7bd6dd1;font-family:Plus Jakarta Sans,sans-serif;font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.step-title{margin:0 0 8px;color:#fff;font-family:Montserrat,sans-serif;font-size:16px;font-weight:800;line-height:1.3}.step-description{margin:0;color:#ebf6fab3;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:600;line-height:1.55}@media(max-width:1100px){.steps-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.step-card:nth-child(3n){border-right:0}.step-card:nth-child(-n+3){border-bottom:1px solid rgba(206,180,95,.2)}}@media(max-width:768px){.booking-steps{padding:56px 18px}.booking-steps-header{grid-template-columns:1fr;gap:14px}.booking-steps-title{font-size:28px}.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.step-card,.step-card:nth-child(3n){border-right:1px solid rgba(206,180,95,.2)}.step-card:nth-child(2n){border-right:0}.step-card:nth-child(-n+4){border-bottom:1px solid rgba(206,180,95,.2)}}@media(max-width:520px){.booking-steps{padding:44px 14px}.booking-steps-title{font-size:24px}.steps-grid{grid-template-columns:1fr}.step-card,.step-card:nth-child(2n),.step-card:nth-child(3n){min-height:auto;border-right:0;border-bottom:1px solid rgba(206,180,95,.2)}.step-card:last-child{border-bottom:0}}.bus-results{width:100%;background:#fff}.discount-offers-section{padding:60px 80px;background:#fff;overflow:hidden}.section-title{font-family:Montserrat,sans-serif;font-size:36px;font-weight:700;color:#002c3f;margin-bottom:40px;text-align:left;animation:slideInLeft .6s ease-out}.discount-offers-wrapper{overflow:hidden;width:100%}.discount-offers-track{display:flex;gap:24px;animation:scroll-infinite 20s linear infinite;width:fit-content}.discount-offers-track:hover{animation-play-state:paused}@keyframes scroll-infinite{0%{transform:translate(0)}to{transform:translate(calc(-50% - 12px))}}.discount-offer-card{flex:0 0 480px;border-radius:16px;overflow:hidden;background:#f5f5f5;transition:transform .3s ease,box-shadow .3s ease}.discount-offer-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000001a}.discount-offer-placeholder{width:100%;height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8e8e8,#d0d0d0);color:#666;font-family:Plus Jakarta Sans,sans-serif;font-size:18px;font-weight:600}.discount-offer-placeholder .placeholder-hint{font-size:14px;font-weight:400;color:#999;margin-top:8px}.discount-offer-image{width:100%;height:220px;object-fit:cover}.section-image{width:100%;max-width:500px;height:450px;border-radius:20px;object-fit:contain;display:block;margin:0 auto}.why-choose-section{padding:80px;background:#fff url(/assets/sec1-BanmjiQ0.svg) no-repeat right center;background-size:contain;position:relative}.why-choose-section:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:150px;height:300px;background:linear-gradient(135deg,#ceb45f33,#a372261a);border-radius:0 150px 150px 0}.why-choose-content{display:flex;align-items:flex-start;gap:60px;max-width:1400px;margin:0 auto;position:relative;z-index:1}.why-choose-text{flex:1}.section-title-underline{font-family:Montserrat,sans-serif;font-size:28px;font-weight:700;color:#002c3f;margin-bottom:24px;position:relative;display:inline-block}.section-title-underline:after{content:"";position:absolute;bottom:-8px;left:0;width:100%;height:4px;background:linear-gradient(90deg,#a37226,#ceb45f)}.why-choose-intro{font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:400;color:#333;line-height:1.6;margin-bottom:24px}.key-benefits-title{font-family:Montserrat,sans-serif;font-size:18px;font-weight:700;color:#002c3f;margin-bottom:16px}.benefits-list{font-family:Plus Jakarta Sans,sans-serif;font-size:15px;color:#333;line-height:2;padding-left:24px;margin-bottom:24px}.benefits-list li{margin-bottom:8px}.why-choose-conclusion{font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:400;color:#333;line-height:1.6}.why-choose-image{flex:0 0 500px;position:sticky;top:120px;align-self:flex-start;display:flex;align-items:center;justify-content:center;height:fit-content}.image-placeholder{width:100%;height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8f4f8,#d0e8ef);border-radius:20px;color:#666;font-family:Plus Jakarta Sans,sans-serif;font-size:16px;text-align:center;padding:20px}.image-placeholder .placeholder-hint{font-size:14px;color:#999;margin-top:8px}.online-booking-section{padding:80px;background:#f2f2f8 url(/assets/sec2-BXsV_0kp.svg) no-repeat left center;background-size:contain}.online-booking-content{display:flex;align-items:flex-start;gap:60px;max-width:1400px;margin:0 auto}.online-booking-text{flex:1}.online-booking-text p{font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:400;color:#333;line-height:1.6;margin-bottom:24px}.subsection-title{font-family:Montserrat,sans-serif;font-size:20px;font-weight:700;color:#002c3f;margin-top:32px;margin-bottom:16px}.online-booking-image{flex:0 0 500px;position:sticky;top:120px;align-self:flex-start;display:flex;align-items:center;justify-content:center;height:fit-content}.image-placeholder.purple-bg{background:linear-gradient(135deg,#f0e8ff,#e8d8ff)}.how-to-book-section{padding:80px;background:linear-gradient(180deg,#fff0f5,#e8f4ff,#fff0f5);background-image:url(/assets/sec3-CIAjcK1x.svg);background-repeat:no-repeat;background-position:right center;background-size:contain;position:relative}.how-to-book-section:before{content:"";position:absolute;left:0;top:20%;width:100px;height:200px;background:linear-gradient(135deg,rgba(206,180,95,.3),transparent);border-radius:0 100px 100px 0}.how-to-book-section:after{content:"";position:absolute;right:0;bottom:20%;width:100px;height:200px;background:linear-gradient(135deg,transparent,rgba(206,180,95,.3));border-radius:100px 0 0 100px}.how-to-book-content{display:flex;align-items:flex-start;gap:60px;max-width:1400px;margin:0 auto;position:relative;z-index:1}.how-to-book-text{flex:1}.how-to-book-intro{font-family:Montserrat,sans-serif;font-size:18px;font-weight:600;color:#002c3f;margin-bottom:24px}.steps-list{font-family:Plus Jakarta Sans,sans-serif;font-size:15px;color:#333;line-height:2;padding-left:28px;margin-bottom:40px}.steps-list li{margin-bottom:8px}.steps-list li::marker{font-weight:700;color:#002c3f}.how-to-book-text p{font-family:Plus Jakarta Sans,sans-serif;font-size:15px;color:#333;line-height:1.6;margin-bottom:20px}.feature-list{font-family:Plus Jakarta Sans,sans-serif;font-size:15px;color:#333;line-height:2;padding-left:24px;margin-bottom:32px;list-style-type:disc}.feature-list li{margin-bottom:4px}.tracking-intro{font-weight:600}.how-to-book-image{flex:0 0 500px;position:sticky;top:120px;align-self:flex-start;display:flex;align-items:center;justify-content:center;height:fit-content}.faq-section{padding:80px;background:#fff;max-width:1000px;margin:0 auto}.faq-section .section-title{text-align:center;margin-bottom:40px}.faq-tabs{display:flex;justify-content:center;gap:40px;margin-bottom:40px;border-bottom:1px solid #e0e0e0;padding-bottom:16px}.faq-tab{font-family:Plus Jakarta Sans,sans-serif;font-size:18px;font-weight:500;color:#666;background:none;border:none;cursor:pointer;padding:8px 0;position:relative;transition:color .3s ease}.faq-tab:hover{color:#002c3f}.faq-tab.active{color:#a37226;font-weight:600}.faq-tab.active:after{content:"";position:absolute;bottom:-17px;left:0;width:100%;height:3px;background:#a37226}.faq-list{display:flex;flex-direction:column;gap:16px}.faq-item{background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden;transition:box-shadow .3s ease}.faq-item:hover{box-shadow:0 4px 12px #0000000d}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:24px 28px;background:none;border:none;cursor:pointer;text-align:left}.faq-question span:first-child{font-family:Plus Jakarta Sans,sans-serif;font-size:18px;font-weight:500;color:#002c3f;flex:1;padding-right:20px}.faq-icon{font-size:24px;font-weight:300;color:#666;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.faq-answer{padding:0 28px 24px;animation:fadeIn .3s ease}.faq-answer p{font-family:Plus Jakarta Sans,sans-serif;font-size:16px;color:#555;line-height:1.7}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1200px){.discount-offers-track{animation-duration:15s}.section-title-underline{font-size:26px}.why-choose-intro,.online-booking-text p{font-size:15px}}@media(max-width:992px){.discount-offers-section,.why-choose-section,.online-booking-section,.how-to-book-section,.faq-section{padding:60px 40px}.why-choose-content,.online-booking-content,.how-to-book-content{flex-direction:column}.why-choose-image,.online-booking-image,.how-to-book-image{flex:none;width:100%;max-width:400px;margin:0 auto}.faq-tabs{flex-wrap:wrap;gap:20px}}@media(max-width:768px){.section-title{font-size:28px}.section-title-underline{font-size:22px}.discount-offers-track{animation:none;gap:16px}.discount-offer-card{flex:0 0 320px}.why-choose-intro,.online-booking-text p,.benefits-list,.steps-list{font-size:14px}.subsection-title{font-size:18px}.how-to-book-text p,.feature-list{font-size:14px}.faq-tabs{gap:12px}.faq-tab{font-size:14px}.faq-question span:first-child{font-size:16px}}@media(max-width:480px){.discount-offers-section,.why-choose-section,.online-booking-section,.how-to-book-section,.faq-section{padding:40px 20px}.section-title{font-size:24px}.section-title-underline{font-size:18px}.discount-offer-placeholder{height:200px}.image-placeholder{height:250px}.faq-question{padding:16px 20px}.why-choose-intro,.online-booking-text p{font-size:13px}.benefits-list,.steps-list{font-size:13px;padding-left:16px}.how-to-book-intro,.key-benefits-title,.subsection-title{font-size:16px}.faq-tabs{flex-direction:column;gap:8px}.faq-tab{width:100%;text-align:center;padding:12px;border-radius:8px;background:#f5f5f5}.faq-tab.active{background:#fff8ed}.faq-tab.active:after{display:none}.faq-question span:first-child,.faq-answer p{font-size:14px}.why-choose-section,.online-booking-section,.how-to-book-section{background-size:auto 200px;background-position:center top}.why-choose-section:before{display:none}.discount-offer-card{flex:0 0 280px}.discount-offer-image{height:180px}}@media(max-width:360px){.discount-offers-section,.why-choose-section,.online-booking-section,.how-to-book-section,.faq-section{padding:30px 12px}.section-title{font-size:20px}.section-title-underline{font-size:16px}.faq-question{padding:12px 14px}.faq-icon{font-size:20px;width:24px;height:24px}}.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}.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){.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}.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}.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:4rem}.footer-main{padding:3rem 2rem}.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}.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:#012433!important;padding:1.5rem;border-radius:12px;box-shadow:0 4px 16px #0003;border:2px solid #d4a017}.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:50%;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:8px;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}}:root{--gold-dark: #A37226;--gold-light: #ceb45f;--light-color: #EFF3F4}.details-page{min-height:100vh;background:var(--light-color);padding:24px 20px 40px;font-family:Plus Jakarta Sans,sans-serif}.booking-progress{max-width:500px;margin:0 auto 24px;display:flex;align-items:center;justify-content:center;padding:16px 24px;background:#fff;border-radius:50px;box-shadow:0 2px 12px #0000000f}.progress-step{display:flex;align-items:center;gap:8px;color:#999;font-size:13px;font-weight:500;transition:all .3s ease}.progress-step .step-icon{width:32px;height:32px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.progress-step.completed{color:#22c55e}.progress-step.completed .step-icon{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.progress-step.active{color:#002c3f}.progress-step.active .step-icon{background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);color:#fff;box-shadow:0 4px 12px #a3722666}.progress-line{width:60px;height:3px;background:#e5e5e5;margin:0 12px;border-radius:2px;transition:all .3s ease}.progress-line.completed{background:linear-gradient(90deg,#22c55e,#16a34a)}.details-container{max-width:1200px;margin:0 auto;background:#fff;border-radius:20px;box-shadow:0 4px 24px #00000014;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.no-data-state{text-align:center;padding:80px 20px}.no-data-icon{width:80px;height:80px;margin:0 auto 24px;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#999}.no-data-state h3{font-size:20px;color:#333;margin:0 0 8px}.no-data-state p{font-size:14px;color:#666;margin:0 0 24px}.primary-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #a3722673}.details-header{padding:20px 28px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);display:flex;justify-content:space-between;align-items:center;border-radius:20px 20px 0 0}.header-left{display:flex;align-items:center;gap:16px}.back-btn{width:40px;height:40px;border-radius:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.back-btn:hover{background:#fff3;transform:translate(-2px)}.header-info h4{margin:0;font-size:18px;font-weight:600;color:#fff}.header-info p{margin:4px 0 0;font-size:13px;color:#ffffffb3}.header-badge{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:20px;color:#fff;font-size:12px;font-weight:500}.details-body{display:grid;grid-template-columns:1fr 380px;gap:24px;padding:24px;align-items:start}.passenger-section{display:flex;flex-direction:column;gap:20px}.bus-summary-card{background:var(--light-color);border:1px solid rgba(163,114,38,.25);border-radius:16px;overflow:hidden}.bus-summary-header{display:flex;align-items:center;gap:10px;padding:14px 20px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);color:#fff;font-size:14px;font-weight:600}.bus-summary-content{padding:20px}.bus-operator{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.bus-operator strong{font-size:16px;color:#333}.bus-type-badge{padding:6px 12px;background:#fff;border:1px solid rgba(163,114,38,.3);border-radius:20px;font-size:12px;color:var(--gold-dark);font-weight:500}.journey-route{display:flex;align-items:center;gap:16px}.route-point{flex:1;display:flex;align-items:flex-start;gap:12px}.point-marker{width:12px;height:12px;border-radius:50%;margin-top:4px;flex-shrink:0}.point-marker.start{background:var(--gold-dark);box-shadow:0 0 0 4px #a3722633}.point-marker.end{background:var(--gold-light);box-shadow:0 0 0 4px #ceb45f40}.point-info{display:flex;flex-direction:column;gap:2px}.point-time{font-size:15px;font-weight:700;color:#333}.point-name{font-size:13px;color:#666}.route-line{color:#ccc;display:flex;align-items:center}.section-card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:24px;transition:box-shadow .3s ease}.section-card:hover{box-shadow:0 4px 16px #0000000f}.section-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.section-icon{width:44px;height:44px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.section-title-group h3{font-size:18px;color:#333;margin:0 0 4px}.section-subtitle{font-size:13px;color:#888;margin:0}.passenger-form{background:var(--light-color);border:1px solid rgba(163,114,38,.15);border-radius:14px;padding:20px;margin-bottom:16px;transition:all .3s ease}.passenger-form:hover{border-color:#ddd}.passenger-form:last-child{margin-bottom:0}.passenger-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid #e8e8e8}.passenger-info{display:flex;align-items:center;gap:10px}.passenger-number{font-size:15px;font-weight:700;color:#333}.primary-badge{padding:4px 10px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);color:#fff;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.seat-tag{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);color:#fff;padding:8px 14px;border-radius:20px;font-size:13px;font-weight:600}.form-row.three-cols{grid-template-columns:2fr 1fr 1fr}.form-group{margin-bottom:0}.form-group label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#444;margin-bottom:8px}.form-group label svg{color:var(--gold-dark)}.form-group label .required{color:#d84e55}.form-group input,.form-group select{width:100%;padding:14px 16px;border:1px solid #e0e0e0;border-radius:10px;font-size:14px;font-family:inherit;outline:none;transition:all .2s ease;background:#fff;box-sizing:border-box}.form-group input:focus,.form-group select:focus{border-color:var(--gold-dark);box-shadow:0 0 0 3px #a3722626}.form-group input::placeholder{color:#aaa}.field-error{display:block;font-size:12px;color:#d84e55;margin-top:5px;padding-left:2px;animation:fieldErrorIn .25s ease}@keyframes fieldErrorIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.form-group.has-error input,.form-group.has-error select,.input-error,.phone-field.input-error,.has-error .contact-input,.has-error select{border-color:#d84e55!important;box-shadow:0 0 0 3px #d84e551a!important}.form-group.has-error label{color:#d84e55}.phone-input-group.has-error .phone-field{border-color:#d84e55;box-shadow:0 0 0 3px #d84e551a}.has-error.input-with-icon{border-color:#d84e55!important;box-shadow:0 0 0 3px #d84e551a!important}.contact-field-wrapper{display:flex;flex-direction:column}.contact-field-wrapper>.field-error{margin-top:5px;padding-left:2px}.contact-field-wrapper>.input-hint{font-size:11px;color:#999;margin-top:6px;padding-left:2px}.contact-form{display:flex;flex-direction:column;gap:16px}.phone-input-group{display:flex;gap:12px}.country-code{display:flex;flex-direction:column;padding:12px 16px;border:1px solid #e0e0e0;border-radius:10px;background:#fff;min-width:110px}.code-label{font-size:10px;color:#999;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.country-code select{border:none;background:transparent;font-size:14px;font-weight:600;color:#333;cursor:pointer;outline:none;padding:0;font-family:inherit}.phone-field{flex:1;display:flex;align-items:center;gap:12px;border:1px solid #e0e0e0;border-radius:10px;background:#fff;padding:0 16px;transition:all .2s ease}.phone-field:focus-within{border-color:var(--gold-dark);box-shadow:0 0 0 3px #a3722626}.field-icon{color:#999;flex-shrink:0}.phone-field input{width:100%;padding:16px 0;border:none;font-size:14px;outline:none;background:transparent;font-family:inherit}.input-with-icon{display:flex;align-items:center;gap:12px;border:1px solid #e0e0e0;border-radius:10px;background:#fff;padding:0 16px;transition:all .2s ease;position:relative}.input-with-icon:focus-within{border-color:var(--gold-dark);box-shadow:0 0 0 3px #a3722626}.input-with-icon .contact-input{width:100%;padding:16px 0;border:none;font-size:14px;outline:none;background:transparent;font-family:inherit}.input-with-icon.state-wrapper{flex-direction:column;align-items:stretch;padding:0}.input-with-icon.state-wrapper .field-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%)}.input-with-icon.state-wrapper select{padding:16px 16px 16px 44px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;cursor:pointer}.input-hint{font-size:11px;color:#888;padding:0 16px 10px;margin-top:-4px}.whatsapp-toggle{display:flex;align-items:center;gap:14px;padding:16px 18px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0;border-radius:12px}.whatsapp-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.whatsapp-content{flex:1;display:flex;flex-direction:column;gap:2px}.whatsapp-title{font-size:14px;font-weight:600;color:#166534}.whatsapp-text{font-size:12px;color:#16a34a}.toggle-switch{position:relative;width:50px;height:28px;cursor:pointer;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background:#ccc;border-radius:28px;transition:.3s}.toggle-slider:before{content:"";position:absolute;width:22px;height:22px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.toggle-slider{background:#25d366}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.assurance-card{background:var(--light-color);border:1px solid rgba(163,114,38,.25)}.assurance-header{display:flex;align-items:center;gap:14px;margin-bottom:20px}.assurance-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.assurance-title{flex:1}.assurance-title h3{font-size:18px;color:#333;margin:0 0 4px}.assurance-price{font-size:13px;color:#666}.assurance-badge{padding:6px 12px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);color:#fff;border-radius:16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.assurance-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.benefit-card{background:#fff;border-radius:12px;padding:16px;text-align:center;border:1px solid rgba(163,114,38,.2)}.benefit-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px}.benefit-icon.refund,.benefit-icon.medical,.benefit-icon.life{background:linear-gradient(135deg,#a3722626,#ceb45f33);color:var(--gold-dark)}.benefit-info{display:flex;flex-direction:column;gap:2px}.benefit-label{font-size:11px;color:#666}.benefit-value{font-size:18px;font-weight:700;color:#333}.benefit-breakdown{font-size:10px;color:#888}.assurance-options{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.assurance-option{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:#fff;border:2px solid #e5e5e5;border-radius:12px;cursor:pointer;transition:all .2s ease}.assurance-option:hover{border-color:var(--gold-dark)}.assurance-option.selected{border-color:var(--gold-dark);background:var(--light-color)}.option-content{display:flex;align-items:center;gap:10px}.option-content svg{color:#ccc}.option-content svg.checked{color:var(--gold-dark)}.assurance-option input{display:none}.assurance-option span{font-size:14px;color:#333}.radio-circle{width:22px;height:22px;border:2px solid #ddd;border-radius:50%;position:relative;transition:all .2s ease;flex-shrink:0}.assurance-option.selected .radio-circle{border-color:var(--gold-dark)}.assurance-option.selected .radio-circle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:var(--gold-dark);border-radius:50%}.terms-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--gold-dark);text-decoration:none;font-weight:500}.terms-link:hover{text-decoration:underline}.fare-section{display:flex;flex-direction:column;gap:16px;position:sticky;top:20px;height:fit-content}.fare-card{background:#fff;border:1px solid rgba(163,114,38,.25);border-radius:16px;overflow:hidden}.fare-card-header{padding:18px 20px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%)}.fare-card-header h3{display:flex;align-items:center;gap:10px;font-size:16px;color:#fff;margin:0}.selected-seats-display{padding:16px 20px;border-bottom:1px solid #f0f0f0}.seats-header{display:flex;align-items:center;gap:8px;font-size:13px;color:#666;margin-bottom:10px}.seats-list{display:flex;flex-wrap:wrap;gap:8px}.seat-badge{background:linear-gradient(135deg,#a372261a,#ceb45f26);color:var(--gold-dark);padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid rgba(163,114,38,.3)}.fare-breakdown{padding:16px 20px}.fare-row{display:flex;justify-content:space-between;padding:10px 0;font-size:14px;color:#555;border-bottom:1px solid #f5f5f5}.fare-row:last-of-type:not(.total){border-bottom:none}.fare-row.assurance-row{color:var(--gold-dark)}.fare-row.assurance-row span:first-child{display:flex;align-items:center;gap:6px}.fare-row.total{font-weight:700;font-size:18px;color:#333;background:var(--light-color);margin:12px -20px 0;padding:16px 20px;border-top:2px dashed rgba(163,114,38,.35);border-bottom:none}.proceed-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 40px);margin:0 20px 16px;padding:16px;background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-light) 100%);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:inherit}.proceed-btn:hover:not(:disabled){background:linear-gradient(135deg,#8a6020 0%,var(--gold-dark) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #a3722673}.proceed-btn:disabled{opacity:.7;cursor:not-allowed}.btn-loader{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.secure-info{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px 16px;font-size:12px;color:var(--gold-dark)}.offers-card{background:var(--light-color);border:1px solid rgba(163,114,38,.25);border-radius:16px;padding:18px}.offers-header{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--gold-dark)}.offers-header h4{font-size:15px;margin:0}.offer-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px dashed rgba(163,114,38,.3)}.offer-item:last-child{border-bottom:none;padding-bottom:0}.offer-icon{width:36px;height:36px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--gold-dark);border:1px solid rgba(163,114,38,.25)}.offer-content{flex:1;display:flex;flex-direction:column;gap:2px}.offer-code{font-size:14px;font-weight:700;color:var(--gold-dark)}.offer-desc{font-size:12px;color:#666}.apply-btn{padding:8px 16px;background:transparent;border:1px solid var(--gold-dark);border-radius:8px;color:var(--gold-dark);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.apply-btn:hover{background:var(--gold-dark);color:#fff}.trust-badges{display:flex;flex-direction:column;gap:10px;padding:16px 20px;background:var(--light-color);border-top:1px solid rgba(163,114,38,.15)}.trust-item{display:flex;align-items:center;gap:10px;font-size:13px;color:#666}.trust-item svg{color:var(--gold-dark)}@media(max-width:1024px){.details-page{padding:16px}.details-body{grid-template-columns:1fr 340px;gap:20px}.assurance-benefits{grid-template-columns:1fr;gap:10px}.benefit-card{display:flex;align-items:center;text-align:left;gap:14px;padding:14px}.benefit-icon{margin:0}}@media(max-width:900px){.details-page{padding:12px 12px 80px}.booking-progress{padding:12px 16px;margin-bottom:16px}.progress-step span{display:none}.progress-line{width:40px}.details-body{grid-template-columns:1fr;gap:16px;padding:16px}.fare-section{order:0}.fare-section .proceed-btn{position:fixed;bottom:0;left:0;right:0;z-index:99;margin:0;border-radius:0;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));font-size:16px;box-shadow:0 -2px 12px #00000014;width:100%}}@media(max-width:768px){.details-container{border-radius:16px}.details-header{padding:16px 18px;flex-direction:column;gap:12px;align-items:flex-start}.header-badge{align-self:flex-end;margin-top:-36px}.section-card{padding:18px;border-radius:14px}.form-row,.form-row.three-cols{grid-template-columns:1fr;gap:14px}.phone-input-group{flex-direction:column}.journey-route{flex-direction:column;gap:12px}.route-line{transform:rotate(90deg)}}@media(max-width:480px){.details-page{padding:8px}.booking-progress{border-radius:30px;padding:10px 14px}.progress-step .step-icon{width:28px;height:28px}.progress-step .step-icon svg{width:14px;height:14px}.progress-line{width:30px;margin:0 8px}.details-body{padding:12px;gap:12px}.section-card{padding:16px}.section-header{margin-bottom:18px;padding-bottom:14px}.section-icon{width:38px;height:38px}.section-title-group h3{font-size:15px}.passenger-form{padding:16px}.passenger-header{flex-direction:column;gap:10px;align-items:flex-start}.seat-tag{padding:6px 12px;font-size:12px}.form-group input,.form-group select{padding:12px 14px;font-size:14px}.assurance-benefits{gap:8px}.benefit-card{padding:12px}.benefit-value{font-size:16px}.fare-card-header,.fare-breakdown{padding:14px 16px}.fare-row.total{margin:12px -16px 0;padding:14px 16px}.proceed-btn{width:calc(100% - 32px);margin:0 16px 14px;padding:14px;font-size:15px}.offers-card,.trust-badges{padding:14px}.details-container{border-radius:12px}.progress-step{font-size:10px;gap:4px}.progress-step span:not(.step-icon){display:none}.phone-input-group{flex-direction:column}.form-grid{grid-template-columns:1fr}.journey-route{flex-direction:column;gap:12px;align-items:center}.journey-point{text-align:center;width:100%}.route-line{width:2px;height:40px}}.details-page{--details-navy: #002c3f;--details-navy-soft: #0a465d;--details-gold: #be951f;--details-border: #dfe7ea;padding:32px 24px 56px;background:radial-gradient(circle at 10% 0%,rgba(190,149,31,.08),transparent 28%),#f4f7f8}.details-page .booking-progress{max-width:620px;margin-bottom:28px;border:1px solid var(--details-border);box-shadow:0 8px 28px #002c3f0f}.details-page .progress-step.active .step-icon{background:var(--details-gold);box-shadow:0 4px 14px #be951f47}.details-page .details-container{max-width:1280px;overflow:hidden;border:1px solid var(--details-border);border-radius:18px;box-shadow:0 22px 60px #002c3f17}.details-page .details-header{padding:24px 30px;border-radius:0;background:linear-gradient(135deg,var(--details-navy),var(--details-navy-soft))}.details-page .details-eyebrow{display:block;margin-bottom:4px;color:#e7c558;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.details-page .header-info h4{font-size:22px;font-weight:750}.details-page .header-info p{color:#ffffffb8}.details-page .header-badge{border-color:#e7c5586b;background:#be951f29}.details-page .details-body{grid-template-columns:minmax(0,1fr) 360px;gap:28px;padding:28px;background:#f8fafb}.details-page .bus-summary-card,.details-page .section-card,.details-page .fare-card{border:1px solid var(--details-border);background:#fff;box-shadow:0 8px 25px #002c3f0b}.details-page .bus-summary-header{justify-content:space-between;padding:15px 20px;background:var(--details-navy)}.details-page .bus-summary-header>div,.details-page .journey-date-pill{display:flex;align-items:center;gap:8px}.details-page .journey-date-pill{padding:6px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#ffffff1a;color:#ffffffe0;font-size:11px}.details-page .bus-summary-content{padding:22px}.details-page .bus-operator strong{color:#17262d;font-size:17px}.details-page .bus-type-badge{border-color:#be951f57;background:#fffaf0;color:#8b6a10}.details-page .journey-route{padding:16px;border-radius:12px;background:#f6f9fa}.details-page .point-marker.start,.details-page .point-marker.end{background:var(--details-gold);box-shadow:0 0 0 4px #be951f29}.details-page .point-time{color:#17262d;font-size:16px}.details-page .section-card{padding:26px}.details-page .section-icon,.details-page .assurance-icon{background:var(--details-navy);box-shadow:none}.details-page .section-title-group h3,.details-page .assurance-title h3{color:#17262d}.details-page .passenger-form{border-color:#e3e9ec;background:#f7f9fa}.details-page .primary-badge,.details-page .seat-tag,.details-page .assurance-badge{background:var(--details-gold)}.details-page .form-group input,.details-page .form-group select,.details-page .country-code,.details-page .phone-field,.details-page .input-with-icon{min-height:50px;border-color:#d9e1e4;border-radius:10px}.details-page .form-group input:focus,.details-page .form-group select:focus,.details-page .phone-field:focus-within,.details-page .input-with-icon:focus-within{border-color:var(--details-gold);box-shadow:0 0 0 3px #be951f1f}.details-page .assurance-card{background:#fffdf7}.details-page .benefit-card{border-color:#e6e0cd;background:#fff}.details-page .assurance-option.selected{border-color:var(--details-gold);background:#fffaf0}.details-page .fare-section{top:92px}.details-page .fare-card-header{background:var(--details-navy)}.details-page .fare-row.total{background:#f4f7f8;border-top-color:#be951f80}.details-page .proceed-btn{min-height:52px;background:var(--details-gold);box-shadow:0 8px 20px #be951f3d}.details-page .proceed-btn:hover:not(:disabled){background:#a98218}.details-page .secure-info{color:#62737a}.details-page .booking-trust-list{display:grid;gap:8px;padding:14px 20px 18px;border-top:1px solid #edf1f2;color:#5f7077;font-size:11px}.details-page .booking-trust-list span{display:flex;align-items:center;gap:7px}.details-page .booking-trust-list svg{color:#16845b}@media(max-width:900px){.details-page{padding:16px 12px 90px}.details-page .details-body{grid-template-columns:1fr;padding:18px}.details-page .fare-section{position:static}}@media(max-width:600px){.details-page .details-header{padding:18px}.details-page .header-info h4{font-size:18px}.details-page .journey-date-pill{display:none}.details-page .details-body,.details-page .section-card{padding:16px}}: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.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{min-height:70vh;padding:40px 20px;background:#f5f5f5}.page-layout{display:flex;gap:40px;max-width:1200px;margin:0 auto}.sidebar{width:200px;flex-shrink:0;background:#fff;border-radius:8px;padding:20px;height:fit-content}.mobile-sidebar-toggle{display:none;width:100%;padding:14px 20px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-weight:600;color:#333;cursor:pointer;margin-bottom:16px;align-items:center;justify-content:space-between}@media(max-width:900px){.page-layout{flex-direction:column;gap:20px}.my-bookings-page{padding-bottom:72px}.mobile-sidebar-toggle{display:flex}.sidebar{width:100%;display:none}.sidebar.mobile-open{display:block;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.sidebar-profile{flex-direction:row;padding:16px 0}.profile-email{text-align:left;border-bottom:none;padding-bottom:0}.sidebar-nav{flex-direction:row;flex-wrap:wrap;gap:8px}.sidebar-item{padding:10px 16px;border:1px solid #e0e0e0;border-radius:6px;border-bottom:1px solid #e0e0e0;flex:1;min-width:fit-content;text-align:center}.sidebar-item:first-child,.sidebar-item:last-child{border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.sidebar-item.active{background:#fff8ed;border-color:#a37226}}.sidebar-profile{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:30px;padding-top:20px;padding-bottom:20px}.profile-avatar{width:60px;height:60px;min-width:60px;min-height:60px;border-radius:50%;background-color:#a37226!important;display:flex;align-items:center;justify-content:center;color:#fff!important;font-weight:700;font-size:24px;overflow:hidden;flex-shrink:0;line-height:1}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-email{font-size:14px;color:#000;font-weight:500;font-family:Montserrat,sans-serif;text-align:center;padding-bottom:20px;border-bottom:1px solid #e0e0e0;width:100%;margin-top:10px}.sidebar-nav{display:flex;flex-direction:column;gap:0;padding:0}.sidebar-item{display:block;width:100%;padding:16px 0;background:none;border:none;border-bottom:1px solid #e0e0e0;text-align:left;font-size:14px;color:#000;cursor:pointer;transition:color .2s;font-family:Montserrat,sans-serif;font-weight:500}.sidebar-item:first-child{border-top:none}.sidebar-item:last-child{border-bottom:none}.sidebar-item:hover{color:#a37226}.sidebar-item.active{color:#a37226;font-weight:700}.bookings-container{flex:1;max-width:900px}.trips-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.trips-header h1{font-size:24px;color:#002c3f;margin:0;font-weight:500}.search-box{position:relative;width:280px}.search-box input{width:100%;padding:10px 40px 10px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;background:#fff;outline:none}.search-box input:focus{border-color:#9c7635}.search-box .search-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#888}.filters-row{display:flex;gap:16px;margin-bottom:20px}.filter-dropdown{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;color:#333}.filter-dropdown svg{width:16px;height:16px;color:#666}.booking-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid #e0e0e0;padding-bottom:0}.tab-btn{padding:12px 20px;background:transparent;border:none;font-size:14px;color:#666;cursor:pointer;position:relative;transition:color .2s}.tab-btn:hover{color:#9c7635}.tab-btn.active{color:#9c7635;font-weight:600}.tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#9c7635}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.spinner{width:40px;height:40px;border:3px solid #f0f0f0;border-top-color:#9c7635;border-radius:50%;animation:spin .8s linear infinite}.loading-container p{margin-top:16px;color:#666}.error-container{text-align:center;padding:60px 20px}.error-container p{color:#c53030;font-size:16px;margin-bottom:16px}.error-container button{padding:10px 24px;background:#9c7635;color:#fff;border:none;border-radius:6px;cursor:pointer}.no-bookings{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f}.no-bookings-icon{font-size:64px;margin-bottom:16px}.no-bookings h2{font-size:24px;color:#002c3f;margin-bottom:8px}.no-bookings p{color:#666;margin-bottom:24px}.no-bookings button{padding:12px 32px;background:#9c7635;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.no-bookings button:hover{background:#7a5c2a}.bookings-list{display:flex;flex-direction:column;gap:16px}.trip-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden;cursor:pointer;transition:box-shadow .2s}.trip-card:hover,.trip-card.expanded{box-shadow:0 4px 16px #0000001a}.trip-card-main{display:grid;grid-template-columns:120px 1fr 200px 100px;align-items:center;padding:20px;gap:20px}.trip-date-section{display:flex;flex-direction:column;align-items:flex-start}.trip-date{font-size:18px;font-weight:600;color:#9c7635}.trip-day{font-size:12px;color:#9c7635;margin-bottom:12px}.bus-icon-wrapper{width:50px;height:50px;background:#9c7635;border-radius:8px;display:flex;align-items:center;justify-content:center}.bus-icon{width:28px;height:28px;color:#fff}.trip-route-section{display:flex;flex-direction:column;gap:4px}.route-name{font-size:18px;font-weight:600;color:#002c3f}.operator-name{font-size:13px;color:#666}.trip-boarding-section{display:flex;flex-direction:column;gap:4px}.trip-id{font-size:12px;color:#888}.boarding-label{font-size:14px;font-weight:500;color:#002c3f}.boarding-point{font-size:12px;color:#666}.trip-status-section{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.status-label{font-size:14px;font-weight:500;color:#002c3f}.status-value{font-size:13px;font-weight:500}.trip-card-details{border-top:1px solid #f0f0f0;padding:0 20px 20px}.details-section{padding:20px 0;border-bottom:1px solid #f0f0f0}.details-section:last-of-type{border-bottom:none}.section-label{font-size:12px;color:#888;text-transform:capitalize}.travels-section .section-label{text-align:center;margin-bottom:16px}.travels-info{display:flex;justify-content:space-between;align-items:flex-start}.travels-left{display:flex;flex-direction:column;gap:4px}.travels-name{font-size:16px;font-weight:600;color:#002c3f}.travels-type{font-size:13px;color:#666}.travels-right{text-align:right}.departure-time{font-size:16px;font-weight:600;color:#002c3f}.departure-label{font-size:12px;color:#888}.passengers-detail-section .passengers-header{display:grid;grid-template-columns:1fr 100px 80px;gap:20px;margin-bottom:12px}.passengers-detail-section .addons-label{text-align:right}.passenger-row{display:grid;grid-template-columns:1fr 100px 80px;gap:20px;padding:8px 0}.passenger-name{font-size:14px;color:#002c3f}.passenger-seat{font-size:14px;font-weight:600;color:#002c3f;text-align:center}.passenger-addons{font-size:14px;color:#888;text-align:right}.payment-detail-section{border-bottom:none}.payment-title{font-size:12px;color:#888;text-align:center;margin-bottom:16px;letter-spacing:.5px}.payment-info{display:flex;justify-content:space-between;align-items:flex-start}.payment-left,.payment-right{display:flex;flex-direction:column;gap:4px}.payment-right{text-align:right}.payment-label{font-size:12px;color:#888}.payment-mode{font-size:14px;font-weight:600;color:#002c3f}.payment-amount{font-size:16px;font-weight:600;color:#002c3f}.action-buttons{display:flex;justify-content:center;padding-top:20px}.download-ticket-btn{padding:12px 32px;background:#002c3f;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.download-ticket-btn:hover{background:#003d57}.cancel-ticket-btn{padding:12px 32px;background:transparent;color:#c53030;border:2px solid #c53030;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-ticket-btn:hover{background:#c53030;color:#fff}.action-buttons{display:flex;justify-content:center;gap:16px;padding-top:20px}.cancel-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.cancel-modal{background:#fff;border-radius:16px;width:100%;max-width:480px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.cancel-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0;flex-shrink:0}.cancel-modal-header h3{margin:0;font-size:20px;color:#002c3f;font-weight:600}.close-modal-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.close-modal-btn svg{width:24px;height:24px;color:#666;transition:color .2s}.close-modal-btn:hover svg{color:#c53030}.cancel-modal-body{padding:24px;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.cancel-warning{font-size:16px;color:#333;margin-bottom:20px;text-align:center}.cancel-trip-details{background:#f8f8f8;border-radius:12px;padding:16px;margin-bottom:20px}.cancel-trip-details p{margin:8px 0;font-size:14px;color:#333}.cancel-trip-details p strong{color:#002c3f;margin-right:8px}.cancellation-policy{background:#fff9e6;border:1px solid #f0d58c;border-radius:12px;padding:16px;margin-bottom:20px}.cancellation-policy h4{margin:0 0 12px;font-size:14px;color:#8a6d3b;font-weight:600}.cancellation-policy ul{margin:0;padding-left:20px}.cancellation-policy li{font-size:13px;color:#8a6d3b;margin-bottom:6px}.cancel-error-message{background:#fee;border:1px solid #fcc;border-radius:8px;padding:12px 16px;margin-bottom:20px}.cancel-error-message p{margin:0;font-size:14px;color:#c53030}.cancel-success-message{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px}.cancel-success-message svg{width:60px;height:60px;color:#38a169;margin-bottom:16px}.cancel-success-message p{font-size:16px;color:#38a169;margin:0}.loading-cancellation{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}.loading-cancellation .btn-spinner{width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#1a365d;border-radius:50%;animation:spin 1s linear infinite}.loading-cancellation p{margin-top:12px;color:#666;font-size:14px}.cancellation-details-card{background:#fff5f5;border:1px solid #fed7d7;border-radius:10px;padding:16px;margin-top:16px}.cancellation-details-card h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#c53030}.cancellation-breakdown{display:flex;flex-direction:column;gap:4px}.cancellation-breakdown .breakdown-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;color:#4a5568;border-bottom:1px solid #fed7d7}.cancellation-breakdown .breakdown-row:last-child{border-bottom:none}.cancellation-breakdown .breakdown-row .negative{color:#c53030}.cancellation-breakdown .breakdown-row.total-row{font-weight:600;padding-top:12px;margin-top:4px;border-top:1px solid #c53030;border-bottom:none}.cancellation-breakdown .breakdown-row .refund-amount{color:#38a169;font-size:16px;font-weight:700}.partial-note{margin:12px 0 0;font-size:12px;color:#718096;font-style:italic}.cancel-modal-actions{display:flex;gap:12px;padding:16px 24px;border-top:1px solid #e0e0e0;flex-shrink:0;background:#fff;border-radius:0 0 16px 16px}.keep-ticket-btn{flex:1;padding:14px 24px;background:#f0f0f0;color:#333;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.keep-ticket-btn:hover{background:#e0e0e0}.keep-ticket-btn:disabled{opacity:.6;cursor:not-allowed}.confirm-cancel-btn{flex:1;padding:14px 24px;background:#c53030;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:8px}.confirm-cancel-btn:hover{background:#9c2626}.confirm-cancel-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:992px){.page-layout{flex-direction:column;gap:24px}.sidebar{width:100%;border-bottom:1px solid #e0e0e0;padding-bottom:16px}.sidebar-nav{flex-direction:row;gap:24px}.sidebar{width:100%;padding:16px;margin-bottom:0}.sidebar-profile{margin-bottom:20px}.profile-avatar{width:50px;height:50px;font-size:18px}.profile-email{font-size:16px}.sidebar-nav{flex-direction:row;gap:24px;padding:0}.sidebar-item{padding:8px 0;font-size:14px;border-bottom:none}}@media(max-width:768px){.my-bookings-page{padding:20px 16px}.trips-header{flex-direction:column;align-items:flex-start;gap:16px}.search-box{width:100%}.filters-row{flex-wrap:wrap}.booking-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-btn{padding:12px 16px;white-space:nowrap}.trip-card-main{grid-template-columns:1fr;gap:16px}.trip-date-section{flex-direction:row;align-items:center;gap:16px}.trip-day{margin-bottom:0}.trip-status-section{align-items:flex-start;flex-direction:row;gap:12px}.passengers-detail-section .passengers-header,.passenger-row{grid-template-columns:1fr 80px 60px;gap:12px}.payment-info{flex-direction:column;gap:16px}.payment-right{text-align:left}.sidebar-nav{flex-wrap:wrap;gap:16px}.cancel-modal{max-width:100%;margin:10px;border-radius:12px;max-height:80vh}.cancel-modal-header{padding:16px 20px}.cancel-modal-header h3{font-size:18px}.cancel-modal-body{padding:20px}.cancel-modal-actions{flex-direction:column;padding:14px 20px}.action-buttons{flex-direction:column;gap:12px}.download-ticket-btn,.cancel-ticket-btn{width:100%}}@media(max-width:480px){.my-bookings-page{padding:12px 10px}.trips-header h1{font-size:20px}.search-box{width:100%}.search-box input{font-size:14px;padding:8px 36px 8px 12px}.filters-row{flex-direction:column;gap:10px}.filter-dropdown{width:100%;justify-content:space-between;padding:10px 14px;font-size:13px}.tab-btn{padding:10px 12px;font-size:13px}.trip-card-main{padding:14px;gap:12px}.trip-date{font-size:16px}.trip-day{font-size:11px}.route-name{font-size:15px}.operator-name{font-size:12px}.bus-icon-wrapper{width:40px;height:40px}.bus-icon{width:22px;height:22px}.sidebar{padding:14px}.profile-avatar{width:50px;height:50px;min-width:50px;min-height:50px;font-size:20px}.profile-email{font-size:14px}.sidebar-item{font-size:13px;padding:12px 0}.trip-card-details{padding:0 14px 14px}.details-section{padding:14px 0}.passengers-detail-section .passengers-header,.passenger-row{grid-template-columns:1fr;gap:8px}.passenger-seat,.passenger-addons{text-align:left}.download-ticket-btn,.cancel-ticket-btn{padding:10px 20px;font-size:13px}.no-bookings{padding:40px 16px}.no-bookings-icon{font-size:48px}.no-bookings h2{font-size:18px}.no-bookings p{font-size:13px}.no-bookings button{padding:10px 24px;font-size:13px}}.booking-details-page{min-height:calc(100vh - 200px);background:#f5f7fa;padding:20px}.booking-details-container{max-width:800px;margin:0 auto}.details-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.details-header .back-button{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 16px;cursor:pointer;font-size:14px;color:#4a5568;transition:all .2s}.details-header .back-button:hover{background:#f7fafc;border-color:#cbd5e0}.details-header .back-button svg{width:18px;height:18px}.details-header h1{font-size:24px;font-weight:600;color:#1a202c;margin:0}.status-banner{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;border-radius:10px;margin-bottom:20px;color:#fff;font-weight:500}.status-banner .status-icon{font-size:18px}.status-banner .status-text{font-size:16px;text-transform:uppercase;letter-spacing:.5px}.ticket-detail-card{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden}.ticket-numbers{display:flex;flex-wrap:wrap;gap:16px;padding:20px;background:linear-gradient(135deg,#1a365d,#2b4a7c)}.ticket-number-item{flex:1;min-width:150px;text-align:center}.ticket-number-item .label{display:block;font-size:11px;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.ticket-number-item .value{display:block;font-size:16px;font-weight:600;color:#fff;font-family:monospace}.journey-section{display:flex;align-items:center;padding:24px 20px;border-bottom:1px dashed #e2e8f0}.journey-point{flex:1}.journey-point .point-time{font-size:20px;font-weight:700;color:#1a202c}.journey-point .point-city{font-size:16px;font-weight:600;color:#2d3748;margin:4px 0}.journey-point .point-location{font-size:13px;color:#718096}.journey-line{flex:0 0 100px;display:flex;flex-direction:column;align-items:center;gap:8px}.journey-line .journey-duration{color:#1a365d}.journey-line .line{width:80px;height:2px;background:linear-gradient(90deg,#1a365d,#3182ce);position:relative}.journey-line .line:before,.journey-line .line:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:#1a365d}.journey-line .line:before{left:-4px}.journey-line .line:after{right:-4px}.journey-date{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;background:#f7fafc;color:#4a5568;font-size:14px;font-weight:500}.journey-date svg{width:18px;height:18px}.bus-details-section,.traveler-details-section,.booking-info-section,.cancellation-policy-section{padding:20px;border-top:1px solid #e2e8f0}.bus-details-section h3,.traveler-details-section h3,.booking-info-section h3,.cancellation-policy-section h3{font-size:14px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;margin:0 0 16px}.bus-info-grid,.booking-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item .label{font-size:12px;color:#718096}.info-item .value{font-size:14px;font-weight:500;color:#2d3748}.info-item .value.refund{color:#38a169;font-weight:600}.travelers-list{display:flex;flex-direction:column;gap:12px}.traveler-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#f7fafc;border-radius:10px}.traveler-info{display:flex;flex-direction:column;gap:2px}.traveler-name{font-size:14px;font-weight:600;color:#2d3748}.traveler-meta{font-size:12px;color:#718096}.traveler-seat,.traveler-fare{display:flex;flex-direction:column;align-items:center;gap:2px}.seat-label,.fare-label{font-size:11px;color:#718096}.seat-number{font-size:14px;font-weight:700;color:#1a365d;background:#fff;padding:4px 12px;border-radius:6px;border:1px solid #e2e8f0}.fare-amount{font-size:14px;font-weight:600;color:#2d3748}.policy-list{display:flex;flex-direction:column;gap:10px}.policy-item{display:flex;justify-content:space-between;padding:12px 16px;background:#fff5f5;border-radius:8px;border-left:3px solid #e53e3e}.policy-time{font-size:13px;color:#4a5568}.policy-refund{font-size:13px;font-weight:600;color:#38a169}.policy-text{font-size:13px;color:#4a5568;line-height:1.5}.action-buttons{display:flex;gap:12px;padding:20px;justify-content:center}.action-buttons .download-btn,.action-buttons .cancel-btn{display:flex;align-items:center;gap:8px;padding:14px 24px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.action-buttons .download-btn{background:linear-gradient(135deg,#1a365d,#2b4a7c);color:#fff;border:none}.action-buttons .download-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1a365d4d}.action-buttons .cancel-btn{background:#fff;color:#e53e3e;border:2px solid #e53e3e}.action-buttons .cancel-btn:hover{background:#fff5f5}.action-buttons button svg{width:18px;height:18px}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:40px}.loading-container .spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#1a365d;border-radius:50%;animation:spin 1s linear infinite}.loading-container p{margin-top:16px;color:#718096}.error-container .error-icon{font-size:48px;margin-bottom:16px}.error-container h2{font-size:20px;color:#2d3748;margin:0 0 8px}.error-container p{color:#718096;margin:0 0 20px}.error-actions{display:flex;gap:12px}.error-actions .retry-btn,.error-actions .back-btn{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.error-actions .retry-btn{background:#1a365d;color:#fff;border:none}.error-actions .back-btn{background:#fff;color:#4a5568;border:1px solid #e2e8f0}.cancel-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.cancel-modal{background:#fff;border-radius:16px;width:100%;max-width:450px;overflow:hidden;box-shadow:0 20px 40px #0003}.cancel-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0}.cancel-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#2d3748}.cancel-modal-header .close-btn{background:none;border:none;font-size:20px;color:#a0aec0;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.cancel-modal-header .close-btn:hover{background:#f7fafc;color:#4a5568}.cancel-modal-body{padding:20px}.cancel-info .warning-text{font-size:16px;color:#2d3748;margin:0 0 16px}.ticket-summary{background:#f7fafc;padding:14px 16px;border-radius:10px;margin-bottom:16px}.ticket-summary p{margin:4px 0;font-size:13px;color:#4a5568}.cancellation-breakdown{background:#fff5f5;border:1px solid #fed7d7;border-radius:10px;padding:16px;margin-bottom:16px}.cancellation-breakdown h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#c53030}.breakdown-item{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;color:#4a5568;border-bottom:1px solid #fed7d7}.breakdown-item:last-child{border-bottom:none}.breakdown-item.charges span:last-child{color:#c53030}.breakdown-item.refund{font-weight:600;padding-top:12px;margin-top:4px}.breakdown-item.refund span:last-child{color:#38a169;font-size:16px}.cancel-modal-body .loading-state{display:flex;flex-direction:column;align-items:center;padding:40px}.cancel-modal-body .loading-state .spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#1a365d;border-radius:50%;animation:spin 1s linear infinite}.cancel-modal-body .loading-state p{margin-top:12px;color:#718096}.cancel-modal-body .success-message{display:flex;flex-direction:column;align-items:center;padding:30px;text-align:center}.cancel-modal-body .success-message .success-icon{width:60px;height:60px;background:#38a169;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;margin-bottom:16px}.cancel-modal-body .success-message p{color:#2d3748;font-size:15px;line-height:1.5}.cancel-modal-body .error-message{background:#fff5f5;border:1px solid #fc8181;border-radius:8px;padding:12px 16px;margin-bottom:16px}.cancel-modal-body .error-message p{margin:0;color:#c53030;font-size:13px}.modal-actions{display:flex;gap:12px;margin-top:20px}.modal-actions .keep-btn,.modal-actions .confirm-cancel-btn{flex:1;padding:12px 20px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.modal-actions .keep-btn{background:#fff;color:#4a5568;border:1px solid #e2e8f0}.modal-actions .keep-btn:hover{background:#f7fafc}.modal-actions .confirm-cancel-btn{background:#e53e3e;color:#fff;border:none}.modal-actions .confirm-cancel-btn:hover:not(:disabled){background:#c53030}.modal-actions .confirm-cancel-btn:disabled{background:#feb2b2;cursor:not-allowed}@media(max-width:768px){.booking-details-page{padding:0 0 90px;background:#f4f5f7;min-height:100vh}.booking-details-container{max-width:100%;margin:0}.details-header{display:flex;flex-direction:row;align-items:center;gap:12px;padding:14px 16px;margin-bottom:0;background:#fff;border-bottom:1px solid #eef0f2}.details-header .back-button{padding:6px;border:none;background:none;color:#1a202c;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.details-header .back-button:hover{background:#f0f0f0;border-color:transparent}.details-header .back-button .back-text{display:none}.details-header h1{font-size:18px;font-weight:600}.status-banner{margin:12px 14px;padding:10px 16px;border-radius:12px;font-size:14px;gap:8px}.status-banner .status-icon{font-size:16px}.status-banner .status-text{font-size:13px;letter-spacing:.8px}.ticket-detail-card{margin:0 14px 14px;border-radius:16px;box-shadow:0 1px 4px #0000000f}.ticket-numbers{padding:16px;gap:8px;border-radius:16px 16px 0 0;flex-direction:row;flex-wrap:wrap;justify-content:space-between}.ticket-number-item{flex:1 1 auto;min-width:unset;text-align:left}.ticket-number-item .label{font-size:10px;letter-spacing:.6px}.ticket-number-item .value{font-size:13px;word-break:break-all}.journey-section{flex-direction:column;align-items:stretch;padding:20px 16px;gap:0;position:relative}.journey-point{display:flex;flex-direction:column;text-align:left;padding-left:28px;position:relative}.journey-point:before{content:"";position:absolute;left:4px;top:6px;width:10px;height:10px;border-radius:50%;background:#1a365d;border:2px solid #fff;box-shadow:0 0 0 2px #1a365d;z-index:2}.journey-point .point-time{font-size:18px;font-weight:700}.journey-point .point-city{font-size:15px;font-weight:600;margin:2px 0}.journey-point .point-location{font-size:12px;color:#718096}.journey-line{flex:0 0 auto;transform:none;flex-direction:row;align-items:center;gap:10px;padding:10px 0 10px 28px;position:relative}.journey-line:before{content:"";position:absolute;left:8px;top:-4px;bottom:-4px;width:2px;background:linear-gradient(180deg,#1a365d,#3182ce);z-index:1}.journey-line .line{display:none}.journey-line .journey-duration{display:flex;align-items:center;gap:6px;background:#ebf4ff;padding:4px 12px;border-radius:20px;font-size:12px;color:#1a365d;font-weight:500}.journey-line .journey-duration svg{width:18px;height:18px}.journey-date{padding:12px 16px;font-size:13px;background:#f8fafc;border-top:1px solid #eef0f2;gap:8px;justify-content:flex-start}.journey-date svg{width:16px;height:16px;color:#a37226}.bus-details-section,.traveler-details-section,.booking-info-section,.cancellation-policy-section{padding:16px}.bus-details-section h3,.traveler-details-section h3,.booking-info-section h3,.cancellation-policy-section h3{font-size:12px;margin-bottom:12px;color:#8895a7;letter-spacing:.8px}.bus-info-grid,.booking-info-grid{grid-template-columns:1fr 1fr;gap:12px}.info-item .label{font-size:11px;color:#8895a7}.info-item .value{font-size:13px}.travelers-list{gap:10px}.traveler-item{flex-direction:row;align-items:center;padding:12px 14px;background:#f8fafc;border-radius:12px;gap:0;text-align:left}.traveler-info{flex:1;min-width:0}.traveler-name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.traveler-meta{font-size:12px}.traveler-seat,.traveler-fare{align-items:center;padding-left:12px}.seat-label,.fare-label{font-size:10px}.seat-number{font-size:13px;padding:3px 10px;border-radius:6px}.fare-amount{font-size:13px}.policy-item{padding:10px 12px;border-radius:8px}.policy-time,.policy-refund{font-size:12px}.action-buttons{position:fixed;bottom:0;left:0;right:0;z-index:99;display:flex;flex-direction:row;gap:10px;background:#fff;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));border-top:1px solid #eef0f2;box-shadow:0 -4px 16px #0000000f;margin:0;border-radius:0;justify-content:stretch}.action-buttons .download-btn,.action-buttons .cancel-btn{flex:1;justify-content:center;padding:13px 12px;font-size:13px;border-radius:12px}.action-buttons .download-btn{background:#1a365d}.action-buttons .cancel-btn{border-width:1.5px}.action-buttons button svg{width:16px;height:16px}.loading-container,.error-container{min-height:60vh;padding:32px 20px}.error-container .error-icon{font-size:40px}.error-container h2{font-size:18px}.error-actions{flex-direction:column;width:100%;gap:10px}.error-actions .retry-btn,.error-actions .back-btn{width:100%;text-align:center;padding:14px 20px;border-radius:12px}.cancel-modal-overlay{align-items:flex-end;padding:0}.cancel-modal{max-width:100%;border-radius:20px 20px 0 0;max-height:90vh;overflow-y:auto;animation:slideUpModal .3s ease-out}@keyframes slideUpModal{0%{transform:translateY(100%);opacity:.5}to{transform:translateY(0);opacity:1}}.cancel-modal-header{padding:16px 20px;position:sticky;top:0;background:#fff;z-index:2}.cancel-modal-header:before{content:"";display:block;width:36px;height:4px;background:#d1d5db;border-radius:2px;margin:0 auto 12px}.cancel-modal-body{padding:16px 20px 24px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.cancel-info .warning-text{font-size:15px}.ticket-summary{padding:12px 14px}.ticket-summary p{font-size:13px}.cancellation-breakdown{padding:14px}.breakdown-item{font-size:13px;padding:6px 0}.breakdown-item.refund span:last-child{font-size:15px}.modal-actions{gap:10px}.modal-actions .keep-btn,.modal-actions .confirm-cancel-btn{padding:14px 16px;border-radius:12px;font-size:14px}}@media(max-width:380px){.ticket-numbers{flex-direction:column;gap:10px}.ticket-number-item{text-align:left}.bus-info-grid,.booking-info-grid{grid-template-columns:1fr}.action-buttons .download-btn,.action-buttons .cancel-btn{padding:12px 8px;font-size:12px}}.profile-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.profile-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.profile-container{flex:1;max-width:800px;width:100%;margin:0 auto;padding:32px 20px;display:flex;flex-direction:column;gap:24px}.profile-card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;overflow:hidden}.profile-header{display:flex;align-items:center;gap:20px;padding:28px;background:linear-gradient(135deg,#002c3f,#004a6b);color:#fff}.profile-avatar{width:80px;height:80px;border-radius:50%;background:#ffffff26;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;color:#fff;flex-shrink:0;border:3px solid rgba(255,255,255,.3)}.profile-header-info h1{margin:0;font-size:24px;font-weight:600}.phone-number{margin:6px 0 10px;font-size:14px;opacity:.85}.profile-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.profile-status.complete{background:#38a16933;color:#9ae6b4}.profile-status.incomplete{background:#ed893633;color:#fbd38d}.profile-body{padding:24px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #eee}.section-header h2{margin:0;font-size:18px;color:#333;font-weight:600}.edit-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#f0f0f0;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#333;cursor:pointer;transition:all .2s}.edit-btn:hover{background:#e0e0e0}.profile-details{display:flex;flex-wrap:wrap;gap:0}.detail-item{display:flex;flex-direction:column;gap:4px;padding:16px 20px;width:50%;box-sizing:border-box;border-bottom:1px solid #f0f0f0}.detail-item:nth-child(odd){text-align:left;border-right:1px solid #f0f0f0}.detail-item:nth-child(2n){text-align:right}.detail-item:nth-last-child(-n+2){border-bottom:none}.detail-item:last-child{width:100%;text-align:center;border-right:none;border-top:1px solid #f0f0f0;border-bottom:none}.detail-item:nth-child(2n) .detail-value{justify-content:flex-end}.detail-item:last-child .detail-value{justify-content:center}.detail-label{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:16px;color:#333;font-weight:500;display:flex;align-items:center;gap:8px}.detail-value.verified{color:#38a169}.profile-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:500;color:#333}.form-group input,.form-group select{padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:all .2s;background:#fff}.form-group input.disabled-input{background:#f5f5f5;color:#888;cursor:not-allowed}.input-hint{font-size:12px;color:#888}.error-message{padding:12px 16px;background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;color:#c53030;font-size:14px}.success-message{padding:12px 16px;background:#f0fff4;border:1px solid #c6f6d5;border-radius:8px;color:#38a169;font-size:14px}.form-actions{display:flex;gap:12px;margin-top:8px}.form-actions button{flex:1;padding:14px 24px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.save-btn:disabled{opacity:.7;cursor:not-allowed}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.quick-actions-card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;padding:24px}.quick-actions-card h3{margin:0 0 16px;font-size:16px;color:#333;font-weight:600}.action-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.action-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;background:#f8f9fa;border:1px solid #eee;border-radius:12px;font-size:13px;font-weight:500;color:#333;cursor:pointer;transition:all .2s}.action-btn:hover{background:#f0f0f0;border-color:#ddd}.action-btn svg{stroke:#002c3f}@media(max-width:640px){.profile-page{padding-bottom:72px}.profile-container{padding:16px}.profile-header{flex-direction:column;text-align:center;padding:24px 20px}.profile-avatar{width:70px;height:70px;font-size:28px}.profile-header-info h1{font-size:20px}.profile-body{padding:20px}.section-header{flex-direction:column;gap:12px;align-items:flex-start}.detail-item{width:100%;text-align:center;border-right:none!important}.detail-item:nth-child(odd),.detail-item:nth-child(2n){text-align:center}.detail-item .detail-value{justify-content:center!important}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.action-buttons{grid-template-columns:1fr}.action-btn{flex-direction:row;justify-content:flex-start}}@media(max-width:480px){.profile-container{padding:16px 12px;gap:16px}.profile-header{flex-direction:column;text-align:center;padding:20px 16px}.profile-avatar{width:60px;height:60px;font-size:24px}.profile-header-info h1{font-size:18px}.phone-number{font-size:13px}.profile-body{padding:16px}.section-header h2{font-size:16px}.edit-btn{padding:6px 12px;font-size:13px}.detail-item{padding:12px 8px}.detail-label{font-size:11px}.detail-value{font-size:13px}.form-group label{font-size:12px}.form-group input,.form-group select{padding:10px 12px;font-size:14px}.action-btn{padding:14px 16px;font-size:14px}.action-icon{width:36px;height:36px}}.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}}
