:root{--primary: #2563eb;--primary-hover: #1d4ed8;--primary-light: #eff6ff;--brand-orange: #E34E1A;--text-main: #0f172a;--text-muted: #64748b;--bg-main: #f8fafc;--bg-card: #ffffff;--border: #e2e8f0;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--safe-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-family);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden;position:relative;width:100%}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;outline:none;-webkit-tap-highlight-color:transparent}input,select,textarea{font-family:inherit;outline:none;font-size:16px;box-sizing:border-box}@media(min-width:768px){input,select,textarea{font-size:14px}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 16px}@media(min-width:640px){.container{padding:0 20px}}@media(min-width:1024px){.container{padding:0 24px}}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:600;white-space:nowrap}.badge-success{background-color:#ecfdf5;color:#10b981}.badge-info{background-color:#eff6ff;color:#2563eb}.badge-warning{background-color:#fffbeb;color:#b45309}.badge-danger{background-color:#fef2f2;color:#ef4444}.mobile-only{display:flex!important}@media(min-width:900px){.mobile-only{display:none!important}}.desktop-only{display:none!important}@media(min-width:900px){.desktop-only{display:flex!important}}.header-container{height:64px;display:flex;align-items:center;justify-content:space-between}@media(min-width:900px){.header-container{height:72px}}.header-nav-desktop{display:none}@media(min-width:900px){.header-nav-desktop{display:flex;align-items:center;gap:18px}}.header-mobile-toggle{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;background-color:#f8fafc;color:#0f172a;border:1px solid #e2e8f0;cursor:pointer;padding:0;transition:background-color .15s}.header-mobile-toggle:hover,.header-mobile-toggle:active{background-color:#f1f5f9}@media(min-width:900px){.header-mobile-toggle{display:none}}.mobile-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn .2s ease-out}.mobile-drawer-content{position:fixed;top:0;right:0;bottom:0;width:85%;max-width:320px;background-color:#fff;z-index:1001;display:flex;flex-direction:column;box-shadow:-4px 0 24px #0003;overflow-y:auto;animation:slideInRight .25s cubic-bezier(.16,1,.3,1);padding:20px}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #e2e8f0;margin-bottom:20px}.mobile-nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;font-size:15px;font-weight:600;color:#334155;transition:all .15s ease;text-decoration:none;min-height:48px}.mobile-nav-item:active,.mobile-nav-item:hover{background-color:#eff6ff;color:#2563eb}.hero-section{background:linear-gradient(135deg,#1e3a8a,#0f172a);color:#fff;padding:40px 0 60px;position:relative;overflow:hidden}@media(min-width:768px){.hero-section{padding:70px 0 90px}}.hero-heading{font-size:26px;font-weight:800;line-height:1.25;letter-spacing:-.5px;margin-bottom:14px}@media(min-width:640px){.hero-heading{font-size:34px}}@media(min-width:1024px){.hero-heading{font-size:44px;letter-spacing:-1px}}.search-form-box{background-color:#fff;border-radius:16px;padding:18px;box-shadow:0 16px 36px #00000038;display:flex;flex-direction:column;gap:16px;max-width:960px;margin:0 auto}@media(min-width:768px){.search-form-box{display:grid;grid-template-columns:1fr 1fr 1fr 160px;gap:16px;align-items:flex-end;padding:24px}}.trust-features-grid{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:640px){.trust-features-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media(min-width:1024px){.trust-features-grid{grid-template-columns:repeat(3,1fr);gap:24px}}.trending-routes-grid{display:grid;grid-template-columns:1fr;gap:16px}@media(min-width:640px){.trending-routes-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media(min-width:1024px){.trending-routes-grid{grid-template-columns:repeat(4,1fr);gap:20px}}.app-cta-banner{background-color:#1e3a8a;border-radius:16px;padding:24px 20px;color:#fff;display:flex;flex-direction:column;gap:24px}@media(min-width:900px){.app-cta-banner{border-radius:20px;padding:40px 48px;flex-direction:row;align-items:center;justify-content:space-between;gap:32px}}.app-cta-cards-container{display:grid;grid-template-columns:1fr;gap:16px;width:100%}@media(min-width:640px){.app-cta-cards-container{grid-template-columns:repeat(2,1fr);width:auto}}.bus-card{background-color:#fff;border-radius:16px;padding:16px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000a;display:flex;flex-direction:column;gap:16px}@media(min-width:768px){.bus-card{padding:22px 24px;display:grid;grid-template-columns:1.2fr 1.3fr 150px;align-items:center;gap:20px}}.bus-card-action-bar{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid #f1f5f9}@media(min-width:768px){.bus-card-action-bar{display:block;text-align:right;padding-top:0;border-top:none}}.bus-details-layout{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:900px){.bus-details-layout{grid-template-columns:1.2fr .8fr;gap:24px}}.seat-deck-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;background-color:#f8fafc;padding:12px;border-radius:12px;border:1px solid #e2e8f0}@media(min-width:640px){.seat-deck-grid{gap:12px;padding:16px}}.payment-layout{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:900px){.payment-layout{grid-template-columns:1.3fr .9fr;gap:24px}}.ticket-points-grid{display:grid;grid-template-columns:1fr;gap:14px;padding-bottom:20px;border-bottom:1px solid #f1f5f9}@media(min-width:600px){.ticket-points-grid{grid-template-columns:1fr 1fr;gap:16px}}.ticket-info-grid{display:grid;grid-template-columns:1fr;gap:14px;padding-bottom:20px;border-bottom:1px solid #f1f5f9}@media(min-width:600px){.ticket-info-grid{grid-template-columns:repeat(3,1fr);gap:16px}}.ticket-actions-row{display:flex;flex-direction:column;gap:12px;margin-top:24px;width:100%}@media(min-width:600px){.ticket-actions-row{flex-direction:row;justify-content:center;gap:16px}}.search-ticket-bar{display:flex;flex-direction:column;gap:10px;background-color:#fff;border-radius:12px;padding:14px;border:1px solid #e2e8f0;margin-bottom:24px}@media(min-width:600px){.search-ticket-bar{flex-direction:row;padding:16px}}.footer-grid{display:grid;grid-template-columns:1fr;gap:28px;margin-bottom:32px}@media(min-width:640px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:32px}}@media(min-width:1024px){.footer-grid{grid-template-columns:repeat(4,1fr);gap:32px;margin-bottom:40px}}.footer-bottom{border-top:1px solid #1e293b;padding-top:20px;display:flex;flex-direction:column;gap:12px;font-size:12px;text-align:center}@media(min-width:768px){.footer-bottom{flex-direction:row;align-items:center;justify-content:space-between;text-align:left;padding-top:24px}}.brand-watermark{position:fixed;right:10px;bottom:10px;z-index:80;background-color:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:3px 8px;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;gap:2px;border:1px solid rgba(0,0,0,.08);pointer-events:none;transform:scale(.8);transform-origin:bottom right}@media(min-width:768px){.brand-watermark{right:16px;bottom:16px;padding:6px 14px;border-radius:10px;box-shadow:0 4px 16px #00000026;gap:4px;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
