:root {
  --bg: #edf2f8;
  --surface: #ffffff;
  --text: #131d30;
  --muted: #5f6d85;
  --line: #d7dfea;
  --blue: #1668e3;
  --blue-dark: #0f4fb2;
  --green: #0f8b46;
  --radius-lg: 14px;
  --radius-md: 10px;
  --shadow: 0 14px 26px rgba(17, 29, 57, 0.09);
}

* {
  box-sizing: border-box;
}

.hidden {
  display: none !important;
}

body {
  margin: 0;
  font-family: "Inter", sans-serif;
  background: var(--bg);
  color: var(--text);
}

.container {
  width: min(1240px, 94vw);
  margin: 0 auto;
}

.site-header {
  background: #fff;
  border-bottom: 1px solid #e2e8f2;
}

.header-inner {
  height: 84px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  overflow: hidden;
}

.brand {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex: 0 0 275px;
  width: 275px;
  height: 100%;
  text-decoration: none;
  color: var(--text);
}

.brand-logo {
  width: 275px;
  height: auto;
  max-height: 84px;
  object-fit: contain;
}

.header-nav {
  display: flex;
  gap: 16px;
}

.header-nav a,
.header-link {
  color: #31415f;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
}

.header-right {
  display: flex;
  align-items: center;
  gap: 11px;
}

.lang-switch {
  display: flex;
  gap: 4px;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 3px;
}

.lang-btn {
  border: none;
  border-radius: 999px;
  background: transparent;
  padding: 6px 10px;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  cursor: pointer;
}

.lang-btn.active {
  background: #e8f0ff;
  color: var(--blue-dark);
}

.hero {
  position: relative;
  min-height: 540px;
  background: url("assets/travel/hero-aviation-v2.png") center/cover no-repeat;
  border-bottom: 1px solid #d8dfeb;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4, 17, 39, 0.54), rgba(5, 28, 60, 0.3) 58%, rgba(5, 25, 52, 0.12));
}

.hero-content {
  position: relative;
  z-index: 1;
  min-height: 520px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 0;
}

.search-panel {
  --search-field-height: 62px;
  width: min(1180px, 100%);
  max-width: 1180px;
  margin: 0 auto;
  background: rgba(3, 36, 73, 0.02);
  border-radius: 16px;
  box-shadow: 0 18px 34px rgba(4, 18, 40, 0.02);
  padding: 18px 22px 20px;
  backdrop-filter: blur(26px);
  border: 1px solid rgba(255, 255, 255, 0.34);
}

.search-panel h1 {
  margin: 0 0 14px;
  color: #fff;
  font-size: clamp(1.7rem, 3.8vw, 3.2rem);
  line-height: 1;
  max-width: 860px;
}

.trip-type-row {
  margin-bottom: 8px;
}
.mobile-menu-toggle,.mobile-menu-panel,.mobile-menu-backdrop{display:none}
.services-page{background:#fff;padding-bottom:75px}.services-hero{padding:78px 0;background:linear-gradient(135deg,#0c2345,#134f91);color:#fff}.services-hero span,.service-category-head>span{font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.services-hero h1{max-width:850px;margin:12px 0;font-size:clamp(2.6rem,5vw,4.8rem);line-height:1;letter-spacing:-.055em}.services-hero p{max-width:800px;color:#d4e2f4;font-size:1.05rem;line-height:1.7}.services-hero>div>div{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.services-hero .outline-btn{display:inline-flex;align-items:center;color:#fff;border-color:#8bb8eb;background:transparent;text-decoration:none}.service-category{padding-top:64px}.service-category-head{max-width:760px;margin-bottom:24px}.service-category-head>span{color:#075ee8}.service-category-head h2{margin:7px 0;font-size:clamp(1.8rem,3vw,2.6rem)}.service-category-head p{color:#60708a;line-height:1.6}.service-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-product-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid #dce4ee;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(20,43,72,.05)}.service-product-grid h3{margin:0 0 8px}.service-product-grid p{margin:0 0 18px;color:#5d6c82;line-height:1.6}.service-product-grid strong{margin-top:auto;color:#12345f;font-size:.82rem}.service-product-grid a{margin-top:12px;color:#075ee8;font-weight:700;text-decoration:none}@media(max-width:700px){.services-hero{padding:52px 0}.services-hero h1{font-size:2.65rem}.service-category{padding-top:45px}.service-product-grid{grid-template-columns:1fr}}
.trip-type-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid rgba(255,255,255,.3);border-radius:12px;background:rgba(7,25,51,.42)}.mode-tab{border:0;border-radius:8px;padding:8px 14px;background:transparent;color:#dce8f8;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.mode-tab.active{background:#fff;color:#12345f;box-shadow:0 4px 12px rgba(0,0,0,.15)}

#tripTypeSelect {
  width: 150px;
  border: 1px solid rgba(255, 255, 255, 0.36);
  border-radius: 12px;
  background: rgba(8, 36, 73, 0.02);
  color: #fff;
  padding: 8px 12px;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
}

#tripTypeSelect:focus {
  outline: none;
  border-color: #8eb4f0;
}

#tripTypeSelect option {
  color: #10233f;
  background: #ffffff;
}

#tripTypeSelect option[value="oneway"] {
  color: #0f4fb2;
  background: #f3f8ff;
}

#tripTypeSelect option[value="multicity"] {
  color: #0c7a43;
  background: #eefbf3;
}

.search-form {
  margin-top: 0;
}

.fields-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;align-items:stretch}.fields-grid>.autocomplete-wrap:first-child{grid-column:1/7;grid-row:1}.fields-grid>.swap-btn{grid-column:6/8;grid-row:1}.fields-grid>.to-card{grid-column:7/13;grid-row:1}.fields-grid>.search-input:nth-of-type(3){grid-column:1/4;grid-row:2}.fields-grid>#returnWrap{grid-column:4/7;grid-row:2}.fields-grid>.travel-card{grid-column:7/10;grid-row:2}.fields-grid>.search-btn{grid-column:10/13;grid-row:2}

.search-input {
  position: relative;
}

