:root{--navy:#10263b;--navy2:#17354e;--cream:#f7f5ef;--paper:#fff;--coral:#f08d68;--orange:#ffb85c;--ink:#1d3445;--muted:#657784;--line:#dce3e4;--teal:#d7edf0;--shadow:0 24px 60px rgba(16,38,59,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}svg{vertical-align:middle;flex:none}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.site-shell{overflow:hidden}.header{background:#fff;position:relative;z-index:20;border-bottom:1px solid #e9eeee}.header-inner{height:84px;display:flex;align-items:center;gap:42px}.brand{display:inline-flex;align-items:center;gap:11px;font-size:25px;font-weight:800;line-height:1;letter-spacing:-1.2px;color:var(--navy);white-space:nowrap}.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--navy);color:var(--orange);display:grid;place-items:center}.brand-accent{color:#ea8b68}.desktop-nav{display:flex;align-items:center;gap:25px;margin-left:auto}.desktop-nav a{font-size:13px;font-weight:700;color:#526674;white-space:nowrap;transition:color .2s}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:#ed865f}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:12px;padding:13px 19px;font-weight:800;font-size:13px;line-height:1.2;min-height:46px;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(16,38,59,.17)}.btn-dark{background:var(--navy);color:#fff}.btn-coral{background:var(--coral);color:#172d3d}.btn-light{background:#fff;color:var(--navy)}.btn-outline{border:1px solid var(--line);background:#fff;color:var(--navy)}.header-cta{margin-left:0}.menu-toggle{display:none;border:0;background:none;width:42px;height:42px;padding:10px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:5px 0}.mobile-nav{display:none}.eyebrow{display:inline-block;color:#e48a63;font-size:11px;font-weight:800;letter-spacing:.17em}.hero{background:var(--navy);color:#fff;position:relative;padding:82px 0 0}.hero:before{content:"";position:absolute;width:550px;height:550px;right:-270px;top:-220px;border:1px solid rgba(255,255,255,.1);border-radius:50%}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;min-height:395px;gap:20px}.hero-copy{position:relative;z-index:2;padding-bottom:82px}.hero-kicker{display:flex;align-items:center;gap:9px;color:#f8be76;font-size:11px;font-weight:800;letter-spacing:.16em;margin-bottom:22px}.dot{width:8px;height:8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px rgba(240,141,104,.18)}h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(42px,5vw,66px);line-height:1.12;letter-spacing:-.055em;font-weight:800;margin-bottom:24px}.hero h1 em{font-style:normal;color:var(--orange)}.hero-copy>p{max-width:560px;color:#cedbe2;font-size:16px;line-height:1.9;margin-bottom:26px}.hero-proof{display:flex;gap:26px;flex-wrap:wrap}.hero-proof span{display:flex;align-items:center;gap:8px;color:#f0f5f7;font-size:12px;font-weight:700}.hero-proof svg{color:#ffa970}.hero-search{position:relative;z-index:5;transform:translateY(51px)}.search-card{background:#fff;color:var(--navy);border-radius:18px;box-shadow:var(--shadow);padding:20px 25px 16px}.search-top,.search-bottom{display:flex;align-items:center;gap:12px}.search-top{justify-content:space-between;margin-bottom:15px}.search-label{font-size:11px;font-weight:800;letter-spacing:.13em;color:var(--navy)}.search-hint{font-size:11px;color:var(--muted);font-weight:600}.search-fields{display:grid;grid-template-columns:1fr 30px 1fr 1fr auto;gap:10px;align-items:end}.search-fields label{display:block;position:relative;min-width:0}.search-fields label>span:first-child{display:block;font-size:11px;font-weight:800;margin-bottom:6px}.search-fields input{width:100%;height:52px;border:1px solid var(--line);border-radius:10px;background:#fbfcfc;padding:0 11px 0 36px;color:var(--navy);outline:none;min-width:0}.search-fields input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])):focus,input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])):focus,select:focus,textarea:focus{border-color:#e98b65;box-shadow:0 0 0 3px rgba(240,141,104,.14);outline:none}.search-fields input[type=date]{font-size:12px}.field-icon{position:absolute;left:11px;bottom:15px;color:#8ea0a8}.search-fields .btn{height:52px;padding:0 22px}.swap-btn{height:52px;width:30px;background:none;border:0;color:#7a95a0;display:grid;place-items:center}.search-bottom{border-top:1px solid #edf0ef;padding-top:12px;margin-top:17px;flex-wrap:wrap;font-size:11px;color:#8797a0}.search-bottom a{background:#f3f6f5;border-radius:30px;padding:5px 10px;color:#536d78;font-weight:700}.search-bottom a:hover{background:#e7f0ef}.section{padding:100px 0}.section-cream{background:var(--cream)}.hero+.section{padding-top:139px}.section-head{margin-bottom:35px;max-width:650px}.section-head h2{color:var(--navy);font-size:clamp(30px,3.4vw,44px);line-height:1.18;letter-spacing:-.04em;margin:11px 0 15px}.section-head p{color:var(--muted);margin:0;line-height:1.85}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feature{background:#fff;border:1px solid #eeeae2;border-radius:18px;padding:29px 25px;min-height:230px;position:relative;transition:transform .2s,box-shadow .2s}.feature:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(16,38,59,.07)}.feature-icon{width:54px;height:54px;background:#e7f3f2;color:#2d6870;border-radius:14px;display:grid;place-items:center;margin-bottom:28px}.feature-num{position:absolute;right:23px;top:27px;color:#d7dedc;font-weight:800;font-size:12px}.feature h3{font-size:16px;letter-spacing:-.025em;color:var(--navy);margin-bottom:8px}.feature p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}.destinations{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.destinations .section-head{margin-bottom:18px}.text-link{display:inline-flex;gap:9px;align-items:center;color:#dc7e5c;font-weight:800;font-size:13px}.destination-cards{display:grid;gap:14px}.destination-card{background:#e5f1ef;padding:26px 28px;border-radius:18px;min-height:150px;position:relative;transition:transform .2s}.destination-card:hover{transform:translateX(5px)}.destination-card.alt{background:#fce8da}.destination-code{font-size:10px;font-weight:800;letter-spacing:.16em;color:#529099}.destination-card.alt .destination-code{color:#d97c60}.destination-card h3{font-size:22px;color:var(--navy);margin:19px 0 2px;letter-spacing:-.03em}.destination-card h3 span{color:#dc8967}.destination-card p{font-size:12px;color:#687e82;margin:0}.destination-card>svg{position:absolute;right:30px;top:58px;color:var(--navy)}.section-blue{background:#153a53;color:#fff}.section-blue .section-head h2{color:#fff}.section-blue .section-head p{color:#bcd0db}.trust-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.trust-grid .btn{margin-top:10px}.trust-list>div{display:flex;gap:22px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.2)}.trust-list>div:first-child{padding-top:0}.trust-list>div:last-child{border:0}.trust-list>div>span{color:#f3a67e;font-size:13px;font-weight:800;flex:none}.trust-list h3{font-size:16px;margin-bottom:5px}.trust-list p{color:#bcd0db;font-size:12px;margin:0;line-height:1.7}.steps{display:grid;grid-template-columns:300px 1fr;gap:75px}.steps>div>p{color:var(--muted);font-size:13px;line-height:1.8}.step-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}.step-row>div{padding:25px 22px;border:1px solid #e5e9e4;background:#fff;border-radius:16px;min-height:195px}.step-row strong{display:grid;place-items:center;border-radius:50%;width:33px;height:33px;background:#fce7d8;color:#cc795a;margin-bottom:20px}.step-row h3{font-size:15px;line-height:1.3;margin-bottom:9px}.step-row p{font-size:12px;color:var(--muted);margin:0}.cta-section{background:#f8ddc8;padding:69px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-inner h2{font-size:clamp(28px,3vw,40px);line-height:1.22;letter-spacing:-.04em;color:var(--navy);margin:11px 0}.cta-inner p{color:#657784;margin:0}.footer{background:#0d2234;color:#d4dfe4;padding:68px 0 23px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.35fr;gap:55px}.brand-light{color:#fff}.footer-grid p{font-size:12px;line-height:1.8;color:#9fb4bf;max-width:260px;margin:21px 0 0}.footer-grid h3{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#fff;margin:5px 0 17px}.footer-grid a:not(.brand){display:block;font-size:12px;margin:9px 0;color:#b3c4cc}.footer-grid a:hover{color:#fff}.footer-note{border-left:1px solid #2d485b;padding-left:25px}.footer-note p{margin:7px 0 0}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #2b4556;margin-top:58px;padding-top:21px;color:#8099a6;font-size:11px}.page-hero{background:#163a52;color:#fff;padding:72px 0 78px;position:relative}.page-hero:after{content:"";position:absolute;right:5%;top:-110px;width:400px;height:400px;border:1px solid rgba(255,255,255,.13);border-radius:50%}.page-hero h1{font-size:clamp(40px,4.5vw,60px);line-height:1.1;letter-spacing:-.05em;margin:13px 0 15px}.page-hero p{max-width:650px;color:#c6d7de;line-height:1.8;margin:0}.route-filter,.form-card{background:#fff;border:1px solid #e6ebe8;border-radius:18px;box-shadow:0 12px 40px rgba(16,38,59,.05)}.route-filter{padding:20px}.filter-grid{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}.filter-grid label,.form-grid label,.form-card>label{font-size:12px;font-weight:800;color:var(--navy)}input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])),select,textarea{display:block;width:100%;border:1px solid #d9e2e2;border-radius:10px;background:#fff;color:var(--navy);padding:12px 13px;margin-top:7px;outline:none;min-height:46px}textarea{resize:vertical;min-height:90px}.filter-grid .btn{min-height:46px}.live-results{margin-top:24px}.loading,.notice{background:#fff;border:1px solid var(--line);border-radius:14px;padding:23px;color:var(--muted)}.empty-results{display:flex;align-items:center;gap:20px;background:#e4f0ef;border:1px solid #d5e7e5;border-radius:18px;padding:26px}.empty-icon{width:60px;height:60px;border-radius:15px;background:#fff;display:grid;place-items:center;color:#46828a;flex:none}.empty-results h2{font-size:21px;line-height:1.2;margin:0 0 6px}.empty-results p{font-size:12px;color:#58727b;margin:0;max-width:560px}.empty-results .btn{margin-left:auto}.price-head{margin-top:80px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.price-row{display:flex;align-items:center;justify-content:space-between;gap:15px;border-radius:12px;background:#fff;padding:18px 20px;border:1px solid #e5e9e6}.price-row span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.price-row svg{color:#d88567}.price-row strong{font-size:13px;white-space:nowrap;color:#d47755}.info-banner{background:#fff4e8;border-radius:12px;margin-top:25px;padding:17px 19px;display:flex;gap:12px;align-items:flex-start;color:#7b614e;font-size:12px}.info-banner svg{color:#d78857}.compact-cta{display:flex;justify-content:space-between;align-items:center;gap:25px}.compact-cta h2{font-size:30px;line-height:1.2;letter-spacing:-.04em;margin:9px 0}.compact-cta p{color:var(--muted);margin:0}.departure-list{display:grid;gap:12px}.departure-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;justify-content:space-between;gap:20px}.departure-date{font-size:11px;font-weight:800;color:#dc8868}.departure-card h3{font-size:20px;margin:6px 0}.departure-card h3 span{color:#dd8969}.departure-card p,.departure-card small{color:var(--muted);font-size:12px}.departure-card>div:last-child{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.departure-card strong{font-size:18px}.conditions-grid{display:grid;grid-template-columns:220px 1fr;gap:55px;align-items:start}.side-index{position:sticky;top:20px;background:#fff;border-radius:14px;padding:20px;border:1px solid #e4e9e6;display:flex;flex-direction:column;gap:13px}.side-index strong{font-size:12px;margin-bottom:4px}.side-index a{font-size:12px;color:#667c86}.side-index a:hover{color:#d77d5e}.article-flow{display:grid;gap:17px}.article-card{background:#fff;border:1px solid #e4e9e6;border-radius:18px;padding:31px 34px;scroll-margin-top:25px}.article-icon{width:50px;height:50px;border-radius:13px;background:#e7f1ef;color:#53838a;display:grid;place-items:center;margin-bottom:18px}.article-card h2{font-size:24px;letter-spacing:-.03em;margin-bottom:12px}.article-card p{font-size:13px;color:#5f7380;line-height:1.85;margin-bottom:11px}.article-card p:last-child{margin:0}.article-card a,.prose a{color:#d07658;text-decoration:underline}.article-cta{background:#dcefeb;border-radius:18px;padding:30px 34px}.article-cta h2{margin-bottom:6px}.article-cta p{color:#5f7781;font-size:13px}.carrier-intro,.partner-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.muted{color:var(--muted);font-size:13px;line-height:1.8}.carrier-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.carrier-list>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px;display:flex;align-items:center;gap:12px}.carrier-list span{font-size:10px;font-weight:800;color:#d99170}.carrier-list strong{font-size:13px}.carrier-list svg{margin-left:auto;color:#9aabb2}.partner-grid{align-items:start}.check-list{padding:0;list-style:none;display:grid;gap:13px;color:#5b7180;font-size:13px}.check-list li:before{content:'✓';display:inline-grid;place-items:center;background:#e2f0ed;color:#407b7c;width:22px;height:22px;border-radius:50%;margin-right:10px;font-weight:800}.form-card{padding:32px}.form-card h3,.form-card h2{font-size:25px;letter-spacing:-.03em;color:var(--navy);margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid .full{grid-column:1/-1}.check-label{display:flex;gap:10px;align-items:start;margin:24px 0 16px;color:#607581;font-size:12px;font-weight:500!important;line-height:1.6}.check-label input{width:17px;height:17px;min-height:0;flex:none;margin:2px 0 0;accent-color:#dd8d69}.check-label a{color:#d47a59;text-decoration:underline}.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.form-message{min-height:18px;color:#407e77;font-size:12px;margin:0 0 8px}.form-message.error{color:#c05050}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:31px;display:flex;flex-direction:column;align-items:start;min-height:260px}.contact-icon{width:57px;height:57px;border-radius:15px;background:#dff0ed;color:#3e7c80;display:grid;place-items:center;margin-bottom:27px}.contact-card small{font-size:10px;color:#d88866;font-weight:800;letter-spacing:.13em}.contact-card strong{font-size:25px;color:var(--navy);margin:5px 0 18px}.contact-card>span:last-child{font-size:12px;font-weight:800;color:#ca7659}.contact-panel{grid-column:1/-1;background:#f7e3d4;border-radius:18px;padding:35px}.contact-panel h2{font-size:28px;letter-spacing:-.03em;margin:9px 0}.contact-panel p{color:#627784;font-size:13px}.booking-layout{display:grid;grid-template-columns:280px 1fr;gap:35px;align-items:start}.side-card{background:#dfeeea;border-radius:17px;padding:26px}.side-card ol{padding-left:20px;margin:22px 0}.side-card li{font-size:13px;font-weight:700;padding:9px 0}.side-card p{font-size:12px;color:#627985;margin:0;line-height:1.8}.side-contact{margin-top:20px;font-size:12px;color:var(--muted)}.side-contact a{display:block;font-weight:800;color:#d17e5e}.booking-form{padding:0 35px}.form-block{padding:33px 0;border-bottom:1px solid #e9eeeb}.form-block:last-child{border:0}.form-step{color:#d4805e;font-weight:800;font-size:10px;letter-spacing:.15em}.form-block h2{font-size:23px;margin:9px 0 24px}.choice-row{display:flex;gap:12px;margin-bottom:24px}.choice-row label input{position:absolute;opacity:0;width:1px;height:1px}.choice-row label span{display:flex;align-items:center;gap:9px;padding:11px 16px;border:1px solid #dfe5e3;border-radius:10px;color:#647985;font-size:12px;font-weight:800;cursor:pointer}.choice-row label input:checked+span{background:#e7f1ef;border-color:#8ebcb7;color:#17484c}.choice-row label input:focus-visible+span{outline:3px solid #f4b398}.submit-large{width:100%;height:51px}.form-footnote{font-size:11px;color:#8a9ba3;text-align:center;margin:13px 0 0}.success-state{text-align:center;padding:35px 15px}.success-icon{width:60px;height:60px;border-radius:50%;background:#e2f2e8;color:#3d8b62;display:grid;place-items:center;margin:0 auto 20px;font-size:31px}.success-state h2{font-size:27px;margin-bottom:8px}.success-state p{color:var(--muted)}.success-state>span{display:block;font-size:11px;color:#9aabb3;margin-bottom:24px}.narrow{max-width:780px}.prose h2{font-size:23px;color:var(--navy);margin:30px 0 10px}.prose h2:first-child{margin-top:0}.prose p{color:#5f7580;line-height:1.9}.admin-root{min-height:300px}.login-card{max-width:400px;margin:auto}.admin-bar{display:flex;gap:12px;align-items:stretch;margin-bottom:25px}.admin-bar>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px 20px;min-width:140px}.admin-bar strong{display:block;font-size:23px}.admin-bar span{font-size:11px;color:var(--muted)}.admin-bar .btn{margin-left:auto}.admin-tabs{display:flex;border-bottom:1px solid #dbe3e2;gap:20px;margin-bottom:19px}.admin-tabs button{border:0;background:transparent;padding:13px 4px;color:var(--muted);font-weight:800;font-size:13px}.admin-tabs .selected{color:#d67e5d;border-bottom:3px solid #d67e5d}.admin-list{display:grid;gap:10px}.admin-item{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 20px}.admin-item-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.admin-item strong{font-size:14px}.admin-item p{font-size:12px;margin:9px 0 4px}.admin-item small{font-size:11px;color:#8a9ca5}.admin-item .admin-notes{background:#f7f8f6;padding:10px;border-radius:8px}.status-select{width:auto;font-size:11px;min-height:34px;padding:4px 9px;margin:0}.small-btn{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 10px;font-size:11px}.departure-form{margin-bottom:20px}.departure-form h2{font-size:20px}.live-head{margin-top:25px}
@media(max-width:1100px){.desktop-nav{gap:13px}.header-inner{gap:18px}.header-cta{padding:11px}.destinations,.trust-grid,.partner-grid,.carrier-intro{gap:40px}}
@media(max-width:900px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:12px 24px 25px;gap:10px;background:#fff;border-top:1px solid var(--line)}.mobile-nav a{font-size:14px;font-weight:700;padding:7px}.hero{padding-top:60px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding-bottom:5px}.hero-search{transform:translateY(45px)}.search-fields{grid-template-columns:1fr 30px 1fr}.search-fields label:nth-of-type(3){grid-column:1/3}.search-fields .btn{grid-column:3/4}.feature-grid{grid-template-columns:repeat(2,1fr)}.destinations,.trust-grid,.steps,.carrier-intro,.partner-grid{grid-template-columns:1fr;gap:30px}.destination-cards{grid-template-columns:1fr 1fr}.conditions-grid{grid-template-columns:1fr}.side-index{position:static;flex-direction:row;flex-wrap:wrap}.booking-layout{grid-template-columns:1fr}.booking-side{display:none}.footer-grid{grid-template-columns:2fr 1fr 1fr}.footer-note{grid-column:1/-1;border-left:0;border-top:1px solid #2d485b;padding:20px 0 0}.footer-note p{max-width:100%}}
@media(max-width:620px){.wrap{width:min(100% - 32px,1180px)}.header-inner{height:68px}.brand{font-size:22px}.brand-mark{width:36px;height:36px}.hero{padding-top:45px}.hero h1{font-size:43px}.hero-copy>p{font-size:14px}.hero-proof{gap:10px 20px}.hero-proof span{font-size:11px}.art-route,.art-pin,.art-caption{display:none}.hero-search{transform:translateY(40px)}.search-card{padding:18px}.search-hint{display:none}.search-fields{grid-template-columns:1fr 25px 1fr;gap:9px}.search-fields label:first-child{grid-column:1/2}.search-fields label:nth-of-type(2){grid-column:3/4}.search-fields label:nth-of-type(3){grid-column:1/-1}.search-fields .btn{grid-column:1/-1}.search-fields input{font-size:12px}.search-bottom{display:none}.section{padding:68px 0}.hero+.section{padding-top:103px}.section-head h2{font-size:30px}.feature-grid,.destination-cards,.step-row,.price-grid,.carrier-list,.contact-grid,.form-grid{grid-template-columns:1fr}.feature{min-height:0}.destinations{gap:20px}.destination-card{min-height:135px}.trust-grid{gap:15px}.trust-list>div{padding:17px 0}.steps{gap:10px}.step-row>div{min-height:0}.cta-inner,.compact-cta{align-items:flex-start;flex-direction:column}.cta-section{padding:55px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-note{grid-column:1/-1}.footer-bottom{margin-top:35px;gap:10px;flex-direction:column}.page-hero{padding:55px 0}.page-hero h1{font-size:39px}.page-hero p{font-size:13px}.filter-grid{grid-template-columns:1fr 1fr}.filter-grid label:nth-child(3){grid-column:1/-1}.filter-grid .btn{grid-column:1/-1}.empty-results{align-items:flex-start;flex-direction:column}.empty-results .btn{margin:0}.price-row{align-items:flex-start}.price-row span{font-size:11px}.departure-card{flex-direction:column}.departure-card>div:last-child{align-items:flex-start;text-align:left}.article-card{padding:25px}.side-index{gap:9px}.side-index strong{width:100%}.article-cta{padding:25px}.form-card{padding:24px}.booking-form{padding:0 22px}.form-block{padding:27px 0}.form-grid .full{grid-column:1}.contact-panel{grid-column:1}.contact-card{min-height:225px}.admin-bar{flex-wrap:wrap}.admin-bar>div{flex:1}.admin-bar .btn{width:100%;margin-left:0}.admin-item-top{align-items:flex-start;flex-direction:column}.status-select{width:100%}}
@media(min-width:901px){.hero{padding-top:54px}.hero-grid{min-height:330px}.hero-copy{padding-bottom:38px}}
@media(min-width:901px) and (max-width:1100px){.header-cta{display:none}}
@media(max-width:620px){.hero h1{font-size:39px}.hero-search{transform:translateY(26px)}.hero+.section{padding-top:95px}}
@media(min-width:901px){.hero{padding-top:34px}.hero h1{font-size:58px;line-height:1.07;margin-bottom:16px}.hero-kicker{margin-bottom:14px}.hero-copy>p{margin-bottom:16px}.hero-copy{padding-bottom:10px}.hero-search{transform:translateY(22px)}}
@media(min-width:901px) and (max-width:1250px){.header-cta{display:none}}
:root {
  --navy: #112b4f;
  --navy2: #173d70;
  --ink: #183458;
  --muted: #64758c;
  --cream: #f4f7fb;
  --paper: #ffffff;
  --coral: #ef6b27;
  --orange: #ffd439;
  --line: #dce5f0;
  --teal: #e9f2ff;
  --shadow: 0 20px 55px rgba(17, 52, 99, .12);
}

body { background: #fff; }
#app { display: flow-root; }
.site-shell { overflow: clip; }
.initial-loading { max-width:680px; margin:64px auto; padding:24px; color:var(--ink); }
.initial-loading a { color:#0d5db5; text-decoration:underline; }
.header { border-bottom: 1px solid #e6edf6; }
.header-inner { height: 80px; }
.brand, .brand-story-name { color: #111c2b; font-style: italic; letter-spacing: -.07em; }
.brand-mark { background: transparent; border-radius: 0; flex: 0 0 60px; width: 60px; height: 60px; }
.brand-mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.brand-accent { color: #ed5c23; }
.desktop-nav a { color: #36506f; }
.desktop-nav a:hover, .desktop-nav a[aria-current] { color: #0d57af; }
.eyebrow { color: #0e60bd; }
.btn { border-radius: 10px; }
.btn-dark { background: #0c58b3; color: #fff; }
.btn-dark:hover { background: #06458f; }
.btn-coral { background: #ffcf24; color: #142844; }
.btn-coral:hover { background: #ffc40b; }
.btn-outline { border-color: #aac6e8; color: #0e5caf; }
.btn-light { color: #0e5caf; }
.btn:focus-visible, a:focus-visible, button:focus-visible { outline: 3px solid #ef6b27; outline-offset: 3px; }

.hero {
  color: #142c4b;
  background: linear-gradient(165deg, #fff 0%, #f7fbff 70%, #eef6ff 100%);
  padding: 54px 0 0;
  border-bottom: 1px solid #dce8f7;
}
.hero::before {
  border: 0;
  width: 660px;
  height: 660px;
  top: -330px;
  right: -290px;
  background: radial-gradient(circle, rgba(255, 217, 53, .23), transparent 67%);
}
.hero-grid { grid-template-columns: .95fr 1.05fr; gap: 34px; min-height: 395px; }
.hero-copy { padding: 0 0 25px; }
.hero-kicker { color: #0a5ab5; font-size: 11px; margin-bottom: 15px; }
.dot { background: #ef6b27; box-shadow: 0 0 0 5px rgba(239, 107, 39, .14); }
.hero h1 { color: #142c4b; font-size: clamp(42px, 4.7vw, 65px); margin-bottom: 16px; }
.hero h1 em { color: #0b5cba; }
.hero-copy > p { color: #4e6077; line-height: 1.7; margin-bottom: 15px; }
.hero-proof { gap: 12px 22px; }
.hero-proof span { color: #284967; }
.hero-proof svg { color: #ef6b27; }
.legacy-line {
  display: flex;
  flex-direction: column;
  gap: 3px;
  width: fit-content;
  max-width: 100%;
  padding: 11px 15px 11px 17px;
  margin: 19px 0 19px;
  border-left: 4px solid #ffce1c;
  border-radius: 0 8px 8px 0;
  background: #fff9dc;
}
.legacy-line span { color: #a35619; font-size: 10px; font-weight: 900; letter-spacing: .13em; }
.legacy-line strong { color: #203d61; font-size: 13px; line-height: 1.45; }
.brand-visual { position: relative; align-self: center; isolation: isolate; }
.brand-visual::after {
  content: '';
  position: absolute;
  inset: 12% -1% 5%;
  border-radius: 38px;
  background: #c9ddf5;
  opacity: .2;
  filter: blur(30px);
  z-index: -1;
}
.brand-visual img { width: 100%; height: auto; display: block; mix-blend-mode: multiply; }
.brand-visual { min-width: 0; }
.hero-copy, .hero-benefits > *, .hero-benefits span { min-width: 0; }
.hero-benefits strong, .hero-benefits small { overflow-wrap: anywhere; }
.form-grid > *, .filter-grid > *, .date-controls > *, .booking-layout > *, .parcel-layout > *, .partner-grid > *, .footer-grid > * { min-width: 0; }
.admin-list > *, .admin-item-top > *, .order-summary-main, .carrier-admin-head > *, .schedule-admin-head > * { min-width: 0; }
.admin-item, .order-summary-main, .carrier-admin-head, .schedule-admin-head { overflow-wrap: anywhere; }
input, select, textarea { min-width: 0; max-width: 100%; }
.page-hero h1, .section-head h2, .contact-card strong, .prose, .form-message { overflow-wrap: anywhere; }
.choice-row { flex-wrap: wrap; }
.choice-row label { min-width: 0; max-width: 100%; }
.choice-row label span { overflow-wrap: anywhere; }
.country-trigger > span { min-width: 0; overflow-wrap: anywhere; }
.hero-search { transform: translateY(35px); }
.search-card { border: 1px solid #dfebf8; border-radius: 17px; position: relative; overflow: visible; box-shadow: 0 23px 58px rgba(11, 54, 111, .14); }
.search-card:focus-within { z-index: 20; }
.hero-search { position: relative; z-index: 2; }
.search-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, #0a61c2 0 42%, #ffd325 42% 76%, #ed6125 76%); }
.search-label { color: #0c58b3; }
.search-fields input, input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])), select, textarea { border-color: #d7e2ef; }
.search-fields input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])):focus, input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])):focus, select:focus, textarea:focus { border-color: #1b66bc; box-shadow: 0 0 0 3px rgba(27, 102, 188, .12); }
.search-bottom a { background: #eef5ff; color: #0d57aa; }
.search-bottom a:hover { background: #dfedff; }
.search-countries { display: flex; flex-wrap: wrap; gap: 12px; margin: 0 0 14px; }
.search-countries label { display: grid; gap: 4px; min-width: 185px; color: #486789; font-size: 11px; font-weight: 800; }
.search-countries select { min-height: 40px; margin: 0; padding: 8px 34px 8px 11px; border: 1px solid #d5e4f3; border-radius: 9px; background: #f9fcff; color: #173f69; font-size: 12px; }
@media (max-width: 620px) { .search-countries { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; } .search-countries label { min-width: 0; } .search-countries select { width: 100%; } }

.section-cream { background: #f4f8fd; }
.hero + .section { padding-top: 120px; }
.feature { border-color: #e2eaf3; }
.feature-icon { background: #e9f2ff; color: #0b5bb5; }
.feature:nth-child(2) .feature-icon { background: #fff6cf; color: #a06c00; }
.feature:nth-child(3) .feature-icon { background: #ffecdf; color: #dd5d20; }
.feature:nth-child(4) .feature-icon { background: #e6f3ff; color: #0b5bb5; }
.destination-card { background: #e9f2ff; }
.destination-card.alt { background: #fff5d8; }
.destination-code, .destination-card.alt .destination-code { color: #0d5db7; }
.destination-card h3 span, .departure-card h3 span { color: #ed6b2c; }
.text-link, .article-card a, .prose a { color: #0d5fb7; }
.section-blue { background: #0d4f9b; }
.section-blue .eyebrow, .footer .eyebrow { color: #ffdb50; }
.feature-num { color: #687e94; }
.destination-card h3, .destination-card p { padding-right: 26px; overflow-wrap: anywhere; }
.destination-card > svg { right: 20px; }
.section-blue .section-head p, .trust-list p { color: #d7e7f7; }
.trust-list > div > span { color: #ffd538; }
.step-row > div { border-color: #dee8f4; }
.step-row strong { background: #ffecaa; color: #765800; }
.cta-section { background: #fff1b8; }
.cta-inner p { color: #526986; }

.brand-story { padding: 73px 0; background: #f5f9fe; border-block: 1px solid #e5eef9; }
.brand-story-inner { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 65px; }
.brand-story-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 17px;
  min-height: 210px;
  padding: 24px;
  border-radius: 23px;
  background: #fff;
  border: 1px solid #dce9f7;
  box-shadow: 0 16px 35px rgba(23, 68, 120, .07);
  transform: none;
  white-space: nowrap;
}
.brand-story-name { font-size: clamp(27px, 3vw, 41px); font-weight: 900; }
.brand-story-copy h2 { color: #14365f; font-size: clamp(29px, 3vw, 42px); line-height: 1.16; letter-spacing: -.04em; margin: 10px 0 15px; }
.brand-story-copy p { max-width: 610px; color: #526983; line-height: 1.8; margin: 0; }
.community-section { padding: 22px 0; background: #eaf3ff; }
.community-inner { display: flex; align-items: center; gap: 23px; }
.community-icon { width: 53px; height: 53px; flex: none; display: grid; place-items: center; background: #0d60bb; color: #fff; border-radius: 15px; font-size: 27px; font-weight: 800; }
.community-copy { flex: 1; }
.community-copy .eyebrow { font-size: 10px; }
.community-copy h2 { color: #14365f; font-size: 21px; line-height: 1.2; margin: 3px 0 4px; }
.community-copy p { color: #5d7189; font-size: 12px; margin: 0; }
.btn-telegram { background: #0c5db6; color: #fff; }
.btn-telegram:hover { background: #07478d; }

.parcel-promo { padding: 73px 0 26px; background: #fff; }
.parcel-promo-inner { display: flex; align-items: center; gap: 18px; padding: 21px 24px; border: 1px solid #dce9f8; border-radius: 17px; background: #f0f7ff; }
.parcel-promo-icon { width: 45px; height: 45px; display: grid; place-items: center; flex: none; border-radius: 12px; background: #ffde54; color: #104d8f; font-size: 24px; }
.parcel-promo-inner > div { flex: 1; }
.parcel-promo strong { color: #14365f; font-size: 17px; }
.parcel-promo p { color: #60758c; margin: 2px 0 0; font-size: 12px; }
.parcel-promo + .section { padding-top: 72px; }
.parcel-layout { display: grid; grid-template-columns: 265px 1fr; gap: 32px; align-items: start; }
.parcel-aside { display: grid; gap: 20px; }
.parcel-help { padding: 20px; border: 1px solid #dce9f8; border-radius: 14px; background: #fff; }
.parcel-help strong { display: block; color: #14365f; margin-bottom: 10px; }
.parcel-help a { display: block; color: #0d5db5; font-size: 13px; font-weight: 700; margin-top: 8px; }
.parcel-form { padding: 0 34px; }
.parcel-form .form-block { padding: 30px 0; }
.parcel-check { display: flex; gap: 10px; align-items: center; align-self: end; min-height: 46px; }
.parcel-check input { width: 18px; height: 18px; min-height: 0; margin: 0; accent-color: #0d5db5; }
.parcel-note { margin: 18px 0 0; color: #65798e; font-size: 12px; line-height: 1.7; }
.parcel-note a { color: #0d5db5; text-decoration: underline; }
.request-badge { padding: 4px 9px; border-radius: 999px; background: #e8f2ff; color: #0e5db2; font-size: 11px; font-weight: 800; }
.parcel-summary { margin: 14px 0; padding: 15px; border-radius: 10px; background: #f1f7ff; color: #3a5571; font-size: 12px; line-height: 1.8; }
.parcel-summary strong { color: #183c63; }
.request-details { margin-top: 14px; border-top: 1px solid #e2eaf4; padding-top: 12px; }
.request-details summary { color: #0e5db2; font-size: 12px; font-weight: 800; cursor: pointer; }
.request-edit { padding-top: 15px; }
.request-edit .form-grid { gap: 12px; }
.request-edit .btn { margin-top: 10px; }
.operator-tabs { overflow-x: auto; gap: 22px; }
.operator-tabs button { white-space: nowrap; }
.route-policy { margin-bottom: 20px; background: #e9f3ff; }
.route-admin-list { margin-top: 22px; }
.source-link { display: inline-block; margin-top: 8px; color: #0d5db5; font-size: 12px; font-weight: 700; }
.notification-status { padding: 24px; margin-bottom: 19px; background: #fff5d9; border: 1px solid #f1e0a1; border-radius: 15px; }
.notification-status.ready { background: #eaf6ef; border-color: #c6e6d0; }
.notification-status h2 { margin: 0 0 6px; font-size: 22px; }
.notification-status p { margin: 0 0 13px; color: #536981; font-size: 13px; }
.notification-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.notification-actions button:disabled { opacity: .45; cursor: not-allowed; }
.request-card[data-status="new"] { border-left: 5px solid #24a66c; background: #f4fcf7; }
.request-card[data-status="contacted"], .request-card[data-status="matched"] { border-left: 5px solid #eebf2d; background: #fffaf0; }
.request-card[data-status="confirmed"], .request-card[data-status="cancelled"] { border-left: 5px solid #9bacbc; background: #f4f6f8; }
.request-card[data-status="selected"] { border-left: 5px solid #0d5db5; background: #f2f8ff; }
.carrier-create { margin-bottom: 22px; }
.carrier-create > summary { display: inline-flex; cursor: pointer; padding: 12px 18px; border-radius: 11px; background: #0d5db5; color: #fff; font-weight: 800; }
.carrier-create .form-card { margin-top: 15px; }
.carrier-admin-list { gap: 18px; }
.carrier-admin-card { padding: 24px; }
.carrier-admin-head { display: flex; gap: 17px; align-items: center; }
.carrier-admin-head strong { display: block; color: #153b64; font-size: 19px; }
.carrier-admin-head p { margin: 5px 0; color: #59718a; font-size: 13px; }
.carrier-admin-head small { color: #0d5db5; font-weight: 700; }
.carrier-thumb { width: 110px; height: 82px; flex: none; display: grid; place-items: center; text-align: center; padding: 6px; border-radius: 10px; background: #eaf3ff; color: #4e759f; font-size: 11px; }
.carrier-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 7px; }
.carrier-admin-card details { margin-top: 16px; border-top: 1px solid #e1eaf4; padding-top: 12px; }
.carrier-admin-card summary { cursor: pointer; color: #0d5db5; font-weight: 800; }
.carrier-admin-card form { margin-top: 15px; }
.carrier-admin-card form .btn { margin-top: 12px; }
.carrier-admin-card .form-grid { gap: 12px; }
.catalog-check { display: flex; align-items: center; gap: 9px; font-size: 13px; color: #365878; }
.catalog-check input { width: 18px; height: 18px; min-height: 0; margin: 0; accent-color: #0d5db5; }
.photo-form { display: flex; align-items: end; flex-wrap: wrap; gap: 12px; }
.photo-form label { flex: 1; min-width: 200px; font-size: 12px; font-weight: 700; }
.photo-form input { width: 100%; margin-top: 5px; }
.schedule-admin-list { margin-top: 24px; }
.schedule-admin-list h3 { font-size: 16px; color: #183b61; }
.schedule-admin-item { padding: 12px 0; border-bottom: 1px solid #e1eaf4; }
.schedule-admin-head { display: flex; justify-content: space-between; gap: 10px; }
.schedule-admin-head strong, .schedule-admin-head small { display: block; }
.schedule-admin-head small { margin-top: 4px; color: #667d95; line-height: 1.5; }
.weekdays-field { border: 1px solid #dce6f1; border-radius: 10px; padding: 12px; }
.weekdays-field legend { font-size: 12px; font-weight: 800; color: #1b456e; }
.weekday-grid { display: flex; flex-wrap: wrap; gap: 10px; }
.weekday-grid label { display: flex; align-items: center; gap: 4px; min-width: 45px; font-weight: 700; }
.weekday-grid input { min-height: 0; width: 16px; height: 16px; margin: 0; accent-color: #0d5db5; }
.cancel-date-form { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; }
.cancel-date-form label { min-width: 200px; }
.cancelled-dates { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.cancelled-dates span { border-radius: 20px; padding: 5px 10px; background: #fff0ed; color: #a4432d; font-size: 11px; }
.cancelled-dates button { border: 0; background: transparent; color: inherit; cursor: pointer; font-weight: 900; }
.catalog-heading h2 { font-size: clamp(27px, 3vw, 40px); margin: 6px 0; color: #173b62; }
.catalog-heading p { margin: 0 0 20px; color: #5f7790; }
.public-carrier-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
.carrier-intro { display: block; }
.carrier-intro > div:first-child { margin-bottom: 25px; }
.public-carrier-card { overflow: hidden; border-radius: 17px; border: 1px solid #dce9f5; background: #fff; box-shadow: 0 13px 30px rgba(17,61,107,.06); }
.public-carrier-photo { height: 210px; display: grid; place-items: center; background: linear-gradient(130deg,#e7f2ff,#fff2c0); color: #0d5db5; }
.public-carrier-photo img { width: 100%; height: 100%; object-fit: cover; }
.public-carrier-body { padding: 23px; }
.public-carrier-body h3 { margin: 9px 0 7px; color: #163a62; font-size: 26px; }
.public-carrier-body > p { color: #5b728a; line-height: 1.6; }
.vehicle-facts { display: flex; flex-wrap: wrap; gap: 7px; margin: 12px 0; }
.vehicle-facts span { background: #eaf3ff; color: #1a5b9d; border-radius: 20px; padding: 5px 9px; font-size: 11px; font-weight: 700; }
.public-carrier-body details { border-top: 1px solid #e0e9f3; border-bottom: 1px solid #e0e9f3; padding: 12px 0; }
.public-carrier-body summary { cursor: pointer; color: #0d5db5; font-weight: 800; }
.public-carrier-body details p { color: #61778d; font-size: 13px; }
.public-schedules { display: grid; gap: 10px; }
.public-schedules > div { padding: 10px; background: #f4f8fd; border-radius: 9px; }
.public-schedules strong, .public-schedules span, .public-schedules small, .public-schedules a { display: block; margin: 3px 0; }
.public-schedules span, .public-schedules small { color: #5b728b; font-size: 12px; }
.public-schedules a { color: #0d5db5; font-size: 12px; font-weight: 700; }
.upcoming-trips { margin-top: 16px; }
.upcoming-trips > strong { display: block; margin-bottom: 7px; color: #163c64; }
.upcoming-trips > a { display: flex; justify-content: space-between; gap: 10px; padding: 9px 0; border-bottom: 1px solid #e6edf5; color: #1a4f83; font-size: 12px; }
.upcoming-trips b { white-space: nowrap; }

.footer { background: #102b52; }
.footer-grid p, .footer-grid a:not(.brand) { color: #bdd0e7; }
.footer-bottom { border-color: #315174; color: #9fb9d3; }
.page-hero { background: #0e519e; overflow: hidden; }
.page-hero::after { border: 0; border-radius: 0; width: 480px; height: 180px; top: auto; bottom: -90px; right: -90px; transform: rotate(-22deg); background: linear-gradient(180deg, #ffda32 0 38%, transparent 38% 50%, #ed6729 50% 78%, transparent 78%); opacity: .9; }
.page-hero .wrap { position: relative; z-index: 1; }
.page-hero .eyebrow { color: #ffdb50; }
.page-hero p { color: #e1ecf8; }
.empty-results { background: #eaf3ff; border-color: #d3e4f6; }
.empty-icon, .article-icon, .contact-icon { color: #0e5eb6; background: #e8f2ff; }
.empty-results p { color: #5f748d; }
.price-row svg, .price-row strong, .departure-date, .contact-card small { color: #0d5db5; }
.info-banner { background: #fff4d7; color: #655a3f; }
.info-banner svg { color: #df6d2d; }
.side-index a:hover, .side-contact a { color: #0b5cb6; }
.article-cta, .side-card { background: #eaf3ff; }
.check-list li::before, .choice-row label input:checked + span { background: #e5f1ff; color: #0e5fb5; border-color: #a7cbf2; }
.check-label input { accent-color: #0d5db5; }
.check-label a, .contact-card > span:last-child { color: #0d5db5; }
.contact-panel { background: #fff2be; }
.form-step, .admin-tabs .selected { color: #0d5db5; }
.admin-tabs .selected { border-bottom-color: #0d5db5; }
.child-age-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 12px; margin-top: 8px; }
.child-age-fields > span { font-size: 13px; font-weight: 700; }
.cabin-gallery { display: flex; gap: 10px; overflow-x: auto; margin: 14px 0; }
.cabin-gallery > img, .cabin-gallery > div img { width: 150px; height: 105px; object-fit: cover; border-radius: 10px; }
.cabin-gallery > div { flex: none; display: grid; gap: 5px; }
.media-form { display: flex; align-items: end; flex-wrap: wrap; gap: 12px; }
.media-form label { flex: 1; min-width: 180px; }
.media-form input, .media-form select { width: 100%; }
.carrier-brief { width: 100%; margin: 8px 0; font-family: inherit; line-height: 1.45; }
.availability-form { display: grid; gap: 10px; }
.availability-form label { max-width: 360px; }
.availability-form input { width: 100%; }

/* Shared form controls and city suggestions */
[hidden] { display: none !important; }
input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])), select, textarea { border-color: #cbd9e9; background-color: #fff; transition: border-color .18s, box-shadow .18s; }
input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])):hover, select:hover, textarea:hover { border-color: #93b5dc; }
input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])):focus-visible, select:focus-visible, textarea:focus-visible { border-color: #0d5db5; box-shadow: 0 0 0 3px rgba(13,93,181,.16); outline: none; }
select { padding-right: 35px; accent-color: #0d5db5; }
input::placeholder, textarea::placeholder { color: #879bb1; opacity: 1; }
.form-grid label small { display: block; margin-top: 5px; color: #74879d; font-size: 11px; font-weight: 500; line-height: 1.45; }
.city-combobox { position: relative; width: 100%; }
.city-combobox > input { width: 100%; }
.search-fields .city-combobox > input { margin-top: 0; }
.city-suggestions { position: absolute; z-index: 80; left: 0; right: 0; top: calc(100% + 5px); max-height: 280px; overflow-y: auto; overflow-x: hidden; padding: 6px; border: 1px solid #bdd4ed; border-radius: 12px; background: #fff; box-shadow: 0 16px 35px rgba(16,55,103,.18); }
.city-option { display: flex; justify-content: space-between; gap: 12px; align-items: center; width: 100%; padding: 10px 12px; border: 0; border-radius: 8px; color: #193c64; background: transparent; text-align: left; }
.city-option strong { font-size: 13px; }
.city-option small { color: #6b829d; font-size: 11px; white-space: nowrap; }
.city-option strong { min-width: 0; overflow-wrap: anywhere; }
.city-option:hover, .city-option.active { background: #eaf3ff; }
.city-no-result { padding: 10px 12px; color: #6b829d; font-size: 12px; }
.country-picker { position: relative; width: 100%; }
.country-picker:focus-within { z-index: 90; }
.country-trigger { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; min-width: 0; min-height: 46px; margin-top: 6px; padding: 10px 12px; border: 1px solid #cbd9e9; border-radius: 9px; background: #fff; color: #193c64; font: inherit; font-weight: 700; text-align: left; white-space: normal; overflow-wrap: anywhere; box-shadow: 0 2px 5px rgba(16,55,103,.03); }
.country-trigger::after { content: ''; flex: none; width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%230d5db5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .18s; }
.country-trigger[aria-expanded="true"]::after { transform: rotate(180deg); }
.country-trigger:hover { border-color: #93b5dc; background: #f9fcff; }
.country-trigger:focus-visible { outline: none; border-color: #0d5db5; box-shadow: 0 0 0 3px rgba(13,93,181,.16); }
.country-suggestions { position: absolute; z-index: 100; top: calc(100% + 5px); left: 0; width: 100%; min-width: 190px; max-height: 268px; overflow-y: auto; padding: 6px; border: 1px solid #bdd4ed; border-radius: 12px; background: #fff; box-shadow: 0 16px 35px rgba(16,55,103,.18); }
.country-option { display: block; width: 100%; padding: 9px 12px; border: 0; border-radius: 8px; background: transparent; color: #193c64; text-align: left; font-size: 13px; }
.country-option:hover, .country-option:focus-visible, .country-option[aria-selected="true"] { background: #eaf3ff; color: #0d5db5; outline: none; }
.route-endpoint select[name$="Country"] { font-weight: 700; color: #193c64; background-color: #fff; box-shadow: 0 2px 5px rgba(16,55,103,.03); }
.inline-choice { display: flex; align-items: center; gap: 9px; }
.inline-choice input { width: 18px; height: 18px; min-height: 0; margin: 0; accent-color: #0d5db5; }
.booking-for-other { padding: 14px 16px; border: 1px solid #cbdff3; border-radius: 11px; background: #f4f9ff; cursor: pointer; }
.booking-for-other span { display: grid; gap: 2px; }
.booking-for-other strong { color: #174778; font-size: 13px; }
.booking-for-other small { margin: 0 !important; }
.route-date { max-width: 310px; margin-bottom: 16px; }
.route-date label, .route-endpoint label { display: block; }
.route-date input { width: 100%; }
.route-endpoints { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.route-endpoint { min-width: 0; padding: 18px; border: 1px solid #dce8f4; border-radius: 13px; background: #f9fcff; }
.route-endpoint h3 { margin: 0 0 12px; color: #153e69; font-size: 17px; }
.route-endpoint .form-grid { grid-template-columns: 1fr; gap: 12px; }
.route-endpoint .route-address { margin-top: 12px; padding-top: 12px; border-top: 1px solid #dce8f4; }

/* Keep native controls readable and consistent with the other form controls. */
input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])), select, textarea { min-height: 44px; border: 1px solid #cbd9e9; border-radius: 9px; font: inherit; }
textarea { min-height: 92px; resize: vertical; }
select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%230d5db5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 18px; }
input:is([type="checkbox"], [type="radio"]) { display:inline-block; width:20px; height:20px; min-width:20px; min-height:20px; padding:0; margin:0; flex:0 0 20px; border:0; background:transparent; box-shadow:none; accent-color:#0d5db5; appearance:auto; cursor:pointer; }
input:is([type="checkbox"], [type="radio"]):focus { box-shadow:none; outline:none; }
input:is([type="checkbox"], [type="radio"]):focus-visible { outline:2px solid #0d5db5; outline-offset:3px; }
input[type="radio"] { border-radius:50%; }
.form-card button:disabled, .btn:disabled { opacity: .55; cursor: wait; }
.city-combobox:focus-within { z-index: 25; }
.route-filter { overflow: visible; }
.route-filter:focus-within { position: relative; z-index: 15; }
.route-results { margin-top: 27px; }
.route-answer { padding: 24px 28px; border: 1px solid #dce8f5; border-radius: 16px; background: #fff; box-shadow: 0 10px 25px rgba(17,52,99,.06); }
.route-answer h2 { margin: 7px 0 11px; color: #14365f; font-size: clamp(22px,3vw,30px); }
.route-answer p { color: #60758c; font-size: 13px; line-height: 1.65; }
.route-answer .btn { margin-top: 8px; }
.team-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.team-card { min-width: 0; overflow: hidden; border: 1px solid #dce8f5; border-radius: 16px; background: #fff; box-shadow: 0 10px 25px rgba(17,52,99,.06); }
.team-image { display: flex; align-items: center; justify-content: center; height: 220px; padding: 18px; overflow: hidden; background: linear-gradient(145deg,#f8fbff,#edf5fc); }
.team-image img { display: block; width: 100%; height: 100%; min-width: 0; min-height: 0; object-fit: contain; }
.team-card-body { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 5px 12px; padding: 16px 18px 18px; }
.team-card h3 { margin: 0; color: #14365f; font-size: 17px; }
.team-card-body span { color: #60758c; font-size: 11px; }
.team-note { margin: 16px 0 0; color: #60758c; font-size: 13px; line-height: 1.65; }
@media (max-width: 900px) { .team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px) { .team-grid { grid-template-columns: 1fr; } .team-image { height: 245px; } }
.workflow-help { padding: 12px 16px; margin: 16px 0; border-radius: 10px; background: #f4f8fd; color: #526d86; font-size: 12px; line-height: 1.6; }
.estimate-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 18px 0; }
.estimate-card { padding: 22px; border: 1px solid #dce8f5; border-radius: 15px; background: #fff; box-shadow: 0 10px 25px rgba(17,52,99,.06); }
.estimate-card:nth-child(2) { border-color: #a9c9ec; }
.estimate-card:nth-child(3) { border-color: #f2d786; }
.estimate-card span { display: block; color: #0c58b3; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.estimate-card strong { display: block; margin: 8px 0; color: #14365f; font-size: 33px; line-height: 1.1; }
.estimate-card p { margin: 0; color: #60758c; font-size: 12px; line-height: 1.55; }
.estimate-note { color: #526b85; font-size: 13px; line-height: 1.65; }
.estimate-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 18px; }
.parcel-estimate { padding: 18px 22px; margin-top: 25px; border: 1px solid #dce8f5; border-radius: 13px; background: #f6faff; }
.parcel-estimate h3 { margin: 0 0 7px; color: #14365f; }
.parcel-estimate p { margin: 0; color: #60758c; font-size: 13px; line-height: 1.6; }
.submission-banner { padding: 22px 24px; margin-bottom: 24px; border: 1px solid #b5d6b7; border-left: 5px solid #2f9950; border-radius: 14px; background: #f2fff4; }
.submission-banner h2 { margin: 0 0 7px; color: #175b2b; font-size: 22px; }
.submission-banner p { margin: 0; color: #355c3d; line-height: 1.6; }
.submission-banner strong { display: inline-block; margin-top: 8px; color: #175b2b; }
.rule-list { margin: 10px 0 0; padding-left: 22px; color: #526983; line-height: 1.75; }
.article-card h3 { color: #173e68; margin: 20px 0 5px; font-size: 17px; }
.official-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.official-links a { display: inline-flex; align-items: center; padding: 8px 11px; border: 1px solid #d5e6f7; border-radius: 8px; background: #f6faff; font-size: 12px; font-weight: 700; }
.hotline-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 16px; }
.hotline-grid a { display: block; padding: 13px; border: 1px solid #dce8f5; border-radius: 10px; background: #f8fbff; text-decoration: none; }
.hotline-grid strong, .hotline-grid span { display: block; }
.hotline-grid strong { font-size: 20px; }
.hotline-grid span { color: #62768b; font-size: 11px; }
@media (max-width: 700px) { .estimate-grid { grid-template-columns: 1fr; } .hotline-grid { grid-template-columns: 1fr; } }
@media (max-width: 620px) {
  .search-fields .city-suggestions { right: auto; width: min(250px, calc(100vw - 64px)); }
  .search-fields label:nth-of-type(2) .city-suggestions { left: auto; right: 0; }
}

/* Operator orders and matching */
.order-toolbar { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin: 0 0 16px; }
.order-toolbar h2 { margin: 0 0 3px; color: #163b65; font-size: 25px; }
.order-toolbar p { margin: 0; color: #607895; font-size: 12px; }
.order-filters { display: flex; gap: 10px; align-items: end; }
.order-filters label { color: #315677; font-size: 11px; font-weight: 800; }
.order-filters input { width: 220px; }
.order-filters select { width: 155px; }
.order-list { gap: 12px; }
.order-list .request-card { padding: 0; overflow: visible; border: 1px solid #dce8f4; border-radius: 13px; background: #fff; box-shadow: 0 7px 19px rgba(17,52,99,.04); }
.order-list .request-card[data-status="new"] { border-left: 5px solid #24a66c; }
.order-list .request-card[data-status="contacted"], .order-list .request-card[data-status="matched"] { border-left: 5px solid #eebf2d; }
.order-list .request-card[data-status="selected"] { border-left: 5px solid #0d5db5; }
.order-list .request-card[data-status="confirmed"], .order-list .request-card[data-status="cancelled"] { border-left: 5px solid #9bacbc; }
.request-detail { border: 0; }
.request-detail[open] .order-chevron { transform: rotate(180deg); }
.operator-flow { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 22px; padding: 12px 16px; border: 1px solid #d7e6f5; border-radius: 12px; background: #fff; color: #6a8098; font-size: 12px; font-weight: 800; }
.operator-flow .current { padding: 6px 10px; border-radius: 8px; background: #eaf3ff; color: #0d5db5; }
.operator-tabs button span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; margin-left: 3px; border-radius: 12px; background: #eaf3ff; color: #155a9f; font-size: 10px; }
.stage-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 11px 18px 15px; border-top: 1px solid #e3edf7; }
.stage-actions .btn { min-height: 38px; padding: 9px 13px; font-size: 11px; }
.stage-actions .small-btn { min-height: 38px; }
.stage-actions small { color: #667d95; font-size: 11px; }
.stage-actions .stage-message { flex-basis: 100%; }
.stage-actions .stage-message:empty { display: none; }
.stage-actions button:disabled { opacity: .5; cursor: not-allowed; }
.order-summary { display: flex; gap: 15px; align-items: center; padding: 17px 20px; list-style: none; cursor: pointer; }
.order-summary::-webkit-details-marker { display: none; }
.order-summary-main { min-width: 0; flex: 1; }
.order-summary-main strong, .order-summary-main small { display: block; }
.order-summary-main strong { color: #163b65; font-size: 16px; }
.order-summary-main small { margin-top: 3px; color: #667e98; font-size: 12px; }
.request-badge { display: inline-block; flex: none; padding: 5px 9px; border-radius: 20px; color: #0c59aa; background: #e7f1ff; font-size: 10px; font-weight: 800; }
.request-card[data-kind="parcel"] .request-badge { color: #9c5418; background: #fff0cb; }
.order-status { flex: none; font-size: 11px; font-weight: 800; color: #436484; }
.order-status small { display: block; margin-top: 3px; color: #6e8399; font-size: 10px; font-weight: 600; }
.order-chevron { color: #3974b0; font-size: 22px; transition: transform .2s; }
.order-expand-control { display: inline-flex; align-items: center; gap: 8px; flex: none; padding: 7px 9px 7px 12px; border: 1px solid #c6dbf2; border-radius: 10px; background: #f1f7ff; color: #0d5db5; font-size: 11px; font-weight: 800; white-space: nowrap; }
.order-expand-control .order-chevron { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 6px; background: #dcecff; font-size: 19px; line-height: 1; }
.request-detail[open] .order-open-label, .request-detail:not([open]) .order-close-label { display: none; }
.order-summary:hover .order-expand-control, .order-summary:focus-visible .order-expand-control { border-color: #8bb9e9; background: #e4f0ff; }
.order-summary:focus-visible { outline: 3px solid rgba(13,93,181,.25); outline-offset: -3px; border-radius: 10px; }
.admin-pagination { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin: 16px 0 27px; padding: 12px 15px; border: 1px solid #dce8f4; border-radius: 11px; background: #fff; }
.pagination-count { color: #52718f; font-size: 12px; font-weight: 700; }
.pagination-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; }
.pagination-controls button { min-width: 33px; min-height: 33px; padding: 5px 9px; border: 1px solid #cbdff2; border-radius: 8px; background: #f7fbff; color: #155a9f; font-size: 12px; font-weight: 800; }
.pagination-controls button:hover:not(:disabled) { border-color: #78ade3; background: #eaf3ff; }
.pagination-controls button[aria-current="page"] { border-color: #0d5db5; background: #0d5db5; color: #fff; }
.pagination-controls button:disabled { opacity: .45; cursor: not-allowed; }
.pagination-gap { padding: 0 4px; color: #6d849b; }
.schedule-page-list { display: grid; gap: 10px; }
.order-expanded { padding: 0 20px 22px; border-top: 1px solid #e1ebf5; }
.order-detail-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 18px 0; }
.order-detail-grid section { padding: 14px; border: 1px solid #e3edf7; border-radius: 11px; background: #f9fcff; min-width: 0; overflow-wrap: anywhere; }
.order-detail-grid h3 { margin: 0 0 5px; color: #0e58a5; font-size: 12px; }
.order-detail-grid p { margin: 0; color: #415f7d; font-size: 12px; line-height: 1.6; }
.order-detail-grid a, .match-main a { color: #0d5db5; text-decoration: underline; }
.request-details { margin: 15px 0; }
.request-details summary { color: #0d5db5; font-size: 12px; font-weight: 800; cursor: pointer; }
.request-details form { padding-top: 14px; }
.matches-block { margin: 17px 0; }
.matches-block h3 { margin: 0 0 8px; color: #163b65; font-size: 15px; }
.candidate-list { display: grid; gap: 9px; }
.match-card { display: flex; justify-content: space-between; gap: 18px; padding: 13px 15px; border: 1px solid #d7e6f5; border-radius: 11px; background: #fff; }
.match-main { min-width: 0; }
.match-main strong, .match-main small, .match-main a { display: block; }
.match-main strong { color: #183d66; font-size: 13px; }
.match-main small, .match-main a { margin-top: 4px; font-size: 11px; line-height: 1.45; }
.match-main small { color: #617c95; }
.match-actions { display: flex; flex-direction: column; gap: 7px; width: 195px; flex: none; }
.seat-inline { display: flex; flex-wrap: wrap; align-items: end; gap: 6px; }
.seat-inline label { flex: 1; color: #5a7390; font-size: 10px; font-weight: 700; }
.seat-inline input { min-height: 34px; padding: 5px 8px; margin-top: 3px; }
.seat-inline .small-btn { min-height: 34px; }
.seat-inline .form-message { flex-basis: 100%; }
.operator-tabs { overflow-x: auto; white-space: nowrap; }
.direction-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 18px; }
.direction-grid > section { border: 1px solid #dce8f4; border-radius: 12px; padding: 16px; min-width: 0; background: #f9fcff; }
.direction-grid h3 { margin: 0 0 10px; color: #173e68; font-size: 16px; }
.direction-grid .schedule-admin-item { background: #fff; border: 1px solid #e0eaf5; border-radius: 9px; padding: 12px; margin-bottom: 10px; }
.direction-grid .add-schedule > summary { margin-top: 13px; }
.schedule-advanced { border: 0 !important; padding: 0 !important; margin: 0 !important; }
.schedule-advanced > summary { font-size: 12px; }
.weekday-grid { gap: 6px; }
.weekday-choice { min-width: 0 !important; padding: 6px 8px; border-radius: 8px; background: #edf5ff; font-size: 11px; }

@media (min-width: 901px) {
  .hero { padding-top: 28px; }
  .hero-grid { min-height: 355px; }
  .hero-copy { padding-bottom: 0; }
  .brand-visual { max-width: 610px; }
  .hero-search { transform: translateY(25px); }
}

@media (max-width: 900px) { .order-detail-grid { grid-template-columns: 1fr 1fr; } .direction-grid { grid-template-columns: 1fr; } }
@media (max-width: 620px) { .order-toolbar { display: block; } .order-filters { margin-top: 12px; } .order-filters label { flex: 1; min-width: 0; } .order-filters input, .order-filters select { width: 100%; } .order-summary { flex-wrap: wrap; gap: 7px 10px; padding: 14px; } .order-summary-main { order: 2; flex-basis: 100%; } .order-status { margin-left: auto; } .order-expand-control { order: 3; margin-left: auto; } .order-expanded { padding: 0 14px 18px; } .order-detail-grid { grid-template-columns: 1fr; } .match-card { display: block; } .match-actions { width: 100%; margin-top: 12px; } .seat-inline { max-width: 260px; } .admin-pagination { align-items: flex-start; } .pagination-controls { width: 100%; } }
@media (max-width: 760px) { .route-endpoints { grid-template-columns: 1fr; } }

@media (max-width: 900px) {
  .hero { padding-top: 44px; }
  .hero-grid { grid-template-columns: 1fr; gap: 3px; }
  .hero-copy { padding-bottom: 0; }
  .brand-visual { width: min(680px, 100%); margin: -10px auto -12px; }
  .brand-story-inner { gap: 25px; }
  .brand-story-mark { min-height: 170px; }
  .parcel-layout { grid-template-columns: 1fr; }
  .parcel-aside { grid-template-columns: 1fr 1fr; }
  .public-carrier-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .header-inner { height: 68px; }
  .hero { padding-top: 34px; }
  .hero h1 { font-size: clamp(36px, 9vw, 45px); }
  .hero-copy > p { font-size: 14px; }
  .legacy-line { margin: 16px 0; }
  .brand-visual { width: min(300px, 100%); margin: -10px auto -8px; }
  .hero-search { transform: translateY(26px); }
  .hero + .section { padding-top: 90px; }
  .brand-story { padding: 55px 0; }
  .brand-story-inner { grid-template-columns: 1fr; gap: 28px; }
  .brand-story-mark { min-height: 130px; padding: 17px; transform: none; gap: 12px; }
  .brand-story-name { font-size: clamp(24px, 7vw, 35px); }
  .community-inner { align-items: flex-start; flex-wrap: wrap; gap: 14px; }
  .community-icon { width: 44px; height: 44px; font-size: 22px; }
  .community-copy { flex-basis: calc(100% - 58px); }
  .community-inner .btn { width: 100%; }
  .page-hero::after { right: -225px; bottom: -115px; opacity: .55; }
  .parcel-promo { padding: 55px 0 14px; }
  .parcel-promo-inner { align-items: flex-start; flex-wrap: wrap; padding: 18px; }
  .parcel-promo-inner > div { flex-basis: calc(100% - 63px); }
  .parcel-promo .btn { width: 100%; }
  .parcel-promo + .section { padding-top: 55px; }
  .parcel-aside { display: none; }
  .parcel-form { padding: 0 22px; }
  .parcel-check { align-self: start; }
  .operator-tabs { gap: 17px; }
  .notification-actions .btn { width: 100%; }
  .carrier-admin-head { align-items: flex-start; }
  .carrier-thumb { width: 75px; height: 70px; }
  .schedule-admin-head { flex-direction: column; }
  .public-carrier-photo { height: 170px; }
  .upcoming-trips > a { flex-direction: column; gap: 3px; }
}

/* Operator workspace */
.operator-hero { padding: 48px 0 52px; }
.operator-hero h1 { font-size: clamp(32px,4vw,48px); margin-bottom: 8px; }
.operator-section { padding: 40px 0 90px; }
.admin-root { min-height: 470px; }
.admin-bar { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)) auto; gap: 10px; align-items: stretch; margin-bottom: 20px; }
.admin-bar > div { min-width: 0; padding: 15px 17px; border: 1px solid #dce8f5; border-radius: 13px; box-shadow: 0 6px 18px rgba(17,52,99,.04); }
.admin-bar strong { color: #124d93; font-size: 27px; line-height: 1.2; }
.admin-bar span { color: #60758c; font-size: 11px; font-weight: 700; }
.admin-bar .btn { align-self: center; margin-left: 3px; }
.operator-tabs { gap: 7px; margin-bottom: 24px; padding: 6px; border: 1px solid #dce8f5; border-radius: 13px; background: #fff; }
.operator-tabs button { min-height: 42px; padding: 10px 15px; border: 0; border-radius: 9px; color: #4e6984; font-size: 12px; white-space: nowrap; }
.operator-tabs button:hover { background: #f0f6fd; color: #0d5db5; }
.operator-tabs button.selected { background: #0d5db5; color: #fff; box-shadow: 0 5px 12px rgba(13,93,181,.18); }
.operator-tabs button span { background: #eaf3ff; color: #155a9f; }
.operator-tabs button.selected span { background: rgba(255,255,255,.2); color: #fff; }
.operator-section .admin-item { padding: 20px; border: 1px solid #dce8f5; border-radius: 13px; background: #fff; box-shadow: 0 7px 20px rgba(17,52,99,.045); }
.operator-section .admin-item strong { color: #173e68; font-size: 14px; }
.operator-section .admin-item p { color: #526b85; line-height: 1.6; }
.operator-section .admin-item a { color: #0d5db5; text-decoration: underline; text-underline-offset: 2px; }
.operator-section .admin-item small { color: #71869c; line-height: 1.5; }
.operator-section .partner-status { min-width: 150px; min-height: 39px; padding: 8px 36px 8px 11px; border-color: #c9def3; background-color: #f7fbff; color: #174778; font-size: 11px; font-weight: 800; }
.operator-section .notification-status { padding: 22px; border-radius: 13px; box-shadow: 0 7px 20px rgba(17,52,99,.04); }
.operator-section .notification-status h2 { color: #173e68; font-size: 20px; }
#partner-message:empty, #notification-message:empty { display: none; }
.operator-flow { width: fit-content; padding: 8px 12px; border-radius: 11px; background: #fff; }
.order-toolbar { align-items: end; margin: 0 0 22px; }
.order-toolbar h2 { margin-top: 4px; font-size: clamp(23px,2.5vw,30px); }
.order-toolbar p { max-width: 540px; line-height: 1.55; }
.order-filters { flex-wrap: wrap; }
.order-filters label { display: grid; gap: 5px; }
.order-filters input { width: 265px; }
.order-filters select { width: 170px; padding-right: 36px; }
.order-list { gap: 13px; }
.order-list .request-card, .order-list .request-card[data-status] { overflow: hidden; border: 1px solid #dce8f5; border-radius: 14px; background: #fff; box-shadow: 0 8px 22px rgba(17,52,99,.055); }
.order-list .request-card:has(.request-detail[open]) { border-color: #b7d4f2; box-shadow: 0 14px 32px rgba(17,52,99,.1); }
.order-summary { min-height: 78px; gap: 14px; padding: 17px 20px; }
.order-summary:hover { background: #f8fbff; }
.order-summary-main strong { font-size: 16px; line-height: 1.35; }
.order-summary-main small { color: #667e98; font-size: 11px; }
.order-status { padding: 7px 10px; border-radius: 8px; background: #eaf3ff; color: #0d5db5; font-size: 11px; }
.order-status.state-processed { background: #fff3d6; color: #8d5d0b; }
.order-status.state-completed { background: #eaf7ee; color: #277145; }
.order-status.state-cancelled { background: #f1f3f6; color: #667587; }
.order-expand-control { min-height: 36px; padding: 6px 8px 6px 11px; }
.order-expand-control .order-chevron { font-size: 18px; }
.order-expanded { padding: 20px; border-top: 1px solid #e4eef8; background: #fbfdff; }
.order-detail-grid { gap: 12px; margin: 0; }
.order-detail-grid section { position: relative; min-height: 178px; padding: 20px; border: 1px solid #dfeaf6; border-radius: 12px; background: #fff; }
.order-detail-grid h3 { margin: 0 0 15px; color: #173f6c; font-size: 16px; }
.detail-icon { position: absolute; right: 18px; top: 17px; color: #b6d2ef; font-size: 12px; font-weight: 900; }
.detail-kv { display: grid; gap: 2px; margin-top: 11px; }
.detail-kv span { color: #71869c; font-size: 10px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.detail-kv strong { color: #244868; font-size: 12px; line-height: 1.5; font-weight: 650; overflow-wrap: anywhere; }
.detail-kv a { color: #0d5db5; text-decoration: underline; text-underline-offset: 2px; }
.client-note { display: grid; gap: 5px; margin: 14px 0 0; padding: 13px 16px; border-left: 3px solid #f0ba42; border-radius: 8px; background: #fff9ea; color: #526a80; font-size: 12px; }
.client-note strong { color: #6b5427; }
.order-created { margin: 14px 0 0; color: #8495a6; font-size: 11px; }
.order-workspace { margin-top: 20px; padding: 22px; border: 1px solid #cbdff3; border-radius: 14px; background: #f3f8ff; }
.workspace-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-bottom: 15px; border-bottom: 1px solid #d8e8f8; }
.workspace-heading strong { color: #0d5db5; font-size: 12px; }
.workflow-step { display: flex; gap: 15px; align-items: flex-start; margin: 20px 0; }
.step-number { display: grid; flex: none; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #0d5db5; color: #fff; font-size: 13px; font-weight: 900; }
.workflow-step h3 { margin: 0 0 5px; color: #163e69; font-size: 18px; }
.workflow-step p { margin: 0; max-width: 690px; color: #60758c; font-size: 12px; line-height: 1.6; }
.cancelled-step .step-number { background: #8291a2; }
.handoff-form { margin-top: 16px; }
.handoff-form .form-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.handoff-form label, .note-form label { display: grid; gap: 6px; color: #315677; font-size: 11px; font-weight: 800; }
.handoff-form input, .note-form textarea { width: 100%; padding: 10px 12px; background: #fff; color: #173e68; }
.brief-fallback:not([hidden]) { display: block; width: 100%; min-height: 180px; margin-top: 14px; padding: 12px; background: #fff; color: #173e68; font-size: 12px; line-height: 1.55; }
.workflow-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.workflow-actions .btn { min-height: 42px; }
.workflow-footnote { margin: 11px 0 0; color: #617a93; font-size: 11px; line-height: 1.55; }
.note-form { display: grid; gap: 10px; margin-top: 22px; padding-top: 18px; border-top: 1px solid #d8e8f8; }
.note-form textarea { min-height: 73px; }
.order-link { width: fit-content; border: 0; padding: 0; background: none; color: #0d5db5; font-size: 12px; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.order-link:hover { color: #084382; }
.workflow-danger { margin-top: 20px; }
.workflow-danger .order-link { color: #af4c3d; }
.workflow-danger .order-link:hover { color: #8f3428; }
.cancel-confirm:not([hidden]) { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 11px; padding: 13px; border: 1px solid #f1c8bd; border-radius: 10px; background: #fff7f4; }
.cancel-confirm p { flex-basis: 100%; margin: 0; color: #8f3428; font-size: 12px; font-weight: 700; }
.cancel-confirm .btn { min-height: 37px; padding: 8px 12px; font-size: 11px; }
.workflow-message { margin: 11px 0 0; }
.workflow-message:empty { display: none; }
.assigned-carrier { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 12px; padding: 14px 16px; border: 1px solid #d4e5f6; border-radius: 10px; background: #fff; }
.assigned-carrier > span:first-child { color: #6e8295; font-size: 11px; }
.assigned-carrier strong { color: #173e68; font-size: 14px; }
.assigned-carrier a { color: #0d5db5; font-size: 12px; }
.assigned-carrier > span:last-child:not(:first-child) { margin-left: auto; color: #43617d; font-size: 12px; }
.order-payment { display: flex; flex-wrap: wrap; gap: 9px 16px; align-items: center; margin: 14px 0; color: #526b85; font-size: 12px; }
.order-payment strong { color: #173e68; }
.saved-note { margin: 16px 0 0; color: #526b85; font-size: 12px; }
@media (max-width: 1100px) { .admin-bar { grid-template-columns: repeat(3,minmax(0,1fr)); } .admin-bar .btn { margin: 0; } }
@media (max-width: 780px) { .order-toolbar { display: block; } .order-filters { margin-top: 15px; } .order-detail-grid { grid-template-columns: 1fr; } .order-detail-grid section { min-height: 0; } .handoff-form .form-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 620px) { .operator-section { padding-top: 25px; } .admin-bar { grid-template-columns: repeat(2,minmax(0,1fr)); } .admin-bar .btn { grid-column: 1/-1; } .operator-flow { width: 100%; justify-content: center; font-size: 10px; } .order-filters input, .order-filters select { width: 100%; } .order-summary { gap: 8px; padding: 14px; } .order-summary-main { order: 1; flex-basis: calc(100% - 96px); } .request-badge { order: 0; } .order-status { order: 2; margin: 0; } .order-expand-control { order: 3; margin-left: auto; } .order-expanded { padding: 14px; } .order-workspace { padding: 16px; } .handoff-form .form-grid { grid-template-columns: 1fr; } .workflow-actions .btn { width: 100%; } }

/* Shared focus and hover styles. */
.skip-link { position: fixed; z-index: 1000; left: 16px; top: 12px; padding: 12px 18px; border-radius: 8px; background: #112b4f; color: #fff; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
#main:focus { outline: none; }
.footer .brand-light { color: #fff; }
button, a, input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])), select, textarea { -webkit-tap-highlight-color: transparent; }
input, select, textarea, button { max-width: 100%; }
input:where(:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])), select, textarea { min-height: 46px; }
input[type=checkbox] { min-height: 20px; width: 20px; height: 20px; flex: 0 0 20px; accent-color: #0d57af; }
.check-label, .inline-choice { min-height: 44px; align-items: flex-start; cursor: pointer; }
.check-label input, .inline-choice input { margin-top: 2px; }
label, .form-grid > *, .filter-grid > *, .search-fields > * { min-width: 0; }
label.has-error { color: #9d3229; }
.field-error { display: block; margin-top: 7px; font-size: 12px; line-height: 1.5; font-weight: 500; color: #a33028; }
.form-grid label .field-error { color: #a33028; font-size: 12px; }
.check-label.has-error { flex-wrap: wrap; }
.check-label .field-error { flex-basis: 100%; }
input[aria-invalid=true], select[aria-invalid=true], textarea[aria-invalid=true], .country-trigger[aria-invalid=true] { border-color: #c43e32; background-color: #fffafa; }
.validation-summary { flex-basis: 100%; grid-column: 1/-1; padding: 12px 16px; border-radius: 10px; border: 1px solid #efbdb7; background: #fff4f2; color: #99372e; font-size: 13px; line-height: 1.6; }
.form-message.error, .workflow-message.error { color: #a33028; }
.form-message:not(:empty) { padding: 10px 0; line-height: 1.6; }
.form-message:empty, .draft-status:empty { display: none; }
.form-required-note { margin: 0 0 20px; color: #60758c; font-size: 12px; }
.form-card, .route-endpoint, .route-filter, .search-card, .search-fields { overflow: visible; }
.country-option, .city-option { min-height: 44px; }
.country-suggestions, .city-suggestions { overscroll-behavior: contain; scrollbar-width: thin; }
.country-suggestions { min-width: 0; }
.country-trigger { font-size: 14px; line-height: 1.4; min-height: 46px; }
.city-no-result { line-height: 1.6; }
.direction-result { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(230px,1fr); gap: 24px 36px; padding: 30px; border-color: #bbd6f2; border-top: 4px solid #0d57af; scroll-margin-top: 100px; }
.direction-result:focus-visible { outline: 3px solid #ef6b27; outline-offset: 4px; }
.result-kicker { display: flex; align-items: center; gap: 9px; font-size: 11px; font-weight: 800; letter-spacing: .09em; color: #0d57af; }
.result-kicker > span { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; color: #fff; background: #0d57af; font-size: 15px; }
.direction-result h2 { font-size: clamp(23px,2.7vw,31px); line-height: 1.2; margin: 13px 0 18px; }
.direction-result .result-route { margin: 0 0 12px; color: #173e68; font-size: 20px; font-weight: 750; overflow-wrap: anywhere; }
.result-route > span { color: #ef6b27; margin: 0 7px; }
.result-date { display: inline-block; padding: 8px 12px; border-radius: 8px; background: #edf4fd; color: #36577b; font-size: 13px; }
.direction-result .result-explanation { margin: 16px 0 0; max-width: 650px; }
.result-price { align-self: stretch; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 22px; border-radius: 13px; background: #f2f7fd; }
.result-price > span { color: #526983; font-size: 13px; }
.result-price > strong { color: #123b69; font-size: clamp(30px,4vw,42px); line-height: 1.2; margin: 9px 0 5px; letter-spacing: -.04em; }
.result-price > small { color: #526983; font-size: 12px; line-height: 1.6; }
.result-price .btn { width: 100%; margin: 20px 0 10px; }
.result-footnote { grid-column: 1/-1; border-top: 1px solid #dce8f5; padding-top: 18px; font-size: 12px; line-height: 1.7; color: #526983; }
.direction-check { border-top-color: #ef6b27; }
.direction-check .result-kicker > span { background: #ef6b27; }
.operator-refresh-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; color: #526983; font-size: 12px; }
.operator-refresh-bar .btn { min-height: 42px; padding: 9px 14px; font-size: 12px; }
.operator-tabs button { min-height: 46px; }
.operator-tabs button[aria-pressed=true] { box-shadow: 0 3px 9px rgba(13,87,175,.12); }
.order-link { min-height: 40px; display: inline-flex; align-items: center; }
.reset-filters { margin: 12px 0; padding-inline: 12px; }
.order-chevron { display: inline-flex; align-items: center; justify-content: center; }
.order-detail-grid strong, .assigned-carrier, .client-note, .saved-note { overflow-wrap: anywhere; }
.order-detail-grid .detail-kv strong { font-size: 14px; line-height: 1.6; }
.order-workspace .workflow-step p, .workflow-footnote, .order-created, .order-payment { font-size: 13px; line-height: 1.7; }
.order-workspace label { font-size: 13px; }
.draft-status { color: #7b5820; background: #fff8df; border-left: 3px solid #ffd439; border-radius: 6px; padding: 9px 12px; font-size: 12px; line-height: 1.6; }
.operator-load-error { margin-bottom: 20px; }
.admin-pagination { scroll-margin-top: 100px; }
.admin-pagination button { min-width: 42px; min-height: 42px; }
.admin-pagination button:disabled { cursor: default; }
.submission-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.article-card { scroll-margin-top: 100px; }
@media (max-width: 760px) {
  .direction-result { grid-template-columns: 1fr; padding: 22px; gap: 20px; }
  .result-price { padding: 18px; }
  .result-price .btn { max-width: none; }
  .order-summary-main strong { overflow-wrap: anywhere; }
  .operator-tabs { gap: 7px; }
  .admin-pagination { flex-direction: column; align-items: center; gap: 12px; }
  .pagination-controls { justify-content: center; flex-wrap: wrap; }
}
@media (max-width: 620px) {
  input, select, textarea, .country-trigger { font-size: 16px; }
  .btn { min-height: 46px; }
  .direction-result .result-route { font-size: 18px; }
  .operator-refresh-bar .btn { width: 100%; }
  .admin-bar > div { min-width: 0; }
  .operator-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: visible; }
  .operator-tabs button { min-width: 0; white-space: normal; justify-content: center; }
  .order-filters { display: grid; grid-template-columns: 1fr; }
  .check-label, .inline-choice { line-height: 1.6; }
  .search-fields { grid-template-columns: minmax(0,1fr) 44px; gap: 12px; }
  .search-fields label:nth-of-type(1) { grid-column: 1; grid-row: 1; }
  .search-fields label:nth-of-type(2) { grid-column: 1; grid-row: 2; }
  .search-fields .swap-btn { grid-column: 2; grid-row: 1 / 3; align-self: center; width: 44px; height: 44px; }
  .search-fields label:nth-of-type(3) { grid-column: 1 / -1; grid-row: 3; }
  .search-fields label:nth-of-type(3) input[type="date"] { display: block; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; -webkit-appearance: none; appearance: none; }
  .search-fields label:nth-of-type(3) input[type="date"]::-webkit-date-and-time-value { min-width: 0; text-align: left; }
  .search-fields .btn { grid-column: 1 / -1; grid-row: 4; }
  .search-fields .city-suggestions { left: 0; right: auto; width: min(290px,calc(100vw - 80px)); }
  .search-fields label:nth-of-type(2) .city-suggestions { left: 0; right: auto; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Free selection and customer reminder preferences. */
.hero .hero-slogan { font-size:clamp(19px,2vw,25px); font-weight:750; line-height:1.4; color:#0b5cba; margin:0 0 16px; max-width:560px; }
.hero-benefits { display:grid; grid-template-columns:1fr 1fr 1.25fr; gap:8px; margin:18px 0 10px; }
.hero-benefits > div,.hero-benefits > a { display:flex; gap:10px; align-items:center; border:1px solid #dbe6f3; background:#fff; border-radius:12px; padding:12px; }
.hero-benefits > :first-child { background:#fff5ba; border-color:#f0d657; }
.hero-benefits > a { grid-column:auto; }
.hero-benefits > a:hover { background:#eef5ff; border-color:#0b5cba; }
.hero-benefits svg { color:#0b5cba; }
.hero-benefits strong,.hero-benefits small { display:block; }
.hero-benefits strong { font-size:13px; color:#142c4b; }
.hero-benefits small { font-size:12px; color:#4e6077; }
.hero .hero-payment-note { font-size:12px; line-height:1.5; margin:10px 0 0; }
.reminder-consent { border:1px solid #dbe6f3; border-radius:12px; background:#f6f9ff; padding:14px; margin-top:14px; }
.reminder-consent strong { display:block; font-size:14px; color:#183a65; }
.reminder-consent small { display:block; line-height:1.6; margin-top:4px; color:#53657a; font-size:12px; }
.care-status-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:22px; }
.care-status-grid .notification-status { margin:0; min-width:0; }
.care-status-grid .btn { margin-top:15px; }
.care-status-grid small { display:block; line-height:1.7; }
.request-types { display:flex; flex-wrap:wrap; gap:10px; padding:0; border:0; margin:0 0 20px; }
.request-types legend { font-size:14px; font-weight:750; margin-bottom:8px; }
.request-types :is(label,a) { display:flex; align-items:center; gap:8px; padding:11px 20px; border:1px solid #a9bfda; border-radius:10px; background:#fff; color:#183a65; cursor:pointer; }
.request-types label:has(input:checked), .request-types a[aria-current="page"] { background:#e8f2ff; border-color:#0b5cba; font-weight:800; box-shadow:inset 0 0 0 1px #0b5cba; }
.request-type-label { flex-basis:100%; font-size:14px; font-weight:750; }
.request-types input { flex:none; }
.quick-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.search-fields select { width:100%; min-height:44px; padding:8px; border:1px solid #b6c6d8; border-radius:10px; margin-bottom:5px; background:white; }
.search-fields label:has([name=dateMode]) .field-icon { display:none; }
.search-fields input[type=date] { padding-left:12px; }
.date-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px; margin-top:7px; }
.date-controls > input, .date-controls > select { width:100%; min-width:0; margin:0; min-height:46px; }
.date-controls:has(input[hidden]) { grid-template-columns:minmax(0,1fr); }
.route-date { max-width:100%; }
.form-card label, .filter-grid label, .search-countries label, .search-fields label > span:first-child { font-size:13px; font-weight:700; line-height:1.5; }
.form-card .check-label, .form-card .inline-choice { font-weight:500; }
.form-card input:not([type=checkbox]):not([type=radio]), .form-card select, .form-card textarea, .filter-grid input, .filter-grid select, .search-fields input, .search-fields select { font-size:14px; font-weight:400; line-height:1.4; }
.country-trigger { font-weight:400; }
.select-picker { min-width:0; }
.date-controls .select-trigger { margin-top:0; }
.select-popup { position:fixed; z-index:120; margin:0; min-width:0; max-height:280px; }
.select-option { font-size:14px; font-weight:600; line-height:1.45; white-space:normal; overflow-wrap:anywhere; }
.select-option:disabled { opacity:.5; cursor:not-allowed; }
.select-option[aria-selected="true"] { background:#eaf3ff; color:#0d5db5; }
.select-option:focus-visible { outline:2px solid #0d5db5; outline-offset:-2px; background:#eaf3ff; }
.select-trigger:disabled { opacity:.55; cursor:not-allowed; }
.admin-item-top > .select-picker { max-width:240px; }
.search-fields input { height:46px; }
.search-fields .field-icon { z-index:30; pointer-events:none; }
.search-fields label:focus-within { z-index:40; }
.search-fields select { margin-bottom:0; border-radius:9px; }
.request-types :is(label,a) { min-height:46px; font-size:14px; line-height:1.4; }
.request-types label:focus-within { border-color:#0b5cba; }
.btn { white-space:normal; text-align:center; }
.login-card .btn { width:100%; margin-top:18px; }
.form-footnote a, .side-contact a { display:inline-flex; align-items:center; min-height:44px; max-width:100%; }
.check-label > span { flex:1 1 0; min-width:0; }
.check-label .field-error { flex-basis:calc(100% - 30px); margin-left:30px; }
.city-option strong, .country-option { font-size:14px; font-weight:600; }
.menu-toggle { width:44px; height:44px; min-height:44px; }
.mobile-nav a { display:flex; align-items:center; min-height:44px; }
.mobile-nav a[aria-current="page"] { color:#0d57af; font-weight:800; background:#e8f2ff; }
.form-card button:disabled, .btn:disabled { cursor:not-allowed; }
[aria-busy="true"] button:disabled { cursor:wait; }
@media(min-width:621px) {
  .search-countries { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px; }
  .search-countries label { min-width:0; }
  .search-fields { grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr); align-items:end; }
  .search-fields label:nth-of-type(1) { grid-column:1; grid-row:1; }
  .search-fields .swap-btn { grid-column:2; grid-row:1; width:44px; height:46px; margin:0; }
  .search-fields label:nth-of-type(2) { grid-column:3; grid-row:1; }
  .search-fields label:nth-of-type(3) { grid-column:1 / 3; grid-row:2; }
  .search-fields .btn { grid-column:3; grid-row:2; width:100%; }
}
@media(max-width:620px) {
  .request-types :is(label,a) { padding:10px 12px; }
  .date-controls { grid-template-columns:minmax(0,1fr); }
  .form-card input:not([type=checkbox]):not([type=radio]), .form-card select, .form-card textarea, .filter-grid input, .filter-grid select, .search-fields input, .search-fields select { font-size:16px; }
}
.form-footnote,.parcel-note,.hero .hero-payment-note,.team-note,.result-footnote { color:#244769; font-size:14px; line-height:1.65; }
.form-footnote,.parcel-note { padding:12px 14px; background:#eef5ff; border-left:3px solid #0b5cba; border-radius:6px; }
.footer-note p { font-weight:650; }
.brand-visual { align-self:start; margin-top:10px; }
@media(max-width:900px) { .brand-visual { grid-row:1; margin:0 auto 12px; width:min(440px,100%); } }
@media(max-width:620px) { .brand-visual { width:min(320px,100%); margin:-6px auto 10px; } .hero-benefits > a:nth-child(2) { grid-column:auto; } .quick-actions .btn { width:100%; white-space:normal; } }
@media(max-width:620px) { .hero-benefits { grid-template-columns:1fr 1fr; } .hero-benefits > a { grid-column:1/-1; } .care-status-grid { grid-template-columns:1fr; } }
@media(max-width:380px) { .search-countries { grid-template-columns:minmax(0,1fr); } }

.analytics-consent {
  position: fixed;
  z-index: 1000;
  bottom: 16px;
  left: 50%;
  width: min(680px, calc(100% - 24px));
  transform: translateX(-50%);
  padding: 18px;
  border: 1px solid #d7e1ed;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 40px #102c4d30;
  color: #183657;
}
.analytics-consent p { margin: 0 0 12px; line-height: 1.5; }
.analytics-consent a { color: #0d57af; }
.analytics-consent div { display: flex; justify-content: flex-end; gap: 10px; }
.analytics-consent button {
  min-height: 40px;
  padding: 8px 15px;
  border: 1px solid #0d57af;
  border-radius: 8px;
  background: #fff;
  color: #0d57af;
  font: inherit;
  cursor: pointer;
}
.analytics-consent button[data-analytics-choice="yes"] { background: #0d57af; color: #fff; }
.analytics-consent button:focus-visible { outline: 3px solid #f5a623; outline-offset: 2px; }
.prose #analytics-choice-change { border: 0; background: none; padding: 0; color: #0d57af; text-decoration: underline; font: inherit; cursor: pointer; }
@media (max-width: 480px) {
  .analytics-consent { bottom: 8px; padding: 14px; }
  .analytics-consent div { flex-wrap: wrap; }
  .analytics-consent button { flex: 1; }
}
/* Shared visual system, including the empty and invalid form states. */
:root { --shadow:0 18px 48px rgb(17 52 99 / 8%); }
body { -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
.header { box-shadow:0 4px 24px rgb(17 52 99 / 3%); border-bottom-color:#e8edf3; }
.desktop-nav { gap:6px; }
.desktop-nav a { border-radius:9px; padding:9px 10px; transition:background .18s,color .18s; }
.desktop-nav a:hover,.desktop-nav a[aria-current] { background:#edf4fe; color:#0b56ae; }
.header-inner { gap:22px; }
.btn { border-radius:12px; min-height:48px; transition:background .18s,box-shadow .18s; }
.btn:hover { transform:none; box-shadow:0 6px 18px rgb(16 38 59 / 12%); }
.btn-coral { background:linear-gradient(135deg,#ffdc50,#ffcd24); box-shadow:0 3px 0 rgb(157 111 0 / 12%); }
.btn-outline { background:#fff; border-color:#bdcfe3; }
.hero { background:radial-gradient(ellipse at 90% 14%,#fff3c0,transparent 55%),linear-gradient(155deg,#fff 20%,#f9fbff 76%,#eef4fd); padding-top:54px; border-bottom-color:#e4ebf4; }
.hero::before { display:none; }
.hero-grid { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:34px; align-items:center; }
.hero h1 { letter-spacing:-.05em; font-size:clamp(44px,4.7vw,62px); line-height:1.06; margin:22px 0; }
.hero-kicker { width:fit-content; max-width:100%; border:1px solid #dbe7f5; border-radius:999px; padding:8px 13px; background:rgb(255 255 255 / 70%); font-size:10px; letter-spacing:.13em; margin:0; }
.hero .hero-slogan { color:#335477; font-size:clamp(18px,1.75vw,22px); font-weight:600; margin-bottom:16px; }
.hero-copy > .hero-description { color:#536780; font-size:15px; line-height:1.85; max-width:52ch; margin-bottom:24px; }
.hero-benefits { gap:9px; margin:20px 0 16px; }
.hero-benefits > * { box-shadow:none; background:rgb(255 255 255 / 72%); border-color:#dbe5f1; border-radius:14px; padding:14px 11px; }
.hero-benefits > :first-child { background:#fff8df; border-color:#eedb93; }
.hero-benefits strong { font-size:12px; line-height:1.5; }
.hero-benefits small { font-size:11px; line-height:1.6; margin-top:3px; }
.hero-benefits svg { width:20px; height:20px; }
.hero .hero-payment-note { font-size:12px; line-height:1.8; max-width:56ch; color:#536780; }
.hero-payment-note strong { color:#213d60; }
/* Let the original white artwork blend with the actual page gradient. */
.brand-visual { isolation:auto; align-self:center; margin:0; }
.brand-visual::after { display:none; }
.brand-visual img { mix-blend-mode:multiply; }
.hero-search { transform:translateY(38px); }
.section-head p { max-width:62ch; }
.form-card,.search-card,.route-filter { border-color:#dce6f2; border-radius:22px; box-shadow:var(--shadow); }
.search-card { padding:30px 32px 24px; box-shadow:0 24px 64px rgb(23 53 94 / 10%),0 2px 5px rgb(23 53 94 / 3%); }
.search-card::before { display:none; }
.search-intro { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-bottom:20px; border-bottom:1px solid #e7edf5; margin-bottom:18px; }
.search-intro .eyebrow { font-size:9px; letter-spacing:.14em; }
.search-intro h2 { font-size:26px; line-height:1.25; letter-spacing:-.04em; color:#163555; margin:7px 0 0; }
.search-intro .request-types { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; margin:0; padding:5px; border:1px solid #dce6f2; border-radius:14px; background:#f2f6fb; min-width:235px; }
.search-intro .request-types legend { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.search-intro .request-types label { border-color:transparent; border-radius:9px; padding:10px 12px; background:transparent; font-size:13px; font-weight:600; justify-content:center; }
.search-intro .request-types label:has(input:checked) { background:#fff; border-color:#d8e4f2; box-shadow:0 2px 6px rgb(17 52 99 / 7%); color:#0c57aa; }
.search-intro .request-types input[type=radio] { width:16px; height:16px; min-width:16px; min-height:16px; flex-basis:16px; }
.search-top { margin-bottom:20px; }
.search-label { display:none; }
.search-hint { display:block; color:#62758c; font-size:12px; font-weight:400; }
.search-bottom { border-top-color:#e7edf5; margin-top:8px; padding-top:16px; }
.search-bottom a { border:1px solid #e1eaf5; background:#f7faff; padding:6px 11px; }
.route-endpoint { background:linear-gradient(160deg,#f9fbff,#f2f7fd); border-radius:16px; padding:20px; }
.route-endpoint h3 { display:flex; align-items:center; gap:10px; font-size:17px; }
.route-endpoint h3::before { content:''; width:9px; height:9px; border-radius:50%; background:#0d5db5; box-shadow:0 0 0 5px #e1edff; flex:none; margin:0 5px; }
.route-endpoint[data-endpoint=to] h3::before { background:#eebc17; box-shadow:0 0 0 5px #fff1bd; }
.form-block { padding-block:32px; }
.form-step { display:inline-flex; align-items:center; padding:5px 9px; border-radius:6px; background:#edf4ff; letter-spacing:.08em; }
.form-grid,.filter-grid,.search-fields { align-items:start; }
.form-grid label,.filter-grid label,.search-fields > label { min-width:0; }
input:where(:not([type=checkbox]):not([type=radio]):not([type=hidden])),select,textarea,.country-trigger {
  border-color:#becfe2; background-color:#fff; border-radius:11px; min-height:48px;
  transition:border-color .16s,box-shadow .16s; box-shadow:0 2px 4px rgb(17 52 99 / 2%);
}
input::placeholder,textarea::placeholder { color:#7b8fa7; opacity:1; }
.country-trigger { font-weight:500; line-height:1.5; }
.city-combobox { position:relative; }
.city-combobox input { margin-top:0; }
.city-combobox { margin-top:7px; }
.search-fields .city-combobox .field-icon { top:50%; bottom:auto; transform:translateY(-50%); left:12px; }
.search-fields input { height:48px; }
.search-fields .swap-btn { margin-top:26px; }
.search-fields > .btn { margin-top:26px; height:48px; }
.field-error { min-height:36px; margin:5px 0 0; font-size:12px; line-height:18px; color:#a42e2e; }
.field-error:empty { visibility:hidden; }
.field-error[hidden] { display:block!important; visibility:hidden; }
.check-label .field-error { margin-top:0; min-height:36px; }
.check-label { flex-wrap:wrap; }
.check-label > .field-error { flex-basis:calc(100% - 30px); margin-left:30px; }
.inline-choice > .field-error { flex-basis:100%; }
.inline-choice:has(> .field-error) { flex-wrap:wrap; }
.validation-summary { margin:16px 0 0; border-radius:12px; padding:12px 16px; border-color:#efcbc6; background:#fff5f3; }
input[aria-invalid=true],textarea[aria-invalid=true],.country-trigger[aria-invalid=true] { border-color:#c84e42; background:#fffafa; box-shadow:0 0 0 1px rgb(200 78 66 / 8%); }
.form-card .field-error { font-weight:500; }
.feature,.destination-card,.contact-card,.team-card { border-radius:20px; }
.section { padding-block:88px; }
.hero + .section { padding-top:124px; }
.section-cream { background:#f6f8fc; }
.section-head { margin-bottom:32px; }
.section-head h2 { letter-spacing:-.045em; font-size:clamp(30px,3.1vw,42px); line-height:1.18; }
.section-head .eyebrow { font-size:10px; letter-spacing:.13em; }
.section-head p { line-height:1.85; color:#5b6f87; }
.feature { box-shadow:none; border-color:#e0e7f0; padding:28px; min-height:244px; }
.feature-icon { width:48px; height:48px; border-radius:14px; margin-bottom:25px; }
.feature-num { color:#74869b; font-size:11px; }
.feature h3 { font-size:16px; line-height:1.5; margin-bottom:9px; }
.feature p { font-size:13px; line-height:1.8; }
.feature:hover,.destination-card:hover { transform:none; box-shadow:0 10px 26px rgb(17 52 99 / 8%); }
.destinations { gap:64px; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
.destination-card { border:1px solid #d8e6f5; background:linear-gradient(115deg,#f3f8ff,#eaf2fd); padding:26px 30px; min-height:162px; }
.destination-card.alt { border-color:#ede1b9; background:linear-gradient(115deg,#fffaf0,#fff3ce); }
.destination-code { font-size:10px; letter-spacing:.17em; }
.destination-card h3 { font-size:23px; margin-top:19px; padding-right:36px; line-height:1.35; }
.destination-card > svg { top:50%; right:23px; transform:translateY(-50%); }
.destination-card p { font-size:12px; }
.brand-story { padding:36px 0; border:0; background:#fff; }
.brand-story-inner { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:40px; padding:30px 38px; border:1px solid #e1e8f0; border-radius:22px; background:#f9fbfd; }
.brand-story-mark { min-height:100px; padding:12px; border:0; border-radius:0; box-shadow:none; background:transparent; gap:16px; }
.brand-story-copy h2 { font-size:27px; margin:8px 0 10px; }
.brand-story-copy p { font-size:13px; line-height:1.8; }
.community-section { background:#fff; padding:0 0 42px; }
.community-inner { border-radius:18px; border:1px solid #dce8f5; padding:24px 30px; background:#edf4fd; }
.community-icon { width:46px; height:46px; border-radius:13px; }
.community-copy h2 { font-size:20px; margin:5px 0; }
.community-copy p { max-width:66ch; }
.section-blue { background:radial-gradient(ellipse at 0 0,#1b5ba2,transparent 65%),#102f56; }
.section-blue .section-head p,.trust-list p { color:#d0deed; }
.trust-grid { gap:88px; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
.trust-list > div { padding:23px 0; border-bottom-color:#ffffff26; }
.trust-list h3 { font-size:16px; }
.trust-list p { font-size:13px; line-height:1.8; }
.step-row { gap:16px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.step-row > div { padding:25px 22px; min-height:210px; border-color:#e0e7f0; }
.step-row strong { background:#e8f1fd; color:#0b56a8; border-radius:10px; width:36px; height:36px; font-size:13px; }
.step-row p { font-size:13px; line-height:1.75; }
.cta-section { background:linear-gradient(110deg,#fff8df,#ffed9f); border-block:1px solid #f1e3b4; }
.cta-inner h2 { font-size:clamp(29px,3.2vw,44px); letter-spacing:-.045em; }
.cta-inner .btn { min-height:54px; padding-inline:26px; }
.footer { background:#102a4b; padding-top:56px; }
.footer-grid { gap:42px; }
.footer-grid h3 { font-size:10px; letter-spacing:.14em; color:#ebf1f8; }
.footer-grid a:not(.brand) { color:#c1d1e4; line-height:1.8; }
.footer-bottom { border-color:#ffffff1c; margin-top:40px; }
.page-hero { background:linear-gradient(120deg,#13365e,#15569c); padding-block:58px; }
.page-hero::after { opacity:.15; }
.page-hero h1 { font-size:clamp(34px,4vw,52px); letter-spacing:-.045em; }
.article-card,.contact-panel,.side-card { border-radius:18px; }
.article-card { border-color:#e1e8f1; }
.side-index { border-color:#e0e7f0; border-radius:16px; }
.side-index a { border-radius:7px; padding:7px 10px; background:#f6f9fd; }
.side-index a:hover { color:#0b56a8; background:#edf4fd; }
.contact-card { background:linear-gradient(145deg,#fff,#f7faff); }
.contact-card strong { letter-spacing:-.035em; }
.team-card { box-shadow:0 8px 24px rgb(17 52 99 / 5%); }
.date-field { container:date-field / inline-size; }
.date-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:8px; padding:6px; border:1px solid #cbd9e9; border-radius:14px; background:#eef4fc; }
.date-controls > *, .date-controls .select-picker { min-width:0; width:100%; margin:0; }
.date-controls .country-trigger { margin:0; min-height:48px; padding:10px 12px; font-size:14px; }
input[type=date] {
  width:100%; min-width:0; max-width:100%; height:48px; min-height:48px; padding:9px 12px;
  font-size:16px; font-weight:600; font-variant-numeric:tabular-nums; line-height:1.5; color:#183c64;
  appearance:none; -webkit-appearance:none; color-scheme:light;
}
.form-card input[type=date],.filter-grid input[type=date],.search-fields input[type=date] { font-size:16px; padding:9px 12px; }
input[type=date]::-webkit-date-and-time-value { text-align:left; min-width:0; }
input[type=date]::-webkit-datetime-edit { padding:0; min-width:0; }
input[type=date]::-webkit-datetime-edit-fields-wrapper { padding:0; }
input[type=date]::-webkit-datetime-edit-day-field,input[type=date]::-webkit-datetime-edit-month-field,input[type=date]::-webkit-datetime-edit-year-field { padding:2px; border-radius:4px; }
input[type=date]::-webkit-datetime-edit-text { color:#8496ae; padding:0 1px; }
input[type=date]::-webkit-calendar-picker-indicator { width:20px; height:20px; margin:0 0 0 6px; padding:2px; opacity:.65; cursor:pointer; flex:none; }
.date-controls:has(input[hidden]) { grid-template-columns:minmax(0,1fr); }
.date-controls:has([aria-invalid=true]) { border-color:#c84e42; background:#fff3f0; }
@container date-field (max-width:400px) { .date-controls { grid-template-columns:minmax(0,1fr); } }
@media(max-width:620px) {
  .search-card { padding:22px 18px 16px; }
  .search-fields > .btn { margin-top:0; }
  .search-fields .swap-btn { margin-top:0; align-self:center; }
  .form-card { border-radius:18px; }
  .route-endpoint { padding:18px; }
  .date-controls .country-trigger { font-size:16px; }
  .hero-benefits { gap:10px; }
}
@media(min-width:901px) and (max-width:1150px) {
  .desktop-nav { gap:2px; }
  .desktop-nav a { padding-inline:7px; font-size:12px; }
  .hero-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero-benefits > a:last-child { grid-column:1/-1; }
}
@media(max-width:900px) {
  .hero { padding-top:32px; }
  .hero-grid { grid-template-columns:minmax(0,1fr); gap:0; }
  .hero-copy { display:contents; }
  .hero-kicker { grid-row:1; margin-bottom:18px; }
  .hero h1 { grid-row:2; font-size:clamp(38px,6.4vw,54px); margin:0 0 16px; }
  .hero .hero-slogan { grid-row:3; margin-bottom:12px; }
  .brand-visual { grid-row:4; width:min(440px,100%); margin:8px auto 24px; }
  .hero-copy > .hero-description { grid-row:5; margin:0 0 8px; max-width:66ch; }
  .hero-benefits { grid-row:6; margin:16px 0; }
  .hero .hero-payment-note { grid-row:7; max-width:none; margin:0; }
  .destinations,.trust-grid { grid-template-columns:minmax(0,1fr); gap:30px; }
  .brand-story-inner { gap:20px; padding:24px; }
  .brand-story-mark { gap:10px; }
  .brand-story-name { font-size:clamp(23px,3.2vw,32px); }
  .brand-story-copy h2 { font-size:24px; }
  .destination-cards { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:620px) {
  .section { padding-block:60px; }
  .hero + .section { padding-top:108px; }
  .hero { padding-top:28px; }
  .hero-grid { row-gap:0; }
  .hero h1 { font-size:clamp(36px,9.2vw,48px); }
  .hero .hero-slogan { font-size:18px; line-height:1.5; }
  .hero-copy > .hero-description { font-size:14px; line-height:1.8; }
  .brand-visual { width:min(320px,100%); margin:4px auto 22px; }
  .hero-benefits > * { padding:12px; }
  .hero-benefits > a:last-child { grid-column:1/-1; }
  .hero-benefits strong { font-size:12px; }
  .search-intro { align-items:flex-start; flex-direction:column; gap:18px; margin-bottom:14px; }
  .search-intro h2 { font-size:25px; }
  .search-intro .eyebrow { font-size:9px; }
  .search-intro .request-types { width:100%; min-width:0; }
  .search-intro .request-types label { min-width:0; }
  .search-hint { font-size:11px; line-height:1.7; }
  .search-countries { grid-template-columns:minmax(0,1fr); gap:14px; }
  .feature { min-height:0; padding:24px; }
  .feature-icon { margin-bottom:20px; }
  .brand-story-inner { grid-template-columns:minmax(0,1fr); padding:24px; gap:16px; }
  .brand-story-mark { min-height:70px; justify-content:flex-start; padding:0; gap:10px; }
  .brand-story-name { font-size:clamp(22px,6.5vw,32px); }
  .brand-story-copy h2 { font-size:25px; }
  .community-section { padding-bottom:28px; }
  .community-inner { padding:20px; gap:14px; }
  .community-copy h2 { font-size:19px; }
  .community-copy { min-width:0; }
  .community-inner .btn { width:100%; }
  .destination-card { padding:24px; }
  .destination-card h3 { font-size:21px; }
  .step-row { grid-template-columns:minmax(0,1fr); }
  .step-row > div { min-height:0; padding:24px; }
  .footer-grid { gap:28px; }
}
/* Canonical form layout: label, 48px control, reserved feedback. */
:root { --control-height:48px; --form-gap:20px; --field-label-height:20px; }
form .form-field { display:flex; flex-direction:column; align-items:stretch; min-width:0; font-size:13px; font-weight:650; line-height:20px; }
form .form-field > .field-label { display:block; min-height:var(--field-label-height); margin:0 0 8px; color:#284562; font:inherit; line-height:20px; }
form .form-field > input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
form .form-field > textarea,
form .form-field > .select-picker,
form .form-field > .city-combobox,
form .form-field > .date-controls { width:100%; min-width:0; margin:0; }
form .form-field input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
form .form-field .country-trigger { min-height:var(--control-height); height:var(--control-height); box-sizing:border-box; margin:0; padding:12px 14px; border:1px solid #bdcfe1; border-radius:10px; background:#fff; color:#1b3b5e; font-size:14px; font-weight:400; line-height:22px; box-shadow:none; }
form .form-field .country-trigger { display:flex; align-items:center; gap:8px; text-align:left; }
form .form-field textarea { min-height:112px; padding:12px 14px; border:1px solid #bdcfe1; border-radius:10px; background:#fff; font-size:14px; line-height:1.6; }
form .form-field input:focus,form .form-field textarea:focus,form .form-field .country-trigger:focus-visible { border-color:#1d64b5; box-shadow:0 0 0 3px #1d64b512; }
form .form-field .field-error { display:block; min-height:32px; margin:4px 0 0; font-size:12px; font-weight:400; line-height:16px; }
form .form-field:has([aria-invalid=true]) > .field-label { color:#a33028; }
form .form-field [aria-invalid=true]:not(select) { border-color:#c84e42; background:#fffafa; }
form .form-grid { gap:16px 20px; align-items:start; }
form .route-endpoints { gap:24px; align-items:start; }
form .route-endpoint { min-width:0; padding:20px; background:#f7faff; border:1px solid #dce6f2; border-radius:14px; }
form .route-endpoint h3 { min-height:24px; margin:0 0 20px; font-size:16px; line-height:24px; }
form .route-endpoint h3::before { box-shadow:none; width:7px; height:7px; margin:0 2px; }
form .route-endpoint .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
form .route-endpoint .route-address { padding-top:20px; margin-top:12px; border-top:1px solid #dce6f2; }
.route-addresses { display:grid; gap:20px; margin-top:20px; }
.route-addresses:empty,.route-addresses:not(:has(.route-address:not([hidden]))) { display:none; }
.route-addresses > .route-address { padding:20px; border:1px solid #dce6f2; border-radius:14px; background:#f7faff; }
.route-addresses h3 { margin:0 0 20px; font-size:15px; line-height:24px; color:#284562; }
form .route-addresses .form-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2fr); gap:0 20px; }
form .route-date { width:100%; min-width:0; max-width:none; margin:0; }
form .date-field { container:date-field / inline-size; }
form .date-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0; border:0; border-radius:0; background:none; }
form .date-controls > *,form .date-controls .select-picker { min-width:0; width:100%; margin:0; }
form .date-controls:has(input[hidden]) { grid-template-columns:minmax(0,1fr); }
form .date-controls:has([aria-invalid=true]) { border:0; background:none; }
form .date-controls input[type=date] { padding:12px 14px; font-size:14px; line-height:22px; font-variant-numeric:tabular-nums; }
form .date-controls .country-trigger { padding:12px 14px; font-size:14px; }
form .date-controls input[type=date]::-webkit-datetime-edit { padding:0; }
form .date-controls input[type=date]::-webkit-datetime-edit-text { padding:0 1px; }
form .date-controls input[type=date]::-webkit-calendar-picker-indicator { width:18px; height:18px; padding:0; margin-left:8px; }
form .journey-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px; padding:24px 20px 0; align-items:start; }
form .journey-actions > .btn { width:100%; min-height:var(--control-height); height:var(--control-height); padding:10px 18px; margin:28px 0 0; border-radius:10px; line-height:22px; box-shadow:none; }
.search-route-endpoints { position:relative; }
.journey-swap { position:absolute; top:14px; left:50%; transform:translateX(-50%); display:grid; place-items:center; width:36px; height:36px; border:1px solid #d2e0ef; border-radius:50%; color:#0c58ac; background:#fff; z-index:1; }
.journey-swap:hover { background:#eaf3ff; }
.route-filter { padding:28px; }
.journey-form { display:block; }
.request-form { padding:32px; }
.request-form .form-block { padding:28px 0; }
.request-form .form-block:last-child { padding-bottom:0; }
.request-form .route-date { padding:24px 0 0; margin-top:4px; border-top:1px solid #e3eaf3; }
.form-block > .form-footnote { margin-top:12px; text-align:left; }
.form-block h2 { line-height:1.3; margin:12px 0 24px; }
.request-form .request-types { margin:0 0 24px; padding:0 0 24px; border:0; border-bottom:1px solid #e3eaf3; }
.request-form .request-types legend,.request-form .request-type-label { margin-bottom:8px; color:#284562; font-size:14px; font-weight:750; }
.request-form .request-type-label { margin-bottom:0; }
.request-form .check-label { display:grid; grid-template-columns:20px minmax(0,1fr); column-gap:10px; row-gap:0; align-items:start; }
.request-form .check-label > input { width:20px; height:20px; margin:1px 0 0; }
.request-form .check-label > .field-error { grid-column:2; margin:0; min-height:32px; line-height:16px; }
.request-form .request-actions { display:flex; flex-wrap:wrap; align-items:stretch; gap:12px; margin:24px 0 0; }
.request-form .request-actions > .btn { display:flex; align-items:center; justify-content:center; min-height:48px; height:auto; margin:0; padding:12px 18px; border-radius:10px; font-size:13px; line-height:22px; box-shadow:none; }
.request-form .request-actions > .btn:only-child { width:100%; }
.request-form .request-actions + .request-disclaimer { margin:20px 0 0; }
.form-card > .form-footnote { margin:0 0 16px; padding:12px 14px; text-align:left; }
/* The image has genuine alpha; white vehicle paint stays opaque and untinted. */
.brand-visual img { mix-blend-mode:normal; }
@container date-field (max-width:380px) { form .date-controls { grid-template-columns:minmax(0,1fr); } }
@media(max-width:800px) {
  form .route-endpoints { grid-template-columns:minmax(0,1fr); gap:16px; }
  .journey-swap { top:calc(50% - 18px); left:auto; right:22px; transform:rotate(90deg); }
  form .journey-actions { gap:24px; padding:20px 0 0; }
  .form-block > .route-date { padding-inline:0; }
}
@media(max-width:620px) {
  .search-card,.route-filter { padding:22px 18px; }
  .request-form { padding:24px 20px; }
  .request-form .request-actions { flex-direction:column; }
  .request-form .request-actions > .btn { width:100%; }
  form .route-endpoint { padding:18px; }
  form .route-endpoint .form-grid { grid-template-columns:minmax(0,1fr); }
  form .route-addresses .form-grid { grid-template-columns:minmax(0,1fr); gap:0; }
  .route-addresses > .route-address { padding:18px; }
  form .route-address .street-field { grid-column:1/-1; }
  form .journey-actions { grid-template-columns:minmax(0,1fr); gap:8px; padding:20px 0 0; }
  form .journey-actions > .btn { margin:0; }
  form .form-field input:not([type=checkbox]):not([type=radio]):not([type=hidden]),form .form-field .country-trigger,form .form-field textarea { font-size:16px; }
  form .date-controls .country-trigger,form .date-controls input[type=date] { font-size:16px; }
}
