@layer reset, base, layout, components, responsive;
@layer reset { *,*::before,*::after{box-sizing:border-box} html{font-family:system-ui,-apple-system,"Segoe UI",sans-serif} body,h1,h2,h3,p{margin:0} button,input,select{font:inherit} a{color:inherit} }
@layer base { .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} }
@layer base { :root{--ink:#12233f;--muted:#54647b;--blue:#0755b7;--blue-dark:#073572;--line:#dce5ee;--bg:#f4f7fb;--white:#fff;--focus:#f28b29} body{background:var(--bg);color:var(--ink);min-height:100vh;line-height:1.5} :focus-visible{outline:3px solid var(--focus);outline-offset:3px} .shell{width:min(1200px,calc(100% - 40px));margin-inline:auto} .eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)} }
@layer layout { .site-header{background:#fff;border-bottom:1px solid var(--line)} .header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px} .intro{padding:clamp(32px,5vw,60px) 0 24px} .intro h1{font-size:clamp(2rem,4vw,3.45rem);letter-spacing:-.045em;line-height:1.12;margin:10px 0} .intro>p:last-child{color:var(--muted);font-size:1.03rem} .tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px} .search-area,.panel{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 35px rgba(25,54,86,.06)} .search-area{padding:clamp(20px,3vw,32px)} .search-title,.results-header{display:flex;align-items:center;justify-content:space-between;gap:16px} .search-title{margin-bottom:22px} .search-title h2,.results-header h2{font-size:clamp(1.4rem,2.4vw,1.85rem);letter-spacing:-.03em} .field-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px} body[data-kind=flug] .field-grid{grid-template-columns:repeat(2,minmax(0,1.4fr)) repeat(3,minmax(0,1fr))} body[data-kind=mietwagen] .field-grid{grid-template-columns:2fr 1fr 1fr} .search-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:22px} .results-area{padding:34px 0 64px} .results-header{margin-bottom:18px}.result-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap} .results-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:22px;align-items:start} .result-list{display:grid;gap:12px} .site-footer{border-top:1px solid var(--line);color:var(--muted);font-size:.82rem;padding:26px 0;margin-top:60px} }
@layer components { .brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--blue-dark);font-size:1.5rem;font-weight:850;letter-spacing:-.055em}.brand-mark{width:35px;height:35px;border-radius:10px;background:var(--blue);color:#fff;text-align:center;line-height:33px;font-size:1.8rem}.brand-light{color:var(--blue)} .header-state,.sandbox-badge,.result-count,.status-tag{display:inline-flex;align-items:center;gap:8px;border-radius:999px;font-size:.78rem;font-weight:700;white-space:nowrap}.header-state{color:var(--muted)}.state-dot{width:8px;height:8px;background:#ed8b2b;border-radius:50%}.sandbox-badge,.status-tag{background:#e7f0fc;color:var(--blue-dark);padding:7px 12px}.tabs a{display:flex;align-items:center;gap:9px;text-decoration:none;padding:11px 17px;background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--ink);font-weight:700;box-shadow:0 2px 9px rgba(24,53,81,.035)}.tabs a:hover{border-color:var(--blue)}.tabs a[aria-current=page]{background:var(--blue);border-color:var(--blue);color:#fff}.tab-icon{font-size:1.2rem;line-height:1}.field{position:relative;min-width:0}.field label{display:block;font-size:.83rem;font-weight:750;margin-bottom:7px}.field input:not([type=hidden]),.field select{width:100%;height:48px;border:1px solid #c7d5e3;border-radius:10px;background:#fff;color:var(--ink);padding:0 12px;min-width:0}.field input:hover,.field select:hover{border-color:#839ab4}.field input:focus,.field select:focus{border-color:var(--blue)}.field-help{font-size:.72rem;color:var(--muted);margin-top:5px}.suggestions{position:absolute;top:78px;left:0;right:0;z-index:5;background:#fff;border:1px solid #abc0d7;border-radius:10px;box-shadow:0 15px 35px rgba(18,35,63,.18);max-height:260px;overflow-y:auto}.suggestions[hidden]{display:none}.suggestions button{display:block;width:100%;text-align:left;border:0;background:#fff;color:var(--ink);padding:11px 12px;cursor:pointer}.suggestions button:hover,.suggestions button:focus{background:#e8f1fc}.suggestions p{padding:11px 12px;color:var(--muted);font-size:.88rem}.search-button,.result-action a{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:10px;background:var(--blue);color:#fff;padding:13px 19px;font-weight:750;text-decoration:none;white-space:nowrap;cursor:pointer}.search-button:hover,.result-action a:hover{background:var(--blue-dark)}.search-button:disabled{opacity:.65;cursor:wait}.form-message{color:var(--blue-dark);font-size:.84rem;min-height:1.4em;margin-top:8px}.form-message:empty{display:none}.results-info{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--muted);font-size:.85rem}.results-info h3{color:var(--ink);font-size:.96rem;margin-bottom:8px}.results-info p+p{margin-top:12px}.result-count{background:#e7f0fc;padding:7px 12px;color:var(--blue-dark)}.result-card{display:flex;align-items:center;gap:18px;min-height:128px;padding:17px 20px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(25,54,86,.035)}.result-image{width:102px;height:82px;object-fit:contain;border-radius:8px;background:#f4f7fb;flex:none}.result-main{min-width:0;flex:1}.result-main h3{font-size:1rem;line-height:1.35}.result-main p{font-size:.85rem;color:var(--muted);margin-top:5px}.sample-label{display:inline-block;color:#765b28;background:#fff3df;border-radius:6px;padding:3px 7px;font-size:.7rem;font-weight:700;margin-top:9px}.result-action{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}.result-action strong{font-size:1.25rem}.result-action small,.price-unavailable{color:var(--muted);font-size:.75rem}.result-action a{font-size:.78rem;padding:8px 12px;margin-top:8px}.notice{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;color:var(--muted)}.notice.error{border-color:#ebbbb5;background:#fff6f5;color:#8c3025}.unavailable{padding:clamp(24px,5vw,48px);max-width:760px;min-height:250px}.unavailable h2{font-size:1.8rem;margin:15px 0 9px}.unavailable p{color:var(--muted);max-width:600px}.text-link{display:inline-block;color:var(--blue);font-weight:700;margin-top:20px} }
@layer responsive { @media(max-width:950px){.field-grid,body[data-kind=flug] .field-grid,body[data-kind=mietwagen] .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.place-field{grid-column:span 1}.results-layout{grid-template-columns:1fr}.results-info{order:2}} @media(max-width:620px){.shell{width:min(100% - 24px,1200px)}.header-inner{min-height:66px}.header-state{font-size:.68rem}.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tabs a{justify-content:center;padding:10px 7px;font-size:.85rem}.field-grid,body[data-kind=flug] .field-grid,body[data-kind=mietwagen] .field-grid{grid-template-columns:1fr}.search-footer{align-items:stretch;flex-direction:column}.search-button{width:100%}.result-card{align-items:flex-start;flex-wrap:wrap;padding:15px}.result-main{flex-basis:calc(100% - 120px)}.result-action{width:100%;align-items:flex-start;text-align:left;margin-top:4px}.result-action a{width:100%}.results-header{align-items:flex-start;flex-direction:column}.intro{padding-top:32px}.site-footer{margin-top:40px}} }
@layer components { .options-row{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:12px;margin-bottom:18px}.more-options{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}.more-options summary{color:var(--blue-dark);font-size:.87rem;font-weight:750;cursor:pointer;width:max-content;max-width:100%}.more-options[open] summary{margin-bottom:16px}.more-options>.field{max-width:440px}.extra-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.field[hidden]{display:none} }
@layer responsive { @media(max-width:950px){.extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}} @media(max-width:620px){.options-row,.extra-grid{grid-template-columns:1fr}.more-options>.field{max-width:none}} }
@layer components { .form-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.secondary-action{border:1px solid var(--blue);border-radius:10px;background:#fff;color:var(--blue-dark);padding:12px 16px;font-weight:750;cursor:pointer}.secondary-action:hover{background:#e7f0fc}.secondary-action:disabled{opacity:.65;cursor:wait}.insights-area>.notice{margin:18px 0}.insights-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.insights-list{display:grid;gap:2px;max-height:540px;overflow:auto}.insight-row{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:12px 0}.insight-row>span{min-width:0}.insight-row strong{color:var(--ink)}.insight-row>strong{white-space:nowrap}.insight-row small{display:block;color:var(--muted);font-size:.75rem} }
@layer responsive { @media(max-width:760px){.insights-columns{grid-template-columns:1fr}} @media(max-width:620px){.form-actions,.form-actions button{width:100%}} }
@layer components { .leg-fields{border:1px solid var(--line);border-radius:12px;margin:18px 0 0;padding:16px}.leg-fields legend{padding:0 6px;font-size:.85rem;font-weight:750;color:var(--blue-dark)}.leg-fields[hidden],.secondary-action[hidden]{display:none} }
@layer components { .flight-sort{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 18px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.flight-sort button{display:grid;gap:3px;text-align:left;border:0;border-bottom:4px solid transparent;border-right:1px solid var(--line);padding:16px 20px;background:#fff;color:var(--muted);cursor:pointer}.flight-sort button:last-child{border-right:0}.flight-sort button[aria-selected=true]{border-bottom-color:var(--blue);color:var(--ink)}.flight-sort button strong{font-size:.95rem}.flight-sort button span{font-size:.83rem}.flight-panels{min-width:0}.flight-panel[hidden]{display:none} }
@layer responsive { @media(max-width:620px){.flight-sort{grid-template-columns:1fr}.flight-sort button{border-right:0;border-bottom:1px solid var(--line);padding:10px 14px}.flight-sort button[aria-selected=true]{border-left:4px solid var(--blue);border-bottom-color:var(--line)}} }
@layer components { .notice.error .secondary-action{margin-top:12px} }
@layer components {
  .diagnostic-panel{display:grid;gap:18px;margin-top:30px;min-width:0}
  .diagnostic-import{display:grid;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:.85rem;max-width:100%}
  .diagnostic-import input{max-width:100%}
  .diagnostic-panel h2{font-size:clamp(1.35rem,3vw,2rem)}
  .diagnostic-cards{display:grid;gap:10px}
  .diagnostic-cards .result-card>strong{flex:none;white-space:nowrap}
  .diagnostic-timeline{white-space:pre-wrap;max-height:220px;overflow:auto;font: .8rem/1.7 ui-monospace,monospace}
  .raw-json{max-height:560px;overflow:auto;min-width:0;font:.78rem/1.6 ui-monospace,monospace;color:var(--ink)}
}
@font-face{font-family:"TT Hoves Preview";src:url("https://www.kayak.de/frontier/assets/CTaes35WVv.woff2") format("woff2");font-weight:50 900;font-style:normal;font-display:swap}
@layer components {
  body[data-kind=flug]{font-family:"TT Hoves Preview",Arial,sans-serif;--ink:#192024;--muted:#5f6e79;--line:#d5e0e8;--bg:#f0f3f4}
  .ui-icon{display:inline-block;flex:none;width:20px;height:20px;vertical-align:middle;color:inherit;fill:currentColor}
  .results-body,.flight-panels{min-width:0}.result-warning{margin-bottom:18px;border-color:#e8c982;background:#fff9e9;color:#684b17}
  body[data-kind=flug] .shell{width:min(1320px,calc(100% - 48px))}
  body[data-kind=flug] .results-layout{grid-template-columns:260px minmax(0,1fr);gap:24px}
  body[data-kind=flug] .results-header h2{font-size:20px;font-weight:650;line-height:1.3}
  body[data-kind=flug] .results-header .eyebrow{display:none}
  .flight-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;padding:0;background:transparent;border:0;border-radius:0;color:var(--muted);font-size:13px}
  .flight-controls[hidden],.flight-panel[hidden],.flight-card[hidden],.more-results[hidden]{display:none}
  .flight-controls label{display:grid;gap:4px}.flight-controls select{min-height:40px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:7px}
  .more-results{display:block;width:100%;margin-top:16px;background:#fff}
  .raw-details{min-width:0}.raw-details>summary{cursor:pointer;font-weight:700}.raw-details .raw-json{margin-top:10px}
  .result-progress{height:3px;overflow:hidden;margin:0 0 18px;border-radius:3px;background:#dce5e9}.result-progress span{display:block;height:100%;background:#007e98}.result-progress.is-running span{width:35%;animation:kayak-loading 3s ease-in-out infinite}.result-progress.is-finished span{width:100%}
  @keyframes kayak-loading{from{transform:translateX(-110%)}to{transform:translateX(290%)}}
  .suggestions{max-height:400px;min-width:min(420px,calc(100vw - 30px));right:auto}.suggestions button{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:1px 10px;align-items:center;min-height:62px;border-bottom:1px solid var(--line)}.suggestions button::before{content:"✈";grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#edf2f6;color:var(--muted)}.suggestion-primary{font-weight:700}.suggestion-code{color:var(--muted);font-size:13px}.suggestion-city{grid-column:2/-1;color:var(--muted);font-size:12px}
  body[data-kind=flug] .tabs a[aria-current=page],body[data-kind=flug] .search-button{background:#ff510a;border-color:#ff510a;color:#fff}
  .flight-sort-wrap{display:grid;grid-template-columns:minmax(0,1fr) 180px;margin:0 0 20px 284px;border:1px solid #e1e6e9;border-radius:12px;background:#fff;box-shadow:0 3px 6px #19202420}
  .flight-sort-wrap .flight-sort{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border:0;border-radius:12px 0 0 12px;overflow:hidden}
  .flight-sort button,.flight-sort-loading>div{display:grid;gap:3px;align-content:center;text-align:left;border:0;border-right:1px solid var(--line);border-top:3px solid transparent;border-bottom:4px solid transparent;padding:17px 20px;background:#fff;color:var(--muted);min-height:92px;cursor:pointer}
  .flight-sort button:last-child,.flight-sort-loading>div:last-child{border-right:0}.flight-sort button strong,.flight-sort-loading strong{font-size:17px;font-weight:700;line-height:1.2}.flight-sort button span{font-size:15px;line-height:1.3}
  .flight-sort button[data-flight-sort=bestValue],.flight-sort-loading>div:first-child{border-top-color:#b7ead4;background:#f5fcf8}.flight-sort button[aria-selected=true]{color:var(--ink);border-bottom-color:#007e98}
  .flight-more-sort{position:relative;border-left:1px solid var(--line)}.flight-more-sort>summary,.flight-more-loading{display:flex;align-items:center;justify-content:center;gap:10px;height:100%;min-height:92px;padding:14px;font-size:14px;cursor:pointer;list-style:none}.flight-more-sort>summary::-webkit-details-marker{display:none}.flight-more-sort>summary:hover,.flight-more-sort[open]>summary{background:#f0f3f4}.flight-more-loading{cursor:default;color:var(--muted)}
  .flight-more-menu{position:absolute;z-index:20;right:0;top:100%;width:240px;max-height:400px;overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 22px #19202429}.flight-more-menu p{padding:6px 8px;color:var(--muted);font-size:12px}.flight-more-menu button{display:block;width:100%;border:0;border-radius:5px;background:#fff;padding:10px;text-align:left;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.flight-more-menu button:hover,.flight-more-menu button[aria-pressed=true]{background:#e5eef0}.flight-more-menu button[hidden]{display:none}
  .flight-panel{container-type:inline-size}.flight-card{--price-column:210px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) var(--price-column);gap:0;align-items:stretch;min-width:0;padding:0;border:1px solid #e3e8eb;border-radius:11px;background:#fff;box-shadow:0 3px 6px #19202426;overflow:visible;transition:border-color .18s,box-shadow .18s}
  .flight-card:hover{border-color:#8c9fac;box-shadow:0 3px 8px #19202430}.flight-main{padding:14px 16px 0;min-width:0}
  .flight-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:30px;margin-bottom:7px}.flight-icon-actions{display:flex;gap:5px;flex:none}
  .card-icon{display:inline-grid;place-items:center;width:40px;height:30px;padding:5px 9px;border:1px solid #9baebc;border-radius:4px;background:#f9fafb;color:#192024;cursor:pointer}.card-icon .ui-icon{width:19px;height:19px}.card-icon:hover{background:#e5ebef}.card-icon[aria-pressed=true]{background:#e7f5f1;color:#08715e}.card-icon[aria-pressed=true] .ui-icon{filter:drop-shadow(0 0 1px currentColor)}
  .flight-badges{display:flex;justify-content:flex-end;align-items:flex-start;gap:5px;flex-wrap:wrap;min-width:0}.flight-badges:empty{display:none}.flight-badges span{padding:5px 10px;border-radius:4px;background:#dff7fc;color:#00445b;font-size:12px;font-weight:650;line-height:1.3}.flight-badges .badge-lowest{background:#c8fae3;color:#004936}.flight-badges .badge-nonstop{background:#f2efff;color:#3d3197}
  .flight-leg{padding:7px 0;position:relative;isolation:isolate}.flight-leg::before{content:"";position:absolute;z-index:-1;left:28px;right:0;top:0;bottom:0;background:transparent;transition:background-color .18s;border-radius:7px}.flight-card:hover .flight-leg::before,.flight-leg:focus-within::before{background:#e6ecef}.flight-leg:has(.leg-select:checked)::before{background:#e6ecef}
  .flight-leg-row{display:grid;grid-template-columns:24px 54px minmax(0,1.8fr) minmax(83px,.8fr) minmax(94px,.8fr);gap:12px;align-items:center;min-height:48px}
  .leg-select{appearance:none;width:20px;height:20px;border:1px solid #99adbc;border-radius:4px;background:#fff;margin:0;cursor:pointer}.leg-select:checked::after{content:'✓';display:block;text-align:center;color:#007e98;font:700 15px/18px Arial}
  .flight-airlines{display:flex;align-items:center;justify-content:center;min-width:0}.brand-chip{display:inline-flex;align-items:center;justify-content:center}.brand-chip img{display:block;width:44px;height:44px;object-fit:contain}.brand-name{display:none}.airline-code{display:inline-grid;place-items:center;min-width:30px;height:30px;color:#334a58;font-size:12px;font-weight:700}
  .flight-schedule,.flight-metrics{display:grid;gap:5px;min-width:0}.flight-schedule strong{font-size:18px;font-weight:700;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums}.flight-schedule sup{font-size:10px;vertical-align:super;font-weight:400;margin-left:1px}.flight-schedule small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:12px;line-height:1.25}.flight-schedule small:last-child{display:none}
  .flight-metrics{align-self:center}.flight-metrics strong,.flight-duration{font-size:15px;font-weight:700;line-height:1.2}.flight-metrics small{font-size:12px;color:var(--muted);line-height:1.25}.flight-duration{align-self:start;padding-top:7px;white-space:nowrap;text-align:left}
  .flight-card .result-action{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;justify-content:flex-end;gap:3px;min-width:0;margin:0;padding:14px 16px 0;border-left:1px solid var(--line)}.flight-card .result-action::after{content:"";position:absolute;bottom:-35px;left:-1px;height:35px;border-left:1px solid var(--line)}
  .flight-card .result-action .price-line{display:flex;align-items:baseline;gap:4px;white-space:nowrap}.price-line strong{font-size:29px;font-weight:750;line-height:1.2;letter-spacing:-.4px}.price-line span{font-size:13px}.flight-card .result-action>small{font-size:13px;line-height:1.35;color:#192024}.flight-card .result-action .flight-total{font-size:14px;font-weight:650}.flight-card .result-action a{width:100%;min-height:42px;margin:5px 0 0;padding:10px 8px;border-radius:5px;background:linear-gradient(100deg,#ff650a,#f33d19);color:#fff;font-size:15px;font-weight:700;line-height:1.2}.flight-card .result-action a:hover{background:#e6440b}
  .entity-logo{display:inline-block;max-width:88px;width:auto;height:26px;object-fit:contain;vertical-align:middle}.result-action>.entity-logo{display:none}.image-missing{display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);font-size:12px}
  .baggage-summary{position:relative;display:flex;min-height:30px;margin-bottom:auto;padding-bottom:16px;width:100%}.baggage-trigger{display:flex;gap:5px;border:0;background:none;padding:0;cursor:pointer}.bag-indicator{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:37px;height:28px;padding:3px 5px;border:1px solid var(--line);border-radius:4px;background:#fff;color:#080d10}.bag-indicator.unknown,.bag-indicator.fee{color:#97a5ad}.bag-indicator .ui-icon{width:17px;height:19px}.bag-indicator b{font-size:13px;font-weight:500;color:inherit}
  .baggage-popover{visibility:hidden;opacity:0;pointer-events:none;position:absolute;right:calc(100% + 18px);top:-15px;z-index:10;width:325px;border:1px solid #e4e9ec;background:#fff;padding:20px;box-shadow:0 9px 24px #1920242b;text-align:left;transition:opacity .15s}.baggage-summary:hover .baggage-popover,.baggage-summary:focus-within .baggage-popover,.baggage-trigger[aria-expanded=true]+.baggage-popover{visibility:visible;opacity:1;pointer-events:auto}.baggage-popover h4{font-size:20px;margin:0 0 18px}.baggage-popover p{display:flex;justify-content:space-between;gap:15px;margin:12px 0;font-size:16px}.baggage-popover p strong{font-size:16px;font-weight:400;text-align:right}.baggage-popover p span{display:flex;align-items:center;gap:9px}.baggage-popover .baggage-total{border-top:1px solid var(--line);padding-top:16px;margin-top:18px;font-weight:700}.baggage-popover .baggage-total strong{font-weight:700}.baggage-popover>small{display:block;border-top:1px solid var(--line);padding-top:14px;margin-top:18px;font-size:13px;line-height:1.6;color:var(--muted)}
  .flight-card .flight-details{grid-column:1/-1;padding:0;border:0;background:transparent;min-width:0}.flight-details>summary{display:block;min-height:35px;padding:9px 16px 12px;max-width:calc(100% - var(--price-column));list-style:none;font-size:12px;font-weight:400;color:var(--muted);cursor:pointer}.flight-details>summary::-webkit-details-marker{display:none}.flight-details>summary:hover{color:#007e98}.flight-detail-content{display:grid;gap:16px;padding:30px;border-top:1px solid var(--line);border-radius:0 0 10px 10px;background:#f7f9fa}.flight-details:not([open])>.flight-detail-content{display:none}
  .segment-group{padding:0;margin:0;border:1px solid var(--line);border-radius:12px;background:#fff;min-width:0}.segment-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.3}.segment-heading strong{font-weight:700}.segment-heading span{font-size:13px;white-space:nowrap}.segment-body{padding:16px 24px}.segment-flight{position:relative;min-height:140px}.segment-flight-head{display:flex;gap:8px;align-items:center;min-height:30px;padding-bottom:12px;color:var(--muted)}.segment-airline{display:inline-flex;justify-content:center;align-items:center;width:30px;flex:none;font-size:10px}.segment-airline img{width:24px;height:24px;object-fit:contain}.segment-flight-head small{font-size:12px}.equipment{border:1px solid #687c8b;border-radius:3px;padding:2px 7px;font-size:12px;white-space:nowrap}
  .segment-timeline{position:relative;display:grid;grid-template-columns:24px 68px minmax(0,1fr);gap:14px 14px;align-items:baseline;padding:0 0 1px}.segment-timeline::before{content:"";position:absolute;left:11px;top:9px;bottom:15px;width:1px;background:#97aab7}.timeline-dot{z-index:1;width:6px;height:6px;border:1px solid #97aab7;border-radius:50%;background:#fff;justify-self:center;align-self:center}.timeline-plane{z-index:1;justify-self:center;align-self:center;background:#fff;line-height:1}.timeline-plane .ui-icon{width:23px;height:23px}.segment-timeline strong{font-size:16px;font-weight:700}.segment-timeline>span:not(.timeline-dot):not(.timeline-plane){font-size:16px;line-height:1.35}.segment-timeline>small{font-size:12px;color:#192024}.segment-timeline span>small{display:block;margin-top:4px;color:#e76800;font-size:12px;font-weight:650}
  .quality-details{position:relative;margin-left:auto;color:#111;z-index:2;flex:none}.quality-details>summary{display:flex;gap:10px;align-items:center;list-style:none;background:#f0f3f4;border-radius:25px;padding:10px 15px;cursor:pointer}.quality-details>summary::-webkit-details-marker{display:none}.quality-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:none}.quality-icon .ui-icon{width:17px;height:17px}.quality-icon.unknown{color:#a1aeb5}.quality-chevron{display:inline-flex;margin-left:2px}.quality-chevron .ui-icon{width:17px;height:17px}.quality-details[open] .quality-chevron{transform:rotate(180deg)}.quality-details>div{position:absolute;right:0;top:100%;width:280px;padding:13px 18px;border-radius:17px;background:#f0f3f4;box-shadow:0 5px 12px #19202415}.quality-details p{display:flex;align-items:center;gap:15px;font-size:14px;line-height:1.4;padding:5px 0}.quality-details p:has(.unknown){color:#71818b}
  .transfer-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:16px 0;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}.transfer-row em{font-style:normal;font-size:12px;line-height:1.3;padding:4px 8px;border-radius:3px;background:#fff1dd;color:#8b4306}.offer-list{padding:8px 0;font-size:13px}.offer-list p{margin:8px 0}.offer-list .entity-logo{margin-right:8px}.offer-list>summary{font-weight:600;cursor:pointer;color:var(--muted)}
  .flight-sidebar{position:static;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);font-size:14px}.flight-sidebar>h3{font-size:16px}.flight-sidebar>p{font-size:12px;color:var(--muted);line-height:1.45}.filter-toggle{display:none}.flight-facets{display:grid;gap:22px;margin-top:24px}.flight-facets[hidden]{display:none}.flight-facets fieldset{border:0;border-top:1px solid var(--line);margin:0;padding:20px 0 0;min-width:0}.flight-facets legend{font-size:17px;font-weight:700;padding:0 0 5px;width:100%}.flight-facets label{display:flex;align-items:center;gap:10px;margin:10px 0;color:var(--ink);font-size:16px;line-height:1.3}.flight-facets label[hidden]{display:none}.flight-facets input[type=checkbox]{appearance:none;flex:none;width:20px;height:20px;margin:0;border:1px solid #9baeba;border-radius:4px;background:#fff;cursor:pointer}.flight-facets input[type=checkbox]:checked::after{content:'✓';display:block;color:#007e98;text-align:center;font:700 14px/18px Arial}.facet-price{margin-left:auto;white-space:nowrap;color:var(--muted);font-size:14px}.facet-expand{border:0;padding:8px 0;background:none;color:#007e98;font:inherit;font-size:16px;font-weight:650;cursor:pointer}.facet-expand:hover{text-decoration:underline}.flight-facets .secondary-action{width:100%;font-size:14px}
  .bag-counter{display:grid;grid-template-columns:minmax(0,1fr) 25px 22px 25px;gap:6px;align-items:center;margin:9px 0;font-size:16px}.bag-counter>span{display:flex;align-items:center;gap:9px;white-space:nowrap}.bag-counter .ui-icon{width:20px;height:20px}.bag-counter button{height:25px;border:1px solid #a4b5c0;border-radius:4px;background:transparent;font:700 17px/1 Arial;cursor:pointer}.bag-counter button:hover{background:#e3e9ed}.bag-counter output{text-align:center;font-weight:650}.bag-calculator>small{display:block;margin-top:10px;font-size:11px;color:var(--muted)}
  .facet-segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;border:1px solid #9fb0bc;border-radius:9px;margin:4px 0 15px}.facet-segmented button{border:0;background:none;border-radius:6px;padding:7px 5px;font-size:16px;cursor:pointer}.facet-segmented .is-selected{background:#fff;box-shadow:0 1px 5px #19202430;font-weight:650}.time-range{margin:18px 0}.time-range[hidden]{display:none}.time-range strong{font-size:16px;font-weight:400}.range-values,.facet-slider>div{display:flex;justify-content:space-between;gap:8px;margin:7px 0;font-size:14px}.range-pair{position:relative;height:28px;margin:5px 14px 22px;border-top:2px solid #007e98;top:14px}.flight-facets .range-pair input[type=range]{position:absolute;left:-14px;top:-16px;width:calc(100% + 28px);height:30px;margin:0;appearance:none;background:transparent;pointer-events:none}.range-pair input[type=range]::-webkit-slider-thumb{appearance:none;width:30px;height:30px;border:1px solid #9bafbd;border-radius:50%;background:#fff;pointer-events:auto;cursor:pointer}.range-pair input[type=range]::-moz-range-thumb{width:28px;height:28px;border:1px solid #9bafbd;border-radius:50%;background:#fff;pointer-events:auto;cursor:pointer}
  .facet-actions{display:flex;gap:10px;align-items:center;margin:7px 0 14px}.facet-actions button{padding:0;border:0;background:none;color:#007e98;font:inherit;font-size:16px;font-weight:650;cursor:pointer}.facet-actions button:last-child{color:var(--muted)}.facet-actions button:hover{text-decoration:underline}.facet-slider{margin:16px 0 22px}.facet-slider>label{display:block;margin:0}.facet-slider input[type=range]{appearance:none;width:100%;height:2px;margin:18px 0;background:#007e98;cursor:pointer}.facet-slider input[type=range]::-webkit-slider-thumb{appearance:none;width:30px;height:30px;border:1px solid #9bafbd;border-radius:50%;background:#fff}.facet-slider input[type=range]::-moz-range-thumb{width:28px;height:28px;border:1px solid #9bafbd;border-radius:50%;background:#fff}.facet-details{border-top:1px solid var(--line);padding:20px 0 0}.facet-details summary{font-size:17px;font-weight:700;cursor:pointer;list-style:none}.facet-details summary::-webkit-details-marker{display:none}.facet-details summary::after{content:'⌄';float:right}.facet-details[open] summary::after{content:'⌃'}.facet-details [data-facet-layovers]{padding-top:12px}
  .flight-loading{padding-top:18px}.loading-label{font-size:16px;font-weight:650;margin-bottom:12px}.skeleton-sidebar{display:block;background:transparent;border:0;box-shadow:none;padding:0 3px}.skeleton-line{display:block;height:18px;margin:12px 0;border-radius:2px;background:#e2e9ed;animation:skeleton-pulse 2.2s ease-in-out infinite}.skeleton-heading{width:52%;height:20px}.skeleton-wide{width:94%}.skeleton-medium{width:67%}.skeleton-short{width:42%}.skeleton-divider{height:1px;background:#d7e0e6;margin:24px 0}.skeleton-card{display:grid;grid-template-columns:minmax(0,1fr) 24%;gap:24px;align-items:center;min-height:168px;padding:26px;border-radius:11px;background:#fff}.skeleton-card>div{min-width:0}.skeleton-card .skeleton-line{height:19px;margin:13px 0}.skeleton-card .skeleton-price{height:38px;width:100%}.flight-sort-loading .skeleton-line{height:13px;width:55%;margin:4px 0}.flight-sort-loading>div{cursor:default}
  @keyframes skeleton-pulse{0%,100%{opacity:.65}50%{opacity:1}}
}
@layer responsive {
  @container (max-width:800px){.flight-card{--price-column:175px}.flight-main{padding:12px 12px 0}.flight-leg-row{grid-template-columns:20px 42px minmax(0,1.6fr) 74px 82px;gap:9px}.flight-schedule strong{font-size:16px}.flight-metrics strong,.flight-duration{font-size:13px}.flight-schedule small,.flight-metrics small{font-size:11px}.brand-chip img{width:36px;height:36px}.flight-card .result-action{padding:12px 12px 0}.price-line strong{font-size:25px}.flight-badges span{font-size:11px;padding:4px 7px}.card-icon{width:33px;height:26px;padding:4px 6px}.segment-body{padding:16px 22px}.segment-timeline>span:not(.timeline-dot):not(.timeline-plane){font-size:14px}.segment-timeline strong{font-size:14px}.segment-heading{font-size:14px}.segment-flight-head small,.equipment{font-size:11px}.quality-details>summary{gap:9px;padding:10px 14px}.quality-icon,.quality-icon .ui-icon{width:15px;height:15px}.quality-details p{font-size:13px}.flight-detail-content{padding:25px 30px}.segment-timeline{grid-template-columns:24px 64px minmax(0,1fr);gap:14px 14px}.flight-card .result-action a{font-size:14px;min-height:36px}.flight-leg-row{min-height:44px}}
  @container (max-width:650px){.flight-card{--price-column:150px}.flight-leg-row{grid-template-columns:18px 34px minmax(0,1fr) 75px;gap:7px}.flight-duration{grid-column:4;grid-row:1;align-self:end;padding:0 0 2px}.flight-metrics{grid-column:4;grid-row:1;align-self:start;padding:2px 0 16px}.flight-metrics small{display:none}.flight-schedule strong{font-size:14px}.flight-schedule small{font-size:10px}.brand-chip img{width:31px;height:31px}.leg-select{width:18px;height:18px}.price-line strong{font-size:23px}.flight-card .result-action>small{font-size:11px}.price-line span{font-size:11px}.flight-card .result-action .flight-total{font-size:12px}.flight-badges span{font-size:10px}.segment-flight-head{flex-wrap:wrap}.quality-details{margin-left:auto}.flight-detail-content{padding:18px}.segment-body{padding:15px}.equipment{max-width:150px;overflow:hidden;text-overflow:ellipsis}}
  @media(max-width:1050px){body[data-kind=flug] .results-layout{grid-template-columns:220px minmax(0,1fr);gap:18px}.flight-sort-wrap{margin-left:238px;grid-template-columns:minmax(0,1fr) 145px}.flight-sort button,.flight-sort-loading>div{padding:12px;min-height:80px}.flight-sort button strong,.flight-sort-loading strong{font-size:14px}.flight-sort button span{font-size:13px}.flight-more-sort>summary,.flight-more-loading{min-height:80px;font-size:12px;padding:10px}.flight-facets label,.bag-counter,.facet-actions button{font-size:14px}.bag-counter{grid-template-columns:minmax(0,1fr) 23px 20px 23px;gap:3px}.bag-counter>span{gap:6px}.facet-price{font-size:12px}}
  @media(max-width:900px){body[data-kind=flug] .results-layout{grid-template-columns:1fr}.flight-sort-wrap{margin-left:0}.flight-sidebar{order:0}.filter-toggle{display:flex;width:100%;justify-content:center;margin:12px 0}.flight-sidebar .flight-facets{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}.flight-sidebar .flight-facets:not(.is-open){display:none}.flight-sidebar>h3,.flight-sidebar>p{display:none}.skeleton-sidebar{display:none}.flight-facets label,.bag-counter{font-size:16px}}
  @media(max-width:620px){body[data-kind=flug] .shell{width:calc(100% - 24px)}.flight-sort-wrap{grid-template-columns:1fr}.flight-sort-wrap .flight-sort{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:12px 12px 0 0}.flight-sort button,.flight-sort-loading>div{border-left:0;padding:12px 8px;min-height:80px}.flight-sort button strong,.flight-sort-loading strong{font-size:13px}.flight-sort button span{font-size:11px}.flight-sort button[aria-selected=true]{border-left:0;border-bottom:4px solid #007e98}.flight-more-sort,.flight-more-loading{border-left:0;border-top:1px solid var(--line)}.flight-more-sort>summary,.flight-more-loading{min-height:43px}.flight-more-menu{width:100%}.flight-sidebar .flight-facets{grid-template-columns:1fr}.suggestions{max-width:calc(100vw - 30px)}.flight-card{grid-template-columns:1fr;--price-column:0px;padding:0;align-items:stretch}.flight-main{padding:12px 12px 0}.flight-topline{min-height:30px}.flight-leg-row{grid-template-columns:20px 35px minmax(0,1fr) 80px;gap:9px;min-height:47px}.flight-card .result-action{border-left:0;border-top:1px solid var(--line);padding:12px;display:grid;grid-template-columns:1fr auto;gap:3px 12px;margin-top:10px}.flight-card .result-action::after{content:none}.flight-card .result-action .baggage-summary{grid-column:2;grid-row:1;margin:0;padding:0;justify-content:flex-end}.flight-card .result-action .price-line{grid-column:1;grid-row:1}.flight-card .result-action>small{grid-column:1;font-size:12px}.flight-card .result-action a{grid-column:2;grid-row:2/5;align-self:end;min-width:116px;min-height:40px;margin:0}.flight-card .price-line strong{font-size:26px}.flight-card .flight-details>summary{max-width:100%;min-height:35px;padding:8px 12px 12px}.flight-detail-content{padding:12px}.segment-heading{padding:12px}.segment-body{padding:12px}.segment-timeline{grid-template-columns:18px 48px minmax(0,1fr);gap:13px 10px}.segment-timeline::before{left:8px}.segment-timeline>span:not(.timeline-dot):not(.timeline-plane){font-size:13px}.segment-timeline strong{font-size:13px}.segment-flight-head{gap:5px;flex-wrap:wrap}.segment-airline{width:21px}.segment-flight-head small,.equipment{font-size:10px}.equipment{max-width:130px}.quality-details{margin-left:0;flex-basis:100%;margin-bottom:3px}.quality-details>summary{width:max-content;margin-left:auto;padding:7px 12px}.quality-details>div{max-width:calc(100vw - 75px)}.baggage-popover{right:0;top:34px;width:min(310px,calc(100vw - 50px));padding:16px}.baggage-popover p,.baggage-popover p strong{font-size:14px}.baggage-popover h4{font-size:18px}.skeleton-card{min-height:130px;padding:20px}.results-header{gap:10px}}
  @media(prefers-reduced-motion:reduce){.skeleton-line,.result-progress.is-running span{animation:none}.result-progress.is-running span{width:65%}.flight-card,.flight-leg::before{transition:none}}
}
@layer components {
  body[data-kind=flug] .tabs{margin-top:24px;margin-bottom:22px}
  body[data-kind=flug] .search-area:has(.compact-search){border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}
  .compact-search{position:relative;z-index:10;margin-bottom:0}
  body[data-kind=flug] .results-area{padding-top:24px}
  body[data-kind=flug] .result-progress.is-finished{display:none}
  .compact-search [hidden]{display:none!important}
  .compact-search button,.compact-search select{cursor:pointer}
  .compact-options{display:flex;align-items:center;gap:24px;margin:0 8px 16px;font-size:16px}
  .compact-options>select{padding:8px;border:0;background:transparent;color:var(--ink);max-width:230px}
  .compact-route{display:grid;grid-template-columns:minmax(180px,1fr) 38px minmax(180px,1fr) auto auto 104px;align-items:center;gap:8px;background:#fff;border-radius:12px;padding:10px;box-shadow:0 3px 8px #19202424;min-height:78px}
  .airport-field{position:relative;min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-height:52px;border:1px solid transparent;border-radius:8px;padding:5px 8px}
  .airport-field:focus-within{border-color:#192024;background:#f9fafb}
  .airport-chips{display:contents}
  .airport-chip{display:flex;align-items:center;gap:8px;background:#eff3f5;border:1px solid var(--line);border-radius:4px;max-width:100%;min-width:0;padding:6px 7px;font-size:15px;line-height:1.3}
  .airport-chip>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px;min-width:0}
  .nearby-chip{border:1px solid #b6d5dc;background:#eaf7f8;border-radius:4px;color:#086880;padding:5px 7px;font-size:12px}
  .airport-remove{background:transparent;border:0;padding:0 3px;font-size:20px;line-height:20px;color:var(--ink)}
  .airport-entry{border:0;background:transparent;outline-offset:0;width:100%;min-width:0;flex:1 1 75px;height:34px;font-size:17px;color:var(--ink)}
  .has-airports .airport-entry{font-size:13px;height:23px;flex-basis:100%}
  .airport-entry::placeholder{color:#62727f;opacity:1}
  .airport-swap{border:1px solid var(--line);background:#eef2f4;border-radius:8px;font-size:25px;width:38px;height:40px;padding:0;line-height:1;color:var(--ink);z-index:1}
  .airport-panel{position:absolute;top:calc(100% + 12px);left:0;width:520px;max-width:calc(100vw - 40px);max-height:520px;overflow:auto;background:#fff;border-radius:12px;box-shadow:0 8px 24px #19202429;padding:20px;z-index:30}
  .nearby-choice{display:flex!important;flex-direction:row-reverse;justify-content:space-between;gap:14px;font-size:17px!important;font-weight:700;padding:13px 10px;background:#f0f3f4;border-radius:8px}
  .nearby-choice input,.compact-search-tail input{width:21px;height:21px;accent-color:#087b9b;flex:none}
  .airport-panel-hint{font-size:13px;color:var(--muted);margin:8px 10px 12px}
  .airport-choice{display:grid;grid-template-columns:28px minmax(0,1fr) 25px;align-items:center;gap:12px;text-align:left;padding:14px 10px;border:0;border-radius:8px;background:white;width:100%;color:var(--ink)}
  .airport-choice .flight-icon{width:20px;height:20px;display:block;fill:currentColor}
  .airport-choice:hover,.airport-choice:focus-visible{background:#e5ebef}
  .airport-choice strong{font-size:16px;font-weight:600}.airport-choice small{display:block;font-size:14px;color:var(--muted);margin-top:3px}
  .airport-tick{border:1px solid #9eafbb;border-radius:4px;text-align:center;font-size:17px;color:#077b9b}
  .airport-select-all{border:0;background:transparent;color:#007f9d;padding:12px 10px;font-weight:600}
  .search-popover{position:relative;min-width:0}
  .search-popover-trigger{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#eff3f5;color:var(--ink);padding:14px 12px;min-height:54px;white-space:nowrap;font-size:16px}
  .search-popover-trigger[aria-expanded=true]{border-color:#192024}
  .search-bags .search-popover-trigger{border:0;min-height:0;padding:8px;background:transparent}
  .search-popover-panel{position:absolute;top:calc(100% + 14px);right:0;width:430px;max-width:calc(100vw - 32px);background:#fff;border-radius:12px;padding:24px;box-shadow:0 8px 24px #19202429;z-index:35}
  .search-bags .search-popover-panel{left:0;right:auto;width:350px}
  .traveler-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;font-size:15px;line-height:1.35}
  .search-stepper{display:flex;align-items:center;gap:12px;flex:none}
  .search-stepper button{border:1px solid #9eafbb;background:#fff;border-radius:4px;width:26px;height:26px;line-height:1;font-size:19px;color:var(--ink);padding:0}
  .search-stepper button:disabled{opacity:.35;cursor:default}.search-stepper output{min-width:14px;text-align:center;font-weight:700}
  .child-ages{display:grid;gap:10px;margin-top:12px}.child-ages:empty{display:none}.child-ages label{justify-content:space-between;font-size:14px}.child-ages select{min-width:76px;padding:8px 10px;background:#fff;border:1px solid #9eafbb;border-radius:8px}
  .cabin-heading{display:block;border-top:1px solid var(--line);margin:24px -24px 12px;padding:20px 24px 0}
  .cabin-buttons{display:flex;gap:6px;flex-wrap:wrap}.cabin-buttons button{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px 12px;color:var(--ink)}
  .cabin-buttons button[aria-pressed=true]{border-color:#192024;background:#f0f3f5}
  .search-note{display:block;color:var(--muted);font-size:12px;margin-top:15px}
  .compact-route>.search-button{background:linear-gradient(110deg,#ff690f,#ef3c18);border-radius:10px;height:56px;padding:0 20px;font-size:16px}
  .compact-search-tail{display:flex;justify-content:flex-end;align-items:center;gap:22px;margin:18px 4px 0;font-size:15px}
  .search-control-label{display:flex;align-items:center;gap:10px}
  .search-dates .search-popover-panel{width:800px;right:-150px}
  .calendar-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}
  .calendar-inputs label{font-size:13px;font-weight:600;justify-content:space-between}
  .calendar-inputs input,.calendar-inputs select,.compact-extra-leg input[type=date],.first-leg-date input{border:1px solid var(--line);padding:8px;border-radius:6px;background:white;color:var(--ink);min-width:0}
  .calendar-inputs input{max-width:160px}.calendar-inputs select{max-width:135px}
  .calendar-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px}.calendar-navigation strong{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .calendar-navigation button{border:0;background:white;font-size:30px;padding:0 10px;color:var(--ink)}
  .calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:-30px;pointer-events:none}.calendar-month{min-width:0;pointer-events:auto}
  .calendar-month h3{text-align:center;font-size:18px;margin:0 35px 24px;pointer-events:none}
  .calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
  .calendar-weekday{text-align:center;font-size:13px;font-weight:700;margin-bottom:12px}
  .calendar-day{border:0;border-radius:5px;background:#edf2f4;color:var(--ink);font-size:16px;font-weight:600;min-height:42px;padding:0}
  .calendar-day:disabled{background:#fff;color:#b0b8bf;cursor:default}.calendar-day:hover:not(:disabled){outline:1px solid #192024;outline-offset:0}
  .calendar-day.price-low{background:#83deb1}.calendar-day.price-middle{background:#ffc779}.calendar-day.price-high{background:#fa9da7}
  .calendar-day.date-selected{background:#192024;color:#fff}.calendar-day.date-in-range{background:#374248;color:#fff;border-radius:0}
  .calendar-price-note{font-size:12px;color:var(--muted);margin-top:18px;max-width:570px;min-height:32px}
  .calendar-done{display:block;margin:8px 0 0 auto;border:0;border-radius:6px;background:#192024;color:#fff;padding:10px 18px}
  .compact-extra-legs{display:grid;gap:8px;margin-top:8px}
  .compact-extra-leg{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto auto 32px;gap:16px;align-items:center;background:#fff;border-radius:12px;box-shadow:0 3px 8px #19202424;padding:10px}
  .compact-extra-leg select{border:0;background:white;color:var(--ink);max-width:140px}.compact-extra-leg .search-control-label,.first-leg-date{flex-direction:column;align-items:flex-start;font-size:12px;gap:3px}
  .remove-flight{border:0;background:transparent;font-size:25px;color:var(--ink)}
  .add-flight,.clear-flights{border:0;background:transparent;color:var(--ink);padding:5px}.add-flight{margin-right:auto}
  .is-multi .compact-route{grid-template-columns:minmax(180px,1fr) 38px minmax(180px,1fr) auto auto 104px}
}
@layer responsive {
  @media(max-width:1150px){.compact-route{grid-template-columns:minmax(140px,1fr) 34px minmax(140px,1fr) auto}.compact-route>.search-dates{grid-row:2;grid-column:1/3}.compact-route>.search-travelers{grid-row:2;grid-column:3}.compact-route>.search-button{grid-row:2;grid-column:4}.compact-route>.airport-field:nth-of-type(2){grid-column:3/5}.search-dates .search-popover-panel{left:0;right:auto}.search-popover-trigger{width:100%}.is-multi .compact-route{grid-template-columns:minmax(140px,1fr) 34px minmax(140px,1fr)}.is-multi .compact-route>.airport-field:nth-of-type(2){grid-column:3}.is-multi .first-leg-date{grid-row:2;grid-column:1}.is-multi .search-travelers{grid-row:2;grid-column:2/4}.is-multi .search-button{grid-row:3;grid-column:1/4}.compact-extra-leg{grid-template-columns:1fr 1fr 28px}.compact-extra-leg>.airport-field:nth-child(2){grid-column:2/4}.compact-extra-leg>.remove-flight{grid-row:2;grid-column:3}}
  @media(max-width:620px){.compact-options{gap:8px;font-size:14px;margin-inline:0}.compact-options>select{max-width:195px;font-size:14px;padding:7px 0}.search-bags .search-popover-trigger{font-size:14px}.compact-route,.is-multi .compact-route{grid-template-columns:minmax(0,1fr) 32px;gap:4px;padding:8px}.compact-route>.airport-field:first-child{grid-column:1;grid-row:1}.compact-route>.airport-field:nth-of-type(2),.is-multi .compact-route>.airport-field:nth-of-type(2){grid-column:1;grid-row:2}.airport-swap{grid-column:2;grid-row:1/3;width:32px}.compact-route>.search-dates{grid-row:3;grid-column:1/3}.compact-route>.search-travelers,.is-multi .compact-route>.search-travelers{grid-row:4;grid-column:1/3}.compact-route>.search-button,.is-multi .compact-route>.search-button{grid-row:5;grid-column:1/3}.airport-chip>span{max-width:235px}.compact-search .airport-panel,.compact-search .search-popover-panel{position:fixed;left:12px;right:12px;top:100px;width:auto;max-width:none;max-height:calc(100dvh - 125px);overflow:auto;padding:18px}.calendar-months{grid-template-columns:1fr;gap:24px}.calendar-month h3{margin-bottom:18px}.calendar-day{min-height:38px}.calendar-inputs{gap:8px}.calendar-inputs label{flex-direction:column;align-items:stretch}.calendar-inputs input{max-width:100%;width:100%;font-size:13px}.calendar-inputs select{max-width:100%;font-size:12px}.traveler-row{font-size:14px;gap:10px}.search-stepper{gap:10px}.compact-search-tail{font-size:14px;gap:12px;flex-wrap:wrap}.compact-extra-leg{grid-template-columns:minmax(0,1fr) 28px;gap:6px}.compact-extra-leg>.airport-field:first-child{grid-column:1;grid-row:1}.compact-extra-leg>.airport-field:nth-child(2){grid-column:1;grid-row:2}.compact-extra-leg>.remove-flight{grid-column:2;grid-row:1/3}.compact-extra-leg>.search-control-label{grid-row:3;grid-column:1}.compact-extra-leg>select{grid-row:4;grid-column:1}.is-multi .first-leg-date{grid-row:3;grid-column:1/3}.header-state{font-size:11px}.cabin-heading{margin-inline:-18px;padding-inline:18px}}
}

.flight-heading{font-size:clamp(1.25rem,2.5vw,1.65rem);line-height:1.3;margin:0 0 16px;color:var(--ink)}

/* Compact traveler groups with explicit, secondary age labels. */
.search-travelers .search-popover-panel{width:430px;padding:20px;max-height:calc(100dvh - 170px);overflow-y:auto}
.search-travelers .traveler-row{margin-top:14px;gap:12px}
.traveler-row>span{display:flex;gap:6px;flex-wrap:wrap;align-items:baseline}
.traveler-age{font-size:13px;color:var(--muted);font-weight:400}
.search-travelers .cabin-heading{margin:18px -20px 12px;padding:16px 20px 0}
.search-travelers .cabin-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.search-travelers .cabin-buttons button{padding:9px 10px;text-align:center}
.search-travelers .search-note{font-size:11px;line-height:1.45;margin-top:12px}
.search-travelers .child-ages{margin-top:10px;padding-left:12px;border-left:2px solid var(--line)}
@media(max-width:620px){.compact-search .search-travelers .search-popover-panel{width:auto;max-width:none;padding:18px;max-height:calc(100dvh - 125px)}.search-travelers .cabin-heading{margin-inline:-18px;padding-inline:18px}.traveler-age{font-size:12px}}

.has-airports .airport-entry{height:34px;flex:1 1 100px;min-width:85px}
.airport-swap{display:flex;align-items:center;justify-content:center;align-self:center;line-height:normal}
.airport-swap .flight-icon{display:block;flex:none;width:22px;height:22px}
@media(max-width:620px){.airport-swap .flight-icon{transform:rotate(90deg)}}

/* Mobile airport selection keeps the search field above a scrollable result list,
   sized to the visible viewport when the software keyboard is open. */
.airport-picker-header{display:none}
@media(max-width:620px){
  body.airport-picker-active{overflow:hidden}
  .compact-search .airport-field.is-picker-open{position:fixed;inset:auto 0 auto 0;top:var(--picker-top,0px);height:var(--picker-height,100dvh);width:100%;max-width:none;min-height:0;z-index:100;display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:10px;padding:12px 16px;border:0;border-radius:0;background:#fff;box-shadow:0 0 24px #19202426;overflow:hidden}
  .is-picker-open .airport-picker-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-height:44px;font-size:17px}
  .airport-picker-done{flex:none;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#eef3f5;color:var(--ink);font-size:16px}
  .is-picker-open .airport-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:78px;overflow-y:auto;flex:0 1 auto;min-height:0}
  .is-picker-open .airport-chips:empty{display:none}
  .compact-search .is-picker-open .airport-entry{flex:none;width:100%;min-width:0;height:48px;font-size:16px;padding:10px 12px;background:#f3f6f7;border:1px solid #62727f;border-radius:8px}
  .compact-search .is-picker-open .airport-panel{position:static;inset:auto;display:block;width:100%;max-width:none;max-height:none;min-height:0;flex:1 1 0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0;border-radius:0;box-shadow:none}
  .is-picker-open .airport-choice{min-height:66px;padding:12px 4px;gap:10px;border-bottom:1px solid var(--line)}
  .is-picker-open .airport-choice strong{font-size:16px;line-height:1.35;overflow-wrap:anywhere}
  .is-picker-open .airport-choice small{font-size:13px;line-height:1.4}
  .is-picker-open .airport-select-all{min-height:44px;padding:12px 4px;text-align:left}
  .is-picker-open .airport-nearby-section{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}
  .is-picker-open .nearby-choice{min-height:48px;font-size:15px!important;margin:0}
  .is-picker-open .airport-panel-hint{font-size:12px;margin:8px 0}
}


.route-details,.route-directory{margin:24px 0;padding:clamp(18px,3vw,32px);background:#fff;border:1px solid #d9e2e8;border-radius:12px;line-height:1.6}.route-details h2,.route-directory h1{margin-top:0}.route-endpoints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.route-endpoints p{margin:4px 0}.route-directory ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:12px;list-style:none;padding:0}.route-directory a{display:block;padding:12px;border:1px solid #d9e2e8;border-radius:8px}.route-details a,.route-directory a{color:#007d98}.route-details a:focus-visible,.route-directory a:focus-visible{outline:2px solid #007d98;outline-offset:3px}@media(max-width:620px){.route-endpoints{grid-template-columns:1fr;gap:12px}}

/* Mobile airport fields keep labels, selections and the input on separate rows. */
@media(max-width:620px){
 .compact-route,.is-multi .compact-route{grid-template-columns:minmax(0,1fr) 44px;column-gap:6px;row-gap:8px}
 .compact-search .airport-field:not(.is-picker-open){display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:4px;padding:8px 4px;min-width:0}
 .airport-field-label{display:block;color:var(--muted);font-size:12px;font-weight:650;line-height:1.25}
 .airport-field:not(.is-picker-open) .airport-chips{display:flex;flex-wrap:wrap;gap:4px;min-width:0}
 .airport-field:not(.is-picker-open) .airport-chips:empty{display:none}
 .airport-field:not(.is-picker-open) .airport-chip{font-size:16px;min-height:44px;padding:0 4px 0 8px;gap:4px}
 .airport-field:not(.is-picker-open) .airport-chip>span{white-space:normal;overflow-wrap:anywhere;max-width:none}
 .airport-field:not(.is-picker-open) .airport-remove{flex:0 0 36px;min-height:44px;padding:0}
 .compact-search .airport-field:not(.is-picker-open) .airport-entry{flex:none;width:100%;min-width:0;height:44px;font-size:16px}
 .airport-swap{width:44px;height:44px}
 .compact-options{flex-wrap:wrap}
 .header-inner{gap:12px;flex-wrap:wrap;padding-block:12px}
 .route-details,.route-directory{overflow-wrap:anywhere}
 .is-picker-open .airport-field-label{display:none}
}
@media(min-width:621px){.airport-field-label{display:none}}