.search-input.card {
  background: rgba(255, 255, 255, 0.68);
  padding: 8px 12px 7px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:12px;
  min-height: var(--search-field-height);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.to-card {
  padding-left: 18px;
}

.search-input label {
  display: inline-block;
  font-size: 0.74rem;
  color: #576981;
  margin-bottom: 2px;
  font-weight: 700;
}

input,
select {
  width: 100%;
  border: none;
  border-radius: 0;
  padding: 0;
  font: inherit;
  font-size: 1rem;
  line-height: 1.2;
  color: var(--text);
  background: transparent;
}

input:focus,
select:focus {
  outline: none;
  box-shadow: none;
}

.swap-btn {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 2px solid #0e2748;
  background: #ffffff;
  color: #0c2446;
  margin: 0 -14px;
  z-index: 4;
  justify-self: center;
  align-self: center;
  cursor: pointer;
}

.swap-btn:hover {
  transform: rotate(180deg);
}

.travel-card {
  border-right: 0;
  min-width: 180px;
}
.traveler-picker{position:relative}.traveler-picker summary{display:grid;gap:3px;cursor:pointer;list-style:none}.traveler-picker summary::-webkit-details-marker{display:none}.traveler-picker summary span{color:#576981;font-size:.74rem;font-weight:700}.traveler-picker summary strong{color:#17233b;font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:18px}.traveler-picker summary:after{content:"⌄";position:absolute;right:0;top:10px;color:#334764}.traveler-picker-menu{position:absolute;top:calc(100% + 13px);right:-12px;z-index:20;width:290px;padding:16px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;box-shadow:0 18px 38px rgba(5,24,52,.2);display:grid;gap:14px}.traveler-picker-menu label{display:grid;gap:7px;color:#334764!important;font-size:.78rem!important}.traveler-picker-menu select{height:42px;padding:0 10px;border:1px solid #cdd8e7;border-radius:8px;background:#fff}

.travel-inline {
  display: grid;
  grid-template-columns: 0.55fr 1fr;
  gap: 8px;
  align-items: center;
}

.travel-inline select {
  font-size: 1rem;
  height: 28px;
}

.checkbox-row {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 1rem;
  color: #ffffff;
  padding-bottom: 0;
}

.search-btn {
  border: none;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(7, 124, 255, 0.24), rgba(0, 92, 199, 0.16));
  color: #fff;
  font: inherit;
  font-size: 1rem;
  font-weight: 700;
  padding: 0 20px;
  height: var(--search-field-height);
  margin-left: 0;
  cursor: pointer;
}

.search-btn:hover {
  background: var(--blue-dark);
}
.search-panel .search-btn{background:#1668e3;color:#fff;border:1px solid #2f7cf0;box-shadow:0 8px 20px rgba(4,63,145,.32);transition:background .18s,transform .18s,box-shadow .18s}.search-panel .search-btn:hover{background:#0f55bd;transform:translateY(-1px);box-shadow:0 10px 24px rgba(4,55,126,.4)}.search-panel .search-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}.search-panel .search-btn:active{transform:translateY(0);box-shadow:0 5px 12px rgba(4,55,126,.32)}

.status-text {
  margin: 10px 0 0;
  color: #b9cce8;
  font-size: 0.8rem;
}

.multi-city {
  margin-top: 12px;
}

.multi-city.hidden {
  display: none;
}

.multi-city-rows {
  display: grid;
  gap: 10px;
}

.multi-row {
  display: grid;
  grid-template-columns: 1fr 1fr 0.8fr auto;
  gap: 10px;
  align-items: stretch;
}

.multi-row .search-input {
  background: rgba(255, 255, 255, 0.68);
  border-radius: 10px;
  padding: 9px 12px;
  min-height: 72px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.multi-row input,
.multi-row select {
  font-size: 0.92rem;
}

.multi-row .search-input label {
  font-size: 0.76rem;
}

.multi-bottom-row {
  margin-top: 10px;
  display: flex;
  align-items: stretch;
  gap: 10px;
  flex-wrap: wrap;
}

.remove-row-btn,
.outline-btn {
  border: 1px solid #a6c2ee;
  background: #f0f6ff;
  color: #0c4092;
  border-radius: 999px;
  font: inherit;
  font-size: 0.8rem;
  font-weight: 700;
  padding: 8px 12px;
  cursor: pointer;
}

.checkbox-grid {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(2, minmax(200px, auto));
  gap: 8px 16px;
}

.checkbox-grid .checkbox-row:last-child {
  grid-column: 1 / -1;
}

.checkbox-grid input {
  width: 18px;
  height: 18px;
  border-radius: 6px;
}

.checkbox-grid .checkbox-row span {
  font-size: 1rem;
  line-height: 1;
}

.autocomplete-wrap {
  z-index: 3;
}

.suggestions {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 6px);
  margin: 0;
  padding: 5px;
  list-style: none;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  background: #fff;
  box-shadow: var(--shadow);
  max-height: 240px;
  overflow-y: auto;
  display: none;
}

.suggestions.show {
  display: block;
}

.suggestions li {
  border-radius: 8px;
  padding: 8px;
  cursor: pointer;
}

.suggestions li strong {
  display: block;
  font-size: 0.89rem;
}

.suggestions li span {
  display: block;
  font-size: 0.8rem;
  color: #64728b;
}

.suggestions li:hover,
.suggestions li.active {
  background: #edf3ff;
}

.deals,
.routes,
.search-results {
  margin-top: 28px;
}

.section-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.section-head h2 {
  margin: 0;
  font-size: 1.9rem;
}

.section-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.92rem;
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.card-grid.compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.deal-card,
.route-card {
  background: #fff;
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid #dde4f0;
}

.deal-image,
.route-image {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.deal-body,
.route-body {
  padding: 10px;
}

.deal-title,
.route-title {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 700;
}

.deal-sub,
.route-sub {
  margin: 4px 0 0;
  font-size: 0.8rem;
  color: var(--muted);
}

.score-chip {
  margin-top: 8px;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  font-size: 0.78rem;
}

.score-chip strong {
  background: var(--green);
  color: #fff;
  border-radius: 5px;
  font-size: 0.74rem;
  padding: 2px 5px;
}

.price-line {
  margin-top: 8px;
  font-size: 0.8rem;
  color: var(--muted);
}

.price-line strong {
  font-size: 1.12rem;
  color: #1b2642;
  display: block;
}

.search-results {
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: var(--radius-lg);
  padding: 14px;
}

.results-list {
  margin-top: 10px;
  display: grid;
  gap: 8px;
}

.result-card {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 11px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  background: #fbfdff;
}

.result-main {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.result-main strong {
  font-size: 0.9rem;
}

.result-main span {
  color: #596a87;
  font-size: 0.84rem;
}

.result-price {
  text-align: right;
}

.result-price strong {
  color: #174ea7;
  font-size: 1.1rem;
}

.result-price span {
  font-size: 0.8rem;
  color: #5e6e88;
}

.result-price button {
  margin-top: 6px;
  border: none;
  border-radius: 999px;
  background: #1a66dd;
  color: #fff;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 7px 11px;
  cursor: pointer;
}

.result-price button:hover {
  background: #0f4fb2;
}

.site-footer {
  margin-top: 30px;
  padding: 14px 0;
  border-top: 1px solid #dae2ef;
  color: #5c6a83;
  font-size: 0.85rem;
  background: #f7f9fd;
}

.footer-inner {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.footer-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) repeat(3, minmax(140px, 0.8fr));
  gap: 18px;
}

.footer-grid strong {
  display: inline-block;
  margin-bottom: 8px;
  color: var(--text);
  font-size: 0.95rem;
}

.footer-grid h3 {
  margin: 0 0 8px;
  color: var(--text);
  font-size: 0.84rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.footer-grid p,
.footer-grid a,
.footer-note {
  margin: 0;
  color: #5c6a83;
  font-size: 0.84rem;
  line-height: 1.6;
}

.footer-grid a {
  display: block;
  text-decoration: none;
}

.footer-grid a:hover {
  color: var(--blue);
}
#tripTypeSelect{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
.fare-context{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px}.fare-context span{padding:4px 7px;border-radius:999px;background:#eff6ff;color:#075ee8;font-size:.7rem;font-weight:700}.price-line{display:grid;gap:2px}.price-line small{color:#60708a;font-size:.72rem;font-weight:600}.deal-fine-print{margin:7px 0 10px;color:#68778d;font-size:.7rem;line-height:1.4}
.admin-security-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:24px;align-items:start}
.admin-security-card h2{margin-top:0}
.admin-mfa-setup{display:grid;gap:10px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}
.admin-mfa-setup[hidden]{display:none}
.admin-mfa-setup p{margin:0;color:var(--muted)}
.admin-mfa-setup code{display:block;padding:10px;overflow-wrap:anywhere;border-radius:8px;background:var(--surface);font-size:.9rem}
.admin-mfa-setup label{display:grid;gap:6px;font-weight:700}
.readiness-status{padding:12px 14px;border-left:4px solid #b45309;border-radius:8px;background:#fff7ed;color:#9a3412}
.readiness-status.ready{border-left-color:#15803d;background:#f0fdf4;color:#166534}
@media (max-width:760px){.admin-security-card{grid-template-columns:1fr}}

.admin-revenue-settings{grid-column:1/-1;border-top:1px solid #dbe5f0;padding-top:18px;margin-top:8px}.admin-revenue-settings>h3{margin:14px 0 4px}.admin-revenue-settings>p{color:#5c6d80}.admin-revenue-grid,.admin-addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-addon-grid fieldset{border:1px solid #dbe5f0;border-radius:12px;padding:12px}.admin-addon-grid legend{font-weight:700;padding:0 5px}.admin-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.admin-check input{width:auto!important}.revenue-promo{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(110deg,#071a3b,#075ee8);color:#fff;border-radius:18px;padding:20px 24px;box-shadow:0 16px 40px rgba(7,35,78,.18)}.revenue-promo strong,.revenue-promo span{display:block}.revenue-promo strong{font-size:1.2rem}.revenue-promo span{margin-top:5px;color:#dceaff}.revenue-promo a{background:#fff;color:#075ee8;text-decoration:none;font-weight:800;padding:11px 16px;border-radius:10px;white-space:nowrap}.home-revenue-banner{max-width:1180px;margin:24px auto}.booking-promo{grid-column:1/-1;margin-bottom:18px}
@media(max-width:720px){.admin-revenue-grid,.admin-addon-grid{grid-template-columns:1fr}.revenue-promo{margin-left:16px;margin-right:16px;align-items:flex-start;flex-direction:column}}
.travel-services-showcase{padding-top:34px;padding-bottom:34px}.travel-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.travel-service-card{background:#fff;border:1px solid #dce6f2;border-radius:16px;padding:20px;box-shadow:0 8px 26px rgba(20,44,76,.06)}.service-group-card{display:flex;flex-direction:column;align-items:flex-start}.service-group-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#eff6ff;color:#075ee8}.service-group-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.service-group-card h3{margin:14px 0 6px;color:#102b4e;font-size:1.08rem}.service-group-card>p{margin:0;color:#5b6c80;font-size:.86rem;line-height:1.5}.service-group-card ul{margin:16px 0;padding-left:18px;color:#334764;font-size:.84rem;line-height:1.65}.service-group-card details{width:100%;margin:0 0 14px;padding:10px 0;border-top:1px solid #e5ebf3;border-bottom:1px solid #e5ebf3}.service-group-card summary{cursor:pointer;color:#334764;font-size:.8rem;font-weight:700}.service-group-card details p{margin:9px 0 0;color:#60708a;font-size:.78rem;line-height:1.5}.service-group-card>strong{display:block;margin-top:auto;color:#102b4e;font-size:.8rem}.service-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.service-card-actions a{padding:7px 9px;border-radius:8px;color:#075ee8;background:#eff6ff;font-size:.76rem;font-weight:700;text-decoration:none}.service-card-actions .service-choose-link{color:#fff;background:#075ee8}@media(max-width:900px){.travel-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.travel-services-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.service-group-card{min-width:86%;scroll-snap-align:start}}
.section-kicker{display:block;margin-bottom:7px;color:#075ee8;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.home-editorial,.seasonal-discovery,.home-trust,.home-faq{padding-top:48px;padding-bottom:20px}.home-editorial .section-head>a{color:#075ee8;font-weight:700;text-decoration:none}.editorial-grid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:repeat(2,210px);gap:14px}.editorial-grid a{text-decoration:none;color:inherit}.editorial-feature{position:relative;grid-row:1/3;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border-radius:20px;padding:30px;color:#fff!important;isolation:isolate}.editorial-feature:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(5,18,40,.9),rgba(5,18,40,.05) 75%)}.editorial-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .35s}.editorial-feature:hover img{transform:scale(1.03)}.editorial-feature span,.editorial-small span{font-size:.73rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.editorial-feature h3{margin:8px 0;font-size:clamp(1.8rem,3vw,3rem);max-width:620px}.editorial-feature p{max-width:560px;line-height:1.55;color:#e2e8f0}.editorial-small{display:grid;grid-template-columns:45% 1fr;overflow:hidden;border:1px solid #dbe3ef;border-radius:16px;background:#fff}.editorial-small img{width:100%;height:100%;object-fit:cover}.editorial-small div{display:flex;flex-direction:column;justify-content:center;padding:18px}.editorial-small span{color:#075ee8}.editorial-small h3{margin:6px 0 16px;font-size:1.4rem}.editorial-small b{color:#075ee8;font-size:.85rem}.recent-search{margin-top:24px;padding:18px 22px;border:1px solid #bfdbfe;border-radius:14px;background:#eff6ff;display:flex;align-items:center;justify-content:space-between;gap:18px}.recent-search span{color:#075ee8;font-size:.72rem;font-weight:800;text-transform:uppercase}.recent-search h2{margin:3px 0;font-size:1.2rem}.recent-search p{margin:0;color:#526179}.recent-search a{text-decoration:none;white-space:nowrap}.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.collection-grid>a{display:flex;gap:14px;padding:22px;border:1px solid #dbe3ef;border-radius:16px;background:#fff;color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}.collection-grid>a:hover{transform:translateY(-2px);border-color:#93b8ed}.collection-grid>a>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:#eff6ff;color:#075ee8;font-weight:800}.collection-grid h3{margin:0 0 7px}.collection-grid p{margin:0;color:#60708a;line-height:1.5;font-size:.88rem}.home-alert-cta{margin-top:50px;margin-bottom:20px;padding:34px 38px;border-radius:20px;background:#0d2344;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.home-alert-cta h2{margin:7px 0;font-size:clamp(1.7rem,3vw,2.5rem)}.home-alert-cta p{margin:0;max-width:690px;color:#c8d5e8;line-height:1.6}.home-alert-cta a{white-space:nowrap;text-decoration:none}.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.trust-grid article{padding:20px;border-top:3px solid #075ee8;background:#fff}.trust-grid article>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eff6ff;color:#075ee8;font-weight:800}.trust-grid h3{margin:14px 0 7px}.trust-grid p{margin:0;color:#60708a;line-height:1.55;font-size:.88rem}.home-faq{display:grid;grid-template-columns:300px minmax(0,1fr);gap:50px;align-items:start;padding-bottom:64px}.home-faq h2{margin:6px 0;font-size:2rem}.home-faq>div>p{color:#60708a}.home-faq .faq-list{width:100%}
@media(max-width:900px){.editorial-grid{grid-template-columns:1fr;grid-template-rows:420px repeat(2,180px)}.editorial-feature{grid-row:auto}.collection-grid,.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-faq{grid-template-columns:1fr;gap:20px}.home-alert-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.home-editorial,.seasonal-discovery,.home-trust,.home-faq{padding-top:34px}.editorial-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.editorial-grid>a{min-width:86%;height:330px;scroll-snap-align:start}.editorial-small{display:flex;flex-direction:column}.editorial-small img{height:58%}.collection-grid,.trust-grid{grid-template-columns:1fr}.recent-search{align-items:flex-start;flex-direction:column}.home-alert-cta{padding:26px 22px}.home-alert-cta a{width:100%;text-align:center}}
@media(max-width:560px){body{font-size:16px}.container{width:min(100% - 28px,1240px)}.header-inner{height:74px}.brand,.brand-logo{width:172px}.search-panel h1{font-size:1.85rem;line-height:1.05}.section-head h2,.home-faq h2{font-size:1.75rem;line-height:1.12}.section-head p,.home-faq>div>p{font-size:.95rem;line-height:1.55}.deals,.routes{padding-top:38px;padding-bottom:18px}.deals .card-grid,.routes .card-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:2px 2px 12px;scrollbar-width:none}.deals .card-grid::-webkit-scrollbar,.routes .card-grid::-webkit-scrollbar,.editorial-grid::-webkit-scrollbar,.travel-services-grid::-webkit-scrollbar,.collection-grid::-webkit-scrollbar,.trust-grid::-webkit-scrollbar{display:none}.deals .deal-card,.routes .route-card{flex:0 0 84%;min-width:0;scroll-snap-align:start}.deal-image,.route-image{height:190px}.collection-grid,.trust-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;scrollbar-width:none}.collection-grid>a,.trust-grid article{flex:0 0 84%;scroll-snap-align:start;min-width:0}.trust-grid article{min-height:190px}.travel-services-showcase .section-head{margin-bottom:18px}.service-group-card{min-width:84%}.home-alert-cta{margin-top:36px}.home-faq{padding-bottom:44px}.faq-list details{padding:17px}.footer-inner{padding-top:34px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid h3{font-size:.84rem}.footer-grid p,.footer-grid a{font-size:.83rem;line-height:1.55}.footer-grid a{min-height:30px;display:flex;align-items:center}.footer-payments{margin-top:26px}.payment-badges{gap:6px}.payment-logo{min-width:48px}.site-footer .footer-note{margin-top:18px}}

.footer-payments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
  padding-top: 10px;
  border-top: 1px solid #e1e8f3;
}

.footer-payments p {
  margin: 0;
  color: #4d5c73;
  font-size: 0.84rem;
  line-height: 1.5;
}

.payment-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.payment-logo {
  width: 64px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 8px;
  border-radius: 6px;
  border: 1px solid #d7dfec;
  background: #fff;
  box-shadow: 0 3px 10px rgba(20, 32, 55, 0.06);
}

.payment-logo img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.footer-note {
  padding-top: 8px;
  border-top: 1px solid #e1e8f3;
}

.booking-modal {
  position: fixed;
  inset: 0;
  background: rgba(8, 16, 31, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  z-index: 100;
}

.booking-modal-card {
  width: min(560px, 100%);
  background: #fff;
  border-radius: 16px;
  border: 1px solid #dce4f0;
  box-shadow: 0 24px 45px rgba(20, 32, 55, 0.25);
  padding: 16px;
}

.booking-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.booking-modal-head h3 {
  margin: 0;
  font-size: 1.12rem;
}

.close-modal-btn {
  border: 1px solid #d4dfec;
  border-radius: 8px;
  background: #f7fafe;
  color: #324564;
  width: 34px;
  height: 34px;
  cursor: pointer;
}

.booking-form {
  display: grid;
  gap: 10px;
}

.booking-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.booking-grid label {
  display: grid;
  gap: 5px;
  font-size: 0.82rem;
  color: #33435f;
  font-weight: 700;
}

.booking-grid input {
  border: 1px solid #d2dced;
  border-radius: 10px;
  padding: 10px;
  font-size: 0.95rem;
  background: #fff;
}

.booking-wide {
  grid-column: 1 / -1;
}

.booking-status {
  margin: 0;
  min-height: 18px;
  font-size: 0.82rem;
  color: #2d4e7a;
}

.booking-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.booking-actions .search-btn {
  height: 40px;
  padding: 0 14px;
  margin-left: 0;
}

.search-loader {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at 20% 20%, rgba(40, 95, 184, 0.52), rgba(7, 21, 46, 0.88));
  backdrop-filter: blur(4px);
  padding: 20px;
}

.search-loader-card {
  width: min(680px, 100%);
  background: linear-gradient(180deg, rgba(11, 36, 73, 0.94), rgba(9, 29, 58, 0.97));
  border: 1px solid rgba(181, 204, 239, 0.34);
  border-radius: 20px;
  box-shadow: 0 28px 50px rgba(7, 14, 29, 0.5);
  padding: 28px 26px;
  color: #eff5ff;
}

.search-loader-card h3 {
  margin: 18px 0 4px;
  font-size: clamp(1.2rem, 2.5vw, 1.7rem);
}

.search-loader-text {
  margin: 0;
  min-height: 26px;
  font-size: 0.98rem;
  color: #d7e8ff;
}

.search-loader-hint {
  margin: 10px 0 0;
  font-size: 0.83rem;
  color: #9fc1ef;
  letter-spacing: 0.01em;
}

.flight-loader-scene {
  position: relative;
  height: 160px;
  border: 1px solid rgba(157, 187, 231, 0.32);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(72, 132, 225, 0.22), rgba(19, 52, 97, 0.32));
  overflow: hidden;
}

.loader-cloud {
  position: absolute;
  height: 22px;
  border-radius: 999px;
  background: rgba(229, 240, 255, 0.72);
  filter: blur(0.2px);
  animation: cloudDrift 11s linear infinite;
}

.loader-cloud::before,
.loader-cloud::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: inherit;
}

.loader-cloud::before {
  width: 24px;
  height: 24px;
  left: 8px;
  top: -10px;
}

.loader-cloud::after {
  width: 30px;
  height: 30px;
  right: 9px;
  top: -14px;
}

.loader-cloud-a {
  width: 80px;
  top: 26px;
  left: -100px;
}

.loader-cloud-b {
  width: 120px;
  top: 74px;
  left: -170px;
  animation-duration: 14s;
  animation-delay: -2s;
}

.loader-cloud-c {
  width: 92px;
  top: 116px;
  left: -130px;
  animation-duration: 12.5s;
  animation-delay: -4s;
}

.loader-flight-path {
  position: absolute;
  left: 12%;
  right: 12%;
  top: 50%;
  height: 0;
  border-top: 2px dashed rgba(180, 206, 243, 0.5);
}

.loader-plane {
  position: absolute;
  left: -34px;
  top: 50%;
  font-size: 1.6rem;
  line-height: 1;
  transform: translateY(-50%) rotate(9deg);
  filter: drop-shadow(0 6px 9px rgba(0, 0, 0, 0.28));
  animation: planeFly 4.8s ease-in-out infinite;
}

@keyframes planeFly {
  0% {
    left: -34px;
    top: 56%;
    transform: translateY(-50%) rotate(11deg);
  }
  45% {
    top: 42%;
  }
  100% {
    left: calc(100% + 20px);
    top: 56%;
    transform: translateY(-50%) rotate(4deg);
  }
}

@keyframes cloudDrift {
  0% {
    transform: translateX(0);
    opacity: 0;
  }
  10% {
    opacity: 0.9;
  }
  90% {
    opacity: 0.9;
  }
  100% {
    transform: translateX(calc(100vw + 260px));
    opacity: 0;
  }
}

.secondary-page {
  padding: 48px 0 72px;
}

.secondary-hero {
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(236, 243, 253, 0.92));
  border: 1px solid #dde6f2;
  border-radius: 20px;
  padding: 40px;
  box-shadow: var(--shadow);
}

.secondary-hero .eyebrow {
  margin: 0;
  color: var(--blue-dark);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.78rem;
  font-weight: 800;
}

.secondary-hero h1 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1.02;
}

.secondary-hero p:last-child {
  margin: 0;
  max-width: 760px;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.6;
}

.secondary-section {
  margin-top: 22px;
  background: #ffffff;
  border: 1px solid #dde5f1;
  border-radius: 16px;
  padding: 22px;
}

.section-title h2 {
  margin: 0;
  font-size: 1.35rem;
}

.section-title p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 0.92rem;
}

.info-grid {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.info-grid.two-col {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.info-card {
  border: 1px solid #e1e8f3;
  border-radius: 12px;
  padding: 14px;
  background: #f9fbff;
}

.info-card h3 {
  margin: 0 0 6px;
  font-size: 0.98rem;
}

.info-card p {
  margin: 0;
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.5;
}

.checklist,
.faq-list,
.simple-list {
  margin: 10px 0 0;
  padding-left: 18px;
  color: #34435d;
}

.checklist li,
.faq-list li,
.simple-list li {
  margin-bottom: 7px;
  line-height: 1.5;
}

.mini-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 12px;
}

.mini-table th,
.mini-table td {
  text-align: left;
  padding: 9px;
  border-bottom: 1px solid #e1e7f2;
  font-size: 0.86rem;
}

.mini-table th {
  color: #20314e;
  font-weight: 700;
}

.results-page {
  padding: 24px 0 38px;
}

.results-headline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.results-headline h1 {
  margin: 0;
  font-size: 1.85rem;
}

.results-headline p {
  margin: 4px 0 0;
  color: #5b6b85;
  font-size: 0.94rem;
}

.results-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 14px;
  align-items: start;
}

.results-filters {
  border: 1px solid #dbe3ef;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
  position: sticky;
  top: 14px;
}

.filter-block + .filter-block {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #e6edf7;
}

.filter-block h2 {
  margin: 0 0 8px;
  font-size: 1.05rem;
}

.filter-radio,
.filter-check {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 0.92rem;
  color: #334764;
  margin-bottom: 8px;
}

.filter-radio input,
.filter-check input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #1b65d6;
}

.filter-radio {
  justify-content: flex-start;
  gap: 9px;
}

.filter-check span {
  flex: 1;
}

.filter-check strong {
  font-size: 0.85rem;
  color: #60708a;
}

.results-content {
  border: 1px solid #dbe3ef;
  border-radius: 14px;
  background: #fff;
  padding: 12px;
}

.results-sort-tabs {
  border: 1px solid #dfe6f2;
  border-radius: 10px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  overflow: hidden;
  margin-bottom: 10px;
}

.sort-tab {
  border: none;
  background: #f5f8fd;
  color: #364962;
  font: inherit;
  font-size: 1.01rem;
  font-weight: 700;
  padding: 12px 10px;
  cursor: pointer;
}

.sort-tab.active {
  background: #fff;
  color: #1c62ce;
  box-shadow: inset 0 -3px 0 #1c62ce;
}

.results-meta {
  margin: 0 0 10px;
  font-size: 0.9rem;
  color: #5f6f88;
}

.detailed-results {
  display: grid;
  gap: 10px;
}

.detailed-card {
  border: 1px solid #dbe5f2;
  border-radius: 12px;
  background: #fcfdff;
  padding: 10px;
}

.detailed-badges {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

.badge {
  border-radius: 6px;
  background: #eaf3ff;
  color: #1d5dc0;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 4px 7px;
}

.badge-primary {
  background: #dcf4e7;
  color: #177441;
}

.detailed-grid {
  display: grid;
  grid-template-columns: 1fr 220px;
  gap: 10px;
  align-items: center;
}

.flight-brand {
  font-size: 1rem;
  font-weight: 800;
  margin-bottom: 6px;
}

.flight-time-row {
  display: grid;
  grid-template-columns: minmax(74px, auto) 1fr minmax(74px, auto);
  gap: 9px;
  align-items: center;
}

.flight-time-row strong {
  display: block;
  font-size: 1.58rem;
  line-height: 1;
}

.flight-time-row span {
  color: #61718b;
  font-size: 0.84rem;
}

.flight-mid {
  text-align: center;
  position: relative;
}

.flight-mid::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 12px;
  right: 12px;
  border-top: 1px solid #cad7ea;
}

.flight-mid span,
.flight-mid em {
  position: relative;
  z-index: 1;
  display: inline-block;
  background: #fcfdff;
  padding: 0 7px;
}

.flight-mid em {
  color: #1a7f45;
  font-style: normal;
  font-weight: 700;
}

.flight-route {
  margin-top: 6px;
  color: #586984;
  font-size: 0.84rem;
}

.flight-price-col {
  border-left: 1px solid #e2e9f4;
  padding-left: 10px;
  display: grid;
  justify-items: end;
  gap: 7px;
}

.flight-price-col strong {
  font-size: 1.66rem;
  color: #192741;
}

.details-btn,
.book-btn {
  border-radius: 9px;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 700;
  padding: 10px 12px;
  min-width: 170px;
  cursor: pointer;
}

.details-btn {
  border: 1px solid #2675e8;
  background: #fff;
  color: #2065ca;
}

.book-btn {
  border: none;
  background: linear-gradient(135deg, #1f69d9, #0f4fb2);
  color: #fff;
}

.details-panel {
  margin-top: 9px;
  border-top: 1px dashed #d6e1f0;
  padding-top: 9px;
}

.details-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.details-grid div {
  border: 1px solid #e1e9f4;
  border-radius: 9px;
  background: #fff;
  padding: 8px;
  display: grid;
  gap: 3px;
}

.details-grid span {
  font-size: 0.73rem;
  color: #61728c;
}

.details-grid strong {
  font-size: 0.86rem;
  color: #253a58;
}

.details-grid .details-wide {
  grid-column: 1 / -1;
}

.segment-block {
  margin-top: 9px;
}

.segment-block h4 {
  margin: 0 0 6px;
  color: #304763;
  font-size: 0.9rem;
}

.segment-row {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 8px;
  border: 1px solid #e3eaf5;
  border-radius: 8px;
  background: #fff;
  padding: 7px;
  color: #465a77;
  font-size: 0.83rem;
  margin-bottom: 5px;
}

.segment-row span:last-child {
  font-weight: 700;
  color: #223755;
}

.no-results {
  border: 1px dashed #cad7ea;
  border-radius: 10px;
  background: #f8fbff;
  padding: 18px;
  color: #51627d;
}

.flight-details-modal {
  position: fixed;
  inset: 0;
  z-index: 130;
  background: rgba(10, 18, 33, 0.52);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
}

.flight-details-card {
  width: min(900px, 100%);
  max-height: min(92vh, 860px);
  overflow: auto;
  background: #fff;
  border-radius: 16px;
  border: 1px solid #d8e1ef;
  box-shadow: 0 26px 52px rgba(8, 20, 38, 0.35);
}

.flight-details-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 18px 20px 8px;
}

.flight-details-head h3 {
  margin: 0;
  font-size: 2rem;
  line-height: 1.05;
}

.share-flight-btn {
  margin-top: 10px;
  border: none;
  background: transparent;
  color: #1c63cf;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 600;
  padding: 0;
  cursor: pointer;
}

.flight-details-body {
  padding: 6px 20px 0;
}

.flight-leg-block {
  padding: 8px 0 10px;
  border-bottom: 1px solid #e3e9f4;
}

.flight-leg-block h4 {
  margin: 0 0 8px;
  font-size: 1.35rem;
}

.flight-leg-list {
  display: grid;
  gap: 7px;
}

.flight-leg-item {
  display: grid;
  grid-template-columns: minmax(110px, 160px) 1fr auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #e4ebf6;
  border-radius: 10px;
  background: #fbfdff;
  padding: 10px;
}

.flight-leg-time {
  font-size: 0.83rem;
  color: #4f607a;
}

.flight-leg-route strong {
  display: block;
  color: #20324f;
  font-size: 0.96rem;
}

.flight-leg-route span {
  display: block;
  margin-top: 2px;
  color: #61728c;
  font-size: 0.8rem;
}

.flight-leg-meta {
  text-align: right;
}

.flight-leg-meta strong {
  display: block;
  color: #1e3455;
  font-size: 0.9rem;
}

.flight-leg-meta span {
  display: block;
  color: #5f7190;
  font-size: 0.78rem;
}

.details-info-row {
  padding: 12px 0;
  border-bottom: 1px solid #e3e9f4;
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 12px;
}

.details-info-row h5 {
  margin: 0;
  font-size: 1.02rem;
}

.details-muted {
  margin: 0;
  color: #52647f;
  font-size: 0.9rem;
}

.details-items {
  margin-top: 8px;
  display: grid;
  gap: 6px;
}

.details-items p {
  margin: 0;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: #2f4566;
  font-size: 0.9rem;
}

.details-items b {
  color: #16733f;
}

.flight-details-foot {
  padding: 16px 20px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.flight-details-foot strong {
  font-size: 2rem;
  color: #1a2a45;
}

.flight-details-foot .search-btn {
  margin-left: 0;
  min-width: 150px;
}

.checkout-topbar {
  background: #0d4aa0;
  color: #fff;
}

.checkout-topbar-inner {
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.checkout-brand {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 210px;
  min-height: 58px;
  padding: 0;
  text-decoration: none;
}
.results-layout.no-inventory{grid-template-columns:1fr}.results-layout.no-inventory .results-filters,.results-layout.no-inventory .results-sort-tabs{display:none}.no-results-recovery{display:grid;gap:20px}.no-results-intro{padding:28px;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#f8fbff);border:1px solid #bfdbfe}.no-results-intro>span{color:#075ee8;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.no-results-intro h2{margin:8px 0;font-size:clamp(1.6rem,3vw,2.35rem);letter-spacing:-.035em}.no-results-intro p,.recovery-block p,.recovery-grid p{color:#5b6b85;line-height:1.6}.no-results-primary{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.no-results-primary a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.recovery-block{padding:20px;border:1px solid #dbe3ef;border-radius:14px}.recovery-block h3,.recovery-grid h3{margin:0 0 6px}.date-recovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.date-recovery a{display:grid;gap:4px;padding:14px;border:1px solid #cddbf0;border-radius:10px;text-decoration:none;color:#17233b;background:#fff}.date-recovery a:hover{border-color:#075ee8}.date-recovery span{font-size:.82rem;color:#60708a}.recovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.recovery-grid article{padding:20px;border:1px solid #dbe3ef;border-radius:14px;background:#fff}.recovery-grid a{color:#075ee8;font-weight:700;text-decoration:none}.alternative-links{display:flex;flex-wrap:wrap;gap:8px}.alternative-links a{padding:7px 10px;border-radius:999px;background:#eff6ff}.filter-empty{text-align:center;padding:34px;border:1px dashed #cad7ea;border-radius:12px;background:#f8fbff}.filter-empty h3{margin:0}.filter-empty p{color:#5b6b85}
@media(max-width:760px){.recovery-grid{grid-template-columns:1fr}.date-recovery{grid-template-columns:1fr}.no-results-intro{padding:22px 18px}.no-results-primary a{width:100%}}

.checkout-brand-logo {
  display: block;
  width: 100%;
  max-height: 46px;
  object-fit: contain;
}

.checkout-link {
  color: #fff;
  font-size: 0.92rem;
  font-weight: 700;
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: 8px;
  padding: 8px 11px;
}

.checkout-page {
  padding: 20px 0 40px;
}

.checkout-steps {
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
}

.checkout-steps li {
  border: 1px solid #d8e1ef;
  border-radius: 999px;
  background: #f3f7fd;
  color: #4e607e;
  text-align: center;
  font-size: 0.86rem;
  font-weight: 700;
  padding: 8px 9px;
}

.checkout-steps li.active {
  background: #e7f0ff;
  border-color: #1c63cf;
  color: #164f9e;
}

.checkout-steps li.done {
  background: #e7f8ee;
  border-color: #37a163;
  color: #1e7343;
}

.checkout-layout {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 20px;
  align-items: start;
}

.checkout-main {
  border: 1px solid #dbe3ef;
  border-radius: 14px;
  background: #fff;
  padding: 20px;
}

.checkout-summary-line {
  margin: 0;
  color: #5a6c88;
  font-size: 0.88rem;
}

.checkout-route-title {
  margin: 8px 0 14px;
  font-size: 2.2rem;
  line-height: 1.05;
}

.checkout-section h2,
.checkout-form h2 {
  margin: 0;
  font-size: 1.95rem;
}

.checkout-sub {
  margin: 6px 0 0;
  color: #5d6f89;
}

.traveler-card {
  margin-top: 12px;
  border: 1px solid #dee6f2;
  border-radius: 12px;
  background: #fcfdff;
  padding: 12px;
}

.traveler-card h3 {
  margin: 0;
  font-size: 1.3rem;
}

.traveler-sub {
  margin: 4px 0 0;
  color: #5d6e89;
  font-size: 0.87rem;
}

.traveler-baggage {
  margin-top: 14px;
  display: grid;
  gap: 8px;
  border: 1px solid #dce7f5;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  padding: 10px;
}

.baggage-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 2px 2px 8px;
  border-bottom: 1px solid #e3ebf6;
}

.baggage-head div {
  display: grid;
  gap: 2px;
}

.baggage-head strong {
  color: #1d2d44;
  font-size: 0.95rem;
}

.baggage-head span {
  color: #63758e;
  font-size: 0.8rem;
}

.baggage-count,
.included-pill {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #e7f8ee;
  color: #1e7343;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1;
}

.baggage-count {
  padding: 7px 9px;
}

.baggage-option {
  margin: 0;
  border: 1px solid #e2eaf5;
  border-radius: 10px;
  background: #fff;
  padding: 10px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.baggage-option div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.baggage-option strong {
  color: #24364f;
  font-size: 0.9rem;
}

.baggage-option small {
  color: #667890;
  font-size: 0.78rem;
  line-height: 1.35;
}

.baggage-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #eaf2ff;
  color: #1b5fb8;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0;
}

.baggage-icon.checked {
  background: #fff3e3;
  color: #9b5300;
}

.included-pill {
  padding: 7px 9px;
  text-align: center;
}

.checkout-form {
  margin-top: 16px;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  background: #f9fbff;
  padding: 14px;
  display: grid;
  gap: 10px;
}

.checkout-required {
  margin: 0;
  color: #8f2b2b;
  font-size: 0.8rem;
}

.checkout-form label {
  display: grid;
  gap: 4px;
}

.checkout-form span {
  color: #304560;
  font-size: 0.84rem;
  font-weight: 700;
}

.checkout-form input,
.checkout-form select {
  border: 1px solid #ccd9ec;
  border-radius: 9px;
  background: #fff;
  padding: 10px;
  font-size: 0.95rem;
}

.phone-row {
  display: grid;
  grid-template-columns: minmax(210px, 0.75fr) 1fr;
  gap: 8px;
}

.checkout-status {
  margin: 2px 0 0;
  min-height: 20px;
  color: #27446c;
  font-size: 0.84rem;
}

.checkout-actions {
  margin-top: 12px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding-top: 12px;
  border-top: 1px solid #e2eaf5;
}

.checkout-actions .outline-btn,
.checkout-actions .search-btn {
  min-width: 150px;
  height: 46px;
  border-radius: 999px;
  padding: 0 22px;
  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1;
}

.checkout-actions .search-btn {
  margin-left: 0;
  border: 1px solid #0f56bc;
  background: #155cc6;
  color: #fff;
  box-shadow: 0 8px 18px rgba(21, 92, 198, 0.24);
}

.checkout-actions .search-btn:hover {
  background: #0f4fab;
}

.checkout-actions .outline-btn {
  border-color: #9dbdf0;
  background: #fff;
  color: #104f9e;
}

.choice-list {
  margin-top: 12px;
  display: grid;
  gap: 10px;
}

.choice-card {
  border: 1px solid #d9e2f0;
  border-radius: 10px;
  background: #fbfdff;
  padding: 14px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: start;
  cursor: pointer;
}

.choice-card input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #1b65d7;
}

.choice-card div strong {
  display: block;
  color: #213451;
  font-size: 0.95rem;
}

.choice-card div p {
  margin: 4px 0 0;
  color: #5f7190;
  font-size: 0.84rem;
  line-height: 1.45;
}

.choice-details {
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  gap: 6px;
  list-style: none;
}

.choice-details li {
  position: relative;
  padding-left: 16px;
  color: #4d607b;
  font-size: 0.82rem;
  line-height: 1.4;
}

.choice-details li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.52em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #1d65d0;
}

.choice-card > span {
  align-self: start;
  border-radius: 999px;
  background: #e9f2ff;
  padding: 7px 10px;
  color: #2065ca;
  font-size: 0.84rem;
  font-weight: 800;
  white-space: nowrap;
}

.choice-card.active {
  border-color: #1d65d0;
  background: #f2f7ff;
}

.extras-card.active {
  background: #f4f9ff;
  box-shadow: 0 10px 22px rgba(29, 101, 208, 0.1);
}

.extras-card input[type="checkbox"] {
  margin-top: 2px;
}

.seat-map {
  width: min(560px, 100%);
  margin-top: 14px;
  border: 1px solid #d5e1f0;
  border-radius: 18px 18px 14px 14px;
  background: #f8fbff;
  overflow: hidden;
}

.aircraft-nose {
  min-height: 82px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 14px 16px 12px;
  background:
    radial-gradient(120% 110% at 50% -30%, #d7e9ff 0 46%, transparent 47%),
    linear-gradient(180deg, #eef6ff 0%, #f8fbff 100%);
  border-bottom: 1px solid #dce7f5;
}

.aircraft-nose span {
  border-radius: 999px;
  background: #fff;
  border: 1px solid #cfe0f4;
  color: #295079;
  padding: 7px 12px;
  font-size: 0.8rem;
  font-weight: 800;
}

.seat-cabin {
  width: min(430px, calc(100% - 28px));
  margin: 0 auto;
  padding: 14px 0 16px;
}

.seat-columns,
.seat-grid {
  display: grid;
  grid-template-columns: 26px repeat(3, minmax(38px, 1fr)) 24px repeat(3, minmax(38px, 1fr));
  gap: 8px;
  align-items: center;
}

.seat-columns {
  margin-bottom: 8px;
  color: #64758b;
  font-size: 0.72rem;
  font-weight: 900;
  text-align: center;
}

.seat-row-label {
  color: #63758e;
  font-size: 0.78rem;
  font-weight: 900;
  text-align: center;
}

.seat-aisle {
  height: 2px;
  border-radius: 999px;
  background: #dce6f3;
}

.seat-btn {
  min-width: 0;
  height: 40px;
  border: 1px solid #bfd0e5;
  border-radius: 10px 10px 7px 7px;
  background: #fff;
  color: #2d4465;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 900;
  box-shadow: inset 0 -4px 0 rgba(20, 50, 86, 0.08);
  cursor: pointer;
}

.seat-btn:hover:not(:disabled) {
  border-color: #1d65d0;
  color: #164f9e;
}

.seat-btn.active {
  background: #1b65d7;
  color: #fff;
  border-color: #1b65d7;
  box-shadow: 0 8px 16px rgba(27, 101, 215, 0.28), inset 0 -4px 0 rgba(0, 0, 0, 0.1);
}

.seat-btn.unavailable,
.seat-btn:disabled {
  background: #e7edf6;
  color: #95a2b4;
  border-color: #d5deea;
  box-shadow: inset 0 -4px 0 rgba(101, 116, 139, 0.08);
  cursor: not-allowed;
}

.seat-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  padding: 12px;
  border-top: 1px solid #dce7f5;
  background: #fff;
  color: #53667f;
  font-size: 0.78rem;
  font-weight: 700;
}

.seat-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.legend-seat {
  width: 16px;
  height: 16px;
  border-radius: 5px 5px 3px 3px;
  border: 1px solid #bfd0e5;
  background: #fff;
}

.legend-seat.selected {
  background: #1b65d7;
  border-color: #1b65d7;
}

.legend-seat.unavailable {
  background: #e7edf6;
  border-color: #d5deea;
}

.seat-status {
  margin-top: 10px;
  font-weight: 800;
}

.review-card {
  margin-top: 12px;
  border: 1px solid #d8e3f1;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 14px;
}

.review-card p {
  margin: 0;
  color: #355076;
  font-size: 0.9rem;
}

.review-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-radius: 12px;
  background: #f2f7ff;
  border: 1px solid #d8e6fb;
  padding: 14px;
}

.review-hero div {
  display: grid;
  gap: 4px;
}

.review-hero span,
.review-payment-note span {
  color: #62748c;
  font-size: 0.82rem;
  font-weight: 700;
}

.review-hero strong {
  color: #15243a;
  font-size: 1.25rem;
}

.review-hero em {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #155cc6;
  color: #fff;
  padding: 8px 12px;
  font-style: normal;
  font-size: 0.95rem;
  font-weight: 900;
}

.review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.review-section {
  border: 1px solid #e1eaf6;
  border-radius: 12px;
  background: #fbfdff;
  padding: 12px;
}

.review-section h3 {
  margin: 0 0 10px;
  color: #1f314d;
  font-size: 0.92rem;
}

.review-section p {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 10px;
  padding: 8px 0;
  border-top: 1px solid #e6edf7;
}

.review-section p:first-of-type {
  border-top: 0;
  padding-top: 0;
}

.review-section p:last-child {
  padding-bottom: 0;
}

.review-section span {
  color: #697b93;
  font-size: 0.8rem;
  font-weight: 700;
}

.review-section strong {
  min-width: 0;
  color: #24364f;
  font-size: 0.86rem;
  overflow-wrap: anywhere;
}

.review-payment-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-radius: 12px;
  background: #f7fbff;
  border: 1px solid #dce7f5;
  padding: 12px;
}

