@font-face{font-family:Titillium;src:url('/assets/titillium-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Titillium;src:url('/assets/titillium-bold.ttf') format('truetype');font-weight:700 900;font-display:swap}
:root{--navy:#0b2340;--ink:#112541;--blue:#0860d6;--cyan:#52b9dc;--yellow:#ffcf30;--pale:#f1f7fc;--muted:#66768a;--line:#e3eaf1;--radius:14px;--shadow:0 10px 36px #1c548b0b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{margin:0;color:var(--ink);font:16px/1.55 Titillium,Arial,sans-serif;background:#fff}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1479fb;outline-offset:4px}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:700;line-height:1.13}p{color:var(--muted)}h2{font-size:clamp(30px,3.1vw,44px);letter-spacing:-1.1px}h3{font-size:22px;letter-spacing:-.35px}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.icon{width:23px;height:23px;flex-shrink:0;vertical-align:middle}.skip-link{position:fixed;top:-100px;left:12px;background:#fff;padding:12px;z-index:200}.skip-link:focus{top:12px}.topbar{background:var(--navy);color:#dde8f4;font-size:12px}.topbar-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-inner>div{display:flex;gap:26px}.topbar a{display:inline-flex;align-items:center;gap:8px}.topbar .icon{width:14px;height:14px}.topbar-inner>span{color:#a6bbd0;font-size:11px;letter-spacing:.6px}.site-header{background:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid #e9edf1}.nav-inner{height:91px;display:flex;align-items:center;gap:30px}.brand{margin-right:auto;flex-shrink:0}.brand img{width:184px;height:auto}.main-nav{display:flex;gap:27px;align-items:center;font-weight:700;font-size:14px}.main-nav>a{display:flex;align-items:center;gap:5px;white-space:nowrap}.main-nav>a:hover{color:var(--blue)}.main-nav .icon{width:14px;height:14px}.button{min-height:49px;padding:12px 22px;display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid transparent;border-radius:8px;font-weight:700;font-size:14px;line-height:1.4;transition:background .18s,transform .18s;white-space:nowrap}.button:hover{transform:translateY(-2px)}.button-yellow{background:var(--yellow);color:#142c3f}.button-yellow:hover{background:#ffdb58}.button-blue{background:var(--blue);color:#fff}.button-blue:hover{background:#044cb1}.button-glass{background:#082a425c;color:#fff;border-color:#ffffff9c;backdrop-filter:blur(6px)}.button-glass:hover{background:#082a42ad}.button-outline{border-color:var(--line);background:white;color:var(--blue)}.button-outline:hover{border-color:var(--blue);background:var(--pale)}.button-small{min-height:39px;padding:8px 14px}.nav-cta{font-size:13px;padding:12px 16px;min-height:45px}.nav-cta .icon{width:18px;height:18px}.menu-toggle{display:none;border:0;background:none;padding:10px}.hero{height:620px;position:relative;isolation:isolate;overflow:hidden;background:#243b45;color:#fff}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#062541d9 0%,#0929449e 32%,#092b4722 65%,#092b4700 100%);z-index:-2}.hero-content{padding-top:65px}.hero-kicker{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:2.5px;font-weight:700;margin-bottom:21px}.hero-kicker>span{width:22px;height:2px;background:var(--yellow)}.hero h1{font-size:clamp(46px,5vw,67px);letter-spacing:-1.7px;line-height:1.025}.hero h1 em{color:var(--yellow);font-style:normal}.hero-content>p{color:#e0e9ef;font-size:17px;line-height:1.6;margin-top:23px;max-width:425px}.hero-actions{display:flex;gap:12px;margin-top:26px}.hero-caption{position:absolute;right:48px;bottom:115px;color:#fff;font-size:12px;text-shadow:0 1px 6px #000;letter-spacing:.4px}.hero-trust{position:absolute;bottom:0;width:100%;background:#082c477e;border-top:1px solid #ffffff29;backdrop-filter:blur(12px)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:88px;align-items:center}.trust-grid>div{display:flex;align-items:center;justify-content:center;gap:15px;font-size:14px;border-right:1px solid #ffffff26}.trust-grid>div:first-child{justify-content:flex-start}.trust-grid>div:last-child{border:0}.trust-grid .icon{width:30px;height:30px;stroke-width:1.4;color:#c1deef}.section{padding:73px 0}.section-heading{display:flex;align-items:center;gap:30px;justify-content:space-between;margin-bottom:34px}.section-heading>p{font-size:15px;max-width:390px;margin-left:auto}.section-heading>div>p{font-size:16px;margin-top:18px;line-height:1.5}.eyebrow{font-size:11px;color:var(--blue);font-weight:700;letter-spacing:2.3px;display:block;margin-bottom:12px}.round-link{width:47px;height:47px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--blue)}.round-link:hover{background:var(--blue);color:#fff}.offer-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:19px}.offer-card{border-radius:12px;background:#fff;box-shadow:0 6px 24px #174e8110;overflow:hidden;border:1px solid #edf1f5;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.offer-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #174e8120}.offer-image{height:180px;position:relative}.offer-image img{height:100%;width:100%;object-fit:cover}.offer-icon{position:absolute;bottom:-19px;left:17px;background:#fff;color:var(--blue);width:45px;height:45px;border-radius:50%;display:grid;place-items:center;box-shadow:0 3px 10px #21476415}.offer-icon .icon{width:24px;height:24px}.offer-copy{padding:32px 17px 19px;display:flex;flex-direction:column;flex:1}.offer-copy h3{font-size:19px;line-height:1.2}.offer-copy>p{font-size:14px;line-height:1.5;margin-top:10px;margin-bottom:20px}.text-link{color:var(--blue);font-weight:700;display:inline-flex;align-items:center;gap:10px;font-size:14px}.text-link .icon{width:17px;height:17px}.offer-copy .text-link{margin-top:auto;font-size:13px;justify-content:space-between}.offer-bottom{border-top:1px solid var(--line);margin-top:34px;padding-top:21px;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted)}.reservation-section{padding:67px 0 73px;background:linear-gradient(120deg,#eaf4fe 0%,#f0f7fc 55%,#dcecf2 100%);scroll-margin-top:0}.reservation-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(230px,1fr);gap:27px;align-items:stretch}.inquiry-form{background:#fff;border-radius:16px;padding:31px;box-shadow:0 10px 30px #24618c09}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.form-columns>fieldset+fieldset{border-left:1px solid var(--line);padding-left:28px}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-size:17px;font-weight:700;margin-bottom:20px;display:flex;align-items:center;gap:10px;float:left;width:100%;color:var(--blue)}legend+*{clear:both}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:13px;font-size:13px;color:#35495f}.field>span,.field>label{font-weight:700}.field b,.checkbox b{color:#d36958}.field input,.field select,.field textarea{min-width:0;width:100%;padding:10px 12px;background:#f5f8fb;border:1px solid #e6ecf2;border-radius:6px;min-height:42px;color:var(--ink);font-size:14px;line-height:1.45}.field textarea{resize:vertical;min-height:90px}.field input::placeholder,.field textarea::placeholder{color:#8a98a8}.field input:focus,.field select:focus,.field textarea:focus{border-color:#5a9cf0;outline:2px solid #5a9cf025;outline-offset:0;background:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-submit{display:flex;align-items:center;gap:25px;justify-content:space-between;margin-top:21px}.checkbox{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.5;color:#607184}.checkbox input{width:17px;height:17px;margin:0;flex-shrink:0;accent-color:var(--blue)}.checkbox a{text-decoration:underline;text-underline-offset:3px}.form-submit .checkbox{max-width:390px}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-message{font-size:14px;margin-top:10px}.form-message:empty{display:none}.success{color:#177753}.error{color:#b83731}.reservation-aside{padding:31px;color:white;border-radius:16px;background:linear-gradient(180deg,#0b2e44b8,#092841dd),url('/assets/hero.jpg') 70% center/cover;display:flex;flex-direction:column;justify-content:space-between}.aside-top>.icon{width:46px;height:46px;stroke-width:1.2;margin-bottom:20px;color:#bcd8e7}.aside-top h3{font-size:34px;line-height:1.1;letter-spacing:-.5px}.reservation-aside ul{padding:30px 0 22px;margin:0;list-style:none}.reservation-aside li{display:flex;align-items:center;gap:13px;padding:10px 0;font-size:14px;color:#d9e7ef}.reservation-aside li .icon{width:22px;height:22px}.aside-help{border-top:1px solid #ffffff2c;padding-top:19px;font-size:12px;color:#b6cbda}.aside-help a{display:flex;align-items:center;justify-content:space-between;font-size:18px;color:white;margin-top:6px;font-weight:700}.why-section{padding-bottom:86px}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:45px}.why-item{padding:0 26px;border-right:1px solid var(--line)}.why-item:first-child{padding-left:0}.why-item:last-child{border:0;padding-right:0}.why-icon{display:flex;width:66px;height:66px;align-items:center;justify-content:center;background:#edf5ff;color:var(--blue);border-radius:50%;margin-bottom:22px}.why-icon .icon{width:31px;height:31px;stroke-width:1.5}.why-item h3{font-size:19px;line-height:1.28;margin-bottom:11px;max-width:210px}.why-item p{font-size:14px;line-height:1.6}.site-footer{background:#0a253e;color:#d9e6f1;padding-top:56px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:50px;padding-bottom:48px}.footer-brand img{width:185px;height:auto}.footer-brand p{font-size:14px;line-height:1.7;color:#a8bdce;margin-top:21px}.footer-tag{font-size:9px;letter-spacing:1.7px;color:#6895b4;display:block;margin-top:24px}.footer-grid h3{color:#fff;font-size:16px;margin-bottom:19px}.footer-grid>div:not(:first-child)>a{display:block;color:#b9cddd;font-size:13px;margin-bottom:9px}.footer-grid>div>a:hover{color:var(--yellow)}.footer-grid .footer-phone{font-size:23px!important;color:white!important;font-weight:700;line-height:1.2}.footer-contact p{font-size:13px;color:#b9cddd;margin-top:17px;margin-bottom:14px}.footer-bottom{padding:22px 0;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff1c;font-size:11px;color:#829fb7}.footer-bottom>a{display:flex;gap:6px;align-items:center}.footer-bottom .icon{width:13px;height:13px}.footer-bottom>span:nth-child(2){font-style:italic}.notice{background:#edf7ef;color:#326b43;text-align:center;font-size:14px;padding:12px}.breadcrumb{display:flex;gap:9px;align-items:center;font-size:13px;color:var(--muted);margin-bottom:26px;flex-wrap:wrap}.breadcrumb .icon{width:12px;height:12px}.page-intro{padding:44px 0 34px;background:var(--pale)}.page-intro h1{font-size:clamp(35px,4vw,51px);letter-spacing:-1px;margin-bottom:14px}.page-intro p{max-width:640px}.filter-box{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr auto;gap:13px;align-items:end;padding:22px;background:white;border:1px solid var(--line);border-radius:12px;margin-top:30px}.filter-box .field{margin:0}.catalog-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.catalog-tools p{font-size:14px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.trip-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s}.trip-card:hover{box-shadow:0 10px 28px #223b5714}.trip-card-image{height:205px;position:relative;overflow:hidden}.trip-card-image>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.trip-card:hover .trip-card-image>img{transform:scale(1.04)}.badge{display:inline-flex;padding:4px 10px;border-radius:5px;background:#edf4ff;color:#1658a8;font-size:11px;font-weight:700;line-height:1.5}.trip-card-image>.badge{position:absolute;left:14px;top:14px;background:white}.trip-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.trip-location{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);margin-bottom:11px}.trip-location .icon{width:15px;height:15px}.trip-card h2{font-size:23px;line-height:1.2;letter-spacing:-.4px}.trip-date{font-size:13px;margin-top:16px;display:flex;align-items:center;gap:8px;color:var(--muted)}.trip-date .icon{width:16px;height:16px}.trip-dates{display:grid;gap:8px;margin:16px 0 0}.trip-dates .trip-date{margin-top:0;align-items:flex-start}.trip-dates .trip-date .icon{margin-top:2px}.trip-more-dates{font-size:13px;color:var(--blue);font-weight:700;margin-left:24px}.trip-more-dates:hover{text-decoration:underline}.trip-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:18px;margin-top:auto}.trip-card-bottom strong{font-size:20px;color:var(--blue)}.trip-card-bottom small{display:block;color:var(--muted);font-size:11px}.catalog-section{padding:38px 0 70px}.empty-state{text-align:center;padding:65px 25px;background:var(--pale);border-radius:12px}.empty-state h2{font-size:28px;margin-bottom:12px}.empty-state p{margin-bottom:20px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.chip{border:1px solid #d5e2ed;background:white;padding:6px 13px;font-size:12px;border-radius:20px}.chip.active{background:var(--blue);color:white;border-color:var(--blue)}.pagination{display:flex;gap:7px;justify-content:center;margin-top:35px}.pagination a{min-width:38px;padding:8px 12px;border:1px solid var(--line);text-align:center;border-radius:5px}.pagination .current{background:var(--blue);color:white}.detail-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:42px;align-items:start}.detail-image{width:100%;max-height:460px;object-fit:cover;border-radius:12px;margin-bottom:30px}.prose{font-size:16px;line-height:1.8;overflow-wrap:anywhere}.prose p{margin-bottom:18px;color:#52667a;white-space:normal}.prose h2{font-size:28px;margin:30px 0 18px}.prose h3{font-size:22px;margin:25px 0 14px}.prose a{color:var(--blue);text-decoration:underline}.booking-panel{border:1px solid var(--line);border-radius:14px;padding:25px;position:sticky;top:120px;background:white}.booking-panel h2{font-size:28px;letter-spacing:-.5px;margin-bottom:14px}.booking-panel>p{font-size:14px;margin-bottom:20px}.departure-row{padding:16px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.departure-row strong{display:block;font-size:18px;color:var(--blue)}.departure-row time{display:block;font-size:14px;font-weight:700}.muted{color:var(--muted)}.small{font-size:13px}.narrow{max-width:850px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:34px 0}.contact-card{padding:28px;background:var(--pale);border-radius:12px}.contact-card h2{font-size:25px;margin-bottom:18px}.contact-card a{color:var(--blue);display:block;font-size:20px;font-weight:700}.contact-card p{margin-top:15px}.content-hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.content-hero img{border-radius:14px;min-height:330px;object-fit:cover}.content-hero p{margin:20px 0}.status-page{min-height:60vh;display:flex;justify-content:center;align-items:center;padding:60px 24px}.status-card{width:560px;max-width:100%;text-align:center}.status-card>.icon{width:60px;height:60px;color:var(--blue);margin-bottom:25px}.status-card h1{font-size:40px;margin-bottom:15px}.status-card p{margin-bottom:25px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-visual{padding:60px;background:linear-gradient(135deg,#082941ee,#08294170),url('/assets/fleet.jpg') center/cover;color:white;display:flex;flex-direction:column;justify-content:space-between}.login-visual img{width:190px}.login-visual h1{font-size:52px;max-width:430px;letter-spacing:-1px}.login-visual p{color:#b9d2e3;margin-top:22px;max-width:390px}.login-main{padding:50px 30px;display:flex;align-items:center;justify-content:center;background:#f7f9fc}.login-box{width:390px;max-width:100%}.login-box h2{font-size:33px;margin-bottom:12px}.login-box>p{font-size:14px;margin-bottom:28px}.login-box form{margin-top:20px}.login-box .button{width:100%;margin-top:12px}.login-box .field{margin-bottom:19px}.login-box .field input{background:#fff;min-height:49px}.login-lock{height:52px;width:52px;background:#e5efff;border-radius:12px;display:grid;place-items:center;color:var(--blue);margin-bottom:23px}.login-note{margin-top:30px;font-size:12px;color:#7c8b9d;display:flex;gap:10px}.login-note .icon{width:17px;height:17px}.alert{padding:13px 17px;border-radius:7px;background:#fff4df;color:#805e1a;font-size:14px;margin-bottom:22px}.alert-error{background:#fff0ef;color:#a52f29}.alert-success{background:#eaf8f1;color:#196649}.admin-body{background:#f5f7fa}.admin-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.admin-sidebar{background:#fff;border-right:1px solid var(--line);padding:28px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.admin-sidebar img{width:163px;margin:4px 15px 13px}.admin-label{font-size:10px;letter-spacing:2px;color:#8b9baf;margin:0 15px 35px}.admin-sidebar nav{display:flex;flex-direction:column;gap:5px}.admin-sidebar nav a{padding:12px 14px;display:flex;gap:12px;align-items:center;color:#5c7086;font-size:14px;border-radius:7px}.admin-sidebar nav a.active{background:#eaf3ff;color:var(--blue);font-weight:700}.admin-sidebar nav .icon{width:19px;height:19px}.sidebar-bottom{margin-top:auto;padding:25px 10px 0;border-top:1px solid var(--line)}.sidebar-bottom a{font-size:13px;color:var(--blue)}.sidebar-bottom p{font-size:11px;margin-top:14px}.admin-topbar{min-height:80px;padding:15px 38px;display:flex;justify-content:space-between;gap:20px;align-items:center;background:#fff;border-bottom:1px solid var(--line);font-size:13px}.admin-user{display:flex;gap:12px;align-items:center}.avatar{width:33px;height:33px;display:grid;place-items:center;background:#edf4fd;color:var(--blue);border-radius:50%;font-weight:700}.admin-topbar form{display:inline}.icon-button{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);width:35px;height:35px;border-radius:6px;color:#678}.icon-button .icon{width:17px;height:17px}.admin-content{padding:34px 38px;max-width:1500px}.admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.admin-page-heading h1{font-size:32px;letter-spacing:-.65px;margin-bottom:8px}.admin-page-heading p{font-size:14px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:19px;margin-bottom:30px}.stat-card{background:white;border:1px solid var(--line);padding:21px;border-radius:10px;position:relative}.stat-card>span{font-size:13px;color:var(--muted)}.stat-card>strong{display:block;font-size:33px;line-height:1.4;margin-top:12px}.stat-card>.icon{position:absolute;right:20px;top:20px;color:#6895d2;width:21px;height:21px}.stat-card>small{font-size:11px;color:#8d9aab}.panel{background:white;border:1px solid var(--line);border-radius:11px;overflow:hidden;margin-bottom:25px}.panel-heading{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-heading h2{font-size:20px;letter-spacing:-.3px}.panel-body{padding:25px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:13px}th{padding:13px 22px;font-size:11px;font-weight:700;color:#7b8ba0;background:#fafbfd}td{padding:16px 22px;border-top:1px solid #edf1f5;color:#435a71}td a{color:var(--blue);font-weight:700}td strong{display:block;font-weight:700;color:var(--ink)}td small{display:block;color:#8a9aab;font-size:11px}.table-title{white-space:normal;min-width:180px;max-width:370px}.badge-new{background:#fff3ce;color:#927009}.badge-confirmed,.badge-published{background:#e6f7ee;color:#20845c}.badge-cancelled,.badge-archived{background:#f0f2f4;color:#7c8898}.badge-pending{background:#e9f1fe;color:#3777c3}.admin-filter{display:flex;gap:13px;align-items:end;margin-bottom:24px;flex-wrap:wrap}.admin-filter .field{margin:0;min-width:160px}.admin-filter .search-field{flex:1}.admin-form,.trip-editor-departures,.trip-delete{max-width:950px}.admin-form .field input,.admin-form .field select,.admin-form .field textarea{background:#fff}.admin-form .field textarea{min-height:160px}.admin-form fieldset{background:#fff;border:1px solid var(--line);border-radius:11px;padding:25px;margin-bottom:23px}.admin-form legend{font-size:18px;color:var(--ink);margin-bottom:20px}.admin-form .form-actions{display:flex;align-items:center;gap:12px}.admin-form .check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;clear:both}.admin-form .check-grid .checkbox{font-size:14px}.admin-two-cols{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:start}.definition-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.definition-grid dt{font-size:12px;color:#8a9aab}.definition-grid dd{margin:5px 0 0;font-size:15px;overflow-wrap:anywhere}.admin-note{white-space:pre-wrap;font-size:14px;color:#586e83}.admin-empty{padding:42px 25px;text-align:center;color:var(--muted);font-size:14px}.audit-list{list-style:none;margin:0;padding:0}.audit-list li{padding:15px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px;gap:20px}.audit-list time{color:#92a0b1;font-size:11px}.full{grid-column:1/-1}.download-list{list-style:none;padding:0}.download-list li{padding:15px 0;border-bottom:1px solid var(--line)}.download-list a{display:flex;align-items:center;gap:12px;color:var(--blue);font-weight:700}.toast[hidden]{display:none}
@media(min-width:1550px){.hero{height:680px}.hero-content{padding-top:90px}.hero h1{font-size:74px}.hero-image{object-position:center 55%}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.nav-inner{gap:18px;height:82px}.main-nav{gap:16px;font-size:13px}.brand img{width:160px}.nav-cta{font-size:12px;padding:11px}.topbar-inner>span{display:none}.hero{height:590px}.hero h1{font-size:57px}.hero-caption{display:none}.offer-grid{gap:12px}.offer-image{height:155px}.offer-copy{padding-left:14px;padding-right:14px}.offer-copy h3{font-size:17px}.offer-copy p{font-size:13px}.offer-copy .text-link{font-size:12px;gap:3px}.form-columns{gap:20px}.form-columns>fieldset+fieldset{padding-left:20px}.inquiry-form{padding:24px}.reservation-layout{gap:20px;grid-template-columns:minmax(0,3fr) minmax(210px,1fr)}.reservation-aside{padding:25px}.aside-top h3{font-size:30px}.form-submit{gap:15px}.footer-grid{gap:30px}.why-item{padding:0 20px}.admin-shell{grid-template-columns:210px minmax(0,1fr)}.admin-content{padding:28px}.admin-topbar{padding:15px 28px}.admin-sidebar{padding:24px 12px}.stats-grid{gap:12px}.stat-card{padding:16px}.stat-card>.icon{display:none}}
@media(max-width:900px){.container{width:calc(100% - 48px)}.nav-inner{height:76px}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:24px;box-shadow:0 16px 20px #0b234015;align-items:stretch}.main-nav.open{display:flex;flex-direction:column}.main-nav a{padding:9px;font-size:17px}.menu-toggle{display:block}.brand{margin-right:auto}.hero{height:610px}.hero-image{object-position:64% center}.hero-shade{background:linear-gradient(90deg,#052840e3,#052840a8 40%,#05284010)}.hero-content{padding-top:65px}.trust-grid>div{font-size:12px;gap:8px}.trust-grid .icon{width:23px;height:23px}.section{padding:55px 0}.offer-grid{grid-template-columns:repeat(3,1fr);gap:18px}.offer-card:nth-child(4),.offer-card:nth-child(5){grid-column:span 1}.offer-image{height:185px}.offer-copy h3{font-size:20px}.offer-copy p{font-size:14px}.offer-copy .text-link{font-size:13px}.section-heading>p{max-width:300px;font-size:13px}.round-link{display:none}.reservation-layout{grid-template-columns:1fr}.reservation-aside{display:none}.inquiry-form{padding:30px}.why-grid{grid-template-columns:1fr 1fr;gap:30px}.why-item,.why-item:first-child,.why-item:last-child{padding:0 25px 0 0;border:0}.why-item h3{max-width:none}.why-icon{margin-bottom:15px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-bottom>span:nth-child(2){display:none}.filter-box{grid-template-columns:1fr 1fr}.filter-box .button{grid-column:span 2}.catalog-grid{grid-template-columns:repeat(2,1fr)}.admin-shell{grid-template-columns:175px minmax(0,1fr)}.admin-sidebar{padding:25px 10px}.admin-sidebar img{width:135px;margin:0 10px 12px}.admin-label{font-size:8px;margin-left:10px}.admin-sidebar nav a{padding:10px;font-size:13px;gap:8px}.admin-content{padding:24px 20px}.admin-topbar{padding:15px 20px}.stats-grid{grid-template-columns:repeat(2,1fr)}.admin-two-cols{grid-template-columns:1fr}.admin-page-heading{align-items:flex-start}.admin-page-heading h1{font-size:29px}.content-hero{gap:25px}.login-visual{padding:40px}.login-visual h1{font-size:42px}}
@media(max-width:600px){.container{width:calc(100% - 40px)}.topbar{display:none}.nav-inner{height:75px;gap:10px}.brand img{width:142px}.nav-cta{padding:10px 12px;min-height:41px;font-size:12px;gap:7px}.nav-cta .icon:last-child{display:none}.nav-cta .icon{width:17px;height:17px}.menu-toggle{padding:6px}.main-nav{top:75px}.hero{height:740px}.hero-image{height:100%;object-position:65% 100%;opacity:.96}.hero-shade{background:linear-gradient(180deg,#062b44e6 0%,#072c44c4 34%,#072c4433 63%,#072c44b8 85%)}.hero-content{padding-top:36px}.hero-kicker{font-size:9px;letter-spacing:2px;margin-bottom:22px}.hero h1{font-size:49px;line-height:1.025;letter-spacing:-1.3px}.hero-content>p{font-size:16px;line-height:1.55;margin-top:19px;max-width:340px}.hero-actions{position:absolute;bottom:151px;left:20px;right:20px;flex-direction:column;gap:10px}.hero-actions .button{min-height:48px}.hero-trust{background:#052943bf}.trust-grid{min-height:127px;gap:7px;grid-template-columns:repeat(4,1fr)}.trust-grid>div,.trust-grid>div:first-child{font-size:11px;line-height:1.4;flex-direction:column;text-align:center;border:0;gap:9px;justify-content:center}.trust-grid .icon{width:27px;height:27px}.section{padding:43px 0}.section-heading{display:block;margin-bottom:25px}.eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:10px}h2{font-size:34px;letter-spacing:-.8px}.section-heading>p{max-width:none;font-size:15px;margin:17px 0 0}.section-heading>p br{display:none}.offer-grid{display:flex;flex-direction:column;gap:11px}.offer-card{display:grid;grid-template-columns:104px 1fr;box-shadow:none;border-color:#e7edf4;min-height:120px;border-radius:10px}.offer-image{height:100%;min-height:120px}.offer-icon{display:none}.offer-copy{padding:14px 15px;position:relative}.offer-copy h3{font-size:19px;color:var(--blue);letter-spacing:-.3px}.offer-copy>p{font-size:13px;line-height:1.4;margin-top:7px;margin-bottom:0;padding-right:12px}.offer-copy .text-link{font-size:0;position:absolute;right:9px;top:49%;width:21px;overflow:hidden;display:block}.offer-copy .text-link .icon{width:16px;height:16px}.offer-bottom{display:block;text-align:center;margin-top:23px;padding-top:20px}.offer-bottom>span{display:none}.offer-bottom>a{font-size:13px}.reservation-section{padding:41px 0}.reservation-section h2{font-size:33px;max-width:330px}.section-heading>div>p{font-size:15px;margin-top:15px}.inquiry-form{padding:22px 18px;border-radius:12px}.form-columns{grid-template-columns:1fr;gap:22px}.form-columns>fieldset+fieldset{padding:0;border-left:0;padding-top:20px;border-top:1px solid var(--line)}legend{font-size:17px;margin-bottom:17px}.field{margin-bottom:15px}.field>span,.field>label{font-size:13px}.field input,.field select,.field textarea{min-height:45px;font-size:16px}.form-submit{display:flex;flex-direction:column;align-items:stretch;gap:21px;margin-top:19px}.form-submit .checkbox{font-size:12px}.form-submit .button{min-height:48px}.why-grid{display:flex;flex-direction:column;margin-top:29px;gap:25px}.why-item,.why-item:first-child,.why-item:last-child{padding:0 0 0 79px;position:relative;min-height:65px}.why-icon{position:absolute;left:0;top:0;width:59px;height:59px}.why-icon .icon{width:29px;height:29px}.why-item h3{font-size:19px;max-width:245px;margin-bottom:6px}.why-item p{font-size:14px;line-height:1.4}.why-section .section-heading>.button{margin-top:18px}.footer-grid{gap:27px 22px;padding-bottom:30px}.footer-brand{grid-column:1/-1}.footer-brand img{width:163px}.footer-brand p{margin-top:12px;font-size:13px}.footer-tag{display:none}.footer-grid h3{font-size:15px;margin-bottom:15px}.footer-grid>div:not(:first-child)>a{font-size:12px}.footer-contact{grid-column:1/-1;border-top:1px solid #ffffff22;padding-top:25px}.footer-grid .footer-phone{font-size:24px!important}.footer-contact p{margin-top:12px}.site-footer{padding-top:35px}.footer-bottom{padding:17px 0;font-size:9px;gap:12px}.footer-bottom .icon{display:none}.page-intro{padding:27px 0}.breadcrumb{font-size:11px;margin-bottom:19px}.page-intro h1{font-size:37px}.page-intro>div>p{font-size:15px}.filter-box{padding:16px;gap:12px}.filter-box>.field:first-child{grid-column:1/-1}.filter-box .field input,.filter-box .field select{font-size:14px}.filter-box>.field:nth-child(4){grid-column:1/-1}.catalog-grid{grid-template-columns:1fr}.catalog-tools{font-size:12px;align-items:flex-start}.catalog-tools .field{max-width:155px}.catalog-tools .field select{font-size:13px;min-height:36px}.trip-card-image{height:215px}.trip-card h2{font-size:25px}.detail-layout{grid-template-columns:1fr;gap:25px}.booking-panel{position:static;padding:22px}.detail-image{max-height:300px}.contact-grid{grid-template-columns:1fr}.content-hero{grid-template-columns:1fr;gap:25px}.content-hero img{min-height:200px;max-height:290px;width:100%}.login-page{display:block}.login-visual{padding:25px;background:var(--navy);min-height:140px}.login-visual img{width:150px}.login-visual h1{font-size:24px;margin-top:20px}.login-visual p,.login-visual>span{display:none}.login-main{padding:40px 24px}.login-box h2{font-size:31px}.login-lock{display:none}.admin-shell{display:block}.admin-sidebar{position:static;height:auto;padding:18px 15px 0;border-right:0;border-bottom:1px solid var(--line)}.admin-sidebar img{width:128px;margin:0 6px}.admin-label{display:none}.admin-sidebar nav{margin-top:16px;flex-direction:row;overflow-x:auto;padding-bottom:10px;gap:4px}.admin-sidebar nav a{flex-shrink:0;padding:9px;font-size:12px;gap:6px}.admin-sidebar nav .icon{width:15px;height:15px}.sidebar-bottom{display:none}.admin-topbar{min-height:57px;padding:10px 20px;font-size:11px}.admin-topbar .admin-user>span:not(.avatar){display:none}.avatar{height:28px;width:28px}.admin-content{padding:24px 16px}.admin-page-heading{gap:12px}.admin-page-heading h1{font-size:27px}.admin-page-heading p{font-size:12px}.admin-page-heading>.button{font-size:11px;padding:9px 11px;min-height:37px;gap:5px}.admin-page-heading>.button .icon{width:16px;height:16px}.stats-grid{gap:10px}.stat-card{padding:15px}.stat-card>span{font-size:11px}.stat-card>strong{font-size:27px;margin-top:6px}.stat-card small{font-size:10px}.panel-heading{padding:17px}.panel-body{padding:19px}.panel-heading h2{font-size:18px}th,td{padding:13px 17px}.admin-form fieldset{padding:19px}.admin-form .form-row{grid-template-columns:1fr}.admin-form .check-grid{grid-template-columns:1fr}.admin-filter{gap:10px}.admin-filter .field{min-width:120px}.admin-filter .search-field{min-width:100%}.definition-grid{gap:20px}.definition-grid dd{font-size:13px}.admin-page-heading .text-link{font-size:11px}.audit-list li{padding:13px 17px}.status-card h1{font-size:33px}.status-page{min-height:60vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

@media(max-width:380px){.brand img{width:111px}.nav-inner{gap:6px}.nav-cta{font-size:11px;padding:9px 10px;gap:5px}.menu-toggle{padding:5px}.menu-toggle .icon{width:21px;height:21px}.hero h1{font-size:44px}.hero-content>p{font-size:15px}.hero-kicker{font-size:8px;letter-spacing:1.6px}.form-row{grid-template-columns:1fr}.inquiry-form{padding:20px 15px}}

.site-footer .footer-brand img,.login-visual img{filter:invert(1) hue-rotate(180deg);mix-blend-mode:screen}
/* Persistent React layout and reserved loading space. */
html{scrollbar-gutter:stable}body{overflow-y:scroll}.form-fields{border:0;padding:0;margin:0;min-width:0;width:100%}.form-fields:disabled{opacity:.7}.navigation-progress{position:fixed;inset:0 0 auto;height:3px;z-index:1000;background:linear-gradient(90deg,var(--yellow),var(--blue),var(--yellow));background-size:200% 100%;animation:navigation-progress 1.2s linear infinite}.navigation-error{position:fixed;z-index:1001;top:12px;left:50%;transform:translateX(-50%);width:min(600px,calc(100% - 24px));padding:16px;background:#fff3ee;color:#8b2f20;box-shadow:var(--shadow);border:1px solid #edb9aa;border-radius:10px}.navigation-error button{margin:8px 12px 0 0;border:0;background:transparent;color:var(--blue);text-decoration:underline}.catalog-results{min-height:460px;transition:opacity .16s}.catalog-results.is-pending{opacity:.58}.catalog-count{min-width:0}.catalog-loading{display:block;min-height:20px;font-size:12px;color:var(--blue);visibility:hidden}.catalog-loading.visible{visibility:visible}.catalog-tools>.field{min-width:210px}.trip-card-image{aspect-ratio:16/10}.detail-image{aspect-ratio:16/10;object-fit:cover}.site-header .brand img{aspect-ratio:190/55;object-fit:contain}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.admin-form>.form-fields{display:flex;flex-direction:column;gap:28px}.admin-form>.form-fields>fieldset{min-width:0}.admin-user form .form-fields{width:auto}.admin-user form .form-message{position:absolute;right:12px;top:65px;background:white;padding:8px}.login-box .form-fields>button{width:100%;margin-top:20px}#app{min-height:100vh}.form-fields .form-fields{display:block}h1[tabindex="-1"]:focus{outline:none}@keyframes navigation-progress{to{background-position:200% 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}@media(max-width:600px){.catalog-tools>.field{min-width:0;width:100%}.catalog-results{min-height:400px}.admin-form>.form-fields{gap:20px}}

.field{min-width:0}.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.form-columns{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:600px){.form-columns{grid-template-columns:1fr}}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.photo-grid button{padding:0;border:0;border-radius:10px;overflow:hidden;background:var(--pale);aspect-ratio:4/3}.photo-grid img{width:100%;height:100%;object-fit:cover}.photo-dialog{border:0;padding:56px 65px 16px;background:#091e30;color:white;max-width:96vw;max-height:96vh;border-radius:12px}.photo-dialog::backdrop{background:#041322e8}.photo-dialog img{max-height:75vh;max-width:80vw;object-fit:contain;margin:auto}.photo-dialog button{background:#fff;color:var(--navy);border:0;border-radius:5px;padding:10px 14px}.photo-close{position:absolute;right:12px;top:10px}.photo-previous,.photo-next{position:absolute;top:50%;transform:translateY(-50%)}.photo-previous{left:10px}.photo-next{right:10px}.photo-dialog p{text-align:center;color:white;margin-top:8px}@media(max-width:600px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-dialog{padding:58px 8px 12px}.photo-dialog img{max-width:88vw}.photo-previous,.photo-next{top:auto;bottom:8px;transform:none}}

.admin-form>.form-fields{border:0;background:transparent;padding:0;box-shadow:none}
/* Public company pages and the complete vehicle fleet. */
.nav-trips{position:relative}.nav-trips-trigger{display:flex;align-items:center;gap:3px}.nav-trips-trigger button{display:grid;place-items:center;width:30px;height:34px;border:0;background:none;color:inherit;cursor:pointer;border-radius:5px}.nav-trips-trigger button:hover,.nav-trips-trigger button[aria-expanded=true]{background:var(--pale);color:var(--blue)}.trip-menu{position:absolute;top:calc(100% + 22px);left:-24px;width:385px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:23px;box-shadow:0 18px 50px #0b234025;z-index:50}.trip-menu[hidden]{display:none}.trip-menu>a{display:flex;align-items:center;gap:15px;padding:12px 0;line-height:1.3}.trip-menu>a>.icon:first-child{color:var(--blue);width:25px;height:25px;flex-shrink:0}.trip-menu>a>.icon:last-child{width:16px;margin-left:auto}.trip-menu small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:5px}.trip-menu-all{border-top:1px solid var(--line);margin-top:8px;color:var(--blue)}
.transport-hero{position:relative;min-height:390px;isolation:isolate;overflow:hidden;background:var(--navy);color:#fff}.transport-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 59%;z-index:-2}.transport-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#061e34e8,#0b284480 44%,#0b284405 78%)}.transport-hero-copy{padding-top:26px;padding-bottom:34px}.transport-hero .breadcrumb{color:#dce6ef;margin-bottom:28px}.transport-hero .breadcrumb a{color:#e2edf6}.transport-hero .eyebrow{color:#dceeff;letter-spacing:2px}.transport-hero h1{font-size:66px;line-height:1.02;letter-spacing:-1.6px;color:white;text-transform:uppercase;margin-bottom:17px}.transport-hero p{color:#f1f6fc;font-size:18px;line-height:1.45;margin:0 0 22px}.transport-hero .button-white{color:white;background:#ffffff13;border:1px solid #ffffff9c;min-height:42px;padding:9px 18px;font-size:14px}.transport-benefits{background:#fff;border-bottom:1px solid var(--line)}.transport-benefits>.container{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:26px;padding-bottom:26px}.transport-benefits>.container>div{display:flex;gap:13px;align-items:center;font-size:14px}.transport-benefits .icon{color:var(--blue);width:29px;height:29px;flex-shrink:0}.fleet-section{background:linear-gradient(150deg,#f3f9ff,#eaf5ff55 50%,#f5faff);padding:56px 0 68px;scroll-margin-top:110px}.fleet-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:center}.fleet-heading h2{font-size:43px;margin-bottom:12px}.fleet-heading p{font-size:16px;line-height:1.5;color:var(--muted)}.fleet-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.fleet-filters .field{margin:0}.fleet-filters label{font-size:12px;color:#59718e}.fleet-filters select{background:#fff;border-color:#e2edf9;box-shadow:0 4px 15px #0a4ba908;min-height:44px;padding:9px 25px 9px 12px;font-size:13px}.fleet-results-bar{display:flex;justify-content:space-between;align-items:center;min-height:50px;margin-top:14px;font-size:13px;color:var(--muted)}button.text-link{background:none;border:0;cursor:pointer;padding:5px 0;font-family:inherit}.fleet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.vehicle-card{min-width:0;background:white;border:1px solid #e8f0f8;border-radius:13px;padding:7px;box-shadow:0 8px 24px #073c6b07;display:flex;flex-direction:column;overflow:hidden}.vehicle-photo{position:relative;width:100%;border:0;padding:0;border-radius:8px;overflow:hidden;cursor:zoom-in;background:#eaf2f8;aspect-ratio:2.1;flex-shrink:0}.vehicle-photo img{width:100%;height:100%;display:block;object-fit:cover}.vehicle-photo:disabled{cursor:default}.vehicle-photo-count{position:absolute;bottom:10px;right:10px;display:flex;align-items:center;gap:5px;color:white;background:#071e39b8;padding:5px 9px;border-radius:5px;font-size:11px}.vehicle-photo-count .icon{width:15px;height:15px}.vehicle-body{display:flex;flex-direction:column;flex:1;padding:17px 13px 14px}.vehicle-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:12px}.vehicle-title h3{font-size:22px;line-height:1.2;letter-spacing:-.3px}.vehicle-title>span{font-size:15px;font-weight:700;color:#064fba;display:flex;align-items:center;gap:6px;white-space:nowrap}.vehicle-title>span .icon{width:18px;height:18px}.vehicle-equipment{display:flex;gap:5px;flex-wrap:wrap}.vehicle-equipment>span{border-radius:4px;background:#edf5ff;color:#1659b7;font-size:11px;padding:3px 7px;line-height:1.4}.vehicle-description{font-size:14px;line-height:1.5;margin:12px 0 18px;color:#4d5e72;white-space:pre-line}.vehicle-body>.button{align-self:flex-start;margin-top:auto;min-height:39px;padding:8px 17px;font-size:14px;border-radius:6px}.vehicle-capacity{font-size:12px;color:#59718e;margin:0 0 10px}.transport-inquiry{background:linear-gradient(120deg,#e0effe,#edf6ff);padding:55px 0;scroll-margin-top:115px}.transport-inquiry-layout{display:grid;grid-template-columns:1fr 1.85fr;gap:48px;align-items:start}.transport-inquiry-copy{padding-top:24px}.transport-inquiry-copy h2{font-size:40px;line-height:1.1;margin-bottom:19px;color:#073d88}.transport-inquiry-copy p{font-size:16px;color:#567191;line-height:1.55}.transport-inquiry-copy ul{list-style:none;padding:0;margin:25px 0;display:grid;gap:13px}.transport-inquiry-copy li{display:flex;gap:10px;font-size:14px;align-items:center}.transport-inquiry-copy li .icon{background:#06479b;color:white;width:22px;height:22px;border-radius:50%;padding:4px;flex-shrink:0}.transport-direct{display:flex;align-items:center;gap:13px;font-size:13px;color:#557296;margin-top:35px}.transport-direct strong{display:block;font-size:23px;color:#0c4085}.inquiry-bus{width:150px;height:100px;color:#86b9ed;opacity:.6;margin-top:20px}.transport-inquiry .inquiry-form{padding:29px;background:white;border-radius:15px;box-shadow:0 10px 35px #15579508}.transport-inquiry .form-columns{gap:23px}.transport-inquiry .form-columns>fieldset+fieldset{border:0;padding-left:0}.transport-inquiry .field input,.transport-inquiry .field select,.transport-inquiry .field textarea{background:#fafcff;border-color:#dfe7f0}.transport-inquiry legend{font-size:17px}.transport-inquiry .button-yellow{background:#0757ce;color:white}.selected-vehicle{display:flex;align-items:center;gap:14px;background:#f3f8ff;border:1px solid #e0ecfb;border-radius:9px;padding:13px 15px;margin-bottom:24px}.selected-vehicle>.icon{color:#0b60d6;flex-shrink:0;width:29px;height:29px}.selected-vehicle .field{flex:1;margin:0}.selected-vehicle.has-selection{background:#eaf3ff;border-color:#b9d5fb}.selected-vehicle label{font-weight:700;color:#084895}.vehicle-dialog h2{font-size:20px;letter-spacing:0;margin-bottom:12px}.vehicle-dialog>img{object-fit:contain;max-height:72vh}.vehicle-dialog::backdrop{background:#061626d9}
.company-intro{padding:26px 0 58px;background:linear-gradient(120deg,#eff7ff,#f7fbff);border-bottom:1px solid #e6eff8}.company-intro .breadcrumb{margin-bottom:30px}.company-intro h1{font-size:55px;line-height:1.08;letter-spacing:-1.4px;margin-bottom:19px}.company-intro p{font-size:19px;line-height:1.5;color:#62768e}.contact-main{padding:0 0 65px}.contact-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:-20px;position:relative}.contact-card{border:1px solid #e1eaf5;border-radius:15px;background:white;padding:32px;position:relative;box-shadow:0 12px 35px #0b426109;display:flex;flex-direction:column;align-items:flex-start}.contact-card .eyebrow{margin-top:18px}.contact-card h2{font-size:33px;letter-spacing:-.6px}.contact-icon{color:var(--blue);background:#edf5ff;width:50px;height:50px;display:grid;place-items:center;border-radius:13px}.contact-icon .icon{width:27px;height:27px}.contact-card .contact-hint{font-size:15px;color:var(--muted);margin:13px 0 20px;line-height:1.5}.contact-primary{margin-bottom:22px;overflow-wrap:anywhere;line-height:1.6;color:#5c7189}.contact-primary p{margin-bottom:12px}.contact-primary a{color:#0754bd;font-size:19px;font-weight:700;white-space:nowrap;display:inline-block}.contact-card>.text-link{margin-top:auto}.dispatch-strip{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:center;padding:29px 32px;border:1px solid #e1eaf5;border-radius:12px;margin-top:24px;background:#f8fbff}.dispatch-strip>div:first-child{display:flex;align-items:center;gap:15px}.dispatch-strip .icon{color:#1762bf;width:26px;height:26px;flex-shrink:0}.dispatch-strip h2{font-size:21px;letter-spacing:0}.dispatch-strip p{font-size:15px;color:#5e7085;margin:5px 0}.dispatch-strip a{font-weight:700;color:#124d96;white-space:nowrap}.contact-office-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;padding:58px 0;align-items:center}.contact-office h2{font-size:34px;margin-bottom:25px}.office-details{display:flex;align-items:flex-start;gap:17px;margin-bottom:25px}.office-details>.icon{width:26px;height:26px;color:var(--blue);flex-shrink:0}.office-details p{font-size:16px;color:#536b83;line-height:1.6;margin-bottom:11px;max-width:580px}.office-details p:first-child{font-weight:700;color:#193c66}.contact-help{background:#edf5ff;padding:31px;border-radius:13px}.contact-help>.icon{width:33px;height:33px;color:var(--blue);margin-bottom:18px}.contact-help h3{font-size:25px}.contact-help p{font-size:15px;line-height:1.6;margin:15px 0 23px;color:#5f7490}.billing-section{border-top:1px solid var(--line);padding-top:38px;display:grid;grid-template-columns:1fr 2fr;gap:30px}.billing-section h2{font-size:29px}.billing-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.billing-grid p{font-size:14px;color:#667a91;line-height:1.7;margin-bottom:10px}.billing-grid p:first-child{font-weight:700;color:#254463}.contact-extra{padding-top:30px;font-size:15px}.about-story-grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:65px}.about-story h2{font-size:41px;margin-bottom:24px}.about-story .prose p,.about-people .prose p{font-size:17px;color:#60758d;line-height:1.75;margin:0 0 22px}.about-story figure{margin:0}.about-story img{width:100%;height:350px;object-fit:cover;border-radius:15px}.about-story figcaption{display:flex;align-items:center;gap:8px;margin-top:15px;font-size:14px;color:#647a92}.about-story figcaption .icon{width:18px;height:18px}.about-services{background:#f1f7fd;padding:56px 0}.about-services h2{font-size:39px}.about-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.about-service-grid article{background:#fff;border:1px solid #e1edf9;border-radius:14px;padding:33px}.about-service-grid article>.icon{width:34px;height:34px;color:var(--blue);margin-bottom:21px}.about-service-grid h3{font-size:28px;margin-bottom:14px}.about-service-grid p{font-size:16px;line-height:1.6;color:#627991;margin-bottom:25px}.about-people{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:start}.about-people h2{font-size:38px;margin-bottom:24px}.about-reviews{background:#0d2e50;border-radius:15px;padding:34px;color:#fff}.about-reviews>.icon{width:40px;height:40px;margin-bottom:30px;color:#65c0ef}.about-reviews .eyebrow{color:#87c9fa}.about-reviews h3{font-size:31px;color:white;line-height:1.15;margin-bottom:20px}.about-reviews p{color:#d2e1ef;font-size:16px;line-height:1.6;margin-bottom:24px}.about-reviews .text-link{color:#83d1ff}.review-gallery{display:flex;gap:12px;align-items:center;margin-top:29px;border-top:1px solid #ffffff29;padding-top:24px;font-size:14px;color:#deebf6}.review-gallery .icon{width:23px;height:23px}
@media(min-width:901px) and (max-width:1250px){.main-nav{gap:17px;font-size:13px}.main-nav>a,.nav-trips-trigger>a{white-space:nowrap}.nav-cta{padding:11px;font-size:12px}.brand img{width:155px}.fleet-heading{grid-template-columns:1fr}.fleet-filters{max-width:750px}.transport-inquiry-layout{gap:30px;grid-template-columns:1fr 1.8fr}.vehicle-title{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:900px){.trip-menu{position:static;width:100%;margin-top:12px;box-shadow:none;padding:15px}.trip-menu>a{font-size:15px}.nav-trips-trigger{justify-content:space-between}.nav-trips-trigger button{width:42px;height:42px}.main-nav{max-height:calc(100dvh - 76px);overflow:auto}.fleet-heading{grid-template-columns:1fr;gap:20px}.fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.transport-benefits>.container{gap:20px;grid-template-columns:1fr 1fr}.transport-inquiry-layout{grid-template-columns:1fr;gap:30px}.transport-inquiry-copy{padding:0}.transport-inquiry-copy h2{max-width:none}.transport-inquiry-copy .inquiry-bus{display:none}.transport-inquiry-copy ul{margin:20px 0}.transport-direct{margin-top:20px}.contact-card{padding:25px}.contact-primary a{font-size:18px}.dispatch-strip{grid-template-columns:1fr;gap:15px}.contact-office-grid{gap:30px;grid-template-columns:1.2fr .8fr}.billing-section{grid-template-columns:1fr}.about-story-grid,.about-people{gap:35px}.about-story img{height:300px}}
@media(max-width:600px){.transport-hero{min-height:430px}.transport-hero>img{object-position:62% center}.transport-hero:after{background:linear-gradient(90deg,#061e34ef,#0b284475)}.transport-hero-copy{padding-top:20px;padding-bottom:29px}.transport-hero h1{font-size:47px;letter-spacing:-1px}.transport-hero .breadcrumb{margin-bottom:33px}.transport-hero p{font-size:16px}.transport-hero .eyebrow{font-size:10px;letter-spacing:1.7px}.transport-benefits>.container{padding-top:23px;padding-bottom:23px;gap:22px 15px}.transport-benefits>.container>div{font-size:12px;gap:9px;align-items:flex-start}.transport-benefits .icon{width:24px;height:24px}.fleet-section{padding:35px 0 40px;scroll-margin-top:85px}.fleet-heading h2{font-size:35px}.fleet-heading p{font-size:15px}.fleet-filters{grid-template-columns:1fr 1fr;gap:12px}.fleet-filters>.field:first-child{grid-column:1/-1}.fleet-filters select{font-size:14px;min-height:45px}.fleet-filters label{font-size:12px}.fleet-results-bar{font-size:12px;margin-top:8px}.fleet-grid{grid-template-columns:1fr;gap:20px}.vehicle-title h3{font-size:22px}.vehicle-body{padding:17px 14px 16px}.vehicle-photo{aspect-ratio:1.95}.vehicle-description{font-size:15px}.vehicle-body>.button{min-height:43px;font-size:14px}.vehicle-equipment>span{font-size:12px}.transport-inquiry{padding:37px 0;scroll-margin-top:88px}.transport-inquiry-copy h2{font-size:35px}.transport-inquiry .inquiry-form{padding:22px 18px}.transport-inquiry .form-columns{gap:20px}.transport-inquiry .form-columns>fieldset+fieldset{padding-top:20px;border-top:1px solid var(--line)}.selected-vehicle{padding:12px;gap:9px}.selected-vehicle select{font-size:14px}.selected-vehicle>.icon{width:23px}.vehicle-dialog h2{font-size:17px}.company-intro{padding:23px 0 45px}.company-intro .breadcrumb{margin-bottom:24px}.company-intro h1{font-size:39px;letter-spacing:-.8px;line-height:1.12}.company-intro p{font-size:16px}.contact-main{padding-bottom:40px}.contact-choice-grid{grid-template-columns:1fr;gap:18px;margin-top:-17px}.contact-card{padding:25px}.contact-card h2{font-size:30px}.contact-card .eyebrow{font-size:10px}.contact-primary a{font-size:19px}.contact-primary p{font-size:14px}.dispatch-strip{padding:24px}.dispatch-strip h2{font-size:20px}.dispatch-strip p{font-size:15px;margin:10px 0}.contact-office-grid{grid-template-columns:1fr;gap:30px;padding:36px 0}.contact-office h2{font-size:30px}.contact-office .office-details p{font-size:15px}.contact-help{padding:25px}.billing-section{padding-top:30px;gap:23px}.billing-grid{grid-template-columns:1fr;gap:16px}.billing-grid>div+div{padding-top:16px;border-top:1px solid var(--line)}.about-story-grid,.about-people{grid-template-columns:1fr;gap:30px}.about-story h2{font-size:34px}.about-story img{height:260px}.about-story .prose p,.about-people .prose p{font-size:16px;line-height:1.65}.about-services{padding:38px 0}.about-services h2{font-size:33px}.about-service-grid{grid-template-columns:1fr;gap:18px}.about-service-grid article{padding:25px}.about-service-grid h3{font-size:27px}.about-people h2{font-size:33px}.about-reviews{padding:29px}.about-reviews h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.contact-primary .contact-person+.contact-person{margin-top:13px}.contact-primary .contact-person p{font-size:14px;margin:0 0 7px;color:#61758c}.contact-primary a.contact-phone,.contact-primary a.contact-email{display:flex;align-items:center;gap:12px;width:fit-content;max-width:100%;line-height:1.3}.contact-primary a.contact-phone{font-size:27px;margin-bottom:12px}.contact-primary a.contact-email{font-size:18px;white-space:normal;overflow-wrap:anywhere}.contact-primary a .icon{width:20px;height:20px;flex-shrink:0}.contact-primary a.contact-email .icon{width:18px;height:18px}
@media(max-width:600px){.contact-primary a.contact-phone{font-size:25px}.contact-primary a.contact-email{font-size:17px}.contact-card .contact-hint{margin-bottom:21px}.contact-primary{margin-bottom:24px}}
@media(max-width:380px){.contact-primary a.contact-phone{font-size:22px}.contact-primary a.contact-email{font-size:16px}.vehicle-title{flex-wrap:wrap}}
button.nav-trips-trigger{font:inherit;color:inherit;display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;min-height:42px;padding:8px 4px;cursor:pointer;border-radius:5px}button.nav-trips-trigger:hover,button.nav-trips-trigger[aria-expanded=true]{color:var(--blue);background:var(--pale)}button.nav-trips-trigger>.icon{width:15px;height:15px;pointer-events:none}.review-gallery a{display:flex;align-items:center;gap:10px}
@media(max-width:900px){button.nav-trips-trigger{width:100%;justify-content:space-between;padding:9px;font-size:17px}}

/* Per-trip boarding places and accessible booking choices. */
.trip-pickups{scroll-margin-top:110px}.trip-pickups>p{margin:0 0 18px}.pickup-toolbar{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:18px}.pickup-toolbar>.field{flex:1;max-width:420px}.pickup-toolbar>span{white-space:nowrap}.pickup-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 20px}.pickup-option{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid var(--line);background:#fff;border-radius:9px;cursor:pointer;min-width:0;transition:border-color .15s,background .15s}.pickup-option[hidden]{display:none}.pickup-option:hover{border-color:#82afe4}.pickup-option.is-selected{border-color:var(--blue);background:#f0f7ff;box-shadow:0 0 0 1px var(--blue)}.pickup-option:focus-within{outline:2px solid var(--blue);outline-offset:3px}.pickup-option>input[type=checkbox],.pickup-option>input[type=radio]{flex-shrink:0;width:18px;height:18px;margin:3px 0 0;accent-color:var(--blue)}.pickup-option>span{min-width:0;overflow-wrap:anywhere}.pickup-option strong{font-size:15px;line-height:1.4;display:block;color:var(--ink)}.pickup-option small{font-size:13px;line-height:1.45;color:var(--muted);display:block;margin-top:4px}.pickup-warning{color:#8b5a0d}.pickup-management{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:20px 0 10px;font-size:14px}.pickup-management a{color:var(--blue);font-weight:600}.pickup-management .button{font-size:13px;min-height:40px;padding:9px 14px}.booking-pickups{border:0;margin:24px 0;padding:20px 0 0;border-top:1px solid var(--line);min-width:0}.booking-pickups legend{font-size:22px;padding:0;margin-bottom:8px}.booking-pickups legend>span{color:#b83737}.booking-pickups .pickup-options{grid-template-columns:1fr}.pickup-arranged{padding:16px;background:var(--pale);border-radius:8px;margin:18px 0;font-size:15px}@media(max-width:600px){.pickup-options{grid-template-columns:1fr}.pickup-toolbar{align-items:stretch;gap:0;flex-direction:column}.pickup-toolbar>.field{max-width:none}.pickup-management{align-items:flex-start;flex-direction:column}.pickup-option{padding:14px;min-height:52px}.trip-pickups{scroll-margin-top:85px}}
.booking-pickups .pickup-option:has(input:checked){border-color:var(--blue);background:#f0f7ff;box-shadow:0 0 0 1px var(--blue)}.pickup-arranged{background:#f0f7ff}

/* Scenic flights: an immersive landing page, scoped to its own view. */
.flights-page{--flight-ink:#112d38;--flight-muted:#63777d;--flight-gold:#ffd232;--flight-cream:#f7f6f1;color:var(--flight-ink);background:#fff;overflow:clip}.flights-page em{font-style:normal;color:#287e90}.flights-page h2{font-size:clamp(36px,4.25vw,60px);line-height:1.08;letter-spacing:-1.6px}.flights-page p{line-height:1.65}.flight-section{padding:100px 0}.flight-overline{display:block;color:#307080;font-size:11px;line-height:1.5;font-weight:700;letter-spacing:2.6px;margin-bottom:18px}.flight-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:35px}.flight-section-heading>p{max-width:370px;color:var(--flight-muted);font-size:16px;margin:0 0 5px}.flights-page .button{min-height:52px;gap:20px;border-radius:6px;font-size:16px}.flights-page .button-blue{background:var(--flight-ink);border-color:var(--flight-ink)}.flights-page .button-blue:hover{background:#245061}.flights-page [id]{scroll-margin-top:110px}.flight-hero{position:relative;min-height:750px;background:#112d38;color:white;isolation:isolate}.flight-hero-image,.flight-hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.flight-hero-image{object-position:center}.flight-hero-shade{z-index:-1;background:linear-gradient(90deg,#071e29b8,transparent 78%),linear-gradient(0deg,#071e29b3,transparent 45%)}.flight-hero-inner{position:relative;min-height:750px;padding-top:30px;padding-bottom:95px}.flight-breadcrumb{font-size:10px;letter-spacing:2.5px;display:flex;gap:14px;align-items:center;color:#d1dfe2}.flight-breadcrumb>a{font-weight:700;color:#fff}.flight-breadcrumb>span{opacity:.55}.flight-hero-copy{padding-top:73px;max-width:850px;position:relative;z-index:1}.flight-kicker{font-size:11px;font-weight:700;letter-spacing:3px;color:#f6e6b7;display:flex;align-items:center;gap:11px;margin-bottom:23px}.flight-kicker>span,.flight-photo-dot{width:6px;height:6px;background:var(--flight-gold);border-radius:50%;display:inline-block;box-shadow:0 0 0 5px #ffd23218}.flight-hero h1{font-size:clamp(56px,6.8vw,98px);font-weight:700;line-height:1.035;letter-spacing:-3.2px;color:white;margin:0;max-width:850px;text-wrap:balance}.flight-hero h1 em{color:#ffe297}.flight-hero-copy>p{font-size:19px;line-height:1.65;max-width:505px;color:#e0e9e9;margin:28px 0 0}.flight-hero-actions{display:flex;align-items:center;gap:33px;margin-top:32px}.flight-hero-call{display:flex;align-items:center;gap:11px;color:white}.flight-hero-call>.icon{width:22px;height:22px;opacity:.85}.flight-hero-call>span{display:flex;flex-direction:column;font-size:11px;color:#cedbdd}.flight-hero-call strong{font-size:19px;letter-spacing:.5px;color:white;font-weight:600}.flight-hero-note{display:flex;align-items:center;gap:9px;color:#c6d6d8;font-size:12px;margin-top:26px}.flight-hero-note .icon{width:17px;height:17px}.flight-aircraft-teaser{position:absolute;bottom:120px;right:0;width:234px;border:1px solid #ffffff35;background:#102f3bbf;border-radius:9px;padding:7px;backdrop-filter:blur(12px);box-shadow:0 12px 50px #03192233;transition:transform .2s}.flight-aircraft-teaser:hover{transform:translateY(-5px)}.flight-aircraft-teaser>img{width:100%;height:118px;object-fit:cover;border-radius:5px;object-position:center 51%}.flight-aircraft-teaser>span{display:block;position:relative;padding:12px 8px 10px;color:white;font-size:15px;font-weight:600}.flight-aircraft-teaser small{font-size:9px;color:#bbcfd6;display:block;letter-spacing:2px;margin-bottom:4px}.flight-aircraft-teaser .icon{position:absolute;right:3px;bottom:13px;width:17px;height:17px}.flight-hero-bottom{position:absolute;bottom:25px;left:0;right:0;display:flex;align-items:center;justify-content:space-between}.flight-hero-bottom>a{display:flex;align-items:center;gap:12px;letter-spacing:2px;font-size:9px;font-weight:600;color:#e7eeee}.flight-hero-bottom>span{font-size:9px;color:#c0ced0}.flight-scroll{display:grid;place-items:center;width:30px;height:39px;border:1px solid #ffffff55;border-radius:18px}.flight-scroll .icon{width:14px;height:14px}.flight-facts{border-bottom:1px solid #e8edec;background:#fff}.flight-facts>.container{display:grid;grid-template-columns:repeat(4,1fr);padding-top:28px;padding-bottom:28px}.flight-facts>.container>div{display:flex;gap:15px;align-items:center;padding:3px 27px;border-left:1px solid #e3e9e7}.flight-facts>.container>div:first-child{border-left:0;padding-left:0}.flight-facts>.container>div:last-child{padding-right:0}.flight-fact-number{font-size:42px;font-weight:700;line-height:1;color:var(--flight-ink);letter-spacing:-1.5px;display:flex;align-items:baseline;gap:4px}.flight-fact-number>small{font-size:12px;letter-spacing:0;font-weight:400}.flight-facts p{margin:0;font-size:12px;color:var(--flight-muted);line-height:1.6}.flight-facts p strong{display:block;color:var(--flight-ink);font-weight:600;font-size:14px}.flight-fact-icon .icon{width:32px;height:32px;color:#327589;stroke-width:1.3}.flight-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:120px;align-items:start}.flight-intro-copy{padding-top:11px}.flight-intro-copy p{font-size:17px;color:var(--flight-muted);margin:0 0 18px}.flight-intro-copy p:first-child{color:var(--flight-ink);font-size:20px;line-height:1.6}.flight-signature{display:flex;align-items:center;gap:13px;margin-top:25px;font-size:14px;font-weight:600;color:#287789}.flight-signature .icon{width:30px;height:30px}.flight-routes{background:var(--flight-cream)}.flight-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #cbd7d7;margin-bottom:30px}.flight-tabs>button{appearance:none;border:0;border-bottom:3px solid transparent;display:flex;align-items:center;gap:12px;padding:19px 12px 19px 5px;background:transparent;font:inherit;font-size:17px;font-weight:600;color:#738287;text-align:left;cursor:pointer;margin-bottom:-1px}.flight-tabs>button>span{font-size:11px;font-weight:400;letter-spacing:1px}.flight-tabs>button>.icon{width:16px;height:16px;margin-left:auto;opacity:0;transform:rotate(-35deg)}.flight-tabs>button[aria-selected="true"]{border-color:var(--flight-ink);color:var(--flight-ink)}.flight-tabs>button[aria-selected="true"]>.icon{opacity:1}.flight-tabs>button:hover{color:#235e6e}.flight-tabs>button:focus-visible{outline:2px solid #287e90;outline-offset:-5px}.flight-route-panel{display:grid;grid-template-columns:1.1fr 1fr;min-height:520px;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 14px 45px #263b4010}.flight-route-panel:focus{outline:none}.flight-route-panel:focus-visible{outline:2px solid #287e90;outline-offset:4px}.flight-route-art{position:relative;min-height:480px;background:#193c4b;color:white;overflow:hidden;isolation:isolate}.flight-route-art>img,.flight-route-art-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.flight-route-art>img{object-position:70% center}.flight-route-art.route-hory>img{object-position:25% center}.flight-route-art.route-tatry>img{object-position:5% center}.flight-route-art.route-vlastni-trasa>img{object-position:95% center}.flight-route-art-shade{background:linear-gradient(0deg,#0a2634e8,#0a263430 75%);z-index:-1}.flight-route-tag{position:absolute;top:26px;left:28px;display:flex;align-items:center;gap:9px;border:1px solid #ffffff44;background:#102f3b70;border-radius:20px;padding:8px 13px;font-size:11px;color:#f2f6f6}.flight-route-tag .icon{width:16px;height:16px}.flight-route-destination{position:absolute;left:32px;right:25px;bottom:35px}.flight-route-destination>span{font-size:9px;letter-spacing:2.2px;color:#c0d4d8;display:block;margin-bottom:10px}.flight-route-destination>strong{font-size:clamp(27px,3vw,43px);font-weight:600;letter-spacing:-.6px;line-height:1.1}.flight-path{position:absolute;left:28px;right:28px;top:120px;height:230px;color:#ffe39c}.flight-path>svg{width:100%;height:100%;overflow:visible}.flight-path-start{position:absolute;left:0;top:157px;font-size:9px;font-weight:600;letter-spacing:1.6px}.flight-path-start>span{font-size:10px;letter-spacing:0;color:#dde6e3;font-weight:400;display:block;margin-top:4px}.flight-path-end{position:absolute;right:0;top:32px;font-size:12px;color:white}.flight-path-plane{position:absolute;top:65px;left:51%;transform:rotate(50deg)}.flight-path-plane .icon{width:32px;height:32px;fill:#ffe39c;stroke:#133642;stroke-width:.8}.flight-route-copy{padding:48px 44px;display:flex;align-items:flex-start;flex-direction:column;animation:flight-copy-in .3s ease-out}.flight-route-copy h3{font-size:34px;line-height:1.13;letter-spacing:-.6px;margin:0 0 19px;max-width:380px;color:var(--flight-ink)}.flight-route-copy>p{color:var(--flight-muted);font-size:16px;margin:0 0 22px}.flight-route-price{padding-top:15px;margin-top:auto;display:flex;gap:13px;align-items:baseline;flex-wrap:wrap}.flight-route-price strong{font-size:30px;color:var(--flight-ink);font-weight:600;letter-spacing:-.5px}.flight-route-price>span{font-size:13px;color:var(--flight-muted)}.flight-route-copy .flight-route-detail{font-size:12px;line-height:1.5;margin:8px 0 23px;max-width:350px}.flight-route-copy .flight-overline{font-size:9px;letter-spacing:2px;margin-bottom:14px}.flight-aircraft-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:center}.flight-aircraft-photos{position:relative;padding:0 20px 40px 0}.flight-plane-main{margin:0;position:relative}.flight-plane-main>img{width:100%;height:430px;object-fit:cover;object-position:52% center;border-radius:10px;display:block}.flight-plane-main>figcaption{position:absolute;bottom:20px;left:22px;right:15px;font-size:9px;letter-spacing:1.6px;color:white;text-shadow:0 1px 5px #000;display:flex;align-items:center;gap:10px}.flight-plane-main::after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#071e2977);border-radius:0 0 10px 10px;pointer-events:none}.flight-plane-main>figcaption{z-index:1}.flight-plane-label{position:absolute;bottom:0;right:0;display:flex;align-items:center;gap:22px;border-radius:7px;padding:22px 32px;background:var(--flight-ink);color:white;border:5px solid white}.flight-plane-label .icon{width:43px;height:43px;color:#ffe29c;stroke-width:1.2}.flight-plane-label>span{font-size:9px;letter-spacing:3px;color:#b7cbd1}.flight-plane-label strong{display:block;color:white;font-size:30px;font-weight:500;line-height:1.2;letter-spacing:0}.flight-aircraft-copy>p,.flight-aircraft-copy>.rich-content{font-size:16px;color:var(--flight-muted);margin:24px 0}.flight-checks{list-style:none;padding:0;margin:26px 0}.flight-checks li{display:flex;align-items:flex-start;gap:12px;margin-bottom:19px}.flight-checks li>.icon{width:19px;height:19px;padding:3px;border-radius:50%;background:#edf3f2;color:#2f7b73;flex-shrink:0;box-sizing:content-box}.flight-checks li>span{font-size:13px;color:var(--flight-muted);line-height:1.6}.flight-checks strong{display:block;color:var(--flight-ink);font-size:15px;font-weight:600}.flight-aircraft-copy .text-link{font-size:14px;color:#286b7d}.flight-gift{background:#102e3b;color:#fff;padding:85px 0;position:relative;overflow:hidden}.flight-gift-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.flight-gift .flight-overline{color:#dfcf9f}.flight-gift h2{color:white;font-size:clamp(36px,4.5vw,62px)}.flight-gift h2 em{color:#ffe49a}.flight-gift-copy>p,.flight-gift-copy>.rich-content{font-size:16px;max-width:440px;color:#c9d9dc;line-height:1.65;margin:24px 0}.flight-gift-copy .flight-gift-note{font-size:13px;color:#f2e2b8;margin:0 0 24px}.flight-gift-art{position:relative;padding:30px 5px;isolation:isolate}.flight-gift-orbit{position:absolute;inset:-60px -50px;z-index:-1;background:radial-gradient(ellipse,#36667177,transparent 65%);border:1px solid #d5e8ed15;border-radius:50%}.flight-gift-orbit::before,.flight-gift-orbit::after{content:"";position:absolute;inset:25px;border-radius:50%;border:1px dashed #d5e8ed20;transform:rotate(-20deg)}.flight-gift-orbit::after{inset:-35px;transform:rotate(30deg)}.flight-ticket{transform:rotate(-7deg);border-radius:12px;background:#f7f4e9;color:#163642;box-shadow:15px 35px 55px #04192585;max-width:470px;margin:0 auto;position:relative;overflow:hidden}.flight-ticket-top{padding:25px 28px 21px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ccd5d0}.flight-ticket-top>span{font-size:22px;font-weight:700;letter-spacing:1px;line-height:1}.flight-ticket-top>span>span{display:block;font-size:7px;letter-spacing:2px;margin-top:6px}.flight-ticket-top>.icon{width:39px;height:39px;stroke-width:1.1;transform:rotate(15deg)}.flight-ticket-main{padding:27px 29px 20px}.flight-ticket-main>span{font-size:8px;letter-spacing:1.7px;color:#527079;display:block;margin-bottom:15px}.flight-ticket-main>strong{font-size:43px;letter-spacing:-1px;line-height:1.05;font-weight:600;display:block}.flight-ticket-rule{width:45px;height:3px;background:#e7b62c;margin-top:25px}.flight-ticket-main>p{font-size:12px;color:#647d82;margin:15px 0 2px}.flight-ticket-stub{border-top:1px dashed #a6bcbf;display:flex;align-items:center;gap:30px;padding:20px 28px;background:#efecdf;position:relative}.flight-ticket-stub::before,.flight-ticket-stub::after{content:"";position:absolute;top:-10px;left:-10px;width:20px;height:20px;border-radius:50%;background:#102e3b}.flight-ticket-stub::after{left:auto;right:-10px}.flight-ticket-stub>span{font-size:7px;letter-spacing:1.2px;color:#5f7a80}.flight-ticket-stub strong{font-size:13px;display:block;color:#173643;letter-spacing:0;margin-top:3px}.flight-ticket-stub>.icon{margin-left:auto;transform:rotate(-35deg);width:27px;height:27px}.flight-gift-caption{display:block;text-align:center;font-size:10px;color:#a9c0c7;margin-top:48px;letter-spacing:.8px}.flight-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:56px;margin-top:55px}.flight-steps article{position:relative;padding-top:34px;border-top:1px solid #c5d7d9}.flight-steps article>span{position:absolute;top:-18px;left:0;background:white;padding-right:21px;font-size:26px;color:#398197;font-weight:400}.flight-steps h3{font-size:23px;letter-spacing:-.3px;margin:5px 0 13px}.flight-steps p{font-size:15px;color:var(--flight-muted);max-width:320px;margin:0}.flight-airfields{padding:0 0 90px}.flight-airfields-grid{display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;background:var(--flight-cream)}.flight-airfields-photo{min-height:440px}.flight-airfields-photo img{width:100%;height:100%;object-fit:cover;display:block;object-position:center}.flight-airfields-copy{padding:48px}.flight-airfields h2{font-size:42px}.flight-airfield-row{display:flex;gap:17px;align-items:flex-start;margin-top:27px}.flight-airfield-row>.icon{width:25px;height:25px;flex-shrink:0;color:#307a8b}.flight-airfield-row h3{font-size:20px;margin:0 0 7px}.flight-airfield-row p{font-size:13px;color:var(--flight-muted);margin:0}.flight-faq{background:#fafbf9;padding-top:80px;padding-bottom:85px}.flight-faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.flight-faq h2{font-size:48px}.flight-faq-grid>div>p{color:var(--flight-muted);font-size:16px;margin:25px 0}.flight-faq-phone{display:flex;align-items:center;gap:13px;font-size:25px;font-weight:600;color:#225268}.flight-faq-phone .icon{width:21px;height:21px}.flight-questions details{border-bottom:1px solid #d7e1e0}.flight-questions details:first-child{border-top:1px solid #d7e1e0}.flight-questions summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:23px 0;cursor:pointer;font-size:18px;font-weight:600;line-height:1.35}.flight-questions summary::-webkit-details-marker{display:none}.flight-questions summary>span{font-size:26px;font-weight:400;color:#51808d;transition:transform .2s;line-height:1}.flight-questions details[open] summary>span{transform:rotate(45deg)}.flight-questions details>p{font-size:15px;color:var(--flight-muted);margin:0;padding:0 30px 23px 0}.flight-questions summary:focus-visible{outline:2px solid #438698;outline-offset:3px}.flight-booking{background:#e9f1f1;padding:95px 0;position:relative}.flight-booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px;align-items:start}.flight-booking-copy{padding-top:30px;position:sticky;top:140px}.flight-booking-copy h2{font-size:60px}.flight-booking-copy>p,.flight-booking-copy>.rich-content{font-size:18px;color:#5c787f;margin:25px 0;max-width:340px}.flight-booking-copy ul{list-style:none;padding:0;margin:32px 0}.flight-booking-copy li{display:flex;gap:11px;align-items:center;font-size:14px;margin-bottom:14px;color:#345c65}.flight-booking-copy li .icon{width:18px;height:18px;padding:2px;background:#d4e4e4;border-radius:50%}.flight-booking-contact{padding-top:28px;border-top:1px solid #c8dada;max-width:300px}.flight-booking-contact>span{font-size:12px;color:#69868d}.flight-booking-contact>a{display:flex;align-items:center;gap:25px;font-size:33px;line-height:1.5;font-weight:600;color:#143b4b}.flight-booking-contact .icon{width:24px;height:24px;stroke-width:1.3}.flight-form{background:white;padding:35px;border-radius:13px;box-shadow:0 10px 40px #36565d0d}.flight-form-heading{display:flex;align-items:center;gap:15px;margin-bottom:27px;padding-bottom:22px;border-bottom:1px solid #e8eded}.flight-form-heading>.icon{width:36px;height:36px;color:#33758a;stroke-width:1.3}.flight-form-heading h3{font-size:25px;line-height:1.25;margin:0 0 4px;letter-spacing:-.4px}.flight-form-heading p{font-size:12px;color:var(--flight-muted);margin:0}.flight-form .field label{font-size:13px;font-weight:600;color:#254551}.flight-form .field input,.flight-form .field select,.flight-form .field textarea{background:#f8faf9;border-color:#dee6e5;border-radius:5px;color:var(--flight-ink);min-height:46px;font-size:14px}.flight-form .field textarea{min-height:95px}.flight-form .field input:focus,.flight-form .field select:focus,.flight-form .field textarea:focus{border-color:#357a8a;box-shadow:0 0 0 3px #357a8a15}.flight-form .form-row{gap:15px}.flight-gift-check{padding:15px 14px;border:1px solid #dde5e1;border-radius:7px;display:flex;align-items:center;gap:11px;margin-bottom:21px;cursor:pointer;background:#fafbf8}.flight-gift-check.selected{border-color:#397d83;background:#eef7f2}.flight-gift-check input{width:18px;height:18px;accent-color:#245868;flex-shrink:0;margin:0}.flight-gift-check>span{font-size:14px;font-weight:600;color:#2b4b55}.flight-gift-check small{display:block;font-size:11px;font-weight:400;color:#6a8187;margin-top:3px}.flight-gift-check>.icon{margin-left:auto;flex-shrink:0;width:26px;height:26px;color:#518482}.flight-gift-check:focus-within{outline:2px solid #357a8a;outline-offset:2px}.flight-form-summary{display:flex;gap:12px;align-items:flex-start;border-top:1px solid #e0e8e7;padding:18px 0;margin-top:3px}.flight-form-summary>.icon{width:22px;height:22px;margin-top:1px;color:#3d7b8a}.flight-form-summary>span{font-size:13px;color:var(--flight-muted);flex:1}.flight-form-summary strong{float:right;color:var(--flight-ink);font-size:18px;line-height:1.1}.flight-form-summary small{display:block;font-size:11px;color:#7c8f93;clear:both;padding-top:7px}.flight-form .checkbox{font-size:11px;align-items:flex-start;margin:4px 0 22px}.flight-form .checkbox input{flex-shrink:0}.flight-form .form-fields>button{width:100%;justify-content:center;margin-top:0}.flight-form .flight-form-note{font-size:11px;color:#71878d;text-align:center;margin:12px 0 0}.flight-form .form-message.success{padding:18px;background:#ecf6ef;color:#21533e;border-radius:7px;margin-top:15px}.flight-mobile-cta{display:none}.flights-body .site-footer{background:#102c39;background-image:none}.flights-body .footer-tag{color:#b9cbd0}.flights-body .site-header{border-bottom-color:#e8eeee}@keyframes flight-copy-in{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.flight-hero-inner,.flight-hero{min-height:800px}.flight-hero-copy{padding-top:95px}.flight-hero h1{font-size:110px;max-width:930px}}
@media(max-width:1100px){.flight-aircraft-teaser{width:200px;bottom:100px}.flight-hero-copy{max-width:740px}.flight-hero h1{font-size:76px}.flight-hero,.flight-hero-inner{min-height:730px}.flight-facts>.container>div{padding-left:17px;padding-right:17px;gap:10px}.flight-fact-number{font-size:34px}.flight-facts p strong{font-size:12px}.flight-intro-grid{gap:60px}.flight-aircraft-grid,.flight-gift-grid{gap:45px}.flight-route-copy{padding:35px}.flight-aircraft-photos{padding-right:0}.flight-plane-main>img{height:430px}.flight-tabs>button{font-size:15px;gap:8px}.flight-airfields-copy{padding:35px}.flight-airfields h2{font-size:36px}.flight-faq-grid{gap:50px}.flight-booking-grid{gap:45px;grid-template-columns:.8fr 1.2fr}.flight-booking-copy h2{font-size:50px}.flight-ticket-main>strong{font-size:38px}.flight-form{padding:28px}}
@media(max-width:800px){.flight-section{padding:65px 0}.flight-hero,.flight-hero-inner{min-height:760px}.flight-hero h1{font-size:68px;max-width:650px}.flight-hero-copy{padding-top:65px}.flight-hero-copy>p{max-width:460px;font-size:18px}.flight-aircraft-teaser{display:none}.flight-facts>.container{grid-template-columns:1fr 1fr;gap:22px;padding-top:25px;padding-bottom:25px}.flight-facts>.container>div{padding:0;border:0;gap:15px}.flight-facts p strong{font-size:14px}.flight-fact-icon{width:60px;display:grid;place-items:center}.flight-intro-grid{gap:40px}.flight-intro-copy{padding-top:0}.flight-intro-copy p:first-child{font-size:18px}.flight-intro-copy p{font-size:16px}.flight-section-heading{align-items:flex-start;gap:22px}.flight-section-heading>p{max-width:280px;font-size:14px}.flight-section-heading>p br{display:none}.flight-route-panel{grid-template-columns:1fr}.flight-route-art{min-height:350px}.flight-route-copy{padding:35px}.flight-route-copy h3{max-width:none;font-size:34px}.flight-path{top:72px;height:180px;max-width:490px;left:45px;right:45px}.flight-path-start{top:130px}.flight-path-plane{top:51px}.flight-path-end{top:22px}.flight-route-price{padding-top:0}.flight-aircraft-grid{grid-template-columns:1fr;gap:35px}.flight-aircraft-photos{padding-bottom:35px}.flight-plane-main>img{height:420px}.flight-aircraft-copy{max-width:600px}.flight-aircraft-copy>p,.flight-aircraft-copy>.rich-content{max-width:550px}.flight-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.flight-checks li{display:block}.flight-checks li>.icon{margin-bottom:9px}.flight-gift{padding:60px 0}.flight-gift-grid{gap:25px}.flight-gift h2{font-size:37px}.flight-gift-copy>p,.flight-gift-copy>.rich-content{font-size:15px}.flight-ticket-top{padding:20px}.flight-ticket-main{padding:22px 20px}.flight-ticket-main>strong{font-size:31px}.flight-ticket-main>span{font-size:7px;letter-spacing:1.1px}.flight-ticket-stub{padding:18px 20px;gap:15px}.flight-ticket-stub>.icon{display:none}.flight-ticket-stub strong{font-size:11px}.flight-gift-art{padding:20px 0}.flight-steps{gap:28px}.flight-steps h3{font-size:22px}.flight-steps p{font-size:14px}.flight-airfields{padding-bottom:60px}.flight-airfields-grid{grid-template-columns:1fr}.flight-airfields-photo{min-height:0;height:350px}.flight-airfields-copy{padding:35px}.flight-airfields h2{font-size:42px}.flight-faq-grid{grid-template-columns:1fr;gap:35px}.flight-faq h2{font-size:42px}.flight-faq-grid>div>p{margin:20px 0}.flight-booking{padding:65px 0}.flight-booking-grid{grid-template-columns:1fr;gap:38px}.flight-booking-copy{position:static;padding:0}.flight-booking-copy h2{font-size:48px}.flight-booking-copy>p,.flight-booking-copy>.rich-content{max-width:500px}.flight-booking-copy ul{display:flex;flex-wrap:wrap;gap:15px 25px;margin:20px 0}.flight-booking-copy li{margin:0;font-size:13px}.flight-booking-contact{display:none}.flight-form{padding:35px}.flight-tabs>button{flex-direction:column;align-items:flex-start;position:relative;padding:16px 12px;gap:5px}.flight-tabs>button>.icon{position:absolute;right:12px;top:18px}}
@media(max-width:600px){.flights-page h2{font-size:38px;letter-spacing:-1px}.flight-section{padding:53px 0}.flight-overline{font-size:9px;letter-spacing:2px;margin-bottom:14px}.flight-hero,.flight-hero-inner{min-height:720px}.flight-hero-inner{padding-top:23px;padding-bottom:90px}.flight-breadcrumb{font-size:8px;letter-spacing:1.7px;gap:10px}.flight-hero-copy{padding-top:60px}.flight-hero-image{object-position:60% center}.flight-hero-shade{background:linear-gradient(90deg,#071e29b0,#071e2935),linear-gradient(0deg,#071e29cc,transparent 80%)}.flight-kicker{font-size:8px;letter-spacing:1.9px;gap:10px;margin-bottom:23px}.flight-hero h1{font-size:clamp(43px,11.65vw,67px);line-height:1.07;letter-spacing:-1.7px;text-wrap:initial}.flight-hero h1 em{display:block}.flight-hero-copy>p{font-size:16px;line-height:1.65;margin-top:25px;max-width:340px}.flight-hero-copy>p br{display:none}.flight-hero-actions{align-items:flex-start;flex-direction:column;gap:22px;margin-top:27px}.flight-hero-actions .button{min-height:51px;width:100%;max-width:350px;font-size:15px;justify-content:space-between}.flight-hero-call{gap:10px}.flight-hero-call>span{display:block;font-size:11px}.flight-hero-call strong{display:inline;margin-left:10px;font-size:16px}.flight-hero-call>.icon{width:17px;height:17px}.flight-hero-note{font-size:10px;line-height:1.5;gap:8px;max-width:320px;margin-top:24px}.flight-hero-note>.icon{flex-shrink:0;width:15px;height:15px}.flight-hero-bottom{bottom:23px;align-items:flex-end;gap:20px}.flight-hero-bottom>a{font-size:7px;letter-spacing:1.7px;gap:10px}.flight-hero-bottom>span{font-size:7px;max-width:85px;text-align:right;line-height:1.4}.flight-scroll{width:24px;height:34px}.flight-facts>.container{gap:24px 15px;padding-top:27px;padding-bottom:27px}.flight-facts>.container>div{gap:10px}.flight-fact-number{font-size:30px;letter-spacing:-1px;min-width:53px}.flight-fact-number>small{font-size:9px}.flight-facts p{font-size:10px}.flight-facts p strong{font-size:11px}.flight-fact-icon{width:52px;flex-shrink:0}.flight-fact-icon .icon{width:27px;height:27px}.flight-intro-grid{grid-template-columns:1fr;gap:25px}.flight-intro-copy p:first-child{font-size:18px}.flight-intro-copy p{font-size:15px}.flight-signature{margin-top:22px;font-size:13px}.flight-section-heading{display:block;margin-bottom:23px}.flight-section-heading>p{font-size:15px;max-width:none;margin-top:20px}.flight-tabs{grid-template-columns:1fr 1fr;border:1px solid #d6dfdc;border-radius:8px;overflow:hidden;margin-bottom:22px;gap:1px;background:#d6dfdc}.flight-tabs>button{background:var(--flight-cream);font-size:14px;padding:14px 12px;border-bottom-width:2px;margin:0;min-height:65px;justify-content:center}.flight-tabs>button[aria-selected="true"]{background:#e8efeb}.flight-tabs>button>span{font-size:8px}.flight-tabs>button>.icon{width:14px;height:14px;top:16px;right:12px}.flight-route-panel{border-radius:10px;min-height:0}.flight-route-art{min-height:290px}.flight-route-tag{font-size:10px;top:20px;left:20px;padding:7px 11px}.flight-route-tag .icon{width:13px;height:13px}.flight-route-destination{left:22px;bottom:24px}.flight-route-destination>span{font-size:7px;letter-spacing:1.7px;margin-bottom:7px}.flight-route-destination>strong{font-size:29px}.flight-path{left:25px;right:25px;top:82px;height:132px}.flight-path-start{font-size:7px;top:90px;letter-spacing:1px}.flight-path-start>span{font-size:8px}.flight-path-end{font-size:9px;top:13px}.flight-path-plane{top:35px;left:48%}.flight-path-plane .icon{width:24px;height:24px}.flight-route-copy{padding:26px 23px}.flight-route-copy h3{font-size:29px;line-height:1.18;margin-bottom:16px}.flight-route-copy>p{font-size:15px;margin-bottom:20px}.flight-route-price{display:block}.flight-route-price strong{display:block;font-size:28px}.flight-route-price>span{font-size:12px}.flight-route-copy .flight-route-detail{font-size:11px;margin-top:9px}.flight-route-copy .button{width:100%;font-size:14px;justify-content:space-between;min-height:48px}.flight-aircraft-grid{gap:25px}.flight-aircraft-photos{padding-bottom:35px}.flight-plane-main>img{height:300px;object-position:55% center;border-radius:8px}.flight-plane-main>figcaption{bottom:17px;left:17px;font-size:7px;letter-spacing:1.1px}.flight-plane-label{right:-4px;bottom:0;padding:16px 22px;gap:17px;border-width:4px}.flight-plane-label .icon{width:32px;height:32px}.flight-plane-label>span{font-size:7px}.flight-plane-label strong{font-size:24px}.flight-aircraft-copy>p,.flight-aircraft-copy>.rich-content{font-size:15px;margin:21px 0}.flight-checks{grid-template-columns:1fr;gap:0;margin-bottom:20px}.flight-checks li{display:flex;gap:12px;margin-bottom:17px}.flight-checks li>.icon{margin-bottom:0;width:17px;height:17px}.flight-checks li>span{font-size:12px}.flight-checks strong{font-size:14px}.flight-gift{padding:52px 0 38px}.flight-gift-grid{grid-template-columns:1fr;gap:40px}.flight-gift h2{font-size:39px}.flight-gift-copy>p,.flight-gift-copy>.rich-content{font-size:15px;max-width:none;margin:21px 0}.flight-gift-copy .flight-gift-note{font-size:12px;margin-bottom:23px}.flight-gift-copy .button{font-size:14px;width:100%;justify-content:space-between;min-height:49px}.flight-gift-art{padding:18px 12px 0}.flight-ticket{max-width:340px;transform:rotate(-5deg)}.flight-ticket-main>strong{font-size:37px}.flight-ticket-top{padding:21px 24px 19px}.flight-ticket-main{padding:23px 24px 20px}.flight-ticket-main>span{font-size:7px;letter-spacing:1.6px}.flight-ticket-stub{padding:19px 24px;gap:30px}.flight-ticket-stub>.icon{display:block;width:20px;height:20px}.flight-gift-caption{font-size:9px;margin-top:35px}.flight-steps{grid-template-columns:1fr;gap:27px;margin-top:35px}.flight-steps article{padding:0 0 0 52px;border:0}.flight-steps article>span{top:0;font-size:23px;line-height:1.1;padding:0}.flight-steps h3{font-size:23px;margin:0 0 10px}.flight-steps p{font-size:14px;max-width:none}.flight-airfields{padding-bottom:50px}.flight-airfields-photo{height:265px}.flight-airfields-copy{padding:28px 24px}.flight-airfields h2{font-size:32px}.flight-airfield-row{gap:12px;margin-top:24px}.flight-airfield-row>.icon{width:22px;height:22px}.flight-airfield-row h3{font-size:19px}.flight-airfield-row p{font-size:13px}.flight-faq-grid{gap:28px}.flight-faq h2{font-size:37px}.flight-faq-grid>div>p{font-size:15px;margin:20px 0}.flight-faq-phone{font-size:24px}.flight-questions summary{font-size:16px;gap:19px;padding:20px 0}.flight-questions summary>span{font-size:23px}.flight-questions details>p{font-size:14px;padding:0 12px 21px 0}.flight-booking{padding:50px 0}.flight-booking-grid{gap:27px}.flight-booking-copy h2{font-size:42px}.flight-booking-copy>p,.flight-booking-copy>.rich-content{font-size:16px;margin:23px 0}.flight-booking-copy ul{gap:10px 15px;margin:0}.flight-booking-copy li{font-size:11px;gap:7px}.flight-booking-copy li .icon{width:13px;height:13px}.flight-form{padding:23px 19px;border-radius:10px}.flight-form-heading{gap:11px;padding-bottom:20px;margin-bottom:23px}.flight-form-heading>.icon{width:27px;height:27px;flex-shrink:0}.flight-form-heading h3{font-size:22px;line-height:1.15;max-width:230px}.flight-form-heading p{font-size:11px;line-height:1.5}.flight-form .form-row{grid-template-columns:1fr;gap:0}.flight-form .field label{font-size:12px}.flight-form .field input,.flight-form .field select,.flight-form .field textarea{font-size:16px;min-height:46px}.flight-gift-check{padding:14px 12px;gap:9px}.flight-gift-check>span{font-size:13px}.flight-gift-check small{font-size:10px;line-height:1.5;max-width:195px}.flight-gift-check>.icon{width:22px;height:22px}.flight-gift-check input{width:17px;height:17px}.flight-form .checkbox{font-size:10px;line-height:1.5;margin-bottom:21px}.flight-form-summary{gap:10px}.flight-form-summary>span{font-size:12px}.flight-form-summary strong{font-size:17px}.flight-form-summary small{font-size:10px}.flight-form .form-fields>button{min-height:49px;font-size:15px}.flight-mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fffef9f7;border-top:1px solid #d8e2df;backdrop-filter:blur(12px);padding:12px 20px max(12px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 -5px 25px #18333d0c}.flight-mobile-cta[hidden]{display:none}.flight-mobile-cta>span{font-size:17px;line-height:1.4;font-weight:600}.flight-mobile-cta small{font-size:7px;letter-spacing:1.3px;display:block;font-weight:400;color:#648088}.flight-mobile-cta .button{min-height:43px;padding:10px 16px;font-size:14px;gap:11px}.flights-body .site-footer{padding-bottom:70px}.flights-page [id]{scroll-margin-top:95px}}
@media(prefers-reduced-motion:reduce){.flight-route-copy{animation:none}.flight-aircraft-teaser,.flight-questions summary>span{transition:none}}
/* The document already reserves 100px for the fixed header when following anchors. */
.flight-gift-art{pointer-events:none}
.flights-page [id]{scroll-margin-top:110px}@media(max-width:600px){.flights-page [id]{scroll-margin-top:100px}}
/* Additional public results extend the existing grid without moving it. */
.load-more{display:flex;flex-direction:column;align-items:center;gap:15px;padding:42px 0 8px;overflow-anchor:none;text-align:center}
.load-more>p{margin:0;color:var(--muted);font-size:14px}.load-more>p strong{color:var(--ink)}
.load-more progress{width:180px;height:4px;appearance:none;border:0;border-radius:5px;background:#e4ebf2;overflow:hidden}
.load-more progress::-webkit-progress-bar{background:#e4ebf2}.load-more progress::-webkit-progress-value{background:#0874dc;border-radius:5px}.load-more progress::-moz-progress-bar{background:#0874dc;border-radius:5px}
.load-more-button{min-width:244px;margin-top:3px}.load-more-button>.icon{transform:rotate(90deg)}
.load-more-button[aria-disabled=true]{cursor:wait;opacity:.7}.load-more .load-more-error{color:#a52424;max-width:400px}.load-more-end{font-size:13px;color:var(--muted)}
[data-list-item] a:focus-visible{outline:3px solid #0874dc;outline-offset:4px}
@media(max-width:600px){.load-more{padding-top:30px;gap:12px}.load-more-button{width:100%;max-width:360px;min-height:50px}.load-more progress{width:150px}}
/* Native select chrome can ignore padding on Safari. Keep the native picker,
   but draw its closed control consistently with text inputs. */
.field select,.field select:focus{-webkit-appearance:none;appearance:none;background-image:url('/assets/select-chevron.svg');background-position:right 12px center;background-size:18px 18px;background-repeat:no-repeat;padding-right:40px}
.field input[type=search]{-webkit-appearance:none;appearance:none}
.filter-box .field input,.filter-box .field select,.filter-box>.button,.admin-filter .field input,.admin-filter .field select,.admin-filter>.button{height:48px;min-height:48px;box-sizing:border-box}
.filter-box>.button:hover,.admin-filter>.button:hover{transform:none}
@media(max-width:600px){.filter-box .field input,.filter-box .field select,.admin-filter .field input,.admin-filter .field select{font-size:16px}.admin-filter>.field{flex:1 1 160px}.admin-filter>.button{flex:0 0 auto}}
/* Current sections follow the resolved page, including legacy URLs and details. */
.main-nav>a,button.nav-trips-trigger{position:relative;min-height:42px}
.main-nav>a[aria-current],button.nav-trips-trigger[aria-current]{color:var(--blue)}
.main-nav>a[aria-current]::after,button.nav-trips-trigger[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px;background:currentColor}
.trip-menu>a{padding-left:10px;padding-right:10px;margin-left:-10px;margin-right:-10px}
.trip-menu>a[aria-current]{color:var(--blue);background:var(--pale);border-radius:7px;box-shadow:inset 3px 0 var(--blue)}
@media(max-width:900px){.main-nav>a[aria-current],button.nav-trips-trigger[aria-current]{background:var(--pale);border-radius:7px}.main-nav>a[aria-current]::after,button.nav-trips-trigger[aria-current]::after{left:0;right:auto;top:9px;bottom:9px;width:3px;height:auto}}
/* Account management */
.user-role{display:block;color:var(--muted);font-size:12px;line-height:1.2}.access-summary{display:flex;gap:16px;align-items:center;background:#eaf3ff;border:1px solid #d6e6fa;padding:20px 24px;border-radius:14px;margin:0 0 24px}.access-summary>.icon{color:var(--blue);width:28px;height:28px}.access-summary strong{color:var(--ink)}.user-editor-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:28px;align-items:start}.user-editor-layout>*{min-width:0}.user-editor-form,.access-help,.access-actions,.access-readonly,.invite-result,.employee-welcome{padding:28px}.user-editor-form>.form-fields{display:flex;flex-direction:column;gap:24px}.user-editor-form h2,.access-help h2,.access-actions h2,.access-readonly h2,.invite-result h2,.employee-welcome h2{font-size:24px;letter-spacing:-.5px}.user-editor-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.permission-picker h3{font-size:19px;margin-bottom:14px}.permission-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.permission-presets button{background:#fff;border:1px solid var(--line);border-radius:20px;color:var(--blue);padding:7px 13px;font-size:13px}.permission-presets button:hover{background:var(--pale)}.permission-option{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:10px;padding:17px;margin-top:10px;cursor:pointer}.permission-option.selected{background:#f0f6ff;border-color:#8eb7eb}.permission-option input{width:20px;height:20px;flex:none;accent-color:var(--blue)}.permission-option span{flex:1}.permission-option strong,.permission-option small{display:block}.permission-option small{color:var(--muted);font-size:13px;font-weight:400;margin-top:3px}.permission-option>.icon{color:var(--blue)}.access-confirm{display:flex;gap:14px;border-top:1px solid var(--line);padding-top:24px}.access-confirm>.icon{color:var(--blue);margin-top:3px}.access-confirm>div{flex:1;min-width:0}.access-confirm p{margin:5px 0 14px}.access-confirm .field{max-width:260px}.access-confirm input{letter-spacing:4px}.access-help>.icon,.access-readonly>.icon{color:var(--blue);margin-bottom:16px;width:30px;height:30px}.access-help dt{font-weight:700;margin-top:20px}.access-help dd{margin:4px 0 0;color:var(--muted);font-size:14px}.access-actions{margin-top:24px}.access-actions p{margin:14px 0}.access-action-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.button-danger{background:#fff4f4;color:#a52d38;border-color:#f0cbd0}.invite-result{max-width:800px}.invite-result p{margin:16px 0}.invite-result .field{margin:24px 0 14px}.invite-result input{font-family:monospace;font-size:13px}.activation-page{min-height:100vh;background:var(--pale);padding:36px 20px;display:flex;flex-direction:column;align-items:center;gap:28px}.activation-box{padding:36px;width:min(100%,680px)}.activation-box h1{font-size:30px;margin:16px 0}.activation-box h2{font-size:21px;letter-spacing:-.3px;margin:0 0 12px}.activation-box p{margin:12px 0 20px}.activation-steps{padding-left:24px}.activation-steps li{padding-left:8px;margin:26px 0}.activation-steps dt{font-weight:700}.activation-steps dd{margin:0 0 12px;color:var(--muted)}.activation-box form>.form-fields{display:flex;flex-direction:column;gap:18px}.activation-box input[readonly]{font-family:monospace;font-size:15px}.employee-welcome p{margin:16px 0}.employee-welcome .button{margin:0 12px 10px 0}.access-readonly p{margin-top:16px}
@media(max-width:1000px){.user-editor-layout{grid-template-columns:1fr}.access-help{max-width:none}}@media(max-width:600px){.user-editor-form,.access-help,.access-actions,.access-readonly,.invite-result,.activation-box{padding:20px}.user-editor-form .form-grid{grid-template-columns:1fr}.access-summary{padding:18px;align-items:flex-start}.permission-option{padding:14px;gap:10px}.permission-option>.icon{display:none}.activation-page{padding:24px 12px}.activation-box h1{font-size:27px}.access-confirm{gap:10px}.user-role{font-size:11px}.invite-result .button,.access-action-buttons .button{white-space:normal}.stats-grid:empty{display:none}}
@media(max-width:600px){.users-table{overflow:visible}.users-table table{display:block;min-width:0;width:100%}.users-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.users-table tbody{display:block}.users-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:20px;gap:12px;border-bottom:1px solid var(--line)}.users-table tbody tr:last-child{border-bottom:0}.users-table td{display:block;border:0;padding:0;min-width:0;white-space:normal;overflow-wrap:anywhere}.users-table td:nth-child(-n+2){grid-column:1/-1}.users-table td:nth-child(4){text-align:right}.users-table td:nth-child(2) strong{font-size:13px}.users-table td small{margin-top:3px}.users-table .text-link{font-size:13px}}
/* Shared trip typography and visual editor */
.rich-content{color:var(--ink);font-size:16px;line-height:1.7;overflow-wrap:anywhere}.rich-content p{color:inherit;margin:0 0 1em;line-height:inherit}.rich-content h2{font-size:clamp(25px,2.5vw,32px);line-height:1.2;letter-spacing:-.6px;margin:1.4em 0 .6em}.rich-content h3{font-size:22px;line-height:1.3;margin:1.2em 0 .5em}.rich-content>:first-child{margin-top:0}.rich-content>:last-child{margin-bottom:0}.rich-content ul,.rich-content ol{padding-left:1.6em;margin:1em 0}.rich-content li{padding-left:.25em;margin:.3em 0}.rich-content li p{margin:0}.rich-content a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.rich-content blockquote{margin:1.5em 0;padding:14px 24px;border-left:4px solid var(--blue);background:var(--pale)}.rich-content hr{border:0;border-top:1px solid #cbd9e8;margin:30px 0}.rich-content mark{background:#ffeb94;color:#243449;border-radius:3px;padding:0 3px}.rich-content .rich-align-left{text-align:left}.rich-content .rich-align-center{text-align:center}.rich-content .rich-align-right{text-align:right}.rich-content .rich-color-blue{color:#0860d6}.rich-content .rich-color-green{color:#197248}.rich-content .rich-color-red{color:#b5323d}.rich-content .rich-color-muted{color:#64748b}.rich-content .rich-color-default{color:var(--ink)}.rich-callout{padding:24px;border-radius:12px;border:1px solid #cdddF4;margin:24px 0;background:#edf5ff;color:#14365f}.rich-callout.rich-tone-yellow{background:#fff9e2;border-color:#eedda5;color:#5c461a}.rich-callout.rich-tone-green{background:#edf8f1;border-color:#c1dfcc;color:#214d35}.rich-callout>:first-child{margin-top:0}.rich-callout>:last-child{margin-bottom:0}.rich-content .rich-image{display:block;max-width:100%;height:auto;border-radius:12px;margin:24px auto}.rich-content .rich-size-small{width:40%}.rich-content .rich-size-medium{width:70%}.rich-content .rich-size-full{width:100%}.rich-editor{min-width:0}.rich-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px}.rich-editor-heading>label{font-size:15px;font-weight:700;color:var(--ink)}.rich-view-switch{display:flex;gap:3px;padding:3px;background:#edf2f8;border:1px solid var(--line);border-radius:9px}.rich-view-switch button{font-size:12px;padding:7px 12px;border:0;border-radius:6px;background:transparent;color:var(--muted)}.rich-view-switch button[aria-pressed=true]{background:#fff;color:var(--blue);box-shadow:0 1px 5px #0a234010}.rich-editor-frame{border:1px solid #cbd8e7;border-radius:11px;background:#fff;overflow:hidden}.rich-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;background:#f5f8fc;border-bottom:1px solid var(--line)}.rich-toolbar button,.rich-image-controls button{border:1px solid transparent;border-radius:6px;min-width:32px;height:34px;padding:4px 9px;background:transparent;color:var(--ink);font-size:13px;line-height:1}.rich-toolbar button:hover,.rich-image-controls button:hover{background:#e7eef8}.rich-toolbar button.active,.rich-toolbar button[aria-pressed=true],.rich-image-controls button[aria-pressed=true]{color:#0753b6;background:#dfeeff;border-color:#bad2ef}.rich-toolbar button:disabled{cursor:default;opacity:.4}.rich-toolbar select{width:auto;max-width:160px;min-height:34px;height:34px;padding:5px 30px 5px 9px;font-size:12px;background-color:#fff;border:1px solid var(--line);border-radius:6px}.rich-tool-group{display:flex;align-items:center;gap:2px;border-right:1px solid #d8e1ed;padding-right:8px}.rich-toolbar mark{background:#ffec9c;color:inherit;padding:0 2px}.rich-editable{min-height:360px;padding:26px;outline:0;white-space:pre-wrap;word-wrap:break-word}.rich-editable:focus{box-shadow:inset 0 0 0 2px #2580e9}.rich-editable .ProseMirror-selectednode{outline:3px solid #0860d6;outline-offset:3px}.rich-preview{min-height:360px;padding:30px}.rich-editor-help{font-size:12px;margin-top:10px!important;color:var(--muted)}.rich-insert-panel{padding:20px;background:#f7faff;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:14px}.rich-insert-panel .field{margin:0}.rich-panel-actions,.rich-image-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.rich-panel-actions .button{min-height:38px;padding:8px 14px;font-size:12px}.rich-insert-panel summary{font-size:13px;color:var(--blue);cursor:pointer;margin-bottom:12px}.rich-insert-panel details .button{margin-top:12px}.rich-image-controls{background:#edf5ff;padding:10px 16px;border-bottom:1px solid var(--line);font-size:12px}.rich-editor-loading p{font-size:13px;margin-top:10px}.rich-editor-frame [hidden]{display:none}
.booking-confirmation{background:linear-gradient(180deg,#edf6ff 0,#f8fbfe 460px,#fff 100%);padding:64px 0 80px}.confirmation-container{max-width:920px}.confirmation-heading{text-align:center;max-width:750px;margin:0 auto 36px}.confirmation-icon{display:grid;place-items:center;width:74px;height:74px;border-radius:50%;margin:0 auto 22px;color:#197b53;background:#e1f3e9;border:8px solid #fff}.confirmation-icon .icon{width:34px;height:34px;stroke-width:2.2}.confirmation-heading .eyebrow{color:#287258}.confirmation-heading h1{font-size:clamp(30px,3.5vw,44px);letter-spacing:-1px;line-height:1.15;margin:14px 0 20px}.confirmation-heading>p{font-size:17px;line-height:1.6}.confirmation-summary{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:0 15px 50px #2159890b}.confirmation-reference{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:24px;font-size:14px;color:var(--muted)}.confirmation-reference strong{font-size:16px;letter-spacing:1px;color:var(--blue)}.confirmation-summary h2{font-size:28px;letter-spacing:-.5px}.confirmation-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:28px 0 0}.confirmation-summary dt{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px}.confirmation-summary dt .icon{width:19px;height:19px;color:var(--blue)}.confirmation-summary dd{margin:6px 0 0 28px;font-weight:700;font-size:17px}.confirmation-summary dd small{display:block;color:var(--muted);font-weight:400;font-size:14px}.confirmation-next{padding:40px 0 0}.confirmation-next h2{font-size:27px;text-align:center;letter-spacing:-.4px}.confirmation-next ol{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;padding:0;margin:28px 0}.confirmation-next li{display:flex;gap:12px;align-items:flex-start}.confirmation-next li>span{flex:none;width:30px;height:30px;display:grid;place-items:center;background:#eaf2fe;color:var(--blue);border-radius:50%;font-size:14px;font-weight:700}.confirmation-next h3{font-size:17px;letter-spacing:0;margin:5px 0 8px}.confirmation-next li p{font-size:14px;line-height:1.5}.confirmation-note{display:flex;justify-content:center;align-items:flex-start;gap:9px;font-size:13px;padding:18px 20px;background:#f3f7fb;border-radius:10px}.confirmation-note .icon{width:20px;height:20px;color:var(--muted)}.confirmation-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px}
@media(max-width:600px){.rich-editor-heading{align-items:flex-start;flex-direction:column;gap:10px}.rich-toolbar{gap:6px;padding:8px}.rich-toolbar select{font-size:16px;max-width:170px;height:40px}.rich-toolbar button{height:38px;min-width:35px}.rich-editable,.rich-preview{padding:18px;min-height:300px}.rich-content .rich-size-small{width:65%}.rich-content .rich-size-medium{width:85%}.rich-callout{padding:18px}.rich-insert-panel{padding:16px}.rich-panel-actions .button{white-space:normal}.booking-confirmation{padding:32px 0 48px}.confirmation-heading{margin-bottom:24px}.confirmation-heading>p{font-size:16px}.confirmation-summary{padding:22px 20px}.confirmation-reference{align-items:flex-start;flex-direction:column;gap:4px}.confirmation-summary h2{font-size:25px}.confirmation-summary dl{grid-template-columns:1fr;gap:20px;margin-top:22px}.confirmation-next{padding-top:30px}.confirmation-next ol{grid-template-columns:1fr;gap:20px}.confirmation-next h2{text-align:left;font-size:25px}.confirmation-actions{flex-direction:column}.confirmation-actions .button{white-space:normal}.confirmation-note{padding:16px;font-size:12px}}

.contact-primary .rich-content a[href^="tel:"]{font-size:1.35rem;font-weight:700;text-decoration:none}.contact-primary .rich-content a[href^="mailto:"]{font-weight:600}.contact-card .rich-content p{margin:.65rem 0}.contact-card .rich-content a{overflow-wrap:anywhere}

/* Booking receipt and its editable customer message. */
.confirmation-heading>h2{font-size:clamp(30px,3.5vw,44px);letter-spacing:-1px;line-height:1.15;margin:14px 0 20px}.confirmation-reference{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:#fff;border:1px solid #ccdfed;border-radius:14px;width:fit-content;max-width:100%;padding:18px 32px;margin:26px auto 0}.confirmation-reference strong{font-size:25px;letter-spacing:1.3px;overflow-wrap:anywhere}.confirmation-reference small{font-size:12px;letter-spacing:0;color:var(--muted)}.confirmation-summary>.eyebrow{font-size:11px;margin-bottom:6px}.confirmation-next .rich-content>ol{counter-reset:booking-step}.confirmation-next .rich-content>ol>li{counter-increment:booking-step}.confirmation-next .rich-content>ol>li:before{content:counter(booking-step);display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;color:var(--blue);background:#eaf2fe;font-size:14px;font-weight:700}.confirmation-next .rich-content>ol>li>p{margin:3px 0 0;font-size:14px;line-height:1.6}.confirmation-next .rich-content>ol>li>p>strong:first-child{font-size:17px;color:var(--navy)}.confirmation-next .rich-content>p{font-size:14px;line-height:1.6;text-align:center;color:var(--muted)}.booking-content-shortcut{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px}.booking-content-shortcut h2{font-size:22px;margin:0 0 6px}.booking-content-shortcut p{font-size:14px;max-width:600px;margin:0}.booking-content-shortcut .button{flex-shrink:0}.booking-content-preview{margin-top:32px}.confirmation-preview{border:1px solid var(--line);border-radius:18px}.booking-content-preview>.alert{margin-bottom:16px}.admin-form .admin-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
@media(max-width:600px){.confirmation-reference{padding:16px 20px;width:100%}.confirmation-reference strong{font-size:23px}.confirmation-next .rich-content>p{text-align:left}.booking-content-shortcut{align-items:stretch;flex-direction:column;padding:20px}.booking-content-preview .confirmation-preview .container{width:auto;padding:0 18px}.confirmation-preview .confirmation-heading>h2{font-size:28px}.admin-form .admin-actions{align-items:stretch;flex-direction:column}}

/* Section-based editing for designed landing pages. */
.cms-page-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px}.cms-page-card{padding:26px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.cms-page-card h2{font-size:24px;margin:0 0 8px}.cms-page-card p{font-size:14px;margin-bottom:12px}.cms-card-icon{display:grid;place-items:center;background:#edf4ff;color:var(--blue);width:44px;height:44px;border-radius:12px}.cms-publication-status,.cms-offer-note{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:12px;background:white;padding:18px 22px;margin-bottom:20px}.cms-publication-status>.icon,.cms-offer-note>.icon{color:var(--blue);flex-shrink:0}.cms-publication-status p,.cms-offer-note p{margin:3px 0 0;font-size:13px}.cms-offer-note a{margin-left:auto;font-size:13px;white-space:nowrap}.cms-workbench{display:grid;grid-template-columns:235px minmax(0,1fr);gap:22px;align-items:start}.cms-section-nav{display:flex;flex-direction:column;gap:5px;position:sticky;top:20px}.cms-section-nav button{display:flex;align-items:center;gap:11px;padding:14px 12px;text-align:left;border:1px solid transparent;background:transparent;border-radius:10px;color:#54667a;font:inherit;font-size:14px;line-height:1.3}.cms-section-nav button>span:first-child{font-size:12px;opacity:.7}.cms-section-nav button>.icon{margin-left:auto;width:16px;flex-shrink:0}.cms-section-nav button small{display:block;font-size:11px;color:#8a6e39;margin-top:4px}.cms-section-nav button.active{color:var(--blue);background:#e9f1ff;border-color:#d6e4f9;font-weight:700}.cms-section-panel{min-width:0;background:white;border:1px solid var(--line);border-radius:16px;padding:28px}.cms-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}.cms-section-title h2{font-size:28px;margin:8px 0;scroll-margin-top:24px}.cms-section-title .eyebrow{font-size:10px}.cms-visibility{display:flex;align-items:center;gap:8px;font-size:12px;white-space:nowrap;margin-top:7px}.cms-visibility input{width:17px;height:17px;min-height:0;margin:0;padding:0}.cms-section-order{display:flex;gap:14px;margin-bottom:22px}.cms-section-order button{border:0;background:none;color:#61768c;font:inherit;font-size:12px;padding:4px 0}.cms-section-fields{display:grid;gap:20px}.cms-section-fields .field{margin:0}.cms-link-field,.cms-image-field,.cms-list-field{border-top:1px solid var(--line);padding-top:22px}.cms-link-field h3,.cms-image-field h3,.cms-list-field>h3{font-size:18px;letter-spacing:0;margin:0 0 14px}.cms-link-field .small{font-size:12px;margin:10px 0 0}.cms-image-field>img{display:block;width:100%;max-height:240px;object-fit:contain;background:#f0f5f9;border-radius:10px;margin-bottom:16px}.cms-image-field .field{margin-top:14px}.cms-image-field details{margin-top:14px;font-size:13px}.cms-image-field summary{cursor:pointer}.cms-item{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:12px}.cms-item-heading{background:#f6f8fc;padding:10px 12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cms-item-heading>button{flex:1;display:flex;align-items:center;text-align:left;gap:10px;border:0;background:none;color:var(--ink);font:inherit;font-size:14px;min-width:0}.cms-item-heading>button>.icon{margin-left:auto;width:15px;flex-shrink:0}.cms-item-heading>button>span{color:#71869b;font-size:12px}.cms-item-actions{display:flex;gap:8px}.cms-item-actions button{border:1px solid var(--line);border-radius:6px;background:white;padding:5px 9px;font:inherit;font-size:12px;color:#57697d}.cms-item-fields{display:grid;gap:18px;padding:18px}.cms-list-field>.button{font-size:13px;padding:12px 16px}.cms-save-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 -8px 28px #1937540a;padding:16px 20px;margin-top:24px;position:sticky;bottom:14px;z-index:20}.cms-save-bar>div[role=status]{font-size:12px;max-width:300px;color:#64768a}.cms-save-actions{display:flex;gap:10px;flex-wrap:wrap}.cms-save-actions .button{font-size:13px;min-height:43px;padding:12px 17px}.cms-preview-dialog{color:var(--ink);width:min(1280px,calc(100vw - 40px));max-width:none;height:calc(100vh - 40px);max-height:none;padding:0;border:1px solid #cfdae3;border-radius:15px;background:white;overflow:auto}.cms-preview-dialog::backdrop{background:#071c39ae}.cms-preview-bar{position:sticky;top:0;z-index:60;display:flex;justify-content:space-between;align-items:center;gap:18px;background:white;padding:14px 24px;border-bottom:1px solid var(--line)}.cms-preview-bar strong{display:block;font-size:15px}.cms-preview-bar span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.cms-preview-bar .button{font-size:12px;padding:10px 15px;min-height:40px}.cms-preview-body .flight-booking-copy{position:static}.cms-preview-body .container{max-width:calc(100% - 40px)}.cms-preview-body .about-page h1{font-size:clamp(36px,5vw,64px)}.cms-form button:disabled{cursor:not-allowed;opacity:.5}.cms-form .rich-editor-heading{gap:10px;flex-wrap:wrap}
@media(max-width:1000px){.cms-workbench{grid-template-columns:190px minmax(0,1fr);gap:16px}.cms-section-panel{padding:22px}.cms-section-title{flex-direction:column;gap:4px}.cms-save-bar{align-items:stretch;flex-direction:column;gap:9px}.cms-save-actions{justify-content:flex-end}.cms-save-bar>div[role=status]{max-width:none}.cms-page-cards{grid-template-columns:1fr}}
@media(max-width:700px){.cms-workbench{grid-template-columns:1fr}.cms-section-nav{position:static;flex-direction:row;overflow-x:auto;padding-bottom:8px;gap:6px}.cms-section-nav button{min-width:160px;font-size:13px}.cms-section-nav button>.icon{display:none}.cms-section-panel{padding:20px 16px}.cms-section-title h2{font-size:25px}.cms-save-bar{bottom:0;padding:13px 12px}.cms-save-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.cms-save-actions button:last-child{grid-column:1/-1}.cms-save-actions .button{white-space:normal;font-size:13px;padding:10px}.cms-offer-note{align-items:flex-start;flex-wrap:wrap}.cms-offer-note a{margin-left:36px}.cms-preview-dialog{width:100vw;height:100vh;height:100dvh;border:0;border-radius:0}.cms-preview-bar{padding:12px;gap:10px}.cms-preview-bar span{max-width:180px}.cms-preview-body .container{max-width:calc(100% - 32px)}.cms-item-fields{padding:14px}.cms-item-actions{margin-left:auto}.cms-page-card{padding:22px}}

/* Reservation correspondence */
.reservation-mail{margin-top:26px}.reservation-mail .panel-heading{align-items:center;flex-wrap:wrap;gap:12px}.reservation-mail .panel-heading p{font-size:13px;margin:5px 0 0;color:var(--muted)}.reservation-mail .panel-heading small{font-size:12px;color:var(--muted)}.mail-timeline{list-style:none;margin:0;padding:0;display:grid;gap:16px}.mail-message{padding:20px;border:1px solid var(--line);border-radius:12px;min-width:0;border-left:4px solid #9daebd}.mail-outgoing{background:#f6f9fe;border-left-color:var(--blue)}.mail-message-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.mail-message-heading time{margin-left:auto;color:var(--muted);font-size:12px}.mail-message h3{font-size:18px;margin:14px 0 6px;overflow-wrap:anywhere}.mail-addresses,.mail-hint,.mail-empty{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.mail-status{font-size:11px;padding:4px 9px;border-radius:20px;background:#e8eef5}.mail-status-sent,.mail-status-received{background:#e1f2e7;color:#216b3d}.mail-status-failed,.mail-status-uncertain{background:#fce6e2;color:#9b3a2b}.mail-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:14px;padding:14px 0}.mail-message summary{cursor:pointer;color:var(--blue);font-size:13px}.mail-message>button{margin-top:14px;border:0;background:none;padding:0;cursor:pointer;font:inherit;font-size:13px}.mail-composer{border-top:1px solid var(--line);padding-top:24px;margin-top:26px}.mail-composer>p{font-size:13px;color:var(--muted)}.mail-retry{margin-top:15px}.mail-retry .checkbox{margin-bottom:16px}.mail-retry .button{font-size:12px}.mail-message .alert{font-size:13px;margin-top:14px}
@media(max-width:600px){.mail-message{padding:15px}.mail-message-heading time{margin-left:0;width:100%}.reservation-mail .panel-body{padding:16px}.mail-composer .button{width:100%}}

/* Operations: groups remain together in screen and print views. */
.person-card{border:1px solid #d9e1e8;border-radius:10px;padding:1rem;margin:1rem 0;min-width:0}.person-card legend{font-weight:700;padding:0 .5rem}.person-card summary{padding:.5rem 0;cursor:pointer}.person-cancelled>h3,.person-cancelled:not(article){text-decoration:line-through;color:#697681}.passenger-inputs{margin:1.5rem 0}.panel>summary{cursor:pointer;font-weight:700}.panel details{margin:.5rem 0}.person-card .form-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.admin-page-heading a{white-space:normal}
.seating-workspace{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:1.5rem;align-items:start}.bus-floor{width:100%;max-width:460px;margin:1rem auto;padding:1rem;border:2px solid #28465e;border-radius:24px;background:#f8fafb}.bus-floor>h3{text-align:center;margin-bottom:12px;overflow-wrap:anywhere}.bus-orientation{margin:10px 0;text-align:center;font-weight:700;letter-spacing:.1em}.bus-grid{table-layout:fixed;width:100%;border-spacing:5px;border-collapse:separate}.bus-grid td{height:64px;padding:3px;text-align:center;vertical-align:middle;overflow-wrap:anywhere;border:0}.bus-grid button{width:100%;min-height:60px;background:transparent;border:1px solid transparent;border-radius:8px;font:inherit;cursor:pointer}.bus-grid .cell-seat{background:#e4edf6;border:1px solid #91a9bf;border-radius:8px}.bus-grid .cell-seat strong{font-size:1.05rem}.bus-grid small,.passenger-print small{display:block;font-size:.7em}.bus-grid .cell-driver,.bus-grid .cell-wc,.bus-grid .cell-stairs,.bus-grid .cell-door{background:#e7e7e7}.bus-grid .is-selected{outline:3px solid #efc746}.bus-grid .blocked{background:repeating-linear-gradient(45deg,#eee,#eee 6px,#ccc 6px,#ccc 8px)}.seating-people{max-height:350px;overflow:auto;list-style:none;padding:0}.seating-people button{width:100%;text-align:left;padding:.6rem;border:0;border-bottom:1px solid #ddd;background:white;cursor:pointer}.group-members{max-height:300px;overflow:auto}.seating-report{padding:1rem;background:#f4f7fa;margin:1rem 0}.operation-print table{width:100%;border-collapse:collapse}.operation-print th,.operation-print td{padding:.5rem;overflow-wrap:anywhere;text-align:left;border:1px solid #bbb}.operation-print .bus-grid{border-collapse:separate}.operation-print .bus-grid td{text-align:center}.operation-print h1{font-size:1.6rem}.passenger-print tbody+tbody{border-top:2px solid #555}
@media(max-width:900px){.seating-workspace{grid-template-columns:1fr}.bus-grid button{padding:2px;font-size:.8rem}}
@media print{
 @page{size:A4 portrait;margin:12mm}
 body,body.admin-body{background:white;color:black;font-size:10pt}
 .admin-sidebar,.admin-topbar,.admin-header,.skip-link,.navigation-progress,.no-print,.admin-mobile-toggle{display:none!important}
 .admin-layout,.admin-shell,.admin-main,.admin-content,main{display:block!important;margin:0!important;padding:0!important;width:100%!important;max-width:none!important}
 .operation-print h1{font-size:16pt}.operation-print .bus-floor{break-inside:avoid;break-after:page;border:1px solid black;padding:6mm}.operation-print .bus-grid{border-spacing:2px}.operation-print .bus-grid td{font-size:8pt;padding:2px}.bus-grid .cell-seat{background:white;border:1px solid black}.operation-print .table-wrap{overflow:visible}.operation-print thead{display:table-header-group}.operation-print tr{break-inside:avoid}.passenger-print tbody{break-inside:avoid}.passenger-print td{font-size:8pt;word-break:normal}.operation-print a{color:black;text-decoration:none}.operation-print .seating-report{background:white;border:1px solid black}
}
.template-preview,.contract-terms{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6}.contract-signature{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem}.contract-print h2{font-size:1.1rem;margin-top:1.5rem}.contract-print{max-width:850px;background:white;padding:1.5rem}.operation-print .table-wrap{max-width:100%}@media print{.admin-workspace{margin:0!important;width:100%!important}.admin-content>.alert{display:none}.contract-print{max-width:none;padding:0}.contract-print h2{break-after:avoid}.contract-signature{break-inside:avoid}.contract-print table tr{break-inside:avoid}}
.secondary-nav{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.secondary-nav a{white-space:nowrap}.main-nav>a{white-space:nowrap}.main-nav{gap:clamp(.6rem,1.6vw,1.8rem)}.topbar .secondary-nav{font-size:.8rem}.topbar-inner{gap:1rem}.nav-inner{gap:1.2rem}.nav-inner .brand{flex-shrink:0}@media(max-width:1050px) and (min-width:761px){.nav-inner{flex-wrap:wrap}.main-nav{margin-left:auto;flex-wrap:wrap;justify-content:center}.brand img{width:150px;height:auto}}@media(max-width:760px){.topbar-inner{flex-direction:column;padding-top:.5rem;padding-bottom:.5rem}.topbar .secondary-nav{display:flex;justify-content:center;gap:.5rem 1rem}.main-nav{gap:0}.main-nav>a{white-space:normal;padding:1rem}}
/* Override the admin table's nowrap: passenger documents must wrap on A4. */
.operation-print table,.bus-grid{white-space:normal;min-width:0;table-layout:fixed}.operation-print td,.operation-print th,.bus-grid td{white-space:normal;overflow-wrap:anywhere;min-width:0}.bus-grid td>span{display:block;line-height:1.3}.bus-grid .cell-empty{background:transparent}.print-identification{font-size:9pt;line-height:1.3;margin-bottom:8px}.contract-print th:nth-child(1){width:27%}.contract-print th:nth-child(2){width:15%}.contract-print th:nth-child(3){width:18%}.contract-print th:nth-child(4){width:28%}.contract-print th:nth-child(5){width:12%}.contract-print th,.contract-print td{font-size:9pt}.passenger-print{line-height:1.35}.operation-print .passenger-print th{font-size:8pt}
@media print{
 @page{margin:12mm 12mm 18mm;@bottom-right{content:counter(page) " / " counter(pages);font-size:8pt}}
 .operation-print,.operation-print p,.operation-print td,.operation-print th,.operation-print small{color:#111}
 .operation-print .bus-floor{background:white;padding:4mm}.operation-print .bus-grid td{height:14mm;line-height:1.25;font-size:8pt}.operation-print .bus-grid .cell-seat strong{font-size:10pt}.operation-print .bus-grid small{font-size:6.5pt}.operation-print .bus-grid .cell-seat{border-radius:4px}.operation-print .bus-grid .is-selected{outline:0}.operation-print .bus-grid{width:100%;table-layout:fixed}.operation-print .bus-grid button{min-height:0}
}

.passenger-groups th:nth-child(1){width:5%}.passenger-groups th:nth-child(2){width:22%}.passenger-groups th:nth-child(3){width:15%}.passenger-groups th:nth-child(4){width:12%}.passenger-groups th:nth-child(5){width:16%}.passenger-groups th:nth-child(6){width:17%}.passenger-groups th:nth-child(7){width:13%}
@media print{.contract-print h2{margin-top:1rem}.contract-signature{margin-top:1.5rem}.passenger-groups th:first-child,.passenger-groups td:first-child{padding:3px}}


/* Reservation choices have their own touch target and space from actions. */
.passenger-contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:20px 0 24px}
.reservation-checkbox,.reservation-form .reservation-submit .checkbox{display:flex;align-items:flex-start;gap:12px;min-height:48px;margin:0;padding:12px 14px;border:1px solid #dce6ef;border-radius:10px;background:#f7fafe;color:var(--ink);font-size:14px;line-height:1.5;cursor:pointer}
.reservation-checkbox>span,.reservation-form .reservation-submit .checkbox>span{min-width:0;overflow-wrap:anywhere}
.reservation-checkbox input[type=checkbox],.reservation-form .reservation-submit .checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;display:grid;place-content:center;flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:1px 0 0;padding:0;border:2px solid #92a7bb;border-radius:5px;background:white;cursor:pointer;transition:border-color .15s,background-color .15s}
.reservation-checkbox input[type=checkbox]::before,.reservation-form .reservation-submit .checkbox input[type=checkbox]::before{content:"";width:9px;height:5px;border:solid white;border-width:0 0 2px 2px;transform:translateY(-1px) rotate(-45deg) scale(0)}
.reservation-checkbox input[type=checkbox]:checked,.reservation-form .reservation-submit .checkbox input[type=checkbox]:checked{background:var(--blue);border-color:var(--blue)}
.reservation-checkbox input[type=checkbox]:checked::before,.reservation-form .reservation-submit .checkbox input[type=checkbox]:checked::before{transform:translateY(-1px) rotate(-45deg) scale(1)}
.reservation-checkbox:hover,.reservation-form .reservation-submit .checkbox:hover{border-color:#a8c3df}
.reservation-checkbox:focus-within,.reservation-form .reservation-submit .checkbox:focus-within{border-color:var(--blue)}
.passenger-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}
.passenger-summary p{margin:0;color:var(--ink);font-size:16px}
.reservation-submit{display:grid;justify-items:start;gap:24px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.reservation-form .reservation-submit .checkbox{max-width:760px}
@media(max-width:600px){.passenger-contact-actions{flex-direction:column;align-items:stretch;gap:12px}.passenger-contact-actions .button{white-space:normal;text-align:center}.passenger-summary{align-items:flex-start;flex-direction:column}.reservation-submit>.button{width:100%;white-space:normal}.reservation-checkbox,.reservation-form .reservation-submit .checkbox{padding:12px;font-size:14px}}
@media(forced-colors:active){.reservation-checkbox input[type=checkbox],.reservation-form .reservation-submit .checkbox input[type=checkbox]{appearance:auto;-webkit-appearance:auto}.reservation-checkbox input[type=checkbox]::before,.reservation-form .reservation-submit .checkbox input[type=checkbox]::before{display:none}}
/* Fleet-linked layout proposals and a compact, editable generator. */
.layout-list-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:24px 0 18px}.layout-list-actions form{margin:0}.layout-help{font-size:14px;line-height:1.5;margin:12px 0 20px}.layout-table small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.layout-state{display:inline-flex;white-space:nowrap;font-size:12px;line-height:1.4;font-weight:600;border-radius:20px;padding:6px 11px}.layout-state-draft{background:#fff3d8;color:#81550d}.layout-state-reviewed{background:#e5f5eb;color:#256742}.layout-generator{margin:24px 0}.layout-generator-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.layout-generator-heading h2{font-size:24px;letter-spacing:-.4px;margin-bottom:8px}.layout-generator-heading p{font-size:14px}.layout-generator-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:20px}.layout-generator-options{margin:8px 0 20px}.layout-generator-options summary{cursor:pointer;font-weight:600;color:var(--blue);padding:8px 0}.layout-generator-options .form-row{margin-top:14px}.layout-generator-actions{display:flex;gap:20px;align-items:center;margin-top:20px}.layout-generator-actions p{font-size:13px;max-width:560px;line-height:1.6}.layout-replace,.layout-review{margin:20px 0!important;max-width:650px}.layout-cell-editor{position:sticky;top:20px}.layout-cell-editor>.checkbox{margin:16px 0}.layout-cell-editor>.button{margin-top:12px}.layout-cell-editor>.button+button{margin:12px 0 0}.layout-cell-editor h2{font-size:24px}
@media(max-width:900px){.layout-cell-editor{position:static}}@media(max-width:600px){.layout-generator-heading,.layout-generator-actions{flex-direction:column;align-items:stretch}.layout-generator-heading>.layout-state{align-self:flex-start}.layout-generator-fields,.layout-generator-options .form-row{grid-template-columns:1fr}.layout-list-actions{align-items:stretch;flex-direction:column}.layout-list-actions .button{white-space:normal}.layout-generator .button{white-space:normal}.layout-table{font-size:13px}}
.layout-table .layout-capacity-note{display:block;white-space:normal;margin-top:8px;font-size:13px;font-weight:400;line-height:1.5;color:var(--muted)}.layout-capacity-note strong{font-weight:700;color:var(--navy)}
/* Compact mail conversations and per-user reply notifications. */
.mail-thread-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px}.mail-thread-toolbar p{font-size:13px}.mail-thread-toolbar button,.mail-reply-button{border:0;background:none;padding:4px 0;font:inherit;font-size:13px;cursor:pointer}.mail-sync{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.mail-sync .button{font-size:12px;padding:9px 14px}.mail-timeline{gap:10px}.mail-timeline .mail-message{padding:0;overflow:hidden}.mail-message-summary{padding:16px 18px;list-style:none;position:relative}.mail-message-summary::-webkit-details-marker{display:none}.mail-message-summary:after{content:'+';position:absolute;right:16px;top:13px;font-size:20px;color:var(--muted)}.mail-message[open]>.mail-message-summary:after{content:'−'}.mail-message-summary .mail-message-heading{padding-right:22px;color:var(--ink);font-size:13px;gap:8px}.mail-message-preview{display:block;margin-top:7px;color:var(--muted);font-size:14px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mail-message[open]>.mail-message-summary .mail-message-preview{display:none}.mail-message-content{padding:0 18px 18px}.mail-message-content .mail-body{padding:12px 0;line-height:1.6}.mail-headers{margin:0 0 5px}.mail-headers .mail-addresses{margin-top:8px}.mail-headers>summary{font-size:12px;color:var(--muted)}.mail-quote{margin:10px 0 14px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.mail-quote>summary{font-size:12px;color:var(--muted)}.mail-quote blockquote.mail-body{margin:12px 0 0;padding:0 0 0 12px;border-left:2px solid #c7d4e1;color:var(--muted);font-size:13px;max-height:420px;overflow:auto}.mail-new{font-size:11px;font-weight:700;color:#0757bc;background:#e4efff;border-radius:12px;padding:3px 8px}.mail-unread{border-left-color:var(--blue)}
.mail-notifications{position:relative}.mail-notifications-toggle{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 12px;color:var(--ink);font-size:13px;font-weight:700}.mail-notifications-toggle.has-unread{background:#edf5ff;border-color:#c2d9fc;color:var(--blue)}.mail-notifications-toggle .icon{width:19px;height:19px}.mail-unread-count{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 6px;border-radius:15px;background:var(--blue);color:#fff;font-size:11px}.mail-notifications-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:100;width:min(440px,calc(100vw - 32px));max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 44px #0b234024;padding:18px}.mail-notifications-heading{display:flex;align-items:center;gap:12px;justify-content:space-between}.mail-notifications-heading h2{font-size:18px;letter-spacing:0}.mail-notifications-heading button{border:0;background:none;color:var(--blue);font-size:12px}.mail-notifications-panel ul{list-style:none;padding:0;margin:12px 0 0}.mail-notifications-panel li{padding:14px 0;border-top:1px solid var(--line)}.mail-notifications-panel li>a{display:block}.mail-notifications-panel li strong{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink);overflow-wrap:anywhere}.mail-notifications-panel li small{display:block;color:var(--muted);font-size:11px;overflow-wrap:anywhere;margin-top:6px}.mail-notifications-panel li>button{border:0;background:none;font-size:12px;padding:8px 0 0}.mail-notification-preview{display:block;font-size:14px;line-height:1.45;margin-top:8px;overflow-wrap:anywhere;color:var(--ink)}.mail-notifications-empty{padding:22px 0 8px;font-size:14px}.mail-notification-toast{position:fixed;right:24px;bottom:24px;z-index:110;display:flex;align-items:center;gap:16px;max-width:calc(100vw - 32px);padding:16px 18px;background:var(--navy);color:white;box-shadow:0 8px 30px #0b234030;border-radius:12px;font-size:14px;flex-wrap:wrap}.mail-notification-toast a{color:white;text-decoration:underline;font-weight:700}.mail-notification-toast button{border:0;background:none;color:white;font-size:22px;line-height:1}
@media(max-width:700px){.admin-topbar{flex-wrap:wrap;gap:12px}.mail-notifications-panel{position:fixed;top:110px;left:16px;right:16px;width:auto;max-height:70vh}.mail-notifications-toggle{padding:8px}.mail-notification-toast{right:16px;bottom:16px}.mail-message-summary{padding:14px}.mail-message-content{padding:0 14px 14px}.mail-message-heading time{width:auto;flex-basis:100%;margin-top:3px}.mail-sync .button{width:auto}}
.mail-timeline{grid-template-columns:minmax(0,1fr)}.mail-timeline>li{min-width:0}.mail-message{width:100%}.mail-notifications-heading h2{margin-right:auto}.mail-notifications-heading button[aria-label]{font-size:22px;line-height:1;padding:2px 5px;color:var(--muted)}
@media(max-width:700px){.mail-notifications-panel{top:var(--mail-panel-top,110px);max-height:min(70vh,calc(100dvh - var(--mail-panel-top,110px) - 16px))}}
/* Shared administration spacing and the reservation → seating → print workflow. */
@media screen{
.admin-content{line-height:1.55}.admin-content h2{font-size:23px;letter-spacing:-.35px;line-height:1.25}.admin-content h3{font-size:18px;letter-spacing:0;line-height:1.3}.admin-content h1{font-size:clamp(26px,2.5vw,34px);line-height:1.2;overflow-wrap:anywhere}.admin-content .button{white-space:normal;text-align:center;max-width:100%}.admin-content .button:hover{transform:none}.admin-content .button:disabled{cursor:not-allowed}.admin-content .button-danger{background:#fff4f2;border-color:#f0cbc4;color:#9b352b}.admin-content .button-danger:hover{background:#ffe8e3}.admin-content .form-fields{display:flex;flex-direction:column;align-items:stretch;gap:18px}.admin-content .form-fields>.button{align-self:flex-start}.admin-content .form-fields .field{margin-bottom:0}.admin-content .form-row{gap:18px;min-width:0}.admin-content .form-row>*{min-width:0}.admin-content .form-fields>input[type=hidden]{display:none}.admin-content form.panel:has(>.form-fields>.panel-heading)>.form-fields{gap:0}.admin-content .panel-body>form{margin-top:18px}.admin-content .panel-body>form:first-child{margin-top:0}.admin-content .panel-body>h2,.admin-content .panel-body>h3{margin-bottom:12px}.admin-content .panel-body>p+form,.admin-content .panel-body>form+form{margin-top:20px}.admin-content details:not(.mail-message):not(.mail-quote):not(.mail-headers)[open]>summary{margin-bottom:18px}.admin-content details>summary{line-height:1.5}.admin-content details:not(.mail-message):not(.mail-quote):not(.mail-headers)>summary{cursor:pointer}.admin-content details>form{margin-top:16px}.admin-content .checkbox{align-items:flex-start;gap:12px;min-height:46px;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:#f8fafc;color:var(--ink);font-size:14px;line-height:1.5;cursor:pointer;max-width:100%;overflow-wrap:anywhere}.admin-content .checkbox input{width:20px;height:20px;flex:0 0 20px;margin:1px 0 0;accent-color:var(--blue)}.admin-content .checkbox:has(input:checked){border-color:#9bc2f3;background:#eff6ff}.admin-content .checkbox:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:3px}.admin-content .group-members,.admin-content .check-grid{display:grid;gap:10px;padding:3px}.admin-content .form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0}.admin-content .form-actions>form{margin:0}.admin-content .form-actions>form>.form-fields{gap:0}.admin-content .form-actions>a:not(.button){display:inline-flex;align-items:center;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--blue);font-size:14px;font-weight:700}.admin-content .form-actions>.field{margin:0}.admin-page-heading .form-actions{margin:0}.operation-page{max-width:1400px}.operation-page>.admin-page-heading{align-items:flex-start;gap:24px;margin-bottom:24px}.operation-page p{font-size:14px;line-height:1.6}.operation-nav{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 26px}.operation-nav>a{padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--blue);font-size:14px;font-weight:700}.operation-nav>a:hover,.operation-nav>a[aria-current]{background:#eaf3ff;border-color:#a9c9f3}.direction-nav{margin-top:0}.operation-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:18px 0 24px}.operation-stats>div{background:white;border:1px solid var(--line);border-radius:10px;padding:14px 18px;min-width:0}.operation-stats dt{font-size:12px;color:var(--muted);margin-bottom:6px}.operation-stats dd{font-size:21px;font-weight:700;color:var(--ink);margin:0;line-height:1.3;overflow-wrap:anywhere}.operation-stats .is-complete dd{color:#25704a}.operation-section-heading{margin-bottom:18px}.operation-section-heading h2,.operation-section-heading h3{margin:0 0 8px}.operation-section-heading p{max-width:850px}.operation-stage{margin:28px 0;padding-top:24px;border-top:1px solid var(--line);scroll-margin-top:24px}.operation-empty{padding:24px;border:1px dashed #b8c9d8;border-radius:12px;background:#f8fafc;font-size:14px;color:var(--muted)}.operation-empty strong{display:block;color:var(--ink);margin-bottom:7px}.operation-help{margin:12px 0;color:var(--muted)}.operation-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.operation-issues{padding:12px 16px;margin:16px 0;border-radius:9px;background:#fff8e8;border:1px solid #f1e1b5;font-size:14px}.operation-issues>summary{font-weight:700;color:#7b5a16}.operation-issues ul{margin:12px 0 0;padding-left:20px}.operation-issues li+li{margin-top:6px}.workflow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.workflow-step{display:flex;gap:12px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:12px;background:white}.workflow-step strong{display:block;font-size:16px;color:var(--ink)}.workflow-step small{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:4px}.workflow-number{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;background:#edf1f5;color:var(--muted);font-size:14px;font-weight:700;border-radius:50%}.workflow-step.current{border-color:#94bff4;background:#f0f6ff}.workflow-step.current .workflow-number{background:var(--blue);color:white}.workflow-step.done .workflow-number{background:#e1f2e7;color:#25704a}.assigned-buses{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:18px 0}.assigned-buses>div{display:flex;flex-direction:column;gap:5px;padding:14px 18px;background:#edf6ff;border:1px solid #c7ddf7;border-radius:10px}.assigned-buses span{font-size:13px;color:var(--muted)}.assigned-bus-removal{margin-top:8px;font-size:14px}.assigned-bus-removal>summary{cursor:pointer;color:#9b352b;font-weight:700}.assigned-bus-removal>summary.button{display:inline-flex;min-height:44px;padding:9px 14px;font-size:14px}.assigned-bus-removal form{display:grid;gap:12px;margin-top:12px}.assigned-bus-removal .button{justify-self:start;white-space:normal}.seating-page .seating-workspace{margin:20px 0}.seating-page .seating-manual>.form-fields{gap:18px}.seating-manual>.seating-people{margin:16px 0;max-height:240px}.seating-people button{border:1px solid var(--line);border-radius:7px;margin-bottom:6px;padding:10px 12px;color:var(--ink);font-size:13px}.seating-people button[aria-pressed=true]{background:#eaf3ff;border-color:#98bff1;color:#0757b8;font-weight:700}.seating-report{border-radius:12px;padding:0;background:transparent;margin:18px 0}.seating-report .operation-stats{margin:0 0 16px}.operation-disclosure>summary{padding:20px 24px}.operation-disclosure>summary strong{font-size:19px}.operation-disclosure>summary span{display:block;margin:6px 0 0 20px;font-size:13px;font-weight:400;color:var(--muted)}.operation-document-sections{padding:0 24px 6px}.operation-document-sections>.panel{border:0;border-radius:0;padding:22px 0;margin:0;border-top:1px solid var(--line);overflow:visible}.person-card{padding:20px;margin:16px 0;background:#fff}.person-card h3{margin-bottom:7px}.person-actions{margin-top:16px;display:grid;gap:10px}.person-actions>details{margin:0;border:1px solid var(--line);border-radius:9px;padding:0 14px;background:#f9fbfd}.person-actions>details>summary{font-size:14px;padding:11px 0;font-weight:700;color:var(--blue)}.person-actions>details[open]{padding-bottom:16px}.person-actions .danger-action>summary{color:#9b352b}.person-more>details{padding:10px 0;border-top:1px solid var(--line)}.admin-content .operation-page .person-card p{font-size:13px}.reservation-detail>#reservation-people>details{margin-top:20px;padding:12px 14px;background:#f7faff;border:1px solid var(--line);border-radius:9px}.reservation-detail>#reservation-people>details>summary{font-size:14px;color:var(--blue);font-weight:700}.admin-content .no-print.form-actions{padding:16px;background:#f4f8fc;border:1px solid var(--line);border-radius:10px}.admin-content .no-print.form-actions>.checkbox{margin:0}.admin-content .no-print.form-actions .button{flex-shrink:0}
}
@media screen and (max-width:900px){.operation-columns{grid-template-columns:1fr}.operation-page>.admin-page-heading{flex-direction:column;gap:16px}.operation-page>.admin-page-heading .form-actions{margin:0}.seating-page .seating-workspace{grid-template-columns:1fr}.assigned-buses{grid-template-columns:1fr}}
@media screen and (max-width:600px){.admin-content h2{font-size:21px}.admin-content h3{font-size:17px}.admin-content .form-row,.admin-content .person-card .form-row{grid-template-columns:minmax(0,1fr)}.admin-content .form-fields{gap:18px}.admin-content .checkbox{font-size:14px;padding:12px}.admin-content .form-actions{gap:10px;align-items:stretch}.admin-content .form-actions .button{min-height:44px}.operation-stats{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.operation-stats>div{padding:12px 14px}.operation-stats dd{font-size:19px}.operation-nav{gap:8px}.operation-nav>a{font-size:13px;padding:9px 11px}.workflow-steps{gap:8px}.workflow-step{padding:12px 10px;flex-direction:column;gap:8px}.workflow-step strong{font-size:13px}.workflow-step small{display:none}.workflow-number{width:26px;height:26px;flex-basis:26px}.operation-disclosure>summary{padding:17px}.operation-document-sections{padding:0 17px 6px}.person-card{padding:16px}.operation-stage{margin:24px 0}.admin-content .no-print.form-actions{align-items:stretch;flex-direction:column}}
.seating-page .operation-issues a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.seating-proposal-table th,.seating-proposal-table td{vertical-align:top}.seating-proposal-table td:nth-child(2){min-width:270px;max-width:460px}.seating-requirements{list-style:none;margin:0;padding:0;display:grid;gap:10px}.seating-requirements li{display:grid;gap:2px}.seating-requirements strong{font-size:12px}.requirement-met{color:#25704a}.requirement-unmet{color:#9b352b}.requirement-pending{color:var(--muted)}.seating-proposal-table .seating-requirement-note{font-size:12px;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}
@media screen{.seating-page{width:100%;max-width:none}.seating-passenger-overview{width:100%;min-width:0;margin:24px 0}.seating-passenger-overview .passenger-print,.seating-proposal-table{width:100%;table-layout:fixed;white-space:normal}.seating-passenger-overview th,.seating-passenger-overview td,.seating-proposal-table th,.seating-proposal-table td{white-space:normal;overflow-wrap:anywhere;vertical-align:top;padding:12px 14px}.seating-passenger-overview .passenger-print{font-size:14px}.seating-passenger-overview th:nth-child(1){width:10%}.seating-passenger-overview th:nth-child(2){width:19%}.seating-passenger-overview th:nth-child(3){width:15%}.seating-passenger-overview th:nth-child(4){width:25%}.seating-passenger-overview th:nth-child(5){width:22%}.seating-passenger-overview th:nth-child(6){width:9%}.seating-proposal-table th:nth-child(1){width:18%}.seating-proposal-table th:nth-child(2){width:38%}.seating-proposal-table th:nth-child(3),.seating-proposal-table th:nth-child(4){width:22%}}
@media screen and (max-width:700px){.seating-passenger-overview .passenger-print{min-width:780px}.seating-proposal-table{min-width:740px}}
.seating-vehicle-legend{display:flex;flex-wrap:wrap;gap:8px 20px;margin:12px 0;font-weight:700}.bus-grid col.bus-row-gutter{width:30px}.bus-grid th.bus-row-number{padding:0 3px;background:transparent;border:0;color:#66768a;font-size:12px;font-weight:700;text-align:center;vertical-align:middle}.bus-grid td.bus-row-heading{padding:0;height:16px;border:0;background:transparent}.seating-passenger-overview th:last-child,.seating-passenger-overview td:last-child{white-space:nowrap}
.seating-mobile-person{display:none}@media screen and (max-width:900px){.seating-mobile-person{display:block;padding:18px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:16px}.seating-mobile-person>.field{margin:0}}

.layout-research{margin:24px 0;border-left:4px solid #c49a43}.layout-research>p{margin:8px 0 12px;font-size:14px;line-height:1.6}.layout-research summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--blue);padding:6px 0}.layout-research details p{font-size:14px;margin:12px 0;line-height:1.6}.layout-research ul{margin:12px 0;padding-left:20px}.layout-research li{margin:8px 0;font-size:14px}.layout-research a{overflow-wrap:anywhere}.layout-research small{color:var(--muted)}

.booking-confirmation-review{margin:24px 0;border-color:#adc9e8}.booking-confirmation-review>summary{padding:20px 24px;color:var(--blue);cursor:pointer}.booking-confirmation-review>summary strong{font-size:20px}.booking-confirmation-review>summary span{display:block;margin:6px 0 0 20px;color:var(--muted);font-size:14px}.booking-confirmation-review .panel-body{border-top:1px solid var(--line)}.booking-confirmation-review h3{margin-bottom:14px}.booking-confirmation-review .operation-help{margin:14px 0 20px}.booking-confirmation-review textarea{font-size:14px;line-height:1.65;min-height:320px}.booking-confirmation-ready{margin:24px 0}.booking-confirmation-ready p{font-size:14px;margin-top:8px}@media(max-width:600px){.booking-confirmation-review>summary{padding:18px}.booking-confirmation-review .form-actions{flex-direction:column}.booking-confirmation-review .button{white-space:normal}}

/* Catalogue operations: trip, departure and its reservations. */
.admin-filter.trip-overview-filters{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(150px,1fr));gap:16px;align-items:end}.trip-filter-actions{grid-column:1/-1;display:flex;gap:12px}.trip-list-count{margin:0 0 16px;font-size:14px}.trip-overview-table{width:100%;min-width:850px;white-space:normal}.trip-overview-table>tbody>tr>td{vertical-align:top;white-space:normal}.trip-overview-table .table-title{min-width:230px;max-width:340px}.trip-overview-table small,.trip-departures-table small{display:block;margin-top:5px;line-height:1.45;color:var(--muted);font-size:12px}.trip-row-actions{display:flex;flex-direction:column;align-items:flex-start;gap:9px;line-height:1.4}.trip-row-actions>a{color:var(--blue)}.trip-row-actions>a.button{color:#fff}.trip-date-counts{display:flex;flex-direction:column;gap:8px;min-width:138px}.trip-date-toggle{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#f7faff;color:var(--blue);font-size:13px;line-height:1.3;min-height:36px}.trip-date-toggle strong{margin-left:auto}.trip-date-toggle .icon{width:14px;height:14px;flex-shrink:0}.trip-date-toggle[aria-expanded=true]{background:#e6f0ff;border-color:#8db9f3}.trip-date-toggle[aria-expanded=true] .icon{transform:rotate(90deg)}.trip-is-open{background:#f7faff}.trip-expanded-row>td{padding:0!important;background:#f7faff}.trip-expanded-row section{padding:20px 24px 24px;border-top:2px solid #bad4f4}.trip-expanded-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.admin-content .trip-expanded-heading h2{font-size:19px;line-height:1.4}.trip-expanded-heading>a{color:var(--blue);font-size:14px}.trip-departure-filters{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:16px;margin-bottom:18px;max-width:850px}.trip-departure-filters .field{margin:0}.trip-departures-table{width:100%;min-width:720px;white-space:normal;background:white;border:1px solid var(--line)}.trip-departures-table th,.trip-departures-table td{white-space:normal!important;vertical-align:top}.trip-departures-table td:first-child{min-width:185px}.trip-empty{padding:24px;background:white;border:1px dashed #c7d7e7;border-radius:10px;color:var(--muted);display:flex;align-items:center;gap:20px;flex-wrap:wrap}.trip-editor-departures{margin-bottom:28px}.trip-editor-departures>.trip-departures{padding:0 24px 24px}.trip-editor-departures .panel-heading p{font-size:14px;margin-top:10px}.trip-editor-departures .panel-heading{gap:20px}.trip-editor-departures .table-wrap{border-radius:8px}
@media(max-width:1100px){.admin-filter.trip-overview-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.admin-filter.trip-overview-filters{grid-template-columns:minmax(0,1fr)}.trip-filter-actions{flex-wrap:wrap}.trip-filter-actions .button{flex:1}.trip-editor-departures .panel-heading{flex-direction:column;align-items:flex-start}.trip-editor-departures>.trip-departures{padding:0 16px 16px}.trip-editor-departures .trip-departure-filters{grid-template-columns:minmax(0,1fr)}.trip-expanded-row section{padding:16px}.trip-expanded-heading{align-items:flex-start}.trip-empty{padding:18px}}

/* Administrative feedback stays above the page without changing its layout. */
.admin-toast{position:fixed;z-index:1500;top:88px;right:24px;display:flex;align-items:flex-start;gap:12px;width:max-content;max-width:min(460px,calc(100vw - 32px));padding:16px 18px;background:#fff;border:1px solid #b6d9c7;border-left:4px solid #248154;border-radius:12px;box-shadow:0 12px 38px #17345226;color:#193e2c;font-size:15px;line-height:1.5}.admin-toast>.icon{flex-shrink:0;margin-top:3px}.admin-toast.is-error{border-color:#efbdb6;border-left-color:#b63c2d;color:#7e2a20}.admin-toast a{color:var(--blue);text-decoration:underline}.admin-toast .icon-button{flex-shrink:0;min-width:32px;min-height:32px;margin:-5px -6px -5px 0;font-size:24px}.admin-toast>div{overflow-wrap:anywhere}.admin-toast.is-success>.icon{color:#248154}@media(max-width:600px){.admin-toast{top:76px;right:16px;left:16px;width:auto;font-size:14px}}@media print{.admin-toast{display:none!important}}

/* Visible navigation feedback, including when the previous page is scrolled. */
.admin-loading{position:fixed;z-index:1100;top:88px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 32px);padding:16px 22px;background:#fff;border:1px solid #b8d1ed;border-radius:12px;box-shadow:0 10px 32px #17345226;color:var(--ink);font-size:15px;font-weight:600;pointer-events:none}.admin-loading-spinner{width:22px;height:22px;flex:0 0 22px;border:3px solid #dce9f7;border-top-color:var(--blue);border-radius:50%;animation:admin-loading-spin .75s linear infinite}@keyframes admin-loading-spin{to{transform:rotate(360deg)}}@media(max-width:600px){.admin-loading{top:76px;padding:14px 18px;font-size:14px}}@media print{.admin-loading{display:none!important}}

/* Existing booking and admin layouts, with trip-specific additions. */
.trip-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin:20px 0}.trip-photo-grid figure{margin:0;padding:12px;border:1px solid #dae1e8;border-radius:8px}.trip-photo-grid img{width:100%;height:130px;object-fit:cover;border-radius:5px}.trip-photo-grid button{cursor:pointer}.public-trip-gallery button{padding:0;border:0;background:none}.trip-lightbox{position:fixed;inset:0;z-index:1000;background:rgba(9,24,39,.96);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:24px;gap:16px;color:white}.trip-lightbox>img{max-width:90vw;max-height:75vh;object-fit:contain}.trip-lightbox button{padding:10px 18px;border:1px solid #c9d4dd;border-radius:5px;background:white;color:#123559;cursor:pointer}.category-tags{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.category-tags button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:1.2em}.trip-departure-pickups table{width:100%;border-collapse:collapse}.trip-departure-pickups th,.trip-departure-pickups td{padding:12px;border-bottom:1px solid #dbe3ec;text-align:left}.reservation-group-heading th{background:#edf3fa;text-align:left;padding:14px}.reservation-passenger-group{border-bottom:4px solid #c9d5e1}.pickup-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0}.pickup-legend>span{border:1px solid #8799a9;border-radius:4px;padding:5px 10px;color:#182c42}.pickup-legend>p{width:100%;margin:4px 0;font-size:.85rem}.seat-pickup{font-weight:bold}.bus-grid td.occupied{border:2px solid #48637d}.bus-grid td.locked{outline:2px solid #163b64;outline-offset:-4px}.bus-grid td.blocked{background:repeating-linear-gradient(135deg,#dce1e5,#dce1e5 6px,#c1c9d1 6px,#c1c9d1 9px)!important}.bus-grid td[class*="pickup-color-"] button{background:transparent;color:#182c42}.bus-grid td[class*="pickup-color-"]{color:#182c42}.seating-workspace .passenger-print{font-size:.85rem}.pickup-option .field{margin:0}.pickup-option{flex-wrap:wrap}
.pickup-color-0{background-color:#d5e8fa!important}.pickup-color-1{background-color:#f9e4b5!important}.pickup-color-2{background-color:#d0eee2!important}.pickup-color-3{background-color:#efd8f6!important}.pickup-color-4{background-color:#fad7db!important}.pickup-color-5{background-color:#d9e0fb!important}.pickup-color-6{background-color:#e6edbc!important}.pickup-color-7{background-color:#f8d9c3!important}.pickup-color-8{background-color:#c8eeee!important}.pickup-color-9{background-color:#e2daca!important}.pickup-color-10{background-color:#e3d7eb!important}.pickup-color-11{background-color:#d5e6c9!important}
@media print{.pickup-legend,.bus-grid{print-color-adjust:exact;-webkit-print-color-adjust:exact}.pickup-legend{break-inside:avoid}.passenger-print thead{display:table-header-group}.passenger-print tr{break-inside:avoid}.trip-lightbox{display:none}}

/* Keep nested editor sections in normal flow and size time fields independently of checkboxes. */
.admin-form fieldset.trip-categories{display:flow-root;margin-top:20px}.admin-form .trip-categories>legend{float:none;width:auto;margin:0;padding:0 6px}.trip-categories>.field{width:100%;margin:16px 0}.admin-content .trip-categories>.button{margin:14px 0}.pickup-option>.field{flex:1 0 100%;min-width:0;padding-left:30px}.pickup-option .field input[type=time]{width:100%;min-width:140px;max-width:240px;height:auto;min-height:44px;margin:0}.trip-delete{margin-top:24px}.trip-delete>summary{color:#9b352b;font-weight:700}.trip-delete p{margin:14px 0}

/* Compact trip photography; the programme follows immediately after this block. */
.page-intro-compact{padding:32px 0 20px;background:#fff}
.page-intro-compact .breadcrumb{font-size:12px;margin-bottom:14px;gap:8px}
.page-intro-compact .breadcrumb a:hover{color:var(--blue)}
.page-intro-compact h1{font-size:clamp(28px,3vw,38px);line-height:1.18;letter-spacing:-.7px;margin:0;text-wrap:balance;overflow-wrap:anywhere;max-width:1100px}
.page-intro-compact>div>p{font-size:15px;margin-top:8px;line-height:1.5;max-width:none}
.trip-detail-section{padding-top:4px}
.gallery-pointer-return:focus{outline:none}
.photo-icon{width:18px;height:18px;flex:none;vertical-align:middle}
.trip-gallery{margin:0 0 26px;min-width:0}
.trip-gallery-cover{position:relative;display:block;width:100%;aspect-ratio:16/9;max-height:380px;overflow:hidden;border-radius:14px;background:#e8eef4;isolation:isolate}
.trip-gallery-cover:focus{outline:none}
.trip-gallery-cover:focus-visible:not(.gallery-pointer-return) .trip-gallery-open{outline:3px solid #1479fb;outline-offset:4px}
.trip-gallery-cover,.trip-gallery-cover>img{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
.trip-gallery-cover>img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.trip-gallery-cover:hover>img{transform:scale(1.015)}
.trip-gallery-open{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:8px;padding:10px 14px;background:#ffffffed;color:var(--ink);box-shadow:0 3px 14px #0a20351c;border:1px solid #ffffffa6;border-radius:8px;font-size:13px;font-weight:700;backdrop-filter:blur(8px)}
.trip-gallery-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:8px}
.trip-gallery-strip[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.trip-gallery-strip[data-columns="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.trip-gallery-strip[data-columns="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.trip-gallery-strip[data-columns="5"]{grid-template-columns:repeat(5,minmax(0,1fr))}
.trip-gallery-strip[data-columns="7"]{grid-template-columns:repeat(7,minmax(0,1fr))}
.trip-gallery-strip[data-columns="8"]{grid-template-columns:repeat(8,minmax(0,1fr))}
.trip-gallery-strip>a{position:relative;display:block;min-width:0;aspect-ratio:3/2;overflow:hidden;border-radius:8px;background:#e8eef4}
.trip-gallery-strip img{width:100%;height:100%;object-fit:cover;transition:opacity .2s}
.trip-gallery-strip>a:hover img{opacity:.8}
.trip-gallery-strip>a>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#0a2239a6;color:#fff;font-size:23px;font-weight:700;line-height:1.1}
.trip-gallery-strip small{font-size:11px;font-weight:400;margin-top:4px}

/* PhotoSwipe handles gestures, zoom, keyboard and focus. */
.maxner-photo-viewer{--pswp-bg:#081724;--pswp-icon-color:#f6f9fc;--pswp-icon-color-secondary:#081724;--pswp-icon-stroke-width:1.5px}
.maxner-photo-viewer .pswp__top-bar{height:68px;padding:10px 20px;align-items:center;background:linear-gradient(#08172499,transparent)}
.maxner-photo-viewer .pswp__counter{height:auto;margin:0 18px 0 0;font-size:14px;line-height:44px;text-shadow:none;opacity:1;color:#f1f5f9}
.maxner-photo-viewer .pswp__trip-title{min-width:0;flex:1;font:500 14px/1.5 Titillium,Arial,sans-serif;color:#c7d4e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.maxner-photo-viewer .pswp__button{display:grid;place-items:center;padding:0;line-height:1;width:44px;height:44px;margin:0 0 0 8px;border-radius:50%;background:#ffffff0c;border:1px solid #ffffff24;opacity:1;transition:background .18s}
.maxner-photo-viewer .pswp__button:hover{background:#ffffff21}
.maxner-photo-viewer .pswp__button .pswp__icn{position:static;inset:auto;margin:0}
.maxner-photo-viewer .pswp__button--arrow{position:absolute;top:50%;width:52px;height:52px;margin:-26px 0 0;background:#12283ac7;border:1px solid #ffffff24}
.maxner-photo-viewer .pswp__button--arrow--prev{left:18px}
.maxner-photo-viewer .pswp__button--arrow--next{right:18px}
.maxner-photo-viewer .pswp__button--arrow .pswp__icn{position:static;inset:auto;width:24px;height:24px;margin:0;transform:none;fill:none;stroke:var(--pswp-icon-color)}
.maxner-photo-viewer .pswp__trip-thumbnails{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:7px;max-width:calc(100% - 40px);padding:7px;background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:thin}
.maxner-photo-viewer .pswp__trip-thumbnails button{padding:0;flex:0 0 62px;height:46px;border:2px solid transparent;border-radius:6px;background:transparent;overflow:hidden;opacity:.5;cursor:pointer}
.maxner-photo-viewer .pswp__trip-thumbnails img{width:100%;height:100%;object-fit:cover}
.maxner-photo-viewer .pswp__trip-thumbnails button:hover{opacity:.85}
.maxner-photo-viewer .pswp__trip-thumbnails [aria-current=true]{border-color:white;opacity:1}

/* A bounded, compact photo manager leaves the rest of the form in reach. */
.photo-manager-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.photo-manager-toolbar>div{display:flex;flex-direction:column;gap:3px}
.photo-manager-toolbar strong{font-size:15px;color:var(--ink)}
.photo-manager-toolbar>div>span,.photo-manager-help{font-size:12px;color:var(--muted)}
.photo-manager-help{margin:9px 0 0}
.photo-upload-button{display:inline-flex;align-items:center;gap:7px;background:#eef5ff;color:#0759bf;border:1px solid #cbdff8;border-radius:8px;padding:9px 13px;font-size:13px;font-weight:700;cursor:pointer}
.photo-upload-button:hover{background:#e0edff}
.photo-upload-button.is-busy{opacity:.5;pointer-events:none}
.photo-manager-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(144px,1fr));gap:10px;max-height:388px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px 5px 2px 2px;margin:14px 0;align-content:start}
.photo-manager-grid figure{margin:0;min-width:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:9px}
.photo-manager-grid figure.is-cover{border-color:#8eb9ee;box-shadow:0 0 0 1px #a9cafa}
.photo-manager-preview{position:relative;width:100%;height:104px;display:block;overflow:hidden;padding:0;border:0;background:#eff3f7;cursor:zoom-in}
.photo-manager-preview img{width:100%;height:100%;object-fit:cover}
.photo-manager-number{position:absolute;top:6px;left:6px;display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:5px;background:#102a43a6;color:#fff;font-size:11px}
.photo-cover-badge{position:absolute;top:6px;right:6px;padding:3px 7px;border-radius:5px;background:#fff;color:#0759bf;font-size:10px;font-weight:700}
.photo-manager-controls{padding:6px;display:flex;align-items:center;justify-content:space-between;gap:3px}
.photo-manager-controls>label{display:flex;align-items:center;gap:4px;font-size:10px;color:#52677d;cursor:pointer;white-space:nowrap}
.photo-manager-controls input{width:13px;height:13px;margin:0;accent-color:var(--blue)}
.photo-manager-actions{display:flex;gap:1px}
.photo-manager-actions>button{display:grid;place-items:center;width:25px;height:29px;padding:0;border:0;border-radius:5px;background:transparent;color:#5c7185;cursor:pointer}
.photo-manager-actions>button:hover{background:#edf4fc;color:var(--blue)}
.photo-manager-actions>button:last-child:hover{background:#fff0ed;color:#a33f2b}
.photo-manager-actions .photo-icon{width:15px;height:15px}
.photo-manager-actions>button:disabled{opacity:.25;cursor:default}
.photo-existing{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.photo-existing>summary{font-size:12px;color:#5b7187;cursor:pointer}
.photo-existing .field{margin:12px 0!important}
.photo-existing>button{border:1px solid var(--line);border-radius:7px;padding:7px 12px;background:white;color:var(--blue);font-size:12px}
@media(max-width:600px){.trip-gallery-cover{aspect-ratio:16/10;max-height:280px;border-radius:10px}.trip-gallery-open{right:10px;bottom:10px;padding:8px 10px;font-size:11px}.maxner-photo-viewer .pswp__top-bar{padding:8px 10px}.maxner-photo-viewer .pswp__trip-title{font-size:12px}.maxner-photo-viewer .pswp__button--arrow{width:40px;height:40px;margin-top:-20px}.maxner-photo-viewer .pswp__button--arrow--prev{left:6px}.maxner-photo-viewer .pswp__button--arrow--next{right:6px}.maxner-photo-viewer .pswp__trip-thumbnails{bottom:16px;gap:5px;max-width:calc(100% - 20px);padding:5px}.maxner-photo-viewer .pswp__trip-thumbnails button{flex-basis:52px;height:42px}.photo-manager-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:360px}.photo-manager-preview{height:100px}.photo-manager-toolbar>div>span{max-width:200px}.photo-manager-actions>button{width:28px;height:32px}.photo-manager-controls>label{font-size:11px}}
@media print{.pswp{display:none!important}.trip-gallery-strip{display:none}}

/* One trip description layout, shared by the public page and editor previews. */
.trip-description{margin:24px 0 32px;font-size:16px;line-height:1.7;color:var(--ink)}
.trip-description .rich-content h2,.trip-description-editor .rich-editable h2{font-size:24px;line-height:1.25;letter-spacing:-.35px;margin:26px 0 12px}
.trip-description .rich-content h3,.trip-description-editor .rich-editable h3{font-size:17px;font-weight:700;line-height:1.4;letter-spacing:0;margin:22px 0 8px}
.trip-description .rich-content p,.trip-description-editor .rich-editable p{font-size:16px;line-height:1.7;color:#43586c;margin:0 0 14px}
.trip-description .rich-content ul,.trip-description .rich-content ol,.trip-description-editor .rich-editable ul,.trip-description-editor .rich-editable ol{margin:10px 0 16px;padding-left:22px}
.trip-description .rich-content li,.trip-description-editor .rich-editable li{margin:5px 0;line-height:1.65}
.trip-description .rich-content> :first-child,.trip-description-editor .rich-editable> :first-child{margin-top:0}
.trip-description .rich-content> :last-child,.trip-description-editor .rich-editable> :last-child{margin-bottom:0}
.trip-description .rich-content a{overflow-wrap:anywhere}
.trip-description-editor .rich-editable{font-size:16px;line-height:1.7}
@media(max-width:600px){.trip-description .rich-content h2,.trip-description-editor .rich-editable h2{font-size:22px}}

/* Trip filters and precise boarding locations. */
.trip-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 28px}.trip-tag{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border:1px solid #dce8fb;border-radius:999px;background:#edf4ff;color:#185bb4;font-size:14px;font-weight:700;line-height:1.45;transition:background .15s,border-color .15s}.trip-tag:hover{background:#dceaff;border-color:#a9c9f4}.pickup-map-link{display:inline-flex;align-items:center;gap:5px;color:var(--blue);font-size:13px;font-weight:600;line-height:1.5;text-decoration:none}.pickup-map-link .icon{width:15px;height:15px}.pickup-map-link:hover{text-decoration:underline}.trip-departure-pickups td>.pickup-map-link{display:flex;width:fit-content;margin-top:5px}.booking-pickups .pickup-map-link{margin-top:6px}.pickup-location-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.pickup-location-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}.pickup-location-paste{margin-top:20px}.pickup-location-paste summary{cursor:pointer;color:var(--blue);font-size:14px;font-weight:600}.pickup-location-paste .field{margin-top:16px}.pickup-map-picker{margin-top:18px}.pickup-map-canvas{height:360px;border:1px solid var(--line);border-radius:12px;isolation:isolate;z-index:0}.pickup-map-canvas .leaflet-control a{color:#173554}.pickup-map-canvas .leaflet-control-attribution{font-size:11px}.pickup-map-marker{background:transparent;border:0}.pickup-map-marker span{display:block;width:28px;height:28px;border:3px solid white;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#0860d6;box-shadow:0 2px 7px #0b234066}.pickup-map-marker span:after{content:"";position:absolute;inset:7px;background:#fff;border-radius:50%}.pickup-map-marker:focus-visible{outline:3px solid #ffcf30;outline-offset:6px}@media(max-width:600px){.pickup-location-fields{grid-template-columns:minmax(0,1fr);gap:0}.pickup-map-canvas{height:300px}.trip-tag{font-size:13px;padding:6px 12px}}
/* Client directory and contact history */
.client-contact-values { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 16px 28px; margin: 20px 0; }
.client-contact-values dt { color: var(--muted, #64748b); font-size: .875rem; }
.client-contact-values dd { margin: 4px 0 0; overflow-wrap: anywhere; }
.client-history-entry { border-top: 1px solid var(--line, #e2e8f0); padding: 16px 0; }
.client-history-entry h3 { margin: 0 0 8px; font-size: 1rem; }
.client-picker { margin: 12px 0 20px; }
.client-picker summary, .client-history summary { cursor: pointer; }
.client-picker-results { list-style: none; padding: 0; margin: 12px 0; max-height: 320px; overflow-y: auto; }
.client-picker-results li + li { border-top: 1px solid var(--line, #e2e8f0); }
.client-picker-results button { display: flex; flex-direction: column; gap: 4px; width: 100%; text-align: left; padding: 12px; border: 0; background: transparent; color: inherit; cursor: pointer; overflow-wrap: anywhere; }
.client-picker-results button:hover, .client-picker-results button:focus-visible { background: #edf4fc; }
.client-picker-results button span { font-size: .875rem; color: #52647a; }
.client-selected { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 12px 0; padding: 12px; background: #edf4fc; border-radius: 8px; }
.client-trips table { width: 100%; border-collapse: collapse; }
.client-trips th, .client-trips td { text-align: left; padding: 12px; border-bottom: 1px solid var(--line, #e2e8f0); vertical-align: top; }

.bus-grid button[draggable=true]{cursor:grab;touch-action:auto}
.bus-grid button[draggable=true]:active{cursor:grabbing}
.bus-grid td.is-drop-target{outline:3px solid var(--blue);outline-offset:1px;box-shadow:0 0 0 5px #0860d626}

/* Grouped administration navigation */
.admin-menu-toggle{display:none}
.admin-sidebar nav{gap:20px;min-height:0;overflow-y:auto;padding-bottom:10px}
.admin-nav-group{display:flex;flex-direction:column;gap:2px}
.admin-nav-group-title{padding:0 10px 2px;color:var(--muted);font-size:10px;font-weight:700;line-height:1.3;letter-spacing:.6px;text-transform:uppercase}
.sidebar-bottom{flex-shrink:0}
@media screen and (min-width:901px){
  .admin-shell{grid-template-columns:max-content minmax(0,1fr)}
  .admin-sidebar nav a{white-space:nowrap}
}
@media(min-width:601px){
  .admin-sidebar{padding:18px 12px}
  .admin-sidebar img{width:145px;height:auto;margin:0 10px 12px}
  .admin-label{display:none}
  .admin-sidebar nav a{padding:6px 10px;gap:9px;font-size:13px;line-height:1.3}
  .admin-sidebar nav .icon{width:17px;height:17px}
  .sidebar-bottom{padding:12px 8px 0}
  .sidebar-bottom p{margin-top:6px;font-size:10px}
  .sidebar-bottom p .icon{width:14px;height:14px}
}
@media(min-width:601px) and (max-height:760px){
  .admin-sidebar{padding-block:12px}
  .admin-sidebar img{width:130px;margin-bottom:8px}
  .admin-sidebar nav{gap:16px}
  .admin-sidebar nav a{padding-block:5px}
  .sidebar-bottom{padding-top:8px}
  .sidebar-bottom p{display:none}
}
@media(max-width:900px){.admin-nav-group-title{font-size:9px}}
@media(max-width:600px){
  .admin-sidebar nav{gap:0;overflow-y:hidden;padding-bottom:10px}
  .admin-nav-group{flex-direction:row;flex-shrink:0;gap:4px}
  .admin-nav-group+.admin-nav-group{margin-left:12px;padding-left:12px;border-left:1px solid var(--line)}
  .admin-nav-group-title{display:none}
}

/* Keep wide content inside the workspace instead of widening the page. */
/* Catalogue tables become labelled cards when their own container is narrow.
   Keep the sortable headings visible as a compact sorting toolbar. */
.table-sort{display:flex;align-items:center;gap:8px;min-height:44px;color:inherit;line-height:1.35}
.table-sort>span[aria-hidden]{flex-shrink:0;color:var(--muted)}
.table-sort-label{display:block}
.table-sort:hover,.table-sort:focus-visible,th[aria-sort]>.table-sort{color:var(--blue)}
th[aria-sort]>.table-sort>span[aria-hidden]{color:var(--blue)}
.trip-overview-table .trip-date-toggle,.trip-reservation-count{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:44px;padding:6px;border:1px solid transparent;border-radius:7px;background:transparent;font-size:15px;font-weight:700;line-height:1.4;color:var(--blue)}
.trip-overview-table .trip-date-toggle strong{margin:0}
.trip-overview-table .trip-date-toggle:hover,.trip-reservation-count:hover{background:#e6f0ff;border-color:#bad4f4}
.trip-overview-table .trip-date-toggle[aria-expanded=true]{background:#e6f0ff;border-color:#8db9f3}
.trip-overview-table .trip-date-toggle.is-empty,.trip-reservation-count.is-empty{color:var(--muted)}
.trip-add-departure{display:inline-flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:8px;color:var(--blue);background:white}
.trip-add-departure:hover{background:#e6f0ff;border-color:#8db9f3}
.trip-add-departure>span{display:none}
.trip-add-departure .icon{width:19px;height:19px}
.trip-overview-table>thead>tr>th,.trip-overview-table>tbody>tr>td{padding-inline:14px}
.trip-overview-table .trip-add-heading{white-space:nowrap}
.trip-next-date{position:relative;min-width:190px}
.trip-upcoming-preview{line-height:22px}
.trip-preview-primary,.trip-preview-more{display:block;width:fit-content;max-width:100%;border-radius:3px}
.trip-preview-date{display:flex;align-items:center;gap:7px;min-height:22px;white-space:nowrap;color:var(--ink)}
.badge-open,.trip-preview-date.is-open{--departure-state-color:#20845c;--departure-state-background:#e6f7ee}
.badge-closed,.trip-preview-date.is-closed{--departure-state-color:#b45309;--departure-state-background:#fff1df}
.badge-open,.badge-closed{align-items:center;gap:5px;color:var(--departure-state-color);background:var(--departure-state-background)}
.badge-open .icon,.badge-closed .icon{width:13px;height:13px;stroke-width:2}
.trip-preview-date .icon{width:14px;height:14px;stroke-width:2;color:var(--departure-state-color)}
.trip-preview-more{font-weight:400}
.trip-preview-more .trip-preview-date{color:#526980}
.trip-preview-more .trip-preview-date+ .trip-preview-date{color:#68798e}
.trip-preview-primary:hover .trip-preview-date,.trip-preview-more:hover .trip-preview-date{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
/* The fourth date occupies the cell's bottom padding without making the row taller. */
.trip-preview-overflow{position:absolute;top:82px;bottom:0;left:14px;right:14px;overflow:hidden;font-weight:400}
.trip-preview-fade{display:block;height:100%;max-height:22px;mask-image:linear-gradient(#0009,transparent);-webkit-mask-image:linear-gradient(#0009,transparent)}
.trip-preview-fade .trip-preview-date{color:#68798e}
.trip-preview-overflow:focus-visible{outline-offset:-3px}
.trip-preview-overflow:focus-visible .trip-preview-fade{mask-image:none;-webkit-mask-image:none}
.trip-count-cell,.trip-add-cell{width:1%;white-space:nowrap}
.trip-price-notes{max-width:950px}
.admin-content .trip-price-notes h2{font-size:18px;line-height:1.55;letter-spacing:normal}
.trip-price-notes .panel-heading{padding:25px}
.trip-price-notes .panel-heading p{max-width:850px;margin-top:8px;font-size:14px;line-height:1.55}
.trip-price-notes-table .source-price-value{white-space:pre-wrap!important;font-variant-numeric:tabular-nums}
.admin-filter.trip-overview-filters{grid-template-columns:minmax(180px,1.5fr) repeat(2,minmax(150px,1fr))}
.trip-departure-filters{grid-template-columns:repeat(2,minmax(0,1fr));max-width:620px}
@media screen{.responsive-table-wrap{container-type:inline-size}}
.responsive-table{width:100%;white-space:normal}
.responsive-table>thead>tr>th,.responsive-table>tbody>tr>td{white-space:normal;vertical-align:top}
.responsive-table>thead>tr>th{padding-block:8px;vertical-align:middle}
.annual-departures-table .table-title{min-width:180px;max-width:300px}
@media screen and (max-width:1100px){.admin-filter.trip-overview-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:900px){
  .responsive-table{display:block;min-width:0;border:0;background:transparent}
  .responsive-table>thead,.responsive-table>tbody{display:block}
  .responsive-table>thead>tr{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 14px}
  .responsive-table>thead>tr>th{display:block;border:0;padding:0;background:transparent;font-size:12px;text-transform:none;letter-spacing:normal}
  .responsive-table>thead>tr>th:not(:has(.table-sort)){display:none}
  .responsive-table .table-sort{padding:8px 10px;background:white;border:1px solid var(--line);border-radius:8px}
  .responsive-table th[aria-sort]>.table-sort{background:#e6f0ff;border-color:#8db9f3}
  .responsive-table>tbody>tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;padding:18px;margin-bottom:14px;border:1px solid var(--line);border-radius:10px;background:white}
  .responsive-table>tbody>tr>td{display:block;width:auto;min-width:0;max-width:none;border:0;padding:0;white-space:normal!important;overflow-wrap:anywhere}
  .responsive-table>tbody>tr>td[data-label]::before{content:attr(data-label);display:block;margin-bottom:4px;color:var(--muted);font-size:12px;font-weight:700}
  .responsive-table>tbody>tr>.responsive-table-primary,.responsive-table>tbody>tr>.responsive-table-actions,.responsive-table>tbody>tr>.admin-empty{grid-column:1/-1}
  .responsive-table>tbody>tr>.responsive-table-primary{font-size:16px}
  .responsive-table .trip-row-actions{flex-direction:row;flex-wrap:wrap;gap:8px 18px}
  .responsive-table .trip-row-actions>a{display:inline-flex;align-items:center;min-height:44px}
  .trip-overview-table>tbody>tr>.trip-next-date{grid-column:1/-1}
  .trip-overview-table>tbody>tr>.trip-next-date:has(.trip-preview-overflow){padding-bottom:14px}
  .trip-preview-overflow{top:66px;left:0;right:0}
  .trip-overview-table>tbody>tr>.trip-add-cell{grid-column:1/-1;order:1}
  .trip-overview-table .trip-add-departure{width:auto;gap:8px;padding:8px 12px;font-weight:700}
  .trip-add-departure>span{display:inline}
  .responsive-table.trip-price-notes-table>thead{display:none}
  .responsive-table.trip-price-notes-table>tbody>tr{border:0;border-radius:0;margin:0;border-top:1px solid var(--line)}
  .responsive-table .trip-is-open{margin-bottom:0;border-color:#bad4f4;border-radius:10px 10px 0 0;background:#f7faff}
  .responsive-table>tbody>.trip-expanded-row{display:block;padding:0;border-color:#bad4f4;border-top:0;border-radius:0 0 10px 10px;background:#f7faff}
  .responsive-table .trip-expanded-row section{padding:16px;min-width:0}
  .responsive-table .trip-expanded-heading{flex-wrap:wrap;gap:10px}
  .responsive-table .trip-departure-filters{grid-template-columns:minmax(0,1fr)}
}
@media screen and (max-width:600px){
  .admin-filter.trip-overview-filters{grid-template-columns:minmax(0,1fr)}
  .trip-price-notes .panel-heading{padding:19px}
  .trip-departure-filters{grid-template-columns:minmax(0,1fr)}
}
@media screen{
  .admin-workspace,.admin-content,.admin-content .panel,.admin-two-cols>*{min-width:0}
  .admin-content .table-wrap{max-width:100%}
  .admin-content .admin-page-heading,.admin-content .panel-heading{flex-wrap:wrap}
  .admin-page-heading>div,.admin-user>span{min-width:0;overflow-wrap:anywhere}
  .admin-topbar>span{min-width:0;overflow-wrap:anywhere}
  .admin-user{min-width:0;max-width:100%;flex-wrap:wrap}
  .admin-content .form-actions>*,.admin-content .operation-nav>a{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .admin-content .admin-filter .field{min-width:min(160px,100%);max-width:100%}
  .admin-content .passenger-table{table-layout:fixed;white-space:normal}
  .passenger-table th,.passenger-table td{overflow-wrap:anywhere;vertical-align:top}
  .passenger-table th,.passenger-table td{padding:14px 12px}
  .passenger-table>thead th:nth-child(1){width:18%}
  .passenger-table>thead th:nth-child(2){width:20%}
  .passenger-table>thead th:nth-child(3){width:27%}
  .passenger-table>thead th:nth-child(4){width:20%}
  .passenger-table>thead th:nth-child(5){width:15%}
}
@media screen and (max-width:900px){
  .admin-shell{display:block}
  .admin-sidebar{position:static;height:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 12px;padding:14px 20px;border-right:0;border-bottom:1px solid var(--line)}
  .admin-sidebar img{width:135px;margin:0}
  .admin-menu-toggle{display:inline-flex;min-height:44px;padding:9px 14px}
  .admin-sidebar .admin-label,.admin-sidebar .sidebar-bottom{display:none}
  .admin-sidebar nav{display:none;grid-column:1/-1;margin-top:14px;max-height:60dvh;overflow:auto;padding:4px 0 10px;flex-direction:column;gap:20px}
  .admin-sidebar.is-open nav{display:flex}
  .admin-sidebar .admin-nav-group{flex-direction:column;gap:2px;margin:0;padding:0;border:0}
  .admin-sidebar .admin-nav-group-title{display:block;font-size:10px}
  .admin-sidebar nav a{min-height:44px;padding:10px 12px;font-size:14px}
  .admin-topbar{flex-wrap:wrap}
}
@media screen and (max-width:760px){
  .passenger-table,.passenger-table tbody,.passenger-table tr,.passenger-table td,.passenger-table th{display:block;width:100%}
  .passenger-table>thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .passenger-table .reservation-passenger-group{margin-bottom:18px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white}
  .passenger-table .reservation-group-heading th{padding:14px 16px}
  .passenger-table tbody tr:not(.reservation-group-heading){padding:12px 16px;border-top:1px solid var(--line)}
  .passenger-table tbody td{padding:5px 0;border:0}
  .passenger-table td[data-label]{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:12px}
  .passenger-table td[data-label]::before{content:attr(data-label);font-size:12px;font-weight:700;color:var(--muted)}
}
@media screen and (max-width:600px){
  .admin-content .form-actions>.button,.admin-content .form-actions>form{width:100%}
  .admin-content .form-actions>form .button{width:100%}
  .admin-content .operation-nav>a{flex:1 1 180px;text-align:center}
  .admin-content .definition-grid{grid-template-columns:minmax(0,1fr)}
}
.operation-print .passenger-print:not(.passenger-groups) th:nth-child(1){width:10%}.operation-print .passenger-print:not(.passenger-groups) th:nth-child(2){width:20%}.operation-print .passenger-print:not(.passenger-groups) th:nth-child(3){width:17%}.operation-print .passenger-print:not(.passenger-groups) th:nth-child(4){width:25%}.operation-print .passenger-print:not(.passenger-groups) th:nth-child(5){width:18%}.operation-print .passenger-print:not(.passenger-groups) th:nth-child(6){width:10%}.operation-print .passenger-print th:last-child,.operation-print .passenger-print td:last-child{white-space:nowrap}
.seating-drag-ghost{position:fixed;top:-1000px;left:-1000px;z-index:10000;max-width:240px;padding:12px 18px;border:2px solid #0860d6;border-radius:10px;background:#edf6ff;color:#112541;font:700 16px Titillium,Arial,sans-serif;box-shadow:0 5px 18px #11254133}.seating-drag-status{padding:10px 14px;background:#edf6ff;border:1px solid #b5d1f4;border-radius:8px;color:#112541}.bus-grid .seat-drop-preview{color:#0757b8;font-weight:700}
.seating-drag-status{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);z-index:60;pointer-events:none}
/* Fixed seat slots keep drag previews from moving the grid. */
@media screen{
.seating-page .bus-grid td.cell-seat{position:relative;height:176px;padding:0}
.seating-page .bus-grid td.cell-seat>button,.seating-page .bus-grid td.cell-seat>.seat-content{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}
.seating-page .bus-grid .cell-seat .seat-content{box-sizing:border-box;height:100%;display:grid;grid-template-rows:24px 40px 48px 18px;gap:4px;align-content:center;padding:8px 6px;overflow:hidden}
.seating-page .bus-grid .cell-seat .seat-number{grid-row:1;font-size:18px;line-height:24px}
.seating-page .bus-grid .cell-seat .seat-name{grid-row:2;font-size:14px;line-height:19px;max-height:38px}
.seating-page .bus-grid .cell-seat .seat-pickup{grid-row:3;font-size:11px;line-height:14px;max-height:42px}
.seating-page .bus-grid .cell-seat .seat-name,.seating-page .bus-grid .cell-seat .seat-pickup{align-self:center;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
.seating-page .bus-grid .cell-seat .seat-pickup{-webkit-line-clamp:3}
.seating-page .bus-grid .cell-seat .seat-state{grid-row:4;align-self:center;font-size:11px;line-height:16px;white-space:nowrap}
.seating-page .bus-grid .cell-seat .seat-availability{grid-row:2/5;align-self:center}
.seating-page .bus-grid .cell-seat .seat-drop-preview{position:absolute;inset:34px 6px 12px;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:13px;line-height:18px;overflow-wrap:anywhere}
}
@media screen{.seating-page .bus-grid td.cell-seat{border-width:2px}}

.bus-grid .seat-content>.seat-name{display:block;line-height:1.3}

/* Keep source price variants and attachments readable in imported date rows. */
.departure-row > div > small { display: block; margin-top: 4px; }
.trip-pickups .pickup-option:has(input[type="time"]) { flex-wrap: wrap; }
.admin-form fieldset.trip-pickups{display:flow-root}
.trip-pickups>p{clear:both}
.trip-pickups .pickup-options{align-items:start}
.trip-pickups .pickup-option>span{flex:1;min-width:0}

.analytics-help{font-size:14px;margin-bottom:22px;max-width:850px}
.analytics-filters{flex-wrap:wrap}
.analytics-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 24px}
.analytics-summary>div{padding:20px 24px;background:white;border:1px solid var(--line);border-radius:11px}
.analytics-summary dt{font-size:14px;color:var(--muted)}
.analytics-summary dd{margin:4px 0 0;font-size:30px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink)}
.analytics-empty{padding:16px 20px;margin-bottom:20px;background:#edf4ff;border:1px solid #c8ddf6;border-radius:10px;font-size:14px;color:var(--ink)}
.analytics-table .table-title{width:55%}
.analytics-table .analytics-count{font-variant-numeric:tabular-nums;text-align:right}
.analytics-table th:not(:first-child) .table-sort{justify-content:flex-end}
@container (max-width:900px){
  .analytics-table .table-title{width:auto}
  .analytics-table .analytics-count{text-align:left}
}
@media(max-width:600px){
  .analytics-summary{grid-template-columns:minmax(0,1fr);gap:10px}
  .analytics-summary>div{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
  .analytics-summary dd{margin:0;font-size:26px}
  .admin-content .analytics-filters .field{flex:1 1 140px;min-width:0}
  .analytics-filters>.button{width:100%}
}

.pickup-location-status{color:var(--blue);font-weight:600;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px;white-space:nowrap}.pickup-location-status:focus-visible{outline:2px solid var(--blue);outline-offset:5px;border-radius:2px}.pickup-map-preview{position:fixed;z-index:10000;width:336px;max-width:calc(100vw - 16px);padding:10px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 32px #17355433;pointer-events:none;color:#173554}.pickup-map-preview>strong{display:block;margin-bottom:8px;font-size:14px;line-height:1.4}.pickup-map-preview-canvas{height:210px;border-radius:6px;isolation:isolate;background:#edf2f6}.pickup-map-preview-message{display:block;font-size:13px;line-height:1.4;margin-top:6px}.pickup-map-preview .leaflet-control-attribution{font-size:10px}

.layout-cell-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:20px}.layout-cell-actions .button{white-space:normal}

.catalog-search-excerpt{font-size:14px;line-height:1.5;margin:12px 0;color:var(--muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

/* Public search is reachable from every page, with ordinary GET navigation. */
/* Keep sticky inputs inside the root scrollport. A root scroll-padding-top
   makes Safari scroll upward on every keystroke; offset only anchor targets. */
:where(main,section,article,aside)[id]{scroll-margin-top:100px}
.site-search{display:flex;align-items:center;flex:0 1 210px;min-width:145px;height:42px;border:1px solid #d4e2ef;border-radius:8px;background:var(--pale);overflow:hidden}.site-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 2px #0860d61a}.site-search input{width:100%;min-width:0;border:0;padding:9px 0 9px 12px;background:transparent;font-size:14px;color:var(--ink);outline:none}.site-search button{display:grid;place-items:center;align-self:stretch;border:0;background:transparent;color:var(--blue);padding:9px 10px}.site-search button:hover{background:#e2eefb}.site-search .icon{width:20px;height:20px}
@media(min-width:1101px){.site-header .nav-inner{gap:22px}.site-header .main-nav{gap:20px}}
@media(max-width:1100px){.site-header .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:24px;box-shadow:0 16px 20px #0b234015;align-items:stretch;max-height:calc(100dvh - 90px);overflow:auto}.site-header .main-nav.open{display:flex;flex-direction:column}.site-header .main-nav a{padding:9px;font-size:17px}.site-header .menu-toggle{display:block}}
@media(max-width:600px){.site-search{flex:0 1 140px;min-width:110px;height:39px}.site-search input{font-size:16px;padding-left:9px}.site-search button{padding:8px}.site-search .icon{width:18px;height:18px}.site-header .brand img{width:130px}.flights-body .site-header .nav-inner{height:auto;min-height:75px;flex-wrap:wrap;padding-block:12px}.flights-body .site-search{order:5;flex-basis:100%;max-width:none;margin-top:8px}}
@media(max-width:380px){.site-header .brand img{width:111px}.site-search{flex-basis:128px}.site-search input{font-size:14px}}

/* Search previews and pending cards share the results grid. */
.catalog-active-criteria{display:flex;flex-wrap:wrap;gap:6px 14px;list-style:none;margin:9px 0 0;padding:0;font-size:13px;line-height:1.5;color:var(--ink)}.catalog-active-criteria li{padding:4px 9px;background:var(--pale);border:1px solid var(--line);border-radius:6px}.catalog-tools{align-items:flex-start}
.catalog-loading{display:flex;align-items:center;gap:8px;margin-top:9px;font-size:13px;padding:0;min-height:20px}
.catalog-search-spinner{position:relative;display:grid;place-items:center;width:19px;height:19px;flex:0 0 19px;border-radius:50%;color:var(--blue)}.catalog-search-spinner:before{content:"";position:absolute;inset:0;border:2px solid #0860d61a;border-top-color:var(--blue);border-radius:50%;animation:catalog-search-spin 1s linear infinite}.catalog-search-spinner .icon{width:10px;height:10px}
.catalog-match-label{align-self:flex-start;font-size:12px;line-height:1.4;font-weight:600;color:var(--muted);margin-bottom:10px}
.catalog-search-skeleton{overflow:hidden;border:1px solid var(--line);border-radius:12px;padding-bottom:25px;background:#fff;min-height:360px}.catalog-search-skeleton>div,.catalog-search-skeleton>span{display:block;position:relative;overflow:hidden;background:#eaf0f6}.catalog-search-skeleton>div{height:205px;margin-bottom:25px}.catalog-search-skeleton>span{height:16px;margin:12px 22px;border-radius:4px}.catalog-search-skeleton>span:last-child{width:45%}.catalog-search-skeleton>div:after,.catalog-search-skeleton>span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffffab,transparent);transform:translateX(-100%);animation:catalog-search-shimmer 1.6s ease-in-out infinite}
.catalog-grid[data-fill-desktop="1"]>.catalog-search-skeleton:nth-of-type(3),.catalog-grid[data-fill-desktop="2"]>.catalog-search-skeleton:nth-of-type(n+2){display:none}
.catalog-results>.alert{margin-top:24px}.empty-state>.button+.button{margin-left:12px}
@keyframes catalog-search-spin{to{transform:rotate(360deg)}}@keyframes catalog-search-shimmer{to{transform:translateX(100%)}}
@media(max-width:900px){.catalog-grid>.catalog-search-skeleton{display:block!important}.catalog-grid>.catalog-search-skeleton:nth-of-type(3),.catalog-grid[data-fill-tablet="1"]>.catalog-search-skeleton:nth-of-type(2){display:none!important}}
@media(max-width:600px){.catalog-grid>.catalog-search-skeleton:nth-of-type(n+2){display:none!important}.catalog-active-criteria{font-size:12px}.empty-state>.button+.button{margin:12px 0 0}}
@media(prefers-reduced-motion:reduce){.catalog-search-spinner:before,.catalog-search-skeleton>div:after,.catalog-search-skeleton>span:after{animation:none}}

/* Header suggestions use the same completed local catalog results. */
.site-search{position:relative;overflow:visible}
.site-search-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:min(480px,calc(100vw - 32px));background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 45px #0b234029;overflow:hidden;z-index:90;color:var(--ink);text-align:left}
.site-search-suggestion-status{padding:11px 14px;border-bottom:1px solid var(--line);font-size:12px;font-weight:700;color:var(--muted);background:#f7fafc}
.site-search-options{list-style:none;margin:0;padding:4px 0;max-height:min(420px,60dvh);overflow:auto}
.site-search-option{display:grid;grid-template-columns:56px minmax(0,1fr) 18px;gap:12px;align-items:center;padding:11px 14px;text-decoration:none;color:var(--ink);border-bottom:1px solid #edf1f6;font-size:14px;line-height:1.35}
.site-search-option:hover,.site-search-option:focus-visible{background:#edf5ff;outline:none;color:var(--blue)}
.site-search-option img{object-fit:cover;border-radius:5px;width:56px;height:44px}.site-search-option strong{font-weight:700}.site-search-option small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.site-search-option .icon{width:16px;height:16px}
.site-search-all{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--pale);font-size:13px;font-weight:700;color:var(--blue);text-decoration:none}.site-search-all:hover,.site-search-all:focus-visible{background:#dfeeff;outline:none}
@media(max-width:600px){.site-search-dropdown{right:-48px;width:min(370px,calc(100vw - 24px))}.site-search-option{grid-template-columns:44px minmax(0,1fr) 16px;gap:9px;padding:10px 12px;font-size:13px}.site-search-option img{width:44px;height:40px}}
.site-search-dropdown{display:flex;flex-direction:column;max-height:min(500px,calc(100dvh - 180px))}.site-search-options{min-height:0;flex:1 1 auto}.site-search-suggestion-status,.site-search-all{flex-shrink:0}
@media(max-width:600px){.flights-body .site-search-dropdown{right:0;width:100%}}
