:root{--ink:#1f1a33;--text:#2c2745;--muted:#6b6585;--line:#d6d3de;--line-soft:#e7e4ee;--bg:#f4f2f8;--card:#ffffff;--primary:#6a45c9;--primary-dark:#4a2fb0;--primary-hover:#3f27a0;--hero:#7b5cd6;--accent:#9a7cf0;--tint:#e9e1fc;--tint-ink:#4a2fb0;--bus:#e3f4ea;--bus-ink:#1f7a46;--air:#e6ecfb;--air-ink:#2b4db0;--warn:#fff6e0;--danger:#b3200a;--footer:#2a2140;--r:2px;--shadow:0 1px 2px rgba(0,0,0,0.08);--container:1100px}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body.site{margin:0;font-family:Open Sans,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100vh}.site main{flex:1 1}.site a{color:var(--primary)}.site a:hover{color:var(--primary-hover)}.site h1,.site h2,.site h3{color:var(--ink);line-height:1.2;margin:0 0 12px}.site h1{font-size:clamp(26px,4vw,40px);font-weight:700}.site h2{font-size:22px;font-weight:600}.site h3{font-size:17px;font-weight:600}.site p{margin:0 0 12px}.site img{max-width:100%}.site :focus-visible{outline:2px solid var(--primary);outline-offset:2px}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 16px}.muted{color:var(--muted)}.small{font-size:13px}.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;z-index:100;background:#fff;padding:8px 12px}.ic{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em;flex:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.header{background:#fff;border-bottom:3px solid var(--primary);position:-webkit-sticky;position:sticky;top:0;z-index:20}.header .container{height:64px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink)!important;font-size:24px;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.brand span{color:var(--accent)}.brand img{height:34px;width:auto}.nav{display:flex;gap:24px;font-weight:600;font-size:15px}.nav a{color:#4b4565;text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}.nav a:hover,.nav a[aria-current=page]{color:var(--primary-dark);border-bottom-color:var(--primary)}.header-tools{margin-left:auto;display:flex;align-items:center;gap:10px}.lang{font-weight:600;color:#4b4565;padding:6px 8px}.avatar,.lang{font-size:13px;text-decoration:none}.avatar{width:34px;height:34px;border-radius:50%;background:var(--tint);color:var(--tint-ink);display:inline-grid;place-items:center;font-weight:700}.mobile-nav{display:none;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;padding:8px;border:1px solid var(--line);border-radius:var(--r);font-weight:600;font-size:13px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:0;top:44px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(31,26,51,.12);min-width:220px;display:flex;flex-direction:column;padding:6px 0}.mobile-nav nav a{padding:10px 16px;text-decoration:none;color:var(--ink);font-weight:600}.mobile-nav nav a:hover{background:var(--bg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:var(--r);border:1px solid transparent;background:var(--primary-dark);color:#fff!important;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s;white-space:nowrap}.btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 3px 8px rgba(74,47,176,.35)}.btn:active{transform:translateY(1px);box-shadow:none}.btn-outline{background:#fff;color:var(--primary-dark)!important;border-color:var(--primary-dark)}.btn-light,.btn-outline:hover{background:var(--tint)}.btn-light{color:var(--tint-ink)!important}.btn-light:hover{background:#ddd2fa}.btn-white{background:#fff;color:var(--primary-dark)!important}.btn-white:hover{background:#f1ecfe}.btn-sm{height:34px;padding:0 12px;font-size:14px}.btn-lg{height:54px;padding:0 28px;font-size:17px}.btn-block{width:100%}.btn[disabled]{opacity:.5;pointer-events:none}.field{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:7px 12px 6px;position:relative;min-width:0}.field:focus-within{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.field .label,.field label{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:8px}.field input,.field select{border:0;outline:0;padding:0;font:inherit;font-size:16px;font-weight:600;color:var(--ink);background:transparent;width:100%;min-width:0}.field input::placeholder{color:#a8a3b8;font-weight:400}.field.has-error{border-color:var(--danger)}.field-error{color:var(--danger);font-size:13px;margin-top:4px}.hint{color:var(--muted);font-size:13px}.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--primary);margin:1px 0 0;flex:none}.input{height:42px;border:1px solid var(--line);border-radius:var(--r);padding:0 12px;font:inherit;background:#fff;color:var(--ink);width:100%}.input:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tab{height:34px;padding:0 16px;display:inline-flex;align-items:center;border-radius:var(--r);background:var(--bg);color:#4b4565!important;font-weight:600;font-size:14px;text-decoration:none;border:0;cursor:pointer;font-family:inherit}.tab:hover{background:var(--tint)}.tab.on,.tab[aria-current=true]{background:var(--primary-dark);color:#fff!important}.tab-radio{position:absolute;opacity:0;pointer-events:none}.tab-radio:checked+.tab{background:var(--primary-dark);color:#fff!important}.tab-radio:focus-visible+.tab{outline:2px solid var(--primary);outline-offset:2px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.card-pad{padding:20px 22px}.badge{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--r);font-size:12px;font-weight:600;white-space:nowrap}.badge-BUS{background:var(--bus);color:var(--bus-ink)}.badge-AIR{background:var(--air);color:var(--air-ink)}.badge-tint{background:var(--tint);color:var(--tint-ink)}.status{font-size:13px;font-weight:600;color:var(--primary-dark)}.status-PAID{color:var(--bus-ink)}.status-CANCELLED{color:var(--danger)}.notice{padding:12px 16px;border-radius:var(--r);background:var(--tint);color:var(--tint-ink);font-size:14px}.notice-ok{background:var(--bus);color:var(--bus-ink)}.notice-error{background:#fde8e4;color:var(--danger)}.notice-warn{background:var(--warn);color:#6d4b00}.hero{background:var(--hero);color:#fff}.hero .container{padding-top:clamp(28px,6vw,56px);padding-bottom:clamp(28px,6vw,56px)}.hero h1{color:#fff;max-width:15em}.hero p{color:rgba(255,255,255,.92);font-size:17px;max-width:34em}.search-box{background:#fff;border-radius:var(--r);padding:14px;margin-top:24px;color:var(--ink);position:relative}.search-box .tabs{margin-bottom:12px;position:relative}.search-row{display:grid;grid-template-columns:1fr 1fr .9fr .55fr auto;grid-gap:8px;gap:8px}.search-row .btn{height:100%;min-height:56px;min-width:150px;font-size:17px}.swap{font-size:12px;font-weight:600;color:var(--primary-dark);background:none;border:0;padding:0;cursor:pointer;font-family:inherit}.compact-search{background:#fff;border-bottom:1px solid var(--line)}.compact-search .container{padding-top:12px;padding-bottom:12px}.compact-search .search-box{margin:0;padding:0}.features{background:#fff}.features .container{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:28px;gap:28px;padding-top:32px;padding-bottom:32px}.step-n{width:44px;height:44px;border-radius:50%;background:var(--tint);color:var(--tint-ink);display:grid;place-items:center;font-weight:700;font-size:18px;margin-bottom:14px}.section{padding:36px 0}.popular{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.city-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink)!important;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}.city-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(31,26,51,.12)}.city-photo{height:120px;background:repeating-linear-gradient(135deg,#ece6fb 0 10px,#e1d8f8 10px 20px);background-size:cover;background-position:50%;display:flex;align-items:flex-end;padding:6px 8px;font-size:11px;color:#8a7fb0;font-family:ui-monospace,monospace}.city-card .body{padding:10px 12px 12px}.city-card strong{display:block;font-size:16px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.chip{height:30px;padding:0 12px;display:inline-flex;align-items:center;border-radius:var(--r);background:var(--tint);color:var(--tint-ink)!important;font-size:13px;font-weight:600;text-decoration:none}.chip:hover{background:#ddd2fa}.app-band{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;padding:22px 24px}.app-band,.store{align-items:center}.store{background:var(--ink);color:#fff!important;height:42px;padding:0 18px;border-radius:var(--r);display:inline-flex;font-weight:600;text-decoration:none}.results{display:grid;grid-template-columns:240px 1fr;grid-gap:20px;gap:20px;align-items:start;padding:24px 0 40px}.filters{display:flex;flex-direction:column;gap:12px;position:-webkit-sticky;position:sticky;top:84px}.filters .card{padding:14px 16px}.filters h3{font-size:15px;margin-bottom:10px}.filters .check{margin-bottom:8px}.range{width:100%;accent-color:var(--primary)}.sort-tabs{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:12px}.sort-tab{background:#fff;border:1px solid var(--line);border-bottom:3px solid transparent;padding:10px 14px;font-weight:600;font-size:14px;color:#4b4565!important;text-decoration:none}.sort-tab[aria-current=true]{border-bottom-color:var(--primary);color:var(--ink)!important}.trip{display:grid;grid-template-columns:100px 1fr auto;grid-gap:18px;gap:18px;align-items:center;padding:14px 18px;margin-bottom:10px}.trip .who{display:flex;flex-direction:column;gap:6px;align-items:flex-start;font-size:12px;color:var(--muted)}.trip .times{display:grid;grid-template-columns:auto 1fr auto;grid-gap:14px;gap:14px;align-items:center;min-width:0}.trip .t{font-size:22px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.trip .t small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:2px}.trip .line{text-align:center;font-size:12px;color:var(--muted);min-width:0}.trip .line:before{content:"";display:block;height:2px;background:#b9a9ee;margin:6px 0}.trip .buy{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.trip .price{font-size:24px;font-weight:700;white-space:nowrap}.empty{padding:32px;text-align:center}.stepper{gap:10px;list-style:none;padding:0;margin:0;font-size:14px;font-weight:600;color:var(--muted);flex-wrap:wrap}.stepper,.stepper li{display:flex;align-items:center}.stepper li{gap:8px}.stepper li+li:before{content:"";width:18px;height:1px;background:var(--line);margin-right:2px}.stepper .n{width:24px;height:24px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-size:12px}.stepper .now{color:var(--ink)}.stepper .done .n,.stepper .now .n{background:var(--primary-dark);color:#fff}.checkout{display:grid;grid-template-columns:1fr 340px;grid-gap:20px;gap:20px;align-items:start;padding:24px 0 48px}.checkout .main{display:flex;flex-direction:column;gap:14px;min-width:0}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.summary{position:-webkit-sticky;position:sticky;top:84px;padding:18px 20px}.summary .trip-box{background:var(--bus);padding:10px 12px;margin:10px 0 14px;font-size:14px}.summary .trip-box.AIR{background:var(--air)}.kv{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:3px 0}.kv-total{font-size:20px;font-weight:700;border-top:1px solid var(--line);margin-top:8px;padding-top:10px}.seatmap{display:inline-grid;grid-template-columns:repeat(2,34px) 22px repeat(2,34px);gap:6px;background:var(--bg);padding:12px}.seat{position:relative}.seat input{position:absolute;opacity:0;inset:0;cursor:pointer}.seat span{width:34px;height:30px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:600}.seat input:checked+span{background:var(--primary-dark);color:#fff;border-color:var(--primary-dark)}.seat input:focus-visible+span{outline:2px solid var(--primary)}.seat.taken span{background:#dcd8e6;color:#a19bb5;border-color:#dcd8e6}.seat.taken input{pointer-events:none}.legend{display:flex;flex-direction:column;gap:8px;font-size:14px}.legend i{display:inline-block;width:16px;height:16px;border:1px solid var(--line);vertical-align:-3px;margin-right:8px;background:#fff}.legend i.mine{background:var(--primary-dark);border-color:var(--primary-dark)}.legend i.taken{background:#dcd8e6;border-color:#dcd8e6}.extras-list .check{justify-content:space-between;padding:8px 0;border-top:1px solid var(--line-soft)}.extras-list .check:first-child{border-top:0}.mobile-total{display:none}.ticket{display:grid;grid-template-columns:1fr 200px;background:#fff;border:1px solid var(--line);margin-bottom:16px;page-break-inside:avoid;break-inside:avoid}.ticket .main{padding:18px 22px;min-width:0}.ticket .stub{border-left:2px dashed var(--line);background:#efe9fd;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;font-size:12px;color:var(--muted)}.ticket.BUS .stub{background:#e6f5ec}.ticket .head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.ticket .kind{font-size:11px;letter-spacing:.14em;color:var(--muted);font-weight:600;text-transform:uppercase;margin-left:8px}.ticket .codes{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.ticket .code{font-size:clamp(30px,5vw,44px);font-weight:700;line-height:1}.ticket .code small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:6px}.ticket .dash{flex:1 1;border-top:2px dashed #b9a9ee;position:relative;margin-bottom:22px}.ticket .dash span{position:absolute;left:50%;top:-12px;transform:translateX(-50%);background:#fff;padding:0 6px;color:var(--primary);font-size:16px}.ticket .facts{display:grid;grid-template-columns:repeat(5,auto);grid-gap:12px;gap:12px;border:1px solid var(--line);padding:10px 14px;margin-top:16px}.ticket .facts.bus{background:#e6f5ec;border:0;grid-template-columns:repeat(4,auto)}.ticket .facts span{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ticket .facts strong{font-size:14px}.ticket .stops{display:flex;flex-direction:column;gap:14px;padding-left:26px;position:relative}.ticket .stops:before{content:"";position:absolute;left:6px;top:12px;bottom:16px;border-left:2px dashed var(--bus-ink)}.ticket .stop{position:relative;font-size:20px;font-weight:600}.ticket .stop:before{content:"";position:absolute;left:-26px;top:6px;width:14px;height:14px;border-radius:50%;border:3px solid var(--bus-ink);background:#fff}.ticket .stop:last-child:before{background:var(--bus-ink)}.ticket .stop small{display:block;font-size:13px;font-weight:400;color:var(--muted)}.qr{width:132px;height:132px;background:#fff;padding:6px}.qr svg{width:100%;height:100%;display:block}.paid-head{display:flex;align-items:center;gap:14px;margin:24px 0 18px}.paid-head .ok{width:44px;height:44px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;flex:none}.account{display:grid;grid-template-columns:220px 1fr;grid-gap:24px;gap:24px;padding:24px 0 48px;align-items:start}.side-nav{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);padding:10px}.side-nav a{padding:9px 12px;text-decoration:none;color:#4b4565;font-weight:600;border-radius:var(--r)}.side-nav a:hover,.side-nav a[aria-current=page]{background:var(--tint);color:var(--tint-ink)}.next-trip{background:var(--primary);color:#fff;padding:22px 24px}.next-trip h2{color:#fff;font-size:clamp(22px,3vw,30px);margin:6px 0}.next-trip .over{font-size:11px;letter-spacing:.14em;font-weight:700;text-transform:uppercase;opacity:.85}.trip-row{display:grid;grid-template-columns:90px 1fr auto auto;grid-gap:16px;gap:16px;align-items:center;padding:12px 16px;margin-bottom:8px;text-decoration:none;color:var(--ink)!important}.trip-row:hover{border-color:var(--primary)}.table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}.table td,.table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line-soft)}.table th{font-size:12px;color:var(--muted);font-weight:600}.table-wrap{overflow-x:auto;border:1px solid var(--line)}.auth{max-width:440px;margin:32px auto 48px;background:var(--tint);padding:28px}.auth h1{font-size:26px}.auth form{display:flex;flex-direction:column;gap:10px}.auth .tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:0;gap:0;margin-bottom:14px}.auth .tabs a{height:40px;display:grid;place-items:center;text-decoration:none;font-weight:600;color:var(--muted);background:transparent}.auth .tabs a[aria-current=true]{background:#fff;color:var(--ink);box-shadow:var(--shadow)}.page{padding:28px 0 48px}.doc{display:grid;grid-template-columns:240px 1fr;grid-gap:20px;gap:20px;align-items:start}.toc{position:-webkit-sticky;position:sticky;top:84px;padding:16px 18px}.toc a{display:block;padding:6px 0;font-size:14px;text-decoration:none;color:#4b4565;border-bottom:1px solid var(--line-soft)}.toc a:hover{color:var(--primary)}.prose{padding:clamp(18px,3vw,30px) clamp(18px,4vw,36px);line-height:1.65}.prose h2{font-size:19px;margin:26px 0 8px;scroll-margin-top:90px}.prose ul{padding-left:20px}.breadcrumbs{font-size:13px;margin-bottom:10px}.breadcrumbs,.breadcrumbs a{color:var(--muted)}.footer{background:var(--footer);color:rgba(255,255,255,.82);margin-top:auto}.footer .container{padding-top:36px;padding-bottom:28px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;grid-gap:28px;gap:28px}.footer .brand{color:#fff!important;font-size:22px}.footer h2{color:#fff;font-size:14px;font-weight:700;margin-bottom:10px}.footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px}.footer a{color:rgba(255,255,255,.82);text-decoration:none}.footer a:hover{color:#fff;text-decoration:underline}.footer-bottom{margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;justify-content:space-between;gap:12px}.cookie-bar,.footer-bottom{display:flex;flex-wrap:wrap}.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(42,33,64,.97);color:#fff;padding:12px 16px;gap:16px;align-items:center;justify-content:center;font-size:14px}.cookie-bar a{color:#fff}@media (max-width:900px){.nav{display:none}.mobile-nav{display:block}.header .container{gap:12px}.search-row{grid-template-columns:1fr 1fr}.search-row .btn{grid-column:1/-1;min-height:50px}.features .container{grid-template-columns:1fr;gap:18px}.popular{grid-template-columns:repeat(2,1fr)}.results{grid-template-columns:1fr}.filters{position:static}.filters-box{display:none}.filters-box[open],details.filters-box{display:block}.checkout{grid-template-columns:1fr;padding-bottom:96px}.summary{position:static}.mobile-total{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:25;background:#fff;border-top:1px solid var(--line);padding:10px 16px;gap:12px;align-items:center;justify-content:space-between}.account{grid-template-columns:1fr}.side-nav{flex-direction:row;overflow-x:auto}.doc{grid-template-columns:1fr}.toc{position:static}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:600px){.hide-s{display:none!important}.search-row,.trip{grid-template-columns:1fr}.trip{gap:10px}.trip .buy,.trip .who{flex-direction:row;align-items:center}.trip .buy{justify-content:space-between}.grid2,.ticket{grid-template-columns:1fr}.ticket .stub{border-left:0;border-top:2px dashed var(--line)}.ticket .facts,.ticket .facts.bus{grid-template-columns:repeat(2,auto)}.trip-row{grid-template-columns:1fr auto}.trip-row .badge{grid-column:1/-1;justify-self:start}.footer-grid{grid-template-columns:1fr}.sort-tabs .sort-tab{padding:8px;font-size:13px}}@media print{.cookie-bar,.footer,.header,.no-print{display:none!important}body.site{background:#fff}}