.review-payment-note strong {
  color: #173b78;
  font-size: 0.96rem;
}

.price-breakdown {
  margin-top: 8px;
  display: grid;
  gap: 5px;
}

.checkout-sidebar {
  border: 1px solid #dbe3ef;
  border-radius: 14px;
  background: #fff;
  padding: 16px;
  position: sticky;
  top: 12px;
}

.checkout-sidebar h2 {
  margin: 0 0 8px;
  font-size: 1.5rem;
}

.payment-layout {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 20px;
  align-items: start;
}

.payment-form {
  margin-top: 16px;
}

.payment-form-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid #e2eaf5;
}

.payment-form-head h2 {
  margin: 0;
  font-size: 1.35rem;
}

.payment-form-head p {
  margin: 4px 0 0;
  color: #62748c;
  font-size: 0.84rem;
}

.payment-mini-logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  max-width: 190px;
}

.payment-mini-logos img {
  width: 42px;
  height: 24px;
  object-fit: contain;
  border: 1px solid #d7dfec;
  border-radius: 5px;
  background: #fff;
  padding: 4px;
}

.payment-actions {
  margin-top: 6px;
}

.payment-row {
  display: grid;
  grid-template-columns: 1fr 0.75fr;
  gap: 10px;
}

.payment-back-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.demo-booking-card {
  width: min(640px, 100%);
  margin: 34px auto 0;
  border: 1px solid #dbe3ef;
  border-radius: 16px;
  background: #fff;
  padding: 30px;
  text-align: center;
  box-shadow: 0 14px 28px rgba(17, 29, 57, 0.08);
}

.demo-booking-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff3e3;
  color: #9b5300;
  font-size: 1.5rem;
  font-weight: 900;
}

.demo-booking-card h1 {
  margin: 0;
  color: #16243a;
  font-size: 2rem;
}

.demo-booking-card p {
  margin: 10px 0 20px;
  color: #5d6f89;
  font-size: 1rem;
}

.demo-booking-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  margin-left: 0;
  text-decoration: none;
}

.price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 8px;
  color: #364b67;
}

.price-row strong {
  font-size: 1.15rem;
  color: #1a2d4c;
}

.price-row.total {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e0e8f4;
}

.price-row.total strong {
  font-size: 1.7rem;
}

.price-note {
  margin: 9px 0 0;
  color: #5b6d87;
  font-size: 0.85rem;
}

.assist-box {
  margin-top: 12px;
  border: 1px solid #cfe0fb;
  border-radius: 9px;
  background: #eff5ff;
  padding: 10px;
}

.assist-box strong {
  color: #23549f;
  font-size: 0.87rem;
}

.assist-box p {
  margin: 5px 0 0;
  color: #35537f;
  font-size: 0.83rem;
  line-height: 1.4;
}

.footer-support {
  margin: 4px 0 0;
  color: #6b7d96;
  font-size: 0.83rem;
}

.admin-page {
  padding: 22px 0 44px;
}

.admin-head h1 {
  margin: 0;
  font-size: clamp(1.9rem, 4vw, 2.6rem);
}

.admin-head p {
  margin: 6px 0 0;
  color: #5b6c87;
}

.admin-grid {
  margin-top: 14px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.admin-card {
  border: 1px solid #dbe3ef;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.admin-card h2 {
  margin: 0;
  font-size: 1.3rem;
}

.admin-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.admin-form {
  margin-top: 10px;
  display: grid;
  gap: 10px;
}

.admin-form label {
  display: grid;
  gap: 5px;
}

.admin-form span {
  color: #304560;
  font-size: 0.84rem;
  font-weight: 700;
}

.admin-form input {
  border: 1px solid #ccd9ec;
  border-radius: 9px;
  background: #fff;
  padding: 10px;
  font-size: 0.95rem;
}

.admin-actions {
  display: flex;
  justify-content: flex-start;
}

.admin-actions .search-btn {
  margin-left: 0;
}

.admin-status {
  margin: 8px 0 0;
  min-height: 18px;
  color: #2a466f;
  font-size: 0.85rem;
}

.admin-table-wrap {
  margin-top: 10px;
  overflow: auto;
}

.admin-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 900px;
}

.admin-table th,
.admin-table td {
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #e1e8f3;
  font-size: 0.86rem;
  color: #2f4463;
}

.admin-table th {
  color: #1f334f;
  background: #f6f9ff;
  font-weight: 800;
}

@media (max-width: 1150px) {
  .fields-grid {
    grid-template-columns: 1fr auto 1fr 1fr;
    gap: 10px;
  }

  #returnWrap {
    grid-column: auto;
  }

  .search-input.card {
    border-right: 0;
    border-radius: 10px;
  }

  .search-btn {
    height: 52px;
    font-size: 0.95rem;
    margin-left: 0;
  }

  .travel-inline select,
  input,
  select {
    font-size: 0.95rem;
  }

  .checkbox-grid .checkbox-row span,
  .checkbox-row {
    font-size: 0.92rem;
  }

  .card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .card-grid.compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .info-grid,
  .info-grid.two-col {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .results-layout {
    grid-template-columns: 240px 1fr;
  }

  .detailed-grid {
    grid-template-columns: 1fr 195px;
  }

  .flight-time-row strong {
    font-size: 1.36rem;
  }

  .details-btn,
  .book-btn {
    min-width: 145px;
    font-size: 0.84rem;
  }

  .flight-details-head h3 {
    font-size: 1.65rem;
  }

  .details-info-row {
    grid-template-columns: 150px 1fr;
  }

  .checkout-layout {
    grid-template-columns: 1fr 320px;
  }

  .checkout-steps {
    grid-template-columns: repeat(3, 1fr);
  }
}

.account-support-head { display:flex;align-items:center;justify-content:space-between;margin-top:45px; }.account-support-head a,.account-case-link { color:#075ee8;text-decoration:none; }.account-case-link { display:block; }
.track-support-page { padding-bottom:80px; }.public-case-panel { max-width:900px;margin:30px 0;padding:30px;border:1px solid #dfe6ef;border-radius:16px;box-shadow:0 12px 35px rgba(25,45,70,.08); }.case-state { display:inline-block;padding:6px 10px;border-radius:20px;background:#eaf3ff;color:#075ee8;font-size:.75rem;font-weight:800;text-transform:uppercase; }.public-case-panel h2 { margin:12px 0 5px; }.public-case-panel article { padding:17px;margin-top:14px;border-radius:10px;background:#f4f7fb; }.public-case-panel article p { margin:8px 0 0;white-space:pre-wrap;line-height:1.6; }.public-case-timeline .from-support { border-left:4px solid #075ee8;background:#eef5ff; }.public-case-timeline .from-customer { border-left:4px solid #93a1b5; }.public-case-panel form { margin-top:25px; }.public-case-panel form label { display:grid;gap:7px;font-weight:800; }.public-case-panel textarea { min-height:120px;padding:13px;border:1px solid #cbd4df;border-radius:8px;resize:vertical;font:inherit; }.public-case-panel form button { margin-top:12px; }
.account-booking-actions { display:flex;gap:10px;flex-wrap:wrap;margin-top:14px; }
.booking-request-dialog { width:min(650px,calc(100% - 28px));border:0;border-radius:16px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.28); }.booking-request-dialog::backdrop { background:rgba(5,18,37,.62); }.booking-request-dialog form { padding:28px;display:grid;gap:17px; }.booking-request-dialog .dialog-head { display:flex;justify-content:space-between;align-items:start; }.booking-request-dialog .dialog-head span { color:#075ee8;font-weight:800;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em; }.booking-request-dialog h2 { margin:5px 0 0; }.booking-request-dialog .dialog-head button { border:0;background:#eef2f7;border-radius:50%;width:38px;height:38px;font-size:1.5rem;cursor:pointer; }.booking-request-dialog label { display:grid;gap:7px;font-size:.84rem;font-weight:800; }.booking-request-dialog input,.booking-request-dialog select,.booking-request-dialog textarea { border:1px solid #cbd4df;border-radius:8px;padding:12px;font:inherit; }.booking-request-dialog textarea { min-height:130px;resize:vertical; }.request-optional-fields { display:grid;grid-template-columns:1fr 1fr;gap:14px; }.request-warning { background:#fff7e8;color:#6f4b00;padding:13px;border-radius:8px;font-size:.86rem;line-height:1.5; }
.price-alert-section { margin-top:55px;padding-top:35px;border-top:1px solid #dfe6ef; }.price-alert-form { display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:22px;background:#f4f8fc;border-radius:14px;margin:18px 0 24px; }.price-alert-form label { display:grid;gap:6px;font-size:.8rem;font-weight:800; }.price-alert-form input,.price-alert-form select { height:46px;border:1px solid #cbd4df;border-radius:8px;padding:0 10px;background:#fff;font:inherit; }.price-alert-form button,.price-alert-form p { grid-column:1/-1; }.price-alert-card small { display:block;color:#68758a;margin:8px 0 14px; }
/* Rich header destination pages */
.policy-page,.info-page { padding-bottom:80px;background:#fff; }
.policy-hero,.info-hero { padding-block:75px 48px;max-width:920px; }
.policy-hero span,.info-hero span { color:#075ee8;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase; }
.policy-hero h1,.info-hero h1 { margin:12px 0;font-size:clamp(2.5rem,5vw,4.4rem);letter-spacing:-.055em;line-height:1; }
.policy-hero p,.info-hero p { color:#657187;font-size:1.08rem;line-height:1.7; }
.policy-layout { display:grid;grid-template-columns:250px minmax(0,760px);gap:65px;align-items:start; }
.policy-nav { position:sticky;top:30px;padding:22px;border:1px solid #e0e6ee;border-radius:12px;display:grid;gap:11px; }
.policy-nav strong { margin-bottom:5px; }.policy-nav a { color:#526179;text-decoration:none;font-size:.9rem; }.policy-nav a:hover { color:#075ee8; }
.policy-body section { padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid #e5e9ef;scroll-margin-top:25px; }
.policy-body{min-width:0}.policy-body h2 { font-size:1.45rem;margin:0 0 12px; }.policy-body p { color:#536178;line-height:1.75;margin:0; }
.policy-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.policy-actions .sp-btn,.policy-actions .outline-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.policy-body p+p{margin-top:12px}.policy-body ul,.policy-body ol{margin:12px 0 0;padding-left:22px;color:#536178;line-height:1.75}.policy-body li+li{margin-top:8px}.policy-body a{color:#075ee8}.policy-summary{padding:24px!important;border:1px solid #bfdbfe!important;border-radius:14px;background:#eff6ff}.policy-table-wrap{margin:18px 0;overflow-x:auto;border:1px solid #dce3ec;border-radius:12px}.policy-table{width:100%;min-width:620px;border-collapse:collapse;text-align:left}.policy-table th,.policy-table td{padding:13px 14px;border-bottom:1px solid #e5e9ef;vertical-align:top}.policy-table th{background:#f6f8fb;color:#17233b;font-size:.85rem}.policy-table td{color:#536178;line-height:1.55}.policy-table tbody tr:last-child td{border-bottom:0}
.support-safety{margin:0;padding:12px 14px;border-left:4px solid #f59e0b;border-radius:8px;background:#fffbeb;color:#854d0e;line-height:1.55}.contact-card .outline-btn{display:inline-flex;margin-top:8px;text-decoration:none}
.info-card,.lookup-card { max-width:900px;padding:38px;border:1px solid #e1e7ef;border-radius:16px;box-shadow:0 12px 35px rgba(25,45,70,.08); }
.info-card p { color:#5d6b80;line-height:1.75;margin-bottom:25px; }
.support-layout { display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:30px;align-items:start; }
.support-form { padding:30px;border:1px solid #e1e6ee;border-radius:15px;display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#fff; }
.support-form label { display:grid;gap:7px;font-weight:700;font-size:.85rem;color:#3d4960; }.support-form .wide,.support-form button,.support-form p { grid-column:1/-1; }
.support-form input,.support-form select,.support-form textarea { width:100%;padding:13px;border:1px solid #cbd4e0;border-radius:8px;font:inherit; }.support-form textarea { min-height:140px;resize:vertical; }
.contact-card { padding:30px;background:#f2f7fc;border-radius:15px; }.contact-card p { color:#59677d;line-height:1.6; }
.faq-list { max-width:900px;display:grid;gap:12px; }.faq-list details { border:1px solid #dfe5ed;border-radius:11px;padding:20px 22px; }.faq-list summary { cursor:pointer;font-weight:800; }.faq-list p { color:#5d6b80;line-height:1.65; }
#lookupResult { margin-top:25px; }.trip-result { padding:24px;border-radius:12px;background:#eff6ff; }.trip-result>span { color:#087443;font-weight:800;text-transform:uppercase;font-size:.75rem; }.trip-result h2 { margin:8px 0; }.trip-result a { color:#075ee8;font-weight:800; }
.consent-banner { position:fixed;z-index:9999;left:20px;right:20px;bottom:20px;max-width:1050px;margin:auto;padding:20px 24px;background:#111f36;color:#fff;border-radius:14px;box-shadow:0 18px 55px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:space-between;gap:25px; }
.account-page { padding-block:70px;min-height:70vh; }.account-card { max-width:520px;margin:auto;padding:36px;border:1px solid #dfe6ef;border-radius:17px;box-shadow:0 15px 45px rgba(26,45,70,.1); }.account-card>span,.account-head span { color:#075ee8;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:800; }.account-card h1,.account-head h1 { margin:8px 0 10px;font-size:2.4rem;letter-spacing:-.04em; }.account-form { display:grid;gap:16px;margin-top:25px; }.account-form label { display:grid;gap:7px;font-weight:700;font-size:.85rem; }.account-form input { height:50px;border:1px solid #cbd4e0;border-radius:8px;padding:0 13px;font:inherit; }.account-form #nameFields { display:grid;grid-template-columns:1fr 1fr;gap:12px; }.text-btn { border:0;background:none;color:#075ee8;font:inherit;font-weight:700;padding:18px 0 0;cursor:pointer; }.account-head { display:flex;justify-content:space-between;align-items:center;margin-bottom:30px; }.account-trips { display:grid;gap:15px; }
.consent-banner strong { font-size:1rem; }.consent-banner p { margin:5px 0 0;color:#c5cfdd;font-size:.86rem; }.consent-actions { display:flex;align-items:center;gap:10px;flex:none; }.consent-actions a { color:#cbe1ff;font-size:.84rem; }.consent-actions button { border:1px solid #8190a5;background:transparent;color:#fff;padding:10px 13px;border-radius:7px;cursor:pointer; }.consent-actions .primary { background:#fff;color:#102039;border-color:#fff;font-weight:800; }
.header-nav a.active { color: #075ee8; position: relative; }
.header-nav a.active::after { content: ""; position: absolute; height: 3px; border-radius: 3px; background: #075ee8; left: 10px; right: 10px; bottom: -18px; }
.experience-page { background: #fff; color: #172033; padding: 0 0 70px; }
.sp-hero { min-height: 510px; display: grid; align-items: center; color: #fff; position: relative; background-image: linear-gradient(90deg, rgba(5,22,51,.88) 0%, rgba(5,22,51,.64) 43%, rgba(5,22,51,.14) 76%), var(--hero-image); background-position: center; background-size: cover; }
.sp-hero-inner { padding-block: 80px; }
.sp-hero-inner > * { max-width: 680px; }
.sp-eyebrow, .sp-kicker, .sp-title > span { display: block; margin: 0 0 12px; color: #b9d8ff; font-size: .78rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.sp-hero h1 { color: #fff; font-size: clamp(2.6rem, 5vw, 4.9rem); line-height: .98; letter-spacing: -.055em; margin: 0 0 22px; }
.sp-hero p:not(.sp-eyebrow) { color: rgba(255,255,255,.9); font-size: 1.12rem; line-height: 1.7; margin: 0 0 30px; }
.sp-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 24px; border: 0; border-radius: 9px; background: #075ee8; color: #fff !important; font: inherit; font-weight: 800; text-decoration: none; cursor: pointer; transition: transform .18s, background .18s; }
.sp-btn:hover { background: #034ec5; transform: translateY(-1px); }
.sp-btn-light { background: #fff; color: #075ee8 !important; }
.sp-btn-light:hover { background: #edf5ff; }
.sp-content { padding-block: 70px 62px; }
.sp-title { max-width: 700px; margin-bottom: 30px; }
.sp-title > span, .sp-kicker { color: #075ee8; }
.sp-title h2, .sp-tool h2, .sp-cta h2 { font-size: clamp(1.8rem, 3vw, 2.65rem); letter-spacing: -.04em; margin: 0 0 10px; color: #172033; }
.sp-title p, .sp-tool p, .sp-cta p { color: #637086; margin: 0; line-height: 1.65; }
.sp-deal-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.sp-deal { border: 1px solid #e2e7ef; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 9px 30px rgba(28,48,74,.08); transition: transform .2s, box-shadow .2s; }
.sp-deal:hover { transform: translateY(-4px); box-shadow: 0 16px 38px rgba(28,48,74,.14); }
.sp-deal img { width: 100%; height: 220px; object-fit: cover; display: block; }
.sp-deal > div { padding: 22px; }
.sp-deal span { color: #075ee8; font-size: .8rem; font-weight: 800; text-transform: uppercase; }
.sp-deal h3 { margin: 8px 0 12px; font-size: 1.25rem; }
.sp-deal p { color: #637086; margin: 0 0 16px; }
.sp-deal strong { color: #172033; font-size: 1.15rem; }
.sp-deal a, .sp-link-card b { color: #075ee8; font-weight: 800; text-decoration: none; }
.sp-tool { margin-top: -54px; position: relative; z-index: 2; display: grid; grid-template-columns: minmax(230px,.65fr) 1.6fr; gap: 35px; padding: 30px 34px; border-radius: 17px; background: #fff; box-shadow: 0 16px 50px rgba(15,35,60,.18); }
.sp-form { display: grid; grid-template-columns: repeat(3,1fr) auto; gap: 12px; align-items: end; }
.sp-form label { font-size: .78rem; font-weight: 800; color: #455066; }
.sp-form input, .sp-form select { width: 100%; height: 50px; margin-top: 7px; padding: 0 13px; border: 1px solid #cbd3df; border-radius: 8px; background: #fff; color: #172033; font: inherit; }
.sp-form input:focus, .sp-form select:focus { outline: 3px solid rgba(7,94,232,.16); border-color: #075ee8; }
.sp-message { grid-column: 1/-1; color: #b42318 !important; font-size: .88rem; margin-top: -20px !important; }
.sp-message.success { color: #385573 !important; }
.sp-link-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.sp-link-card { display: block; min-height: 235px; padding: 26px; border: 1px solid #e1e6ee; border-radius: 14px; color: inherit; text-decoration: none; transition: transform .2s, border-color .2s, box-shadow .2s; }
.sp-link-card:hover { transform: translateY(-3px); border-color: #9fc5ff; box-shadow: 0 12px 30px rgba(28,48,74,.1); }
.sp-link-card > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 10px; background: #eaf3ff; color: #075ee8; }
.sp-link-card h3 { margin: 22px 0 10px; }
.sp-link-card p { min-height: 68px; color: #637086; line-height: 1.5; }
.sp-benefits { padding-block: 42px; background: #f3f7fc; border-block: 1px solid #e4ebf3; }
.sp-benefit-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 36px; }
.sp-benefit-grid article { display: flex; gap: 16px; }
.sp-benefit-grid article > span { flex: 0 0 42px; height: 42px; display: grid; place-items: center; background: #fff; color: #075ee8; border-radius: 50%; box-shadow: 0 4px 14px rgba(20,45,75,.08); font-weight: 800; }
.sp-benefit-grid h3 { margin: 2px 0 7px; font-size: 1rem; }
.sp-benefit-grid p { margin: 0; color: #637086; line-height: 1.5; font-size: .92rem; }
.sp-cta { margin-top: 70px; padding: 40px 44px; border-radius: 17px; background: #101f39; color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.sp-cta h2 { color: #fff; }
.sp-cta p { color: #b8c3d4; }
.sp-cta .sp-kicker { color: #7db6ff; }

@media (max-width: 1000px) {
  .sp-deal-grid, .sp-benefit-grid { grid-template-columns: repeat(2,1fr); }
  .sp-link-grid { grid-template-columns: repeat(2,1fr); }
  .sp-tool { grid-template-columns: 1fr; }
  .sp-form { grid-template-columns: repeat(2,1fr); }
}
.business-identity{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14)}
.business-identity p{margin:5px 0;max-width:38ch}.business-identity strong{font-size:inherit;color:inherit}
.admin-payment-grid{display:flex;flex-wrap:wrap;gap:10px 18px;margin:10px 0 24px;padding:16px;background:#f6f9fd;border:1px solid #dbe4ef;border-radius:12px}.payment-method-text{width:auto;min-width:64px;padding:7px 10px;color:#243447;background:#fff;font-size:.78rem;font-weight:700}
.admin-workspace-nav{position:sticky;top:0;z-index:20;display:flex;gap:5px;margin:0 0 22px;padding:7px;background:#fff;border:1px solid #dbe4ef;border-radius:14px;box-shadow:0 8px 28px rgba(25,48,75,.08);overflow-x:auto}.admin-workspace-nav button,.admin-settings-nav button{border:0;background:transparent;color:#536273;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}.admin-workspace-nav button{padding:11px 15px;border-radius:9px}.admin-workspace-nav button.active{background:#075ee8;color:#fff}.admin-workspace-panel{grid-column:1/-1;margin-top:0!important}.admin-settings-nav{display:flex;gap:6px;margin:-4px 0 22px;padding-bottom:10px;border-bottom:1px solid #dbe4ef;overflow-x:auto}.admin-settings-nav button{padding:9px 12px;border-radius:9px}.admin-settings-nav button.active{background:#eaf2ff;color:#075ee8}.admin-workspace-panel>.admin-form>.admin-actions{position:sticky;bottom:12px;z-index:12;margin-top:20px;padding:12px;background:rgba(255,255,255,.94);border:1px solid #dbe4ef;border-radius:12px;box-shadow:0 8px 28px rgba(25,48,75,.1);backdrop-filter:blur(8px)}
@media(max-width:700px){.admin-workspace-nav{margin-left:-7px;margin-right:-7px;border-radius:10px}.admin-workspace-nav button{padding:10px 12px}.admin-settings-nav{margin-left:-4px;margin-right:-4px}.admin-workspace-panel{padding:18px}.admin-head{align-items:flex-start}.admin-head>div p{max-width:28ch}}
.admin-business-fields{display:grid;gap:14px;margin:8px 0;padding:18px;border:1px solid #dbe4ef;border-radius:12px}.admin-business-fields legend{padding:0 8px;font-weight:800}.admin-business-fields>p{margin:0;color:#5c6b7a;font-size:.9rem}
.operator-disclosures{padding:22px;border:1px solid #ccd9e8;border-radius:16px;background:#f7faff}.operator-disclosures>h2{margin-top:0}.legal-disclosure-row{padding:14px 0;border-top:1px solid #dde6f0}.legal-disclosure-row h3{margin:0 0 5px;font-size:1rem}.legal-disclosure-row p{margin:0}.legal-readiness-warning{margin:12px 0 18px;padding:13px 15px;border-left:4px solid #b45309;background:#fff7ed;color:#7c2d12;font-weight:650}
.service-commercial-disclosure{margin-top:14px;padding:12px;border-radius:10px;background:#f4f7fb;border:1px solid #dbe4ef}.service-commercial-disclosure p{margin:3px 0;font-size:.82rem;line-height:1.45}.service-commercial-disclosure a{display:inline-block;margin-top:6px}.extra-commercial-note{display:block;margin-top:8px;color:#5d6875;line-height:1.45}
.customer-promise{padding-top:54px;padding-bottom:60px}.customer-promise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.customer-promise-grid article{padding:22px;border:1px solid #dce5ef;border-radius:16px;background:linear-gradient(145deg,#fff,#f7faff);box-shadow:0 8px 24px rgba(30,55,85,.06)}.customer-promise-grid article>span{display:block;margin-bottom:18px;color:#0967d2;font-weight:800;font-size:.78rem}.customer-promise-grid h3{margin:0 0 8px}.customer-promise-grid p{margin:0;color:#536273;line-height:1.55}.customer-promise-actions{display:flex;gap:12px;margin-top:22px}@media(max-width:800px){.customer-promise-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.customer-promise{padding-top:38px;padding-bottom:44px}.customer-promise-grid{grid-template-columns:1fr}.customer-promise-actions{flex-direction:column}.customer-promise-actions a{text-align:center}}
.integrations-card { margin-top:24px; }
.integration-form { grid-template-columns:1fr 1fr;gap:24px; }
.integration-form fieldset { border:1px solid #dfe6ef;border-radius:12px;padding:22px;display:grid;gap:16px; }
.integration-form legend { padding:0 8px;font-weight:800;font-size:1.05rem; }
.integration-form select { width:100%;height:46px;border:1px solid #cbd4df;border-radius:7px;padding:0 10px;background:#fff; }
.integration-form small { float:right;color:#a33;font-weight:700; }.integration-form small.configured { color:#087443; }
.integration-notice,.integration-form>.admin-status,.integration-form>button { grid-column:1/-1; }
.integration-notice { padding:16px;border-radius:10px;background:#eff6ff;display:grid;gap:6px; }.integration-notice code { overflow-wrap:anywhere;color:#075ee8; }
.support-admin-filters { display:grid;grid-template-columns:minmax(240px,1fr) 200px auto;gap:10px;margin:18px 0; }.support-admin-filters input,.support-admin-filters select,.support-case-controls input,.support-case-controls select,.support-case-panel textarea { border:1px solid #cbd4df;border-radius:7px;padding:11px;font:inherit; }
.support-admin-layout { display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);gap:24px;align-items:start; }.support-case-panel { border:1px solid #dfe6ef;border-radius:12px;padding:22px;background:#fafcff;position:sticky;top:20px; }.case-original-message { padding:15px;background:#fff;border-left:4px solid #075ee8;white-space:pre-wrap;line-height:1.6; }.support-case-controls { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0; }.support-case-controls label,.support-case-panel>label { display:grid;gap:6px;font-size:.82rem;font-weight:800; }.support-case-controls label:nth-child(3),.support-case-controls button { grid-column:1/-1; }.support-case-panel textarea { min-height:90px;resize:vertical;margin-bottom:10px; }.support-case-panel>label { margin-top:18px; }.case-history { display:grid;gap:10px;max-height:300px;overflow:auto; }.case-history article { padding:12px;background:#fff;border:1px solid #e2e7ee;border-radius:8px; }.case-history strong { font-size:.76rem;color:#526078; }.case-history p { margin:7px 0 0;white-space:pre-wrap;line-height:1.5; }

@media (max-width: 800px) {
  .header-inner { height:72px;overflow:visible; }
  .brand { flex:0 1 190px;width:190px;min-width:0; }
  .brand-logo { width:190px;max-width:100%;max-height:70px; }
  .header-right { margin-left:auto;flex:0 0 auto; }
  .header-right .lang-switch,.header-right button.header-link { display:none; }
  .header-right .header-link { font-size:.82rem; }
  .price-alert-form { grid-template-columns:1fr 1fr; }
  .integration-form { grid-template-columns:1fr; }.integration-form fieldset { grid-column:1; }
  .support-admin-filters,.support-admin-layout { grid-template-columns:1fr; }.support-case-panel { position:static; }
  .policy-layout,.support-layout { grid-template-columns:1fr; }.policy-nav { position:static; }.support-form { grid-template-columns:1fr;padding:22px; }.support-form label,.support-form .wide { grid-column:1; }.consent-banner { flex-direction:column;align-items:stretch;left:10px;right:10px;bottom:10px; }.consent-actions { flex-wrap:wrap; }
  .sp-hero { min-height: 440px; background-image: linear-gradient(90deg,rgba(5,22,51,.86),rgba(5,22,51,.48)),var(--hero-image); }
  .sp-hero h1 { font-size: 2.75rem; }
  .sp-tool { margin: 0; border-radius: 0; box-shadow: 0 5px 22px rgba(15,35,60,.12); padding: 28px 20px; }
  .sp-content { padding-block: 50px; }
  .sp-deal-grid, .sp-link-grid, .sp-benefit-grid { grid-template-columns: 1fr; }
  .sp-form { grid-template-columns: 1fr; }
  .sp-link-card { min-height: auto; }
  .sp-link-card p { min-height: auto; }
  .sp-cta { margin-top: 45px; padding: 30px 24px; align-items: flex-start; flex-direction: column; }
  .header-nav a.active::after { display: none; }
  .header-nav {
    display: none;
  }
  .site-header{position:relative;z-index:400}.header-right{display:none}.mobile-menu-toggle{display:grid;gap:4px;place-content:center;width:46px;height:46px;margin-left:auto;border:1px solid #cbd8e8;border-radius:11px;background:#fff;cursor:pointer}.mobile-menu-toggle span{display:block;width:21px;height:2px;border-radius:2px;background:#163356;transition:transform .2s,opacity .2s}.mobile-menu-toggle.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-menu-toggle.open span:nth-child(2){opacity:0}.mobile-menu-toggle.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu-panel{position:absolute;display:grid;left:0;right:0;top:100%;z-index:402;padding:12px 18px 22px;border-top:1px solid #e4eaf2;background:#fff;box-shadow:0 20px 36px rgba(7,26,52,.2)}.mobile-menu-panel.hidden{display:none!important}.mobile-menu-links{display:grid}.mobile-menu-links a,.mobile-menu-utility a{display:flex;align-items:center;min-height:50px;padding:0 10px;border-bottom:1px solid #edf1f6;color:#1d3556;font-weight:700;text-decoration:none}.mobile-menu-links a.active,.mobile-menu-utility a.active{color:#075ee8;background:#f1f7ff;border-radius:8px}.mobile-menu-utility{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.mobile-menu-utility a{justify-content:center;min-height:46px;border:1px solid #cbd8e8;border-radius:9px}.mobile-language{display:flex;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #e4eaf2}.mobile-language .lang-btn{min-height:42px;padding-inline:16px;border:1px solid #cbd8e8}.mobile-menu-backdrop{position:fixed;display:block;inset:74px 0 0;z-index:399;border:0;background:rgba(6,20,40,.5)}.mobile-menu-backdrop.hidden{display:none!important}body.mobile-menu-open{overflow:hidden}

  .hero {
    min-height: 520px;
    background-position: 72% center;
  }

  .fields-grid,
  .multi-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .fields-grid>*{grid-column:auto!important;grid-row:auto!important}.traveler-picker-menu{position:static;width:100%;margin-top:12px;box-shadow:none}.trip-type-tabs{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.mode-tab{padding-inline:8px}

  #returnWrap {
    grid-column: auto;
  }

  .swap-btn {
    justify-self: start;
  }

  .options-row {
    align-items: stretch;
  }

  .search-btn {
    width: 100%;
    margin-left: 0;
    height: 52px;
    font-size: 1rem;
  }

  .search-input.card {
    border-right: 0;
    border-radius: 10px;
  }

  .checkbox-grid {
    grid-template-columns: 1fr;
  }

  .checkbox-grid .checkbox-row:last-child {
    grid-column: auto;
  }

  .baggage-option {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .included-pill {
    grid-column: 2;
    justify-self: start;
  }

  .card-grid,
  .card-grid.compact {
    grid-template-columns: 1fr;
  }

  .section-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .secondary-hero {
    padding: 24px;
    min-height: 260px;
  }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .info-grid,
  .info-grid.two-col {
    grid-template-columns: 1fr;
  }

  .results-layout {
    grid-template-columns: 1fr;
  }

  .results-filters {
    position: static;
  }

  .results-sort-tabs {
    grid-template-columns: 1fr;
  }

  .detailed-grid {
    grid-template-columns: 1fr;
  }

  .flight-price-col {
    border-left: 0;
    border-top: 1px solid #e2e9f4;
    padding-left: 0;
    padding-top: 8px;
    justify-items: start;
  }

  .details-grid {
    grid-template-columns: 1fr 1fr;
  }

  .segment-row {
    grid-template-columns: 1fr;
  }

  .results-headline {
    flex-direction: column;
    align-items: flex-start;
  }

  .flight-leg-item {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .flight-leg-meta {
    text-align: left;
  }

  .details-info-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .flight-details-foot {
    flex-direction: column;
    align-items: stretch;
  }

  .flight-details-foot strong {
    font-size: 1.6rem;
  }

  .checkout-steps {
    grid-template-columns: 1fr;
  }

  .checkout-layout {
    grid-template-columns: 1fr;
  }

  .payment-layout {
    grid-template-columns: 1fr;
  }

  .checkout-sidebar {
    position: static;
  }

  .checkout-route-title {
    font-size: 1.7rem;
  }

  .checkout-section h2,
  .checkout-form h2 {
    font-size: 1.45rem;
  }

  .checkout-actions {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .seat-cabin {
    width: min(360px, calc(100% - 18px));
  }

  .seat-columns,
  .seat-grid {
    grid-template-columns: 22px repeat(3, minmax(30px, 1fr)) 18px repeat(3, minmax(30px, 1fr));
    gap: 5px;
  }

  .seat-btn {
    height: 34px;
    border-radius: 8px 8px 6px 6px;
    font-size: 0.76rem;
  }

  .phone-row {
    grid-template-columns: 1fr;
  }

  .payment-form-head {
    flex-direction: column;
  }

  .payment-mini-logos {
    justify-content: flex-start;
  }

  .payment-row {
    grid-template-columns: 1fr;
  }

  .review-hero,
  .review-payment-note {
    flex-direction: column;
    align-items: flex-start;
  }

  .review-grid {
    grid-template-columns: 1fr;
  }

  .review-section p {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .result-card {
    flex-direction: column;
    align-items: flex-start;
  }

  .result-price {
    text-align: left;
  }

  .search-loader-card {
    padding: 20px 16px;
  }

  .flight-loader-scene {
    height: 132px;
  }
}

@media (max-width:560px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid h3{font-size:.84rem}.footer-grid p,.footer-grid a{font-size:.83rem;line-height:1.55}.footer-grid a{min-height:30px;display:flex;align-items:center}.footer-payments{margin-top:26px}.site-footer .footer-note{margin-top:18px}}
