:root{--ink:#12233f;--muted:#54647b;--blue:#0755b7;--blue-dark:#073572;--line:#dce5ee;--bg:#f4f7fb;--white:#fff;--focus:#f28b29}
@font-face {
  font-family: "BXX DM Sans";
  src: url("/kayak/experience-assets/dm-sans-regular.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "BXX DM Sans";
  src: url("/kayak/experience-assets/dm-sans-bold.woff") format("woff");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "BXX DM Sans";
  src: url("/kayak/experience-assets/dm-sans-extrabold.woff") format("woff");
  font-style: normal;
  font-weight: 800;
  font-display: swap;
}
@font-face {
  font-family: "BXX DM Serif";
  src: url("/kayak/experience-assets/dm-serif-display.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@scope (html) to (.home-copy) {
@layer reset, base, layout, components, responsive;
@layer reset { *,*::before,*::after{box-sizing:border-box} html{font-family:"Segoe UI",Arial,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,body[data-kind=paket] .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,body[data-kind=paket] .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,body[data-kind=paket] .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)}
}
@layer components {
  body[data-kind=flug]{font-family:"Segoe UI",Arial,sans-serif;--ink:#12233f;--muted:#54647b;--line:#dce5ee;--bg:#f4f7fb}
  .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:var(--blue)}.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:var(--blue);border-color:var(--blue);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:#cbdcf3;background:#f4f8fd}.flight-sort button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--blue)}
  .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{position:relative;display:grid;grid-template-columns:minmax(0,1fr);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}
  #results-region:not([aria-busy="true"]) .flight-card:hover{border-color:#8c9fac;box-shadow:0 3px 8px #19202430}.flight-main{padding:8px 20px;min-width:0}
  .flight-topline{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#fafbfd;border-bottom:1px solid var(--line);border-radius:11px 11px 0 0;min-height:46px;grid-row:1}.flight-topline:has(.flight-badges:empty){display:none}
  .flight-icon-actions{display:flex;gap:8px;flex:none;margin-left:auto}.card-icon{display:inline-grid;place-items:center;width:40px;height:40px;padding:9px;border:1px solid #c7d5e3;border-radius:8px;background:#fff;color:var(--blue-dark);cursor:pointer}.card-icon .ui-icon{width:20px;height:20px}.card-icon:hover,.card-icon[aria-pressed=true]{background:#dceafb;color:var(--blue)}
  .flight-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.flight-badges:empty{display:none}.flight-badges span{padding:4px 7px;border:0;border-radius:3px;background:#effaf5;color:#00744a;font-size:12px;font-weight:400;line-height:1.3}
  .flight-leg-heading{display:flex;gap:12px;align-items:baseline;margin:0 0 8px 36px;font-size:13px;color:var(--muted)}.flight-leg-heading strong{color:var(--blue-dark)}.flight-leg+.flight-leg{border-top:1px solid var(--line);margin-top:6px;padding-top:12px}
  .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}#results-region:not([aria-busy="true"]) .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:var(--blue);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 .flight-booking{display:grid;grid-template-columns:minmax(0,1fr) 240px 148px;grid-template-rows:minmax(56px,auto) auto;align-items:center;gap:16px;width:100%;padding:16px 20px;margin:0;border-top:1px solid var(--line);border-radius:0 0 11px 11px;background:#fff;text-align:left;min-width:0}
  .flight-fare-info,.flight-price-info{display:flex;flex-direction:column;gap:5px;min-width:0}.flight-fare-info{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 12px}.flight-fare-info>small{font-size:12px;line-height:1.4;color:var(--muted)}.flight-fare-info>.entity-logo{display:none}
  .flight-price-info .price-line{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.price-line>strong{font-size:24px;font-weight:750;line-height:1.2}.price-line>span{font-size:12px}.flight-price-info .flight-total{order:-1;font-size:17px;font-weight:750;color:var(--ink)}.flight-price-info:has(.flight-total) .price-line>strong{font-size:18px;font-weight:600;color:var(--muted)}
  .flight-card .result-action a{min-width:148px;min-height:46px;margin:0;padding:12px 20px;border-radius:8px;background:var(--blue);color:#fff;font-size:15px;font-weight:700}#results-region:not([aria-busy="true"]) .flight-card .result-action a:hover{background:var(--blue-dark)}
  .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:0;padding:0;width:max-content}.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;left:0;bottom:calc(100% + 12px);top:auto;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-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:100%;list-style:none;font-size:12px;font-weight:650;color:var(--blue);cursor:pointer}.flight-details>summary::-webkit-details-marker{display:none}.flight-details>summary:hover{color:var(--blue)}.flight-detail-content{display:grid;gap:16px;padding:30px;border-top:1px solid var(--line);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:var(--blue);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:var(--blue);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 var(--blue);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:var(--blue);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:var(--blue);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-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-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-leg-row{min-height:44px}}
  @container (max-width:650px){.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>span{font-size:11px}.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 var(--blue)}.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-leg-row{grid-template-columns:20px 35px minmax(0,1fr) 80px;gap:9px;min-height:47px}.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:var(--blue);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{position:relative;z-index:1;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)}
/* Destination experiences share the flight-list width without changing flight counts. */
.flight-experiences{background:#fff;border:1px solid #d7e1e6;border-radius:10px;padding:12px;min-width:0;container:experiences / inline-size}
.flight-experiences h3{margin:0 0 10px;font-size:16px;line-height:1.3;color:#192024}
.flight-experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.flight-experience-card{display:grid;grid-template-columns:64px minmax(0,1fr);align-content:start;gap:4px 8px;color:#192024;text-decoration:none;min-width:0}
.flight-experience-card img{grid-column:1;grid-row:1/5;display:block;width:64px;height:64px;object-fit:cover;border-radius:6px}
.flight-experience-card>strong,.flight-experience-card>small,.flight-experience-card>span{grid-column:2}
.flight-experience-card strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.flight-experience-card small{font-size:12px;color:#586975}
.flight-experience-card .experience-rating,.flight-experience-card .experience-duration{font-size:11px;line-height:1.3;color:#54647b}
.flight-experience-card:not(:has(img)){grid-template-columns:1fr}
.flight-experience-card:not(:has(img))>*{grid-column:1}
.flight-experience-card:hover strong,.experience-more:hover{text-decoration:underline}
.flight-experience-card:focus-visible,.experience-more:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:4px}
.flight-experience-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
.flight-experience-footer small{color:#586975;font-size:11px}
.experience-more{font-size:12px;font-weight:650}
@container experiences (max-width:540px){.flight-experience-grid{grid-template-columns:1fr;gap:10px}.flight-experience-card{grid-template-columns:72px minmax(0,1fr)}.flight-experience-card img{width:72px;height:72px}.flight-experience-card strong{-webkit-line-clamp:2}}


/* 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:1100px){
  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:var(--blue)}.route-details a:focus-visible,.route-directory a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}@media(max-width:1100px){.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}}

/* Shared flight card footer and destination offers adapt to their list width. */
@layer responsive {
  @container (max-width:650px){
    .flight-card{padding:0}.flight-topline{padding:10px 12px;align-items:flex-start}.flight-icon-actions{gap:5px}.flight-badges span{font-size:11px}.card-icon{width:40px;height:40px}
    .flight-main{padding:8px 12px}.flight-leg-heading{margin-left:26px;font-size:12px;gap:8px;flex-wrap:wrap}.flight-leg-row{grid-template-columns:18px 34px minmax(0,1fr) 75px;gap:7px}
    .flight-card .flight-booking{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 12px}.flight-fare-info{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 12px}.flight-price-info .flight-total{font-size:16px}.flight-price-info:has(.flight-total) .price-line>strong{font-size:15px}.flight-card .result-action a{min-width:120px;padding:12px}
    .flight-card .flight-details>summary{padding:10px 12px;min-height:44px}.baggage-popover{left:0;right:auto;top:auto;bottom:calc(100% + 10px);width:min(325px,calc(100vw - 52px))}
  }
  .flight-details>summary::after{content:'⌄';float:right}.flight-details[open]>summary::after{content:'⌃'}.flight-details>summary span{font-weight:400;color:var(--muted);margin-left:10px}
  .compact-route>.search-button:hover,body[data-kind=flug] .search-button:hover{background:var(--blue-dark)}
}

@layer components {
  .quality-icon.is-unavailable{position:relative;color:#66778a}.quality-icon.is-unavailable::after{content:'';position:absolute;inset:50% -2px auto;height:2px;background:currentColor;transform:rotate(-45deg)}.quality-icon.is-partial{border-bottom:2px dotted currentColor}.quality-details p strong{font-weight:650}
}

@layer components {
  .flight-providers{grid-column:1/-1;min-width:0;min-block-size:77px;border-top:1px solid var(--line);padding:8px 20px 16px;margin:0 -20px -16px;background:#fff;border-radius:0 0 11px 11px}.flight-providers.provider-empty{visibility:hidden}
  .provider-label{font-size:12px;font-weight:650;color:var(--blue-dark);white-space:nowrap}
  .provider-count{display:inline-block;font-size:11px;color:var(--muted);margin-left:4px}
  .provider-logos{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;min-width:0;overflow-x:auto;scrollbar-width:thin;padding-block:4px;flex:1}.provider-logos>img,.provider-logos>.provider-logo-fallback{flex:none}
  .provider-details{width:100%;min-width:0}
  .provider-details>summary{display:flex;align-items:center;gap:16px;height:52px;padding:4px 0;font-size:12px;line-height:1.3;cursor:pointer;list-style:none}
  .provider-details>summary::-webkit-details-marker{display:none}
  .provider-logos img{width:58px;height:24px;object-fit:contain}
  .provider-logo-fallback{font-size:11px;color:var(--muted)}
  .provider-chevron{margin-left:auto;color:var(--blue);flex:none}
  .provider-details[open]>summary .provider-chevron{transform:rotate(180deg)}
  .provider-list{padding-top:8px;min-width:0}
  .provider-details:not([open])>.provider-list{display:none}
  .provider-group{min-width:0;border-top:1px solid var(--line)}
  .flight-card .flight-booking .provider-offer{display:grid;grid-template-columns:minmax(130px,1fr) minmax(90px,1fr) auto minmax(110px,auto);align-items:center;gap:18px;min-width:0;width:100%;padding:12px 6px;margin:0;background:transparent;color:var(--ink);border:0;border-radius:0;font-size:13px;font-weight:400;white-space:normal;text-decoration:none;text-align:left}
  #results-region:not([aria-busy="true"]) .flight-card .flight-booking a.provider-offer:hover{background:#e8f0fb}
  .flight-card .flight-booking a.provider-offer:focus-visible{outline-offset:-3px;background:#e8f0fb}
  .flight-card .flight-booking .provider-offer+.provider-offer{border-top:1px solid var(--line)}
  .provider-brand{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:650;overflow-wrap:anywhere}
  .provider-brand img{width:58px;height:28px;object-fit:contain;flex:none}
  .provider-fare{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
  .provider-price{text-align:right;line-height:1.4;font-variant-numeric:tabular-nums}
  .provider-price>strong{font-size:16px}.provider-price>small{display:block;font-size:11px}
  .provider-bags{display:flex;gap:12px;align-items:center;padding-right:3px}
  .provider-bag{display:inline-flex;position:relative;padding:3px 5px 5px 0;color:#465768}
  .provider-bag .ui-icon{width:20px;height:22px}
  .provider-bag b{position:absolute;bottom:0;right:-2px;background:#edf1f6;color:#465768;border:1px solid #fff;border-radius:50%;width:14px;height:14px;text-align:center;font:700 10px/12px system-ui}
  .provider-bag.included b{background:#137649;color:#fff}
}
@layer responsive {
  @container(max-width:850px){.flight-card .flight-booking .provider-offer{gap:12px;grid-template-columns:minmax(120px,1fr) minmax(70px,1fr) auto minmax(90px,auto)}.provider-brand{gap:6px}.provider-brand img{width:46px}}
  @container(max-width:650px){
    .provider-details>summary{flex-wrap:wrap;align-content:center;gap:4px;height:80px}.provider-logos{order:2;flex-basis:100%;gap:12px;min-height:40px}.flight-providers{min-block-size:103px;margin:0 -12px -14px;padding:8px 12px 14px}.provider-logos img{width:48px;height:24px}
    .flight-card .flight-booking .provider-offer{grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:12px 0}
    .provider-brand{grid-column:1;gap:8px}.provider-brand img{width:44px}
    .provider-fare{grid-column:1;grid-row:2}.provider-bags{grid-column:1;grid-row:3}.provider-price{grid-column:2;grid-row:1/4}
  }
}



/* Stable collapsed slots across progressive results; opened details grow naturally. */
@layer components {
  .flight-card{min-block-size:calc(272px + var(--flight-leg-count, 2) * 104px);grid-template-rows:auto minmax(0,1fr) auto auto}
  .flight-main{grid-row:2;display:flex;flex-direction:column;justify-content:center}

  .flight-card>.flight-booking{grid-row:3}
  .flight-select-action{display:flex;align-items:center;justify-content:center;min-height:46px;text-align:center}
}
@layer responsive {
  @container(max-width:650px){
    .flight-card{min-block-size:calc(420px + var(--flight-leg-count, 2) * 110px)}
    .flight-card .flight-booking{grid-template-columns:minmax(0,1fr) 120px;grid-template-rows:minmax(30px,auto) minmax(68px,auto) auto}
    .flight-fare-info{grid-row:1}.flight-price-info{grid-row:2}.flight-booking>.flight-select-action,.flight-booking>a{grid-row:2}.flight-providers{grid-row:3}
    .flight-topline{padding:8px 12px}
  }
}

@layer responsive{@container(max-width:350px){.flight-card{min-block-size:calc(480px + var(--flight-leg-count, 2) * 110px)}}}

@layer components{.selected-provider{display:inline-flex;align-items:center;gap:6px;min-width:0}.selected-provider img{width:58px;height:24px;object-fit:contain}.selected-provider small{font-size:12px;color:var(--muted)}}

@layer components {
 .flight-card .flight-select-action{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:var(--blue);color:#fff;font:inherit;font-size:14px;font-weight:750;min-height:44px;height:44px;width:144px;max-width:100%;align-self:flex-end;justify-self:end;margin:0;padding:10px 18px;white-space:nowrap;text-decoration:none}
 .flight-select-action:disabled{cursor:wait;opacity:1}
 .flight-duration{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:0;align-self:center}
 .flight-duration>strong{font-size:inherit;white-space:nowrap}
 .leg-baggage{display:inline-flex;align-items:center;gap:8px;min-height:28px}
 .leg-baggage .provider-bag{width:26px;height:26px}
 .fare-price-details{font-size:12px;color:var(--blue)}
}
@layer responsive {
 @container(min-width:801px){.flight-leg-row{grid-template-columns:24px 54px minmax(0,1.8fr) minmax(83px,.8fr) minmax(160px,1fr)}}
 @container(max-width:650px){.flight-duration{align-self:end;flex-direction:column;align-items:flex-start;gap:5px;padding-top:20px}.flight-leg-row{min-height:78px}.flight-metrics{padding-top:0}.flight-schedule{align-self:center}}
}

@layer components{#results-region[aria-busy="true"] .flight-card .result-action a:hover{background:var(--blue)}#results-region[aria-busy="true"] .flight-card .provider-offer:hover{background:transparent}}

@layer responsive {
 #results-region:not([aria-busy="true"]) .flight-card:has(.provider-empty){min-block-size:0;grid-template-rows:auto auto auto auto}
 #results-region:not([aria-busy="true"]) .flight-providers.provider-empty{display:none}
 #results-region:not([aria-busy="true"]) .flight-booking:has(.provider-empty){grid-template-rows:none}
}

@layer components{.flight-fare-info>.offer-fare,.selected-provider,.baggage-trigger{display:inline-flex;align-items:center;min-height:30px;line-height:1.4}.baggage-summary{align-items:center}.selected-provider .provider-logo-fallback{font-size:12px}}

@layer components {
 .flight-leg:has(.baggage-trigger[aria-expanded=true]){z-index:3}
 .leg-baggage .baggage-trigger{gap:8px}
 .leg-baggage .baggage-popover{left:auto;right:0;top:calc(100% + 8px);bottom:auto;max-block-size:min(320px,70vh);overflow:auto;white-space:normal;font-size:13px;font-weight:400}
 .leg-baggage .baggage-popover h4{font-size:16px;margin:0 0 12px}
 .leg-baggage .baggage-popover p,.leg-baggage .baggage-popover p strong{font-size:13px}
 .leg-baggage-fare{color:var(--muted);font-size:12px}
}
@layer responsive{@container(max-width:650px){.leg-baggage .baggage-popover{left:auto;right:0;top:calc(100% + 8px);bottom:auto;width:min(300px,calc(100vw - 64px))}}}

/* Fare and booking price form one group; itinerary details expand below it. */
@layer components {
 .flight-card .flight-booking{grid-template-columns:minmax(0,1fr) minmax(240px,auto) 148px;grid-template-rows:auto auto auto}
 .flight-detail-toggle{display:none}
 .flight-ui-ready .flight-detail-toggle{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-height:44px;padding:0;border:0;background:transparent;color:var(--blue);font:inherit;font-size:12px;font-weight:650;text-align:left;cursor:pointer}
 .flight-detail-toggle>span:not(.flight-detail-chevron){font-weight:400;color:var(--muted)}
 .flight-detail-toggle[aria-expanded=true] .flight-detail-chevron{transform:rotate(180deg)}
 .flight-ui-ready .flight-details>summary{display:none}
 .flight-ui-ready .flight-details:not([open]){display:none}
 .flight-booking>.flight-details{grid-column:1/-1;grid-row:2}
 .flight-booking>.flight-providers{grid-row:3}
 .flight-price-info .price-line{order:0}
 .flight-price-info .price-line>strong,.flight-price-info:has(.flight-total) .price-line>strong{font-size:24px;font-weight:750;color:var(--ink)}
 .flight-price-info .flight-total{order:1;border-top:1px solid var(--line);padding-top:5px;font-size:12px;font-weight:400;color:var(--muted)}
 .fare-provider{order:2;display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;min-height:24px}
 .fare-provider .offer-fare{font-size:12px;color:var(--muted)}
 .fare-provider .selected-provider{min-height:24px}
 .flight-duration{justify-content:space-between;flex-wrap:nowrap;gap:24px}
 .leg-baggage{margin-left:auto;flex:none}
}
@layer responsive {
 @container(max-width:650px){
  .flight-card .flight-booking{grid-template-columns:minmax(0,1fr) 120px;grid-template-rows:auto auto auto auto}
  .flight-booking>.flight-details{grid-row:3}.flight-booking>.flight-providers{grid-row:4}
  .flight-price-info .price-line>strong,.flight-price-info:has(.flight-total) .price-line>strong{font-size:22px}
  .flight-duration{align-items:flex-end;gap:10px}.leg-baggage{margin-left:0}
 }
}

@layer components {
 .flight-journey{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;min-width:0}
 .flight-journey>strong{font-size:12px;font-weight:500;white-space:nowrap}
 .flight-journey>small{font-size:11px;color:var(--muted);line-height:1.35}
 .flight-stop-names{display:block}
 .flight-route-line{position:relative;display:flex;align-items:center;justify-content:space-evenly;width:100%;max-width:150px;height:1px;background:#8b99a5;margin:3px 0}
 .flight-route-line:after{content:"";position:absolute;right:-1px;top:-3px;border-left:6px solid #8b99a5;border-top:3px solid transparent;border-bottom:3px solid transparent}
 .flight-baggage-cell{justify-content:flex-end;min-width:64px;padding-left:18px}
 .flight-leg-row .flight-schedule>small{display:block;white-space:normal;line-height:1.4}
}
@layer responsive {
 @container(min-width:651px){.flight-leg-row{grid-template-columns:24px 54px minmax(0,1fr) minmax(115px,.75fr) minmax(0,1fr) 82px;gap:16px}.flight-departure{grid-column:3}.flight-journey{grid-column:4}.flight-arrival{grid-column:5}.flight-baggage-cell{grid-column:6}}
 @container(max-width:650px){
  .flight-leg-row{grid-template-columns:20px 34px minmax(0,1fr) minmax(0,1fr);gap:10px}
  .flight-departure{grid-column:3;grid-row:1}.flight-arrival{grid-column:4;grid-row:1}
  .flight-journey{grid-column:3;grid-row:2;align-items:flex-start;text-align:left}
  .flight-baggage-cell{grid-column:4;grid-row:2;padding:0;align-self:center}
  .flight-route-line{max-width:110px}.flight-leg-heading{margin-left:64px}
 }
}

@layer components{.flight-route-line>i{display:block;width:7px;height:7px;border:1px solid #8b99a5;background:#fff;border-radius:50%;flex:none}.flight-sort button:disabled{cursor:default;opacity:1}}

@layer components {
 .flight-route-line{height:22px;position:relative;background:linear-gradient(#8b99a5,#8b99a5) center/100% 1px no-repeat;justify-content:center;margin:0}
 .flight-route-line:before,.flight-route-line:after{content:"";position:absolute;top:8px;width:6px;height:6px;border:1px solid #637380;border-radius:50%;background:#fff}
 .flight-route-line:before{left:0}.flight-route-line:after{right:0}
 .journey-stops{position:relative;z-index:1;padding:2px 7px;border:1px solid #c8d2dc;border-radius:3px;background:#fff;color:var(--ink);font-size:11px;line-height:16px;white-space:nowrap}
 .journey-stops.is-direct{background:#00863d;border-color:#00863d;color:#fff}
 .flight-journey{gap:3px}.flight-journey>.journey-duration{color:var(--ink)}
}

/* Price beside the itinerary; disclosures remain full width below. */
@layer components {
 .flight-overview{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) max-content;min-width:0;align-items:stretch}
 .flight-overview>.flight-main{grid-row:auto;grid-column:1;justify-content:center;padding-bottom:14px}
 .flight-price-panel{grid-column:2;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:16px;padding:20px;border-left:1px solid var(--line);min-width:0}
 .flight-price-panel .flight-price-info{text-align:right;align-items:stretch}
 .flight-price-panel .offer-fare{max-width:180px;overflow-wrap:anywhere}
 .flight-price-panel .price-line,.flight-price-panel .fare-provider{justify-content:flex-end}
 .flight-price-panel .flight-total{line-height:1.5}
 .flight-card .flight-booking{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:0;padding:0 20px 0;background:#fff}
 .flight-booking>.flight-fare-info{grid-column:1/-1;grid-row:1;min-height:48px}
 .flight-booking>.flight-details{grid-column:1/-1;grid-row:2}
 .flight-booking>.flight-providers{grid-column:1/-1;grid-row:3;margin:0}
 #results-region:not([aria-busy="true"]) .flight-card{min-block-size:0;grid-template-rows:auto auto auto}
}
@layer responsive {
 @container(max-width:850px){
  .flight-overview{grid-template-columns:minmax(0,1fr)}
  .flight-overview>.flight-main{grid-column:1}
  .flight-price-panel{grid-column:1;display:grid;grid-template-columns:minmax(0,1fr) 144px;align-items:center;border-left:0;border-top:1px solid var(--line);padding:14px 16px;gap:16px}
  .flight-price-panel .flight-price-info{grid-row:auto;text-align:left}.flight-price-panel .price-line,.flight-price-panel .fare-provider{justify-content:flex-start}
 }
 @container(max-width:650px){
  .flight-card .flight-booking{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;padding:0 12px}
  .flight-booking>.flight-fare-info{grid-row:1}.flight-booking>.flight-details{grid-row:2}.flight-booking>.flight-providers{grid-row:3}
  .flight-price-panel{grid-template-columns:minmax(0,1fr) 120px;padding:14px 12px;gap:12px}
 }
}

@layer components {
 .flight-price-panel .flight-price-info{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;align-items:start}
 .flight-price-panel .price-line{grid-column:1;grid-row:1;justify-content:flex-end}
 .flight-price-panel .flight-total{grid-column:1;grid-row:2;border:0;padding:0;white-space:nowrap}
 .flight-price-panel .fare-provider{grid-column:1;grid-row:3;flex-direction:column;align-items:flex-end;justify-content:flex-start;text-align:right;gap:8px}
 .booking-baggage .baggage-trigger{gap:9px}
 .booking-baggage .baggage-popover{left:auto;right:-100px;top:calc(100% + 8px);bottom:auto;max-height:min(360px,70vh);overflow:auto;font-size:12px}
 .booking-baggage .baggage-popover h4{font-size:14px;margin:0 0 8px}.booking-baggage .baggage-popover p,.booking-baggage .baggage-popover p strong{font-size:12px}
 .booking-baggage .baggage-popover section+section{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}
}
@layer responsive {
 @container(min-width:651px){.flight-leg-row{grid-template-columns:24px 44px minmax(0,1fr) minmax(105px,.9fr) minmax(0,1fr);gap:12px}}
 @container(max-width:850px){.flight-overview{grid-template-columns:minmax(0,1fr)}.flight-price-panel .flight-price-info{grid-template-columns:minmax(0,1fr)}}
 @container(max-width:650px){.flight-price-panel{grid-template-columns:minmax(0,1fr)}.flight-price-panel .flight-select-action{justify-self:end;width:144px}.flight-price-panel .flight-price-info{grid-template-columns:minmax(0,1fr)}.booking-baggage .baggage-popover{left:0;right:auto;width:min(300px,calc(100vw - 52px))}}
}

@layer responsive {
 #results-region:not([aria-busy="true"]) .flight-card{min-block-size:0;grid-template-rows:auto auto auto}
 @container(max-width:650px){#results-region[aria-busy="true"] .flight-card{min-block-size:calc(500px + var(--flight-leg-count,2)*120px)}}
 @container(max-width:350px){#results-region[aria-busy="true"] .flight-card{min-block-size:calc(560px + var(--flight-leg-count,2)*120px)}}
}

@layer components {
 .price-help{position:relative;display:inline-block;margin-left:4px;text-align:left;font-weight:400;vertical-align:middle}
 .price-help>summary{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;font-size:12px;line-height:1;cursor:pointer;list-style:none;color:var(--muted)}
 .price-help>summary::-webkit-details-marker{display:none}
 .price-popover{position:absolute;right:0;top:calc(100% + 10px);z-index:20;width:320px;max-width:calc(100vw - 48px);padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 24px #10284626;color:var(--ink);font-size:13px;text-align:left}
 .price-popover h3{font-size:18px;margin:0 30px 16px 0}.price-popover>strong{font-size:13px}
 .price-popover p,.price-breakdown-total{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin:12px 0 0}
 .price-popover p span{font-size:13px}
 .price-breakdown-total{border-top:1px solid var(--line);padding-top:12px}.price-breakdown-total strong{font-size:16px;white-space:nowrap}
 .price-info-close{position:absolute;right:9px;top:9px;width:28px;height:28px;padding:0;border:1px solid var(--line);background:#fff;border-radius:3px;color:var(--blue);font-size:22px;line-height:1;cursor:pointer}
 .flight-card:has(.price-help[open]),.flight-card:has(.baggage-trigger[aria-expanded=true]){z-index:4}
}

@layer components{.flight-badges .badge-best{background:#eef4ff;color:#0055b8}.flight-topline{background:#fff;border-bottom:0}}

@layer components{.flight-price-panel .flight-price-info .flight-total{font-size:16px;font-weight:700;line-height:1.4}}

/* Use the mode of the returned search, independent of later form edits. */
@layer components {
 .results-area[data-trip-mode="multicity"] .booking-baggage,
 .results-area[data-trip-mode="multicity"] .provider-bags{display:none}
}
/* Every Multi-Stopp row shares the same airport and date columns. */
@layer responsive {
 @media(min-width:1151px){
  .is-multi .compact-route,.is-multi .compact-extra-leg{grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr) 134px 144px 104px;gap:8px;padding:10px;min-height:78px}
  .is-multi .compact-extra-leg>.airport-field:first-child{grid-column:1}
  .is-multi .compact-extra-leg>.airport-field:nth-child(2){grid-column:3}
  .is-multi .compact-extra-leg>.search-control-label{grid-column:4}
  .is-multi .compact-extra-leg>select{grid-column:5;max-width:100%}
  .is-multi .compact-extra-leg>.remove-flight{grid-column:6;justify-self:end}
  .is-multi .first-leg-date,.is-multi .compact-extra-leg>.search-control-label{min-width:0;width:100%}
  .is-multi .first-leg-date input,.is-multi .compact-extra-leg input[type=date]{width:100%;box-sizing:border-box}
 }
 @media(min-width:621px) and (max-width:1150px){
  .is-multi .compact-route,.is-multi .compact-extra-leg{grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:8px;padding:10px}
  .is-multi .compact-extra-leg>.airport-field:first-child{grid-row:1;grid-column:1}
  .is-multi .compact-extra-leg>.airport-field:nth-child(2){grid-row:1;grid-column:3}
  .is-multi .compact-extra-leg>.search-control-label{grid-row:2;grid-column:1}
  .is-multi .compact-extra-leg>select{grid-row:2;grid-column:3}
  .is-multi .compact-extra-leg>.remove-flight{grid-row:3;grid-column:3;justify-self:end}
  .is-multi .search-travelers{grid-column:3}
 }
 @container(max-width:850px){
  .flight-price-panel .fare-provider{align-items:flex-start;text-align:left}
 }
 @media(max-width:620px){.is-multi .compact-extra-leg{padding:8px}}
}

/* Supplied details stay attached to their segment and wrap on narrow cards. */
@layer components {
.segment-flight-head{flex-wrap:wrap}.segment-cabin,.segment-operator{font-size:12px;color:var(--muted)}.segment-operator{margin:0 0 14px;overflow-wrap:anywhere}.segment-note{display:inline-block;padding:3px 7px;border-radius:3px;background:#eef2f5;font-size:12px;font-weight:600;color:var(--ink)}.quality-details>summary{flex-wrap:wrap;max-width:100%;row-gap:7px}.quality-details p>span:last-child{min-width:0;overflow-wrap:anywhere}.quality-details p small{display:block;margin-top:3px;color:var(--muted)}
}

/* Actual search phases advance the track; motion marks the active phase. */
.result-progress{height:auto;min-height:22px;margin:0 0 12px;padding:6px 0;background:transparent;font-size:13px;color:var(--muted)}
.search-progress{margin:0 0 18px;padding:0;color:var(--ink);font-size:13px;line-height:1.4}
.search-progress-label{min-height:20px;margin-bottom:8px;font-weight:600}
.search-progress-track,.search-progress-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.search-progress-track i{position:relative;display:block;height:5px;overflow:hidden;border-radius:3px;background:#dce5ef;transition:background .3s}
.search-progress-track i[data-state="done"]{background:var(--blue)}
.search-progress-track i[data-state="active"]{background:#9dbde8}
.search-progress-track i[data-state="active"]::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,var(--blue),transparent);animation:search-phase-flow 1.1s linear infinite}
.search-progress-steps{margin-top:5px;font-size:11px;color:var(--muted)}
.search-progress[data-phase="4"] .search-progress-track i{background:#298457}
.search-progress[data-stopped="true"] .search-progress-track i{background:#96a5b5}
@keyframes search-phase-flow{to{transform:translateX(100%)}}
@media(prefers-reduced-motion:reduce){.search-progress-track i[data-state="active"]::after{animation:none;transform:none;background:var(--blue)}}
.baggage-trigger:not([aria-expanded="true"]) + .baggage-popover{display:none}

.fare-features{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;font-size:12px;text-align:left}
.fare-features>summary{cursor:pointer;font-weight:650;padding:6px 0}
.fare-feature-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;margin:0;padding:12px;font-size:12px;line-height:1.45;background:#fff;border:1px solid var(--line);border-radius:8px;min-width:0;overflow-wrap:anywhere}
.fare-feature-group+.fare-feature-group{margin-top:8px}
.flight-card .fare-feature-group>strong{grid-column:1/-1;font-size:12px;font-weight:650;line-height:1.45;white-space:normal}
.fare-feature-group>span{display:block;min-width:0}
.provider-entry{width:100%;min-width:0;border-top:1px solid var(--line);padding:2px 0 8px}
.provider-conditions{font-size:12px;text-align:left;min-width:0}
.provider-conditions>summary{width:fit-content;max-width:100%;cursor:pointer;color:var(--blue);padding:5px 6px;font-size:12px;font-weight:500;overflow-wrap:anywhere}
.provider-conditions[open]>summary{margin-bottom:5px}
.provider-fare-features{padding:0 6px 6px;min-width:0}
@media(max-width:620px){.fare-feature-group{grid-template-columns:1fr;padding:10px}.search-progress-steps{font-size:10px}}

/* The open section stays visibly selected independently of keyboard focus. */
@layer components {
  .flight-ui-ready .flight-detail-toggle{width:100%;padding-inline:12px;border-radius:6px}
  .provider-details>summary{padding-inline:12px;border-radius:6px}
  .flight-ui-ready .flight-detail-toggle[aria-expanded=true],
  .flight-details[open]>summary,
  .provider-details[open]>summary{background:#e8f1ff;color:var(--blue);box-shadow:inset 3px 0 0 var(--blue)}
  .flight-detail-toggle[aria-expanded=true]>span:not(.flight-detail-chevron){color:var(--blue)}
}

/* Flight-specific extras: compact progressive disclosure, separate from flight details. */
@layer components {
.trip-combination{border-top:1px solid #cee3e3;background:#f5fbfa;font-size:13px;min-width:0;container-type:inline-size;border-radius:0 0 12px 12px}
.trip-combination>summary{display:flex;align-items:center;gap:24px;padding:20px 28px;cursor:pointer;list-style:none;color:#092347;min-height:100px}
.trip-combination>summary::-webkit-details-marker{display:none}
.trip-combination>summary strong{font-size:clamp(17px,1.65cqi,24px);line-height:1.3}
.trip-combination-icons{display:flex;align-items:center;gap:20px;color:#1673f9;flex-shrink:0}
.trip-combination-icons svg{width:32px;height:32px}
.trip-combination-copy{display:grid;gap:4px;min-width:0}
.trip-combination-hint{color:#557392;font-size:clamp(13px,1.3cqi,19px)}
.trip-combination-action{display:flex;align-items:center;justify-content:center;gap:14px;margin-left:auto;flex-shrink:0;min-height:54px;padding:10px 22px;border:1.5px solid #287cff;border-radius:14px;background:#fff;color:#1673f9;font-size:clamp(15px,1.5cqi,22px);font-weight:750;line-height:1.3}
.trip-combination-close-label{display:none}
.trip-combination-chevron{display:flex;transition:transform .25s}
.trip-combination-chevron>.ui-icon{width:24px;height:24px}
.trip-combination:not([open])>summary:hover .trip-combination-action{background:#eef5ff}
.trip-combination[open]>summary{background:#e0f1ee;box-shadow:inset 3px 0 #187470}
.trip-combination[open] .trip-combination-chevron{transform:rotate(180deg)}
.trip-combination-content{padding:16px 20px;min-width:0}
.trip-tabs{display:flex;gap:8px;margin-bottom:12px}
.trip-button,.trip-search{border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--blue);padding:9px 12px;min-height:40px;font-size:12px;font-weight:650;cursor:pointer;line-height:1.3}
.trip-tabs .trip-button[aria-pressed=true],.trip-offer .trip-button[aria-pressed=true]{background:#e0f1ee;color:#155d61;border-color:#187470}
.trip-button:disabled,.trip-search:disabled{opacity:.6;cursor:wait}
.trip-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}
.trip-field{display:grid;gap:5px;font-size:12px;min-width:0}
.trip-field input,.trip-field select{width:100%;min-width:0;max-width:100%;border:1px solid #b8c8d7;border-radius:6px;background:#fff;padding:9px;font:inherit;color:var(--ink);min-height:40px}
.trip-field:has([name=term]),.trip-place-select{grid-column:span 2}
.trip-field-note{grid-column:1/-1;font-size:11px;color:var(--muted);margin:0;line-height:1.5}
.trip-search{grid-column:1/-1;justify-self:end;background:var(--blue);color:#fff;border-color:var(--blue)}
.trip-status{font-size:12px;color:var(--muted);margin:12px 0;min-height:0}
.trip-status:empty{display:none}
.trip-status[data-loading=true]::before{content:'';display:inline-block;width:10px;height:10px;border:2px solid #c4d5e9;border-top-color:var(--blue);border-radius:50%;margin-right:8px;animation:trip-spin 1s linear infinite}
.trip-offers{display:grid;gap:8px}
.trip-offer{display:grid;grid-template-columns:80px minmax(0,1fr) minmax(130px,auto);gap:12px;align-items:center;padding:12px;background:#fff;border:1px solid var(--line);border-radius:8px;min-width:0;animation:trip-arrive .4s ease-out}
.trip-offer[data-selected=true]{border-color:#187470;box-shadow:inset 3px 0 #187470}
.trip-offer>img{width:80px;height:72px;object-fit:cover;border-radius:5px}
.trip-offer:not(:has(>img)) .trip-offer-copy{grid-column:1/3}
.trip-offer-copy{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}
.trip-offer-copy>strong{font-size:13px;line-height:1.4}
.trip-offer small{font-size:11px;line-height:1.45;color:var(--muted)}
.trip-offer-price{display:grid;gap:5px;justify-items:end;text-align:right;max-width:170px}
.trip-offer-price>strong{font-size:16px;white-space:nowrap}
.trip-more{justify-self:center}
.trip-selection:empty{display:none}
.trip-selection{font-size:13px;min-width:0}
.trip-selection>small{display:block;color:var(--muted);line-height:1.5}
.trip-combination :is(button,input,select,summary,a):focus-visible{outline:3px solid #147c83;outline-offset:3px}
@container(max-width:650px){.trip-form{grid-template-columns:repeat(2,minmax(0,1fr))}.trip-combination>summary{flex-wrap:wrap;gap:12px;padding:16px}.trip-combination-icons{gap:12px}.trip-combination-icons svg{width:26px;height:26px}.trip-combination-copy{flex:1}.trip-combination-action{width:100%;min-height:44px;padding:10px 14px;border-radius:10px}}
@container(max-width:430px){.trip-combination-content{padding:12px}.trip-combination>summary{padding:12px}.trip-offer{grid-template-columns:64px minmax(0,1fr);gap:10px}.trip-offer>img{width:64px;height:64px}.trip-offer:not(:has(>img)) .trip-offer-copy{grid-column:1/-1}.trip-offer-price{grid-column:1/-1;max-width:none;width:100%;grid-template-columns:1fr auto;text-align:left;justify-items:start;align-items:center}.trip-offer-price>small{grid-column:1;grid-row:2}.trip-offer-price>button{grid-column:2;grid-row:1/3}.trip-search{width:100%}}
@keyframes trip-spin{to{transform:rotate(360deg)}}
@keyframes trip-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.trip-offer,.trip-status[data-loading=true]::before{animation:none}.trip-combination-chevron{transition:none}}
}
@layer components {
.trip-actions{display:flex;gap:10px;flex-wrap:wrap}
.trip-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:20px;border:1px solid var(--line);border-radius:12px;background:#f5fbfa;color:var(--ink);box-shadow:0 14px 60px #11263c40;font-size:13px;overflow:auto;overscroll-behavior:contain;container-type:inline-size}
.trip-dialog::backdrop{background:#10263c80}
.trip-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}
.trip-dialog-heading>strong{font-size:16px}
.trip-dialog-heading>.trip-button{flex-shrink:0}
@media(max-width:620px){.trip-dialog{width:100%;max-width:100%;max-height:100dvh;height:100dvh;border-radius:0;padding:16px}.trip-dialog-heading{position:sticky;top:-16px;background:#f5fbfa;padding:12px 0;z-index:1}}
}
@layer components {
.flight-card>.trip-combination{grid-column:1/-1;grid-row:4}
}
@layer components {
.trip-offer{grid-template-columns:112px minmax(0,1fr) minmax(135px,auto);align-items:start}
.trip-offer>img{width:112px;height:100px}
.trip-offer[data-kind=car]>img{object-fit:contain;background:#f4f7fa}
.trip-stars{font-size:13px;letter-spacing:1px;color:#916c15}
.trip-rating{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}
.trip-rating>b{display:inline-block;padding:3px 5px;background:#e0f1ee;color:#155d61;border-radius:4px;font-size:12px}
.trip-facts{display:flex;flex-wrap:wrap;gap:4px 8px}
.trip-facts>small{display:block;border-radius:3px;background:#f3f6f9;padding:2px 5px}
.trip-provider{display:flex;align-items:center;gap:6px;margin-top:4px}
.trip-provider>img{max-width:65px;max-height:20px;object-fit:contain}
.trip-offer-price{align-self:center}
@container(max-width:430px){.trip-offer{grid-template-columns:80px minmax(0,1fr)}.trip-offer>img{width:80px;height:80px}.trip-offer-price>strong{font-size:15px}}
}

@layer components {
.trip-dialog-heading{position:sticky;top:-20px;background:#f5fbfa;padding-block:8px;z-index:1}
.trip-preview-note{font-size:11px;line-height:1.45;color:var(--muted);margin:0 0 12px}
@media(max-width:620px){.trip-dialog-heading{top:-16px}}
}
@layer components {
.trip-combination[data-has-selection=true]{background:linear-gradient(110deg,#e5f5f4,#eff9fa)}
.trip-actions[hidden]{display:none}
.trip-selection-heading{display:flex;align-items:center;gap:20px;margin:2px 0 18px;color:#10294b}
.trip-heading-icon{width:46px;flex-shrink:0}.trip-heading-icon svg{width:100%;height:46px}
.trip-selection-heading h3{margin:0 0 5px;font-size:clamp(22px,2.1cqi,32px);line-height:1.2;letter-spacing:-.4px}
.trip-selection-heading p{margin:0;color:#4b6281;line-height:1.6}.trip-selection-heading p strong{color:#10294b;font-size:16px}
.trip-arrival-note{display:inline-block;margin-left:18px;padding-left:18px;border-left:1px solid #9bb8cc}
.trip-selected-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.trip-selected-card{display:grid;grid-template-columns:minmax(110px,33%) minmax(0,1fr);gap:16px;padding:14px;border:1px solid #cfe0ec;border-radius:15px;background:white;min-width:0}
.trip-selected-media{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f1f5f8;border-radius:9px;overflow:hidden;min-height:170px;align-self:stretch}
.trip-selected-media>img{width:100%;height:100%;max-height:290px;object-fit:cover}.trip-selected-card[data-kind=car] .trip-selected-media>img{object-fit:contain}
.trip-selected-media>img[src$="/rimg/affiliate/sandbox.png"]{object-fit:contain}
.trip-selected-media>svg{width:48px;height:48px;color:#72899c}.trip-selected-media>small{padding:8px;text-align:center;color:#4b6281}
.trip-selected-copy{min-width:0;display:flex;flex-direction:column;gap:6px}.trip-selected-label{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;color:var(--blue);font-size:11px;font-weight:700}.trip-selected-label>span:first-child{text-transform:uppercase;letter-spacing:.6px}
.trip-selected-badge{color:#007e75;white-space:nowrap}.trip-selected-copy h4{font-size:17px;line-height:1.3;margin:0;color:#10294b;overflow-wrap:anywhere}.trip-selected-meta{margin:0;color:#4b6281;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.trip-recommendation-label{margin:0;font-size:11px;font-weight:650;color:#286a70}.trip-selected-empty>p{text-align:center}.trip-selected-empty[aria-busy=true] .trip-empty-icon{animation:trip-arrive 1.5s ease-in-out infinite alternate}
@media(prefers-reduced-motion:reduce){.trip-selected-empty[aria-busy=true] .trip-empty-icon{animation:none}}
.trip-selected-price{display:grid;gap:2px;margin-top:auto;padding-top:8px}.trip-selected-price>strong{font-size:26px;letter-spacing:-.6px;color:#0c2044}.trip-selected-price>small{font-size:12px;color:#4b6281}
.trip-selected-footer{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-top:8px}.trip-selected-edit{display:flex;gap:0;align-items:center}.trip-selected-edit>.trip-button{padding:0 8px;border:0;border-radius:0;min-height:32px;background:none;text-decoration:underline;font-size:12px;font-weight:400}.trip-selected-edit>.trip-button:first-child{padding-left:0;border-right:1px solid #cfe0ec}
.trip-provider-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 12px;border:1px solid var(--blue);border-radius:7px;color:var(--blue);font-size:12px;font-weight:650;text-decoration:none;text-align:center}
.trip-selected-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:220px;border-style:dashed;background:#ffffffb3}.trip-empty-icon>svg{width:38px;height:38px;color:#3b6884}
.trip-price-summary{display:flex;align-items:center;gap:14px;padding:20px;margin-top:14px;border-radius:14px;background:#102a48;color:white;flex-wrap:wrap}
.trip-price-item{display:flex;gap:12px;align-items:center;flex:1;min-width:120px}.trip-price-icon{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;background:#1a4974;flex-shrink:0}.trip-price-icon svg{width:24px;height:24px}.trip-price-item>div{display:grid;gap:3px}.trip-price-item strong{font-size:20px;white-space:nowrap}.trip-price-item small{font-size:11px;color:#d8e6f4}.trip-price-plus{font-size:24px}
.trip-grand-total{border-left:1px solid #8294aa;padding-left:24px;display:grid;gap:3px;text-align:right;flex:1.2;min-width:180px}.trip-grand-total strong{font-size:clamp(28px,3cqi,40px);line-height:1.1;white-space:nowrap}
.trip-selection>.trip-booking-note{font-size:12px;color:#4b6281;padding:8px 4px 0}
.trip-facts>small{display:inline-flex;align-items:center;gap:5px}.trip-facts svg{width:15px;height:15px;flex-shrink:0;color:#436077}.trip-selected-copy .trip-facts{margin-top:3px}.trip-selected-copy .trip-facts>small{font-size:10px;line-height:1.5}
@container(max-width:1000px){.trip-selected-card{grid-template-columns:110px minmax(0,1fr);gap:12px}.trip-selected-footer{flex-direction:column;align-items:stretch}.trip-provider-link{width:100%}.trip-price-icon{display:none}.trip-price-summary{gap:10px;padding:18px}.trip-grand-total{padding-left:16px;min-width:155px}}
@container(max-width:720px){.trip-selected-cards{grid-template-columns:1fr}.trip-selected-card{grid-template-columns:minmax(100px,28%) minmax(0,1fr)}.trip-selected-footer{flex-direction:row;align-items:center}.trip-provider-link{width:auto}.trip-arrival-note{display:block;padding:0;margin:2px 0 0;border:0}.trip-price-plus{display:none}.trip-price-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trip-price-item{min-width:0}.trip-price-item strong{font-size:17px}.trip-grand-total{grid-column:1/-1;border-left:0;border-top:1px solid #8294aa;padding:12px 0 0;display:flex;justify-content:space-between;align-items:center;text-align:left}.trip-grand-total strong{font-size:30px}}
@container(max-width:430px){.trip-selection-heading{gap:10px}.trip-heading-icon{width:28px}.trip-selection-heading h3{font-size:22px}.trip-selected-card{padding:10px;gap:10px;grid-template-columns:80px minmax(0,1fr)}.trip-selected-media{min-height:120px;max-height:180px}.trip-selected-copy h4{font-size:15px}.trip-selected-price>strong{font-size:24px}.trip-selected-label{font-size:10px}.trip-price-summary{padding:14px;gap:10px}.trip-price-item strong{font-size:16px}.trip-price-item small{font-size:10px}.trip-grand-total{gap:10px;font-size:12px}.trip-grand-total strong{font-size:26px}}
}

/* Binding travel-card mockup: same card geometry, with responsive reflow. */
@layer responsive {
.flight-card{border-radius:18px;border-color:#bfd1e2;overflow:visible}
.flight-route-heading .flight-badges{justify-content:flex-end;align-self:end}
.flight-route-heading .flight-badges span{padding:2px 10px;border:0;border-radius:4px;font-size:12px;font-weight:650;line-height:20px;background:#e0f8ff;color:#00485c;white-space:nowrap}
.flight-route-heading .flight-badges .badge-best{background:#a8ebc5;color:#075534}
.flight-route-heading .flight-badges .badge-lowest{background:#ccffe5;color:#00493e}
.flight-route-heading .flight-badges .badge-fastest{background:#e0f8ff;color:#00485c}
.flight-overview{grid-template-columns:minmax(0,1fr) 25%;grid-row:2}
.flight-overview>.flight-main{padding:0 28px 18px;gap:12px;justify-content:flex-start}
.flight-route-heading{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 25%;align-items:center;gap:0;margin:22px 28px 16px}
.flight-route-copy{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 22px;min-width:0;padding-right:22px}
.flight-route-heading h3{display:flex;align-items:center;gap:12px;font-size:clamp(18px,2.12cqi,32px);line-height:1.3;color:#102a4b;letter-spacing:-.45px;margin:0;min-width:0}
.flight-route-heading h3>.ui-icon{width:38px;height:32px;flex-shrink:0}.flight-route-heading h3>span{overflow-wrap:anywhere}
.flight-route-heading p{font-size:clamp(12px,1.33cqi,20px);color:#526586;line-height:1.4}
.flight-card .flight-leg{display:grid;grid-template-columns:25% 18% minmax(0,1fr) 18%;grid-template-rows:auto auto;column-gap:12px;row-gap:4px;align-items:center;background:#eef8fc;border-radius:14px;padding:16px 22px;min-height:108px;margin:0;border:0}
.flight-card .flight-leg::before{display:none}.flight-card .flight-leg-row{display:contents}
.flight-card .flight-leg-heading{grid-column:1;grid-row:1;align-self:end;margin:0;gap:5px;white-space:normal;font-size:clamp(12px,1.32cqi,20px)}
.flight-card .flight-airlines{grid-column:1;grid-row:2;justify-content:flex-start;align-self:start}
.flight-card .brand-chip{gap:9px;justify-content:flex-start;min-width:0}.flight-card .brand-chip img{width:32px;height:32px;flex-shrink:0}.flight-card .brand-name{display:block;font-size:clamp(12px,1.24cqi,18px);line-height:1.25;white-space:normal}
.flight-card .flight-departure{grid-column:2;grid-row:1/3}.flight-card .flight-journey{grid-column:3;grid-row:1/3}.flight-card .flight-arrival{grid-column:4;grid-row:1/3}
.flight-card .flight-schedule strong{font-size:clamp(18px,1.9cqi,28px);font-weight:750;color:#0b1640}.flight-card .flight-schedule sup{font-size:13px;color:#005bce;font-weight:700}
.flight-card .flight-schedule>small{font-size:clamp(11px,1.25cqi,18px);color:#4d6081;line-height:1.4}
.flight-card .flight-journey>small{font-size:clamp(11px,1.12cqi,16px);color:#4d6081}.flight-card .flight-route-line{max-width:none;background:linear-gradient(#607fa3,#607fa3) center/100% 1px no-repeat}
.flight-card .flight-route-line::before,.flight-card .flight-route-line::after{width:8px;height:8px;background:#1767b3;border:2px solid #07366a;top:7px}.flight-card .journey-stops.is-direct{background:#008c7b;border-color:#008c7b;font-size:13px;padding:4px 14px;box-shadow:0 4px 8px #0f777820}
.flight-card .leg-time-filter{position:absolute;top:5px;right:8px;display:grid;place-items:center;width:30px;height:30px;border:1px solid #aac9e6;border-radius:7px;background:#fff;color:#1767b3;cursor:pointer;z-index:1;transition:background-color .15s,color .15s}
.flight-card .leg-time-filter>.ui-icon{width:19px;height:19px;pointer-events:none}
.flight-card .leg-time-filter:hover{background:#e0efff;border-color:#1767b3}
.flight-card .leg-time-filter:has(.leg-select:checked){background:#005cce;border-color:#005cce;color:#fff}
.flight-card .leg-time-filter:has(.leg-select:focus-visible){outline:2px solid #005cce;outline-offset:2px}
.flight-card .leg-time-filter .leg-select{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
.flight-card .flight-price-panel{grid-column:2;display:flex;flex-direction:column;gap:24px;margin:0 0 18px;padding:0 28px;border-top:0;border-left:1px solid #d5e2ef;justify-content:center;align-items:stretch}
.flight-card .flight-price-panel .flight-price-info{text-align:center;display:flex;align-items:stretch;gap:18px}
.flight-card .flight-price-panel .price-line{position:relative;justify-content:center;flex-direction:column;align-items:center;gap:0}
.flight-card .flight-price-panel .price-line>strong{font-size:clamp(34px,4.3cqi,64px);letter-spacing:-2px;line-height:1.1;color:#0f294c;font-weight:800}
.flight-price-unit{display:block;font-size:clamp(13px,1.4cqi,20px)!important;color:#293f65}.flight-card .price-help{position:absolute;right:-12px;top:8px}.flight-card .price-help>summary{width:15px;height:15px;font-size:10px}
.flight-card .flight-price-panel .flight-total{font-size:clamp(13px,1.55cqi,23px);font-weight:700;text-align:center;border-top:1px solid #d5e2ef;padding-top:18px;white-space:normal}
.flight-card .flight-select-action{width:100%;height:auto;min-height:clamp(46px,4.5cqi,68px);padding:14px 10px;font-size:clamp(13px,1.5cqi,22px);font-weight:750;border-radius:8px}
.flight-card .flight-booking{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:0;padding:0 24px 16px;border:0;margin:0;width:auto;border-radius:0}
.flight-booking>.flight-fare-info{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch;border:0;min-height:0}
.flight-fare-info>.flight-detail-toggle{grid-column:1;grid-row:1}
.flight-fare-info:not(:has(>.flight-provider-toggle))>.flight-detail-toggle{grid-column:1/-1}
.flight-fare-info>.flight-provider-toggle{grid-column:2;grid-row:1}
.flight-booking>.flight-fare-info{row-gap:0}
.flight-fare-info>.flight-details{grid-column:1/-1;grid-row:2}
.flight-booking>.flight-providers,.flight-booking>.flight-providers:has(.provider-details[open]){grid-column:1/-1;grid-row:3;padding:0;margin:0;border:0;min-height:0}
.flight-booking>.flight-details{grid-column:1/-1;grid-row:2}
.flight-card .flight-detail-toggle,.flight-card .flight-provider-toggle{display:none}
.flight-ui-ready .flight-card .flight-detail-toggle,.flight-ui-ready .flight-card .flight-provider-toggle{display:flex;align-items:center;flex-wrap:nowrap;gap:24px;width:100%;min-width:0;min-height:110px;margin:0;padding:18px 26px;border:1px solid #acd1ff;border-radius:13px;background:linear-gradient(110deg,#f6fbff,#f1f9fe);box-shadow:none;color:#080f44;font:inherit;text-align:left;cursor:pointer}
.flight-card .flight-detail-toggle>span:not(.flight-detail-chevron),.flight-card .flight-provider-toggle>span:not(.flight-detail-chevron){display:flex;color:inherit}
.flight-card .flight-action-icon{align-items:center;justify-content:center;flex:0 0 72px;width:72px;height:72px;border-radius:50%;background:#dceeff;color:#0053bb}
.flight-card :is(.flight-detail-toggle,.flight-provider-toggle)>span.flight-action-icon{color:#0053bb}
.flight-card .flight-action-icon svg{width:40px;height:40px}
.flight-card .flight-action-copy{min-width:0;flex:1;flex-direction:column;gap:5px;font-weight:400}
.flight-card .flight-action-copy>strong{display:flex;align-items:center;flex-wrap:wrap;gap:14px;color:#080f44;font-size:clamp(17px,1.58cqi,24px);font-weight:750;line-height:1.25;letter-spacing:-.4px}
.flight-card .flight-action-copy>small{font-size:clamp(13px,1.28cqi,20px);line-height:1.35;color:#405f8f}
.flight-card .flight-action-count{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 8px;border-radius:50%;background:linear-gradient(135deg,#1685ff,#306cfa);color:#fff;font-size:21px;line-height:1;font-weight:650;letter-spacing:0}
.flight-card .flight-detail-chevron{display:flex;flex:0 0 26px;color:#003c92;margin-left:auto;transition:transform .15s}
.flight-card .flight-detail-chevron>.ui-icon{width:26px;height:26px}
.flight-card :is(.flight-detail-toggle,.flight-provider-toggle):hover{background:#eaf5ff;border-color:#66a8f2}
.flight-card :is(.flight-detail-toggle,.flight-provider-toggle):focus-visible{outline:3px solid #0065d6;outline-offset:3px}
.flight-card :is(.flight-detail-toggle,.flight-provider-toggle)[aria-expanded=true]{background:#e8f3ff;border-color:#388beb;box-shadow:inset 0 -3px #0562c8}
.flight-card :is(.flight-detail-toggle,.flight-provider-toggle)[aria-expanded=true] .flight-detail-chevron{transform:rotate(180deg)}
.flight-card .flight-provider-toggle:disabled{opacity:.6;cursor:default}
.flight-ui-ready .flight-card .provider-details>summary{display:none}
.flight-ui-ready .flight-booking>.flight-providers:not(:has(.provider-details[open])){display:none}
.flight-card .provider-list,.flight-card .flight-detail-content{margin-top:16px}
@container(max-width:1100px){.flight-ui-ready .flight-card :is(.flight-detail-toggle,.flight-provider-toggle){gap:16px;padding:16px;min-height:96px}.flight-card .flight-action-icon{flex-basis:54px;width:54px;height:54px}.flight-card .flight-action-icon svg{width:32px;height:32px}.flight-card .flight-action-count{min-width:30px;height:30px;font-size:17px}.flight-card .flight-action-copy>strong{gap:8px}}
@container(max-width:620px){.flight-booking>.flight-fare-info{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:10px}.flight-fare-info>.flight-details{grid-row:auto}.flight-fare-info>.flight-provider-toggle{grid-column:1;grid-row:auto}.flight-fare-info .flight-detail-content{margin-top:0}.flight-ui-ready .flight-card :is(.flight-detail-toggle,.flight-provider-toggle){min-height:82px;padding:12px;gap:12px}.flight-card .flight-action-icon{flex-basis:44px;width:44px;height:44px}.flight-card .flight-action-icon svg{width:28px;height:28px}.flight-card .flight-action-copy>strong{font-size:16px;gap:8px;flex-wrap:nowrap}.flight-card .flight-action-copy>small{font-size:13px}.flight-card .flight-action-count{min-width:26px;height:26px;font-size:15px;flex-shrink:0}.flight-card .flight-detail-chevron{flex-basis:18px}.flight-card .flight-detail-chevron>.ui-icon{width:18px;height:18px}}
.flight-card .flight-detail-content>.fare-provider{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.flight-card .flight-detail-content>.fare-provider .selected-provider img{max-width:90px;max-height:30px;object-fit:contain}
.flight-card .trip-combination{position:relative;background:#e5f5f5;border-radius:0 0 18px 18px;grid-row:4}
.flight-card .trip-combination:not([open]){background:#f5f8fc;border-top-color:#d4e0ed}
.trip-combination[open]>summary{position:absolute;right:12px;top:8px;z-index:1;background:transparent;box-shadow:none;padding:4px 8px;min-height:32px;width:32px}
.trip-combination[open]>summary .trip-combination-copy,.trip-combination[open] .trip-combination-close-label{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.trip-combination[open]>summary .trip-combination-icons,.trip-combination[open] .trip-combination-action-label{display:none}
.trip-combination[open]>summary .trip-combination-action{min-height:24px;width:auto;padding:0;border:0;background:transparent}
.trip-combination-content{padding:18px 20px 8px}.trip-selection-heading{position:relative;min-height:76px;margin:0 0 18px;gap:20px}.trip-heading-icon{width:14%;margin-left:-20px;flex-shrink:0}.trip-heading-icon>svg{width:100%;height:80px;overflow:visible}
.trip-selection-heading h3{font-size:clamp(26px,2.7cqi,40px);letter-spacing:-1px;line-height:1.2}.trip-selection-heading p{font-size:clamp(12px,1.28cqi,19px)}.trip-selection-heading p strong{font-size:clamp(16px,1.6cqi,24px)}
.trip-selected-cards{gap:14px}.trip-selected-card{grid-template-columns:35% minmax(0,1fr);padding:14px;gap:28px;border-radius:18px;min-height:240px;align-items:stretch}
.trip-selected-media{height:212px;min-height:0;max-height:none;align-self:center}.trip-selected-media>img{max-height:none;width:100%;height:100%}.trip-selected-copy{gap:6px;justify-content:flex-start}
.trip-selected-label{font-size:clamp(10px,1cqi,14px);gap:10px 20px}.trip-selected-badge.is-selected{display:inline-flex;gap:8px;align-items:center}.trip-selected-badge.is-selected::before{content:'✓';display:inline-grid;place-items:center;width:25px;height:25px;background:#00897e;color:white;border-radius:50%;font-size:17px;font-weight:700;box-shadow:0 2px 5px #00897e25}
.trip-selected-label>.trip-stars{font-size:11px;letter-spacing:0}.trip-selected-copy h4{font-size:clamp(16px,1.45cqi,22px);line-height:1.3}.trip-selected-meta{font-size:clamp(12px,1.14cqi,17px);line-height:1.4}
.trip-selected-price{padding-top:10px;margin-top:auto}.trip-selected-price>strong{font-size:clamp(27px,2.35cqi,35px);line-height:1.15;letter-spacing:-1px}.trip-selected-price>small{font-size:clamp(12px,1.05cqi,16px)}
.trip-selected-footer{flex-direction:row;align-items:flex-end;flex-wrap:wrap;gap:8px;margin-top:2px}.trip-selected-edit>.trip-button{font-size:clamp(11px,1.03cqi,15px);min-height:32px}.trip-provider-link{width:auto;font-size:clamp(11px,1.05cqi,16px);min-height:48px;padding:12px 15px}
.trip-price-summary{gap:24px;padding:18px 4.3%;min-height:114px;margin-top:14px;border-radius:16px;background:#102944}.trip-price-icon{display:flex;width:54px;height:54px}.trip-price-icon svg{width:28px;height:28px}.trip-price-item{gap:20px;min-width:100px}.trip-price-item>div{gap:2px}.trip-price-item strong{font-size:clamp(19px,1.8cqi,27px)}.trip-price-item span,.trip-grand-total>span{font-size:clamp(12px,1.17cqi,17px)}.trip-price-item small{font-size:clamp(10px,1cqi,15px)}.trip-price-plus{font-size:30px}.trip-grand-total{padding-left:34px;min-width:190px}.trip-grand-total strong{font-size:clamp(30px,3.2cqi,48px);font-weight:800;font-style:italic}
.trip-selection>.trip-booking-note{padding:5px 10px 0;font-size:clamp(12px,1.1cqi,16px)}
@container(max-width:1100px){.flight-route-heading{margin:18px 18px 16px}.flight-overview>.flight-main{padding:0 18px 18px}.flight-card .flight-leg{padding:14px;column-gap:9px;grid-template-columns:24% 19% minmax(0,1fr) 20%;min-height:95px}.flight-card .flight-price-panel{padding:12px 20px}.flight-card .flight-booking{padding-inline:18px}.flight-card .brand-chip img{width:26px;height:26px}.flight-route-heading h3>.ui-icon{width:27px}.trip-selected-card{gap:16px;padding:12px;grid-template-columns:34% minmax(0,1fr)}.trip-selected-media{height:210px}.trip-selected-footer{flex-direction:column;align-items:stretch}.trip-provider-link{width:100%;min-height:40px;padding:9px}.trip-price-summary{gap:12px;padding:18px}.trip-price-icon{width:36px;height:36px}.trip-price-icon svg{width:22px;height:22px}.trip-price-item{gap:9px}.trip-grand-total{padding-left:16px;min-width:165px}}
@container(max-width:800px){.flight-route-heading{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.flight-route-copy{display:contents}.flight-route-heading h3{grid-column:1/-1}.flight-route-heading p{grid-column:1}.flight-route-heading .flight-badges{grid-column:2;max-width:160px}.flight-overview{grid-template-columns:1fr}.flight-card .flight-price-panel{grid-column:1;display:grid;grid-template-columns:1fr 180px;margin:0 18px;padding:14px 0;gap:20px;border-left:0;border-top:1px solid #d5e2ef}.flight-card .flight-price-panel .flight-price-info{gap:6px}.flight-card .flight-price-panel .price-line{align-items:flex-start}.flight-card .flight-price-panel .flight-total{text-align:left;border:0;padding:0}.flight-card .price-help{position:static}.flight-card .flight-booking{margin-right:0}.flight-card .flight-price-panel .price-line>strong{font-size:32px}.trip-selected-cards{grid-template-columns:1fr}.trip-selected-card{grid-template-columns:30% minmax(0,1fr);min-height:200px}.trip-selected-media{height:190px}.trip-selected-footer{flex-direction:row;align-items:center}.trip-provider-link{width:auto}.trip-price-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trip-price-plus{display:none}.trip-grand-total{grid-column:1/-1;border-left:0;border-top:1px solid #8294aa;padding:12px 0 0;display:flex;justify-content:space-between;align-items:center}.trip-price-item{min-width:0}.trip-arrival-note{display:block;padding:0;margin:0;border:0}}
@container(max-width:480px){.flight-overview>.flight-main{padding:0 12px 12px;gap:10px}.flight-route-heading{margin:12px 12px 14px;gap:4px 8px}.flight-route-heading .flight-badges{max-width:140px}.flight-route-heading .flight-badges span{font-size:10px;padding:1px 7px;line-height:18px}.flight-route-heading h3{font-size:18px;gap:7px}.flight-route-heading h3>.ui-icon{width:24px;height:24px}.flight-card .flight-leg{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto auto;gap:8px 12px;padding:12px}.flight-card .flight-leg-heading{grid-column:1;grid-row:1;align-self:center;font-size:12px;gap:4px}.flight-card .flight-airlines{grid-column:2;grid-row:1;justify-content:flex-end;align-self:center}.flight-card .brand-name{font-size:11px}.flight-card .brand-chip img{width:22px;height:22px}.flight-card .flight-departure{grid-column:1;grid-row:2}.flight-card .flight-arrival{grid-column:2;grid-row:2;text-align:right}.flight-card .flight-journey{grid-column:1/-1;grid-row:3;text-align:center;align-items:center}.flight-card .flight-route-line{max-width:none}.flight-card .leg-time-filter{position:relative;top:auto;right:auto;grid-column:1/-1;grid-row:4;justify-self:end;width:36px;height:36px}.flight-card .flight-price-panel{grid-template-columns:1fr 140px;margin-inline:12px;gap:10px}.flight-card .flight-select-action{font-size:12px;padding:10px 6px}.flight-card .flight-booking{padding-inline:12px}.flight-card .provider-details>summary,.flight-card .provider-label,.flight-card .flight-detail-toggle{font-size:12px}.trip-combination-content{padding:14px 12px 8px}.trip-selection-heading{gap:10px;min-height:80px;margin-bottom:12px}.trip-heading-icon{width:50px;margin-left:-12px}.trip-heading-icon>svg{width:80px;height:60px;margin-left:-25px}.trip-selection-heading h3{font-size:23px;letter-spacing:-.6px}.trip-selected-card{grid-template-columns:95px minmax(0,1fr);gap:12px;padding:10px;min-height:190px}.trip-selected-media{height:170px}.trip-selected-label{gap:6px;font-size:10px}.trip-selected-badge.is-selected{gap:4px}.trip-selected-badge.is-selected::before{width:17px;height:17px;font-size:12px}.trip-selected-copy h4{font-size:15px}.trip-selected-footer{flex-direction:column;align-items:stretch}.trip-provider-link{width:100%}.trip-price-summary{padding:14px;gap:12px}.trip-price-item{flex-direction:column;align-items:flex-start;gap:6px}.trip-price-icon{width:30px;height:30px}.trip-price-icon svg{width:18px;height:18px}.trip-price-item strong{font-size:17px}.trip-grand-total{gap:8px}.trip-grand-total strong{font-size:29px}}
}

@layer responsive {
.flight-card .flight-booking:has(.flight-details[open],.provider-details[open]){margin-right:0}
.trip-selection-heading p>svg{width:20px;height:23px;vertical-align:-5px;margin-right:8px;fill:currentColor;color:var(--blue)}
.trip-selected-card.trip-selected-empty{display:flex}
}

/* Selected travel components retain their individual provider checkout links. */
.trip-price-summary .trip-price-link{color:inherit;text-decoration:none;border-radius:10px;padding:8px;margin:-8px;min-height:64px;transition:background-color .18s,box-shadow .18s}
.trip-price-summary .trip-price-link:hover{background:#244766;box-shadow:0 0 0 1px #7eabce}
.trip-price-summary .trip-price-link:focus-visible{outline:3px solid #bceaf4;outline-offset:3px;background:#244766}
.trip-price-summary .trip-price-action{color:#c6eaff;text-decoration:underline;text-underline-offset:3px;margin-top:5px}
@media(prefers-reduced-motion:reduce){.trip-price-summary .trip-price-link{transition:none}}

.trip-selected-facts{margin:5px 0;min-width:0;font-size:12px}
.trip-selected-facts>.trip-facts{gap:5px 12px}.trip-selected-facts .trip-facts small{overflow-wrap:anywhere}
.trip-more-facts{position:relative;width:fit-content;max-width:100%;margin-top:6px}
.trip-facts-toggle{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:#0755b7;padding:4px 0;min-height:30px;font:inherit;cursor:pointer;text-align:left}
.trip-facts-toggle svg{width:16px;height:16px;fill:currentColor;flex-shrink:0}
.trip-more-facts>.trip-facts-popover{position:absolute;left:0;top:100%;z-index:5;display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:max-content;max-width:min(280px,60vw);padding:14px;background:white;border:1px solid #bdcfe0;border-radius:10px;box-shadow:0 8px 24px #10294428;color:#233f60}
.trip-more-facts>.trip-facts-popover[hidden]{display:none}

/* Flight filters: approved 27 September mockup. Values come from loaded offers. */
body[data-kind=flug] .shell{width:min(1680px,calc(100% - 48px))}
body[data-kind=flug] .results-layout{--filter-width:clamp(300px,26vw,400px);grid-template-columns:var(--filter-width) minmax(0,1fr);gap:24px}
.flight-sort-wrap{margin-left:calc(clamp(300px,26vw,400px) + 24px)}
.flight-sidebar:not(.skeleton-sidebar){--filter-blue:#0068ff;--filter-ink:#062452;--filter-muted:#526f98;background:#fff;border:1px solid #e1ebf7;border-radius:17px;box-shadow:0 12px 30px #16466c0a;padding:0;overflow:hidden;color:var(--filter-ink);font-size:14px}
.filter-heading{display:flex;align-items:center;gap:18px;padding:20px 18px 16px}
.filter-heading .ui-icon{width:23px;height:23px;color:#0053bc;flex:none}
.filter-heading h3{font-size:17px;margin:0;line-height:1.4}
.filter-heading button{margin-left:auto;background:none;border:0;padding:0;color:var(--filter-blue);font:inherit;font-size:14px;cursor:pointer}
.flight-sidebar .flight-facets{display:block;margin:0}
.flight-sidebar [hidden]{display:none!important}
.active-filters{margin:0 17px 11px;border:1px solid #d2e5ff;border-radius:11px;background:linear-gradient(115deg,#f4f9ff,#eff6fd);padding:11px 14px;color:#0048b2}
.active-filters>strong{display:block;font-size:15px;margin-bottom:8px}
[data-active-filter-chips]{display:flex;flex-wrap:wrap;gap:6px}
.filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:32px;max-width:100%;border:1px solid #cce1ff;border-radius:11px;background:#e6f2ff;color:#0058d7;padding:5px 10px;font:inherit;font-size:13px;cursor:pointer;text-align:left}
.filter-chip .flight-icon{width:17px;height:17px;flex:none}.filter-chip>span:first-of-type{overflow-wrap:anywhere}.filter-chip>span:last-child{font-size:20px;line-height:16px}
.filter-section{border-top:1px solid #e3edf8;padding:0;margin:0}
.filter-section>summary{display:flex;align-items:center;gap:16px;padding:14px 21px 10px;list-style:none;cursor:pointer;font-size:17px;font-weight:700;line-height:24px}
.filter-section>summary::-webkit-details-marker{display:none}
.filter-section>summary>.ui-icon{height:24px;width:24px;color:#0054bd;flex:none}
.filter-section>summary>.ui-icon:last-child{margin-left:auto;width:18px;height:18px;color:var(--filter-blue)}
.filter-section[open]>summary>.ui-icon:last-child{transform:rotate(180deg)}
.filter-section-body{padding:0 22px 15px;min-width:0}
.stop-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 -5px}
.flight-facets .stop-option{position:relative;display:flex;flex-direction:column;justify-content:center;gap:4px;margin:0;padding:12px 3px 10px;min-height:92px;border:1px solid #e7edf6;border-radius:11px;background:#fff;box-shadow:0 2px 5px #07274b10;text-align:center;font-size:14px;cursor:pointer;color:var(--filter-ink)}
.flight-facets .stop-option>input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}
.stop-option>.ui-icon{width:21px;height:21px;color:#0056bf;margin-bottom:3px}.stop-option>strong{font-weight:400;color:var(--filter-muted)}
.flight-facets .stop-option:has(input:checked){border-color:var(--filter-blue);background:linear-gradient(130deg,#f5faff,#edf5ff);box-shadow:0 0 0 1px #0068ff30,0 3px 6px #0068ff10}
.stop-option:has(input:checked)>strong{font-weight:700;color:var(--filter-ink)}
.stop-option:has(input:focus-visible){outline:3px solid #173c70;outline-offset:3px}
.flight-sidebar .bag-counter{display:grid;grid-template-columns:minmax(0,1fr) 34px 34px 34px;gap:6px;margin:5px 0 7px;font-size:14px}
.flight-sidebar .bag-counter>span{gap:12px;white-space:normal;line-height:1.25}
.flight-sidebar .bag-counter .ui-icon{height:23px;width:23px;color:var(--filter-ink);flex:none}
.flight-sidebar .bag-counter button{height:34px;border:1px solid #b9cce3;border-radius:7px;background:white;box-shadow:0 0 0 1px #e7edf5;color:var(--filter-ink);font:700 23px/1 Arial}
.flight-sidebar .bag-counter output{display:grid;place-items:center;height:34px;border-radius:7px;background:#f0f4f8;font-size:15px;font-weight:700}
.flight-sidebar .bag-counter button:disabled{color:#8495af;cursor:default;box-shadow:none}
.filter-note{display:block;font-size:12px;line-height:1.4;color:var(--filter-muted);margin-top:7px}
.filter-note+.filter-note{margin-top:2px;font-size:11px}
.filter-segmented{display:flex;background:#eff3f7;border-radius:9px;margin:0 0 8px;overflow:hidden}
.filter-segmented button{flex:1;min-width:0;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--filter-muted);font:inherit;font-size:14px;padding:9px 4px;cursor:pointer}
.filter-segmented button[aria-pressed=true]{background:white;border-color:var(--filter-blue);color:var(--filter-blue);font-weight:650;box-shadow:0 0 3px #0068ff20}
.filter-time-value{display:block;font-size:16px;line-height:1.5;margin-top:4px}
.filter-range{position:relative;height:28px;margin:2px 0 4px;--range-low:0%;--range-high:100%}
.filter-range::before{content:'';position:absolute;left:0;right:0;top:12px;height:4px;border-radius:3px;background:linear-gradient(to right,#d4deea 0 var(--range-low),#91baff var(--range-low) var(--range-high),#d4deea var(--range-high) 100%)}
.flight-facets .filter-range input[type=range]{appearance:none;position:absolute;inset:0;width:100%;height:28px;pointer-events:none;background:transparent;margin:0;padding:0;border:0;color:var(--filter-blue)}
.filter-range input::-webkit-slider-thumb,.filter-single-range::-webkit-slider-thumb{appearance:none;width:23px;height:23px;border:3px solid white;border-radius:50%;background:#0068ff;box-shadow:0 1px 4px #31598160;pointer-events:auto;cursor:grab}
.filter-range input::-moz-range-thumb,.filter-single-range::-moz-range-thumb{width:17px;height:17px;border:3px solid white;border-radius:50%;background:#0068ff;box-shadow:0 1px 4px #31598160;pointer-events:auto;cursor:grab}
.filter-range input:focus-visible{outline:none}.filter-range input:focus-visible::-webkit-slider-thumb{outline:2px solid #123d77;outline-offset:3px}.filter-range input:focus-visible::-moz-range-thumb{outline:2px solid #123d77;outline-offset:3px}
.filter-axis{display:flex;justify-content:space-between;gap:5px;font-size:12px;color:var(--filter-muted);line-height:1.5}
.filter-range-caption{display:flex;align-items:start;justify-content:space-between;gap:6px;font-size:14px;line-height:1.4;margin:2px 0 6px}
.filter-range-caption output{color:var(--filter-muted);white-space:nowrap;font-size:13px}
.filter-extra{margin-top:10px;color:var(--filter-muted);font-size:12px}
.filter-extra>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px}.filter-extra>summary::after{content:'+';font-size:17px}.filter-extra[open]>summary::after{content:'−'}.filter-extra>summary::-webkit-details-marker{display:none}.filter-extra[open]>summary{margin-bottom:9px}
.filter-single-range{appearance:none;height:4px;width:100%;margin:15px 0;background:#91baff;border-radius:3px}
.flight-facets [data-filter-list] label{display:flex;gap:12px;align-items:center;margin:5px 0;font-size:14px;line-height:1.3;min-height:22px;cursor:pointer}
.flight-facets [data-filter-list] label>span:first-of-type{min-width:0;overflow-wrap:anywhere}
.flight-facets [data-filter-list] input[type=checkbox]{width:22px;height:22px;border:1px solid #aec3dd;border-radius:5px;box-shadow:0 0 0 1px #e9eff6;background:white;flex:none}
.flight-facets [data-filter-list] input[type=checkbox]:checked{background:var(--filter-blue);border-color:var(--filter-blue)}
.flight-facets [data-filter-list] input[type=checkbox]:checked::after{color:white;font:700 15px/20px Arial}
.flight-sidebar .facet-price{font-size:13px;line-height:20px;background:#f0f4f8;border-radius:12px;color:var(--filter-muted);padding:0 8px;margin-left:auto;white-space:nowrap}
.flight-sidebar .facet-expand{font-size:14px;line-height:1.4;padding:4px 0 0 34px;color:var(--filter-blue);font-weight:600}
.filter-list-heading{display:block;margin:2px 0 7px;font-size:14px;line-height:1.4}
[data-filter-list]+.filter-list-heading{margin-top:12px}
.filter-price-value{display:block;text-align:center;font-size:17px;color:#003e98;margin:-5px 0 10px}
.filter-histogram{display:flex;align-items:end;height:45px;gap:3px;margin:0 5px 0}
.filter-histogram span{flex:1;background:linear-gradient(#cfe4ff,#b4d5ff);min-height:1px;border-radius:1px 1px 0 0}
[data-filter-section=price] .filter-range{margin-top:-1px}
.filter-footer{padding:0 21px 22px}
.filter-reset{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:45px;border:1px solid var(--filter-blue);border-radius:9px;background:white;color:var(--filter-blue);font:inherit;font-size:14px;font-weight:650;box-shadow:0 2px 4px #0068ff15;cursor:pointer}
.filter-reset .ui-icon{width:22px;height:22px}
.flight-sidebar button:hover:not(:disabled){filter:brightness(.92)}
.flight-sidebar :is(button,input:not([type=range]),summary):focus-visible{outline:2px solid #163c70;outline-offset:3px}
.filter-range+.filter-axis:has(>span:nth-child(4)){position:relative;height:18px;display:block}.filter-range+.filter-axis:has(>span:nth-child(4))>span{position:absolute;top:0}.filter-range+.filter-axis:has(>span:nth-child(4))>span:nth-child(2){left:25%;transform:translateX(-50%)}.filter-range+.filter-axis:has(>span:nth-child(4))>span:nth-child(3){left:50%;transform:translateX(-50%)}.filter-range+.filter-axis:has(>span:nth-child(4))>span:last-child{right:0}
@media(max-width:1150px) and (min-width:901px){.filter-section-body{padding-inline:14px}.filter-section>summary{padding-inline:14px}.filter-heading{gap:10px;padding-inline:14px}.filter-heading button{font-size:12px}.flight-sidebar .bag-counter{grid-template-columns:minmax(0,1fr) 28px 26px 28px;gap:4px;font-size:12px}.flight-sidebar .bag-counter>span{gap:6px}.flight-sidebar .bag-counter button,.flight-sidebar .bag-counter output{height:29px}.filter-range-caption{font-size:12px}.filter-range-caption output{font-size:11px}.flight-facets [data-filter-list] label{font-size:13px;gap:8px}.flight-sidebar .facet-price{padding-inline:5px;font-size:11px}}
@media(max-width:900px){body[data-kind=flug] .results-layout{grid-template-columns:minmax(0,1fr)}.flight-sort-wrap{margin-left:0}.flight-sidebar .filter-heading{padding:15px 18px 8px}.flight-sidebar .filter-toggle{display:flex;width:calc(100% - 36px);margin:8px 18px 14px}.flight-sidebar .flight-facets:not(.is-open){display:none}.flight-sidebar .flight-facets.is-open{display:block}.flight-sidebar:not(.skeleton-sidebar){max-width:100%}}
@media(max-width:620px){body[data-kind=flug] .shell{width:calc(100% - 24px)}}
@media(max-width:360px){.filter-section-body{padding-inline:14px}.filter-section>summary{padding-inline:14px}.flight-sidebar .bag-counter{grid-template-columns:minmax(0,1fr) 28px 26px 28px;gap:4px;font-size:12px}.flight-sidebar .bag-counter>span{gap:6px}.filter-range-caption{font-size:12px}.filter-range-caption output{font-size:11px}.flight-facets [data-filter-list] label{font-size:12px;gap:8px}.flight-sidebar .facet-price{font-size:11px;padding-inline:5px}}

/* Compact touch layout: shared route row, date/traveler row and primary action. */
@media(max-width:1100px){
 body[data-kind=flug] .results-layout{grid-template-columns:minmax(0,1fr)}
 .flight-sort-wrap{margin-left:0}
 .flight-sidebar .filter-toggle{display:flex;width:calc(100% - 36px);margin:8px 18px 14px}
 .flight-sidebar .flight-facets:not(.is-open){display:none}
 .flight-sidebar .flight-facets.is-open{display:block}
 .flight-sidebar:not(.skeleton-sidebar){max-width:100%}
}
@media(max-width:620px){
 body[data-kind=flug] .header-inner{min-height:60px;padding-block:10px;gap:8px;flex-wrap:nowrap}
 body[data-kind=flug] .brand{font-size:20px;gap:6px}
 body[data-kind=flug] .brand-mark{width:30px;height:30px;line-height:29px;font-size:25px}
 body[data-kind=flug] .header-state{font-size:9px;gap:4px}
 body[data-kind=flug] .tabs{margin:14px 0 18px}
 body[data-kind=flug] .tabs a{flex:none;width:auto;min-height:40px;padding:8px 16px}
 .flight-heading{font-size:21px;line-height:1.25;margin-bottom:14px}
 .compact-options{gap:12px;margin-bottom:10px}
 .compact-options>select,.search-bags .search-popover-trigger{font-size:13px}
 .compact-search:not(.is-multi) .compact-route{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);gap:8px 4px;padding:10px;align-items:stretch}
 .compact-search:not(.is-multi) .compact-route>.airport-field:first-child{grid-row:1;grid-column:1}
 .compact-search:not(.is-multi) .compact-route>.airport-field:nth-of-type(2){grid-row:1;grid-column:3}
 .compact-search:not(.is-multi) .compact-route>.airport-swap{grid-row:1;grid-column:2;width:30px;height:36px;align-self:center}
 .compact-search:not(.is-multi) .airport-swap .flight-icon{transform:none;width:19px;height:19px}
 .compact-search:not(.is-multi) .compact-route>.search-dates{grid-row:2;grid-column:1/3}
 .compact-search:not(.is-multi) .compact-route>.search-travelers{grid-row:2;grid-column:3}
 .compact-search:not(.is-multi) .compact-route>.search-button{grid-row:3;grid-column:1/-1;height:44px;min-height:44px;font-size:15px}
 .compact-search .airport-field:not(.is-picker-open){min-height:62px;padding:4px 2px;gap:2px}
 .compact-search .airport-field:not(.is-picker-open) .airport-entry{height:36px;padding:4px;font-size:16px}
 .compact-search .airport-field.has-airports:not(.is-picker-open) .airport-entry{height:1px;min-height:0;padding:0;opacity:0;flex:none}
 .airport-field:not(.is-picker-open) .airport-chip{font-size:12px;min-height:36px;padding:3px 2px 3px 5px;gap:2px}
 .airport-field:not(.is-picker-open) .airport-remove{flex:0 0 24px;min-height:36px;font-size:19px}
 .airport-field-label{font-size:11px}
 .compact-route .search-popover-trigger{min-height:44px;height:44px;padding:8px 6px;font-size:12px}
 .compact-search-tail{margin-top:10px;font-size:13px}
 .flight-sort button{padding:10px 5px;min-width:0}
 .flight-sort button strong{font-size:12px}
 .flight-sort button span{font-size:11px}
 body[data-kind=flug] .site-footer{margin-top:24px;padding-block:18px;font-size:11px}
}

.calendar-date-field{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:13px;font-weight:650}
.calendar-date-choice{min-height:44px;width:100%;border:1px solid #a9bfd5;border-radius:8px;padding:8px 12px;background:#fff;color:var(--ink);text-align:left}
.calendar-date-choice[aria-pressed=true]{border-color:#005cce;background:#eaf3ff;color:#0055b8}
.calendar-day.date-selected{background:#0755b7;color:#fff}
.calendar-day.date-in-range{background:#e5efff;color:#123b68}
@media(max-width:1100px){.compact-search .search-dates .search-popover-panel{position:fixed;left:16px;right:16px;top:16px;bottom:auto;width:min(800px,calc(100vw - 32px));margin-inline:auto;max-width:none;max-height:calc(100dvh - 32px);overflow:auto;padding:18px}}
@media(max-width:620px){
 .compact-search .airport-field:not(.is-picker-open){border:1px solid #b6c9dc;border-radius:8px;padding:7px 5px;background:#fbfdff}
 .calendar-inputs{gap:8px;margin-bottom:16px}
 .calendar-date-field{font-size:12px}
 .calendar-date-choice{font-size:15px;padding:7px 10px}
 .calendar-inputs label{font-size:11px}
 .calendar-inputs select{min-height:36px}
 .calendar-months{grid-template-columns:1fr;gap:0}
 .calendar-month:nth-child(2){display:none}
 .calendar-month h3{font-size:17px;margin-bottom:14px}
 .calendar-days{gap:3px}
 .calendar-day{min-height:38px;font-size:14px}
 .calendar-weekday{font-size:11px;margin-bottom:6px}
 .calendar-price-note{font-size:11px;min-height:0;margin-top:12px}
 .calendar-done{width:100%;min-height:44px;margin-top:12px;background:#0755b7}
}

@media(min-width:621px) and (max-width:1100px){.compact-search .airport-field:not(.is-picker-open){border:1px solid #b6c9dc;background:#fbfdff;border-radius:8px}.compact-search .airport-field.has-airports:not(.is-picker-open) .airport-entry{flex:0 1 40px;min-width:30px}}

dialog.search-popover-panel{border:0;color:var(--ink);margin:0}
dialog.search-popover-panel:not([open]){display:none}
.search-panel-heading{display:none}
.search-panel-done{display:block;width:100%;min-height:44px;margin-top:20px;border:0;border-radius:8px;background:#0755b7;color:#fff;font-weight:700}
@media(max-width:1100px){
 body.search-dialog-active{overflow:hidden}
 .compact-search dialog.search-popover-panel,.compact-search .search-dates dialog.search-popover-panel{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;padding:16px max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow:auto;overscroll-behavior:contain;background:#fff;box-shadow:none}
 .search-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;position:sticky;top:-16px;z-index:3;background:#fff;border-bottom:1px solid var(--line);min-height:60px;margin:-16px 0 18px;padding:10px 0;font-size:18px}
 .search-panel-close{min-height:40px;border:0;background:#eef4fb;border-radius:8px;padding:8px 12px;color:#0755b7;font-size:14px}
 .search-panel-done,.calendar-done{position:sticky;bottom:0;z-index:2;min-height:48px;box-shadow:0 0 0 8px #fff}
 .search-stepper button{width:36px;height:36px}
 .compact-search .airport-field.is-picker-open{grid-column:auto;grid-row:auto;padding:12px 16px;border:0;border-radius:0;background:#fff}
}

html{scrollbar-gutter:stable}
@media(max-width:1100px){
 .search-stepper button,.search-panel-close,.airport-picker-done,.airport-remove{min-width:44px;min-height:44px}
 .calendar-day{min-height:44px}
 .calendar-navigation button{min-width:44px;min-height:44px}
 .search-control-label select,.calendar-inputs select,.search-popover-panel input{font-size:16px;min-height:44px}
 .search-popover-panel,.airport-field.is-picker-open{touch-action:pan-y;overscroll-behavior:contain}
}
@media(max-width:620px){
 .compact-search:not(.is-multi) .compact-route{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)}
 .compact-search:not(.is-multi) .compact-route>.airport-swap{width:44px;height:44px}
 .airport-field:not(.is-picker-open) .airport-remove{flex-basis:44px;min-width:44px;min-height:44px}
 .compact-search dialog.search-popover-panel,.compact-search .search-dates dialog.search-popover-panel{padding-inline:12px}
 .calendar-days{gap:2px}
 .calendar-day{min-height:44px}
 .flight-card .leg-time-filter{width:44px;height:44px}
 .flight-card .leg-time-filter>.ui-icon{width:22px;height:22px}
}
@media(max-width:359px){.compact-search dialog.search-popover-panel,.compact-search .search-dates dialog.search-popover-panel{padding-inline:6px}.calendar-days{gap:0}}

.mobile-search-summary,.mobile-sort-trigger{display:none}
.search-edit-dialog{border:0;color:var(--ink);padding:16px;background:#fff}
.search-edit-dialog:not([open]),.mobile-sort-dialog:not([open]){display:none}
.mobile-sort-dialog{border:0;border-radius:20px 20px 0 0;padding:18px 16px max(24px,env(safe-area-inset-bottom));color:var(--ink);position:fixed;inset:auto 0 0;width:100%;max-width:100%;max-height:85dvh;margin:0;overflow:auto;background:#fff}
.mobile-sort-dialog::backdrop,.search-edit-dialog::backdrop{background:#12233f66}
.mobile-sort-dialog header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:18px}
.mobile-sort-dialog button,.mobile-sort-dialog summary{min-height:48px;border:0;background:#fff;color:var(--ink);padding:12px;font-size:15px;text-align:left}
.mobile-sort-dialog header button{color:#0755b7}
.mobile-sort-choice{display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;border-radius:8px;margin-bottom:6px}
.mobile-sort-choice[aria-pressed=true]{background:#e6f1ff;color:#0755b7}
.mobile-sort-choice span{font-size:13px;white-space:nowrap}
.mobile-sort-dialog details>button{display:block;width:100%}
body.mobile-sort-active,body.search-editor-active{overflow:hidden}
@media(max-width:1100px){
 body.has-flight-results main>.tabs,body.has-flight-results .flight-heading{display:none}
 body.has-flight-results .search-area>form{display:none}
 body.has-flight-results .mobile-search-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 14px;width:100%;min-height:64px;border:1px solid #b6c9dc;background:#fff;border-radius:10px;text-align:left;padding:10px 14px;color:var(--ink);margin:12px 0}
 .mobile-search-summary strong{font-size:17px;grid-column:1}.mobile-search-summary>span{grid-column:1;font-size:13px}.mobile-search-summary .search-summary-edit{grid-column:2;grid-row:1/3;align-self:center;color:#0755b7;font-weight:700}
 .search-edit-dialog{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border-radius:0;overflow:auto;padding-bottom:max(24px,env(safe-area-inset-bottom))}
 .search-edit-dialog>form{display:block}
 .flight-sort-wrap>.flight-sort,.flight-sort-wrap>.flight-more-sort{display:none}
 .flight-sort-wrap{display:block;box-shadow:none;background:transparent;margin-bottom:12px}
 .mobile-sort-trigger{display:block;min-height:48px;width:100%;border:1px solid #bfd1e2;border-radius:9px;background:#fff;text-align:left;padding:12px 16px;color:var(--ink);font-weight:700}
}

@media(max-width:1100px){
 .flight-sort-wrap{display:contents}
 .mobile-results-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
 .flight-sidebar .mobile-results-toolbar .filter-toggle{width:auto;margin:0;min-height:48px;padding:10px 16px;border:1px solid #bfd1e2;border-radius:9px;background:#fff}
 .flight-sidebar:has(.filter-toggle[aria-expanded=false]) .filter-heading{display:none}
 .flight-sidebar:has(.filter-toggle[aria-expanded=false]){background:transparent;border:0;box-shadow:none;padding:0}
 .flight-sidebar .mobile-sort-trigger{min-width:0;font-size:14px}
 .flight-sidebar:has(.filter-toggle[aria-expanded=true]) .mobile-results-toolbar{padding:0 14px 12px}
}

/* Compact touch disclosures; labels remain visible beside their icons. */
@container(max-width:620px){
 .flight-booking>.flight-fare-info{gap:8px}
 .flight-ui-ready .flight-card :is(.flight-detail-toggle,.flight-provider-toggle){min-height:48px;padding:10px 12px;gap:10px;border-radius:9px;background:#f5faff}
 .flight-card .flight-action-icon{flex-basis:24px;width:24px;height:24px;border-radius:0;background:transparent}
 .flight-card .flight-action-icon svg{width:24px;height:24px}
 .flight-card .flight-action-copy>strong{font-size:14px;letter-spacing:0;gap:8px}
 .flight-card .flight-action-copy>small{display:none}
 .flight-card .flight-action-count{min-width:23px;height:23px;font-size:13px;padding:0 6px}
 .flight-card .flight-booking{padding-bottom:12px}
 .flight-card .trip-combination>summary{min-height:56px;flex-wrap:nowrap;gap:10px;padding:12px}
 .flight-card .trip-combination-icons{display:flex;gap:5px;flex-shrink:0}
 .flight-card .trip-combination-icons svg{width:20px;height:20px}
 .flight-card .trip-combination-copy{min-width:0;flex:1}
 .flight-card .trip-combination-copy>strong{font-size:14px;line-height:1.3}
 .flight-card .trip-combination-hint,.flight-card .trip-combination-action-label,.flight-card .trip-combination-close-label{display:none}
 .flight-card .trip-combination>summary .trip-combination-action{width:auto;min-height:24px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
}

/* Native dialog defaults must not compete with anchored desktop positioning. */
@media(min-width:1101px){
 .compact-search dialog.search-popover-panel,.compact-search .search-dates dialog.search-popover-panel{position:fixed;inset:auto;margin:0;max-width:calc(100vw - 32px);overflow:auto}
}

/* Keep the expanded mobile trip header in normal flow. */
@container(max-width:620px){
 .flight-card .trip-combination[open]>summary{position:static;width:auto;min-height:48px;padding:10px 12px;border-bottom:1px solid #cbdfe5}
 .flight-card .trip-combination[open]>summary .trip-combination-copy{position:static;width:auto;height:auto;overflow:visible;clip-path:none}
 .flight-card .trip-combination[open]>summary .trip-combination-icons{display:flex}
 .flight-card .trip-combination[open]>summary .trip-combination-close-label{display:none}
 .trip-combination-content{padding:12px}
 .trip-selection-heading{min-height:0;margin:0 0 12px;gap:0}
 .trip-selection-heading>.trip-heading-icon,.trip-selection-heading h3{display:none}
 .trip-selection-heading>div{min-width:0}
 .trip-selection-heading p{font-size:12px;line-height:1.5;overflow-wrap:anywhere}
 .trip-selection-heading p strong{font-size:15px}
 .trip-selected-cards{gap:10px}
 .trip-selected-card{min-width:0;min-height:0;grid-template-columns:76px minmax(0,1fr);padding:10px;gap:10px;border-radius:12px}
 .trip-selected-media{height:100px;min-height:0;max-height:120px;width:76px}
 .trip-selected-copy{min-width:0;overflow-wrap:anywhere}
 .trip-selected-copy h4{font-size:15px}
 .trip-selected-label{gap:5px;flex-wrap:wrap}
 .trip-selected-meta{font-size:12px}
 .trip-selected-price>strong{font-size:23px;letter-spacing:0}
 .trip-selected-card.trip-selected-empty{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;justify-content:normal;gap:8px;min-height:0}
 .trip-empty-icon>svg{width:24px;height:24px}
 .trip-selected-empty>strong{font-size:14px}
 .trip-selected-empty>p{grid-column:1/-1;text-align:left;margin:0}
 .trip-selected-empty>.trip-button{grid-column:1/-1;min-height:44px}
}

/* Mobile actions occupy one row; their accessible names remain available. */
.mobile-disclosure-title{display:none}
@container(max-width:620px){
 .flight-booking>.flight-fare-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .flight-fare-info>.flight-detail-toggle{grid-column:1;grid-row:1}
 .flight-fare-info>.flight-provider-toggle{grid-column:2;grid-row:1}
 .flight-fare-info:not(:has(>.flight-provider-toggle))>.flight-detail-toggle{grid-column:1}
 .flight-fare-info>.flight-details{grid-column:1/-1;grid-row:2}
 .flight-ui-ready .flight-card :is(.flight-detail-toggle,.flight-provider-toggle){justify-content:center;min-height:48px;padding:10px;gap:0;background:#fff}
 .flight-card :is(.flight-detail-toggle,.flight-provider-toggle)>.flight-action-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .flight-card :is(.flight-detail-toggle,.flight-provider-toggle)>.flight-detail-chevron{display:none}
 .mobile-disclosure-title{display:block;font-size:16px;margin:0 0 12px;grid-column:1/-1;color:#102944}
 .flight-card .trip-combination>summary,.flight-card .trip-combination[open]>summary{justify-content:center;gap:16px;min-height:48px;padding:8px 12px}
 .flight-card .trip-combination>summary .trip-combination-copy,.flight-card .trip-combination[open]>summary .trip-combination-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0}
 .flight-card .trip-combination-icons{gap:16px}
 .flight-card .trip-combination-icons svg{width:24px;height:24px}
 .flight-card .trip-combination>summary .trip-combination-action{margin-left:0}
 .flight-overview>.flight-main{gap:18px}
 .flight-panel{row-gap:24px}
 .flight-card .flight-departure{position:relative;min-width:0}
 .flight-card .flight-departure>strong{padding-right:46px}
 .flight-card .flight-departure>.leg-time-filter{position:absolute;inset:-7px 0 auto auto;grid-column:auto;grid-row:auto;width:44px;height:44px;border:0;background:transparent}
 .flight-card .flight-departure>.leg-time-filter:has(.leg-select:checked){background:#005cce;color:#fff}
 .flight-card .flight-leg{grid-template-rows:auto auto auto}
 .trip-selected-footer .trip-button,.trip-selected-edit>.trip-button{min-height:44px}
 .trip-selected-footer{gap:4px}
 .trip-selected-price{padding-top:4px}
 .trip-price-summary{padding:12px;gap:10px}
 .flight-card .price-help[open] .price-popover{position:fixed;inset:auto 12px 16px;width:auto;max-width:calc(100vw - 24px);z-index:20}
}
@media(max-width:620px){
 .header-inner>*{min-width:0}.header-state{white-space:normal;text-align:right}
 body:has(.trip-dialog[open]){overflow:hidden}
}

@media(max-width:620px){.result-list.flight-panel{gap:24px}}
@container(max-width:620px){
 .flight-card .flight-schedule strong{font-size:20px}
 .flight-card .flight-schedule>small,.flight-card .brand-name,.flight-card .journey-duration,.flight-card .journey-airports{font-size:12px}
}

.airport-chip-code{display:none}
@media(max-width:620px){
 .airport-field:not(.is-picker-open) .airport-chip-name{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .airport-field:not(.is-picker-open) .airport-chip-code{display:inline;font-size:16px;font-weight:650;white-space:nowrap}
}

.flight-airport-code{display:none}
@container(max-width:620px){
 .flight-card .flight-departure>strong,.flight-card .flight-arrival>strong{display:flex;align-items:center;min-height:44px}
 .flight-card .flight-arrival>strong{justify-content:flex-end}
 .flight-card .flight-departure>.leg-time-filter{top:0;border:1px solid #b6c9dc;background:#fff;border-radius:8px}
 .flight-card .flight-airport-full{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .flight-card .flight-airport-code{display:inline}
}

/* A single selected airport uses the field itself instead of a nested chip. */
@media(max-width:620px){
 .airport-field:not(.is-picker-open) .airport-chips:has(>.airport-chip:only-child){width:100%}
 .airport-field:not(.is-picker-open) .airport-chip:only-child{width:100%;min-width:0;justify-content:space-between;background:transparent;border:0;border-radius:0;padding:0 2px}
 .airport-field:not(.is-picker-open) .airport-chip:only-child .airport-remove{margin-left:auto}
}



/* Lokal mitgelieferte Schriften: kein CDN, keine externen Font-Anfragen. */





/* Komponenten-CSS: auf den bxx-Namensraum begrenzt. */
.bxx-experiences {
  --bxx-ink: #102b45;
  --bxx-muted: #536d86;
  --bxx-rail: #032d4b;
  --bxx-surface: #fcf8f0;
  --bxx-rule: #d9dfdf;
  --bxx-action: #005bc5;
  --bxx-gold: #f5b915;
  color: var(--bxx-ink);
  background: var(--bxx-surface);
  border: 1px solid #e7e1d7;
  border-radius: 19px;
  box-shadow: 0 4px 8px rgb(16 43 69 / 6%), 0 16px 40px rgb(16 43 69 / 3%);
  font: 400 17px/1.5 "BXX DM Sans", Arial, sans-serif;
  container-type: inline-size;
}
.bxx-experiences,
.bxx-experiences *,
.bxx-experiences *::before,
.bxx-experiences *::after { box-sizing: border-box; }
.bxx-experiences h1,
.bxx-experiences h2,
.bxx-experiences h3,
.bxx-experiences p { margin: 0; }
.bxx-experiences img { display: block; max-width: 100%; }
.bxx-experiences svg { flex: 0 0 auto; }
.bxx-experiences a { color: inherit; }
.bxx-experiences a:focus-visible {
  outline: 3px solid var(--bxx-action);
  outline-offset: 5px;
  border-radius: 6px;
}
.bxx-experiences__header {
  min-height: 86px;
  padding: 18px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px 28px;
}
.bxx-experiences__heading {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 24px;
}
.bxx-experiences__heading h2 {
  font: 400 clamp(28px, 2.9cqw, 44px)/1.12 "BXX DM Serif", Georgia, serif;
  letter-spacing: -.025em;
}
.bxx-experiences__disclosure {
  color: var(--bxx-muted);
  font-size: 14px;
  white-space: nowrap;
}
.bxx-experiences__all {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  color: var(--bxx-action) !important;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 4px;
  white-space: nowrap;
  min-height: 44px;
}
.bxx-experiences__all svg { width: 20px; height: 20px; }
.bxx-experiences__layout {
  display: grid;
  grid-template-columns: 23.25% minmax(0, 1fr);
  align-items: stretch;
  padding: 0 16px 16px 0;
  gap: 16px;
}
.bxx-experiences__intro {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  color: #fff9ec;
  background: var(--bxx-rail);
  border-radius: 17px 0 0 17px;
  min-height: 520px;
}
.bxx-experiences__intro-copy {
  position: relative;
  z-index: 1;
  padding: 28px 30px 245px;
}
.bxx-experiences__eyebrow {
  font-size: clamp(10px, 1cqw, 15px);
  text-transform: uppercase;
  letter-spacing: .16em;
  color: #d5e7f1;
  font-weight: 700;
}
.bxx-experiences__intro h3 {
  color: inherit;
  font: 400 clamp(35px, 4.05cqw, 64px)/.98 "BXX DM Serif", Georgia, serif;
  letter-spacing: -.025em;
  margin-top: 14px;
}
.bxx-experiences__accent {
  display: block;
  width: 57px;
  height: 4px;
  margin: 23px 0 16px;
  background: var(--bxx-gold);
}
.bxx-experiences__tagline {
  font-size: clamp(15px, 1.4cqw, 22px);
  line-height: 1.45;
  color: #fff9ec;
}
.bxx-experiences__scenery {
  position: absolute;
  z-index: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 310px;
  object-fit: cover;
  object-position: center bottom;
}
.bxx-experiences__offers { min-width: 0; display: flex; flex-direction: column; }
.bxx-experiences__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
  flex: 1;
}
.bxx-experience {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 0;
}
.bxx-experience + .bxx-experience::before {
  content: ''; position: absolute; top: 0; bottom: 0; left: -16px;
  width: 1px; background: var(--bxx-rule);
}
.bxx-experience:first-child { padding-left: 0; }
.bxx-experience:last-child { border-right: 0; padding-right: 0; }
.bxx-experience__media {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  aspect-ratio: 1.055;
  background: #d8e5e7;
}
.bxx-experience__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .3s ease;
}
.bxx-experience__category {
  position: absolute;
  top: 14px;
  left: 14px;
  max-width: calc(100% - 28px);
  padding: 4px 14px;
  border-radius: 30px;
  background: #fff;
  color: var(--bxx-ink);
  font-size: clamp(12px, 1.05cqw, 16px);
  line-height: 1.4;
  font-weight: 800;
  box-shadow: 0 2px 7px rgb(16 43 69 / 9%);
}
.bxx-experience__content { display: flex; flex: 1; flex-direction: column; padding: 0 7px; }
.bxx-experience__rating {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: 12px !important;
  font-size: clamp(12px, 1.16cqw, 17px);
  color: var(--bxx-muted);
  line-height: 1.5;
}
.bxx-experience__rating svg { width: 21px; height: 21px; fill: var(--bxx-gold); }
.bxx-experience__rating strong { color: var(--bxx-ink); font-weight: 800; }
.bxx-experience__content h3 {
  color: var(--bxx-ink);
  hyphens: auto;
  font-size: clamp(19px, 1.9cqw, 29px);
  line-height: 1.22;
  font-weight: 800;
  letter-spacing: -.025em;
  margin-top: 14px;
  min-height: 2.44em;
  overflow-wrap: break-word;
}
.bxx-experience__duration {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--bxx-muted);
  font-size: clamp(14px, 1.25cqw, 19px);
  margin-top: 13px !important;
}
.bxx-experience__duration svg { width: 25px; height: 25px; }
.bxx-experience__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding-top: 18px;
  margin-top: auto;
}
.bxx-experience__price { display: flex; gap: 11px; align-items: baseline; white-space: nowrap; }
.bxx-experience__price > span { color: var(--bxx-muted); font-size: clamp(15px, 1.4cqw, 21px); }
.bxx-experience__price strong {
  font-size: clamp(28px, 3.1cqw, 47px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -.04em;
}
.bxx-experience__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 15px clamp(12px, 1.7cqw, 27px);
  min-height: 55px;
  border-radius: 11px;
  background: var(--bxx-action);
  color: #fff !important;
  font-size: clamp(14px, 1.2cqw, 18px);
  font-weight: 800;
  line-height: 1.4;
  white-space: nowrap;
  text-decoration: none;
  transition: background-color .18s ease, transform .18s ease;
}
.bxx-experience__button svg { width: 20px; height: 20px; }
.bxx-experience__button:hover { background: #004ca5; transform: translateY(-2px); }
.bxx-experience__button:active { transform: translateY(0); }
.bxx-experiences__footnote {
  margin-top: 20px;
  padding: 11px 7px 0;
  border-top: 1px solid var(--bxx-rule);
  font-size: 12px;
  line-height: 1.5;
  color: var(--bxx-muted);
}
.bxx-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .bxx-experience:has(.bxx-experience__button:hover) .bxx-experience__media img { transform: scale(1.035); }
}

/* Container Queries funktionieren auch innerhalb einer schmalen Ergebnisseite. */
@container (max-width: 900px) {
  .bxx-experiences__layout { grid-template-columns: 1fr; padding: 0 20px 20px; gap: 22px; }
  .bxx-experiences__intro { min-height: 220px; border-radius: 13px; }
  .bxx-experiences__intro-copy { padding: 23px 28px; }
  .bxx-experiences__eyebrow { font-size: 12px; }
  .bxx-experiences__intro h3 { font-size: 40px; line-height: 1.1; }
  .bxx-experiences__intro h3 br { display: contents; }
  .bxx-experiences__intro h3 br::after { content: ' '; }
  .bxx-experiences__intro h3 { max-width: 62%; }
  .bxx-experiences__accent { margin: 15px 0 12px; }
  .bxx-experiences__tagline { font-size: 17px; }
  .bxx-experiences__scenery { width: 40%; height: 100%; left: auto; right: 0; object-fit: cover; }
  .bxx-experiences__grid { gap: 26px; }
  .bxx-experience { padding: 0; }
  .bxx-experience + .bxx-experience::before { left: -13px; }
  .bxx-experience__content { padding: 0 3px; }
  .bxx-experience__category { font-size: 13px; top: 10px; left: 10px; padding: 4px 10px; }
  .bxx-experience__rating { font-size: 13px; gap: 5px; }
  .bxx-experience__rating svg { width: 17px; height: 17px; }
  .bxx-experience__content h3 { font-size: 21px; min-height: 3.66em; }
  .bxx-experience__duration { font-size: 15px; }
  .bxx-experience__price strong { font-size: 33px; }
  .bxx-experience__price > span { font-size: 15px; }
  .bxx-experience__bottom { align-items: stretch; flex-direction: column; gap: 14px; }
  .bxx-experience__button { font-size: 15px; min-height: 48px; padding: 12px 18px; }
}
@container (max-width: 780px) {
  .bxx-experiences__header { padding: 21px 22px; align-items: flex-start; flex-direction: column; gap: 6px; }
  .bxx-experiences__heading h2 { font-size: 32px; }
  .bxx-experiences__heading { gap: 5px 16px; }
  .bxx-experiences__disclosure { font-size: 12px; }
  .bxx-experiences__all { font-size: 14px; min-height: 36px; }
  .bxx-experiences__intro h3 { max-width: 64%; font-size: 37px; }
  .bxx-experience__rating { font-size: 12px; }
  .bxx-experience__content h3 { font-size: 19px; }
}
@container (max-width: 600px) {
  .bxx-experiences__layout { padding: 0 16px 18px; gap: 24px; }
  .bxx-experiences__header { padding: 23px 20px 17px; }
  .bxx-experiences__heading h2 { font-size: 31px; }
  .bxx-experiences__intro { min-height: 249px; }
  .bxx-experiences__intro-copy { padding: 24px 23px; }
  .bxx-experiences__eyebrow { max-width: 65%; font-size: 10px; letter-spacing: .1em; }
  .bxx-experiences__intro h3 { font-size: 38px; max-width: 75%; line-height: 1; }
  .bxx-experiences__intro h3 br { display: block; }
  .bxx-experiences__intro h3 br::after { content: none; }
  .bxx-experiences__tagline { font-size: 14px; }
  .bxx-experiences__accent { width: 42px; height: 3px; margin: 15px 0 10px; }
  .bxx-experiences__scenery { width: 41%; height: 100%; object-position: 38% bottom; }
  .bxx-experiences__grid { grid-template-columns: 1fr; gap: 26px; }
  .bxx-experience + .bxx-experience::before { display: none; }
  .bxx-experience,
  .bxx-experience:first-child,
  .bxx-experience:last-child { padding: 0; border-right: 0; }
  .bxx-experience + .bxx-experience { border-top: 1px solid var(--bxx-rule); padding-top: 26px; }
  .bxx-experience__media { aspect-ratio: 1.25; }
  .bxx-experience__category { font-size: 14px; top: 13px; left: 13px; }
  .bxx-experience__content { padding: 0 4px; }
  .bxx-experience__rating { font-size: 14px; margin-top: 14px !important; gap: 7px; }
  .bxx-experience__rating svg { width: 19px; height: 19px; }
  .bxx-experience__content h3 { min-height: 0; font-size: 25px; margin-top: 11px; }
  .bxx-experience__duration { font-size: 16px; margin-top: 13px !important; }
  .bxx-experience__bottom { flex-direction: row; align-items: center; gap: 10px; padding-top: 17px; }
  .bxx-experience__price { gap: 8px; }
  .bxx-experience__price strong { font-size: 37px; }
  .bxx-experience__button { font-size: 15px; padding: 13px 18px; }
  .bxx-experiences__footnote { margin-top: 24px; padding-top: 14px; font-size: 11px; }
}
@container (max-width: 330px) {
  .bxx-experiences__heading h2 { font-size: 28px; }
  .bxx-experiences__intro-copy { padding: 23px 18px; }
  .bxx-experiences__intro h3 { font-size: 35px; }
  .bxx-experience__price strong { font-size: 33px; }
  .bxx-experience__button { font-size: 14px; gap: 5px; padding: 12px 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .bxx-experiences *, .bxx-experiences *::before, .bxx-experiences *::after { transition: none !important; }
}


/* Das Zielbild ist ein gewöhnliches austauschbares Bild, ohne feste Sonne. */
.bxx-experiences__scenery {
  height: 265px;
  border-top-left-radius: 78% 35%;
  border-top-right-radius: 22% 10%;
  object-position: center;
}
.bxx-experiences__destination { overflow-wrap: anywhere; hyphens: auto; }
@container (max-width: 900px) {
  .bxx-experiences__scenery { height: 100%; border-radius: 50% 0 0 0; }
}
@container (max-width: 600px) {
  .bxx-experiences__scenery { height: 100%; border-radius: 65% 0 0 0; }
}


.flight-experiences.bxx-experiences{padding:0;min-width:0}
.bxx-experiences__intro-copy{padding-bottom:285px}
.bxx-experiences__intro:not(:has(.bxx-experiences__scenery)) .bxx-experiences__intro-copy{padding-bottom:28px}
.bxx-experience__media:has(.bxx-experience__missing){display:grid;place-items:center}
.bxx-experience__missing{padding:16px;color:var(--bxx-muted);font-size:14px}
.bxx-experience__rating{flex-wrap:wrap}
@container(min-width:901px) and (max-width:1150px){.bxx-experiences__intro-copy{padding:24px 20px 285px}.bxx-experiences__grid{gap:20px}.bxx-experience + .bxx-experience::before{left:-10px}.bxx-experience__bottom{flex-direction:column;align-items:stretch}.bxx-experience__button{min-height:44px;padding:11px 12px}.bxx-experience__rating{font-size:12px}.bxx-experiences__header{padding:18px 24px}}
@container(max-width:900px){.bxx-experiences__intro-copy{padding:23px 28px}.bxx-experiences__intro h3{max-width:60%}.bxx-experiences__tagline{max-width:60%}.bxx-experiences__scenery{width:38%}}
@container(max-width:600px){.bxx-experiences__intro-copy{padding:24px 20px}.bxx-experiences__intro h3{font-size:clamp(27px,8.5cqi,38px);max-width:65%}.bxx-experiences__scenery{width:35%}.bxx-experience__price{white-space:normal;flex-wrap:wrap}.bxx-experiences__all{white-space:normal}}

/* One mobile recommendation; the destination page contains all experiences. */
.bxx-experiences__mobile-more{display:none}
@container(max-width:600px){
 .bxx-experiences__header{padding:16px 14px 12px}
 .bxx-experiences__heading h2{font-size:23px}
 .bxx-experiences__all{display:none}
 .bxx-experiences__layout{padding:0 12px 14px;gap:14px}
 .bxx-experiences__intro{min-height:0}
 .bxx-experiences__intro-copy,.bxx-experiences__intro:not(:has(.bxx-experiences__scenery)) .bxx-experiences__intro-copy{padding:16px}
 .bxx-experiences__intro h3{font-size:27px;max-width:67%;line-height:1.08}
 .bxx-experiences__eyebrow,.bxx-experiences__tagline,.bxx-experiences__accent{display:none}
 .bxx-experiences__grid>.bxx-experience~.bxx-experience{display:none}
 .bxx-experiences__grid{gap:0}
 .bxx-experience{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;align-items:start}
 .bxx-experience__media{aspect-ratio:auto;height:112px;min-width:0}
 .bxx-experience__category{display:none}
 .bxx-experience__content{min-width:0;padding:0}
 .bxx-experience__content h3{font-size:17px;line-height:1.3;margin-top:6px}
 .bxx-experience__rating{font-size:12px;margin-top:0!important}
 .bxx-experience__duration{font-size:13px;margin-top:8px!important}
 .bxx-experience__bottom{flex-wrap:wrap;padding-top:10px;gap:8px}
 .bxx-experience__price strong{font-size:23px}
 .bxx-experience__button{min-height:44px;padding:10px 14px;font-size:14px}
 .bxx-experiences__mobile-more{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin-top:14px;border:1px solid #a8c5e5;border-radius:8px;color:#0755b7;font-size:15px;font-weight:650;text-decoration:none}
 .bxx-experiences__mobile-more svg{width:18px;height:18px}
 .bxx-experiences__mobile-more:focus-visible{outline:3px solid #0755b7;outline-offset:2px}
 .bxx-experiences__footnote{margin-top:12px;padding-top:10px}
}

/* Hotel and car selection: binding September 2026 reference layouts. */
.trip-dialog{--trip-navy:#081b49;--trip-muted:#536b92;width:min(1000px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 24px);padding:0;margin:auto;border:1px solid #d9e6f0;border-radius:16px;background:#fff;color:var(--trip-navy);font-size:15px;line-height:1.4;overflow:hidden;box-shadow:0 12px 60px #173d6530;container-type:inline-size}
.trip-dialog[open]{display:flex;flex-direction:column}
.trip-dialog *{box-sizing:border-box}
.trip-dialog svg{width:24px;height:24px;flex-shrink:0;vertical-align:middle}
.trip-dialog button,.trip-dialog select,.trip-dialog input,.trip-dialog summary{font:inherit}
.trip-dialog button,.trip-dialog summary{touch-action:manipulation}
.trip-dialog :focus-visible{outline:3px solid #2180ca;outline-offset:3px}
.trip-dialog-top{display:flex;align-items:center;gap:30px;padding:10px 26px;min-height:57px;border-bottom:1px solid #e2ebf2;flex-shrink:0;background:white}
.trip-dialog-brand{font-size:25px;font-weight:800;letter-spacing:-1px;color:#005ac7}
.trip-dialog-top>small{font-size:12px;color:var(--trip-muted)}
.trip-dialog-top>.trip-button{margin-left:auto;display:flex;gap:10px;align-items:center;min-height:40px;border:1px solid #d4e0ee;background:white;padding:8px 14px;font-size:14px;white-space:nowrap}
.trip-dialog-top>.trip-button svg{width:20px;height:20px}
.trip-dialog-body{overflow:auto;min-height:0;padding:16px 22px 20px;overscroll-behavior:contain;scrollbar-gutter:stable}
.trip-dialog-hero{display:grid;grid-template-columns:80px minmax(0,1fr) 34%;gap:20px;align-items:center;min-height:148px;padding:0 4px 8px}
.trip-hero-icon{display:grid;place-items:center;width:76px;height:76px;border-radius:20px;background:#ebf7fe;color:#063b90;align-self:start;margin-top:9px}
.trip-hero-icon svg{width:46px;height:46px;stroke-width:1.7}
.trip-hero-copy h2{font-size:32px;line-height:1.13;font-weight:750;letter-spacing:-.7px;margin:0 0 6px}
.trip-hero-copy>p{font-size:18px;color:var(--trip-muted);margin:0}
.trip-hero-meta{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:16px;color:var(--trip-muted);font-size:14px}
.trip-hero-meta>span{display:flex;align-items:center;gap:10px}
.trip-hero-meta svg{width:20px;height:20px;color:#234d84}
.trip-destination-photo{display:block;width:100%;height:138px;object-fit:cover;border-radius:10px}
.trip-destination-art{height:138px;display:grid;place-items:center;background:#edf7fc;border-radius:10px;color:#134c80;overflow:hidden}
.trip-destination-art>svg{width:100%;height:95px}
.trip-dialog .trip-tabs{display:flex;gap:18px;margin:0 4px 16px;border-bottom:1px solid #d8e2ee}
.trip-dialog .trip-tabs>.trip-button{display:flex;align-items:center;gap:18px;min-height:48px;padding:8px 14px 12px;border:0;border-bottom:3px solid transparent;border-radius:0;background:none;color:#425d87;font-size:16px;font-weight:500}
.trip-dialog .trip-tabs>.trip-button[aria-pressed=true]{border-bottom-color:#005ad4;background:none;color:#005ad4;font-weight:700}
.trip-dialog .trip-form{display:grid;grid-template-columns:1.05fr 1.05fr 1.25fr .88fr;align-items:end;gap:16px;padding:18px 24px;background:#f0f9fd;border:1px solid #e5f3fa;border-radius:15px;margin:0 0 20px;position:relative}
.trip-form-heading{grid-column:1/-1;display:flex;align-items:baseline;gap:20px;flex-wrap:wrap}
.trip-form-heading h3{font-size:23px;line-height:1.3;margin:0;font-weight:750;letter-spacing:-.35px}
.trip-form-heading small{font-size:13px;color:var(--trip-muted)}
.trip-dialog .trip-field{display:grid;gap:5px;font-size:14px;color:#334c78;min-width:0;grid-column:auto}
.trip-dialog .trip-field input,.trip-dialog .trip-field select{display:block;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;padding:10px 14px;border:1px solid #bccde2;border-radius:8px;color:#10254d;background:white;font-size:15px}
.trip-dialog .trip-field:has([type=date]) input{padding-inline:12px}
.trip-dialog .trip-destination-field,.trip-dialog .trip-place-select{grid-column:1/-1}
.trip-dialog .trip-place-select[hidden]{display:none}
.trip-dialog .trip-search{grid-column:auto;display:flex;align-items:center;justify-content:center;gap:10px;min-height:58px;width:100%;padding:12px 14px;margin:0;border:1px solid #005ad4;border-radius:8px;background:linear-gradient(120deg,#0060dc,#0050bd);color:#fff;font-weight:700;font-size:15px}
.trip-dialog .trip-search:disabled{opacity:.65}
.trip-guests{position:relative;min-width:0;align-self:end}
.trip-guests>summary{list-style:none;cursor:pointer;display:grid;gap:5px;color:#334c78;font-size:14px}
.trip-guests>summary::-webkit-details-marker{display:none}
.trip-guest-box{display:flex;align-items:center;gap:10px;min-height:48px;padding:7px 12px;background:white;border:1px solid #bccde2;border-radius:8px;color:#122b57}
.trip-guest-box>span{display:grid;min-width:0;font-size:13px}
.trip-guest-box>svg{width:20px;height:20px}.trip-guest-box>svg:last-child{margin-left:auto;width:17px}
.trip-guest-children{font-size:12px;color:var(--trip-muted)}
.trip-guest-fields{position:absolute;top:calc(100% + 8px);right:0;z-index:3;display:grid;gap:12px;min-width:260px;max-width:90vw;padding:16px;border:1px solid #c8d8e9;border-radius:10px;background:#fff;box-shadow:0 8px 24px #132e5625}
.trip-stay-length{grid-column:1/-1;display:flex;gap:13px;align-items:center;font-size:14px;color:var(--trip-muted);margin:0}
.trip-stay-length>svg{width:20px;height:20px}
.trip-dialog .trip-field-note{grid-column:1/-1;display:flex;align-items:center;gap:10px;font-size:14px;color:var(--trip-muted);margin:0;line-height:1.4}
.trip-dialog[data-kind=car] .trip-form{grid-template-columns:1.5fr 1.5fr 1fr}
.trip-dialog[data-kind=car] .trip-form-heading small{margin-left:auto}
.trip-dialog[data-kind=car] .trip-airport-field{grid-column:1/-1;width:calc(50% - 12px);grid-row:2}
.trip-dialog[data-kind=car] .trip-airport-field:has([name=returnAirport]){justify-self:end}
.trip-dialog[data-kind=car] .trip-form>.trip-field:has([name=pickup]),.trip-dialog[data-kind=car] .trip-form>.trip-field:has([name=dropoff]){grid-row:3}
.trip-dialog[data-kind=car] .trip-search{grid-row:3}
.trip-results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 2px 16px}
.trip-results-heading>div{display:flex;gap:22px;align-items:baseline;flex-wrap:wrap}
.trip-results-heading h3{font-size:24px;line-height:1.3;letter-spacing:-.4px;margin:0}
.trip-dialog[data-kind=car] .trip-results-heading>div{display:grid;gap:2px}
.trip-dialog .trip-status{font-size:14px;color:var(--trip-muted);margin:0;min-height:0}
.trip-dialog .trip-status[data-loading=true]{animation:trip-status-pulse 1.3s ease-in-out infinite alternate}
@keyframes trip-status-pulse{to{opacity:.5}}
.trip-sort{display:flex;gap:4px;align-items:center;white-space:nowrap;font-size:13px;color:var(--trip-muted)}
.trip-sort select{border:0;background:white;color:var(--trip-navy);max-width:155px;padding:8px 4px;font-size:13px}
.trip-dialog[data-kind=car] .trip-sort{border:1px solid #d1dfed;border-radius:8px;padding:3px 10px}
.trip-dialog .trip-offers{display:grid;gap:12px;margin:0}
.trip-dialog .trip-offer{display:grid;grid-template-columns:27% minmax(0,1fr) 195px;gap:18px;align-items:stretch;padding:12px;border:1px solid #d3e0ee;border-radius:12px;min-height:208px;background:#fff;animation:trip-arrive .35s ease-out}
.trip-dialog .trip-offer[data-selected=true]{background:#f4fbfa;border-color:#009e99;box-shadow:inset 3px 0 #009e99}
.trip-dialog .trip-offer-media{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-width:0;min-height:184px;overflow:hidden;border-radius:7px;background:#f0f4f7;color:#667d94;font-size:12px}
.trip-dialog .trip-offer-media>img{display:block;width:100%;height:100%;min-height:184px;max-height:240px;object-fit:cover}
.trip-dialog .trip-offer-media>svg{width:55px;height:55px}
.trip-dialog .trip-offer[data-kind=car] .trip-offer-media>img,.trip-dialog .trip-offer-media>img[src$="/rimg/affiliate/sandbox.png"]{object-fit:contain}
.trip-dialog .trip-offer-copy{grid-column:auto;grid-row:auto;display:flex;flex-direction:column;min-width:0;gap:6px;padding:4px 0}
.trip-dialog .trip-offer-copy>h4{font-size:20px;font-weight:750;line-height:1.25;color:#091b48;letter-spacing:-.25px;margin:0;overflow-wrap:anywhere}
.trip-offer-location{display:flex;align-items:flex-start;gap:7px;margin:0;color:var(--trip-muted);font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.trip-offer-location>svg{width:18px;height:20px}
.trip-dialog .trip-offer[data-kind=car] .trip-offer-location>svg{display:none}
.trip-dialog .trip-stars{font-size:11px;line-height:1;color:#957122;letter-spacing:1px}
.trip-dialog .trip-rating{display:flex;align-items:center;gap:12px;margin:0 0 3px;font-size:13px;color:#173e53}
.trip-dialog .trip-rating>b{font-size:18px;line-height:1.2;padding:6px 12px;border-radius:14px;background:#ddf7f3;color:#007b7c}
.trip-dialog .trip-facts{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px 16px;margin-top:auto;padding:8px 0}
.trip-dialog .trip-facts>small{display:flex;align-items:center;gap:10px;padding:0;background:none;font-size:12px;color:var(--trip-muted);line-height:1.4;max-width:100%}
.trip-dialog .trip-facts svg{width:22px;height:24px;color:#254a85;flex-shrink:0}
.trip-dialog .trip-offer[data-kind=car] .trip-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin-top:4px;padding:0 0 8px}
.trip-dialog .trip-offer[data-kind=car] .trip-facts>small{font-size:14px}
.trip-dialog .trip-provider{display:grid;gap:2px;margin:5px 0 0;color:var(--trip-muted);font-size:13px}
.trip-dialog .trip-provider>small{font-size:12px}
.trip-dialog .trip-offer[data-kind=car] .trip-provider{border-top:1px solid #d9e5ee;padding-top:9px;margin-top:auto}
.trip-dialog .trip-offer-price{display:flex;flex-direction:column;align-self:stretch;align-items:stretch;justify-content:center;gap:6px;min-width:0;max-width:none;width:auto;padding:10px 3px 10px 22px;margin:10px 0;border-left:1px solid #d9e5ee;text-align:right;grid-column:auto;grid-row:auto}
.trip-dialog .trip-offer-price>strong{font-size:28px;line-height:1.2;white-space:nowrap;letter-spacing:-.6px;color:#071b4b}
.trip-dialog .trip-offer-price>small{font-size:13px;color:var(--trip-muted);grid-column:auto;grid-row:auto}
.trip-dialog .trip-offer-price>.trip-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:10px 9px;margin-top:12px;font-size:14px;font-weight:700;border:1px solid #0061d9;border-radius:7px;background:#fff;color:#0056c7;grid-column:auto;grid-row:auto}
.trip-dialog .trip-offer-price>.trip-button[aria-pressed=true]{border-color:#008f90;background:#e3f5f3;color:#00656a}
.trip-dialog .trip-offer-price>.trip-draft-remove{border:0;background:transparent;color:var(--trip-muted);font-size:12px;min-height:26px;padding:0;margin:0;font-weight:400}
.trip-dialog .trip-draft-remove svg{width:17px;height:17px}
.trip-rental-conditions{font-size:12px;color:#005cc7;text-align:center;margin-top:8px}
.trip-rental-conditions>summary{list-style:none;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer}
.trip-rental-conditions>summary::-webkit-details-marker{display:none}
.trip-rental-conditions svg{width:19px;height:19px}
.trip-rental-conditions>p{font-size:12px;margin-top:8px;color:var(--trip-muted)}
.trip-rental-conditions>a{display:block;margin-top:6px;text-decoration:underline}
.trip-dialog .trip-more{grid-column:1/-1;display:flex;gap:14px;align-items:center;justify-content:center;justify-self:center;margin:8px 0 0;padding:12px 24px;min-height:48px;font-size:14px;font-weight:700;border:1px solid #cfdded;background:#fff;border-radius:8px;color:#0058c6}
.trip-dialog-selection{display:grid;grid-template-columns:80px minmax(0,1fr) auto 278px;gap:22px;align-items:center;padding:18px 22px 20px;border-top:1px solid #dae5ef;background:#fff;flex-shrink:0;box-shadow:0 -4px 12px #eaf4fa44}
.trip-footer-icon{display:grid;place-items:center;width:80px;height:80px;border-radius:50%;background:#eaf7ff;color:#0b3475}
.trip-footer-icon>svg{width:40px;height:40px}
.trip-footer-copy{display:grid;gap:5px;min-width:0}.trip-footer-copy>strong{font-size:18px;line-height:1.25}.trip-footer-copy>span{font-size:15px;color:var(--trip-muted);line-height:1.3;overflow-wrap:anywhere}
.trip-footer-price{display:grid;gap:3px;text-align:right}.trip-footer-price>strong{font-size:28px;line-height:1.2;white-space:nowrap;color:#081b49;letter-spacing:-.7px}.trip-footer-price>small{font-size:12px;color:var(--trip-muted)}
.trip-footer-action{display:grid;gap:10px;text-align:right}
.trip-footer-action>.trip-button{display:flex;align-items:center;justify-content:center;gap:12px;min-height:58px;border:1px solid #0055ce;border-radius:7px;background:linear-gradient(120deg,#0060d9,#0050bd);color:#fff;padding:12px 16px;font-size:15px;font-weight:750}
.trip-footer-action>.trip-button:disabled{opacity:.5;cursor:default}.trip-footer-action>small{font-size:12px;color:#6b80a2;line-height:1.4}
@container(max-width:850px){.trip-dialog-hero{grid-template-columns:64px minmax(0,1fr) 28%;gap:14px}.trip-hero-icon{width:60px;height:60px}.trip-hero-icon svg{width:37px;height:37px}.trip-hero-copy h2{font-size:27px}.trip-hero-copy>p{font-size:16px}.trip-hero-meta{gap:8px;font-size:12px}.trip-dialog .trip-form{padding:18px;gap:12px;grid-template-columns:1fr 1fr}.trip-dialog .trip-search{min-height:48px}.trip-dialog[data-kind=car] .trip-form{grid-template-columns:1fr 1fr}.trip-dialog[data-kind=car] .trip-airport-field{grid-column:1/-1}.trip-dialog[data-kind=car] .trip-search{grid-row:4;grid-column:1/-1}.trip-dialog .trip-offer{grid-template-columns:24% minmax(0,1fr) 160px;gap:14px}.trip-dialog .trip-offer-price{padding-left:14px}.trip-dialog .trip-offer-copy>h4{font-size:18px}.trip-dialog .trip-offer-price>strong{font-size:25px}.trip-dialog-selection{grid-template-columns:55px minmax(0,1fr) auto 220px;gap:14px;padding:14px 18px}.trip-footer-icon{width:55px;height:55px}.trip-footer-icon>svg{width:30px;height:30px}.trip-footer-copy>strong{font-size:15px}.trip-footer-copy>span{font-size:12px}.trip-footer-price>strong{font-size:25px}.trip-footer-action>.trip-button{font-size:14px;min-height:50px}.trip-footer-action>small{font-size:10px}}
@media(max-width:620px){.trip-dialog{width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}.trip-dialog-top{padding:9px 14px;gap:10px;min-height:54px}.trip-dialog-brand{font-size:21px}.trip-dialog-top>small{display:none}.trip-dialog-top>.trip-button{min-height:36px;padding:6px 10px;font-size:12px}.trip-dialog-body{padding:12px;scrollbar-gutter:auto}.trip-dialog-hero{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:0;min-height:0;margin-bottom:16px}.trip-hero-icon{width:48px;height:48px;border-radius:12px;margin:0;align-self:start}.trip-hero-icon svg{width:30px;height:30px}.trip-hero-copy h2{font-size:24px;letter-spacing:-.5px}.trip-hero-copy>p{font-size:14px}.trip-hero-meta{font-size:12px;gap:6px;margin-top:10px}.trip-hero-meta svg{width:17px;height:17px}.trip-destination-photo,.trip-destination-art{grid-column:1/-1;width:100%;height:105px}.trip-dialog .trip-tabs{gap:14px;margin:0 0 14px}.trip-dialog .trip-tabs>.trip-button{font-size:14px;gap:10px;min-height:43px;padding:6px 10px 10px}.trip-dialog .trip-form{padding:14px;gap:12px;margin-bottom:18px}.trip-form-heading{gap:4px}.trip-form-heading h3{font-size:20px}.trip-form-heading small{font-size:11px}.trip-dialog .trip-field{font-size:12px}.trip-dialog .trip-field input,.trip-dialog .trip-field select{height:44px;min-height:44px;font-size:14px;padding:8px;max-width:100%}.trip-dialog .trip-guests{grid-column:1/-1}.trip-dialog .trip-search{grid-column:1/-1;font-size:14px}.trip-dialog .trip-field-note,.trip-stay-length{font-size:12px}.trip-dialog[data-kind=car] .trip-airport-field{grid-column:auto;grid-row:auto;width:100%}.trip-dialog[data-kind=car] .trip-form>.trip-field:has([name=pickup]),.trip-dialog[data-kind=car] .trip-form>.trip-field:has([name=dropoff]){grid-row:auto;grid-column:1/-1}.trip-dialog[data-kind=car] .trip-search{grid-row:auto}.trip-results-heading{align-items:flex-start;flex-wrap:wrap;gap:6px;margin-bottom:12px}.trip-results-heading>div{gap:4px;display:grid}.trip-results-heading h3{font-size:20px}.trip-dialog .trip-status{font-size:12px}.trip-sort,.trip-sort select{font-size:12px}.trip-dialog .trip-offer{grid-template-columns:105px minmax(0,1fr);padding:10px;gap:12px;min-height:0}.trip-dialog .trip-offer-media{min-height:120px;align-self:start}.trip-dialog .trip-offer-media>img{min-height:120px;height:140px;max-height:none}.trip-dialog .trip-offer-copy{padding:0;gap:5px;grid-column:auto}.trip-dialog .trip-offer-copy>h4{font-size:16px}.trip-offer-location{font-size:12px}.trip-dialog .trip-rating{gap:7px;font-size:11px}.trip-dialog .trip-rating>b{font-size:15px;padding:4px 8px}.trip-dialog .trip-facts{gap:8px;padding:4px 0}.trip-dialog .trip-facts>small,.trip-dialog .trip-offer[data-kind=car] .trip-facts>small{font-size:11px;gap:6px}.trip-dialog .trip-facts svg{width:18px;height:20px}.trip-dialog .trip-offer[data-kind=car] .trip-facts{grid-template-columns:1fr;gap:7px}.trip-dialog .trip-provider{font-size:11px}.trip-dialog .trip-provider>small{font-size:11px}.trip-dialog .trip-offer-price{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:4px 12px;border:0;border-top:1px solid #d9e5ee;margin:0;padding:10px 0 0;text-align:left;align-items:center}.trip-dialog .trip-offer-price>strong{font-size:24px;grid-column:1;grid-row:1}.trip-dialog .trip-offer-price>small{font-size:11px;grid-column:1;grid-row:2}.trip-dialog .trip-offer-price>.trip-button{grid-column:2;grid-row:1/3;margin:0;font-size:12px;min-height:42px;padding:8px}.trip-dialog .trip-offer-price>.trip-draft-remove{grid-column:2;grid-row:3;min-height:28px}.trip-rental-conditions{grid-column:1;grid-row:3;margin:5px 0 0;text-align:left}.trip-rental-conditions>summary{justify-content:flex-start;font-size:11px}.trip-dialog .trip-more{font-size:12px;padding:10px 14px;min-height:44px;margin:4px 0}.trip-dialog-selection{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 14px}.trip-footer-icon{display:none}.trip-footer-copy>strong{font-size:14px}.trip-footer-copy>span{font-size:11px}.trip-footer-price>strong{font-size:24px}.trip-footer-price>small{font-size:10px}.trip-footer-action{grid-column:1/-1;gap:5px}.trip-footer-action>.trip-button{min-height:44px;font-size:14px;padding:8px}.trip-footer-action>small{font-size:10px;text-align:center}}
@media(prefers-reduced-motion:reduce){.trip-dialog .trip-status[data-loading=true],.trip-dialog .trip-offer{animation:none}}

.trip-dialog .trip-destination-field{position:relative}.trip-dialog .trip-destination-field>svg{position:absolute;bottom:12px;left:13px;width:22px;height:24px;color:#264f88}.trip-dialog .trip-destination-field>input{padding-left:46px}.trip-dialog .trip-airport-field>span{display:flex;align-items:center;gap:8px}.trip-dialog .trip-airport-field>span>svg{width:18px;height:20px}

/* Compact mobile dialog with one stable scrolling surface. */
@media(max-width:620px){
 .trip-dialog{inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}
 .trip-dialog-body{padding:12px;min-width:0;touch-action:pan-y}
 .trip-dialog-hero{grid-template-columns:36px minmax(0,1fr);gap:10px;min-height:0;padding:0 0 12px}
 .trip-hero-icon{width:36px;height:36px;margin:0;border-radius:8px}.trip-hero-icon svg{width:24px;height:24px}
 .trip-hero-copy h2{font-size:20px;margin:0}.trip-hero-copy>p,.trip-hero-meta,.trip-destination-photo,.trip-destination-art{display:none}
 .trip-dialog .trip-form{padding:12px;gap:10px;margin-bottom:16px}
 .trip-dialog .trip-field input,.trip-dialog .trip-field select{font-size:16px}
 .trip-form-heading h3{font-size:17px}.trip-form-heading small{display:none}
 .trip-dialog .trip-offer,.trip-dialog .trip-offer *{min-width:0}
 .trip-dialog .trip-offer{animation:none}
 .trip-dialog .trip-offer-price>.trip-button{min-height:44px}
 .trip-dialog-top>.trip-button{min-height:44px}
 .trip-guest-fields{position:static;min-width:0;max-width:100%;margin-top:8px}
}

/* Shared BilligXXL typography; hero dimensions follow the original index. */
.travel-site-header .header-inner{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:24px}
.travel-site-header .brand{flex:none;line-height:1}
.travel-site-header .brand img{display:block;width:156px;height:auto}
.travel-help{display:flex;align-items:center;justify-content:center;min-height:48px;margin-left:auto;padding:10px 6px;color:#102c50;text-decoration:none;font-size:15px;font-weight:650}
.flight-page-main{padding-block:20px}
.flight-hero{position:relative;isolation:isolate;height:428px;min-height:0;overflow:hidden;background:#d6e8f4}
.flight-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;z-index:-2}
.flight-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgb(255 255 255 / 30%),transparent 54%);z-index:-1}
.flight-hero-copy{position:absolute;inset:0;width:100%;max-width:none;margin:0;padding:100px max(5vw,calc((100vw - 1600px)/2))}
.flight-hero h1{margin:0;color:#0a2148;font:750 clamp(31px,2.5vw,43px)/1.12 "Segoe UI",Arial,sans-serif;letter-spacing:-.035em;text-shadow:0 1px 15px rgb(255 255 255 / 55%)}
.flight-hero+main{background:#fff}
.flight-hero+main>.flight-page-main{position:relative;width:min(1152px,calc(100% - 7.1vw));margin-top:-80px;padding:0 0 51px}
.home-mode-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:18px;border-bottom:1px solid #dce5ee}
.home-mode-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:12px 8px;border:0;border-bottom:3px solid transparent;background:transparent;color:#263f60;cursor:pointer;font-weight:650;font-size:15px;min-width:0}
.home-mode-tabs button[aria-selected=true]{color:#0755b7;border-bottom-color:#0755b7;background:#edf5ff}
.home-mode-tabs svg{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5}
.home-mode-tabs .ui-icon{fill:currentColor;stroke:none}
.home-mode-tabs button:disabled{opacity:1;color:#687789;cursor:default;background:transparent;border-bottom-color:transparent}
body[data-kind=flug] #reise-suche:has(.home-mode-tabs){background:white;border:1px solid #dce5ee;border-radius:18px;padding:16px 26px;box-shadow:0 14px 32px rgb(12 38 78 / 14%)}
#reise-suche{scroll-margin-top:12px}
@media(max-width:800px){
 .flight-hero{height:254px}.flight-hero-copy{padding:43px 25px}.flight-hero h1{font-size:clamp(27px,5vw,34px)}
 .flight-hero+main>.flight-page-main{width:calc(100% - 30px);margin-top:-55px;padding-bottom:40px}
 .home-mode-tabs{gap:0}
}
@media(max-width:620px){
 .travel-site-header .header-inner{min-height:58px;padding-top:0;gap:12px}.travel-site-header .brand img{width:120px}.travel-help{font-size:13px;min-height:44px}
 .home-mode-tabs{margin-bottom:12px}.home-mode-tabs button{flex-direction:column;gap:5px;min-height:62px;font-size:12px;padding:8px 2px}.home-mode-tabs svg{width:21px;height:21px}
 body[data-kind=flug] #reise-suche:has(.home-mode-tabs){padding:6px 10px 12px;border-radius:13px}
}
@media(max-width:390px){.flight-hero{height:226px}.flight-hero-copy{padding:28px 18px}.flight-hero+main>.flight-page-main{width:calc(100% - 20px)}}

/* Keep search criteria together; the results sidebar begins beside sorting. */
@media(min-width:1101px){
 .compact-search{max-width:1100px;margin-inline:auto}
 body.has-flight-search .search-area{margin-left:calc(clamp(300px,26vw,400px) + 24px)}
 body.has-flight-search .compact-search{max-width:none}
 .compact-options{gap:16px;margin-bottom:8px}
 .compact-search-tail{margin-top:10px}
 .compact-search:not(.is-multi) .compact-route{grid-template-columns:minmax(170px,1fr) 38px minmax(170px,1fr) auto auto 104px;gap:8px;padding:8px;min-height:68px}
 .compact-search:not(.is-multi) .compact-route>.airport-field,.compact-search:not(.is-multi) .compact-route>.search-dates,.compact-search:not(.is-multi) .compact-route>.search-travelers,.compact-search:not(.is-multi) .compact-route>.search-button{grid-row:auto;grid-column:auto}
 .compact-route .search-popover-trigger{min-height:48px;padding:10px 12px}
 .compact-route>.search-button{height:48px}
 .compact-search .airport-field.has-airports{flex-wrap:nowrap;align-items:center}
 .compact-search .has-airports .airport-chips{display:flex;align-items:center;flex-wrap:wrap;gap:6px;flex:1 1 auto;min-width:0}
 .compact-search .has-airports .airport-entry{flex:0 1 28px;min-width:0;width:28px;height:34px}
 .compact-search .has-airports .airport-entry:focus{flex-basis:90px}
 .compact-search .airport-panel{max-width:min(520px,calc(100vw - 40px))}
 body[data-kind=flug] .results-area{padding-top:16px}
 .results-body>.flight-sort-wrap{margin:0 0 16px}
 .flight-sort button,.flight-sort-loading>div,.flight-more-sort>summary,.flight-more-loading{min-height:72px;padding-block:12px}
}

.search-partner{display:inline-flex;align-items:center;gap:5px;margin-right:auto;flex:none;font-size:11px;line-height:18px;color:#54647b}
.search-partner img{display:block;width:72px;height:18px;object-fit:contain}



}

/* Flight card sizing without inline styles; compatible with style-src self. */
@layer components {
.flight-card[data-flight-leg-count="1"]{--flight-leg-count:1}
.flight-card[data-flight-leg-count="2"]{--flight-leg-count:2}
.flight-card[data-flight-leg-count="3"]{--flight-leg-count:3}
.flight-card[data-flight-leg-count="4"]{--flight-leg-count:4}
.flight-card[data-flight-leg-count="5"]{--flight-leg-count:5}
.flight-card[data-flight-leg-count="6"]{--flight-leg-count:6}
}

.airport-choice.airport-group-child{grid-template-columns:16px 24px minmax(0,1fr) 25px;padding-inline-start:10px;gap:10px}.airport-choice>span{min-width:0}.airport-choice strong,.airport-choice small{overflow-wrap:anywhere}

.airport-group-branch{color:var(--ink,#12345a);font-size:1.2rem}.airport-fallback{padding:.5rem 1rem;font-size:.85rem}

.airport-recent{border-top:1px solid #dce5ee}.airport-recent-heading{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem}.airport-recent-heading button{background:none;border:0;color:#005bbd;cursor:pointer;padding:.4rem}

.airport-choice .flight-icon{color:#0865c3;width:22px;height:22px;fill:none}.filter-stops label:has(input:disabled){opacity:.5;cursor:not-allowed}

@scope (html) to (.home-copy) {
/* v105: shared suggestion hierarchy and licensed flight icons. */
.airport-choice{font-family:"BXX DM Sans","Segoe UI",Arial,sans-serif;grid-template-columns:48px minmax(0,1fr) 25px;gap:12px;padding:10px 8px;min-height:80px}
.airport-choice strong{font-size:16px;font-weight:700;line-height:1.4;letter-spacing:0}
.airport-choice small{font-size:14px;font-weight:400;line-height:1.4;margin-top:3px;color:#617180}
.airport-choice .airport-code{font-size:14px;font-weight:400;color:#617180;margin-inline-start:7px;white-space:nowrap}
.airport-choice .airport-choice-icon{width:48px;height:56px;padding:13px;background:#f0f4f7;border-radius:9px;color:#0865c3;box-sizing:border-box}
.airport-choice.airport-group-child{grid-template-columns:22px 48px minmax(0,1fr) 25px;padding-inline-start:28px;gap:12px}
.airport-choice .airport-group-branch{width:22px;height:22px;color:#18344d;fill:none}
.ui-icon:has(use[href$="#plane"]),.flight-icon:has(use[href$="#plane"]){color:#0865c3;fill:none}
@media(max-width:760px){
 .is-picker-open .airport-choice{grid-template-columns:40px minmax(0,1fr) 25px;padding:10px 6px;gap:8px;border:0;min-height:76px}
 .is-picker-open .airport-choice.airport-group-child{grid-template-columns:18px 40px minmax(0,1fr) 25px;padding-inline-start:20px;gap:8px}
 .is-picker-open .airport-choice .airport-choice-icon{width:40px;height:48px;padding:9px}
 .is-picker-open .airport-choice .airport-group-branch{width:18px;height:18px}
 .is-picker-open .airport-choice strong{font-size:15px;font-weight:700;line-height:1.4}
 .is-picker-open .airport-choice small,.is-picker-open .airport-choice .airport-code{font-size:13px;line-height:1.4}
}

/* The document / full-screen picker scrolls; the suggestion list has no nested scroller. */
.compact-search .airport-panel{width:600px;max-width:calc(100vw - 40px);max-height:none;overflow:visible}
@media(max-width:1100px){
 .compact-search .airport-field.is-picker-open{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .compact-search .is-picker-open .airport-panel{flex:0 0 auto;overflow:visible;max-height:none}
}

.airport-retry{display:inline-flex;min-height:44px;align-items:center;margin-top:12px;font:inherit}.airport-suggest-error{line-height:1.5}

.airport-panel [hidden]{display:none!important}
}

@layer components {
  /* Hotelstrecke: Ergebnisseite nach Layoutvorlage 2 (Chipzeile, Liste links, Karte rechts). Farben: Seite #f3f7fb, Blau #0054d7, Orange #fd6318, Grün #08893f. */
  .hotel-results,.hotel-photos,.hotel-all-filters{--hotel-blue:#0054d7;--hotel-orange:#fd6318;--hotel-green:#08893f;--hotel-line:#e4eaf2;--hotel-soft:#f3f7fb;--hotel-muted:#5b6b80;--hotel-pin:#003ea8}
  .hotel-results{padding:10px 0 56px;--hotel-blue:#0054d7;--hotel-orange:#fd6318;--hotel-green:#08893f;--hotel-line:#e4eaf2;--hotel-soft:#f3f7fb;--hotel-muted:#5b6b80;--hotel-pin:#003ea8}
  .hotel-summary-dot{color:#9fb0c3}
  .hotel-status-loading{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:#8b4306}
  .hotel-status-loading i{width:9px;height:9px;border-radius:50%;background:#f28b29;animation:hotel-pulse 1.2s ease-in-out infinite}
  @keyframes hotel-pulse{0%,100%{opacity:.35}50%{opacity:1}}
  /* Chipzeile */
  .hotel-chipbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}
  .hotel-chips-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
  .hotel-chip-wrap{position:relative}
  .hotel-chip-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border:1px solid var(--hotel-line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:13px;font-weight:650;cursor:pointer;white-space:nowrap}
  .hotel-chip-btn .hi{width:15px;height:15px;color:var(--hotel-muted)}.hotel-chip-btn:hover{border-color:#c5d2e3}.hotel-chip-btn[aria-expanded=true],.hotel-chip-btn.is-active{border-color:var(--hotel-blue);color:var(--hotel-blue);background:#eef4fd}.hotel-chip-btn.is-active .hi,.hotel-chip-btn[aria-expanded=true] .hi{color:var(--hotel-blue)}
  .hotel-chip-btn .hotel-chip-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--hotel-blue);color:#fff;font-size:11px}
  .hotel-chip-all{padding-left:12px}.hotel-chip-all .hi{color:var(--ink)}
  .hotel-chip-reset{border:0;background:none;padding:0 6px;color:var(--hotel-blue);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.hotel-chip-reset[hidden]{display:none}.hotel-chip-reset:hover{text-decoration:underline}
  .hotel-chip-panel{position:absolute;left:0;top:calc(100% + 8px);z-index:30;width:300px;max-height:min(520px,70vh);overflow:auto;padding:14px 16px;border:1px solid var(--hotel-line);border-radius:12px;background:#fff;box-shadow:0 10px 28px rgba(18,35,63,.16);font-size:13px;color:#33475f}
  .hotel-chip-panel[hidden]{display:none}.hotel-chip-panel-wide{width:360px}
  .hotel-panel-title{font-size:13px;font-weight:800;color:var(--ink);margin:0 0 8px}.hotel-panel-title-sub{margin-top:14px}
  .hotel-all-filters{position:fixed;inset:0;z-index:60;display:grid;grid-template-columns:minmax(0,1fr);background:rgba(18,35,63,.45)}.hotel-all-filters[hidden]{display:none}
  .hotel-all-filters-panel{width:min(760px,calc(100% - 32px));max-height:calc(100vh - 32px);margin:16px auto;overflow:auto;border-radius:16px;background:#fff;padding:20px 24px;box-shadow:0 20px 50px rgba(18,35,63,.3)}
  .hotel-all-filters-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.hotel-all-filters-head strong{font-size:17px}.hotel-all-filters-head button{border:0;background:none;font-size:22px;cursor:pointer;color:var(--hotel-muted)}
  .hotel-all-filters-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px}.hotel-all-filters-grid section{min-width:0}.hotel-all-filters-grid h4{margin:0 0 8px;font-size:14px;font-weight:800;color:var(--ink)}
  /* Im Dialog „Alle Filter“ stehen die Panels im Fluss (sonst absolut unter dem Chip → Dialog wirkt leer). */
  .hotel-chip-panel.is-inline{position:static;width:auto;max-height:none;overflow:visible;padding:0;border:0;border-radius:0;box-shadow:none}
  .hotel-filter-row{display:flex;align-items:center;gap:8px;min-height:24px;color:#33475f;cursor:pointer;line-height:1.3}.hotel-filter-row[hidden]{display:none}
  .hotel-filter-row input{appearance:none;flex:none;width:15px;height:15px;margin:0;border:1.5px solid #9fb0c3;border-radius:4px;background:#fff;cursor:pointer;display:grid;place-items:center}
  .hotel-filter-row input[type=radio]{border-radius:50%}.hotel-filter-row input:checked{border-color:var(--hotel-blue);background:var(--hotel-blue)}
  .hotel-filter-row input[type=checkbox]:checked::after{content:'';width:8px;height:5px;border:2px solid #fff;border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}
  .hotel-filter-row input[type=radio]:checked{background:#fff}.hotel-filter-row input[type=radio]:checked::after{content:'';width:7px;height:7px;border-radius:50%;background:var(--hotel-blue)}
  .hotel-filter-row>span{flex:1;min-width:0}.hotel-filter-row em{font-style:normal;color:#7b8ea6;font-size:12px}.hotel-filter-row em:empty{display:none}
  .hotel-filter-stars{flex:none!important;color:#f5a623;letter-spacing:.5px;font-size:11px;min-width:52px}
  .hotel-filter-more{border:0;background:none;padding:6px 0 2px;color:var(--hotel-blue);font:inherit;font-size:12px;font-weight:700;cursor:pointer;text-align:left}.hotel-filter-more:hover{text-decoration:underline}
  .hotel-filter-empty{color:#7b8ea6;font-size:12px;padding:4px 0}
  .hotel-price-label{font-weight:800;color:var(--ink);font-size:13px;margin-bottom:6px}
  .hotel-range{position:relative;height:22px;margin:2px 7px 10px}.hotel-range::before{content:'';position:absolute;left:0;right:0;top:10px;height:2px;background:#c9d8ea;border-radius:2px}
  .hotel-range input[type=range]{position:absolute;left:-7px;top:0;width:calc(100% + 14px);height:22px;margin:0;appearance:none;background:transparent;pointer-events:none}
  .hotel-range input[type=range]::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:var(--hotel-blue);border:2px solid #fff;box-shadow:0 0 0 1px var(--hotel-blue);pointer-events:auto;cursor:pointer}
  .hotel-range input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--hotel-blue);border:2px solid #fff;box-shadow:0 0 0 1px var(--hotel-blue);pointer-events:auto;cursor:pointer}
  .hotel-price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hotel-price-inputs output{display:block;border:1px solid var(--hotel-line);border-radius:6px;padding:7px 10px;font-size:12px;color:var(--ink);background:#fff}
  /* Kartenschalter */
  .hotel-map-switch{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;white-space:nowrap}.hotel-map-switch input{position:absolute;width:1px;height:1px;opacity:0}
  .hotel-map-switch i{position:relative;width:40px;height:22px;border-radius:11px;background:#c9d3e0;transition:background .15s}.hotel-map-switch i::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .15s}
  .hotel-map-switch input:checked+i{background:#0163fc}.hotel-map-switch input:checked+i::after{transform:translateX(18px)}.hotel-map-switch input:focus-visible+i{outline:3px solid var(--focus);outline-offset:2px}
  /* Kopfzeile */
  .hotel-list-bar .hotel-results-title.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  .hotel-results-title{font-size:17px;font-weight:800;letter-spacing:-.01em;color:var(--ink)}.hotel-results-title strong{font-weight:800}
  .hotel-results-meta{font-size:12px;color:var(--hotel-muted)}
  .hotel-list-bar{display:flex;align-items:center;gap:8px 14px;flex-wrap:nowrap;margin:0 0 10px;padding:0 4px;min-width:0}.hotel-list-count{flex:0 0 auto;font-size:13px;color:var(--hotel-muted);white-space:nowrap}.hotel-list-count b{color:var(--ink)}
  .hotel-pricebox{display:inline-flex;align-items:center;flex:0 1 auto;min-width:0;font-size:13px;color:var(--hotel-muted)}.hotel-pricebox select{width:auto;max-width:100%;border:0;background:transparent;font:inherit;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;padding:4px 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hotel-sort-info{position:relative;display:inline-grid;place-items:center;width:20px;height:20px;color:var(--hotel-muted);cursor:help}.hotel-sort-info .hi{width:16px;height:16px}.hotel-sort-info::after{content:attr(data-tip);position:absolute;right:0;top:calc(100% + 6px);z-index:600;width:280px;padding:10px 12px;border-radius:10px;background:var(--ink);color:#fff;font-size:12px;font-weight:400;line-height:1.4;text-align:left;box-shadow:0 8px 24px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .15s}.hotel-sort-info:hover::after,.hotel-sort-info:focus-visible::after{opacity:1}
  .hotel-sortbox{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--hotel-muted)}.hotel-sortbox select{width:auto;border:0;background:transparent;font:inherit;font-size:13px;font-weight:800;color:var(--ink);cursor:pointer;padding:4px 2px}
  /* Layout Liste/Karte */
  .hotel-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.hotel-layout.has-map{grid-template-columns:minmax(0,1fr) minmax(0,40%);gap:16px}
  /* Karten neben der Karte (Liste 60 %, Karte 40 %): Angebote in einer Zeile wie bei KAYAK. */
  .hotel-layout.has-map .hotel-card-top{grid-template-columns:200px minmax(0,1fr) 168px;gap:0 14px}
  .hotel-layout.has-map .hotel-card-image{height:150px}
  .hotel-list-bar .hotel-sortbox{flex:0 0 auto;white-space:nowrap}
  @media(max-width:560px){.hotel-list-bar{flex-wrap:wrap}}
  .hotel-main{min-width:0;display:grid;gap:14px}
  .hotel-map-column{position:sticky;top:12px;min-width:0}.hotel-map-column[hidden]{display:none}
  .hotel-map{height:calc(100vh - 24px);min-height:420px;border-radius:14px;overflow:hidden;background:#dfe8f2;border:1px solid var(--hotel-line)}
  /* Hotelseite so breit wie die Flugseite (gleiche Shell-Breite wie body[data-kind=flug]). */
  body[data-kind=hotel] .shell{width:min(1680px,calc(100% - 48px))}
  @media(max-width:620px){body[data-kind=hotel] .shell{width:calc(100% - 24px)}}
  .hotel-map-approx{position:absolute;left:56px;top:12px;z-index:500;max-width:calc(100% - 120px);padding:6px 10px;border-radius:10px;background:rgba(255,255,255,.94);color:var(--hotel-muted);font-size:11px;line-height:1.3;box-shadow:0 2px 8px rgba(18,35,63,.18);pointer-events:none}.hotel-map-approx[hidden]{display:none}
  .hotel-map-note{margin-top:6px;font-size:11px;color:var(--hotel-muted)}.hotel-map-note a{color:inherit}
  .hotel-pin-wrap.is-clustered .hotel-pin{display:none}
  .hotel-pin{display:inline-flex;align-items:center;justify-content:center;height:26px;padding:0 9px;border-radius:13px;background:#fff;color:var(--ink);font:800 12px/1 "Segoe UI",Arial,sans-serif;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.25);border:1px solid #d5deea;transform:translate(-50%,calc(-100% - 7px));cursor:pointer}
  .hotel-pin-dot{position:absolute;left:0;top:0;width:9px;height:9px;border-radius:50%;background:var(--ink);border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.35);transform:translate(-50%,-50%);pointer-events:none}.hotel-pin-wrap:has(.hotel-pin.is-active) .hotel-pin-dot{background:var(--hotel-pin)}
  .hotel-pin.is-active,.hotel-pin:hover{background:var(--hotel-pin);color:#fff;border-color:var(--hotel-pin)}
  .hotel-map-popup{position:absolute;left:12px;right:12px;bottom:12px;z-index:500;display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:12px;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(18,35,63,.25)}.hotel-map-popup[hidden]{display:none}
  .hotel-map-popup img{width:110px;height:110px;object-fit:cover;border-radius:10px;background:#eef2f6}.hotel-map-popup .hotel-popup-body{display:grid;gap:4px;align-content:start;min-width:0;font-size:12px;color:var(--hotel-muted)}
  .hotel-map-popup strong{font-size:14px;color:var(--ink)}.hotel-map-popup .hotel-popup-price{font-size:22px;font-weight:850;color:var(--ink)}.hotel-map-popup .hotel-deal-button{width:auto;margin:6px 0 0;padding:0 16px;min-height:38px;font-size:13px}
  .hotel-map-popup .hotel-popup-close{position:absolute;right:10px;top:8px;border:0;background:none;font-size:20px;color:var(--hotel-muted);cursor:pointer}
  /* Karten */
  .hotel-list{display:grid;gap:14px}
  .hotel-card{border:1px solid var(--hotel-line);border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(25,54,86,.04);overflow:hidden}
  .hotel-card:hover{box-shadow:0 6px 18px rgba(25,54,86,.1)}.hotel-card[hidden]{display:none}.hotel-card.is-highlight{box-shadow:0 0 0 2px var(--hotel-blue)}
  .hotel-card-top{display:grid;grid-template-columns:220px minmax(0,1fr) 168px;gap:0 18px;padding:12px 14px 12px 12px}
  .hotel-card-media{position:relative;align-self:start}.hotel-card-image{display:block;width:100%;height:150px;object-fit:cover;border-radius:10px;background:#eef2f6}
  .hotel-image-missing{display:flex;align-items:center;justify-content:center;color:#7b8ea6;font-size:11px;text-align:center;padding:12px}
  .hotel-image-nav{position:absolute;top:50%;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.25);transform:translateY(-50%);opacity:0;transition:opacity .15s}.hotel-image-nav .hi{width:16px;height:16px}.hotel-image-nav.is-prev{left:8px}.hotel-image-nav.is-prev .hi{transform:rotate(180deg)}.hotel-image-nav.is-next{right:8px}.hotel-card-media:hover .hotel-image-nav,.hotel-image-nav:focus-visible{opacity:1}@media(hover:none){.hotel-image-nav{opacity:1}}
  .hotel-image-dots{position:absolute;left:0;right:0;bottom:8px;display:flex;justify-content:center;gap:5px;pointer-events:none}.hotel-image-dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 0 2px rgba(0,0,0,.4)}.hotel-image-dots i.is-on{background:#fff}
  img.hotel-card-image[data-hotel-photos]{cursor:zoom-in}
  body.hotel-photos-open{overflow:hidden}.hotel-photos{position:fixed;inset:0;z-index:1200;display:grid;place-items:start center;padding:16px;overflow:auto;background:rgba(18,35,63,.6)}
  .hotel-photos-panel{width:min(1180px,100%);border-radius:16px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.35);padding:16px 20px 20px}
  .hotel-photos-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:14px}.hotel-photos-close{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:0;border-radius:10px;background:#eef2f6;color:var(--ink);font:700 14px/1 "Segoe UI",Arial,sans-serif;cursor:pointer}.hotel-photos-close .hi{width:16px;height:16px}
  .hotel-photos-title{flex:1 1 240px;margin:0;font-size:20px;line-height:1.25}.hotel-photos-deal{display:grid;justify-items:end;line-height:1.2}.hotel-photos-deal strong{font-size:18px}.hotel-photos-deal small{color:var(--hotel-muted);font-size:12px}.hotel-photos-head .hotel-deal-button{margin:0}
  .hotel-photos-strip{display:flex;gap:10px;overflow-x:auto;padding-bottom:10px;margin-bottom:14px;border-bottom:1px solid var(--hotel-line)}.hotel-photos-thumb{flex:0 0 auto;width:120px;height:80px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#eef2f6;cursor:pointer}.hotel-photos-thumb img{display:block;width:100%;height:100%;object-fit:cover}.hotel-photos-thumb.is-on{border-color:var(--ink)}
  .hotel-photos-stage{position:relative;display:grid;place-items:center;min-height:240px;background:#f4f6f9;border-radius:12px}.hotel-photos-big{display:block;max-width:100%;max-height:min(72vh,800px);object-fit:contain;border-radius:12px}.hotel-photos-stage .hotel-image-nav{opacity:1;width:40px;height:40px}.hotel-photos-stage .hotel-image-nav.is-prev{left:14px}.hotel-photos-stage .hotel-image-nav.is-next{right:14px}.hotel-photos-stage .hotel-image-count{right:14px;bottom:14px}
  /* Hotel-Pop-up: Hotelinformation + Bewertung (Vorlage KAYAK-Detailseite, gekürzt) */
  .hotel-card-info{color:inherit;text-decoration:none}.hotel-card-info:hover{color:var(--hotel-blue);text-decoration:underline}
  .hotel-card-rating[data-hotel-info]{cursor:pointer;border-radius:6px}.hotel-card-rating[data-hotel-info]:hover .hotel-score-label{text-decoration:underline}
  .hotel-detail-panel{width:min(980px,100%);padding:16px 24px 24px}
  .hotel-detail-head{align-items:flex-start}.hotel-detail-title{flex:1 1 300px;min-width:0}.hotel-detail-title .hotel-photos-title{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 4px}
  .hotel-detail-address{margin:0 0 6px;font-size:13px;color:var(--hotel-muted)}.hotel-detail-score{display:flex;align-items:center;gap:8px;margin:0;font-size:13px}
  .hotel-detail-head .hotel-photos-deal{gap:2px}.hotel-detail-head .hotel-photos-deal .hotel-deal-button{width:auto;margin-top:8px;padding:0 18px}
  .hotel-detail-photos{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:170px 170px;gap:8px;margin:4px 0 20px}.hotel-detail-photos.is-few{grid-template-columns:1fr 1fr;grid-template-rows:240px}
  .hotel-detail-photo{position:relative;padding:0;border:0;border-radius:10px;overflow:hidden;background:#f4f6f9;cursor:zoom-in}.hotel-detail-photo:first-child{grid-row:1/3}.hotel-detail-photos.is-few .hotel-detail-photo:first-child{grid-row:auto}
  .hotel-detail-photo img{display:block;width:100%;height:100%;object-fit:cover}.hotel-detail-photo-label{position:absolute;left:12px;bottom:12px;padding:6px 10px;border-radius:6px;background:rgba(0,0,0,.65);color:#fff;font-size:12px;font-weight:700}
  .hotel-detail-status{margin:14px 0;color:var(--hotel-muted);font-size:14px}.hotel-detail-status.is-error{color:#d1341f}
  .hotel-detail-section{padding:18px 0;border-top:1px solid var(--ink)}.hotel-detail-section h3{margin:0 0 14px;font-size:18px}
  .hotel-detail-overview{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.hotel-detail-text{margin:0;font-size:14px;line-height:1.6;color:#33475f}
  .hotel-detail-scorebox{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center}.hotel-detail-scorebox>strong{display:grid;place-items:center;height:120px;border-radius:8px;background:var(--hotel-green);color:#fff;font-size:44px;font-weight:850}.hotel-detail-scorebox b{display:block;font-size:14px;margin-bottom:4px}.hotel-detail-scorebox span{font-size:12.5px;color:var(--hotel-muted);line-height:1.4}
  .hotel-detail-features{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 16px;margin:0;font-size:13.5px}.hotel-detail-features dt{font-weight:700}.hotel-detail-features dd{margin:0;color:#33475f;line-height:1.5}
  .hotel-detail-reviews{display:grid;gap:14px}.hotel-detail-reviews-head{display:flex;align-items:center;gap:12px}.hotel-detail-big{font-size:40px;font-weight:850;line-height:1}.hotel-detail-reviews-head b{display:block;font-size:15px}.hotel-detail-reviews-head span{font-size:13px;color:var(--hotel-muted)}
  .hotel-detail-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 32px;max-width:720px}.hotel-detail-bar{display:grid;grid-template-columns:110px minmax(0,1fr) 34px;align-items:center;gap:10px;font-size:13px}.hotel-detail-bar i{display:block;height:6px;border-radius:3px;background:#e3e9f1;overflow:hidden}.hotel-detail-bar b{display:block;height:100%;border-radius:3px;background:var(--hotel-green)}.hotel-detail-bar em{font-style:normal;font-weight:700;text-align:right}
  .hotel-detail-travelers{margin:0;font-size:13px;color:#33475f}.hotel-detail-quotes{margin:0;padding-left:18px;font-size:13.5px;color:#33475f;line-height:1.5}
  @media(max-width:760px){.hotel-detail-overview{grid-template-columns:1fr}.hotel-detail-bars{grid-template-columns:1fr}.hotel-detail-photos{grid-template-columns:1fr 1fr;grid-template-rows:140px 140px}.hotel-detail-photo:nth-child(n+5){display:none}.hotel-detail-features{grid-template-columns:1fr}}
  @media(max-width:560px){.hotel-photos{padding:0}.hotel-photos-panel{border-radius:0;min-height:100%;padding:12px}.hotel-photos-title{font-size:17px}.hotel-photos-thumb{width:90px;height:60px}}
  .hotel-image-count{position:absolute;right:10px;bottom:10px;padding:3px 8px;border-radius:6px;background:rgba(18,35,63,.72);color:#fff;font-size:11px;font-weight:700}
  .hotel-fav{position:absolute;right:10px;top:10px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:10px;background:#fff;color:var(--ink);cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.2)}.hotel-fav .hi{width:17px;height:17px}.hotel-fav[aria-pressed=true]{color:var(--hotel-orange)}.hotel-fav[aria-pressed=true] .hi{fill:currentColor}
  .hotel-card-main{display:flex;flex-direction:column;gap:7px;padding:2px 0;min-width:0}
  .hotel-card-title{font-size:17px;font-weight:800;line-height:1.3;letter-spacing:-.01em;color:var(--ink)}
  .hotel-card-place{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--hotel-muted);font-size:12.5px}.hotel-card-place .hi{width:14px;height:14px;flex:none}
  .hotel-map-link{display:inline-flex;align-items:center;gap:3px;border:0;background:none;padding:0;margin-left:6px;color:var(--hotel-blue);font:inherit;font-size:12.5px;font-weight:600;text-decoration:underline;cursor:pointer}.hotel-map-link .hi{width:13px;height:13px;color:var(--hotel-blue)}
  .hotel-card-rating{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
  .hotel-score{display:inline-grid;place-items:center;min-width:34px;height:22px;padding:0 6px;border-radius:5px;background:var(--hotel-green);color:#fff;font-weight:800;font-size:12.5px}.hotel-score-none{background:#9fb0c3}
  .hotel-score-label{font-size:12.5px;font-weight:800;color:var(--ink)}.hotel-score-count{font-size:12.5px;color:var(--hotel-muted)}
  .hotel-stars{color:#f5a623;font-size:13px;letter-spacing:1px;margin-left:8px;white-space:nowrap}
  .hotel-features{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;color:#33475f}.hotel-features span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.hotel-features .hi{width:15px;height:15px;color:#4a5f7d}
  /* Ausstattung auf der Karte: nur Icons, Text als Tooltip (Sasan: weniger Text) */
  .hotel-features-icons{gap:8px}.hotel-features .hotel-feature-icon{position:relative;display:inline-grid;place-items:center;justify-content:center;gap:0;width:30px;height:30px;border-radius:8px;background:var(--hotel-soft);color:#33475f;cursor:help;outline:none}.hotel-feature-icon .hi{width:17px;height:17px}.hotel-feature-icon:hover,.hotel-feature-icon:focus-visible{background:#e3ecf8;color:var(--hotel-blue)}
  .hotel-feature-icon::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 7px);z-index:600;transform:translateX(-50%);padding:6px 10px;border-radius:7px;background:var(--ink);color:#fff;font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.22);opacity:0;pointer-events:none;transition:opacity .12s}
  .hotel-feature-icon::before{content:"";position:absolute;left:50%;bottom:calc(100% + 2px);transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink);opacity:0;pointer-events:none;transition:opacity .12s}
  .hotel-feature-icon:hover::after,.hotel-feature-icon:focus-visible::after,.hotel-feature-icon:hover::before,.hotel-feature-icon:focus-visible::before{opacity:1}
  .hotel-card-perks{display:flex;flex-wrap:wrap;gap:4px 14px;margin:2px 0 0}.hotel-card-perks small{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--hotel-green)}.hotel-card-perks small .hi{width:14px;height:14px}
  .hotel-card-scarce{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#d1341f}.hotel-card-scarce .hi{width:13px;height:13px}
  .hotel-card-deal{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 0;text-align:center}
  .hotel-deal-badge{padding:4px 9px;border-radius:6px;background:#d9f8e7;color:#0d6b35;font-size:11px;font-weight:700;margin-bottom:8px;white-space:normal;text-align:center;line-height:1.3;max-width:168px}
  .hotel-deal-perks{display:grid;gap:3px;margin:8px 0 2px;justify-items:center}.hotel-deal-perks small{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--hotel-green)}.hotel-deal-perks small .hi{width:14px;height:14px}
  .hotel-deal-ab{font-size:12px;color:var(--hotel-muted)}
  .hotel-deal-price{font-size:26px;font-weight:850;letter-spacing:-.02em;line-height:1.1;color:var(--ink)}
  .hotel-deal-unit{font-size:11.5px;color:var(--hotel-muted)}
  .hotel-deal-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:10px;min-height:40px;padding:0 14px;border-radius:9px;background:var(--hotel-orange);color:#fff;font-size:14px;font-weight:800;text-decoration:none}.hotel-deal-button:hover{background:#e6570f}.hotel-deal-button .hi{width:16px;height:16px}
  .hotel-deal-unavailable{margin-top:8px;color:#7b8ea6;font-size:11px}
  /* Anbieterleiste */
  .hotel-card-providers{display:flex;align-items:stretch;gap:0;margin:0 12px 12px;padding:0;border:1px solid var(--hotel-line);border-radius:10px;background:#fff;overflow:hidden}
  .hotel-card-providers .hotel-provider-cell:last-child{border-right:0}
  .hotel-provider-cell{display:grid;gap:2px;flex:1 1 190px;min-width:0;padding:8px 12px;border-right:1px solid var(--hotel-line)}.hotel-provider-cell[hidden]{display:none}
  .hotel-provider-name{display:flex;align-items:center;gap:6px;min-height:18px;font-size:12px;font-weight:800;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hotel-provider-name img{display:block;max-width:84px;height:16px;object-fit:contain;object-position:left}.hotel-provider-name small{font-size:11px;font-weight:600;color:var(--hotel-muted)}
  .hotel-provider-note{font-size:11px;color:var(--hotel-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:14px}
  .hotel-provider-price{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:800;color:var(--ink);text-decoration:none}.hotel-provider-price i{width:8px;height:8px;border-radius:50%;background:var(--hotel-blue)}.hotel-provider-price.is-best{color:var(--hotel-green)}.hotel-provider-price.is-best i{background:var(--hotel-green)}a.hotel-provider-price:hover{text-decoration:underline}
  .hotel-provider-more{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;margin-left:auto;padding:6px 10px;border-left:1px solid var(--hotel-line);font-size:13px;font-weight:700;color:var(--hotel-blue);text-align:center}
  .hotel-provider-more button{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 10px;white-space:nowrap;border:1px solid var(--hotel-line);border-radius:8px;background:#fff;color:var(--hotel-blue);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.hotel-provider-more button .hi{width:14px;height:14px;transition:transform .15s}.hotel-provider-more button[aria-expanded=true] .hi{transform:rotate(180deg)}
  .hotel-card.is-expanded .hotel-card-providers{flex-wrap:wrap}.hotel-card.is-expanded .hotel-provider-cell{flex:0 0 25%;max-width:25%;border-bottom:1px solid var(--hotel-line)}.hotel-card.is-expanded .hotel-provider-more{flex-basis:100%;border-left:0}
  .hotel-more-note{color:var(--hotel-muted);font-size:12px;text-align:center;padding:6px 0}.hotel-local-empty{padding:16px;background:#fff;border:1px solid var(--hotel-line);border-radius:12px}
  .hotel-results .skeleton-card{grid-template-columns:220px minmax(0,1fr) 168px;min-height:230px;padding:12px;border:1px solid var(--hotel-line);border-radius:14px;gap:18px}.hotel-results .skeleton-card::before{content:'';display:block;height:150px;border-radius:10px;background:#eef2f6}
  /* Suchleiste (4 Felder) */
  .hotel-search .compact-route.hotel-route{grid-template-columns:minmax(0,1.5fr) minmax(0,1.3fr) minmax(0,1fr) 210px;gap:12px;padding:10px;background:#fff;border:1px solid var(--hotel-line);border-radius:14px;box-shadow:0 2px 10px rgba(25,54,86,.05);min-height:0}
  .hotel-search .hotel-field{display:flex;align-items:center;gap:12px;min-height:58px;padding:0 14px;border:1px solid var(--hotel-line);border-radius:10px;background:#fff;color:var(--ink);text-align:left}
  .hotel-search .hotel-field-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;color:var(--hotel-muted)}.hotel-search .hotel-field-icon .hi{width:20px;height:20px}
  .hotel-search .hotel-field-text{display:grid;gap:2px;min-width:0;flex:1}.hotel-search .hotel-field.is-filled .hotel-field-text small{display:none}.hotel-search .hotel-field-text strong{font-size:15px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hotel-search .hotel-field-text small{font-size:12px;color:var(--hotel-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .hotel-search .airport-field.hotel-field{padding:0 14px;flex-wrap:nowrap;border:1px solid var(--hotel-line)}.hotel-search .airport-field.hotel-field:focus-within{border-color:var(--hotel-blue);background:#fff}
  .hotel-search .airport-field.hotel-field .airport-entry{height:auto;font-size:15px;font-weight:800;padding:0;flex:1}.hotel-search .airport-field.hotel-field .airport-entry::placeholder{font-weight:600;color:#7b8ea6}
  .hotel-search .airport-field.hotel-field .airport-field-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .hotel-search .search-popover-trigger.hotel-field{width:100%;cursor:pointer}
  .hotel-search .hotel-field-dates{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0}.hotel-search .hotel-field-dates>span{display:flex;align-items:center;gap:12px;padding:0 14px;min-width:0}.hotel-search .hotel-field-dates>span+span{border-left:1px solid var(--hotel-line)}
  .hotel-search .search-button{min-height:58px;border-radius:10px;background:var(--hotel-blue, #0054d7);font-size:16px;font-weight:800}
  .hotel-search .form-message{padding:6px 2px 0}
  /* Kopfnavigation */
  .hotel-topnav{display:flex;align-items:center;gap:26px;margin-left:44px;font-size:14px;font-weight:650}.hotel-topnav a{position:relative;padding:8px 2px;color:var(--ink);text-decoration:none}.hotel-topnav a[aria-current=page]{color:var(--hotel-blue, #0054d7)}.hotel-topnav a[aria-current=page]::after{content:'';position:absolute;left:0;right:0;bottom:-2px;height:2px;background:#0054d7;border-radius:2px}
  .hotel-header-tools{display:flex;align-items:center;gap:18px;margin-left:auto;font-size:13px;font-weight:650;color:var(--ink)}.hotel-header-tools .hi{width:20px;height:20px}.hotel-header-tools span{display:inline-flex;align-items:center;gap:6px}.hotel-header-tools .hotel-avatar{width:34px;height:34px;border-radius:50%;background:#eef2f6;display:grid;place-items:center}

  @media(max-width:1280px){.hotel-layout.has-map{grid-template-columns:minmax(0,1fr) minmax(0,36%)}.hotel-layout.has-map .hotel-provider-cell{flex:1 1 0;padding:8px 8px}.hotel-layout.has-map .hotel-provider-name img{max-width:72px}.hotel-layout.has-map .hotel-provider-price{font-size:13px}}
  @media(max-width:1100px){.hotel-layout.has-map{grid-template-columns:1fr}.hotel-map-column{position:static}.hotel-map{height:420px}.hotel-topnav{display:none}}
  @media(max-width:900px){.hotel-card-top{grid-template-columns:170px minmax(0,1fr)}.hotel-card-deal{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 12px;border-top:1px solid var(--hotel-line);margin-top:10px;padding-top:10px;text-align:left}.hotel-deal-button{width:auto;margin-left:auto;margin-top:0}.hotel-card-providers{flex-wrap:wrap}.hotel-provider-cell{flex-basis:50%}.hotel-chip-panel{width:min(320px,calc(100vw - 32px))}.hotel-search .compact-route.hotel-route{grid-template-columns:1fr 1fr}.hotel-search .compact-route.hotel-route>.hotel-destination{grid-column:1/3}.hotel-search .compact-route.hotel-route>.search-button{grid-column:1/3}.hotel-all-filters-grid{grid-template-columns:1fr}}
  @media(max-width:560px){.hotel-card-top{grid-template-columns:1fr}.hotel-card-image{height:190px}.hotel-card-providers{margin:0 8px 8px}.hotel-provider-cell{flex:1 1 0;padding:6px 5px;gap:1px}.hotel-provider-name{font-size:10.5px}.hotel-provider-name img{max-width:56px;height:13px}.hotel-provider-note{font-size:9.5px}.hotel-provider-price{font-size:12px;gap:4px}.hotel-provider-price i{width:6px;height:6px}.hotel-provider-more{padding:4px 6px;font-size:11px}.hotel-chipbar{flex-direction:column;align-items:flex-start}.hotel-search .compact-route.hotel-route{grid-template-columns:1fr}.hotel-search .compact-route.hotel-route>.hotel-destination,.hotel-search .compact-route.hotel-route>.search-button{grid-column:1}.hotel-search .hotel-field-dates{grid-template-columns:1fr}.hotel-search .hotel-field-dates>span+span{border-left:0;border-top:1px solid var(--hotel-line)}}
}

/* Hotelmaske: Reiseziel · Zeitraum · Gäste · Suchen (gleiche Bausteine wie die Flugmaske). */
.compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route{grid-template-columns:minmax(0,1.5fr) minmax(0,1.3fr) minmax(0,1fr) 210px;gap:12px;padding:10px;background:#fff;border:1px solid #e4eaf2;border-radius:14px;box-shadow:0 2px 10px rgba(25,54,86,.05);min-height:0}
.hotel-search .compact-route.hotel-route>.hotel-destination{grid-column:1;grid-row:1}
.hotel-search[hidden]{display:none}
.hotel-choice-icon{display:grid;place-items:center;width:28px;height:28px;font-size:16px}
.hotel-search .child-ages{display:grid;gap:8px;margin:8px 0 12px}.hotel-search .child-ages select{border:1px solid var(--line);border-radius:6px;padding:8px;background:#fff;color:var(--ink)}
/* Release .499: Ticket im Hotel-Reiter nicht mehr durchsichtig (vorher opacity:.35) */
@media(max-width:1100px){.compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route{grid-template-columns:minmax(0,1fr) auto}.hotel-route>.hotel-destination{grid-column:1/3}.hotel-search .compact-route.hotel-route>.search-dates{grid-row:2;grid-column:1}.hotel-search .compact-route.hotel-route>.search-travelers{grid-row:2;grid-column:2}.hotel-search .compact-route.hotel-route>.search-button{grid-row:3;grid-column:1/3}}

body[data-kind=hotel].has-flight-search .search-area,body[data-kind=hotel] .search-area,body[data-kind=mietwagen] .search-area,body[data-kind=paket] .search-area{margin-left:0}
body[data-kind=hotel] .search-area:has(.hotel-search),body[data-kind=mietwagen] .search-area:has(.hotel-search),body[data-kind=paket] .search-area:has(.hotel-search){border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}
body[data-kind=hotel] .search-area:has(.hotel-search) .search-title,body[data-kind=mietwagen] .search-area:has(.hotel-search) .search-title,body[data-kind=paket] .search-area:has(.hotel-search) .search-title{display:none}
body[data-kind=hotel].has-flight-search .intro,body[data-kind=hotel].has-flight-search .tabs,body[data-kind=mietwagen].has-flight-search .intro,body[data-kind=mietwagen].has-flight-search .tabs,body[data-kind=mietwagen] .tabs,body[data-kind=mietwagen].has-flight-search .tabs,body[data-kind=paket].has-flight-search .intro,body[data-kind=paket].has-flight-search .tabs,body[data-kind=paket] .tabs,body[data-kind=paket].has-flight-search .tabs{display:none}
body[data-kind=hotel].has-flight-search .flight-page-main,body[data-kind=mietwagen].has-flight-search .flight-page-main,body[data-kind=paket].has-flight-search .flight-page-main{padding-top:18px}

body[data-kind=hotel] .travel-help,body[data-kind=mietwagen] .travel-help,body[data-kind=paket] .travel-help{display:none}
body[data-kind=hotel],body[data-kind=mietwagen],body[data-kind=paket]{font-family:"Segoe UI",Arial,sans-serif;--ink:#12233f;--muted:#54647b;--line:#dce5ee;--bg:#f4f7fb}
body[data-kind=hotel] button,body[data-kind=hotel] input,body[data-kind=hotel] select,body[data-kind=mietwagen] select,body[data-kind=paket] select{font-family:inherit}
  /* Voucher (Hotel/Mietwagen) links neben der Suchmaske der Ergebnisseite – Platz wie beim Flugticket. */
  @media(min-width:1101px){body[data-kind=hotel].has-flight-search .search-area:has(.hotel-search),body[data-kind=mietwagen].has-flight-search .search-area:has(.hotel-search),body[data-kind=paket].has-flight-search .search-area:has(.hotel-search){margin-left:calc(clamp(300px,26vw,400px) + 24px);min-height:212px}}
  /* ===== Mietwagenstrecke (baut auf den Hotel-Klassen auf) ===== */
body[data-kind=mietwagen] .shell,body[data-kind=paket] .shell{width:min(1680px,calc(100% - 48px))}
body[data-kind=mietwagen] .search-area,body[data-kind=paket] .search-area{max-width:none}
  @media(max-width:620px){body[data-kind=mietwagen] .shell,body[data-kind=paket] .shell{width:calc(100% - 24px)}}
  .compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route{grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr) 210px}
  .compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route.has-dropoff{grid-template-columns:minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,1.4fr) 210px}
  .car-dropoff[hidden]{display:none}
  .car-options{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 10px 4px;font-size:13px;color:var(--hotel-muted,#5b6b80)}
  .car-option{display:inline-flex;align-items:center;gap:6px}.car-option select{border:0;background:transparent;font:inherit;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;padding:2px 0}
  .car-times{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 4px}.car-times select{width:100%;padding:8px 10px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:8px;font:inherit;font-size:14px}
  .car-automatic{display:inline-flex;align-items:center;gap:8px;margin:10px 0 0 4px;font-size:13px;color:var(--ink);cursor:pointer}.car-automatic input{width:16px;height:16px;accent-color:var(--hotel-blue,#0054d7)}
  body[data-home-mode=car] .home-mode-tabs [data-home-kind=car]{color:var(--hotel-blue,#0054d7)}
  .car-card .hotel-card-top{grid-template-columns:220px minmax(0,1fr) 190px}
  .car-card-media{display:grid;gap:8px}.car-card-image{height:140px;object-fit:contain;background:#f4f6f9;padding:6px}
  .car-agency{display:block;min-height:26px;font-size:13px;font-weight:800;color:var(--ink)}.car-agency img{max-height:26px;max-width:120px;object-fit:contain}.car-agency-opaque{font-weight:600;color:var(--hotel-muted,#5b6b80)}
  .car-card-class{margin:2px 0 8px;font-size:13px;color:var(--hotel-muted,#5b6b80)}
  .car-specs{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 10px;padding:0;list-style:none;font-size:13px;font-weight:700;color:var(--ink)}.car-specs li{display:inline-flex;align-items:center;gap:5px}.car-specs .hi{width:16px;height:16px;color:var(--hotel-muted,#5b6b80)}
  .car-card-station span{display:grid;gap:1px}.car-card-station small{font-size:12px;color:var(--hotel-muted,#5b6b80)}
  .car-policies{display:grid;gap:4px;margin:8px 0 0;padding:0;list-style:none;font-size:12.5px;color:var(--ink)}.car-policies li{display:inline-flex;align-items:center;gap:6px}.car-policies .hi{width:15px;height:15px;color:var(--hotel-muted,#5b6b80)}.car-policies .is-good{color:var(--hotel-green,#08893f);font-weight:700}.car-policies .is-good .hi{color:inherit}.car-policies .is-fee{color:#8a5a00}.car-policies .is-badge::before{content:"•";color:var(--hotel-blue,#0054d7)}
  .car-deal-provider{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:4px}.car-deal-provider img{max-height:22px;max-width:110px;object-fit:contain}
  .car-deal-payment{font-size:11px;color:var(--hotel-muted,#5b6b80)}
  .car-filter-from{display:block;font-size:11px;color:var(--hotel-muted,#5b6b80)}
  .hotel-filter-row.is-zero{opacity:.5}
  .hotel-layout.has-map .car-card .hotel-card-top{grid-template-columns:170px minmax(0,1fr) 150px}
  @media(max-width:1100px){.compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route,.compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route.has-dropoff{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route,.compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route.has-dropoff{grid-template-columns:1fr}.car-card .hotel-card-top{grid-template-columns:1fr}.car-times{grid-template-columns:1fr}}
  /* Einheitlicher Maskenaufbau (Hotel/Mietwagen) wie die Flugmaske: Kopfzeile · Suchzeile · Fußzeile mit KAYAK-Partner. */
  .hotel-form-main{display:flex;flex-direction:column;gap:12px;min-height:145px}
  .hotel-form-top{display:flex;align-items:center;flex-wrap:wrap;gap:6px 22px;min-height:36px;font-size:13px;color:var(--hotel-muted,#5b6b80)}
  .hotel-form-tail{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:18px;margin-top:auto}
  .hotel-form-tail .car-automatic{margin:0}.hotel-form-top .car-options{margin:0}
  body[data-kind=flug] .compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route,body[data-kind=flug] .hotel-search .compact-route.car-route{padding:0;border:0;box-shadow:none;background:transparent;min-height:52px}
  body[data-kind=flug] .hotel-search .hotel-field{min-height:52px}
  /* Alle Felder einer Reihe gleich hoch (Ort so hoch wie das Datumsfeld mit zwei Zeilen), Suchknopf ebenso. */
  .hotel-search .compact-route.hotel-route{align-items:stretch}
  .hotel-search .compact-route.hotel-route>.search-dates,.hotel-search .compact-route.hotel-route>.search-travelers,.hotel-search .compact-route.hotel-route>.hotel-destination{display:flex}
  .hotel-search .compact-route.hotel-route .hotel-field,.hotel-search .compact-route.hotel-route>.search-button{height:auto;min-height:58px;align-self:stretch;flex:1}
  .hotel-search .compact-route.hotel-route>.search-dates>.search-popover-trigger,.hotel-search .compact-route.hotel-route>.search-travelers>.search-popover-trigger{width:100%}
  /* Ergebnisseite: kompakte Suchleiste wie KAYAK – Felder nur so breit wie nötig, ohne Unterzeilen, alles in einer Reihe. */
  body[data-kind=hotel].has-flight-search .hotel-search .hotel-form-top{display:none}
  body.has-flight-search .compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route{grid-template-columns:minmax(180px,260px) auto auto auto;gap:8px;padding:8px;justify-content:center;justify-items:start}
  body.has-flight-search .hotel-search .result-ticket-meta{display:none}
  body.has-flight-search .hotel-search .hotel-field{min-height:46px;padding:0 12px;gap:8px;background:#f1f4f8;border-color:transparent}
  body.has-flight-search .hotel-search .hotel-field-text strong{font-size:14px;font-weight:700}
  body.has-flight-search .hotel-search .hotel-field-text small{display:none}
body[data-kind=mietwagen].has-flight-search .hotel-search .hotel-field-dates .hotel-field-text small,body[data-kind=paket].has-flight-search .hotel-search .hotel-field-dates .hotel-field-text small{display:block;font-size:11px}
  body.has-flight-search .hotel-search .hotel-field-dates{width:auto}
  body.has-flight-search .hotel-search .hotel-field-dates>span{padding:0 10px}
  body.has-flight-search .hotel-search .search-travelers,body.has-flight-search .hotel-search .search-dates{width:auto}
  body.has-flight-search .hotel-search .compact-route.hotel-route>.search-button{width:auto;min-width:120px;min-height:46px;justify-self:start;padding:0 22px;border-radius:10px}
  body.has-flight-search .hotel-search .hotel-form-tail{margin-top:6px}
  /* Weiße Fläche nur so breit wie die Felder, mittig; weniger Abstand zu den Filtern darunter. */
  body.has-flight-search .hotel-search .hotel-form-main{min-height:0;width:fit-content;max-width:100%;margin:0 auto}
  body.has-flight-search .compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route{width:fit-content;max-width:100%}
  @media(min-width:1101px){body[data-kind=hotel].has-flight-search .search-area:has(.hotel-search),body[data-kind=mietwagen].has-flight-search .search-area:has(.hotel-search),body[data-kind=paket].has-flight-search .search-area:has(.hotel-search){min-height:150px}}
body[data-kind=hotel].has-flight-search .hotel-results,body[data-kind=mietwagen].has-flight-search .hotel-results,body[data-kind=paket].has-flight-search .hotel-results{padding-top:0}
  .result-trip-ticket.hotel-voucher{top:0}
  .hotel-page-more{display:block;width:100%;margin:12px 0 0;padding:12px;border:1px solid var(--hotel-line);border-radius:12px;background:#fff;color:var(--hotel-blue,#0054d7);font:700 14px/1 "Segoe UI",Arial,sans-serif;cursor:pointer}.hotel-page-more[hidden]{display:none}
  .hotel-compare{position:absolute;left:12px;bottom:12px;z-index:500;max-width:min(360px,calc(100% - 24px));padding:10px 12px;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(18,35,63,.22)}
  .hotel-compare-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:13px;color:var(--ink)}.hotel-compare-close{border:0;background:transparent;font-size:18px;line-height:1;color:var(--hotel-muted,#5b6b80);cursor:pointer}
  .hotel-compare-list{display:flex;flex-wrap:wrap;gap:8px}.hotel-compare-item{display:inline-flex;align-items:center;justify-content:center;min-width:110px;height:38px;padding:0 12px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:8px;background:#fff;color:var(--ink);font-weight:700;font-size:13px;text-decoration:none}.hotel-compare-item:hover{border-color:var(--hotel-blue,#0054d7)}.hotel-compare-item img{max-height:24px;max-width:110px;object-fit:contain}

/* Handy (Sasan, iPhone-Screenshots 29.09.): Hotel- und Mietwagenmaske einspaltig, jedes Feld volle Breite – Startseite und Ergebnisseite */
@media(max-width:560px){
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route,html body .compact-search.hotel-search.hotel-search .compact-route.car-route{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:auto;max-width:none;justify-content:stretch;justify-items:stretch;padding:10px}
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route>*,html body .compact-search.hotel-search.hotel-search .compact-route.car-route>*{grid-column:1;grid-row:auto;width:100%;min-width:0;max-width:none;justify-self:stretch}
  html body .hotel-search.hotel-search .compact-route .search-popover-trigger,html body .hotel-search.hotel-search .compact-route .hotel-field{width:100%;min-height:56px}
  html body .hotel-search.hotel-search .compact-route.hotel-route>.search-button,html body .hotel-search.hotel-search .compact-route.car-route>.search-button{width:100%;min-width:0;min-height:48px;padding:0}
  .hotel-search .hotel-field-text strong,.hotel-search .hotel-field-text small{white-space:nowrap}
  .hotel-form-top{min-height:0}
}

/* Handy-Ergebnisseite nach KAYAK-Vorlage (Sasan, 29.09.): Zusammenfassung statt Maske, Filterzeile einzeilig + sticky, Karte links im Bild, Preis + Knopf rechts, Karte als schwebender Knopf */
.hotel-mobile-summary,.hotel-map-fab,.hotel-deal-more{display:none}
@media(max-width:560px){
  html body .hotel-mobile-summary{display:grid;gap:2px;width:100%;margin:0 0 8px;padding:10px 14px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:12px;background:#f3f7fb;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
  html body .hotel-mobile-summary strong{font-size:15px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html body .hotel-mobile-summary span{font-size:13px;color:#5b6b80}
  html body .search-area.is-collapsed:not(.is-open) .compact-search,html body .search-area.is-collapsed .result-trip-ticket,html body .search-area.is-collapsed .result-ticket-meta{display:none}
  html body.has-flight-search .search-area{min-height:0;padding:10px 0 0}
  html body .hotel-results{padding-top:0}
  html body .hotel-chipbar{position:sticky;top:0;z-index:700;flex-direction:row;align-items:center;margin:0 -16px 10px;padding:8px 16px;background:#fff;box-shadow:0 2px 6px rgba(25,54,86,.08)}
  html body .hotel-chips-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;padding-bottom:2px}html body .hotel-chips-row::-webkit-scrollbar{display:none}html body .hotel-chip-btn,html body .hotel-chip-wrap{flex:none}html body .hotel-chip-btn{height:34px;padding:0 11px;font-size:12.5px}
  html body .hotel-map-switch{display:none}
  html body .hotel-list-bar{gap:6px 10px}html body .hotel-pricebox{width:100%}
  html body .hotel-card{border-radius:12px}
  html body .hotel-card-top{grid-template-columns:36% minmax(0,1fr);gap:0 10px;padding:0 10px 10px 0}
  html body .hotel-card-media{grid-row:1/3;align-self:stretch;min-height:210px}html body .hotel-card-image{height:100%;min-height:210px;border-radius:12px 0 0 12px}html body .hotel-image-nav{display:none}html body .hotel-image-count,html body .hotel-image-dots{bottom:8px}
  html body .hotel-card-main{padding:10px 0 0;gap:5px}html body .hotel-card-title{font-size:15px;line-height:1.25}html body .hotel-card-place{display:flex;align-items:flex-start;gap:4px;font-size:12px;line-height:1.35}html body .hotel-card-place>.hi{flex:none;margin-top:2px}html body .hotel-card-place>span{white-space:normal}html body .hotel-card-place .hotel-map-link{display:none}
  html body .hotel-card-rating{flex-wrap:wrap;gap:4px 6px}html body .hotel-score-count{display:none}html body .hotel-stars{margin-left:0}
  html body .hotel-features-icons{gap:6px}html body .hotel-feature-icon{width:26px;height:26px}html body .hotel-feature-icon .hi{width:15px;height:15px}
  html body .hotel-card-perks{display:none}
  html body .hotel-card-deal{grid-column:2;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"badge badge" "ab button" "price button" "unit unit" "more more";align-items:center;gap:0 10px;margin-top:8px;padding:10px 0 0;border-top:1px solid var(--hotel-line);text-align:left}
  html body .hotel-deal-badge{grid-area:badge;justify-self:start;margin:0 0 8px;max-width:none}html body .hotel-deal-ab{grid-area:ab}html body .hotel-deal-price{grid-area:price;font-size:22px}html body .hotel-deal-unit{grid-area:unit;font-size:11px}
  html body .hotel-deal-button{grid-area:button;width:auto;margin:0;min-height:42px;padding:0 16px;font-size:14px}html body .hotel-deal-button .hi{display:none}html body .hotel-deal-unavailable{grid-area:button}html body .price-unavailable{grid-column:1/-1}
  html body .hotel-deal-more{display:inline-block;grid-area:more;justify-self:start;margin-top:4px;padding:0;border:0;background:none;color:var(--hotel-blue);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
  html body .hotel-card-providers{display:none}html body .hotel-card.is-offers-open .hotel-card-providers{display:flex;flex-wrap:wrap}html body .hotel-card.is-offers-open .hotel-provider-cell{flex:1 1 45%}
  html body .hotel-map-fab{position:fixed;left:50%;bottom:18px;z-index:800;display:inline-flex;align-items:center;gap:8px;transform:translateX(-50%);padding:0 18px;height:44px;border:0;border-radius:22px;background:#1f2a3a;color:#fff;font:inherit;font-size:14px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.3);cursor:pointer}html body .hotel-map-fab .hi{width:18px;height:18px}
  html body .hotel-layout.has-map{display:block}html body .hotel-layout.has-map .hotel-main{display:none}html body .hotel-map-column{position:fixed;inset:0;z-index:760;margin:0}html body .hotel-map-column .hotel-map{height:100vh;height:100dvh;border-radius:0}
  html body.hotel-photos-open .hotel-map-fab{display:none}
}

/* Handy-Mietwagenmaske wie KAYAK: Reiter Anmietstation/Andere Rückgabestation, dann Abholort, Datum, Alter des Fahrers, Suchen; Felder 52 px hoch */
.car-station-tabs{display:none}
@media(max-width:560px){
  html body .hotel-search.hotel-search .hotel-form-top{min-height:0;margin:0;gap:0}html body .hotel-search.hotel-search .car-options{width:100%;margin:0 0 8px;gap:0}
  html body .hotel-search.hotel-search .car-options>label.car-option{display:none}
  html body .hotel-search.hotel-search .car-station-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%;border-bottom:1px solid var(--hotel-line,#e4eaf2)}
  html body .hotel-search.hotel-search .car-station-tab{padding:12px 6px 10px;border:0;border-bottom:2px solid transparent;background:none;color:#5b6b80;font:inherit;font-size:14px;font-weight:800;cursor:pointer;white-space:nowrap}html body .hotel-search.hotel-search .car-station-tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}
  html body .hotel-search.hotel-search .compact-route>.car-option{display:flex;justify-content:space-between;align-items:center;min-height:52px;padding:0 14px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:10px;background:#fff;font-size:15px;color:var(--ink)}html body .hotel-search.hotel-search .compact-route>.car-option select{font-size:15px;font-weight:800;text-align:right}
  html body .hotel-search.hotel-search .compact-route .hotel-field{min-height:52px;height:auto;padding:0 14px;gap:10px}html body .hotel-search.hotel-search .compact-route .hotel-destination .hotel-field-text{gap:0;min-height:0}html body .hotel-search.hotel-search .compact-route .hotel-destination .hotel-field-text small{display:none}html body .hotel-search.hotel-search .compact-route .hotel-destination .airport-entry{padding:0;font-size:15px}
  html body .hotel-search.hotel-search .compact-route .hotel-field-text strong{font-size:15px}html body .hotel-search.hotel-search .compact-route .hotel-field-icon{width:18px;height:18px}
  html body .hotel-search.hotel-search .compact-route.hotel-route,html body .hotel-search.hotel-search .compact-route.car-route{gap:8px;padding:0;border:0;box-shadow:none;background:transparent}
  html body .hotel-search.hotel-search .compact-route>.search-button{min-height:48px;margin-top:2px}
  html body .hotel-search.hotel-search .hotel-form-tail{margin-top:8px}
}

/* Handy: Ortsvorschläge der Hotel-/Mietwagenmaske kompakt (eine Zeile je Vorschlag, Typ dahinter) */
@media(max-width:560px){
  html body .hotel-search.hotel-search .airport-panel{padding:10px 12px}
  html body .hotel-search.hotel-search .airport-choice,html body .hotel-search.hotel-search .is-picker-open .airport-choice{min-height:0;padding:9px 4px;gap:8px;grid-template-columns:22px minmax(0,1fr)}
  html body .hotel-search.hotel-search .airport-choice strong{font-size:14px;line-height:1.3;font-weight:700}
  html body .hotel-search.hotel-search .airport-choice small{display:inline;font-size:12px;margin:0 0 0 6px;line-height:1.3}
  html body .hotel-search.hotel-search .hotel-choice-icon{font-size:14px}
  html body .hotel-search.hotel-search .airport-panel>p:first-child{font-size:13px;margin:0 0 6px}
}

/* Handy: Vollbild-Ortsauswahl der Hotel-/Mietwagenmaske (nutzt die Flug-Regeln .is-picker-open) */
@media(max-width:560px){
  html body .hotel-search.hotel-search .airport-field.is-picker-open{position:fixed;inset:0;top:0;height:100%;min-height:0;width:100%;z-index:1100;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px 16px;border:0;border-radius:0;background:#fff}
  html body .hotel-search.hotel-search .airport-field.is-picker-open>.hotel-field-icon,html body .hotel-search.hotel-search .airport-field.is-picker-open .airport-field-label,html body .hotel-search.hotel-search .airport-field.is-picker-open .hotel-field-text small{display:none}
  html body .hotel-search.hotel-search .airport-field.is-picker-open .hotel-field-text{display:block;flex:none;width:100%}
  html body .hotel-search.hotel-search .airport-field.is-picker-open .airport-entry{width:100%;height:48px;font-size:16px;padding:10px 12px;background:#f3f6f7;border:1px solid #62727f;border-radius:8px}
  html body .hotel-search.hotel-search .airport-field.is-picker-open .airport-picker-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;font-size:17px}
  html body .hotel-search.hotel-search .airport-field.is-picker-open .airport-panel{position:static;display:block;width:100%;max-width:none;flex:none;max-height:calc(var(--picker-height,100dvh) - 132px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 0 24px;box-shadow:none;border-radius:0}
  html body.airport-picker-active{position:fixed;inset:0;width:100%;overflow:hidden}
  html body .hotel-search.hotel-search .airport-field.is-picker-open .airport-choice{border-bottom:1px solid var(--hotel-line,#e4eaf2);padding:11px 4px}
  html body .hotel-search.hotel-search .airport-field:not(.is-picker-open) .airport-picker-header{display:none}
}

/* Löschen-Kreuz in den Ortsfeldern der Hotel-/Mietwagenmaske */
html body .hotel-search .hotel-field-text{position:relative}
html body .hotel-search .hotel-destination .airport-entry{padding-right:34px}
html body .hotel-search .airport-clear{position:absolute;right:0;top:50%;display:none;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:#dfe6ef;color:#33475f;cursor:pointer;transform:translateY(-50%)}
html body .hotel-search .airport-clear .hi{width:14px;height:14px}html body .hotel-search .airport-clear:hover{background:#c9d5e4}
html body .hotel-search .hotel-field.is-filled .airport-clear{display:grid}
html body .hotel-search .airport-field.is-picker-open .airport-clear{right:10px;width:30px;height:30px}

/* Tablet/schmaler Desktop (561–1100 px): Hotelmaske Ziel volle Breite, darunter Datum + Gäste, dann Suchen (Sasans Screenshot: Felder überlappten) */
@media(min-width:561px) and (max-width:1100px){
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;width:auto;max-width:none;justify-items:stretch}
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route>.hotel-destination{grid-column:1/-1;grid-row:1;width:100%}
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route>.search-dates{grid-column:1;grid-row:2;min-width:0;width:100%}
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route>.search-travelers{grid-column:2;grid-row:2;min-width:0;width:100%}
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route>.search-button{grid-column:1/-1;grid-row:3;width:100%;min-width:0}
  html body .compact-search.hotel-search.hotel-search .compact-route.hotel-route .search-popover-trigger{width:100%;min-width:0}
  html body .compact-search.hotel-search.hotel-search .compact-route.car-route{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  html body .compact-search.hotel-search.hotel-search .compact-route.car-route>*{width:100%;min-width:0;grid-column:auto;grid-row:auto}
  html body .compact-search.hotel-search.hotel-search .compact-route.car-route>.hotel-destination:not(.car-dropoff),html body .compact-search.hotel-search.hotel-search .compact-route.car-route>.search-button{grid-column:1/-1}
  html body .compact-search.hotel-search.hotel-search .compact-route.car-route.has-dropoff>.hotel-destination{grid-column:auto}
  html body .compact-search.hotel-search.hotel-search .compact-route.car-route>.search-dates{grid-column:1/-1}
}

@media(max-width:560px){
  html body .hotel-search.hotel-search .compact-route .hotel-field.hotel-destination:not(.is-picker-open){flex-direction:row;align-items:center;gap:10px;min-height:52px;height:52px;padding:0 14px}
  html body .hotel-search.hotel-search .compact-route .hotel-destination .airport-field-label{display:none}
  html body .hotel-search.hotel-search .compact-route .hotel-destination .hotel-field-text{flex:1 1 auto;min-width:0}
}

/* Kein oranger Fokusrahmen im Ortsfeld der Hotel-/Mietwagenmaske (Sasan: verwirrt) – der blaue Feldrahmen bleibt */
html body .hotel-search .hotel-destination .airport-entry:focus,html body .hotel-search .hotel-destination .airport-entry:focus-visible,html body .hotel-search .airport-field.is-picker-open .airport-entry:focus{outline:none;box-shadow:none;border-color:#62727f}

/* Mietwagen-/Hotelmaske: alle Felder einer Reihe gleich hoch (Sasan: Datum an Ort angleichen) */
@media(min-width:561px){
  html body .hotel-search .compact-route.car-route,html body .hotel-search .compact-route.hotel-route{align-items:stretch}
  html body .hotel-search .compact-route.car-route>.hotel-destination,html body .hotel-search .compact-route.hotel-route>.hotel-destination,html body .hotel-search .compact-route .search-popover-trigger.hotel-field,html body .hotel-search .compact-route>.search-button{height:auto;min-height:58px;align-self:stretch}
  html body .hotel-search .compact-route>.search-dates,html body .hotel-search .compact-route>.search-travelers{display:flex}html body .hotel-search .compact-route>.search-dates>.search-popover-trigger,html body .hotel-search .compact-route>.search-travelers>.search-popover-trigger{width:100%;flex:1}
}

/* Flug + Hotel (Paket): Karten im Flugmodul-Rahmen – Hotelzeile, Flugzeilen, Preisspalte rechts */
.package-results .hotel-layout{display:block}
.package-flight-strip{margin:0 0 14px;padding:12px 16px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(25,54,86,.04)}
.package-flight-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px;margin-bottom:6px;font-size:13px}
.package-flight-label{display:inline-flex;align-items:center;gap:6px;font-weight:800;color:var(--ink)}.package-flight-label .hi,.package-flight-label svg{width:16px;height:16px}
.package-flight-price{font-weight:800;color:var(--ink)}.package-flight-price small{font-weight:500;color:var(--hotel-muted,#5b6b80)}
.package-flight-main .flight-leg,.package-flight .flight-leg{padding:4px 0}.package-flight-main .flight-leg-heading,.package-flight .flight-leg-heading{margin:0 0 2px;font-size:12px;color:var(--hotel-muted,#5b6b80)}.package-flight-main .flight-leg-heading strong,.package-flight .flight-leg-heading strong{color:var(--ink)}
.package-flight-main .flight-leg-row,.package-flight .flight-leg-row{grid-template-columns:54px minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr);min-height:44px}
.package-flight .flight-leg-row .flight-airlines img,.package-flight-main .flight-leg-row .flight-airlines img{width:36px;height:36px}
.package-card{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:0;padding:0;overflow:visible}
.package-card-body{display:grid;gap:0;padding:12px 14px;min-width:0}
.package-hotel{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0 14px;align-items:start}
.package-media{position:relative}.package-media .hotel-card-image{height:110px;border-radius:10px}.package-media .hotel-image-count{position:absolute;right:6px;bottom:6px;padding:2px 7px;border-radius:6px;background:rgba(0,0,0,.65);color:#fff;font-size:11px;font-weight:700}
.package-hotel-main{display:grid;gap:5px;min-width:0}.package-hotel-main .hotel-card-title{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;font-size:17px;line-height:1.25}.package-hotel-main .hotel-card-place{margin:0;font-size:12.5px}
.package-hotel-line,.package-flight-line{margin:4px 0 0;font-size:12.5px;color:var(--hotel-muted,#5b6b80)}.package-hotel-line b,.package-flight-line b{color:var(--ink)}
.package-flight{margin-top:10px;padding-top:8px;border-top:1px dashed var(--hotel-line,#e4eaf2)}
.package-price{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:8px;padding:14px;border-left:1px solid var(--hotel-line,#e4eaf2);background:#fbfcfe;border-radius:0 14px 14px 0;position:relative}
.package-price .flight-price-info{align-items:center;text-align:center}.package-price .price-line>strong{font-size:26px;font-weight:850;color:var(--ink)}.package-price .flight-price-info:has(.flight-total) .price-line>strong{font-size:26px;font-weight:850;color:var(--ink)}.package-price .flight-total{order:0;font-size:12.5px;font-weight:600;color:var(--hotel-muted,#5b6b80)}
.package-price .flight-price-unit{font-size:13px;color:var(--hotel-muted,#5b6b80)}.package-price-note{font-size:11.5px;color:var(--hotel-muted,#5b6b80)}.package-price .hotel-deal-badge{margin:0 0 4px}
.package-book{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:0 14px;border:0;border-radius:9px;background:var(--hotel-orange,#fd6318);color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.package-book:hover{background:#e6570f}.package-book .hi{width:16px;height:16px}
.package-book-panel{position:absolute;right:14px;top:calc(100% - 8px);z-index:40;width:280px;padding:12px 14px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.18);text-align:left}
.package-book-title{margin:0 0 8px;font-size:13px;font-weight:800}.package-book-link{display:flex;align-items:center;gap:10px;padding:8px 10px;margin-bottom:6px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:9px;color:var(--ink);text-decoration:none;font-size:13px;font-weight:800}.package-book-link:hover{border-color:var(--hotel-blue,#0054d7);color:var(--hotel-blue,#0054d7)}.package-book-link.is-disabled{opacity:.6}.package-book-link .hi,.package-book-link svg{width:18px;height:18px;flex:none}.package-book-link small{display:block;font-size:11.5px;font-weight:500;color:var(--hotel-muted,#5b6b80)}
.package-book-note{display:block;margin-top:4px;font-size:11px;color:var(--hotel-muted,#5b6b80);line-height:1.35}
@media(max-width:900px){.package-card{grid-template-columns:1fr}.package-price{border-left:0;border-top:1px solid var(--hotel-line,#e4eaf2);border-radius:0 0 14px 14px}.package-book-panel{right:auto;left:14px}}
@media(max-width:560px){.package-hotel{grid-template-columns:100px minmax(0,1fr)}.package-media .hotel-card-image{height:90px}.package-flight-main .flight-leg-row,.package-flight .flight-leg-row{grid-template-columns:40px minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);gap:6px}.package-results .hotel-card-top{display:none}}

/* Flug + Hotel Suchmaske nach Sasans Vorlage (29.09., verbindlich): Kopfzeile Hinweis | Nur Direktflüge; Reihe 1 Abflughafen ⇄ Reiseziel | Hinflug/Rückflug; Reihe 2 Hotel | Reisende/Zimmer | Flug + Hotel suchen; Fußzeile Flexible Reisedaten | Reiseart */
html body form#kayak-package-search .hotel-form-top{justify-content:space-between;align-items:center;gap:8px 16px;min-height:0;margin:0 0 10px;font-size:15px;color:#5b6b80}
html body form#kayak-package-search .package-hint{flex:1 1 auto;display:none}html body form#kayak-package-search .hotel-form-top{justify-content:flex-end}
html body form#kayak-package-search .package-check{display:inline-flex;align-items:center;gap:10px;font-size:15px;color:var(--ink);cursor:pointer;white-space:nowrap}html body form#kayak-package-search .package-check input{width:20px;height:20px;margin:0;accent-color:var(--hotel-blue,#0054d7)}
html body form#kayak-package-search .compact-route.package-route>*{grid-row:auto;grid-column:auto;width:auto;min-width:0;max-width:none;justify-self:stretch}
html body form#kayak-package-search .compact-route.package-route{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));grid-auto-rows:auto;gap:12px;padding:0;border:0;background:transparent;box-shadow:none;align-items:stretch}
html body form#kayak-package-search .package-route>.package-origin{grid-column:span 7}
html body form#kayak-package-search .package-route>.package-swap{grid-column:span 1;display:grid;place-items:center;min-width:0;padding:0;border:1px solid #e4eaf2;border-radius:12px;background:#f5f7fa;color:var(--ink);cursor:pointer}html body form#kayak-package-search .package-swap .hi{width:20px;height:20px}html body form#kayak-package-search .package-swap:hover{background:#e8eef6}
html body form#kayak-package-search .package-route>.hotel-destination:not(.package-origin){grid-column:span 7}
html body form#kayak-package-search .package-route>.search-dates{grid-column:span 9}
html body form#kayak-package-search .package-route>.package-hotel-field{grid-column:span 8}
html body form#kayak-package-search .package-route>.search-travelers{grid-column:span 8}
html body form#kayak-package-search .package-route>.package-submit{grid-column:span 8}
html body form#kayak-package-search .hotel-field,html body form#kayak-package-search .search-popover-trigger.hotel-field{min-height:76px;height:76px;box-sizing:border-box;padding:0 18px;border:1px solid #e4eaf2;border-radius:12px;background:#fff;gap:14px}
html body form#kayak-package-search .hotel-field-icon{width:26px;height:26px;color:#33475f}html body form#kayak-package-search .hotel-field-icon .hi{width:24px;height:24px}
html body form#kayak-package-search .hotel-field-text{display:flex;flex-direction:column-reverse;gap:2px;min-width:0}
html body form#kayak-package-search .hotel-field-text small,html body form#kayak-package-search .hotel-field.is-filled .hotel-field-text small{display:block;font-size:14px;color:#5b6b80;white-space:nowrap}
html body form#kayak-package-search .hotel-field-text strong{font-size:18px;font-weight:800;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html body form#kayak-package-search .hotel-field-dates strong{font-size:18px}html body form#kayak-package-search .hotel-field-dates small{font-size:13px}html body form#kayak-package-search .hotel-field-dates>span{gap:8px;padding:0 12px}html body form#kayak-package-search .hotel-field-dates .hotel-field-icon{width:22px;height:22px}
html body form#kayak-package-search .hotel-field-text .airport-entry{width:100%;height:24px;min-height:0;max-height:24px;line-height:24px;flex:none;padding:0 34px 0 0;margin:0;border:0;background:transparent;font:inherit;font-size:18px;font-weight:800;color:var(--ink);outline:none;box-shadow:none}html body form#kayak-package-search .hotel-field-text .airport-entry::placeholder{color:var(--ink);font-weight:800}
html body form#kayak-package-search .airport-field-label{display:none}
html body form#kayak-package-search .airport-clear{right:0;width:32px;height:32px;background:#e6ebf2}
html body form#kayak-package-search .hotel-field-dates{display:grid;grid-template-columns:1fr 1fr;padding:0}html body form#kayak-package-search .hotel-field-dates>span{display:flex;align-items:center;gap:14px;padding:0 18px;min-height:76px}html body form#kayak-package-search .hotel-field-dates>span+span{border-left:1px solid #e4eaf2}
html body form#kayak-package-search .search-travelers .hotel-field>.hotel-field-icon:last-child{margin-left:auto;color:#5b6b80}
html body form#kayak-package-search .package-submit{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:76px;border:0;border-radius:12px;background:var(--hotel-orange,#fd6318);color:#fff;font-size:20px;font-weight:800;cursor:pointer}html body form#kayak-package-search .package-submit:hover{background:#e6570f}html body form#kayak-package-search .package-submit .hi{width:22px;height:22px}
html body form#kayak-package-search .hotel-form-tail{display:flex;align-items:center;gap:20px;margin-top:14px;font-size:15px}
html body form#kayak-package-search .package-tail-sep{width:1px;height:36px;background:#e4eaf2}
html body form#kayak-package-search .package-mode{display:flex;align-items:center;gap:12px}html body form#kayak-package-search .package-mode-label{color:#5b6b80}
html body form#kayak-package-search .package-mode-btn{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 16px;border:1px solid #e4eaf2;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:15px;font-weight:600;cursor:pointer}html body form#kayak-package-search .package-mode-btn .hi{width:20px;height:20px}
html body form#kayak-package-search .package-mode-btn[aria-pressed=true]{border-color:var(--hotel-blue,#0054d7);background:#eef4fd;color:var(--hotel-blue,#0054d7)}
html body form#kayak-package-search .search-partner{margin-left:auto}
@media(max-width:1100px){
  html body form#kayak-package-search .package-route>.package-origin,html body form#kayak-package-search .package-route>.hotel-destination:not(.package-origin){grid-column:span 11}html body form#kayak-package-search .package-route>.package-swap{grid-column:span 2}
  html body form#kayak-package-search .package-route>.search-dates{grid-column:span 24}html body form#kayak-package-search .package-route>.package-hotel-field,html body form#kayak-package-search .package-route>.search-travelers{grid-column:span 12}html body form#kayak-package-search .package-route>.package-submit{grid-column:span 24}
  html body form#kayak-package-search .hotel-form-tail{flex-wrap:wrap}
}
@media(max-width:560px){
  html body form#kayak-package-search .package-route>*{grid-column:span 24!important}html body form#kayak-package-search .package-route>.package-swap{display:none}
  html body form#kayak-package-search .hotel-field,html body form#kayak-package-search .search-popover-trigger.hotel-field{min-height:60px;padding:0 14px}html body form#kayak-package-search .hotel-field-text strong,html body form#kayak-package-search .hotel-field-text .airport-entry{font-size:16px}
  html body form#kayak-package-search .hotel-field-dates>span{min-height:60px;padding:0 12px}html body form#kayak-package-search .package-submit{min-height:52px;font-size:17px}
  html body form#kayak-package-search .hotel-form-top{flex-direction:column;align-items:flex-start}html body form#kayak-package-search .package-tail-sep{display:none}html body form#kayak-package-search .hotel-form-tail{gap:10px}html body form#kayak-package-search .package-mode{flex-wrap:wrap}
}

/* Flug + Hotel – Ergebnisseite nach Sasans Mockup „Urlaubspakete zum Verlieben“ (29.09.): Filterspalte links, Reiter oben, Karten rechts */
.package-results{--pk-blue:#0054d7;--pk-blue-soft:#e8f0fd;--pk-line:#e4eaf2;--pk-muted:#5b6b80;--pk-green:#08893f;--pk-green-soft:#e3f6ea;--pk-orange:#fd6318;padding-top:6px}
.package-results .hotel-layout{display:block}
.package-layout{display:grid;grid-template-columns:224px minmax(0,1fr);gap:24px;align-items:start}
.package-filters{position:sticky;top:12px;border:1px solid var(--pk-line);border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(25,54,86,.04);padding:16px 20px 8px;font-size:13px}
.package-filters-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}.package-filters-head h3{margin:0;font-size:17px;font-weight:800;color:var(--ink)}
.package-filters .hotel-chip-reset,.package-filters .hotel-chip-reset[hidden]{display:inline;padding:0;border:0;background:none;color:var(--pk-blue);font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.pf-group{border-top:1px solid var(--pk-line);padding:12px 0 8px}.pf-group summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;font-weight:800;font-size:13px;color:var(--ink);margin:0 0 6px}.pf-group summary::-webkit-details-marker{display:none}.pf-group summary .hi{width:16px;height:16px;color:var(--pk-muted);transition:transform .15s}.pf-group:not([open]) summary .hi{transform:rotate(180deg)}
.pf-body{display:grid;gap:6px}
.pf-row{display:flex;align-items:center;gap:7px;min-height:22px;color:var(--ink);cursor:pointer}.pf-row input{width:15px;height:15px;margin:0;accent-color:var(--pk-blue);flex:none}.pf-row>span{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pf-row em{font-style:normal;color:var(--pk-muted);font-size:12px}.pf-row .hi{width:15px;height:15px;color:#33475f;flex:none}
.pf-row.is-empty{color:var(--pk-muted)}.pf-row.is-empty>span{opacity:.75}
.pf-stars{display:inline-flex;gap:0;font-size:11px;letter-spacing:0;flex:none}.pf-stars i{font-style:normal;color:#d5dde7}.pf-stars i.is-on{color:#f5a623}
.package-filters .hotel-price-label{margin:0 0 6px;font-size:12px;color:var(--pk-muted)}.package-filters .hotel-range{margin:0 4px 6px}
.package-main{min-width:0}
.package-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:2px 0 12px}.package-topbar .hotel-results-title{margin:0;font-size:17px;font-weight:800;color:var(--ink)}.package-topbar .hotel-results-title b{font-weight:800}.package-topbar .hotel-status-loading{display:inline-flex;align-items:center;gap:8px}
.package-sortbox{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--pk-muted)}.package-sortbox select{border:1px solid var(--pk-line);border-radius:9px;background:#fff;padding:7px 10px;font:inherit;font-size:13px;font-weight:700;color:var(--ink)}
.package-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.package-tab{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 16px;border:1px solid var(--pk-line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.package-tab .hi{width:16px;height:16px}.package-tab:hover{border-color:#b9c9e0}.package-tab[aria-selected=true]{background:var(--pk-blue);border-color:var(--pk-blue);color:#fff}
.package-list{display:grid;gap:14px}
.package-results .hotel-card.package-card{display:grid;grid-template-columns:204px minmax(0,1fr) 200px;gap:0;padding:0;border-radius:14px;overflow:visible}
.package-media{position:relative;margin:12px 0 12px 12px}.package-media .hotel-card-image{display:block;width:100%;height:200px;object-fit:cover;border-radius:12px}.package-media .hotel-image-count{position:absolute;right:8px;bottom:8px;padding:2px 8px;border-radius:6px;background:rgba(0,0,0,.6);color:#fff;font-size:11px;font-weight:700}
.package-media .hotel-image-nav{opacity:1;position:absolute;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.2)}.package-media .hotel-image-nav.is-prev{left:8px}.package-media .hotel-image-nav.is-next{right:8px}.package-media .hotel-image-nav.is-prev .hi{transform:rotate(180deg)}.package-media .hotel-image-nav .hi{width:16px;height:16px}
.package-tip{position:absolute;left:8px;top:8px;display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:var(--pk-blue);color:#fff;font-size:11.5px;font-weight:800;z-index:1}.package-tip .hi{width:13px;height:13px}
.package-body{display:grid;gap:6px;align-content:start;min-width:0;padding:16px 22px 14px}
.package-body .hotel-card-title{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;font-size:17px;line-height:1.25;font-weight:800}.package-body .hotel-card-title a{color:var(--ink);text-decoration:none}.package-body .hotel-card-title a:hover{color:var(--pk-blue)}
.package-body .hotel-card-place{margin:0;font-size:12.5px;color:var(--pk-muted)}.package-body .hotel-card-place .hi{width:14px;height:14px;color:var(--pk-blue)}
.package-body .hotel-card-rating{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12.5px;cursor:pointer}.package-body .hotel-score{min-width:36px;height:24px;font-size:13px;border-radius:6px}.package-body .hotel-score-label{font-weight:800;color:var(--ink)}.package-body .hotel-score-count{color:var(--pk-muted)}
.package-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}.package-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:var(--pk-blue-soft);color:#0a3f9a;font-size:12px;font-weight:700}.package-chip .hi{width:13px;height:13px}.package-chip.is-green{background:var(--pk-green-soft);color:var(--pk-green)}
.package-amenities{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;font-size:12px;color:var(--pk-muted)}.package-amenities span{display:inline-flex;align-items:center;gap:5px}.package-amenities .hi{width:15px;height:15px;color:#33475f}
.package-legs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:4px 0 0;padding:8px 0 0;border-top:1px dashed var(--pk-line)}.package-legs .package-leg:first-child{border-right:1px solid var(--pk-line);padding-right:14px}
.package-leg-head{display:flex;align-items:center;gap:6px;margin:0 0 4px;font-size:12px;color:var(--pk-muted)}.package-leg-head b{color:var(--ink);font-weight:800}.package-leg-head .hi{width:14px;height:14px;color:#33475f}
.package-leg-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.package-leg-port{display:grid;gap:1px;font-size:12px;color:var(--pk-muted)}.package-leg-port b{font-size:13px;color:var(--ink);white-space:nowrap}.package-leg-port sup{font-size:9px;color:var(--pk-orange)}.package-leg-port:last-child{text-align:right}
.package-leg-mid{display:grid;justify-items:center;gap:1px;font-size:11.5px;color:var(--pk-muted);min-width:70px}.package-leg-mid i{display:block;width:100%;height:1px;background:#c9d4e2;position:relative}.package-leg-mid i::after{content:"";position:absolute;right:-1px;top:-3px;border:3.5px solid transparent;border-left:6px solid #9fb0c3}.package-leg-mid em{font-style:normal;font-weight:700;color:var(--pk-muted)}.package-leg-mid em.is-direct{color:var(--pk-green)}
.package-leg-none{margin:4px 0 0;padding-top:8px;border-top:1px dashed var(--pk-line);font-size:12.5px;color:var(--pk-muted)}
.package-foot{display:flex;flex-wrap:wrap;gap:4px 0;margin:2px 0 0;padding-top:8px;border-top:1px dashed var(--pk-line);font-size:12px;color:var(--pk-muted)}.package-foot span{display:inline-flex;align-items:center;gap:5px}.package-foot span+span::before{content:"|";margin:0 10px;color:#c9d4e2}.package-foot .hi{width:14px;height:14px;color:#33475f}
.package-results .package-price{position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:6px;padding:14px 18px 14px;border-left:1px solid var(--pk-line);border-radius:0 14px 14px 0;background:#fff}
.package-price-top{display:flex;justify-content:space-between;align-items:center;min-height:26px}.package-price-top .hotel-fav{position:static;width:26px;height:26px;border:0;background:none;color:var(--ink);cursor:pointer;display:grid;place-items:center}.package-price-top .hotel-fav .hi{width:20px;height:20px}.package-price-top .hotel-fav[aria-pressed=true]{color:#e0245e}.package-price-top .hotel-fav[aria-pressed=true] .hi{fill:currentColor}
.package-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:800;background:var(--pk-blue-soft);color:#0a3f9a;white-space:nowrap}.package-badge[data-badge="Toller Preis"]{background:#fff0e6;color:#c2410c}.package-badge[data-badge="Sehr beliebt"]{background:#fde8ec;color:#b3163f}.package-badge[data-badge="Top bewertet"]{background:var(--pk-blue-soft);color:#0a3f9a}.package-badge[data-badge="Familien-Tipp"]{background:#e6f0ff;color:#1d4ed8}
.package-price-main{display:flex;align-items:baseline;gap:6px;margin:4px 0 0}.package-price-main strong{font-size:26px;font-weight:900;color:var(--ink);line-height:1}.package-price-main span{font-size:12.5px;color:var(--pk-muted)}
.package-price-total{margin:0;font-size:12.5px;color:var(--pk-muted)}.package-price-total b{color:var(--ink);font-weight:800}
.package-results .package-book{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;margin-top:6px;padding:0 12px;white-space:nowrap;border:0;border-radius:9px;background:var(--pk-orange);color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.package-results .package-book:hover{background:#e6570f}.package-results .package-book .hi{width:16px;height:16px}
/* Buchungsvorteile: nur Icons (Mockup 29.09.), HTML-Tooltip per Hover/Fokus, auf Touch per Tipp (.is-open, hotel-search.js) */
.pk-trust{display:flex;gap:8px;margin:8px 0 0;padding:0;justify-content:center}.pk-trust-i{position:relative;display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e6f6ee;cursor:help;outline:none;-webkit-tap-highlight-color:transparent}.pk-trust-i.is-paylater{background:#e3effc}.pk-trust-i.is-taxes{background:#fdf0dc}.pk-trust-i svg{width:30px;height:30px;display:block}.pk-trust-i:focus-visible{box-shadow:0 0 0 2px var(--pk-blue)}
.pk-trust-i::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 7px);z-index:600;transform:translateX(-50%);padding:6px 10px;border-radius:7px;background:var(--ink);color:#fff;font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.22);opacity:0;pointer-events:none;transition:opacity .12s}
.pk-trust-i::before{content:"";position:absolute;left:50%;bottom:calc(100% + 2px);transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink);opacity:0;pointer-events:none;transition:opacity .12s}
.pk-trust-i:hover::after,.pk-trust-i:focus-visible::after,.pk-trust-i.is-open::after,.pk-trust-i:hover::before,.pk-trust-i:focus-visible::before,.pk-trust-i.is-open::before,.hotel-feature-icon.is-open::after,.hotel-feature-icon.is-open::before{opacity:1}
.pk-trust-i:last-child::after{left:auto;right:0;transform:none}.pk-trust-i:first-child:not(:last-child)::after{left:0;transform:none}
.package-checks{display:grid;gap:4px;margin:8px 0 0;padding:0;list-style:none;font-size:11.5px;color:var(--ink)}.package-checks li{display:inline-flex;align-items:center;gap:6px}.package-checks .hi{width:14px;height:14px;color:var(--pk-green);flex:none}
.package-results .package-book-panel{position:absolute;right:14px;top:auto;bottom:calc(100% - 12px);z-index:40;width:280px;padding:12px 14px;border:1px solid var(--pk-line);border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.18);text-align:left}
.package-results .hotel-page-more{display:block;margin:14px auto 0}
/* Suchzusammenfassung wie im Mockup: Von | Nach | Reisedatum | Reisende | Suche ändern – auf allen Breiten, Maske klappt darunter auf */
html body[data-kind=paket].has-flight-search .search-area.is-collapsed:not(.is-open) .compact-search,html body[data-kind=paket].has-flight-search .search-area.is-collapsed .result-trip-ticket,html body[data-kind=paket].has-flight-search .search-area.is-collapsed .result-ticket-meta{display:none}
html body[data-kind=paket].has-flight-search .search-area{min-height:0}
html body .package-summary{display:flex;align-items:stretch;gap:0;width:100%;max-width:1100px;margin:0 auto 8px;padding:8px 10px;border:1px solid #e4eaf2;border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(25,54,86,.06);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
html body .package-summary-cell{flex:1 1 0;display:flex;align-items:center;gap:10px;min-width:0;padding:8px 14px;border-right:1px solid #e4eaf2}html body .package-summary-cell .hi{width:22px;height:22px;color:#0054d7;flex:none}
html body .package-summary-text{display:grid;gap:1px;min-width:0}html body .package-summary-text small{font-size:11.5px;color:#5b6b80}html body .package-summary-text strong{font-size:14px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .package-summary-change{flex:none;display:inline-flex;align-items:center;gap:8px;align-self:center;margin-left:12px;padding:0 20px;min-height:44px;border-radius:10px;background:#fd6318;color:#fff;font-size:14px;font-weight:800}html body .package-summary-change .hi{width:16px;height:16px}html body .package-summary:hover .package-summary-change{background:#e6570f}
@media(max-width:1100px){.package-layout{grid-template-columns:1fr}.package-filters{position:static}.package-filters .pf-body{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
@media(max-width:900px){.package-results .hotel-card.package-card{grid-template-columns:150px minmax(0,1fr)}.package-media .hotel-card-image{height:150px}.package-results .package-price{grid-column:1/-1;border-left:0;border-top:1px solid var(--pk-line);border-radius:0 0 14px 14px;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.package-price-top{order:0;width:100%}.package-checks{width:100%}.package-results .package-book-panel{right:auto;left:14px;bottom:auto;top:calc(100% - 8px)}.package-legs{grid-template-columns:1fr}.package-legs .package-leg:first-child{border-right:0;padding-right:0;margin-bottom:6px}}
@media(max-width:560px){html body .package-summary{flex-wrap:wrap;padding:8px}html body .package-summary-cell{flex:1 1 45%;padding:6px 8px;border-right:0}html body .package-summary-change{width:100%;margin:6px 0 0;justify-content:center}.package-results .hotel-card.package-card{grid-template-columns:1fr}.package-media{margin:10px 10px 0}.package-media .hotel-card-image{height:180px}.package-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px 10px;padding:0 16px}.package-topbar{flex-wrap:wrap}}
.package-results .hotel-map-fab{display:none}
@media(max-width:1280px){.package-legs{grid-template-columns:1fr}.package-legs .package-leg:first-child{border-right:0;padding-right:0;margin-bottom:6px}.package-leg-row{grid-template-columns:auto minmax(90px,1fr) auto}}
@media(max-width:900px){.package-filters{padding:10px 14px}.package-filters-head{margin:0;cursor:pointer}.package-filters-head h3::after{content:"";display:inline-block;width:8px;height:8px;margin-left:8px;border-right:2px solid var(--pk-muted);border-bottom:2px solid var(--pk-muted);transform:rotate(45deg);vertical-align:3px}.package-filters.is-open .package-filters-head h3::after{transform:rotate(-135deg);vertical-align:-2px}.package-filters .pf-group{display:none}.package-filters.is-open .pf-group{display:block}.package-filters.is-open .package-filters-head{margin-bottom:8px}}
/* Sasan 29.09.: Paket-Ergebnisseite ohne Voucher, alles linksbündig und kompakt auf ~60 % der Seitenbreite */
html body[data-kind=paket].has-flight-search .result-trip-ticket{display:none}
html body[data-kind=paket].has-flight-search .shell.flight-page-main{width:max(60vw,1000px);max-width:calc(100% - 48px);margin:0 auto 0 max(24px,calc((100% - 1680px) / 2))}
html body[data-kind=paket].has-flight-search .search-area{margin-left:0!important;width:100%}
html body[data-kind=paket].has-flight-search .package-summary{max-width:none;margin:0 0 8px}
@media(max-width:1100px){html body[data-kind=paket].has-flight-search .shell.flight-page-main{width:auto;max-width:none;margin:0 16px}}
.package-results .hotel-card.package-card[hidden]{display:none}
html body[data-kind=paket].has-flight-search .search-area.is-collapsed:not(.is-open){min-height:0;padding:0}
html body[data-kind=paket].has-flight-search .shell.flight-page-main{padding-top:10px}
html body[data-kind=paket].has-flight-search .package-results{padding-top:8px}
.package-sortbox select{width:auto!important;min-width:160px;padding-right:28px}
/* Erlebnis-Banner rechts (Viator über billigxxl.de), Spalte so breit wie die Filter */
.package-results.has-side .package-layout{grid-template-columns:224px minmax(0,1fr) 224px}
.package-side{position:sticky;top:12px;display:grid;gap:12px;align-content:start}
.package-side-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.package-side-head h3{margin:0;font-size:15px;font-weight:800;color:var(--ink)}.package-side-all{font-size:12px;font-weight:600;color:var(--pk-blue);text-decoration:none;white-space:nowrap}.package-side-all:hover{text-decoration:underline}
.package-banner{display:block;border:1px solid var(--pk-line);border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(25,54,86,.04);overflow:hidden;color:var(--ink);text-decoration:none}.package-banner:hover{box-shadow:0 6px 18px rgba(25,54,86,.12)}
.package-banner img{display:block;width:100%;height:140px;object-fit:cover}
.package-banner-body{display:grid;gap:4px;padding:10px 12px 12px}.package-banner-body b{font-size:13px;line-height:1.3;font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.package-banner-body small{font-size:11.5px;color:var(--pk-muted)}.package-banner-body em{font-style:normal;font-size:13px;font-weight:800;color:var(--pk-orange)}
.package-side-note{font-size:10.5px;color:var(--pk-muted);line-height:1.35}
@media(max-width:1280px){.package-results.has-side .package-layout{grid-template-columns:224px minmax(0,1fr)}.package-side{position:static;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.package-side-head,.package-side-note{grid-column:1/-1}}
@media(max-width:1100px){.package-results.has-side .package-layout{grid-template-columns:1fr}}
@media(max-width:560px){.package-side{grid-template-columns:1fr}}
/* Sasan 29.09.: alles 15 % größer (Leiste, Filter, Karten, Ausflüge) */
/* Kein Zoom (quetschte die Mitte): stattdessen breiter, damit die Kartenmitte (Flugzeilen) Platz hat */
@media(min-width:1101px){html body[data-kind=paket].has-flight-search .shell.flight-page-main{width:max(72vw,1200px);margin-left:max(24px,calc((100% - 1680px) / 2))}}
.package-results.has-side .package-layout{grid-template-columns:224px minmax(640px,1fr) 224px}
/* Leiste → Maske an Ort und Stelle (Sasan 29.09.): Leiste verschwindet beim Öffnen, Maske gleitet herunter */
html body[data-kind=paket].has-flight-search .search-area.is-open .package-summary{display:none}
@keyframes pk-mask-open{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
html body[data-kind=paket].has-flight-search .search-area.is-open .compact-search{animation:pk-mask-open .28s ease-out;margin:0 0 8px;padding:14px 16px 12px;border:1px solid #e4eaf2;border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(25,54,86,.06)}
html body form#kayak-package-search .package-mask-close{display:none;margin-left:14px;width:32px;height:32px;border:1px solid #e4eaf2;border-radius:50%;background:#fff;color:var(--ink);cursor:pointer;place-items:center}html body form#kayak-package-search .package-mask-close .hi{width:16px;height:16px}html body form#kayak-package-search .package-mask-close:hover{background:#f3f7fb}
html body[data-kind=paket].has-flight-search .search-area.is-open form#kayak-package-search .package-mask-close{display:grid}
@media(prefers-reduced-motion:reduce){html body[data-kind=paket].has-flight-search .search-area.is-open .compact-search{animation:none}}
/* Aufgeklappte Maske auf der Ergebnisseite schlanker (Sasan: „knallt ins Gesicht“) */
html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-field,html body[data-kind=paket].has-flight-search form#kayak-package-search .search-popover-trigger.hotel-field{min-height:56px;height:56px;padding:0 14px;gap:10px;border-radius:10px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-field-icon{width:20px;height:20px}html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-field-icon .hi{width:18px;height:18px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-field-text strong,html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-field-text .airport-entry{font-size:14px;font-weight:700}
html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-field-text small,html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-field.is-filled .hotel-field-text small{font-size:11.5px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .compact-route.package-route{gap:8px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .package-submit{min-height:56px;font-size:15px;gap:8px;border-radius:10px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .package-swap{border-radius:10px}html body[data-kind=paket].has-flight-search form#kayak-package-search .package-swap .hi{width:16px;height:16px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-form-top{margin:0 0 6px;font-size:13px}html body[data-kind=paket].has-flight-search form#kayak-package-search .package-check{font-size:13px}html body[data-kind=paket].has-flight-search form#kayak-package-search .package-check input{width:16px;height:16px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-form-tail{font-size:12.5px;margin-top:8px}html body[data-kind=paket].has-flight-search form#kayak-package-search .package-mode-btn{font-size:12.5px;padding:4px 10px}
html body[data-kind=paket].has-flight-search .search-area.is-open .compact-search{padding:10px 14px 10px}
html body[data-kind=paket].has-flight-search form#kayak-package-search .hotel-form-main{width:100%;max-width:none;margin:0}
html body[data-kind=paket].has-flight-search form#kayak-package-search .compact-route.package-route{width:100%}
/* Flugzeile: nur Code + Uhrzeit, voller Name per Mouse-Over (title) */
.package-leg-port{cursor:help}
/* Aufgeklappte Maske (Desktop): package.js hängt die Felder in zwei Reihen um – Reihe 1 wie die Leiste (Abflughafen | Reiseziel | Daten | Reisende | Knopf), Reihe 2 Hotel, Direktflüge, Flexibel, Reiseart, Partner, Schließen */
html body form#kayak-package-search.package-bar-mode .hotel-form-main{display:block;width:100%;max-width:none;margin:0;min-height:0}
html body form#kayak-package-search.package-bar-mode .package-bar-row{display:flex;align-items:stretch;gap:0}
html body form#kayak-package-search.package-bar-mode .package-bar-row>.hotel-field,html body form#kayak-package-search.package-bar-mode .package-bar-row .search-popover-trigger.hotel-field{flex:1 1 0;width:auto;min-width:0;min-height:56px;height:56px;margin:0;padding:6px 14px;border:0;border-right:1px solid #e4eaf2;border-radius:0;background:transparent;box-shadow:none;gap:10px}
html body form#kayak-package-search.package-bar-mode .package-bar-row>.search-popover{flex:1 1 0;display:flex;min-width:0;position:relative}html body form#kayak-package-search.package-bar-mode .package-bar-row>.search-dates{flex:1.3 1 0}html body form#kayak-package-search.package-bar-mode .package-bar-row>.search-popover>.hotel-field{width:100%}
html body form#kayak-package-search.package-bar-mode .package-bar-row>.search-travelers .hotel-field{border-right:0}
html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-icon{width:22px;height:22px;color:#0054d7}html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-icon .hi{width:22px;height:22px}
html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-text strong,html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-text .airport-entry{font-size:14px;font-weight:800}
html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-text small,html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field.is-filled .hotel-field-text small{font-size:11.5px;color:#5b6b80}
html body form#kayak-package-search.package-bar-mode .package-bar-row>.package-submit{flex:none;align-self:center;min-height:44px;height:44px;margin-left:12px;padding:0 20px;border-radius:10px;font-size:14px;gap:8px}
html body form#kayak-package-search.package-bar-mode .package-bar-row2{display:flex;align-items:center;gap:20px;margin-top:8px;padding-top:10px;border-top:1px solid #e4eaf2;font-size:13px}
html body form#kayak-package-search.package-bar-mode .package-bar-row2>.package-hotel-field{flex:0 0 280px;width:280px;min-height:48px;height:48px;padding:0 14px;border:1px solid #e4eaf2;border-radius:10px;gap:10px}
html body form#kayak-package-search.package-bar-mode .package-bar-row2>.package-check{width:auto;font-size:13px}html body form#kayak-package-search.package-bar-mode .package-bar-row2>.package-check input{width:16px;height:16px}
html body form#kayak-package-search.package-bar-mode .package-bar-row2>.package-mode{width:auto;display:inline-flex;align-items:center;gap:8px}html body form#kayak-package-search.package-bar-mode .package-bar-row2>.package-tail-sep{display:none}
html body form#kayak-package-search.package-bar-mode .package-bar-row2>.search-partner{margin-left:auto}
html body form#kayak-package-search.package-bar-mode .package-bar-row2>.package-mask-close{display:grid;flex:none;width:32px;height:32px;place-items:center;border:1px solid #e4eaf2;border-radius:50%;background:#fff;color:var(--ink);cursor:pointer}
html body[data-kind=paket].has-flight-search .search-area.is-open .compact-search{padding:8px 10px 10px}
html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-dates>span{height:auto;min-height:0;padding:0 8px 0 0;align-items:center;gap:10px}html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-dates>span+span{border-left:1px solid #e4eaf2;padding-left:12px}
html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-text{overflow:hidden}html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-text strong,html body form#kayak-package-search.package-bar-mode .package-bar-row .hotel-field-text .airport-entry{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* „Dein Flug“-Leiste + Pop-up „Flug ändern“ */
.package-flight-bar{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:10px 14px;border:1px solid var(--pk-line);border-radius:12px;background:#fff;font-size:13px}
.package-flight-bar-label{display:inline-flex;align-items:center;gap:6px;font-weight:800;color:var(--ink);white-space:nowrap}.package-flight-bar-label .hi{width:16px;height:16px;color:var(--pk-blue)}
.package-flight-bar-text{flex:1 1 auto;min-width:0;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.package-flight-change{flex:none;padding:7px 14px;border:1px solid var(--pk-blue);border-radius:999px;background:#fff;color:var(--pk-blue);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.package-flight-change:hover{background:var(--pk-blue-soft)}
.package-flight-picker{padding:24px 16px}.package-flight-picker .package-picker-box{width:min(900px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;border-radius:16px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.3);overflow:hidden}
.package-picker-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid #e4eaf2}.package-picker-head h3{margin:0;font-size:17px;font-weight:800}.package-picker-close{width:34px;height:34px;border:1px solid #e4eaf2;border-radius:50%;background:#fff;display:grid;place-items:center;cursor:pointer}.package-picker-close .hi{width:16px;height:16px}
.package-picker-list{overflow:auto;padding:10px 18px 18px;display:grid;gap:10px}
.package-picker-row{display:grid;grid-template-columns:150px minmax(0,1fr) 190px;gap:14px;align-items:center;padding:12px 14px;border:1px solid #e4eaf2;border-radius:12px}.package-picker-row.is-current{border-color:#0054d7;background:#f3f7ff}
.package-picker-airline{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.package-picker-airline img{width:28px;height:28px;object-fit:contain}
.package-picker-legs{display:grid;gap:4px;font-size:13px}.package-picker-leg b{font-weight:800}.package-picker-leg span{color:#5b6b80}.package-picker-leg strong{font-weight:800;cursor:help}.package-picker-leg small{color:#5b6b80}.package-picker-leg em{font-style:normal;font-weight:700;color:#5b6b80}.package-picker-leg em.is-direct{color:#08893f}.package-picker-leg sup{font-size:9px;color:#fd6318}
.package-picker-price{display:grid;justify-items:end;gap:2px;text-align:right}.package-picker-price strong{font-size:20px;font-weight:900}.package-picker-price small{font-size:11.5px;color:#5b6b80}
.package-picker-pick{margin-top:6px;padding:7px 16px;border:0;border-radius:9px;background:#fd6318;color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.package-picker-pick:disabled{background:#e4eaf2;color:#5b6b80;cursor:default}
@media(max-width:700px){.package-picker-row{grid-template-columns:1fr}.package-picker-price{justify-items:start;text-align:left}}
.package-tip[hidden]{display:none}
/* Anbieter-Logos unten rechts (Flug: Airline, Hotel: Buchungsseite) */
.package-partners{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:10px 0 0;padding-top:8px;border-top:1px dashed var(--pk-line)}
.package-partner{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--pk-muted);cursor:help}.package-partner .hi{width:13px;height:13px;color:#33475f;flex:none}.package-partner img{height:18px;max-width:80px;object-fit:contain}.package-partner b{font-weight:700}

/* Kopfzeile nach Sasans Mockup (hero/v2, 30.09.): Logo mit Claim, Navigation mit Icons, rechts Merkliste · DE | EUR · Konto */
html body .site-header.travel-site-header{border-bottom:1px solid #e4eaf2;background:#fff}
html body .travel-site-header .header-inner{display:flex;align-items:stretch;justify-content:flex-start;gap:0;min-height:88px;padding-block:0;flex-wrap:nowrap}
html body .travel-site-header .brand.brand-travel{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;margin-right:28px;text-decoration:none}
html body .travel-site-header .brand.brand-travel img{display:block;width:208px;height:auto}
html body .travel-site-header .brand-claim{font:600 12.5px/1 "Segoe UI",Arial,sans-serif;color:#0b2a55;padding-left:22px;white-space:nowrap}
html body .travel-site-header .tnav{display:flex;align-items:stretch;gap:2px;min-width:0;overflow-x:auto;scrollbar-width:none}html body .travel-site-header .tnav::-webkit-scrollbar{display:none}
html body .travel-site-header .tnav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:88px;padding:12px 14px;border-bottom:3px solid transparent;color:#0b2a55;text-decoration:none;font:600 14px/1.2 "Segoe UI",Arial,sans-serif;white-space:nowrap}
html body .travel-site-header .tnav a svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
html body .travel-site-header .tnav a:hover{background:#f3f7fb}
html body .travel-site-header .tnav a[aria-current=page]{background:#e8f0fd;border-bottom-color:#0054d7;color:#0054d7;border-radius:10px 10px 0 0}
html body .travel-site-header .tnav-tools{display:flex;align-items:center;gap:22px;margin-left:auto;padding-left:22px;border-left:1px solid #e4eaf2;color:#0b2a55;font:700 15px/1 "Segoe UI",Arial,sans-serif;white-space:nowrap}
html body .travel-site-header .tnav-tools a{display:grid;place-items:center;color:#0b2a55}html body .travel-site-header .tnav-tools svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
html body .travel-site-header .tnav-user{width:40px;height:40px;border-radius:50%;background:#f3f7fb}
html body .travel-site-header .tnav-locale{display:inline-flex;align-items:center;gap:8px}html body .travel-site-header .tnav-locale b{font-weight:400;color:#9fb0c3;margin:0 2px}
html body .travel-site-header .tnav-flag{width:22px;height:22px;border-radius:50%;background:linear-gradient(#000 0 33%,#dd0000 33% 66%,#ffce00 66%);box-shadow:0 0 0 1px #e4eaf2}
html body .travel-site-header .hotel-topnav,html body .travel-site-header .hotel-header-tools,html body .travel-site-header .travel-help{display:none}
@media(max-width:1280px){html body .travel-site-header .brand.brand-travel img{width:170px}html body .travel-site-header .tnav a{min-width:72px;padding:10px 8px;font-size:13px}html body .travel-site-header .tnav a svg{width:26px;height:26px}html body .travel-site-header .tnav-tools{gap:14px;padding-left:14px}}
@media(max-width:900px){html body .travel-site-header .header-inner{flex-wrap:wrap;min-height:0;padding-block:8px;gap:6px 0}html body .travel-site-header .brand.brand-travel{margin-right:auto}html body .travel-site-header .brand-claim{display:none}html body .travel-site-header .tnav{order:3;width:100%;justify-content:flex-start}html body .travel-site-header .tnav-tools{border-left:0;padding-left:0}}
@media(max-width:560px){html body .travel-site-header .tnav a{min-width:64px;padding:8px 6px;font-size:11.5px}html body .travel-site-header .tnav a svg{width:22px;height:22px}html body .travel-site-header .brand.brand-travel img{width:140px}html body .travel-site-header .tnav-locale{display:none}}
html body .travel-site-header .brand-claim{display:none}html body .travel-site-header .brand.brand-travel{gap:0}

/* Kopfzeile auf iPad/iPhone (Mobile-Audit 29.09., Sasan) – identisch zu home-flight.css */
@media(max-width:1100px){
  html body .travel-site-header .header-inner{flex-wrap:wrap;min-height:0;padding-block:6px 0;gap:2px 0}
  html body .travel-site-header .brand.brand-travel{margin-right:auto}html body .travel-site-header .brand-claim{display:none}
  html body .travel-site-header .brand.brand-travel img{width:150px}
  html body .travel-site-header .tnav{order:3;width:100%;justify-content:flex-start;gap:0;overflow:visible}
  html body .travel-site-header .tnav a{flex:1 1 0;min-width:0;padding:6px 4px 8px;font-size:12.5px;gap:4px}
  html body .travel-site-header .tnav a svg{width:24px;height:24px}
  html body .travel-site-header .tnav-tools{border-left:0;padding-left:0;align-self:center;gap:14px}
}
@media(max-width:560px){
  html body .travel-site-header .header-inner{padding-block:4px 0}
  html body .travel-site-header .brand.brand-travel img{width:124px}
  html body .travel-site-header .tnav{flex-wrap:wrap}
  html body .travel-site-header .tnav a{flex:0 0 25%;padding:5px 2px 6px;font-size:11px;gap:3px;border-bottom-width:2px}
  html body .travel-site-header .tnav a svg{width:20px;height:20px}
  html body .travel-site-header .tnav a[aria-current=page]{border-radius:8px 8px 0 0}
  html body .travel-site-header .tnav-tools{gap:12px}html body .travel-site-header .tnav-user{width:34px;height:34px}html body .travel-site-header .tnav-tools svg{width:22px;height:22px}
}

/* Mobile/Tablet-Audit 29.09. (Sasan: iPhone, iPad Mini, iPad Pro) – Ergebnisseiten: kein horizontaler Überlauf (Sortier-Tooltip war 824 px breit → Seite breiter als der Bildschirm, Safari zoomte alles klein), Maske in einer Zeile, Filter kompakt, Karte auf dem Tablet sichtbar */
.hotel-sort-info::after{white-space:normal}
@media(max-width:1100px){
  html body main.page-travel-overview{overflow-x:clip}
  html body .package-results .package-layout,html body .package-results.has-side .package-layout{grid-template-columns:minmax(0,1fr)}
  html body .package-main{min-width:0}
  html body .package-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}html body .package-tabs::-webkit-scrollbar{display:none}
  html body .package-topbar{flex-wrap:wrap}
  html body .package-flight-bar{flex-wrap:wrap}html body .package-flight-bar-text{flex:1 1 220px;white-space:normal}
  html body .package-summary{flex-wrap:wrap;padding:6px 8px}html body .package-summary-cell{flex:1 1 30%;padding:6px 10px}html body .package-summary-change{margin-left:auto;min-height:40px;padding:0 16px}
  html body .hotel-list-bar{flex-wrap:wrap;gap:6px 12px}html body .hotel-pricebox select{max-width:100%}
}
@media(min-width:561px) and (max-width:1100px){
  html body.has-flight-search .compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route{display:flex;flex-wrap:nowrap;align-items:stretch;gap:8px;width:100%;max-width:none;padding:8px}
  html body.has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.hotel-destination{flex:1 1 180px;width:auto;min-width:0;grid-column:auto;grid-row:auto}
  html body.has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-dates,html body.has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-travelers{flex:0 0 auto;width:auto;min-width:0;grid-column:auto;grid-row:auto}
  html body.has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-button{flex:0 0 auto;width:auto;min-width:0;padding:0 18px;grid-column:auto;grid-row:auto}
  /* Karte auf dem Tablet: über der Liste, klebt oben (vorher stand sie unsichtbar unter allen Karten – "Karte anzeigen klappt nicht") */
  html body .hotel-layout.has-map{display:flex;flex-direction:column;gap:12px}
  html body .hotel-layout.has-map .hotel-map-column{order:-1;position:sticky;top:8px;z-index:20;width:100%;margin:0}
  html body .hotel-layout.has-map .hotel-map{height:46vh;min-height:300px;border-radius:14px;box-shadow:0 6px 20px rgba(25,54,86,.18)}
  html body.has-flight-search .hotel-search .hotel-field-text strong,html body.has-flight-search .hotel-search .hotel-field-text small,html body.has-flight-search .hotel-search .search-popover-trigger strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body.has-flight-search .compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route{flex-wrap:wrap}
  html body.has-flight-search .compact-search.hotel-search .compact-route.car-route>.hotel-destination{flex:1 1 200px}
  html body.has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates{flex:1 1 260px}
}
/* Mietwagen-Ergebnisseite (Sasan 29.09.: "Wirrwarr" über der Maske): Anmietstation links und KAYAK-Partner/Automatik rechts in EINER Zeile unter der Maske, bündig mit deren Kanten; Karte-Schalter auf Höhe der ersten Filterzeile */
@media(min-width:561px){
  html body[data-kind=mietwagen].has-flight-search .hotel-search .hotel-form-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 20px;align-items:center}
  html body[data-kind=mietwagen].has-flight-search .hotel-search .hotel-form-main>.compact-route{grid-column:1/-1;grid-row:1}
  html body[data-kind=mietwagen].has-flight-search .hotel-search .hotel-form-top{grid-row:2;grid-column:1;min-height:0;margin:0 0 6px;padding-left:6px}
  html body[data-kind=mietwagen].has-flight-search .hotel-search .hotel-form-tail{grid-row:2;grid-column:2;justify-content:flex-end;gap:22px;min-height:0;margin:0 0 6px;padding-right:6px}
  html body[data-kind=mietwagen].has-flight-search .hotel-search .car-options{margin:0;gap:6px 18px}
  html body .hotel-chipbar{align-items:flex-start}html body .hotel-map-switch{min-height:38px;flex:none}
}
/* Mietwagen-Ergebnisseite auf iPad/iPad Mini (561–1366 px) nach Sasans verbindlichem Mockup vom 29.09.: eine weiße Leiste – Anmietstation | Abholung (Datum · Uhrzeit) | Rückgabe (Datum · Uhrzeit) | Alter des Fahrers | oranger Knopf „Mietwagen suchen“; kein Voucher. Das Alter wandert per JS (make_car_js.py, placeAge) in die Leiste. */
@media(min-width:561px) and (max-width:1366px){
  html body[data-kind=mietwagen].has-flight-search .search-area:has(.hotel-search){margin-left:0;min-height:0;padding-left:0}
  html body[data-kind=mietwagen].has-flight-search .result-trip-ticket{display:none}
  html body[data-kind=mietwagen].has-flight-search .hotel-search .hotel-form-main{width:100%;max-width:1320px;margin:0 auto}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search.car-search:not(.is-multi) .compact-route.car-route{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;width:100%;max-width:none;padding:6px;border-radius:16px;background:#fff;box-shadow:0 4px 18px rgba(25,54,86,.12)}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.hotel-destination{flex:1 1 200px;width:auto;min-width:0;margin-right:6px;border-radius:12px;background:#f3f7fb;grid-column:auto;grid-row:auto}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.hotel-destination .airport-field-label{display:block;font:400 12px/1.2 "Segoe UI",Arial,sans-serif;color:#5b6b80}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.hotel-destination .hotel-field-text>small{display:none}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates{flex:1 1 360px;width:auto;min-width:0;grid-column:auto;grid-row:auto}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates .search-popover-trigger{display:flex;align-items:stretch;width:100%;min-height:100%;gap:0;padding:0;background:transparent}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates .search-popover-trigger>span{flex:1 1 50%;display:flex;align-items:center;gap:10px;min-width:0;padding:6px 14px;border-left:1px solid #e4eaf2}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates .hotel-field-text{display:flex;flex-direction:column-reverse;gap:2px;min-width:0}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates .hotel-field-text small{font-size:12px;color:#5b6b80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates .hotel-field-text strong{font-size:15px;white-space:nowrap}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.car-option{display:flex;flex-direction:column;justify-content:center;gap:2px;flex:0 0 auto;padding:6px 16px;border-left:1px solid #e4eaf2;font:400 12px/1.2 "Segoe UI",Arial,sans-serif;color:#5b6b80}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.car-option select{border:0;background:transparent;padding:0;font:800 15px/1.2 "Segoe UI",Arial,sans-serif;color:#0c1f44;cursor:pointer}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-button{flex:0 0 auto;width:auto;min-width:0;margin-left:10px;padding:0 24px;border-radius:12px;background:#fd6318;color:#fff;font:800 15px/1 "Segoe UI",Arial,sans-serif;grid-column:auto;grid-row:auto}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-button:hover{background:#e4560f}
  html body[data-kind=mietwagen].has-flight-search .hotel-search .hotel-form-top .car-options>label.car-option:nth-of-type(2){display:none}
}
@media(max-width:900px){
  html body .hotel-layout.has-map .hotel-card-top{grid-template-columns:170px minmax(0,1fr);gap:0 18px}
  html body .hotel-layout.has-map .car-card .hotel-card-top{grid-template-columns:1fr}
}
/* Handy: nur "Alle Filter" (sticky), alle anderen Filter sitzen im Dialog; Mietwagen-Karte einspaltig lesbar; Paket-Zusammenfassung 2 × 2 */
@media(max-width:560px){
  html body .hotel-chips-row>.hotel-chip-wrap{display:none}
  html body .hotel-chips-row{overflow:visible;flex-wrap:wrap}
  html body .hotel-chip-btn.hotel-chip-all{height:36px;padding:0 14px;font-size:13px}
  html body .package-summary-cell{flex:1 1 45%}
  html body .car-card .hotel-card-top{grid-template-columns:minmax(0,1fr);gap:0;padding:0 10px 10px}
  html body .car-card .hotel-card-media{grid-row:auto;grid-column:1;display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:10px;min-height:0;padding-top:10px}
  html body .car-card .car-card-image{width:120px;height:80px;min-height:0;border-radius:10px;padding:4px}
  html body .car-card .hotel-fav{position:absolute;top:10px;right:10px;margin:0}
  html body .car-card .car-agency{justify-self:start}
  html body .car-card .hotel-card-main{grid-column:1;padding:8px 0 0}
  html body .car-card .hotel-card-deal{grid-column:1;grid-row:auto;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"prov prov" "price button" "unit button" "pay pay";margin-top:8px}
  html body .car-card .car-deal-provider{grid-area:prov;justify-self:start;margin-bottom:6px}
  html body .car-card .car-deal-payment{grid-area:pay;font-size:11.5px}
  html body .car-card .hotel-deal-price{grid-area:price}html body .car-card .hotel-deal-unit{grid-area:unit}html body .car-card .hotel-deal-button{grid-area:button}
  html body .car-card .car-specs{gap:6px 12px}
}
/* Flug + Hotel auf iPad / iPad Mini (561–1100 px), Sasan 29.09. mittags: "total kaputt, zu viel Abstand überall, Preis nicht zu sehen" → alles kompakt: Suchleiste in EINER Zeile, Filter/Reiter/Dein-Flug flach, Karte dreispaltig mit sichtbarer Preisspalte rechts, Flugzeilen einzeilig */
@media(min-width:561px) and (max-width:1100px){
  html body[data-kind=paket].has-flight-search .shell.flight-page-main{margin:0 12px;padding-top:6px}
  html body[data-kind=paket].has-flight-search .package-results{padding-top:4px}
  html body .package-summary{flex-wrap:nowrap;padding:4px 6px;margin-bottom:6px}
  html body .package-summary-cell{flex:1 1 0;gap:6px;padding:4px 8px}
  html body .package-summary-cell .hi{width:16px;height:16px}
  html body .package-summary-text small{font-size:10.5px}html body .package-summary-text strong{font-size:12.5px}
  html body .package-summary-change{margin-left:6px;min-height:36px;padding:0 12px;font-size:13px;gap:6px}
  html body .package-layout{gap:6px}
  html body .package-filters{padding:6px 12px}html body .package-filters-head h3{font-size:14px}html body .package-filters-head{min-height:0}
  html body .package-topbar{margin:0 0 6px;gap:8px}html body .package-topbar .hotel-results-title{font-size:15px}
  html body .package-sortbox{font-size:12px}html body .package-sortbox select{padding:5px 8px;font-size:12px;min-width:0}
  html body .package-tabs{gap:6px;margin:0 0 6px}html body .package-tab{min-height:32px;padding:0 12px;font-size:12px}html body .package-tab .hi{width:14px;height:14px}
  html body .package-flight-bar{flex-wrap:nowrap;margin:0 0 8px;padding:6px 12px;gap:8px;font-size:12.5px}html body .package-flight-bar-text{flex:1 1 auto;white-space:nowrap}html body .package-flight-change{padding:5px 12px;font-size:12px}
  html body .package-list{gap:8px}
  /* Karte: Bild | Hoteldaten | Preis – dreispaltig, damit der Preis sofort sichtbar ist */
  html body .package-results .hotel-card.package-card{grid-template-columns:124px minmax(0,1fr) 158px;overflow:visible}
  html body .package-media{margin:8px 0 8px 8px}html body .package-media .hotel-card-image{height:124px;border-radius:10px}
  html body .package-media .hotel-image-nav{width:22px;height:22px}html body .package-media .hotel-image-nav.is-prev{left:4px}html body .package-media .hotel-image-nav.is-next{right:4px}html body .package-media .hotel-image-nav .hi{width:13px;height:13px}
  html body .package-media .hotel-image-count{right:5px;bottom:5px;padding:1px 6px;font-size:10px}
  html body .package-tip{left:5px;top:5px;padding:2px 7px;font-size:10px}html body .package-tip .hi{width:11px;height:11px}
  html body .package-body{gap:3px;padding:8px 12px 8px}
  html body .package-body .hotel-card-title{font-size:14.5px;gap:2px 6px}html body .package-body .hotel-card-title .hotel-stars{font-size:11px}
  html body .package-body .hotel-card-place{font-size:11.5px}html body .package-body .hotel-card-place .hi{width:12px;height:12px}
  html body .package-body .hotel-card-rating{font-size:11.5px;gap:5px}html body .package-body .hotel-score{min-width:30px;height:20px;font-size:12px}
  html body .package-chips{gap:4px}html body .package-chip{padding:2px 7px;font-size:11px}html body .package-chip .hi{width:11px;height:11px}
  html body .package-amenities{gap:2px 10px;font-size:11px}html body .package-amenities .hi{width:13px;height:13px}
  html body .package-legs{gap:2px;margin:3px 0 0;padding:5px 0 0}
  html body .package-leg{display:flex;align-items:center;gap:10px;min-width:0}html body .package-legs .package-leg:first-child{margin:0;padding:0;border:0}
  html body .package-leg-head{flex:0 0 auto;white-space:nowrap;margin:0;font-size:11.5px;gap:4px}html body .package-leg-head .hi{width:12px;height:12px}
  html body .package-leg-row{flex:1 1 auto;min-width:0;grid-template-columns:auto minmax(70px,1fr) auto;gap:8px}
  html body .package-leg-port{font-size:11px}html body .package-leg-port b{font-size:12.5px}
  html body .package-leg-mid{min-width:60px;font-size:10.5px;gap:0}
  html body .package-foot{margin:2px 0 0;padding-top:5px;font-size:11px;gap:2px 0}html body .package-foot span+span::before{margin:0 7px}html body .package-foot .hi{width:12px;height:12px}
  html body .package-results .package-price{grid-column:auto;display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;gap:3px;padding:8px 10px;border-top:0;border-left:1px solid var(--pk-line);border-radius:0 14px 14px 0}
  html body .package-price-top{order:0;width:auto;min-height:22px}html body .package-price-top .hotel-fav{width:22px;height:22px}html body .package-price-top .hotel-fav .hi{width:17px;height:17px}
  html body .package-badge{padding:2px 7px;font-size:10.5px}
  html body .package-price-main{margin:2px 0 0;gap:4px}html body .package-price-main strong{font-size:21px}html body .package-price-main span{font-size:11px}
  html body .package-price-total{font-size:11px}
  html body .package-results .package-book{min-height:34px;margin-top:4px;padding:0 8px;font-size:12.5px;gap:5px}html body .package-results .package-book .hi{width:13px;height:13px}
  html body .package-checks{width:auto;gap:2px;margin:5px 0 0;font-size:10.5px}html body .package-checks .hi{width:12px;height:12px}
  html body .package-partners{margin:6px 0 0;padding-top:5px;gap:4px 8px}html body .package-partner img{height:14px;max-width:60px}
  html body .package-results .package-book-panel{right:8px;left:auto;top:auto;bottom:calc(100% - 8px);width:260px}
  html body .package-results .hotel-page-more{margin-top:10px}
}
/* iPad Mini hochkant (561–800 px): Preisspalte etwas schmaler, Bild kleiner */
@media(min-width:561px) and (max-width:800px){
  html body .package-results .hotel-card.package-card{grid-template-columns:104px minmax(0,1fr) 146px}
  html body .package-media .hotel-card-image{height:112px}
  html body .package-summary-cell .hi{display:none}
}
/* Filter-Chips wie KAYAK auf iPad/iPhone (Sasan 29.09. mittags): Chips in EINER Zeile, mit dem Finger schiebbar; Paketseite bekommt dieselbe Leiste (package.js, setupPackageChips), jeder Chip öffnet nur seine Gruppe mit "Fertig", "Alle Filter" = Dialog mit festem Knopf "Angebote anzeigen" */
.pk-chips{display:none}
@media(max-width:1100px){
  html body .pk-chips{display:flex;position:relative;align-items:center;gap:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 0 8px;padding:0 0 2px}html body .pk-chips::-webkit-scrollbar{display:none}
  html body .pk-chip{flex:none;display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 11px;border:1px solid var(--pk-line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:12.5px;font-weight:650;white-space:nowrap;cursor:pointer}
  html body .pk-chip .hi{width:14px;height:14px;color:#33475f}html body .pk-chip[aria-expanded=true]{border-color:var(--pk-blue)}html body .pk-chip.is-on{border-color:var(--pk-blue);background:var(--pk-blue-soft);color:#0a3f9a}
  html body .pk-chip-panel{position:fixed;left:auto;top:auto;z-index:900;width:min(340px,calc(100vw - 32px));max-height:min(480px,70vh);overflow:auto;margin-top:40px;padding:12px 14px 10px;border:1px solid var(--pk-line);border-radius:12px;background:#fff;box-shadow:0 10px 28px rgba(18,35,63,.16)}
  html body .pk-panel-title{margin:0 0 8px;font-size:13px;font-weight:800;color:var(--ink)}html body .pk-panel-body .pf-body{display:grid;gap:2px}
  html body .pk-panel-foot{display:flex;justify-content:flex-end;margin-top:10px;padding-top:8px;border-top:1px solid var(--pk-line)}html body .pk-panel-done{min-height:36px;padding:0 18px;border:0;border-radius:9px;background:var(--pk-blue);color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
  html body .package-results .package-filters:not(.is-sheet){display:none}
  html body .package-filters.is-sheet{position:fixed;inset:0;z-index:1200;display:flex;flex-direction:column;margin:0;padding:0;border:0;border-radius:0;background:#fff;overflow:hidden}
  html body .package-filters.is-sheet .package-filters-head{display:none}
  html body .pk-sheet-head{flex:none;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--pk-line)}html body .pk-sheet-head h3{margin:0;font-size:17px;font-weight:800;color:var(--ink)}
  html body .pk-sheet-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--pk-line);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer}html body .pk-sheet-close .hi{width:16px;height:16px}
  html body .package-filters.is-sheet .pf-group{display:block;flex:none;margin:0 16px;padding:8px 0;border-bottom:1px solid var(--pk-line)}html body .package-filters.is-sheet .pf-group summary{font-size:14px}html body .package-filters.is-sheet .pf-body{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
  html body .package-filters.is-sheet>.pf-group:last-of-type{border-bottom:0;padding-bottom:16px}
  html body .package-filters.is-sheet{padding-bottom:0}html body .package-filters.is-sheet .pf-group:first-of-type{margin-top:4px}
  html body .package-filters.is-sheet{overflow-y:auto}html body .pk-sheet-head{position:sticky;top:0;z-index:2;background:#fff}
  html body .pk-sheet-foot{position:sticky;bottom:0;z-index:2;display:flex;gap:10px;margin-top:auto;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--pk-line);background:#fff}
  html body .pk-sheet-reset{flex:none;min-height:44px;padding:0 16px;border:1px solid var(--pk-line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:14px;font-weight:700;cursor:pointer}
  html body .pk-sheet-show{flex:1 1 auto;min-height:44px;border:0;border-radius:10px;background:var(--pk-orange);color:#fff;font:inherit;font-size:15px;font-weight:800;cursor:pointer}
}
/* Hotel-Ergebnisseite auf iPad/iPad Mini (561–1100 px), Sasan 29.09. mittags ("Preise links und oben rechts, viel zu viel Abstand"): Karte dreispaltig wie KAYAK – Bild | Hoteldaten | Preisspalte mit Anbieter, Preis, Knopf; Angebotsliste erst nach Tipp auf "N Angebote"; Filter-Chips in EINER Zeile, schiebbar */
@media(min-width:561px) and (max-width:1100px){
  html body .hotel-chipbar{align-items:center;gap:10px;margin:0 0 8px}
  html body .hotel-chips-row{flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;padding:2px 0}html body .hotel-chips-row::-webkit-scrollbar{display:none}
  html body .hotel-chip-btn,html body .hotel-chip-wrap{flex:none}html body .hotel-chip-btn{height:34px;padding:0 11px;font-size:12.5px}
  html body .hotel-chip-panel{position:fixed;left:auto;top:auto;margin-top:6px;width:min(320px,calc(100vw - 32px))}
  html body .hotel-map-switch{flex:none}
  html body .hotel-list-bar{margin-bottom:8px}
  html body .hotel-layout .hotel-card-top,html body .hotel-layout.has-map .hotel-card-top{grid-template-columns:118px minmax(0,1fr) 150px;gap:0 12px;padding:10px 12px 10px 10px}
  html body .hotel-card-media{grid-row:auto;align-self:start;min-height:0}html body .hotel-card-image{height:118px;min-height:0;border-radius:10px}
  html body .hotel-card-main{padding:0;gap:4px}html body .hotel-card-title{font-size:15px;line-height:1.25}html body .hotel-card-place{font-size:12px}
  html body .hotel-card-deal{grid-column:3;grid-row:auto;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:2px;margin:0;padding:0 0 0 12px;border:0;border-left:1px solid var(--hotel-line);text-align:right;align-self:stretch}
  html body .hotel-deal-badge{margin:0 0 6px;padding:3px 7px;max-width:150px;font-size:10.5px;text-align:right}
  html body .hotel-deal-ab{font-size:11px}html body .hotel-deal-price{font-size:22px}html body .hotel-deal-unit{font-size:10.5px}
  html body .hotel-deal-button{width:100%;margin:6px 0 0;min-height:38px;padding:0 10px;font-size:13px;justify-content:center}
  html body .hotel-deal-more{display:inline-block;margin-top:6px;padding:0;border:0;background:none;color:var(--hotel-blue);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
  html body .hotel-card-providers{display:none;margin:0 10px 10px}html body .hotel-card.is-offers-open .hotel-card-providers{display:flex;flex-wrap:wrap}html body .hotel-card.is-offers-open .hotel-provider-cell{flex:1 1 45%;max-width:none}
}
/* Filter übernehmen (Sasan 29.09.: "es gibt keinen Übernehmen-Button", "null Prozent Touch"): Chip-Menü mit "Fertig", Dialog "Alle Filter" mit fester Leiste Zurücksetzen | N Hotels anzeigen, kompaktes Raster (2 Spalten auf dem iPad, 3 auf dem Desktop), Regler-Daumen groß genug für den Finger */
.hotel-chip-done{display:block;width:100%;margin:10px 0 0;min-height:38px;border:0;border-radius:9px;background:var(--hotel-blue);color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.hotel-chip-panel.is-inline .hotel-chip-done{display:none}
.hotel-all-filters-panel{display:flex;flex-direction:column;padding:0}
.hotel-all-filters-head{position:sticky;top:0;z-index:2;margin:0;padding:12px 20px;background:#fff;border-bottom:1px solid var(--hotel-line)}.hotel-all-filters-head button{width:36px;height:36px;border:1px solid var(--hotel-line)!important;border-radius:50%;line-height:1}
.hotel-all-filters-grid{padding:12px 20px 16px;gap:10px 24px;grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-all-filters-grid h4{display:none}.hotel-all-filters-grid section{padding:6px 0 8px;border-bottom:1px solid var(--hotel-line)}
.hotel-all-filters-grid .hotel-chip-panel.is-inline{position:static;width:auto;max-height:none;overflow:visible;padding:0;border:0;box-shadow:none}
.hotel-all-filters-grid .hotel-panel-title{margin:0 0 4px;font-size:13px}.hotel-all-filters-grid label{min-height:28px;padding:2px 0;font-size:13px}
.hotel-all-filters-foot{position:sticky;bottom:0;z-index:2;display:flex;gap:10px;margin-top:auto;padding:10px 20px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--hotel-line);background:#fff}
.hotel-all-filters-reset{flex:none;min-height:44px;padding:0 16px;border:1px solid var(--hotel-line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.hotel-all-filters-show{flex:1 1 auto;min-height:44px;border:0;border-radius:10px;background:var(--hotel-orange);color:#fff;font:inherit;font-size:15px;font-weight:800;cursor:pointer}
@media(hover:none){.hotel-range{height:28px}.hotel-range::before{top:13px}.hotel-range input[type=range]{height:28px}.hotel-range input[type=range]::-webkit-slider-thumb{width:22px;height:22px}}
@media(max-width:1100px){.hotel-all-filters-panel{width:min(760px,calc(100% - 24px));max-height:calc(100vh - 24px);margin:12px auto}.hotel-all-filters-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px;padding:8px 16px 12px}}
@media(max-width:560px){.hotel-all-filters{padding:0}.hotel-all-filters-panel{width:100%;max-height:100dvh;margin:0;border-radius:0}.hotel-all-filters-grid{grid-template-columns:1fr}}
/* Anbieterzeile (Sasan 29.09.): alle Anbieter in EINER Reihe, Leistungen als Icons statt Text (Storno, Frühstück, WLAN, Parken), auf iPad/iPhone 3 Anbieter + "Alle N Angebote", Herz auf dem Bild kleiner */
.hotel-provider-perks{display:flex;flex-wrap:wrap;gap:3px 8px;min-height:16px}
.hotel-perk{display:inline-flex;align-items:center;gap:3px;font-style:normal;font-size:11px;font-weight:700;color:var(--hotel-muted)}.hotel-perk .hi{width:13px;height:13px}.hotel-perk.is-green{color:var(--hotel-green)}
@media(min-width:1101px){.hotel-provider-more[data-count="4"]{display:none}}
@media(max-width:1100px){
  html body .hotel-card-providers,html body .hotel-card.is-offers-open .hotel-card-providers{display:flex;flex-wrap:nowrap;align-items:stretch;margin:0 10px 10px}
  html body .hotel-provider-cell{flex:1 1 0;min-width:0;padding:6px 8px;gap:3px}html body .hotel-provider-cell:nth-child(n+4){display:none}
  html body .hotel-card.is-expanded .hotel-card-providers{flex-wrap:wrap}html body .hotel-card.is-expanded .hotel-provider-cell,html body .hotel-card.is-expanded .hotel-provider-cell:nth-child(n+4){display:grid;flex:0 0 33.333%;max-width:33.333%;border-bottom:1px solid var(--hotel-line)}
  html body .hotel-provider-note{display:none}
  html body .hotel-provider-name{min-height:16px;font-size:11.5px}html body .hotel-provider-name img{max-width:70px;height:14px}html body .hotel-provider-name small{display:none}
  html body .hotel-provider-price{font-size:13px;gap:4px}html body .hotel-provider-price i{width:7px;height:7px}
  html body .hotel-perk b{display:none}html body .hotel-perk .hi{width:15px;height:15px}html body .hotel-provider-perks{gap:2px 6px}
  html body .hotel-provider-more{flex:0 0 auto;margin-left:auto;padding:4px 6px}html body .hotel-provider-more button{height:auto;min-height:30px;padding:0 8px;font-size:11.5px;white-space:normal;text-align:center;line-height:1.2}
  html body .hotel-card.is-expanded .hotel-provider-more{flex-basis:100%;border-left:0}
  html body .hotel-deal-more{display:none}
  html body .hotel-card-media .hotel-fav{width:28px;height:28px;top:6px;right:6px;margin:0}html body .hotel-card-media .hotel-fav .hi{width:16px;height:16px}
}
@media(max-width:560px){
  html body .hotel-provider-cell{padding:5px 5px}html body .hotel-provider-name img{max-width:56px;height:12px}html body .hotel-provider-price{font-size:12px}
  html body .hotel-provider-more button{font-size:11px;padding:0 6px}
}
/* Mietwagen-Leiste iPad (29.09. mittags): das Alter-Feld erbte width:100 % und drängte Ort/Datum aus der Leiste */
@media(min-width:561px) and (max-width:1366px){
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.car-option{width:auto!important;max-width:none;flex:0 0 auto}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.hotel-destination{min-width:150px}
}
@media(min-width:561px) and (max-width:900px){
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-button{padding:0 14px;margin-left:6px;font-size:14px}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.car-option{padding:6px 10px}
  html body[data-kind=mietwagen].has-flight-search .compact-search.hotel-search .compact-route.car-route>.search-dates .search-popover-trigger>span{padding:6px 8px;gap:6px}
}
/* Flug + Hotel beim Laden (Sasan 29.09.): unter der Suchleiste nur Fortschritt + graue Platzhalter, solange noch kein Paket da ist – keine Filter, Reiter, Sortierung oder Hinweise */
@keyframes pkPulse{0%,100%{opacity:.55}50%{opacity:1}}
.package-results[data-search-state=loading]:not(:has(.package-card)) .pk-chips,.package-results[data-search-state=loading]:not(:has(.package-card)) .package-filters,.package-results[data-search-state=loading]:not(:has(.package-card)) .package-topbar,.package-results[data-search-state=loading]:not(:has(.package-card)) .package-tabs,.package-results[data-search-state=loading]:not(:has(.package-card)) .package-flight-bar,.package-results[data-search-state=loading]:not(:has(.package-card)) .notice,.package-results[data-search-state=loading]:not(:has(.package-card)) [data-hotel-local-empty],.package-results[data-search-state=loading]:not(:has(.package-card)) .package-side,.package-results[data-search-state=loading]:not(:has(.package-card)) .hotel-list:empty{display:none!important}
.package-results[data-search-state=loading]:not(:has(.package-card)) .package-main::after{content:"";display:block;height:414px;margin-top:6px;border-radius:14px;background:linear-gradient(#e9eef5,#e9eef5) 0 0/100% 128px no-repeat,linear-gradient(#e9eef5,#e9eef5) 0 143px/100% 128px no-repeat,linear-gradient(#e9eef5,#e9eef5) 0 286px/100% 128px no-repeat;animation:pkPulse 1.4s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.package-results[data-search-state=loading]:not(:has(.package-card)) .package-main::after{animation:none}}
/* Paketkarte (Sasan 29.09. mittags): Ausstattung und Zimmer/Leistungen nur als Icons, daneben "i" → kleines HTML-Pop-up mit den Texten */
.package-amenities,.package-foot{position:relative;align-items:center}
.package-amenities>span,.package-foot>span{font-size:0;gap:0;line-height:0}.package-amenities>span .hi,.package-foot>span .hi{width:18px;height:18px}
html body .package-foot>span+span::before{display:none}html body .package-amenities,html body .package-foot{gap:4px 10px}
.pk-info{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:2px;padding:0;border:1.5px solid var(--pk-blue);border-radius:50%;background:#fff;color:var(--pk-blue);font:italic 800 12px/1 Georgia,"Times New Roman",serif;cursor:pointer}.pk-info[aria-expanded=true]{background:var(--pk-blue);color:#fff}
.pk-info-pop{position:absolute;left:0;top:calc(100% + 6px);z-index:40;width:min(340px,100%);padding:10px 12px;border:1px solid var(--pk-line);border-radius:10px;background:#fff;box-shadow:0 10px 26px rgba(18,35,63,.18);font-size:12.5px;color:var(--ink);text-align:left}
.pk-info-title{margin:0 0 6px;font-size:12px;font-weight:800;color:var(--pk-muted);text-transform:uppercase;letter-spacing:.03em}
.pk-info-pop ul{margin:0;padding:0;list-style:none;display:grid;gap:5px}.pk-info-pop li{display:flex;align-items:center;gap:7px;min-width:0}.pk-info-pop li>span{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;line-height:1.3;color:var(--ink)}.pk-info-pop li .hi{width:15px;height:15px;color:#33475f;flex:none}
/* Foto-/Detail-Overlay (Sasan 29.09. mittags, iPad Flug + Hotel): Spalte war 4320 px breit (Thumbnail-Leiste als max-content) → Panel lief nach rechts aus dem Bild. Jetzt ~60 % der Seite, mittig, Rest sichtbar */
html body .hotel-photos{grid-template-columns:minmax(0,1fr);justify-items:center}
html body .hotel-photos-panel{width:min(1180px,max(60vw,560px),calc(100vw - 32px));max-width:calc(100vw - 32px);min-width:0;justify-self:center}
html body .hotel-photos-panel>*{min-width:0;max-width:100%}
@media(max-width:560px){html body .hotel-photos-panel{width:100%;max-width:100%}}
/* Flug + Hotel iPad, Feinschliff (Sasan 29.09.: "Schriften kleben aneinander, zu klein"): mehr Luft zwischen den Zeilen, Schrift größer, Flugzeile schmaler */
@media(min-width:561px) and (max-width:1100px){
  html body .package-body{gap:6px;padding:10px 14px 10px}
  html body .package-body .hotel-card-title{font-size:16.5px;gap:3px 8px}html body .package-body .hotel-card-title .hotel-stars{font-size:12px}
  html body .package-body .hotel-card-place{font-size:13px}html body .package-body .hotel-card-place .hi{width:14px;height:14px}
  html body .package-body .hotel-card-rating{font-size:13px;gap:6px}html body .package-body .hotel-score{min-width:34px;height:22px;font-size:13px}
  html body .package-chips{gap:6px;margin-top:2px}html body .package-chip{padding:3px 9px;font-size:12px}html body .package-chip .hi{width:13px;height:13px}
  html body .package-amenities{margin-top:2px}html body .package-amenities>span .hi{width:19px;height:19px}
  html body .package-legs{gap:5px;margin:6px 0 0;padding:8px 0 0}
  html body .package-leg-head{font-size:12.5px;gap:5px}html body .package-leg-head .hi{width:14px;height:14px}
  html body .package-leg-row{gap:10px;grid-template-columns:auto minmax(56px,150px) auto;justify-content:start}
  html body .package-leg-port{font-size:12px}html body .package-leg-port b{font-size:14px}
  html body .package-leg-mid{min-width:56px;font-size:11px}
  html body .package-foot{margin-top:4px;padding-top:8px}
  html body .package-price-main strong{font-size:23px}html body .package-price-main span{font-size:12px}html body .package-price-total{font-size:12px}
  html body .package-checks{font-size:11.5px;gap:3px}
}
/* Ortsvorschläge im KAYAK-Stil: Gruppenüberschrift, Icon-Kachel, kurzer Name + Code, Unterzeile */
.hotel-search .airport-group-head{margin:10px 8px 4px;font-size:15px;font-weight:800;color:var(--ink,#12345a)}
.hotel-search .airport-choice.hotel-choice{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:8px 8px;min-height:64px}
.hotel-search .hotel-choice .hotel-choice-icon{width:48px;height:48px;border-radius:10px;background:#eef2f6;color:#33475f}.hotel-search .hotel-choice .hotel-choice-icon svg{width:22px;height:22px}
.hotel-search .hotel-choice strong{font-size:16px;font-weight:700;line-height:1.3}.hotel-search .hotel-choice strong .hotel-choice-code{font-style:normal;font-weight:400;color:#6b7a8c;margin-left:8px}.hotel-search .hotel-choice small{display:block;font-size:14px;color:#5b6b80;margin-top:2px}
/* 29.09., 17. Chat (Sasan): Mietwagen-Karten auf allen Geräten ab 561 px als Desktop-Liste – das iPad-Raster aus .187 wurde auf seine Anweisung entfernt; Handy ≤ 560 px behält sein eigenes Layout */
.car-card-perday{display:none}
/* Hotel-Ergebnisseite auf iPad/iPad Mini (561–1366 px) im Leisten-Stil des Mietwagen-Mockups (Sasan 29.09.): eine weiße Leiste – Reiseziel | Check-in | Check-out | Gäste & Zimmer | oranger Knopf „Hotels suchen“; kein Voucher. Desktop ≥ 1367 px unverändert. */
@media(min-width:561px) and (max-width:1366px){
  html body[data-kind=hotel].has-flight-search .search-area:has(.hotel-search){margin-left:0;min-height:0;padding-left:0}
  html body[data-kind=hotel].has-flight-search .result-trip-ticket{display:none}
  html body[data-kind=hotel].has-flight-search .hotel-search .hotel-form-main{width:100%;max-width:1320px;margin:0 auto}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;width:100%;max-width:none;padding:6px;border-radius:16px;background:#fff;box-shadow:0 4px 18px rgba(25,54,86,.12)}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.hotel-destination{flex:1 1 200px;width:auto;min-width:0;margin-right:6px;border-radius:12px;background:#f3f7fb;grid-column:auto;grid-row:auto}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.hotel-destination .airport-field-label{display:block;font:400 12px/1.2 "Segoe UI",Arial,sans-serif;color:#5b6b80}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.hotel-destination .hotel-field-text>small{display:none}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-dates{flex:1 1 360px;width:auto;min-width:0;grid-column:auto;grid-row:auto}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-dates .search-popover-trigger{display:flex;align-items:stretch;width:100%;min-height:100%;gap:0;padding:0;background:transparent}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-dates .search-popover-trigger>span{flex:1 1 50%;display:flex;align-items:center;gap:10px;min-width:0;padding:6px 14px;border-left:1px solid #e4eaf2}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-dates .hotel-field-text{display:flex;flex-direction:column-reverse;gap:2px;min-width:0}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-dates .hotel-field-text small{font-size:12px;color:#5b6b80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-dates .hotel-field-text strong{font-size:15px;white-space:nowrap}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-button{flex:0 0 auto;width:auto;min-width:0;margin-left:10px;padding:0 24px;border-radius:12px;background:#fd6318;color:#fff;font:800 15px/1 "Segoe UI",Arial,sans-serif;grid-column:auto;grid-row:auto}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-travelers{flex:0 0 auto;width:auto;min-width:0;grid-column:auto;grid-row:auto;border-left:1px solid #e4eaf2}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-travelers .search-popover-trigger{display:flex;align-items:center;gap:10px;width:auto;min-height:100%;padding:6px 16px;background:transparent}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-travelers .hotel-field-text{display:flex;flex-direction:column-reverse;gap:2px;min-width:0}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-travelers .hotel-field-text small{font-size:12px;color:#5b6b80;white-space:nowrap}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-travelers .hotel-field-text strong{font-size:15px;white-space:nowrap}
  html body[data-kind=hotel].has-flight-search .compact-search.hotel-search .compact-route.hotel-route>.search-button:hover{background:#e4560f}
}
/* Handy (Sasan 29.09., iPhone-Screenshots): „Alle Filter“-Dialog lag unter Filterleiste und Karten-Knopf; Karten-Knopf verdeckte „Zum Angebot“. Jetzt: Karten-Schalter in der Filterleiste neben „Alle Filter“, schwebender Knopf nur im Karten-Vollbild („Liste anzeigen“), Dialog über allem. */
@media(max-width:560px){
  html body .hotel-map-switch{display:inline-flex;gap:8px;font-size:13px;margin-left:auto}
  html body .hotel-map-fab{display:none}
  html body .hotel-layout.has-map~.hotel-map-fab,html body .hotel-results:has(.hotel-layout.has-map) .hotel-map-fab{display:inline-flex}
  html body .hotel-all-filters{z-index:900}
  html body:has(.hotel-all-filters) .hotel-map-fab,html body:has(.hotel-all-filters) .hotel-chipbar{visibility:hidden}
  html body .hotel-map-column .hotel-compare{bottom:74px}
}
/* Handy-Mietwagenkarte (Sasan 29.09., iPhone): Bild links, Modell/Daten rechts daneben (wie die Hotelkarte), darunter Vermieter, Preis links + „Zum Angebot“ rechts */
@media(max-width:560px){
  html body .car-card .hotel-card-top{position:relative;display:grid;grid-template-columns:36% minmax(0,1fr);grid-template-areas:"media main" "deal deal";gap:0 12px;padding:10px 10px 10px}
  html body .car-card .hotel-card-media{grid-area:media;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:0;min-height:0}
  html body .car-card .car-card-image{width:100%;height:auto;aspect-ratio:4/3;min-height:0;padding:4px;border-radius:10px;background:#f4f6f9;object-fit:contain}
  html body .car-card .hotel-image-missing{width:100%;aspect-ratio:4/3;height:auto;font-size:11px}
  html body .car-card .car-agency{justify-self:start;font-size:12px}html body .car-card .car-agency img{max-height:18px;max-width:90px}
  html body .car-card .hotel-fav{position:absolute;top:8px;right:8px;margin:0;width:32px;height:32px}
  html body .car-card .hotel-card-main{grid-area:main;display:flex;flex-direction:column;gap:4px;padding:0 36px 0 0;min-width:0}
  html body .car-card .hotel-card-title{font-size:15px;line-height:1.25;margin:0}
  html body .car-card .car-card-class{margin:0;font-size:12px}
  html body .car-card .car-specs{gap:3px 10px;font-size:12px;margin:2px 0 0}
  html body .car-card .car-card-station{font-size:12px;margin:2px 0 0}
  html body .car-card .car-policies{font-size:12px;gap:2px;margin:4px 0 0}
  html body .car-card .hotel-card-deal{grid-area:deal;margin-top:10px;padding-top:8px;border-top:1px solid #e4eaf2}
}
/* Handy-Paketkarte (Sasan 29.09., iPhone: „kompakt, nicht erst das große Bild“): Bild links (36 %), Hotelname/Ort/Note/Chips/Icons rechts daneben, darunter Flugzeilen über volle Breite, dann Preis links + „Zum Angebot“ rechts. package-body wird per display:contents aufgelöst, damit die Flugzeilen unter das Bild rutschen. */
@media(max-width:560px){
  html body .package-results .hotel-card.package-card{grid-template-columns:36% minmax(0,1fr);grid-auto-rows:auto;gap:0 10px;align-items:start}
  html body .package-results .package-media{grid-column:1;grid-row:1/span 5;align-self:start;margin:10px 0 0 10px}
  html body .package-results .package-media .hotel-card-image{height:112px;border-radius:10px}
  html body .package-results .package-media .hotel-image-count{right:4px;bottom:4px;font-size:10px;padding:1px 5px}
  html body .package-results .package-tip{left:6px;top:6px;padding:2px 7px;font-size:10.5px}
  html body .package-results .package-body{display:contents}
  html body .package-results .package-body>*{grid-column:2;min-width:0;margin:0 10px 0 0}
  html body .package-results .package-body>.hotel-card-title{margin-top:10px;font-size:15px;line-height:1.25;gap:2px 6px}html body .package-results .package-body .hotel-card-title .hotel-stars{font-size:11px}
  html body .package-results .package-body>.hotel-card-place{margin-top:3px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
  html body .package-results .package-body>.hotel-card-rating{margin-top:4px;font-size:12px;gap:5px}html body .package-results .package-body .hotel-score{min-width:30px;height:20px;font-size:12px}
  html body .package-results .package-body>.package-chips{margin-top:4px;gap:4px}html body .package-results .package-chip{padding:2px 7px;font-size:11px}
  html body .package-results .package-body>.package-amenities{margin-top:4px}html body .package-results .package-amenities>span .hi{width:17px;height:17px}
  html body .package-results .package-body>.package-legs{grid-column:1/-1;margin:8px 10px 0;padding:8px 0 0;border-top:1px solid var(--pk-line,#e4eaf2);gap:4px}
  html body .package-results .package-leg-head{font-size:12px}html body .package-results .package-leg-row{gap:8px;grid-template-columns:auto minmax(48px,1fr) auto}html body .package-results .package-leg-port b{font-size:13px}html body .package-results .package-leg-mid{font-size:10.5px;min-width:48px}
  html body .package-results .package-body>.package-foot{grid-column:1/-1;margin:4px 10px 8px;padding:6px 0 0;font-size:12px}
  html body .package-results .package-price{grid-column:1/-1;gap:4px 10px;padding:10px 10px 12px}
  html body .package-results .package-price-main strong{font-size:22px}html body .package-results .package-price-main span{font-size:12px}html body .package-results .package-price-total{font-size:12px}
}
/* Handy-Paketseite oben kompakt (Sasan 29.09.: „muss um 80–85 % kompakter, wie KAYAK“): Zusammenfassung in einer Zeile (Frankfurt → Boston · Datum · Reisende · Ändern), Zähler + Sortieren in einer Zeile, Sortier-Reiter weg (Auswahl steckt im Sortieren-Feld), „Dein Flug“ einzeilig mit Link „Flug ändern“ */
@media(max-width:560px){
  html body .package-summary{display:flex;flex-wrap:wrap;align-items:center;gap:2px 5px;min-height:0;margin:0 0 8px;padding:8px 12px;border-radius:12px;font-size:13px;line-height:1.3}
  html body .package-summary .package-summary-cell{display:inline-flex;align-items:center;gap:0;flex:0 1 auto;min-width:0;max-width:100%}
  html body .package-summary .package-summary-cell .hotel-field-icon,html body .package-summary .package-summary-text small{display:none}
  html body .package-summary .package-summary-text{display:block;min-width:0}html body .package-summary .package-summary-text strong{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:150px}
  html body .package-summary .package-summary-cell:nth-child(2)::before{content:"→";margin-right:5px;color:#5b6b80;font-weight:400}
  html body .package-summary .package-summary-cell:nth-child(n+3)::before{content:"·";margin-right:5px;color:#5b6b80;font-weight:400}
  html body .package-summary .package-summary-change{margin-left:auto;font-size:12px;font-weight:700;color:#0054d7;gap:4px}html body .package-summary .package-summary-change .hotel-field-icon{width:14px;height:14px}
  html body .package-topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px;min-height:0}
  html body .package-topbar .hotel-results-title{font-size:14px;line-height:1.2;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body .package-topbar .package-sortbox{flex:0 0 auto;font-size:12px;gap:4px}html body .package-topbar .package-sortbox select{font-size:12px;padding:4px 22px 4px 6px;height:30px;width:auto!important;max-width:150px}
  html body .package-results .package-tabs{display:none}
  html body .package-flight-bar{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin:0 0 8px;padding:7px 12px;border-radius:12px;font-size:12px;line-height:1.3}
  html body .package-flight-bar-label{font-size:12px;gap:4px}html body .package-flight-bar-label .hi{width:14px;height:14px}
  html body .package-flight-bar-text{flex:1 1 100%;order:3;font-size:12px;color:#33475f}
  html body .package-flight-change{margin-left:auto;order:2;padding:0;min-height:0;height:auto;border:0;background:transparent;color:#0054d7;font-size:12px;font-weight:700;text-decoration:underline;border-radius:0}
}
/* Handy-Paketseite, Feinschliff (Sasan 29.09.: „zu viele Buttons, zu viele Texte“): „Suche ändern“ nur als kleiner Link, Sortieren als Chip in der Filterleiste, Zähler als kleine Zeile */
@media(max-width:560px){
  html body .hotel-mobile-summary.package-summary .package-summary-change{flex:0 0 auto;width:auto;margin:0 0 0 auto;padding:0;min-height:0;height:auto;border-radius:0;background:transparent;color:#0054d7;font-size:12px;font-weight:700;gap:4px;justify-content:flex-end}
  html body .hotel-mobile-summary.package-summary:hover .package-summary-change{background:transparent}
  html body .package-topbar .hotel-results-title{flex:1 1 auto;font-size:13px;font-weight:600;color:#5b6b80}html body .package-topbar .hotel-results-title b{color:#0c1f44}
  html body .pk-chips .pk-chip-sort{flex:0 0 auto;display:inline-flex;align-items:center;gap:0;padding:0 6px 0 10px;font-size:0;line-height:1;cursor:pointer}
  html body .pk-chips .pk-chip-sort::before{content:"Sortieren:";font-size:12px;font-weight:600;color:#5b6b80;margin-right:4px}
  html body .pk-chips .pk-chip-sort select{border:0;background:transparent;padding:0 18px 0 0;height:auto;min-height:0;font:700 12px/1.2 "Segoe UI",Arial,sans-serif;color:#0c1f44;width:auto!important;max-width:130px;appearance:auto}
}
/* Handy-Paket-Zusammenfassung wie bei Expedia (Sasans Screenshot 29.09.): Zeile 1 fett „Frankfurt → Boston“, Zeile 2 klein „15. Dez – 18. Dez · 2 Erwachsene, 1 Zimmer“, rechts „Bearbeiten“ */
@media(max-width:560px){
  html body .hotel-mobile-summary.package-summary{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-areas:"von nach . change" "datum reisende reisende change";align-items:center;gap:2px 6px;padding:10px 12px}
  html body .package-summary .package-summary-cell:nth-child(1){grid-area:von}html body .package-summary .package-summary-cell:nth-child(2){grid-area:nach}html body .package-summary .package-summary-cell:nth-child(3){grid-area:datum}html body .package-summary .package-summary-cell:nth-child(4){grid-area:reisende}
  html body .package-summary .package-summary-cell:nth-child(1) strong,html body .package-summary .package-summary-cell:nth-child(2) strong{font-size:15px;max-width:140px}
  html body .package-summary .package-summary-cell:nth-child(3) strong,html body .package-summary .package-summary-cell:nth-child(4) strong{font-size:12px;font-weight:500;color:#33475f;max-width:none}
  html body .package-summary .package-summary-cell:nth-child(3)::before{content:none}
  html body .hotel-mobile-summary.package-summary .package-summary-change{grid-area:change;align-self:center;font-size:13px}
}
/* Handy wie Expedia (Sasan 29.09.): Zusammenfassung mit „Bearbeiten“, erster Chip nur Icon + Pfeil („Sortieren & filtern“ als Vollbild mit „Sortieren nach“ oben, „Auswahl aufheben“ rechts, Fertig unten) */
@media(max-width:560px){
  html body .hotel-mobile-summary.package-summary .package-summary-change{font-size:0}
  html body .hotel-mobile-summary.package-summary .package-summary-change::after{content:"Bearbeiten";font-size:14px;font-weight:700}
  html body .hotel-mobile-summary.package-summary .package-summary-change .hotel-field-icon{width:16px;height:16px}
  html body .pk-chips .pk-chip-all{font-size:0;gap:4px;padding:0 10px}html body .pk-chips .pk-chip-all .hi{width:18px;height:18px}html body .pk-chips .pk-chip-all .hi:last-child{width:14px;height:14px}
  html body .pk-sheet-head{gap:10px}html body .pk-sheet-head h3{flex:1 1 auto;margin:0;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body .pk-sheet-headreset{flex:none;border:0;background:transparent;padding:0;color:#0054d7;font:700 14px/1 "Segoe UI",Arial,sans-serif;cursor:pointer}
  html body .pk-sheet-sort{padding:12px 16px 4px}
  html body .pk-sheet-sort .package-sortbox{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 12px;border:1px solid var(--pk-line,#e4eaf2);border-radius:10px;font-size:12px;color:#5b6b80}
  html body .pk-sheet-sort .package-sortbox select{width:100%!important;max-width:none;border:0;padding:0;height:auto;background:transparent;font:600 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body .pk-sheet-foot .pk-sheet-reset{display:none}html body .pk-sheet-foot{justify-content:flex-end}
  html body .package-topbar .package-sortbox{display:none}
}
/* Handy-Kopfzeile (Sasan 29.09.: „Home, Flüge … nehmen zu viel Platz“): Navigation in EINER Zeile, Icon + Text nebeneinander, mit dem Finger nach rechts schiebbar; aktiver Reiter wird per JS in Sicht gescrollt */
@media(max-width:560px){
  html body .travel-site-header .tnav{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:2px;padding:0 2px 2px;scroll-snap-type:x proximity}
  html body .travel-site-header .tnav::-webkit-scrollbar{display:none}
  html body .travel-site-header .tnav a{flex:0 0 auto;flex-direction:row;align-items:center;gap:5px;min-width:0;padding:6px 10px 7px;font-size:12.5px;line-height:1;border-bottom-width:2px;scroll-snap-align:start;white-space:nowrap}
  html body .travel-site-header .tnav a svg{width:18px;height:18px}
  html body .travel-site-header .tnav a[aria-current=page]{border-radius:8px 8px 0 0}
}
/* Handy: Kopfzeile (Logo + einzeilige Navigation) bleibt oben kleben (Sasan 29.09.: „Sticky wie bei Expedia“) */
@media(max-width:560px){
  html body .travel-site-header{position:sticky;top:0;z-index:720;background:#fff;box-shadow:0 2px 8px rgba(25,54,86,.10)}
  html body .hotel-chipbar{top:var(--tnav-h,78px)}
}
/* Handy: Navigation als Hamburger-Menü (Sasan 29.09.: „als Hamburger“) – Kopfzeile nur Logo + Merkliste/Konto + ☰, Menü klappt als Liste unter der Kopfzeile auf; rein per CSS (#tnav-toggle) */
@media(max-width:560px){
  html body .travel-site-header .header-inner{position:relative;flex-wrap:nowrap;align-items:center;gap:8px;padding-block:6px}
  html body .travel-site-header .tnav{display:none;position:absolute;left:0;right:0;top:100%;order:0;width:auto;flex-direction:column;gap:0;padding:6px 0 8px;background:#fff;border-top:1px solid #e4eaf2;box-shadow:0 10px 24px rgba(25,54,86,.18);overflow:visible;z-index:730}
  html body .travel-site-header .tnav-toggle:checked~.tnav{display:flex}
  html body .travel-site-header .tnav a{flex:none;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-width:0;padding:12px 18px;border-bottom:1px solid #eef2f7;border-radius:0!important;font-size:15px;line-height:1.2;white-space:nowrap}
  html body .travel-site-header .tnav a:last-child{border-bottom:0}
  html body .travel-site-header .tnav a svg{width:22px;height:22px}
  html body .travel-site-header .tnav a[aria-current=page]{background:#eef4ff;border-bottom-color:#eef2f7}
  html body .travel-site-header .tnav-tools{margin-left:auto;gap:10px;align-items:center}
  html body .travel-site-header .tnav-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:40px;height:40px;padding:0 9px;border:1px solid #e4eaf2;border-radius:10px;background:#fff;cursor:pointer;box-sizing:border-box}
  html body .travel-site-header .tnav-burger i{display:block;height:2px;border-radius:2px;background:#0b2a55;transition:transform .15s,opacity .15s}
  html body .travel-site-header .tnav-toggle:checked~.tnav-tools .tnav-burger i:nth-child(1){transform:translateY(6px) rotate(45deg)}
  html body .travel-site-header .tnav-toggle:checked~.tnav-tools .tnav-burger i:nth-child(2){opacity:0}
  html body .travel-site-header .tnav-toggle:checked~.tnav-tools .tnav-burger i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
}
.tnav-burger{display:none}
/* Handy-Paketseite, Feinschliff 2 (Sasan 29.09.): Zähler-Zeile weg, Bild in der Karte klein, Zusammenfassung „Frankfurt → Boston / Datum · Reisende / Bearbeiten“ sauber, Filter-Chip mit Schieberegler-Icon */
@media(max-width:560px){
  html body .package-results .package-topbar{display:none}
  html body .package-results .package-media .hotel-card-image{min-height:0;height:112px}
  html body .hotel-mobile-summary.package-summary{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"von nach change" "datum reisende change"}
  html body .package-summary .package-summary-cell:nth-child(2)::before{margin:0 5px 0 0}
  html body .package-summary .package-summary-cell:nth-child(4)::before{content:"·";margin-right:5px}
  html body .package-summary .package-summary-cell:nth-child(4){min-width:0}html body .package-summary .package-summary-cell:nth-child(4) .package-summary-text{min-width:0}
  html body .hotel-mobile-summary.package-summary .package-summary-change .hotel-field-icon svg{display:none}
  html body .hotel-mobile-summary.package-summary .package-summary-change .hotel-field-icon{width:16px;height:16px;background:no-repeat center/16px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230054d7' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 20h4l10.5-10.5a2.1 2.1 0 0 0-3-3L5 17z'/><path d='M13.5 6.5l3 3'/></svg>")}
}
/* Handy Hotel/Mietwagen wie Expedia (Sasan 29.09.): Seite weiß, Inhalt 98 % breit, Zusammenfassung mit „Bearbeiten“, EINE schiebbare Leiste (☰-Chip = „Sortieren & filtern“ als Vollbild mit Sortieren/Preistyp oben, dann alle Filter-Chips, dann „Karte“), Zähler-/Sortierzeile weg, kein seitliches Wackeln */
@media(max-width:560px){
  html body.has-flight-search{background:#fff;overflow-x:clip}
  html body main.page-travel-overview .shell.flight-page-main{margin-left:4px;margin-right:4px;width:auto;max-width:none}
  html body .hotel-card{border:1px solid #e4eaf2;box-shadow:none}
  html body .hotel-mobile-summary:not(.package-summary){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"l1 edit" "l2 edit";align-items:center;gap:2px 10px;margin:8px 0 8px;padding:10px 12px;border:1px solid #e4eaf2;border-radius:12px;background:#fff;text-align:left}
  html body .hotel-mobile-summary:not(.package-summary)>strong{grid-area:l1;font-size:15px;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body .hotel-mobile-summary:not(.package-summary)>span:not(.hotel-mobile-summary-edit){grid-area:l2;font-size:12px;color:#33475f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body .hotel-mobile-summary-edit{grid-area:edit;display:inline-flex;align-items:center;gap:5px;color:#0054d7;font-size:14px;font-weight:700}html body .hotel-mobile-summary-edit svg{width:16px;height:16px}
  html body .hotel-chipbar{position:sticky;top:var(--tnav-h,54px);z-index:700;flex-direction:row;align-items:center;gap:6px;margin:0 0 8px;padding:6px 0;width:100%;box-sizing:border-box;background:#fff;box-shadow:none;border-bottom:1px solid #eef2f7}
  html body .hotel-chips-row{display:flex;flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;padding:2px 0}
  html body .hotel-chips-row::-webkit-scrollbar{display:none}
  html body .hotel-chips-row>.hotel-chip-wrap{display:block;flex:0 0 auto}
  html body .hotel-chip-btn{height:36px;padding:0 12px;font-size:13px;white-space:nowrap}
  html body .hotel-chip-btn.hotel-chip-all{font-size:0;gap:4px;padding:0 10px}html body .hotel-chip-btn.hotel-chip-all .hi{width:18px;height:18px}
  html body .hotel-chip-btn.hotel-chip-all::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);margin-left:2px}
  html body .hotel-map-switch{flex:0 0 auto;margin-left:0;height:36px;padding:0 12px;border:1px solid #d9e1ec;border-radius:18px;font-size:13px;gap:6px}
  html body .hotel-map-switch i{width:32px;height:18px}html body .hotel-map-switch i::after{width:12px;height:12px;top:3px;left:3px}html body .hotel-map-switch input:checked+i::after{transform:translateX(14px)}
  html body .hotel-list-bar{display:none}
  html body .hotel-all-filters-head strong{flex:1 1 auto;font-size:16px}
  html body .hotel-all-filters-headreset{border:0;background:transparent;padding:0 10px 0 0;color:#0054d7;font:700 14px/1 "Segoe UI",Arial,sans-serif;cursor:pointer}
  html body .hotel-all-filters-sort{display:grid;gap:8px;padding:12px 20px 4px}
  html body .hotel-all-filters-sort .hotel-sortbox,html body .hotel-all-filters-sort .hotel-pricebox{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 12px;border:1px solid var(--hotel-line,#e4eaf2);border-radius:10px;font-size:12px;color:#5b6b80;white-space:normal}
  html body .hotel-all-filters-sort select{width:100%!important;max-width:none;border:0;padding:0;height:auto;background:transparent;font:600 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body .hotel-all-filters-foot .hotel-all-filters-reset{display:none}html body .hotel-all-filters-foot{justify-content:flex-end}
}
/* Handy, Feinschliff (29.09.): Karten-Schalter kurz „Karte“, Dialogkopf einzeilig, Sortier-Feld linksbündig */
@media(max-width:560px){
  html body .hotel-map-switch{font-size:0;gap:6px}html body .hotel-map-switch::before{content:"Karte";font-size:13px;font-weight:600}html body .hotel-map-switch>span{display:none}
  html body .hotel-all-filters-head{gap:8px}html body .hotel-all-filters-headreset{white-space:nowrap;font-size:13px;padding:0}
  html body .hotel-all-filters-sort .hotel-sortbox,html body .hotel-all-filters-sort .hotel-pricebox{align-items:flex-start;text-align:left}
  html body .hotel-all-filters-sort .hotel-sort-info{display:none}
}
/* Handy-Hotelkarte (Sasan 29.09.: „Riesenbild, sieht unprofessionell aus“): Bild klein und ganz sichtbar (4:3, oben links), nicht mehr über die volle Kartenhöhe gestreckt */
@media(max-width:560px){
  html body .hotel-card:not(.car-card):not(.package-card) .hotel-card-top{padding:10px 10px 10px 10px;align-items:start}
  html body .hotel-card:not(.car-card):not(.package-card) .hotel-card-media{grid-row:1/3;align-self:start;min-height:0}
  html body .hotel-card:not(.car-card):not(.package-card) .hotel-card-image{width:100%;height:auto;min-height:0;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
  html body .hotel-card:not(.car-card):not(.package-card) .hotel-image-missing{aspect-ratio:4/3;height:auto;min-height:0;border-radius:10px;font-size:11px}
  html body .package-results .package-media .hotel-card-image{height:auto;aspect-ratio:4/3}
}
/* Handy: „Flug ändern“ als Vollbild-Auswahl (Sasan 29.09.): Kopf „Flug wählen“ + X oben fest, Liste scrollbar, je Flug eine kompakte Karte – Airline links, Preis rechts, Flugzeilen darunter, Knopf „Wählen“ in voller Breite */
@media(max-width:560px){
  html body .package-flight-picker{padding:0;place-items:stretch;overflow:hidden;background:#fff}
  html body .package-flight-picker .package-picker-box{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;box-shadow:none}
  html body .package-picker-head{position:sticky;top:0;z-index:2;padding:12px 14px;background:#fff;padding-top:max(12px,env(safe-area-inset-top))}
  html body .package-picker-head h3{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  html body .package-picker-list{flex:1 1 auto;padding:10px 12px calc(16px + env(safe-area-inset-bottom));gap:8px;-webkit-overflow-scrolling:touch}
  html body .package-picker-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"air price" "air sub" "legs legs" "pick pick";gap:2px 10px;padding:10px 12px;align-items:center}
  html body .package-picker-airline{grid-area:air;font-size:13px;min-width:0}html body .package-picker-airline span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html body .package-picker-airline img{width:24px;height:24px}
  html body .package-picker-price{display:contents}
  html body .package-picker-price strong{grid-area:price;font-size:17px;text-align:right;line-height:1.1}html body .package-picker-price small{grid-area:sub;font-size:11px;text-align:right;color:#5b6b80}
  html body .package-picker-legs{grid-area:legs;font-size:12.5px;gap:3px;margin-top:6px;padding-top:6px;border-top:1px dashed #e4eaf2}
  html body .package-picker-leg{display:flex;flex-wrap:wrap;gap:0 4px;line-height:1.35}
  html body .package-picker-pick{grid-area:pick;margin:8px 0 0;width:100%;padding:10px 12px;font-size:14px;border-radius:10px}
  html body .package-picker-row.is-current .package-picker-pick{display:none}
  html body .package-picker-row.is-current::after{grid-area:pick;content:"Aktuell gewählt";font-size:12px;font-weight:700;color:#0054d7}
}

/* Hero auf den Ergebnisseiten Flüge/Hotels/Flug + Hotel/Mietwagen (Sasans Mockup, Handschrift „Good Travel Vibes“) */
html body .flight-hero.result-hero{height:232px;min-height:0}
html body .flight-hero.result-hero .flight-hero-image{object-position:center 60%}
html body .flight-hero.result-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,46,105,.62) 0,rgba(6,46,105,.35) 46%,rgba(6,46,105,0) 70%)}
html body .flight-hero.result-hero .flight-hero-copy{position:absolute;inset:0;width:auto;max-width:none;margin:0;padding:34px max(3%,calc((100% - 1600px)/2)) 0}
html body .flight-hero.result-hero .result-hero-eyebrow{margin:0 0 4px;font:800 13px/1 "Segoe UI",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#ffd166}
html body .flight-hero.result-hero h1{margin:0;font:900 40px/1.1 "Arial Black",Arial,sans-serif;letter-spacing:-.02em;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35);white-space:nowrap}
html body .flight-hero.result-hero .result-hero-sub{max-width:560px;margin:8px 0 0;font:400 17px/1.35 "Segoe UI",Arial,sans-serif;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.4)}
html body .result-hero-note{position:absolute;right:4%;top:30%;z-index:0;pointer-events:none;padding:10px 22px 12px;border-radius:8px 14px 10px 16px;background:#fff;color:#062e69;font:700 26px/1.05 "Segoe Script","Brush Script MT","Lucida Handwriting",cursive;white-space:nowrap;transform:rotate(-8deg);box-shadow:0 4px 18px rgba(0,0,0,.18)}
@media(max-width:1366px){html body .flight-hero.result-hero{height:190px}html body .flight-hero.result-hero h1{font-size:32px}html body .flight-hero.result-hero .flight-hero-copy{padding-top:26px}html body .result-hero-note{font-size:22px;top:26%}}
@media(max-width:768px){html body .flight-hero.result-hero .result-hero-sub{display:none}html body .result-hero-note{font-size:18px;padding:7px 14px 8px;right:16px;top:50%;transform:translateY(-50%) rotate(-8deg)}}
@media(max-width:560px){html body .flight-hero.result-hero{height:132px}html body .flight-hero.result-hero .flight-hero-copy{padding:26px 16px 0}html body .flight-hero.result-hero h1{font-size:24px;white-space:normal}html body .flight-hero.result-hero .result-hero-eyebrow{font-size:11px}html body .result-hero-note{font-size:15px}}
html body .flight-hero.result-hero .flight-hero-ticket{display:none}
html body[data-kind=flug] .flight-hero.result-hero .flight-hero-image{object-position:center 35%}
html body .result-hero-wrap+main>.flight-page-main{position:relative;margin-top:-80px;padding-top:0}
@media(max-width:1366px){html body .result-hero-wrap+main>.flight-page-main{margin-top:-55px}}
@media(max-width:560px){html body .result-hero-wrap+main>.flight-page-main{margin-top:0}}
@media(max-width:560px){html body .result-hero-note{top:auto;bottom:12px;right:12px;transform:rotate(-5deg);font-size:14px;padding:5px 12px 6px}html body .flight-hero.result-hero .flight-hero-copy{padding-right:34%}}

/* Danke-Dialog nach Kontaktnachricht (Startseite ?nachricht=gesendet) */
html body .thanks-dialog{border:0;border-radius:18px;padding:0;max-width:min(92vw,460px);box-shadow:0 20px 60px rgba(6,46,105,.28)}
html body .thanks-dialog::backdrop{background:rgba(6,46,105,.45)}
html body .thanks-dialog form{margin:0;padding:34px 32px 28px;text-align:center;font-family:"Segoe UI",Arial,sans-serif}
html body .thanks-dialog .thanks-icon{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;background:#e8f7ee;color:#0f6b3a;font:700 30px/56px Arial,sans-serif}
html body .thanks-dialog h2{margin:0 0 10px;font:900 24px/1.2 "Arial Black",Arial,sans-serif;color:#062e69}
html body .thanks-dialog p{margin:0;font-size:15px;line-height:1.5;color:#33465c}
html body .thanks-dialog .thanks-close{margin-top:22px;padding:12px 30px;border:0;border-radius:10px;background:#ff7a00;color:#fff;font:700 15px/1 "Segoe UI",Arial,sans-serif;cursor:pointer}
html body .thanks-dialog .thanks-close:hover{background:#e86e00}


/* Konto-Hinweis (Herz ohne Anmeldung) */
html body .konto-hint form{text-align:left}
html body .konto-hint h2{font:900 22px/1.2 "Arial Black",Arial,sans-serif;color:#062e69;margin:0 0 10px}
html body .konto-hint p{font:400 15px/1.5 "Segoe UI",Arial,sans-serif;color:#33465c;margin:0}
html body .konto-hint-actions{display:flex;gap:12px;align-items:center;margin-top:18px!important}
html body .konto-hint .thanks-close,html body .konto-hint .konto-hint-go{display:inline-block;margin:0;padding:11px 20px;border:0;border-radius:10px;background:#ff7a00;color:#fff;font:700 15px/1 "Segoe UI",Arial,sans-serif;text-decoration:none;cursor:pointer}
html body .konto-hint .konto-hint-later{border:0;background:none;color:#0054d7;font:700 14px/1 "Segoe UI",Arial,sans-serif;cursor:pointer}
html body .konto-hint .konto-hint-go{text-decoration:none!important}
html body .konto-hint form{padding:28px 28px 24px}
html body .tnav-account.is-logged-in svg{color:#0054d7}
html body .tnav-fav.has-favs svg{fill:#ff4d6d;stroke:#ff4d6d}

/* Anmeldung im Merken-Pop-up (Sasan 29.09.: kein Seitenwechsel) + Toast nach dem Anmeldelink */
html body .konto-hint-label{display:block;margin:16px 0 0;font:700 13px/1.3 "Segoe UI",Arial,sans-serif;color:#33465c}
html body .konto-hint-label input{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:12px 14px;border:1.5px solid #cbd6e4;border-radius:10px;font:400 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44;background:#fff}
html body .konto-hint-label input:focus{outline:0;border-color:#0054d7;box-shadow:0 0 0 3px rgba(0,84,215,.15)}
html body .konto-hint-consent{margin:14px 0 0!important;font:400 12.5px/1.5 "Segoe UI",Arial,sans-serif!important;color:#6b7a90!important}
html body .konto-hint-consent a{color:#0054d7}
html body .konto-hint-error{margin-top:10px!important;padding:9px 12px;border-radius:8px;background:#fdecec;color:#a11a1a;font-size:14px!important}
html body .konto-hint-error[hidden],html body .konto-hint-done[hidden],html body .konto-hint-label[hidden],html body .konto-hint-consent[hidden],html body .konto-hint-actions[hidden],html body .konto-hint-text[hidden]{display:none!important}
html body .konto-hint-done{margin-top:4px!important;padding:12px 14px;border-radius:10px;background:#e8f7ee;color:#0f6b3a;font-size:15px!important}
html body .konto-hint-done+.thanks-close{margin-top:16px}
html body .konto-hint .konto-hint-send:disabled{opacity:.6;cursor:wait}
html body .konto-toast{position:fixed;left:50%;bottom:24px;z-index:1200;transform:translate(-50%,20px);opacity:0;display:flex;gap:14px;align-items:center;max-width:min(92vw,560px);padding:14px 18px;border-radius:12px;background:#062e69;color:#fff;font:600 15px/1.4 "Segoe UI",Arial,sans-serif;box-shadow:0 12px 40px rgba(6,46,105,.35);transition:opacity .35s,transform .35s}
html body .konto-toast.is-on{opacity:1;transform:translate(-50%,0)}
html body .konto-toast a{flex:0 0 auto;padding:8px 14px;border-radius:8px;background:#ff7a00;color:#fff;font-weight:700;text-decoration:none}
html body .konto-hint-guest{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin:14px 0 0!important;font:400 13px/1.4 "Segoe UI",Arial,sans-serif!important;color:#6b7a90!important}
html body .konto-hint-guest .konto-guest{padding:0}

/* Merkliste als Panel von rechts (Sasan 29.09., wie KAYAK) + Zähler am Herz */
html body .travel-site-header .tnav-fav{position:relative}
html body .travel-site-header .tnav-fav-count{position:absolute;top:-7px;right:-9px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ff4d6d;color:#fff;font:700 11px/18px "Segoe UI",Arial,sans-serif;text-align:center;box-sizing:border-box}
html body .travel-site-header .tnav-fav-count[hidden]{display:none}
html body .konto-panel-back{position:fixed;inset:0;z-index:1100;background:rgba(6,46,105,.42);opacity:0;pointer-events:none;transition:opacity .3s}
html body .konto-panel-back.is-open{opacity:1;pointer-events:auto}
html body .konto-panel{position:fixed;top:0;right:0;bottom:0;z-index:1110;width:min(440px,100vw);display:flex;flex-direction:column;background:#fff;box-shadow:-16px 0 48px rgba(6,46,105,.25);transform:translateX(105%);transition:transform .35s cubic-bezier(.2,.8,.2,1);font-family:"Segoe UI",Arial,sans-serif;color:#0c1f44}
html body .konto-panel.is-open{transform:none}
html body.konto-panel-open{overflow:hidden}
html body .konto-panel-head{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 22px 12px}
html body .konto-panel-head h2{margin:0;font:900 24px/1.2 "Arial Black",Arial,sans-serif;color:#062e69}
html body .konto-panel-count{margin:4px 0 0;font-size:13px;color:#6b7a90}
html body .konto-panel-close{border:0;background:#f1f5fa;color:#0b2a55;width:36px;height:36px;border-radius:50%;font:400 26px/36px Arial,sans-serif;cursor:pointer}
html body .konto-panel-tabs{display:flex;gap:4px;padding:0 14px;border-bottom:1px solid #e4eaf2}
html body .konto-panel-tab{flex:1 1 0;border:0;border-bottom:3px solid transparent;background:none;padding:10px 4px 9px;font:700 13.5px/1.2 "Segoe UI",Arial,sans-serif;color:#6b7a90;cursor:pointer;white-space:nowrap}
html body .konto-panel-tab.is-active{color:#0054d7;border-bottom-color:#0054d7}
html body .konto-panel-tab i{font-style:normal;margin-left:5px;padding:1px 6px;border-radius:9px;background:#e8f0ff;color:#0054d7;font-size:11px}
html body .konto-panel-list{flex:1 1 auto;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:10px}
html body .konto-panel-empty{margin:20px 6px;font-size:14.5px;line-height:1.5;color:#5b6b80}
html body .konto-panel-item{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid #e4eaf2;border-radius:14px;background:#fff}
html body .konto-panel-item img,html body .konto-panel-img{display:block;width:92px;height:68px;object-fit:cover;border-radius:10px;background:#dfe8f3}
html body .konto-panel-body{display:flex;flex-direction:column;gap:2px;min-width:0}
html body .konto-panel-body strong{font-size:15px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .konto-panel-sub{font-size:12.5px;color:#5b6b80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .konto-panel-price{font:800 15px/1.2 "Segoe UI",Arial,sans-serif;color:#0f6b3a}
html body .konto-panel-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
html body .konto-panel-go{padding:8px 12px;border-radius:8px;background:#ff7a00;color:#fff;font:700 12.5px/1 "Segoe UI",Arial,sans-serif;text-decoration:none;white-space:nowrap}
html body .konto-panel-go[hidden]{display:none}
html body .konto-panel-remove{border:0;background:none;color:#8a99ad;font:400 22px/1 Arial,sans-serif;cursor:pointer;padding:0 4px}
html body .konto-panel-remove:hover{color:#a11a1a}
html body .konto-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid #e4eaf2;font-size:13px;color:#5b6b80}
html body .konto-panel-foot span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .konto-panel-foot a,html body .konto-panel-foot button{flex:0 0 auto;border:0;padding:9px 14px;border-radius:8px;background:#0054d7;color:#fff;font:700 13px/1 "Segoe UI",Arial,sans-serif;text-decoration:none;cursor:pointer}
@media(max-width:560px){html body .konto-panel{width:100vw}html body .konto-panel-item{grid-template-columns:72px minmax(0,1fr) auto}html body .konto-panel-item img,html body .konto-panel-img{width:72px;height:56px}}

/* Teilen-Knopf neben dem Herz + Dialog „Teile dieses Angebot“ (wie KAYAK) */
html body .bxx-share{position:absolute;right:50px;top:10px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:10px;background:#fff;color:#0c1f44;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.2)}
html body .bxx-share svg{width:17px;height:17px}
html body .bxx-share.bxx-share-hx{right:52px;top:12px;width:30px;height:30px;border-radius:50%;background:transparent;color:#fff;box-shadow:none;filter:drop-shadow(0 1px 3px rgba(0,0,0,.35))}
html body .bxx-share.bxx-share-hx svg{width:21px;height:21px}
html body .package-price-top .bxx-share{position:static;width:26px;height:26px;background:none;box-shadow:none;margin-left:6px}
html body .package-price-top{gap:0}html body .package-price-top .hotel-fav{margin-left:auto}
html body .car-card .bxx-share{top:10px;right:50px}
html body .bxx-share-dialog{max-width:min(92vw,600px)}
html body .bxx-share-dialog form{position:relative;text-align:left;padding:34px 36px 30px}
html body .bxx-share-close{position:absolute;right:18px;top:14px;border:0;background:none;color:#0c1f44;font:400 30px/1 Arial,sans-serif;cursor:pointer;margin:0!important;padding:4px 8px!important}
html body .bxx-share-dialog h2{font:900 30px/1.15 "Arial Black",Arial,sans-serif;color:#0c1f44;margin:0 0 20px}
html body .bxx-share-dialog h2 i{font-style:normal;color:#ff7a00}
html body .bxx-share-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #e4eaf2;border-radius:12px;box-shadow:0 4px 16px rgba(6,46,105,.08);margin-bottom:26px}
html body .bxx-share-card img{width:80px;height:68px;object-fit:cover;border-radius:8px;display:block}
html body .bxx-share-card img[hidden]{display:none}
html body .bxx-share-body{display:flex;flex-direction:column;gap:3px;min-width:0}
html body .bxx-share-body strong{font-size:17px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .bxx-share-sub{font-size:13px;color:#5b6b80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .bxx-share-price{text-align:right;white-space:nowrap}
html body .bxx-share-price b{display:block;font:800 22px/1.1 "Segoe UI",Arial,sans-serif;color:#0c1f44}
html body .bxx-share-price small{font-size:12px;color:#5b6b80}
html body .bxx-share-price[hidden]{display:none}
html body .bxx-share-opts{display:flex;gap:18px;justify-content:flex-start;flex-wrap:wrap}
html body .bxx-share-opt{display:flex;flex-direction:column;align-items:center;gap:10px;width:96px;border:0;background:none;padding:0;font:400 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44;text-decoration:none;cursor:pointer;text-align:center}
html body .bxx-share-opt[hidden]{display:none}
html body .bxx-share-ic{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#f1f5fa;color:#0c1f44}
html body .bxx-share-opt:hover .bxx-share-ic{background:#e4ecf7}
html body .bxx-share-ic.bxx-share-wa{background:#25d366;color:#fff}
html body .bxx-share-ic.bxx-share-fb{background:linear-gradient(135deg,#00b2ff,#a033ff,#ff5280);color:#fff}
html body .bxx-share-done{margin:18px 0 0!important;padding:10px 12px;border-radius:8px;background:#e8f7ee;color:#0f6b3a;font-size:14px!important;word-break:break-all}
html body .bxx-share-done[hidden]{display:none}
@media(max-width:560px){html body .bxx-share-dialog form{padding:26px 20px 22px}html body .bxx-share-dialog h2{font-size:24px}html body .bxx-share-opts{gap:8px;justify-content:space-between}html body .bxx-share-opt{width:72px;font-size:13px}html body .bxx-share-ic{width:52px;height:52px}html body .hotel-card-media .bxx-share{width:28px;height:28px;top:6px;right:40px}}

/* Flugkarte: Merken + Teilen oben rechts im Preisfeld (Sasan 29.09.) */
html body .flight-card .flight-price-panel{position:relative}
html body .bxx-flight-tools{position:absolute;top:10px;right:12px;display:flex;gap:6px;z-index:2}
html body .bxx-flight-tools .hotel-fav,html body .bxx-flight-tools .bxx-share{position:static;width:32px;height:32px;border:1px solid #c7d5e3;border-radius:50%;background:#fff;color:#0054d7;box-shadow:none;display:grid;place-items:center;padding:0;margin:0;cursor:pointer}
html body .bxx-flight-tools .hotel-fav svg,html body .bxx-flight-tools .bxx-share svg{width:17px;height:17px}
html body .bxx-flight-tools .hotel-fav[aria-pressed=true]{color:#ff4d6d;border-color:#ff4d6d}
html body .bxx-flight-tools .hotel-fav[aria-pressed=true] svg{fill:currentColor}
html body .bxx-flight-tools .hotel-fav:hover,html body .bxx-flight-tools .bxx-share:hover{background:#eaf2ff}
@media(max-width:950px){html body .bxx-flight-tools{position:static;grid-column:1/-1;justify-content:flex-end}}

/* Reiseplan (Sasan 29.09.): Trip aus Flug + Hotel + Mietwagen in der Merkliste mit Buchungs-Checkliste */
html body .konto-panel-item.konto-trip{display:block;padding:14px 14px 12px}
html body .konto-trip-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
html body .konto-trip-head>div{display:flex;flex-direction:column;gap:2px;min-width:0}
html body .konto-trip-head strong{font-size:16px;line-height:1.3}
html body .konto-trip-status{margin:8px 0 0;font:700 12px/1 "Segoe UI",Arial,sans-serif;color:#0054d7;text-transform:uppercase;letter-spacing:.04em}
html body .konto-trip-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
html body .konto-trip-step{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid #e4eaf2;border-radius:10px;background:#f8fafd}
html body .konto-trip-step.is-done{background:#eef8f1;border-color:#cfe9d8}
html body .konto-trip-check{position:relative;display:block;width:28px;height:28px;cursor:pointer}
html body .konto-trip-check input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
html body .konto-trip-num{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid #0054d7;color:#0054d7;font:800 13px/1 "Segoe UI",Arial,sans-serif;background:#fff}
html body .konto-trip-step.is-done .konto-trip-num{background:#0f6b3a;border-color:#0f6b3a;color:#fff}
html body .konto-trip-check input:focus-visible+.konto-trip-num{outline:3px solid #bcd3ff;outline-offset:2px}
html body .konto-trip-body{display:flex;flex-direction:column;gap:1px;min-width:0}
html body .konto-trip-body b{font-size:13.5px;line-height:1.25}
html body .konto-trip-step.is-done .konto-trip-body b{text-decoration:line-through;color:#5b6b80}
html body .konto-trip-title,html body .konto-trip-price{font-size:12px;color:#5b6b80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .konto-trip-price{color:#0f6b3a;font-weight:700}
html body .konto-trip-go{padding:7px 10px;border-radius:8px;background:#ff7a00;color:#fff;font:700 12px/1 "Segoe UI",Arial,sans-serif;text-decoration:none;white-space:nowrap}
html body .konto-trip-step.is-done .konto-trip-go{background:#c9d3df}
html body .konto-trip-go[hidden]{display:none}
html body .konto-trip-sum{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px;padding-top:8px;border-top:1px dashed #d6dfea;font-size:12.5px;color:#5b6b80}
html body .konto-trip-sum b{font:800 16px/1.2 "Segoe UI",Arial,sans-serif;color:#062e69}
html body .konto-trip-note{margin:8px 0 0;font-size:11.5px;line-height:1.45;color:#6b7a90}

/* Reiseplan auf der Flugseite (Sasan 29.09.): „Reise merken“ unter der Summe zur Orientierung */
html body .trip-plan-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px;padding:0 4px}
html body .trip-plan-bar .trip-plan-save{background:#0054d7;color:#fff;border-color:#0054d7;font-weight:800;font-size:14px;padding:10px 18px;min-height:44px;border-radius:8px}
html body .trip-plan-bar .trip-plan-save.is-saved{background:#0f6b3a;border-color:#0f6b3a}
html body .trip-plan-bar>.trip-booking-note{flex:1 1 260px;font-size:12.5px;line-height:1.45;color:#4b6281}

/* Kalender-Farben (Sasan 29.09.): Zeitraum kräftig, gewählte Tage dunkel mit weißer Schrift */
html body .calendar-day.date-in-range{background:#0a66e8;color:#fff;border-radius:0}
html body .calendar-day.date-selected{background:#062e69;color:#fff;border-radius:6px;box-shadow:0 0 0 2px #fff inset}
html body .calendar-day.date-in-range:hover{background:#0857c4}
html body .calendar-day.date-selected:hover{background:#0b3f8f}

/* Multi-Stopp-Kalender (Sasan 29.09.) */
html body .is-multi .first-leg-date,html body .is-multi .compact-extra-leg>.search-control-label{position:relative}
html body .is-multi input[type=date]:read-only{cursor:pointer}
html body .is-multi input[type=date]:read-only::-webkit-calendar-picker-indicator{opacity:.55}
html body .multi-cal-wrap{position:absolute;inset:0;pointer-events:none}
html body .multi-cal-wrap>.search-popover-trigger{position:absolute;inset:0;opacity:0;pointer-events:none;padding:0;border:0;min-height:0}
html body .multi-cal-wrap>.search-popover-panel{pointer-events:auto}
html body .multi-cal-legs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}
html body .multi-cal-leg{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 12px;border:1px solid #d4e0ee;border-radius:10px;background:#f6f9fd;color:#0c1f44;cursor:pointer;font:600 12px/1.2 "Segoe UI",Arial,sans-serif}
html body .multi-cal-leg strong{font-size:14px}
html body .multi-cal-leg[aria-pressed=true]{border-color:#062e69;background:#062e69;color:#fff}
html body .calendar-day{position:relative}
html body .calendar-day.date-picking{outline:3px solid #ff7a00;outline-offset:1px}
html body .multi-cal-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#ff7a00;color:#fff;font:800 11px/18px "Segoe UI",Arial,sans-serif;font-style:normal;box-shadow:0 0 0 2px #fff}

html body .search-multi-dates .search-panel-done{display:none}

/* Flug-Ergebnisseite, Einfacher Flug / allgemein (Sasan 29.09.: „Lücken“) */
/* 1) Fortschrittsbalken bleibt in der rechten Spalte, auch nachdem app.js ihn vor .results-layout verschiebt */
@media(min-width:901px){html body[data-kind=flug] .results-area>.search-progress{margin-left:calc(clamp(300px,26vw,400px) + 24px)}}
/* 2) Herz + Teilen nicht über dem Preis (niedrige Preisspalte bei nur einer Strecke) */
@media(min-width:951px){html body .flight-card .flight-price-panel:has(>.bxx-flight-tools){padding-top:50px}}
/* 3) Datumsfeld bei Einfacher Flug so breit wie bei Hin- und Rückflug – Flughafenfelder ohne Leerraum */
@media(min-width:1151px){html body.has-flight-search .compact-search:not(.is-multi) .compact-route>.search-dates{min-width:150px}html body.has-flight-search .compact-search:not(.is-multi) .compact-route>.search-dates .search-popover-trigger{width:100%}}

/* Flugkarte (Sasan 30.09.): Buchungsanbieter als Logo in der Flugdetails-Leiste, Trennlinie davor, Name wenn Platz */
html body .flight-card .flight-detail-toggle>span.flight-detail-provider{display:flex;flex-direction:column;justify-content:center;gap:6px;flex:0 1 auto;min-width:0;max-width:46%;align-self:stretch;padding-left:24px;border-left:1px solid #acd1ff}
html body .flight-card .flight-detail-provider>small{font-size:clamp(12px,1.1cqi,15px);line-height:1.2;color:#405f8f;font-weight:400;white-space:nowrap}
html body .flight-card .flight-detail-provider>.fdp-brand{display:flex;align-items:center;gap:10px;min-width:0}
html body .flight-card .flight-detail-provider img{display:block;flex:0 0 auto;height:28px;width:auto;max-width:120px;object-fit:contain}
html body .flight-card .flight-detail-provider b{min-width:0;font-size:clamp(14px,1.3cqi,18px);font-weight:700;line-height:1.2;color:#080f44;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
@container (max-width:1000px){html body .flight-card .flight-fare-info:has(>.flight-provider-toggle) .flight-detail-provider .fdp-brand:has(img) b{display:none}html body .flight-card .flight-fare-info:has(>.flight-provider-toggle) .flight-detail-toggle>span.flight-detail-provider{padding-left:16px}html body .flight-card .flight-fare-info:has(>.flight-provider-toggle) .flight-detail-provider img{max-width:84px;height:24px}}
@media(max-width:560px){html body .flight-card .flight-detail-toggle>span.flight-detail-provider{padding-left:14px;gap:3px;max-width:42%}html body .flight-card .flight-detail-provider img{height:22px;max-width:84px}html body .flight-card .flight-detail-provider .fdp-brand:has(img) b{display:none}}
/* Datum/Reisende unter dem Ticket links entfernt (Sasan: unnötig, lag über dem Filterkasten) */
html body .result-trip-ticket .result-ticket-meta{display:none!important}
/* Handy: Uhrzeit-Filter nicht mitten in der Zeitenzeile, sondern klein oben rechts in der Strecke */
@container (max-width:620px){html body .flight-card .flight-leg{position:relative}html body .flight-card .flight-leg .flight-departure{position:static}html body .flight-card .flight-leg .flight-departure>strong{padding-right:0}html body .flight-card .flight-leg .flight-departure>.leg-time-filter{position:absolute;inset:9px 10px auto auto;width:28px;height:28px;border:1px solid #c7d8ea;border-radius:7px;background:#fff;color:#1767b3}html body .flight-card .flight-leg .flight-departure>.leg-time-filter>.ui-icon{width:16px;height:16px}html body .flight-card .flight-leg .flight-departure>.leg-time-filter:has(.leg-select:checked){background:#005cce;border-color:#005cce;color:#fff}html body .flight-card .flight-leg .flight-airlines{padding-right:34px}}
html body .flight-card .flight-detail-provider.is-wordmark b{display:none}
/* Sasan: Logo reicht – Name nur, wenn kein Logo geliefert wird; Name als HTML-Tooltip */
html body .flight-card .flight-detail-provider .fdp-brand:has(img) b{display:none}
html body .flight-card .flight-detail-provider .fdp-brand{position:relative;overflow:visible}
html body .flight-card .flight-detail-provider .fdp-brand:has(img)[data-tip]::after{content:attr(data-tip);position:absolute;left:0;bottom:calc(100% + 8px);padding:6px 10px;border-radius:7px;background:#0c1f44;color:#fff;font:600 12px/1.3 'Segoe UI',Arial,sans-serif;white-space:nowrap;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s;pointer-events:none;z-index:6}
html body .flight-card .flight-detail-provider .fdp-brand:has(img)[data-tip]:hover::after{opacity:1;visibility:visible;transform:none}
html body .flight-card .flight-detail-toggle:has(.fdp-brand){overflow:visible}
/* Flug + Hotel „Zum Angebot“: Buchungsanbieter als Logo (Sasan 29.09.) */
html body .package-book-link small .package-book-provider{display:inline-flex;align-items:center;vertical-align:middle;margin-left:2px}
html body .package-book-link small .package-book-provider img{display:block;height:16px;width:auto;max-width:96px;object-fit:contain}
html body .package-book-link small .package-book-provider b{font-weight:700}
/* Flug + Hotel: Anbieter unten rechts – Logos etwas größer, HTML-Tooltip statt title (Sasan 29.09.) */
html body .package-partners{gap:6px 10px}
html body .package-partner{position:relative}
html body .package-partner img{height:22px;max-width:96px}
html body .package-partner-provider{padding-left:8px;border-left:1px solid var(--pk-line,#e4eaf2)}
html body .package-partner[data-tip]::after{content:attr(data-tip);position:absolute;right:0;bottom:calc(100% + 8px);padding:6px 10px;border-radius:7px;background:#0c1f44;color:#fff;font:600 12px/1.3 'Segoe UI',Arial,sans-serif;white-space:nowrap;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s;pointer-events:none;z-index:8}
html body .package-partner[data-tip]:hover::after,html body .package-partner[data-tip].is-open::after{opacity:1;visibility:visible;transform:none}
@media(max-width:560px){html body .package-partner img{height:18px;max-width:72px}}

/* Preisalarm (Sasan 30.09.): Schalter oben in der Filterspalte, Knopf in der Ergebnisleiste, Zeile unter der Zusammenfassung */
html body .bxx-alarm-card{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;border:1px solid #cfe0f5;border-radius:12px;background:linear-gradient(110deg,#f6fbff,#eef6ff);cursor:pointer}
html body .bxx-alarm-card-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#dceeff;color:#0053bb}
html body .bxx-alarm-card-text{display:flex;flex-direction:column;min-width:0;flex:1}
html body .bxx-alarm-card-text strong{font:750 15px/1.2 'Segoe UI',Arial,sans-serif;color:#080f44}
html body .bxx-alarm-card-text small{font:400 12px/1.3 'Segoe UI',Arial,sans-serif;color:#405f8f}
html body .bxx-alarm{position:relative;flex:0 0 44px;width:44px;height:26px;padding:0;border:0;border-radius:999px;background:#c3d2e3;cursor:pointer;transition:background .15s}
html body .bxx-alarm i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .15s}
html body .bxx-alarm-card.is-on .bxx-alarm{background:#0a66e8}
html body .bxx-alarm-card.is-on .bxx-alarm i{transform:translateX(18px)}
html body .bxx-alarm-card.is-on .bxx-alarm-card-icon{background:#0a66e8;color:#fff}
html body .bxx-alarm-pill{display:inline-flex;align-items:center;gap:6px;margin-right:auto;padding:6px 12px;border:1px solid #aac9e6;border-radius:999px;background:#fff;color:#0054d7;font:650 13px/1 'Segoe UI',Arial,sans-serif;cursor:pointer;white-space:nowrap}
html body .bxx-alarm-pill:hover{background:#eaf2ff}
html body .bxx-alarm-pill.is-on{background:#0a66e8;border-color:#0a66e8;color:#fff}
html body .bxx-alarm-row{display:flex;align-items:center;gap:10px;width:100%;margin:8px 0 0;padding:10px 12px;border:1px solid #cfe0f5;border-radius:12px;background:#f3f8ff;color:#0053bb;font:inherit;text-align:left;cursor:pointer}
html body .bxx-alarm-row[hidden]{display:none}
html body .bxx-alarm-row span{flex:1;min-width:0;color:#080f44;font-size:14px}
html body .bxx-alarm-row small{color:#405f8f;font-size:12px}
html body .bxx-alarm-row i{position:relative;flex:0 0 40px;width:40px;height:24px;border-radius:999px;background:#c3d2e3}
html body .bxx-alarm-row i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .15s}
html body .bxx-alarm-row.is-on i{background:#0a66e8}
html body .bxx-alarm-row.is-on i::after{transform:translateX(16px)}
html body .bxx-alarm-dialog{max-width:min(460px,calc(100vw - 24px))}
html body .bxx-alarm-dialog h2{display:flex;align-items:center;gap:10px;padding-right:36px}
html body .bxx-alarm-h-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#dceeff;color:#0053bb}
html body .bxx-alarm-what{display:flex;flex-direction:column;gap:2px;margin:4px 0 10px;padding:10px 12px;border:1px solid #e4eaf2;border-radius:10px;background:#f8fbff}
html body .bxx-alarm-what strong{font:700 16px/1.3 'Segoe UI',Arial,sans-serif;color:#0c1f44}
html body .bxx-alarm-what span{font:400 13px/1.4 'Segoe UI',Arial,sans-serif;color:#6b7a90}
html body .konto-hint p.bxx-alarm-now{margin:0 0 10px;font-size:14px}
html body .bxx-alarm-now b{font:900 20px/1 'Segoe UI',Arial,sans-serif;color:#0f6b3a}
html body .bxx-alarm-mode{margin:0 0 12px;padding:0;border:0}
html body .bxx-alarm-mode legend{margin:0 0 6px;font:700 13px/1.3 'Segoe UI',Arial,sans-serif;color:#33465c}
html body .bxx-alarm-mode label{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 6px;padding:9px 10px;border:1px solid #dbe5f0;border-radius:9px;font:400 14px/1.3 'Segoe UI',Arial,sans-serif;color:#0c1f44;cursor:pointer}
html body .bxx-alarm-mode label:has(input:checked){border-color:#0a66e8;background:#f0f6ff}
html body .bxx-alarm-mode small{color:#6b7a90}
html body .bxx-alarm-target{display:inline-flex;align-items:center;gap:4px;margin-left:auto}
html body .bxx-alarm-target input{width:92px;padding:6px 8px;border:1px solid #c7d5e3;border-radius:7px;font:600 14px/1.2 'Segoe UI',Arial,sans-serif}
html body .konto-hint p.bxx-alarm-state{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#e9f8ef;color:#0f6b3a;font-weight:600}
html body .bxx-alarm-dialog .legal-contact-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Flug + Hotel: Zusammenfassung ragt zur Hälfte in den Hero (Sasan 29.09., wie Hotelseite) */
@media(min-width:561px){html body[data-kind=paket].has-flight-search main.page-travel-overview>.shell.flight-page-main{position:relative;margin-top:-46px}}

/* Pflichtfeld-Sprechblase (Sasan 29.09.): kleine dunkle Blase mit Pfeil am ersten fehlenden Feld (konto.js, window.bxxFieldHint). */
.bxx-field-hint{position:fixed;z-index:2147483000;left:0;top:0;display:flex;align-items:center;gap:9px;max-width:min(320px,calc(100vw - 16px));padding:10px 14px 10px 10px;border-radius:12px;background:#062e69;color:#fff;font:600 14px/1.3 "BXX DM Sans","Segoe UI",system-ui,sans-serif;box-shadow:0 10px 28px rgba(6,46,105,.28),0 2px 6px rgba(0,0,0,.12);pointer-events:none;opacity:0;transform:translateY(6px) scale(.97);transform-origin:var(--hint-arrow,24px) 100%;transition:opacity .2s ease,transform .2s ease}
.bxx-field-hint[hidden]{display:none}
.bxx-field-hint.is-visible{opacity:1;transform:none}
.bxx-field-hint.is-below{transform:translateY(-6px) scale(.97);transform-origin:var(--hint-arrow,24px) 0}
.bxx-field-hint.is-below.is-visible{transform:none}
.bxx-field-hint::after{content:"";position:absolute;left:calc(var(--hint-arrow,24px) - 7px);bottom:-6px;width:14px;height:14px;background:#062e69;border-radius:0 0 3px 0;transform:rotate(45deg)}
.bxx-field-hint.is-below::after{bottom:auto;top:-6px;border-radius:3px 0 0 0}
.bxx-field-hint-mark{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#fd6318;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:800;line-height:1}
.bxx-field-hint-text{position:relative;z-index:1}
@media (prefers-reduced-motion:reduce){.bxx-field-hint{transition:none}}

/* Bildfilter (Sasan 29.09.): die KI-Zielbilder wirkten grell und überscharf – etwas weniger Sättigung/Kontrast, leicht wärmer,
   damit sie natürlicher aussehen. Gilt für Zielbilder (dest--*), Inspirations-Kacheln und das „Gut zu wissen“-Bild. */
img[src*="/experience-assets/dest--"],img[src*="home-insp-"],img[src*="deals-hero-v1"]{filter:saturate(.8) contrast(.93) brightness(1.03) sepia(.07)}

/* Flughafen-Auswahl: Kästchen zum Anhaken wie KAYAK statt „+“ (Sasan 29.09., Release .235) */
html body .airport-choice .airport-tick{width:22px;height:22px;box-sizing:border-box;justify-self:center;display:grid;place-items:center;border:1.5px solid #9eafbb;border-radius:5px;background:#fff;font-size:0;line-height:0;color:transparent;transition:background-color .15s,border-color .15s}
html body .airport-choice:hover .airport-tick{border-color:#062e69}
html body .airport-choice[aria-selected="true"] .airport-tick{background:#0a66e8;border-color:#0a66e8}
html body .airport-choice[aria-selected="true"] .airport-tick::after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}

/* Flug + Hotel und Hotels: Gesamtpreis mit Reisenden-Icons (Sasan 29.09.: Erwachsene/Kinder/Babys als Icon, Text im Tooltip; .hotel-results = alle Ergebnisseiten) */
.hotel-results .pk-pax{position:relative;display:inline-flex;align-items:center;gap:7px;margin-left:4px;vertical-align:middle;cursor:help;outline:none;-webkit-tap-highlight-color:transparent}
.hotel-results .pk-pax-i{display:inline-flex;align-items:center;gap:2px;font-size:12.5px;font-weight:800;color:var(--ink)}
.hotel-results .pk-pax-i .hi{width:16px;height:16px;stroke-width:2}
.hotel-results .pk-pax::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 7px);z-index:600;transform:translateX(-50%);padding:7px 11px;border-radius:7px;background:var(--ink);color:#fff;font-size:12px;font-weight:600;line-height:1.45;white-space:pre-line;text-align:left;min-width:max-content;box-shadow:0 6px 18px rgba(0,0,0,.22);opacity:0;pointer-events:none;transition:opacity .12s}
.hotel-results .pk-pax::before{content:"";position:absolute;left:50%;bottom:calc(100% + 2px);transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink);opacity:0;pointer-events:none;transition:opacity .12s}
.hotel-results .pk-pax:hover::after,.hotel-results .pk-pax:focus-visible::after,.hotel-results .pk-pax.is-open::after,.hotel-results .pk-pax:hover::before,.hotel-results .pk-pax:focus-visible::before,.hotel-results .pk-pax.is-open::before{opacity:1}

/* Flug + Hotel: Airline-Kürzel in der Streckenzeile mit HTML-Tooltip (Logo + Name), Preisinfo-Icon mit Aufschlüsselung (Sasan 29.09.) */
.package-results .pk-al{position:relative;display:inline-flex;align-items:center;min-height:18px;padding:0 6px;border:1px solid var(--pk-line,#e4eaf2);border-radius:5px;background:#f4f7fb;font-size:11px;font-weight:800;letter-spacing:.3px;color:var(--ink);cursor:help;outline:none;-webkit-tap-highlight-color:transparent}
.package-results .pk-al-tip{position:absolute;left:50%;bottom:calc(100% + 7px);z-index:600;transform:translateX(-50%);display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:7px;background:var(--ink);color:#fff;font-size:12px;font-weight:600;letter-spacing:0;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.22);opacity:0;pointer-events:none;transition:opacity .12s}
.package-results .pk-al-tip::after{content:"";position:absolute;left:50%;top:100%;transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink)}
.package-results .pk-al-tip img{height:20px;width:auto;max-width:70px;object-fit:contain;background:#fff;border-radius:4px;padding:2px}
.package-results .pk-al:hover .pk-al-tip,.package-results .pk-al:focus-visible .pk-al-tip,.package-results .pk-al.is-open .pk-al-tip{opacity:1}
.hotel-results .pk-price-info{position:relative;display:inline-grid;place-items:center;width:18px;height:18px;margin-left:5px;vertical-align:middle;border-radius:50%;color:#0a66e8;cursor:help;outline:none;-webkit-tap-highlight-color:transparent}
.hotel-results .pk-price-info .hi{width:16px;height:16px;stroke-width:2}
.hotel-results .pk-price-info::after{content:attr(data-tip);position:absolute;right:0;bottom:calc(100% + 7px);z-index:600;padding:7px 11px;border-radius:7px;background:var(--ink);color:#fff;font-size:12px;font-weight:600;line-height:1.5;white-space:pre-line;text-align:left;min-width:max-content;box-shadow:0 6px 18px rgba(0,0,0,.22);opacity:0;pointer-events:none;transition:opacity .12s}
.hotel-results .pk-price-info::before{content:"";position:absolute;left:50%;bottom:calc(100% + 2px);transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink);opacity:0;pointer-events:none;transition:opacity .12s}
.hotel-results .pk-price-info:hover::after,.hotel-results .pk-price-info:focus-visible::after,.hotel-results .pk-price-info.is-open::after,.hotel-results .pk-price-info:hover::before,.hotel-results .pk-price-info:focus-visible::before,.hotel-results .pk-price-info.is-open::before{opacity:1}
.package-results .package-partner[hidden]{display:none}
/* Sasan: Tooltip mit Airline-Logo auch, wenn man irgendwo auf den Hinflug-/Rückflug-Block kommt */
.package-results .package-leg{position:relative}
.package-results .package-leg:hover .pk-al:first-of-type .pk-al-tip{opacity:1}

/* Flug + Hotel: Block bis zur rechten Kante der Kopfzeile (Sasan 29.09.: „muss mehr aufgehen, ganz nach rechts“) */
@media(min-width:1101px){html body[data-kind=paket].has-flight-search .shell.flight-page-main{width:min(1680px,calc(100% - 48px));max-width:calc(100% - 48px)}}

/* Flug + Hotel: Vorschau-Karten (Sasan 29.09., Release .247) – Hotels sofort zeigen, Preisspalte und Flugzeilen als graue, pulsierende
   Platzhalter, bis Go mit dem Stand „complete“ die endgültigen Pakete liefert (kein vorläufiger Preis, ein Flug für alle Karten). */
@keyframes pk-pending-pulse{0%,100%{opacity:.55}50%{opacity:1}}
.package-results .pk-pending-bar{display:block;height:12px;border-radius:6px;background:#e4eaf2;animation:pk-pending-pulse 1.8s ease-in-out infinite}
.package-results .package-price-pending{justify-content:center;background:#fbfcfe}
.package-results .pk-pending{display:grid;gap:10px;justify-items:end;margin:0}
.package-results .pk-pending .is-price{width:64%;height:26px;border-radius:8px}
.package-results .pk-pending .is-total{width:88%;height:12px}
.package-results .pk-pending .is-button{width:100%;height:38px;border-radius:9px;margin-top:6px;background:#eef2f6}
.package-results .pk-pending small{justify-self:center;margin-top:4px;font-size:11.5px;font-weight:600;color:var(--pk-muted,#5b6b80)}
.package-results .package-legs-pending .pk-pending-bar{height:11px}
.package-results .package-legs-pending .is-date{width:56px;margin-left:auto}
.package-results .package-legs-pending .is-port{width:72px;height:14px}
.package-results .package-legs-pending .is-mid{width:100%;min-width:60px;height:6px}
.package-results .package-legs-pending .package-leg-row{gap:10px}
@media(max-width:900px){.package-results .package-price-pending{min-height:74px}.package-results .pk-pending{width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:start}.package-results .pk-pending .is-price{width:120px;grid-column:1}.package-results .pk-pending .is-total{width:160px;grid-column:1}.package-results .pk-pending .is-button{width:120px;grid-column:2;grid-row:1/3;margin:0}.package-results .pk-pending small{grid-column:1/-1;justify-self:start}}

/* Hotel-Ergebnisseite: Preisdarstellung wie Flug + Hotel (Sasan 29.09., Release .248) – unter dem Gesamtpreis Reisenden-Icons,
   Zimmerzahl (Bett-Icon) und ⓘ mit Nächten, Zimmern, Gästen, Preis pro Nacht; Werte aus Go (HotelResult.PriceInfo). */
.hotel-results .hotel-deal-pax{display:flex;align-items:center;justify-content:center;gap:10px;margin:4px 0 0;line-height:1}
.hotel-results .hotel-deal-pax .pk-pax{margin-left:0}.hotel-results .hotel-deal-pax .pk-price-info{margin-left:0}
.hotel-results .hotel-deal-pax .pk-pax::after{left:auto;right:0;transform:none}.hotel-results .hotel-deal-pax .pk-pax::before{left:auto;right:6px;transform:none}
@media(max-width:1100px){html body .hotel-card-deal .hotel-deal-pax{justify-content:flex-end;margin:2px 0 0}}
@media(max-width:900px){html body .hotel-card-deal .hotel-deal-pax{justify-content:flex-start;margin:0}}
@media(max-width:560px){html body .hotel-card-deal{grid-template-areas:"badge badge" "ab button" "price button" "unit unit" "pax pax" "more more"}html body .hotel-card-deal .hotel-deal-pax{grid-area:pax;justify-content:flex-start;margin:4px 0 0}}
.hotel-results .hotel-page-more[hidden]{display:none}

/* Flug + Hotel: Fortschritt wie bei KAYAK (Sasan 29.09., Release .250) – ein durchgehender Balken, der stetig vorrückt, plus Statuszeile mit Spinner */
.package-results .search-progress.pk-progress{margin:0 0 14px;padding:0;background:none;border:0;box-shadow:none}
.package-results .pk-progress-track{height:4px;border-radius:2px;background:#e4eaf2;overflow:hidden}
.package-results .pk-progress-bar{position:relative;height:100%;width:0;border-radius:2px;background:linear-gradient(90deg,#0a66e8,#3b8ef3);transition:width .7s cubic-bezier(.22,1,.36,1)}
.package-results .pk-progress-bar::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);transform:translateX(-100%);animation:search-phase-flow 1.4s linear infinite}
.package-results .search-progress[data-done] .pk-progress-bar::after{animation:none}
.package-results .pk-progress-label{display:flex;align-items:center;gap:9px;margin-top:9px;font-size:13.5px;font-weight:600;color:var(--pk-muted,#5b6b80)}
.package-results .pk-progress-label i{flex:0 0 auto;width:15px;height:15px;border:2px solid #cfdcee;border-top-color:#0a66e8;border-radius:50%;animation:pk-spin .9s linear infinite}
@keyframes pk-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.package-results .pk-progress-bar::after,.package-results .pk-progress-label i{animation:none}}
/* Fortschritt: drei Schritte mit Live-Zahlen (Hotels · Flüge · Pakete) + wechselnde Statuszeile (Sasan 29.09.: „zeigen, was gerade passiert“) */
.package-results .pk-progress-steps{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:10px}
.package-results .pk-step{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--pk-muted,#5b6b80)}
.package-results .pk-step b{color:var(--ink);font-weight:800}
.package-results .pk-step i{flex:0 0 auto;width:15px;height:15px;border-radius:50%;border:2px solid #cfdcee;box-sizing:border-box;position:relative}
.package-results .pk-step[data-state=active] i{border-top-color:#0a66e8;animation:pk-spin .9s linear infinite}
.package-results .pk-step[data-state=done] i{border-color:#19a05a;background:#19a05a}
.package-results .pk-step[data-state=done] i::after{content:"";position:absolute;left:4px;top:1px;width:3px;height:7px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.package-results .pk-step[data-state=pending]{opacity:.6}
.package-results .pk-progress-label span{display:inline-block;transition:opacity .3s,transform .3s}
.package-results .pk-progress-label span.is-swap{opacity:0;transform:translateY(4px)}
.package-results .pk-json{margin-left:6px;padding:0 6px;min-height:22px;border:1px solid var(--pk-line,#e4eaf2);border-radius:6px;background:#fff;color:#0a66e8;font:800 11px/1 "Segoe UI",Arial,sans-serif;letter-spacing:1px;cursor:pointer}
.package-results .pk-json:hover{background:#f4f7fb}
.pk-json-dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:0;border:0;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.pk-json-dialog::backdrop{background:rgba(6,46,105,.45)}
.pk-json-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #e4eaf2;font-size:14px}.pk-json-head b{flex:1 1 auto;color:#062e69}
.pk-json-head button{padding:6px 12px;border:1px solid #cfdcee;border-radius:7px;background:#fff;font:700 12.5px "Segoe UI",Arial,sans-serif;color:#0a66e8;cursor:pointer}.pk-json-head button:hover{background:#f4f7fb}
.pk-json-pre{margin:0;padding:14px 16px;max-height:calc(100vh - 120px);overflow:auto;font:12.5px/1.5 Consolas,Menlo,monospace;color:#1c2b3a;background:#fbfcfe;white-space:pre-wrap;word-break:break-word}
@media(max-width:560px){.package-results .pk-progress-steps{gap:6px 14px}.package-results .pk-step{font-size:12px}.package-results .pk-step small{display:none}}
/* Beim Laden ohne Karten: Platzhalter über die volle Breite (die Filterspalte ist ausgeblendet, sonst rutschte .package-main in die 224-px-Spalte) */
html body .package-results[data-search-state=loading]:not(:has(.package-card)) .package-layout{display:block}
html body .package-results[data-search-state=loading]:not(:has(.package-card)) .package-main{max-width:900px}
/* Paketkarte: Aufschlüsselung sichtbar unter dem Gesamtpreis (Sasan 29.09.: „du hast doch Platz“) */
.package-results .package-price-parts{display:flex;flex-wrap:wrap;gap:4px 12px;margin:2px 0 0;font-size:12px;color:var(--pk-muted,#5b6b80)}
.package-results .package-price-parts span{display:inline-flex;align-items:center;gap:4px}.package-results .package-price-parts .hi{width:13px;height:13px;stroke-width:2}.package-results .package-price-parts b{color:var(--ink);font-weight:800}
/* Flug + Hotel: Fortschritt als drei Kacheln mit Icon und Zähler (Sasan 29.09., Release .255: „visuell sehe ich nichts“) – Balken mit Flugzeug an der Spitze */
.package-results .search-progress.pk-progress{margin:0 0 16px;padding:16px 18px 14px;background:#fff;border:1px solid var(--pk-line,#e4eaf2);border-radius:14px;box-shadow:0 2px 12px rgba(6,46,105,.06)}
.package-results .pk-progress-steps{display:flex;align-items:center;gap:0;margin:0 0 14px}
.package-results .pk-step{flex:1 1 0;display:flex;align-items:center;gap:12px;min-width:0;padding:10px 12px;border:1px solid var(--pk-line,#e4eaf2);border-radius:12px;background:#fbfcfe;transition:border-color .35s,box-shadow .35s,background .35s,opacity .35s}
.package-results .pk-step[data-state=active]{border-color:#0a66e8;background:#fff;box-shadow:0 0 0 4px rgba(10,102,232,.12);animation:pk-step-pulse 1.8s ease-in-out infinite}
.package-results .pk-step[data-state=done]{border-color:#bfe6cf;background:#f4fbf6}
.package-results .pk-step[data-state=pending]{opacity:.55}
@keyframes pk-step-pulse{0%,100%{box-shadow:0 0 0 4px rgba(10,102,232,.12)}50%{box-shadow:0 0 0 7px rgba(10,102,232,.05)}}
.package-results .pk-step-icon{position:relative;flex:0 0 auto;width:46px;height:46px;border-radius:50%;background:#e9f1fd;color:#0a66e8;display:grid;place-items:center}
.package-results .pk-step-icon .hotel-field-icon{display:contents}.package-results .pk-step-icon .hi{width:24px;height:24px}
.package-results .pk-step-ring{position:absolute;inset:-4px;border-radius:50%;border:2.5px solid transparent;border-top-color:#0a66e8;display:none}
.package-results .pk-step[data-state=active] .pk-step-ring{display:block;animation:pk-spin 1s linear infinite}
.package-results .pk-step-check{display:none;position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;border-radius:50%;background:#19a05a;border:2px solid #fff;box-sizing:border-box}
.package-results .pk-step-check::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.package-results .pk-step[data-state=done] .pk-step-check{display:block}.package-results .pk-step[data-state=done] .pk-step-icon{background:#e3f5ea;color:#19a05a}
.package-results .pk-step-body{display:flex;flex-direction:column;min-width:0;line-height:1.15}
.package-results .pk-step-body b{font-size:11.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--pk-muted,#5b6b80)}
.package-results .pk-step-num{font-size:26px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.5px}
.package-results .pk-step-body small{font-size:12.5px;color:var(--pk-muted,#5b6b80);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.package-results .pk-step-link{display:block;flex:0 0 22px;height:2px;background:var(--pk-line,#e4eaf2)}
.package-results .pk-progress-track{height:6px;border-radius:3px;overflow:visible;background:#e4eaf2}
.package-results .pk-progress-bar{border-radius:3px;overflow:visible}
.package-results .pk-progress-plane{position:absolute;right:-9px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:#fff;border:2px solid #0a66e8;color:#0a66e8;display:grid;place-items:center;box-shadow:0 2px 6px rgba(10,102,232,.3)}
.package-results .pk-progress-plane .hotel-field-icon{display:contents}.package-results .pk-progress-plane .hi{width:15px;height:15px;transform:rotate(0)}
.package-results .search-progress[data-done] .pk-progress-plane{display:none}
.package-results .pk-progress-label{margin-top:12px}
@media(max-width:900px){.package-results .pk-step{padding:8px 10px;gap:9px}.package-results .pk-step-icon{width:38px;height:38px}.package-results .pk-step-icon .hi{width:20px;height:20px}.package-results .pk-step-num{font-size:21px}.package-results .pk-step-link{flex-basis:12px}}
@media(max-width:560px){.package-results .search-progress.pk-progress{padding:12px 12px 10px}.package-results .pk-progress-steps{gap:6px}.package-results .pk-step{padding:8px;gap:8px;flex-direction:column;align-items:flex-start}.package-results .pk-step-body small{display:none}.package-results .pk-step-link{display:none}.package-results .pk-step-body b{font-size:10.5px}.package-results .pk-step-num{font-size:20px}}
@media(prefers-reduced-motion:reduce){.package-results .pk-step[data-state=active]{animation:none}.package-results .pk-step-ring{animation:none!important}}
/* Karte: ⓘ ist ein Knopf (öffnet die Preisaufstellung) */
.package-results .pk-price-info{appearance:none;border:0;background:none;padding:0;margin-left:4px;color:#0a66e8;cursor:pointer;display:inline-flex;vertical-align:middle;border-radius:50%}
.package-results .pk-price-info:hover{background:#e9f1fd}.package-results .pk-price-info .hi{width:17px;height:17px}
/* Preisaufstellung (ⓘ) als Pop-up wie eine Rechnung (Sasan 29.09.: „richtig zeigen, wie man eine richtige Rechnung zeigt“) */
.pk-bill-dialog{width:min(760px,calc(100vw - 24px));max-height:calc(100vh - 32px);padding:0;border:0;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden;font-family:"Segoe UI",Arial,sans-serif;color:#1c2b3a}
.pk-bill-dialog::backdrop{background:rgba(6,46,105,.5)}
.pk-bill{max-height:calc(100vh - 32px);overflow:auto;background:#fff}
.pk-bill-head{display:flex;align-items:flex-start;gap:12px;padding:18px 22px 14px;background:linear-gradient(135deg,#062e69,#0a66e8);color:#fff}
.pk-bill-title{flex:1 1 auto;min-width:0}.pk-bill-title b{display:block;font-size:11.5px;letter-spacing:1px;text-transform:uppercase;opacity:.85}
.pk-bill-title h3{margin:4px 0 2px;font-size:22px;line-height:1.15;font-weight:800}.pk-bill-title p{margin:0;font-size:13px;opacity:.9}
.pk-bill-close{flex:0 0 auto;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;cursor:pointer;display:grid;place-items:center}.pk-bill-close:hover{background:rgba(255,255,255,.3)}.pk-bill-close .hotel-field-icon{display:contents}.pk-bill-close .hi{width:18px;height:18px}
.pk-bill-trip{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:12px 22px;background:#f4f7fb;border-bottom:1px solid #e4eaf2;font-size:13.5px;font-weight:600;color:#33475f}
.pk-bill-trip>span{display:inline-flex;align-items:center;gap:6px}.pk-bill-trip .hotel-field-icon{display:contents}.pk-bill-trip .hi{width:17px;height:17px;color:#0a66e8}
.pk-bill-part{padding:16px 22px 6px;border-bottom:1px solid #e4eaf2}
.pk-bill-part h4{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:16px;font-weight:800;color:#062e69}.pk-bill-part h4 .hotel-field-icon{display:contents}.pk-bill-part h4 .hi{width:20px;height:20px;color:#0a66e8}
.pk-bill-prov{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#5b6b80}.pk-bill-prov img{height:18px;max-width:90px;object-fit:contain}.pk-bill-prov b{color:#1c2b3a}
.pk-bill-legs{display:grid;gap:6px;margin:0 0 10px}
.pk-bill-leg{display:grid;grid-template-columns:78px 110px 1fr;gap:4px 12px;align-items:baseline;padding:8px 12px;background:#fbfcfe;border:1px solid #e9eef5;border-radius:10px;font-size:13.5px}
.pk-bill-leg b{color:#062e69}.pk-bill-leg strong{font-size:15px;font-weight:800}.pk-bill-leg>span:last-child{grid-column:1/-1;font-size:12.5px;color:#5b6b80}
.pk-bill-lines{margin:0}.pk-bill-row{display:flex;align-items:flex-start;gap:16px;padding:10px 0;border-top:1px dashed #e4eaf2}.pk-bill-row:first-child{border-top:0}
.pk-bill-row dt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}.pk-bill-row dt>span{font-size:15px;font-weight:700}.pk-bill-row dt small{font-size:12.5px;color:#5b6b80;line-height:1.35}
.pk-bill-row dd{margin:0;flex:0 0 auto;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.pk-bill-row.is-sub{padding:6px 0 6px 18px;border-top:0}.pk-bill-row.is-sub dt>span{font-size:13.5px;font-weight:600;color:#33475f}.pk-bill-row.is-sub dd{font-size:14px;font-weight:700;color:#33475f}
.pk-bill-row.is-perk dt>span{color:#19a05a}
.pk-bill-more{margin:4px 0 10px 18px;font-size:13px}.pk-bill-more summary{cursor:pointer;color:#0a66e8;font-weight:700}
.pk-bill-table{width:100%;border-collapse:collapse;margin-top:6px}.pk-bill-table td{padding:5px 8px;border-top:1px solid #eef2f7;font-size:12.5px;vertical-align:top}.pk-bill-table td.num{text-align:right;font-weight:700;white-space:nowrap}.pk-bill-table tr.is-taken td{background:#f4fbf6;font-weight:700}
.pk-bill-total{padding:14px 22px;background:#f4f7fb}
.pk-bill-total .pk-bill-row.is-total dt>span{font-size:17px;font-weight:800;color:#062e69}.pk-bill-total .pk-bill-row.is-total dd{font-size:26px;font-weight:900;color:#062e69}
.pk-bill-total .pk-bill-row.is-per{border-top:1px solid #d8e1ee;padding-top:10px}.pk-bill-total .pk-bill-row.is-per dd{font-size:20px;color:#e8710a}
.pk-bill-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 22px 16px}.pk-bill-foot small{flex:1 1 300px;font-size:12px;color:#5b6b80;line-height:1.4}
.pk-bill-actions{display:flex;gap:8px;margin-left:auto}.pk-bill-actions button{padding:9px 14px;border-radius:9px;font:700 13.5px "Segoe UI",Arial,sans-serif;cursor:pointer}
.pk-bill-json{border:1px solid #cfdcee;background:#fff;color:#0a66e8}.pk-bill-json:hover{background:#f4f7fb}.pk-bill-ok{border:0;background:#0a66e8;color:#fff}.pk-bill-ok:hover{background:#0857c8}
@media(max-width:560px){.pk-bill-dialog{width:100vw;max-height:100vh;border-radius:0}.pk-bill{max-height:100vh}.pk-bill-head,.pk-bill-trip,.pk-bill-part,.pk-bill-total,.pk-bill-foot{padding-left:14px;padding-right:14px}.pk-bill-leg{grid-template-columns:70px 1fr}.pk-bill-leg strong{grid-column:1/-1}.pk-bill-row dd{font-size:15px}.pk-bill-total .pk-bill-row.is-total dd{font-size:22px}}
/* „Flug ändern“: „{ }“ je Flug */
.package-picker-price .pk-json{margin:6px 0 0;align-self:flex-end}

/* Mietwagen: Fortschritt als drei Kacheln wie Flug + Hotel (16. Chat) – Kopie der Paket-Regeln, eigener Geltungsbereich .car-progress */
.hotel-results .car-progress .pk-progress-track{height:4px;border-radius:2px;background:#e4eaf2;overflow:hidden}
.hotel-results .car-progress .pk-progress-bar{position:relative;height:100%;width:0;border-radius:2px;background:linear-gradient(90deg,#0a66e8,#3b8ef3);transition:width .7s cubic-bezier(.22,1,.36,1)}
.hotel-results .car-progress .pk-progress-bar::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);transform:translateX(-100%);animation:search-phase-flow 1.4s linear infinite}
.hotel-results .search-progress.car-progress[data-done] .pk-progress-bar::after{animation:none}
.hotel-results .car-progress .pk-progress-label{display:flex;align-items:center;gap:9px;margin-top:9px;font-size:13.5px;font-weight:600;color:var(--pk-muted,#5b6b80)}
.hotel-results .car-progress .pk-progress-label i{flex:0 0 auto;width:15px;height:15px;border:2px solid #cfdcee;border-top-color:#0a66e8;border-radius:50%;animation:pk-spin .9s linear infinite}
@media(prefers-reduced-motion:reduce){.hotel-results .car-progress .pk-progress-bar::after,.hotel-results .car-progress .pk-progress-label i{animation:none}}
.hotel-results .car-progress .pk-progress-steps{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:10px}
.hotel-results .car-progress .pk-progress-label span{display:inline-block;transition:opacity .3s,transform .3s}
.hotel-results .car-progress .pk-progress-label span.is-swap{opacity:0;transform:translateY(4px)}
.hotel-results .search-progress.car-progress.pk-progress{margin:0 0 16px;padding:16px 18px 14px;background:#fff;border:1px solid var(--pk-line,#e4eaf2);border-radius:14px;box-shadow:0 2px 12px rgba(6,46,105,.06)}
.hotel-results .car-progress .pk-progress-steps{display:flex;align-items:center;gap:0;margin:0 0 14px}
.hotel-results .car-progress .pk-step{flex:1 1 0;display:flex;align-items:center;gap:12px;min-width:0;padding:10px 12px;border:1px solid var(--pk-line,#e4eaf2);border-radius:12px;background:#fbfcfe;transition:border-color .35s,box-shadow .35s,background .35s,opacity .35s}
.hotel-results .car-progress .pk-step[data-state=active]{border-color:#0a66e8;background:#fff;box-shadow:0 0 0 4px rgba(10,102,232,.12);animation:pk-step-pulse 1.8s ease-in-out infinite}
.hotel-results .car-progress .pk-step[data-state=done]{border-color:#bfe6cf;background:#f4fbf6}
.hotel-results .car-progress .pk-step[data-state=pending]{opacity:.55}
@keyframes pk-step-pulse{0%,100%{box-shadow:0 0 0 4px rgba(10,102,232,.12)}50%{box-shadow:0 0 0 7px rgba(10,102,232,.05)}}
.hotel-results .car-progress .pk-step-icon{position:relative;flex:0 0 auto;width:46px;height:46px;border-radius:50%;background:#e9f1fd;color:#0a66e8;display:grid;place-items:center}
.hotel-results .car-progress .pk-step-icon .hotel-field-icon{display:contents}.hotel-results .car-progress .pk-step-icon .hi{width:24px;height:24px}
.hotel-results .car-progress .pk-step-ring{position:absolute;inset:-4px;border-radius:50%;border:2.5px solid transparent;border-top-color:#0a66e8;display:none}
.hotel-results .car-progress .pk-step[data-state=active] .pk-step-ring{display:block;animation:pk-spin 1s linear infinite}
.hotel-results .car-progress .pk-step-check{display:none;position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;border-radius:50%;background:#19a05a;border:2px solid #fff;box-sizing:border-box}
.hotel-results .car-progress .pk-step-check::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.hotel-results .car-progress .pk-step[data-state=done] .pk-step-check{display:block}.hotel-results .car-progress .pk-step[data-state=done] .pk-step-icon{background:#e3f5ea;color:#19a05a}
.hotel-results .car-progress .pk-step-body{display:flex;flex-direction:column;min-width:0;line-height:1.15}
.hotel-results .car-progress .pk-step-body b{font-size:11.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--pk-muted,#5b6b80)}
.hotel-results .car-progress .pk-step-num{font-size:26px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.5px}
.hotel-results .car-progress .pk-step-body small{font-size:12.5px;color:var(--pk-muted,#5b6b80);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hotel-results .car-progress .pk-step-link{display:block;flex:0 0 22px;height:2px;background:var(--pk-line,#e4eaf2)}
.hotel-results .car-progress .pk-progress-track{height:6px;border-radius:3px;overflow:visible;background:#e4eaf2}
.hotel-results .car-progress .pk-progress-bar{border-radius:3px;overflow:visible}
.hotel-results .car-progress .pk-progress-plane{position:absolute;right:-9px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:#fff;border:2px solid #0a66e8;color:#0a66e8;display:grid;place-items:center;box-shadow:0 2px 6px rgba(10,102,232,.3)}
.hotel-results .car-progress .pk-progress-plane .hotel-field-icon{display:contents}.hotel-results .car-progress .pk-progress-plane .hi{width:15px;height:15px;transform:rotate(0)}
.hotel-results .search-progress.car-progress[data-done] .pk-progress-plane{display:none}
.hotel-results .car-progress .pk-progress-label{margin-top:12px}
@media(max-width:900px){.hotel-results .car-progress .pk-step{padding:8px 10px;gap:9px}.hotel-results .car-progress .pk-step-icon{width:38px;height:38px}.hotel-results .car-progress .pk-step-icon .hi{width:20px;height:20px}.hotel-results .car-progress .pk-step-num{font-size:21px}.hotel-results .car-progress .pk-step-link{flex-basis:12px}}
@media(max-width:560px){.hotel-results .search-progress.car-progress.pk-progress{padding:12px 12px 10px}.hotel-results .car-progress .pk-progress-steps{gap:6px}.hotel-results .car-progress .pk-step{padding:8px;gap:8px;flex-direction:column;align-items:flex-start}.hotel-results .car-progress .pk-step-body small{display:none}.hotel-results .car-progress .pk-step-link{display:none}.hotel-results .car-progress .pk-step-body b{font-size:10.5px}.hotel-results .car-progress .pk-step-num{font-size:20px}}
@media(prefers-reduced-motion:reduce){.hotel-results .car-progress .pk-step[data-state=active]{animation:none}.hotel-results .car-progress .pk-step-ring{animation:none!important}}
/* Mietwagen: Zeile unter dem Preis = Mietdauer (Kalender + Tage) und ⓘ-Knopf für die Preisaufstellung */
.hotel-results button.pk-price-info[data-car-bill]{appearance:none;border:0;background:none;padding:0;cursor:pointer;display:inline-grid}
.hotel-results button.pk-price-info[data-car-bill]::after,.hotel-results button.pk-price-info[data-car-bill]::before{display:none}
.hotel-results button.pk-price-info[data-car-bill]:hover{background:#e9f1fd}
.car-bill-dialog .pk-bill-row.is-fee dd{color:#b45309}
/* Mietwagen: Mietdauer + ⓘ auf dem Handy eigene Zeile (Sasans Screenshot: rutschte unter „Zum Angebot“) */
@media(max-width:560px){html body .car-card .hotel-card-deal{grid-template-areas:"prov prov" "price button" "unit button" "pax pax" "pay pay"}html body .car-card .car-deal-pax{grid-area:pax;justify-content:flex-start;margin:4px 0 0}}

/* Handy ≤ 560 px, Vollbild-Auswahl der Orts-/Flughafenfelder in allen Masken (Sasan 30.09.): Kopf „… wählen / Fertig“ lag unter der Kopfzeile (Stacking-Kontext der Seite), Hotel-/Mietwagen-/Paket-Vorschläge rutschten ans untere Ende hinter die Tastatur, Eingaben unter 16 px lösten auf dem iPhone den Seitenzoom aus */
@media(max-width:560px){
  html body.airport-picker-active .site-header{visibility:hidden}
  html body.airport-picker-active *:has(.is-picker-open){z-index:auto!important}
  html body .compact-search .airport-field.is-picker-open{z-index:1300}
  html body .hotel-search .airport-field.is-picker-open .hotel-field-text{flex:none!important;height:auto!important}
  html body .hotel-search .airport-field.is-picker-open .airport-panel{flex:1 1 0!important;min-height:0;overflow-y:auto}
  html body .hotel-search input:not([type=checkbox]):not([type=radio]):not([type=range]),html body .compact-search input.airport-entry{font-size:16px!important}
}
/* Handy: Ort-Icon in der Vorschlagsliste überschnitt den Namen (Spalte 22 px bei 48-px-Kachel, Sasan 30.09.) */
@media(max-width:560px){html body .hotel-search.hotel-search .airport-choice.hotel-choice,html body .hotel-search.hotel-search .is-picker-open .airport-choice.hotel-choice{grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center}}
/* Handy ≤ 560 px, Flugmaske wie Flug + Hotel (Sasan 30.09.): Abflughafen oben über die ganze Breite, Zielflughafen darunter, Tauschknopf rechts mittig über beiden Feldern; Felder weiß, Beschriftung „Abflughafen“/„Zielflughafen“ linksbündig */
@media(max-width:560px){
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;row-gap:8px;column-gap:0;position:relative}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open){grid-column:1;min-height:64px;padding:9px 64px 9px 48px;background:#fff;border:1px solid #d9e1ea;border-radius:12px;position:relative;justify-content:center;box-sizing:border-box;width:100%}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:nth-child(1):not(.is-picker-open){grid-row:1}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:nth-child(3):not(.is-picker-open){grid-row:2}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-swap{grid-column:1;grid-row:1/3;align-self:center;justify-self:end;margin-right:14px;z-index:3;width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid #d9e1ea;box-shadow:0 2px 6px rgba(12,31,68,.12);transform:rotate(90deg)}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.search-dates{grid-column:1;grid-row:3}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-field-label{position:static;display:block;margin:0 0 2px;font-size:0;line-height:1.2;color:#5b6b80}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-field-label::after{content:"Abflughafen";font:400 13px/1.2 "Segoe UI",Arial,sans-serif}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:nth-child(3):not(.is-picker-open) .airport-field-label::after{content:"Zielflughafen"}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-entry{background:transparent;border:0;padding:0;height:26px;font:700 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.search-dates .search-popover-trigger{background:#fff;border:1px solid #d9e1ea;border-radius:12px;min-height:56px}
}
/* Handy ≤ 560 px, Flugmaske: Gepäck als Zahl + Koffer rechts in der ersten Optionszeile (Sasan 30.09.) */
.bxx-bag-mini{display:none}
@media(max-width:560px){
  html body form#kayak-search .compact-options{flex-wrap:nowrap;align-items:center}
  html body form#kayak-search .compact-options>.search-bags{margin-left:auto;flex:none}
  html body form#kayak-search .search-bags>.search-popover-trigger .bxx-bag-text{display:none}
  html body form#kayak-search .search-bags>.search-popover-trigger .bxx-bag-mini{display:inline-flex;align-items:center;gap:4px;color:#0c1f44}
  html body form#kayak-search .search-bags>.search-popover-trigger .bxx-bag-mini b{font:700 15px/1 "Segoe UI",Arial,sans-serif}
}
/* Handy ≤ 560 px, Flugmaske: Symbol Abflug (Flugzeug nach oben) / Landung (Flugzeug nach unten) links im Feld, Symbole setzt konto.js (Sasan 30.09.) */
.bxx-fl-ico{display:none}
@media(max-width:560px){html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open)>.bxx-fl-ico{display:block;position:absolute;left:14px;top:50%;width:22px;height:22px;margin-top:-11px;color:#0c1f44;pointer-events:none}html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open)>.bxx-fl-ico svg{display:block;width:22px;height:22px}}
/* Handy ≤ 560 px, Flugmaske wie Flug + Hotel (Sasan 30.09.): gewählter Flughafen als Name „Frankfurt am Main (FRA)“ in einer Zeile, rundes ✕ rechts wie bei Flug + Hotel, Feld 72 px statt 111 px; mehrere Flughäfen als Codes mit kleinem ✕ */
@media(max-width:560px){
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open){min-height:72px;padding:10px 58px 10px 52px}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open)>.bxx-fl-ico{left:16px}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field.has-airports:not(.is-picker-open) .airport-entry{position:absolute;width:1px;height:1px;min-height:0;padding:0;opacity:0;pointer-events:none}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-chips{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-height:0;width:100%}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-chip{min-height:0;height:auto;padding:0;gap:6px;background:transparent;border:0;width:auto;font:800 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-chip .airport-chip-code{font:800 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-chip:only-child{width:100%;justify-content:flex-start}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-chip:only-child .airport-chip-name{position:static;width:auto;height:auto;overflow:hidden;clip-path:none;white-space:nowrap;text-overflow:ellipsis;min-width:0;font:800 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-chip:only-child .airport-chip-code{display:none}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-remove{flex:none;width:22px;height:22px;min-width:0;min-height:0;padding:0;border:0;border-radius:50%;background:#e8edf3;color:#5b6b80;font:400 15px/22px Arial,sans-serif;text-align:center}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.airport-field:not(.is-picker-open) .airport-chip:only-child .airport-remove{position:absolute;right:18px;top:50%;margin-top:-16px;width:32px;height:32px;font-size:20px;line-height:32px}
}
/* Handy ≤ 560 px, Vollbild-Auswahl der Orts-/Flughafenfelder (Sasan 30.09., iPhone): bei offener Tastatur endete die Auswahl auf halber Höhe und die Seite schien durch → Fläche hinter der Auswahl, Auswahl liegt darüber (isolation der Maske aufgehoben), kein Schatten; die Auswahl gleitet wie bei KAYAK von oben herein, die Tastatur kommt erst beim Antippen des Eingabefelds (konto.js) */
@media(max-width:560px){
  html body.airport-picker-active::before{content:"";position:fixed;left:0;right:0;top:-50vh;bottom:-50vh;background:#f3f5f8;z-index:1050;animation:bxxPickerShade .2s ease-out}
  html body.airport-picker-active *:has(.is-picker-open){isolation:auto!important}
  html body .compact-search .airport-field.is-picker-open{box-shadow:none;animation:bxxPickerIn .32s cubic-bezier(.2,.8,.2,1)}
}
@keyframes bxxPickerIn{from{transform:translateY(-100%)}to{transform:none}}
@keyframes bxxPickerShade{from{opacity:0}to{opacity:1}}
@media(max-width:560px) and (prefers-reduced-motion:reduce){html body .compact-search .airport-field.is-picker-open,html body.airport-picker-active::before{animation:none}}
/* Handy ≤ 560 px, Flughafen-Auswahl: „Nahe Flughäfen einbeziehen“ wie bei KAYAK direkt unter dem Eingabefeld – Text links, Schalter rechts, Trennlinie darunter; kein grauer Kasten, kein Hinweissatz (Sasan 30.09.) */
@media(max-width:560px){
  html body .compact-search .is-picker-open .airport-panel:not([hidden]){display:flex;flex-direction:column}
  html body .compact-search .is-picker-open .airport-nearby-section{order:-1;border-top:0;border-bottom:1px solid #dfe5ea;margin:0;padding:0}
  html body .compact-search .is-picker-open .airport-nearby-section[hidden]{display:none}
  html body .compact-search .is-picker-open .nearby-choice{flex-direction:row;justify-content:space-between;align-items:center;gap:14px;min-height:56px;margin:0;padding:8px 16px;background:transparent;border-radius:0;font-size:16px!important;font-weight:400;color:#1d2433}
  html body .compact-search .is-picker-open .nearby-choice input{-webkit-appearance:none;appearance:none;position:relative;flex:none;width:50px;height:30px;margin:0;border:0;border-radius:15px;background:#aab4bf;cursor:pointer;transition:background .2s}
  html body .compact-search .is-picker-open .nearby-choice input::before{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s}
  html body .compact-search .is-picker-open .nearby-choice input:checked{background:#0a66e8}
  html body .compact-search .is-picker-open .nearby-choice input:checked::before{transform:translateX(20px)}
  html body .compact-search .is-picker-open .nearby-choice input:disabled{opacity:.5}
  html body .compact-search .is-picker-open .nearby-choice input:focus-visible{outline:2px solid #0a66e8;outline-offset:2px}
  html body .compact-search .is-picker-open .airport-nearby-section .airport-panel-hint{display:none}
}
/* Handy ≤ 560 px, Flughafen-/Orts-Auswahl komplett weiß statt grau/weiß gemischt, Einträge wie bei KAYAK durch Linien getrennt (Sasan 30.09.) */
@media(max-width:560px){
  html body.airport-picker-active::before{background:#fff}
  html body .compact-search .airport-field.is-picker-open,html body .compact-search .is-picker-open .airport-picker-header,html body .compact-search .is-picker-open .airport-recent,html body .compact-search .is-picker-open .airport-choices,html body .compact-search .is-picker-open .airport-entry{background:#fff}
  html body .compact-search .is-picker-open .airport-panel{background:#fff;border:0;border-radius:0;box-shadow:none}
  html body .compact-search .is-picker-open .airport-choice{border-bottom:1px solid #dfe5ea;border-radius:0}
}
/* Sasan 30.09. (Release .268): Flug + Hotel, Handy – Ortsauswahl (Abflughafen, Reiseziel, Hotel) ging nur halb auf.
   Ursache: html body form#kayak-package-search .hotel-field{height:76px} (ID-Spezifität) schlug die Vollbild-Regel
   der Auswahl. Gleiche Darstellung wie Hotels/Mietwagen; Hinweis „… aus den KAYAK-Vorschlägen wählen“ im Handy weg;
   Eingabefeld weiß wie in .267 bestellt. */
@media(max-width:560px){
  html body form#kayak-package-search .airport-field.is-picker-open{height:100%;min-height:0;padding:12px 16px;border:0;border-radius:0;gap:10px}
  html body form#kayak-package-search .airport-field.is-picker-open .hotel-field-text{display:block;flex:none;width:100%;height:auto}
  html body form#kayak-package-search .airport-field.is-picker-open .hotel-field-text small{display:none}
  html body form#kayak-package-search .airport-field.is-picker-open .hotel-field-text .airport-entry{width:100%;height:48px;max-height:none;line-height:24px;font-size:16px;padding:10px 12px;border:1px solid #62727f;border-radius:8px}
  html body form#kayak-package-search .airport-field.is-picker-open .hotel-field-text .airport-entry::placeholder{color:#7b8ea6;font-weight:600}
  html body .hotel-search.hotel-search .airport-field.is-picker-open .airport-entry,html body form#kayak-package-search .airport-field.is-picker-open .hotel-field-text .airport-entry{background:#fff}
  html body .hotel-search .is-picker-open .airport-panel>.airport-panel-hint{display:none}
}
/* Sasan 30.09., 19. Chat (Release .269): Handy-Flugmaske wie KAYAK – Reisende, Kabinenklasse und Gepäck als ein Feld unter dem Datum,
   Vollbild-Blatt (konto.js „Handy-Flugmaske … EIN Feld“), Datum linksbündig mit Wochentag. Nur ≤ 560 px. */
.bxx-pax-field,.bxx-pax-sheet{display:none}
@media(max-width:560px){
  html body form#kayak-search:has(.bxx-pax-field) .search-travelers>.search-popover-trigger,html body form#kayak-search:has(.bxx-pax-field) .search-bags>.search-popover-trigger{display:none}
  html body form#kayak-search .compact-route>.search-dates>.search-popover-trigger{font-size:0!important;text-align:left;justify-content:flex-start;padding:0 16px}
  html body form#kayak-search .compact-route>.search-dates>.search-popover-trigger::after{content:attr(data-bxx-date);font:600 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44;text-align:left}
  html body form#kayak-search .bxx-pax-field{display:flex;align-items:center;grid-column:1/-1;width:100%;min-height:56px;box-sizing:border-box;padding:0 16px;margin:0;background:#fff;border:1px solid #d9e1ea;border-radius:12px;color:#0c1f44;font:600 16px/1.3 "Segoe UI",Arial,sans-serif;text-align:left;cursor:pointer}
  html body form#kayak-search.compact-search:not(.is-multi) .compact-route>.bxx-pax-field{grid-row:4}
  html body form#kayak-search .compact-extra-legs+.bxx-pax-field{margin-top:8px}
  html body form#kayak-search .bxx-pax-field .bxx-pax-value{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  html.bxx-sheet-lock,html.bxx-sheet-lock body{overflow:hidden}
  dialog.bxx-pax-sheet[open]{display:flex;flex-direction:column;position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#fff;color:#1b1f24;font-family:"Segoe UI",Arial,sans-serif;animation:bxxPickerIn .32s cubic-bezier(.2,.8,.2,1)}
  dialog.bxx-pax-sheet::backdrop{background:#fff}
  .bxx-pax-sheet .bxx-sheet-head{flex:none;display:flex;justify-content:flex-end;align-items:center;min-height:64px;padding:0 20px;border-bottom:1px solid #dfe5ea}
  .bxx-pax-sheet .bxx-sheet-cancel{background:none;border:0;padding:8px 0;font:600 17px/1.2 "Segoe UI",Arial,sans-serif;color:#0a66e8;cursor:pointer}
  .bxx-pax-sheet .bxx-sheet-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .bxx-pax-sheet .bxx-sheet-sec{padding:22px 20px 18px;border-bottom:1px solid #dfe5ea}
  .bxx-pax-sheet .bxx-sheet-sec:last-child{border-bottom:0}
  .bxx-pax-sheet h3{margin:0 0 12px;font:700 16px/1.3 "Segoe UI",Arial,sans-serif;color:#1b1f24}
  .bxx-pax-sheet .bxx-sheet-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
  .bxx-pax-sheet .bxx-sheet-label{font:400 16px/1.3 "Segoe UI",Arial,sans-serif;color:#1b1f24}
  .bxx-pax-sheet .bxx-sheet-label small{font-size:16px;color:#6b7785}
  .bxx-pax-sheet .bxx-sheet-stepper{display:flex;align-items:center;gap:0;flex:none}
  .bxx-pax-sheet .bxx-sheet-stepper button{width:26px;height:26px;padding:0;border:1.5px solid #6b7785;border-radius:6px;background:#fff;color:#1b1f24;font:500 18px/1 Arial,sans-serif;display:grid;place-items:center;cursor:pointer}
  .bxx-pax-sheet .bxx-sheet-stepper button:disabled{border-color:#d3d9df;color:#c3cad1;cursor:default}
  .bxx-pax-sheet .bxx-sheet-stepper output{width:42px;text-align:center;font:700 17px/1 "Segoe UI",Arial,sans-serif;color:#1b1f24}
  .bxx-pax-sheet .bxx-sheet-age select{min-width:118px;height:36px;padding:0 10px;border:1px solid #cfd6dd;border-radius:8px;background:#fff;font:400 16px "Segoe UI",Arial,sans-serif;color:#1b1f24}
  .bxx-pax-sheet .bxx-sheet-pills{display:flex;flex-wrap:wrap;gap:6px}
  .bxx-pax-sheet .bxx-sheet-pill{min-height:46px;padding:0 16px;border:1px solid #d3d9df;border-radius:8px;background:#fff;font:400 16px/1.2 "Segoe UI",Arial,sans-serif;color:#1b1f24;cursor:pointer}
  .bxx-pax-sheet .bxx-sheet-pill[aria-pressed="true"]{border:1.5px solid #1b1f24;background:#f7f8fa}
  .bxx-pax-sheet .bxx-sheet-note{margin:14px 0 0;font:400 16px/1.3 "Segoe UI",Arial,sans-serif;color:#6b7785}
  .bxx-pax-sheet .bxx-sheet-foot{padding:26px 20px calc(24px + env(safe-area-inset-bottom))}
  .bxx-pax-sheet .bxx-sheet-save{width:100%;min-height:50px;border:0;border-radius:8px;background:linear-gradient(90deg,#ff6a13,#e8411f);color:#fff;font:700 17px/1 "Segoe UI",Arial,sans-serif;cursor:pointer}
}
@media(max-width:560px) and (prefers-reduced-motion:reduce){dialog.bxx-pax-sheet[open]{animation:none}}
/* Sasan 30.09., 19. Chat (Release .270, KAYAK-Vorlage Multi-Stopp): Handy – Multi-Stopp wie die normale Strecke:
   je Flug Überschrift „Flug 1/2/…“ (✕ rechts), Abflughafen/Zielflughafen wie oben (weiß, Symbol, Beschriftung), Datum weiß,
   linksbündig mit Wochentag (konto.js setzt data-bxx-date), flexible Tage rechts daneben. Nur ≤ 560 px. */
@media(max-width:560px){
  html body form#kayak-search.compact-search.is-multi .compact-route{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;row-gap:8px;column-gap:0;position:relative;padding:34px 0 0;background:transparent;border:0;box-shadow:none}
  html body form#kayak-search.compact-search.is-multi .compact-route::before{content:"Flug 1";position:absolute;left:2px;top:2px;font:700 17px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open){grid-column:1/-1;min-height:72px;padding:10px 58px 10px 52px;background:#fff;border:1px solid #d9e1ea;border-radius:12px;position:relative;justify-content:center;box-sizing:border-box;width:100%}
  html body form#kayak-search.compact-search.is-multi .compact-route>.airport-field:nth-child(1):not(.is-picker-open){grid-row:1}
  html body form#kayak-search.compact-search.is-multi .compact-route>.airport-field:nth-child(3):not(.is-picker-open){grid-row:2}
  html body form#kayak-search.compact-search.is-multi .compact-route>.airport-swap{grid-column:1;grid-row:1/3;align-self:center;justify-self:end;margin-right:14px;z-index:3;width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid #d9e1ea;box-shadow:0 2px 6px rgba(12,31,68,.12);transform:rotate(90deg)}
  html body form#kayak-search.compact-search.is-multi .compact-route>.first-leg-date{grid-column:1;grid-row:3}
  html body form#kayak-search.compact-search.is-multi .compact-route>.airport-swap svg{transform:none}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-field-label{position:static;display:block;margin:0 0 2px;font-size:0;line-height:1.2;color:#5b6b80}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-field-label::after{content:"Abflughafen";font:400 13px/1.2 "Segoe UI",Arial,sans-serif}
  html body form#kayak-search.compact-search.is-multi .compact-route>.airport-field:nth-child(3):not(.is-picker-open) .airport-field-label::after,html body form#kayak-search.compact-search.is-multi .compact-extra-leg>.airport-field:nth-child(2):not(.is-picker-open) .airport-field-label::after{content:"Zielflughafen"}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-entry{background:transparent;border:0;padding:0;height:26px;font:700 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open)>.bxx-fl-ico{display:block;position:absolute;left:16px;top:50%;width:22px;height:22px;margin-top:-11px;color:#0c1f44;pointer-events:none}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open)>.bxx-fl-ico svg{display:block;width:22px;height:22px}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field.has-airports:not(.is-picker-open) .airport-entry{position:absolute;width:1px;height:1px;min-height:0;padding:0;opacity:0;pointer-events:none}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-chips{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-height:0;width:100%}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-chip{min-height:0;height:auto;padding:0;gap:6px;background:transparent;border:0;width:auto;font:800 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-chip .airport-chip-code{font:800 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-chip:only-child{width:100%;justify-content:flex-start}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-chip:only-child .airport-chip-name{position:static;width:auto;height:auto;overflow:hidden;clip-path:none;white-space:nowrap;text-overflow:ellipsis;min-width:0;font:800 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-chip:only-child .airport-chip-code{display:none}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-remove{flex:none;width:22px;height:22px;min-width:0;min-height:0;padding:0;border:0;border-radius:50%;background:#e8edf3;color:#5b6b80;font:400 15px/22px Arial,sans-serif;text-align:center}
  html body form#kayak-search.compact-search.is-multi :is(.compact-route,.compact-extra-leg)>.airport-field:not(.is-picker-open) .airport-chip:only-child .airport-remove{position:absolute;right:18px;top:50%;margin-top:-16px;width:32px;height:32px;font-size:20px;line-height:32px}
  html body form#kayak-search.compact-search.is-multi .compact-extra-legs{counter-reset:bxxleg 1;display:block;margin:0;padding:0}
  html body form#kayak-search.compact-search.is-multi .compact-extra-leg{counter-increment:bxxleg;display:grid;grid-template-columns:minmax(0,1fr) auto;row-gap:8px;column-gap:8px;position:relative;margin:18px 0 0;padding:34px 0 0;background:transparent;border:0;border-radius:0;box-shadow:none}
  html body form#kayak-search.compact-search.is-multi .compact-extra-leg::before{content:"Flug " counter(bxxleg);position:absolute;left:2px;top:2px;font:700 17px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search.is-multi .compact-extra-leg>.airport-field:nth-child(1),html body form#kayak-search.compact-search.is-multi .compact-extra-leg>.airport-field:nth-of-type(1){grid-column:1/-1;grid-row:1}
  html body form#kayak-search.compact-search.is-multi .compact-extra-leg>.airport-field:nth-of-type(2){grid-column:1/-1;grid-row:2}
  html body form#kayak-search.compact-search.is-multi .compact-extra-leg>.search-control-label{grid-column:1;grid-row:3}
  html body form#kayak-search.compact-search.is-multi .compact-extra-leg>select{grid-column:2;grid-row:3;height:56px;min-width:0;max-width:140px;box-sizing:border-box;padding:0 12px;border:1px solid #d9e1ea;border-radius:12px;background-color:#fff;font:600 15px/1.2 "Segoe UI",Arial,sans-serif;color:#0c1f44}
  html body form#kayak-search.compact-search.is-multi .compact-extra-leg>.remove-flight{position:absolute;right:0;top:0;grid-row:auto;grid-column:auto;width:32px;height:28px;min-height:0;padding:0;border:0;background:none;box-shadow:none;font:300 28px/28px Arial,sans-serif;color:#6b7785}
  html body form#kayak-search.compact-search.is-multi :is(.first-leg-date,.compact-extra-leg>.search-control-label){display:block;position:relative;min-height:56px;margin:0;padding:0}
  html body form#kayak-search.compact-search.is-multi :is(.first-leg-date,.compact-extra-leg>.search-control-label) input[type=date]{display:block;width:100%;height:56px;min-height:56px;box-sizing:border-box;margin:0;padding:0 16px;background:#fff;border:1px solid #d9e1ea;border-radius:12px;color:transparent;font-size:16px;-webkit-appearance:none;appearance:none;box-shadow:none}
  html body form#kayak-search.compact-search.is-multi :is(.first-leg-date,.compact-extra-leg>.search-control-label) input[type=date]::-webkit-calendar-picker-indicator{opacity:0}
  html body form#kayak-search.compact-search.is-multi :is(.first-leg-date,.compact-extra-leg>.search-control-label) input[type=date]::-webkit-datetime-edit{color:transparent}
  html body form#kayak-search.compact-search.is-multi :is(.first-leg-date,.compact-extra-leg>.search-control-label)::after{content:attr(data-bxx-date);position:absolute;left:17px;top:28px;transform:translateY(-50%);font:600 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0c1f44;pointer-events:none}
}

/* Release .272 – Flug-Ergebnisseite Handy ≤ 560 px (Sasan 30.09.): Während der Suche keine halbe Maske mehr, sondern sofort
   die kompakte Zusammenfassung „FRA ⇄ BCN / Datum · Reisende / Ändern“ wie nach dem Laden (Regeln aus body.has-flight-results).
   Startet die Suche nicht, setzt konto.js body.bxx-fs-form → Maske wie bisher. */
@media(max-width:560px){
 body[data-kind=flug].has-flight-search:not(.bxx-fs-form) .search-area>form{display:none}
 body[data-kind=flug].has-flight-search:not(.bxx-fs-form) main>.tabs,body[data-kind=flug].has-flight-search:not(.bxx-fs-form) .flight-heading{display:none}
 body[data-kind=flug].has-flight-search:not(.bxx-fs-form) .mobile-search-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 14px;width:100%;min-height:64px;border:1px solid #b6c9dc;background:#fff;border-radius:10px;text-align:left;padding:10px 14px;color:var(--ink);margin:12px 0}
 body[data-kind=flug].has-flight-search .mobile-search-summary:empty{visibility:hidden}
}

/* Release .273 – Flug-Ergebnisseite Handy ≤ 560 px (Sasan 30.09.): „Ändern“ öffnete eine halbe Maske ohne Suchknopf – der Knopf
   lag in Zeile 3 unter dem Datumsfeld (seit .269 stehen Datum in Zeile 3 und „Reisende, Klasse, Gepäck“ in Zeile 4).
   Jetzt unter dem Reisende-Feld über die volle Breite, orange mit „Flüge finden“ wie auf der Startmaske. Multi-Stopp unverändert. */
@media(max-width:560px){
 html body[data-kind=flug].has-flight-search form#kayak-search.compact-search:not(.is-multi) .compact-route>.search-button{grid-row:5;grid-column:1/-1;width:100%;height:auto;min-height:48px;margin:4px 0 0;padding:12px 10px;background:#d84d32;border:0;border-radius:9px;color:#fff;font-size:0;font-weight:750}
 html body[data-kind=flug].has-flight-search form#kayak-search.compact-search:not(.is-multi) .compact-route>.search-button:hover{background:#be3d25}
 html body[data-kind=flug].has-flight-search form#kayak-search.compact-search:not(.is-multi) .compact-route>.search-button::after{content:"Flüge finden";font-size:16px}
}

/* Release .274 – Flugkarte Handy ≤ 560 px als Ticket wie die Startmaske (Sasan 30.09., im Claude-Browser abgenommen:
   „genauso will ich es haben“, ohne Schatten in den Kerben): weiße Karte mit Schatten, rechts orange Kante von oben bis
   zum Ende des Flugs, gestrichelte Abrisslinie unter der Kopfzeile mit Kerbe links und rechts (rechts mit orangem Knick),
   Abstand zum Rand 10 px wie die Startmaske, Hin-/Rückflug weiß mit Rahmen wie die Felder der Startmaske.
   Antippen hebt die Karte nicht mehr an (Hover-Schatten und graue Strecke nur noch am Desktop). */
@media(max-width:560px){
 html body #results-region .flight-card{margin-inline:6px;background:#fff;border:1px solid #e1e8f0;border-right:5px solid #ff795c;border-radius:16px;box-shadow:0 10px 18px -6px #102c5033,0 1px 3px #102c501a}
 html body #results-region:not([aria-busy="true"]) .flight-card:hover{border-color:#e1e8f0;border-right-color:#ff795c;box-shadow:0 10px 18px -6px #102c5033,0 1px 3px #102c501a}
 html body #results-region:not([aria-busy="true"]) .flight-card:hover .flight-leg:not(:focus-within):not(:has(.leg-select:checked))::before{background:transparent}
 html body #results-region .flight-card .flight-route-heading{position:relative;padding-bottom:12px;border-bottom:1px dashed #cdd5e0}
 html body #results-region .flight-card .flight-route-heading::before,html body #results-region .flight-card .flight-route-heading::after{content:"";position:absolute;z-index:2;box-sizing:border-box;border-radius:50%;background:#fff;box-shadow:none}
 html body #results-region .flight-card .flight-route-heading::before{left:-23px;bottom:-11px;width:20px;height:20px;border:1px solid #e1e8f0;clip-path:inset(-2px -2px -2px 50%)}
 html body #results-region .flight-card .flight-route-heading::after{right:-32px;bottom:-16px;width:30px;height:30px;border:5px solid #ff795c;clip-path:inset(-2px 50% -2px -2px)}
 html body #results-region .flight-card .flight-leg{background:#fff;border:1px solid #d9e1ea;border-radius:12px}
}

/* Release .275 – Preisbereich der Flugkarte, Handy ≤ 560 px (Sasan 30.09., im Claude-Browser abgestimmt): Preis steht rechts allein
   („363 € p. P. ⓘ“, darunter „Gesamtpreis: 363 €“ – beide immer), links Herz + Teilen und darunter „Auswählen“ dezent
   (hellblau, blaue Schrift, 36 px) statt des großen dunkelblauen Knopfs. „p. P.“ und die Gesamtpreis-Zeile bei einem Reisenden setzt konto.js. */
@media(max-width:560px){
 html body #results-region .flight-card .flight-price-panel{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"tools price" "action price";gap:10px 12px;align-items:start;padding:14px 2px 12px}
 html body #results-region .flight-card .flight-price-panel>.bxx-flight-tools{grid-area:tools;display:flex;gap:6px;justify-content:flex-start;align-self:start;position:static;margin:0;width:auto}
 html body #results-region .flight-card .flight-price-panel>.flight-price-info{grid-area:price;justify-self:end;align-self:center;display:block;text-align:right}
 html body #results-region .flight-card .flight-price-panel .price-line{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:2px 6px}
 html body #results-region .flight-card .flight-price-panel .price-line>strong{font-size:30px;letter-spacing:-1px;line-height:1}
 html body #results-region .flight-card .flight-price-panel .price-help{margin:0}
 html body #results-region .flight-card .flight-price-panel .flight-total{display:block;margin-top:6px;padding:0;border:0;font-size:14px;font-weight:600;color:#405f8f;white-space:nowrap;text-align:right}
 html body #results-region .flight-card .flight-price-panel>.flight-select-action{grid-area:action;justify-self:start;align-self:end;width:auto;min-height:36px;height:auto;padding:7px 16px;border:1px solid #bcd4f5;background:#eef5ff;color:#0755b7;font-size:14px;font-weight:700;border-radius:9px;box-shadow:none}
 html body #results-region .flight-card .flight-price-panel>.flight-select-action:hover{background:#e0edff}
}

/* Release .276 – Fußbereich der Flugkarte, Handy ≤ 560 px (Sasan 30.09., im Claude-Browser abgenommen: „8 weitere Angebote – sehr gut“):
   „Angebot von …“ und „N weitere Angebote / Gleicher Flug, andere Anbieter“ je eine Zeile über die volle Breite, Symbol links;
   beim Öffnen der Flugdetails Sprechblase „Flugdetails / Buchung bei …“ über dem Block (konto.js .bxx-fd-tip, .bxx-act). */
@media(max-width:560px){
 html body #results-region .flight-card .flight-booking>.flight-fare-info{grid-template-columns:minmax(0,1fr);gap:8px}
 html body #results-region .flight-card .flight-fare-info>.flight-detail-toggle{grid-column:1;grid-row:1}
 html body #results-region .flight-card .flight-fare-info>.flight-provider-toggle{grid-column:1;grid-row:2}
 html body #results-region .flight-card .flight-fare-info>.flight-details{grid-column:1;grid-row:3}
 html body #results-region .flight-card .flight-fare-info>:is(.flight-detail-toggle,.flight-provider-toggle){justify-content:flex-start;gap:12px;padding:10px 14px;position:relative;text-align:left}
 html body #results-region .flight-card .flight-provider-toggle .bxx-act{display:flex;flex-direction:column;gap:2px;min-width:0}
 html body #results-region .flight-card .flight-provider-toggle .bxx-act b{font-size:15px;font-weight:750;color:#080f44}
 html body #results-region .flight-card .flight-provider-toggle .bxx-act small{font-size:13px;color:#405f8f}
 html body #results-region .flight-card .flight-detail-provider .fdp-brand[data-tip]::after{display:none}
 html body #results-region .flight-card .flight-detail-toggle .bxx-fd-tip{position:absolute;left:8px;bottom:calc(100% + 10px);z-index:30;display:flex;flex-direction:column;gap:2px;padding:9px 13px;border-radius:10px;background:#062e69;color:#fff;box-shadow:0 8px 20px #062e6940;white-space:nowrap;text-align:left;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .18s,transform .18s,visibility .18s;pointer-events:none}
 html body #results-region .flight-card .flight-detail-toggle .bxx-fd-tip::after{content:"";position:absolute;left:22px;top:100%;border:7px solid transparent;border-top-color:#062e69}
 html body #results-region .flight-card .flight-detail-toggle .bxx-fd-tip b{font-size:15px;font-weight:750}
 html body #results-region .flight-card .flight-detail-toggle .bxx-fd-tip small{font-size:13px;color:#d6e4ff}
 html body #results-region .flight-card .flight-detail-toggle[aria-expanded=true] .bxx-fd-tip{opacity:1;visibility:visible;transform:none}
}
@media(min-width:561px){.flight-card .bxx-act,.flight-card .bxx-fd-tip{display:none}}

/* Release .277 – Handy ≤ 560 px (Sasan 30.09.): Flugdetails öffnen direkt unter „Angebot von …“, „N weitere Angebote“ steht danach
   (vorher lag der ⇄-Block zwischen Knopf und Details – verwirrend). */
@media(max-width:560px){
 html body #results-region .flight-card .flight-fare-info>.flight-details{grid-row:2}
 html body #results-region .flight-card .flight-fare-info>.flight-provider-toggle{grid-row:3}
}

/* Release .278 – Handy ≤ 560 px (Sasan 30.09.): Tipp auf den Preis wirkt wie „Auswählen“ (konto.js) – Hand-Zeiger über dem Preis, ⓘ unverändert. */
@media(max-width:560px){
 html body #results-region .flight-card .flight-price-panel:has(a.flight-select-action[href])>.flight-price-info{cursor:pointer;-webkit-tap-highlight-color:transparent}
}

/* Release .279 – Handy ≤ 560 px (Sasan 30.09.): Preisblock wie die weiteren Angebote – erster Tipp markiert (hellblau), zweiter öffnet das Angebot. */
@media(max-width:560px){
 html body #results-region .flight-card .flight-price-panel>.flight-price-info{border-radius:10px;transition:background-color .15s,box-shadow .15s}
 html body #results-region .flight-card .flight-price-panel>.flight-price-info.bxx-armed{background:#e8f0fb;box-shadow:0 0 0 6px #e8f0fb}
}

/* Release .280 – Handy ≤ 560 px (Sasan 30.09.): Zeile „Hotel & Mietwagen“ der Flugkarte – erster Tipp zeigt diese Sprechblase UNTER
   der Zeile (konto.js .bxx-tc-tip, position:fixed am body, Stil wie .bxx-fd-tip, Pfeil nach oben), zweiter Tipp öffnet den Bereich. */
@media(max-width:560px){
 .bxx-tc-tip{position:fixed;z-index:900;display:flex;flex-direction:column;gap:2px;max-width:calc(100vw - 24px);box-sizing:border-box;padding:9px 13px;border-radius:10px;background:#062e69;color:#fff;box-shadow:0 8px 20px #062e6940;text-align:left;opacity:0;transform:translateY(-4px);transition:opacity .18s,transform .18s;pointer-events:none}
 .bxx-tc-tip.is-above{transform:translateY(4px)}
 .bxx-tc-tip.is-on{opacity:1;transform:none}
 .bxx-tc-tip::before{content:"";position:absolute;left:calc(var(--bxx-ax,50%) - 7px);bottom:100%;border:7px solid transparent;border-bottom-color:#062e69}
 .bxx-tc-tip.is-above::before{bottom:auto;top:100%;border-bottom-color:transparent;border-top-color:#062e69}
 .bxx-tc-tip b{font-size:15px;font-weight:750}
 .bxx-tc-tip small{font-size:13px;color:#d6e4ff}
}
@media(min-width:561px){.bxx-tc-tip{display:none}}

/* Release .281 – Handy ≤ 560 px (Sasan 30.09., im Claude-Browser besprochen): im Knopf der Flugdetails steht fett „Flugdetails“
   (der Text war auf dem Handy nur für Screenreader da): Symbol | Flugdetails | rechts wie bisher „Angebot von“ + Logo. */
@media(max-width:560px){
 html body #results-region .flight-card .flight-detail-toggle>.flight-action-copy{position:static;width:auto;height:auto;overflow:visible;clip-path:none;display:flex;flex-direction:column;justify-content:center;min-width:0;flex:1 1 auto}
 html body #results-region .flight-card .flight-detail-toggle>.flight-action-copy>strong{font-size:15px;font-weight:750;color:#080f44;white-space:nowrap}
 html body #results-region .flight-card .flight-detail-toggle>.flight-action-copy>small{display:none}
 html body #results-region .flight-card .flight-detail-toggle>span.flight-detail-provider{margin-left:auto}
}

/* Release .282 – Handy ≤ 560 px (Sasan 30.09., Usability nach Nutzertest, im Claude-Browser abgenommen): die Entscheidung steht klar vor den
   Zusatzinfos – rechts unter dem Preis großer oranger Knopf „Zum Angebot ↗“ (konto.js .bxx-sel-m), darunter „bei <Anbieter-Logo>“ (.bxx-cta-by),
   dann eine dicke Linie; „Flugdetails“ und „N weitere Angebote“ als ruhige Zeilen ohne Kasten mit ⌄ rechts; „Angebot von“ im Flugdetails-Knopf
   entfällt auf dem Handy (steht jetzt unter dem Knopf). Desktop/iPad unverändert („Auswählen“). */
.flight-card .bxx-sel-m,.flight-card .bxx-cta-by{display:none}
@media(max-width:560px){
 html body #results-region .flight-card .flight-price-panel{grid-template-columns:auto minmax(0,1fr)!important;grid-template-areas:"tools price" "action action" "by by"!important;row-gap:10px!important}
 html body #results-region .flight-card .flight-price-panel>.flight-select-action{grid-area:action;justify-self:end;align-self:start;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:min(100%,230px);min-height:48px;padding:10px 18px;border:0;border-radius:10px;background:#d84d32;color:#fff;font-size:17px;font-weight:750;box-shadow:0 6px 14px -6px #d84d3299}
 html body #results-region .flight-card .flight-price-panel>.flight-select-action:hover{background:#c44227}
 html body #results-region .flight-card .flight-price-panel>.flight-select-action .bxx-sel-d{display:none}
 html body #results-region .flight-card .flight-price-panel>.flight-select-action .bxx-sel-m{display:inline-flex;align-items:center;gap:8px}
 html body #results-region .flight-card .flight-price-panel>.flight-select-action svg{width:18px;height:18px}
 html body #results-region .flight-card .flight-price-panel>.bxx-cta-by{grid-area:by;justify-self:end;display:flex;align-items:center;justify-content:center;gap:6px;width:min(100%,230px);margin-top:-2px;font-size:13px;color:#405f8f}
 html body #results-region .flight-card .flight-price-panel>.bxx-cta-by img{height:18px;max-width:80px;object-fit:contain}
 html body #results-region .flight-card .flight-price-panel>.bxx-cta-by b{font-weight:700;color:#080f44}
 html body #results-region .flight-card .flight-booking{margin-top:16px;padding-top:4px;border-top:2px solid #e1e8f0}
 html body #results-region .flight-card .flight-booking>.flight-fare-info{gap:0!important}
 html body #results-region .flight-card .flight-fare-info>:is(.flight-detail-toggle,.flight-provider-toggle){border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:12px 6px!important;min-height:52px}
 html body #results-region .flight-card .flight-fare-info>.flight-provider-toggle{border-top:1px solid #e1e8f0!important}
 html body #results-region .flight-card .flight-detail-toggle>span.flight-detail-provider{display:none!important}
 html body #results-region .flight-card .flight-fare-info>:is(.flight-detail-toggle,.flight-provider-toggle)::after{content:"";flex:none;width:9px;height:9px;margin-left:auto;margin-right:6px;border-right:2px solid #6b82a0;border-bottom:2px solid #6b82a0;transform:translateY(-3px) rotate(45deg);transition:transform .2s}
 html body #results-region .flight-card .flight-fare-info>:is(.flight-detail-toggle,.flight-provider-toggle)[aria-expanded=true]::after{transform:translateY(2px) rotate(-135deg)}
}

/* Release .283 – Handy ≤ 560 px, Flug-Ergebnisseite (Sasan 30.09., im Claude-Browser abgenommen: „genauso will ich es haben“): Kopfzeile wie
   KAYAK – „B“ (brand-b-v1.png) + ☰ links, Suche als graues Feld in der Mitte, Herz/Konto rechts; Leiste Filter | Beste Option | Stopps darunter,
   verschwindet beim Runterscrollen, kommt beim Hochscrollen wieder (konto.js body.bxx-kh, .bxx-head-search, .bxx-tb-fixed/.bxx-tb-hide). */
.bxx-brand-b,.bxx-head-search,.bxx-stops-chip,.bxx-stops-pop{display:none}
@media(max-width:560px){
 body.bxx-kh .site-header .header-inner{gap:8px;align-items:center}
 body.bxx-kh .site-header .brand-travel{order:0;flex:none;display:block;width:33px;height:40px}
 body.bxx-kh .site-header .brand-travel>img:not(.bxx-brand-b){display:none!important}
 body.bxx-kh .site-header .brand-travel>.bxx-brand-b{display:block;width:33px;height:40px;object-fit:contain}
 body.bxx-kh .site-header .tnav-tools{display:contents}
 body.bxx-kh .site-header .tnav-burger{order:1;flex:none}
 body.bxx-kh .site-header .bxx-head-search{order:2;flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;height:44px;padding:4px 12px;border:1px solid #d5dde8;border-radius:10px;background:#f1f4f8;color:#080f44;text-align:left;font:inherit;cursor:pointer}
 body.bxx-kh .site-header .bxx-head-search b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:750;line-height:1.2}
 body.bxx-kh .site-header .bxx-head-search small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;line-height:1.2;color:#405f8f}
 body.bxx-kh .site-header .bxx-head-search small svg{vertical-align:-2px}
 body.bxx-kh .site-header .tnav-fav{order:3;flex:none}
 body.bxx-kh .site-header .tnav-account{order:4;flex:none}
 body.bxx-kh:not(.bxx-fs-form) #reise-suche .mobile-search-summary{display:none!important}
 body.bxx-kh .mobile-results-toolbar{display:flex!important;gap:8px;overflow-x:auto;scrollbar-width:none;padding:8px 0}
 body.bxx-kh .mobile-results-toolbar::-webkit-scrollbar{display:none}
 body.bxx-kh .mobile-results-toolbar>button{flex:none!important;display:inline-flex;align-items:center;gap:6px;width:auto!important;height:40px;min-height:40px!important;padding:0 14px!important;border:1px solid #cfd8e3!important;border-radius:999px!important;background:#fff!important;color:#080f44!important;font-size:14px!important;font-weight:700!important;box-shadow:none!important;white-space:nowrap}
 body.bxx-kh .mobile-results-toolbar>.filter-toggle{order:-1}
 body.bxx-kh .mobile-results-toolbar.bxx-tb-fixed{position:fixed;left:0;right:0;top:var(--bxx-head-h,54px);z-index:700;margin:0;padding:8px 12px;background:#fff;border-bottom:1px solid #e1e8f0;box-shadow:0 6px 12px -10px #102c5066;transition:transform .25s ease}
 body.bxx-kh .mobile-results-toolbar.bxx-tb-fixed.bxx-tb-hide{transform:translateY(calc(-100% - var(--bxx-head-h,54px)))}
 body.bxx-kh .bxx-stops-pop{position:fixed;z-index:760;display:block;min-width:220px;padding:6px;border:1px solid #d5dde8;border-radius:12px;background:#fff;box-shadow:0 12px 28px -8px #102c5055}
 body.bxx-kh .bxx-stops-pop label{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;font-size:15px;color:#080f44}
 body.bxx-kh .bxx-stops-pop label span{margin-left:auto;font-size:13px;color:#405f8f}
 body.bxx-kh .bxx-stops-pop input{width:20px;height:20px;accent-color:#0a66e8}
}
@media(prefers-reduced-motion:reduce){body.bxx-kh .mobile-results-toolbar.bxx-tb-fixed{transition:none}}
/* Flug-Ergebnisseite, Handy ≤ 560 px (Sasan 30.09., Release .285): Wartezeit wie Flug + Hotel – drei Kacheln Flüge | Airlines |
   Reiseseiten mit Zählern (konto.js), Vorschau-Karten ohne Preis mit grauen Platzhaltern (Go: flight_preview.go). */
.bxx-pv-pending{display:flex;flex-direction:column;align-items:flex-end;gap:7px;min-width:150px}
.bxx-pv-pending i{display:block;height:13px;border-radius:7px;background:#e4eaf2;animation:bxxPvPulse 1.8s ease-in-out infinite}
.bxx-pv-pending i:nth-child(1){width:96px;height:24px}.bxx-pv-pending i:nth-child(2){width:120px}.bxx-pv-pending i:nth-child(3){width:150px;height:40px;border-radius:10px;margin-top:4px}
.bxx-pv-pending small{font-size:12.5px;color:#5b6b80}
@keyframes bxxPvPulse{0%,100%{opacity:.55}50%{opacity:1}}
@media(max-width:560px){
 .flight-card .flight-price-panel>.bxx-pv-pending{grid-area:price}
 body.bxx-fp-on #results-region .search-progress{display:none!important}
 .bxx-fp{margin:0 6px 12px;padding:12px 12px 10px;background:#fff;border:1px solid #e4eaf2;border-radius:14px;box-shadow:0 2px 12px rgba(6,46,105,.06);transition:opacity .5s,transform .5s}
 .bxx-fp.is-done{opacity:0;transform:translateY(-6px)}
 .bxx-fp-steps{display:flex;gap:6px;margin:0 0 12px}
 .bxx-fp-step{flex:1 1 0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:8px;border:1px solid #e4eaf2;border-radius:12px;background:#fbfcfe;transition:border-color .35s,box-shadow .35s,background .35s,opacity .35s}
 .bxx-fp-step[data-state=active]{border-color:#0a66e8;background:#fff;box-shadow:0 0 0 4px rgba(10,102,232,.12);animation:bxxFpPulse 1.8s ease-in-out infinite}
 .bxx-fp-step[data-state=done]{border-color:#bfe6cf;background:#f4fbf6}
 .bxx-fp-step[data-state=pending]{opacity:.55}
 .bxx-fp-icon{position:relative;width:38px;height:38px;border-radius:50%;background:#e9f1fd;color:#0a66e8;display:grid;place-items:center}
 .bxx-fp-icon svg{width:20px;height:20px}
 .bxx-fp-ring{position:absolute;inset:-4px;border-radius:50%;border:2.5px solid transparent;border-top-color:#0a66e8;display:none}
 .bxx-fp-step[data-state=active] .bxx-fp-ring{display:block;animation:bxxFpSpin 1s linear infinite}
 .bxx-fp-check{display:none;position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;border-radius:50%;background:#19a05a;border:2px solid #fff;box-sizing:border-box}
 .bxx-fp-check::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
 .bxx-fp-step[data-state=done] .bxx-fp-check{display:block}.bxx-fp-step[data-state=done] .bxx-fp-icon{background:#e3f5ea;color:#19a05a}
 .bxx-fp-body{display:flex;flex-direction:column;min-width:0;line-height:1.15}
 .bxx-fp-body b{font-size:10.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#5b6b80}
 .bxx-fp-num{font-size:20px;font-weight:800;color:#0b1f3a;font-variant-numeric:tabular-nums;letter-spacing:-.5px}
 .bxx-fp-track{position:relative;height:6px;border-radius:3px;background:#e4eaf2}
 .bxx-fp-bar{position:relative;height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,#0a66e8,#3b8ef3);transition:width .7s cubic-bezier(.22,1,.36,1)}
 .bxx-fp-plane{position:absolute;right:-9px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:#fff;border:2px solid #0a66e8;color:#0a66e8;display:grid;place-items:center;box-shadow:0 2px 6px rgba(10,102,232,.3)}
 .bxx-fp-plane svg{width:15px;height:15px}
 .bxx-fp[data-done] .bxx-fp-plane,.bxx-fp[data-done] .bxx-fp-label i{display:none}
 .bxx-fp-label{display:flex;align-items:center;gap:9px;margin:12px 0 0;font-size:13.5px;font-weight:600;color:#5b6b80}
 .bxx-fp-label i{flex:0 0 auto;width:15px;height:15px;border:2px solid #cfdcee;border-top-color:#0a66e8;border-radius:50%;animation:bxxFpSpin .9s linear infinite}
 .bxx-fp-label span{display:inline-block;transition:opacity .3s,transform .3s}.bxx-fp-label span.is-swap{opacity:0;transform:translateY(4px)}
}
@keyframes bxxFpPulse{0%,100%{box-shadow:0 0 0 4px rgba(10,102,232,.12)}50%{box-shadow:0 0 0 7px rgba(10,102,232,.05)}}
@keyframes bxxFpSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.bxx-fp-step[data-state=active],.bxx-fp-ring,.bxx-fp-label i,.bxx-pv-pending i{animation:none!important}}
/* Release .286 (Sasan 30.09.): (a) Fehler aus .283 – das Handy-„B“ erschien auf iPad/Desktop neben dem Logo, weil
   „html body .travel-site-header .brand.brand-travel img{display:block}“ die Regel .bxx-brand-b{display:none} schlug. (b) Platzhalter
   „Preise werden verglichen …“ jetzt auch auf iPad/Desktop (Go liefert überall erst im Endstand Preise) – rechts im Preisbereich. */
@media(min-width:561px){
 html body .travel-site-header .brand.brand-travel img.bxx-brand-b{display:none!important}
 .flight-card .flight-price-panel>.bxx-pv-pending{grid-column:1/-1;width:100%;min-width:0}
}
/* Release .288 (Sasan 30.09., 23. Chat, im Claude-Browser abgenommen: „Okay, machen wir das so“): iPad HOCHKANT (html.bxx-tm im
   Hochformat) – Flüge über die ganze Kartenbreite, darunter EINE Preiszeile: Herz/Teilen | je Hin-/Rückflug Kabine + Icons
   (Handgepäck, Aufgabegepäck, WLAN, Strom, Sitz, Unterhaltung, Verpflegung, Nachtflug; echter HTML-Tooltip, auf dem iPad per
   Antippen; Daten aus den Flugdetails der Karte, konto.js Block „Release .288“) | Preis p. P. + Gesamtpreis | „Zum Angebot“ +
   „bei Logo“ (Sasan 12:08: Preis + Gesamtpreis ÜBER dem Knopf, rechte Spalte; links die Leistungen – kein Leerraum). Linie zwischen den Zeiten schmaler mit Platz links/rechts, Ticket-Kerben genau auf den Kartenrändern (rechts im
   orangen Rand). iPad-Safari rendert hochkant mit 980 px Layoutbreite (Desktop-Modus) – deshalb Hochformat statt Container-Breite.
   iPhone (Leistungen bleiben in den Flugdetails), PC und iPad quer unverändert. */
.bxx-legx{display:none}
@media (orientation:portrait){
html.bxx-tm body #results-region .flight-card .flight-overview{grid-template-columns:minmax(0,1fr)!important}
html.bxx-tm body #results-region .flight-card .flight-overview>.flight-main{grid-column:1!important;padding:0 18px 14px!important}
html.bxx-tm body #results-region .flight-card .flight-route-heading{margin:18px 18px 16px!important}
html.bxx-tm body #results-region .flight-card .flight-route-heading::before{left:-44px!important;bottom:-11px!important}
html.bxx-tm body #results-region .flight-card .flight-route-heading::after{right:-50px!important;bottom:-16px!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel{grid-column:1!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) 210px!important;grid-template-areas:"tools legs price" "tools legs action" "tools legs by"!important;align-items:center!important;column-gap:22px!important;row-gap:8px!important;margin:0 18px!important;padding:14px 0!important;border-left:0!important;border-top:1px solid #e1e8f0!important;min-height:0!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel>.bxx-flight-tools{grid-area:tools!important;flex-direction:column!important;gap:8px!important;align-self:center!important;position:static!important;margin:0!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel>.flight-price-info{grid-area:price!important;justify-self:end!important;align-self:center!important;text-align:right!important;display:grid!important;gap:2px!important;min-width:0;padding-right:4px!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel .price-line{display:flex!important;justify-content:flex-end!important;align-items:baseline!important;flex-wrap:nowrap!important;gap:0!important;position:relative!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel .price-line>strong{font-size:30px!important;white-space:nowrap!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel .price-line>.flight-price-unit{margin-left:6px!important;font-size:14px!important;align-self:baseline!important;position:static!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel .price-help{position:static!important;margin-left:8px!important;align-self:center!important;top:auto!important;right:auto!important;transform:none!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel .flight-total{text-align:right!important;justify-self:end!important;white-space:nowrap!important;margin-top:4px!important;font-size:14px!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel>.flight-select-action{grid-area:action!important;width:100%!important;margin:0!important;align-self:center!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel>.bxx-cta-by{grid-area:by!important;justify-content:center!important;align-self:start!important}
html.bxx-tm body #results-region .flight-card .flight-price-panel>.bxx-legx{grid-area:legs;display:grid;gap:8px;align-self:center;padding-left:16px;border-left:1px solid #e1e8f0;min-width:0}
html.bxx-tm body #results-region .flight-card .flight-leg{grid-template-columns:140px minmax(0,1fr) minmax(100px,170px) minmax(0,1fr)!important;column-gap:14px!important;padding-right:62px!important}
html.bxx-tm body #results-region .flight-card .flight-journey{padding-inline:10px!important}
@container (min-width:861px){html.bxx-tm body #results-region .flight-card .flight-schedule small{white-space:nowrap!important}}
}
.bxx-legx-row{display:flex;flex-wrap:wrap;row-gap:4px;align-items:center;gap:5px;white-space:nowrap;font-size:13px;color:#405f8f;min-width:0}
.bxx-legx-row>b{font-weight:700;color:#062e69;margin-right:4px}
.bxx-legx-fare{overflow:hidden;text-overflow:ellipsis;min-width:0;margin-right:5px}
.bxx-legx-ico{position:relative;display:inline-grid;place-items:center;flex:none;width:24px;height:24px;border-radius:7px;background:#eef5ff;color:#0755b7;cursor:default;outline:0}
.bxx-legx-ico.is-off{background:#f3f5f8;color:#9aa8b8}
.bxx-legx-ico>svg{width:14px;height:14px}
.bxx-legx-ico>.bxx-legx-mark{position:absolute;right:-4px;bottom:-4px;min-width:13px;height:13px;border-radius:7px;background:#0a8a5a;color:#fff;font-size:9px;font-weight:700;line-height:13px;text-align:center}
.bxx-legx-ico.is-fee>.bxx-legx-mark{background:#8a6a0a}
.bxx-legx-ico.is-off>.bxx-legx-mark{background:#9aa8b8}
.bxx-legx-tip{position:absolute;bottom:calc(100% + 11px);left:50%;z-index:30;display:grid;gap:2px;min-width:150px;max-width:260px;padding:9px 12px;border-radius:10px;background:#062e69;color:#fff;font-size:12.5px;font-weight:500;line-height:1.35;text-align:left;white-space:normal;box-shadow:0 10px 24px -8px rgba(6,46,105,.55);opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s;pointer-events:none}
.bxx-legx-tip::after{content:"";position:absolute;top:100%;left:50%;margin-left:-7px;border:7px solid transparent;border-top-color:#062e69}
.bxx-legx-tip>b{font-size:13px;font-weight:700;color:#fff}
.bxx-legx-tip>small{font-size:12px;color:#cfe0f7}
.bxx-legx-ico:hover>.bxx-legx-tip,.bxx-legx-ico:focus-visible>.bxx-legx-tip,.bxx-legx-ico.is-open>.bxx-legx-tip{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .18s ease,transform .18s ease}
@media (prefers-reduced-motion:reduce){.bxx-legx-tip{transition:none}}
.bxx-legx-leg{display:inline-flex;align-items:center;gap:5px;flex:none;min-width:86px;height:24px;padding:0 9px 0 7px;border-radius:12px;background:#062e69;color:#fff;font-size:12px;font-weight:700;margin-right:4px}
.bxx-legx-leg.is-back{background:#0a66e8}
.bxx-legx-leg>svg{width:14px;height:14px;flex:none}
.bxx-legx-row>.bxx-legx-fare{font-weight:700;color:#062e69}
.bxx-legx-sep{flex:none;width:1px;height:18px;margin:0 4px;background:#d5e2ef}
.bxx-legx-row>.bxx-legx-fare{flex:none;overflow:visible}
.bxx-legx-ico{background:transparent;color:#1f4f8a;width:22px}
.bxx-legx-ico.is-off{background:transparent;color:#b3c0cf}
.bxx-legx-ico>svg{width:16px;height:16px}
@media (orientation:portrait){html.bxx-tm body #results-region .flight-card .flight-route-heading{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;row-gap:4px!important}html.bxx-tm body #results-region .flight-card .flight-route-copy{display:contents!important}html.bxx-tm body #results-region .flight-card .flight-route-heading h3{grid-column:1!important;grid-row:1!important;margin:0!important}html.bxx-tm body #results-region .flight-card .flight-route-heading p{grid-column:1!important;grid-row:2!important;margin:0!important;align-self:start!important}html.bxx-tm body #results-region .flight-card .flight-route-heading .flight-badges{grid-column:2!important;grid-row:1/3!important;align-self:center!important}}
/* Release .288: Zeile „30 von 50 passenden Treffern angezeigt · 50 in dieser Sortierung“ auf dem iPad weg (Sasan 30.09. 12:1x: „diesen Text entferne mal“). */
html.bxx-tm body #results-region .flight-controls{display:none!important}
/* Release .289 – NUR iPad (html.bxx-tm), Flug-Ergebnisseite (Sasan 30.09., „1:1 wie KAYAK“, KAYAK-iPad-Screenshot FRA–MAD):
   Filterleiste Schieberegler-Knöpfchen | Beste Option | Stopps | Zeiten | Flughäfen | Airlines | Gepäckstücke | Dauer, seitlich
   schiebbar, runder Pfeil › rechts; jeder Chip öffnet ein Pop-up nur mit diesem Filter (konto.js Block „Release .289“ – der
   Filterbereich .flight-facets wird als Pop-up gezeigt, .bxx-one/.bxx-sel). „Weitere Optionen“ während der Suche auf dem iPad weg.
   Leistungs-Icons, die umbrechen, stehen bündig unter der Kabine („Economy“). iPhone und PC unverändert. */
.bxx-fchip,.bxx-fnext{display:none}
html.bxx-tm body :is(.flight-more-loading,.flight-more-sort){display:none!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.bxx-stops-chip{display:none!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar{gap:8px!important;padding:10px 0!important;align-items:center}
html.bxx-tm body.bxx-kh .mobile-results-toolbar.bxx-tb-fixed{padding:10px 12px!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>button{height:48px!important;min-height:48px!important;gap:8px!important;padding:0 14px 0 16px!important;border:1px solid #c5cfdb!important;border-radius:12px!important;background:#fff!important;color:#080f44!important;font-size:15px!important;font-weight:500!important;line-height:1!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>button>svg{flex:none;color:#27456d}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.filter-toggle{width:48px!important;padding:0!important;justify-content:center!important;font-size:0!important;gap:0!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.filter-toggle>svg{width:22px;height:22px;color:#080f44}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.bxx-fchip{display:inline-flex!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.bxx-fchip[aria-expanded=true]{border-color:#080f44!important;box-shadow:inset 0 0 0 1px #080f44!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.bxx-fchip[aria-expanded=true]>svg{transform:rotate(180deg)}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.bxx-fnext{display:grid!important;place-items:center;position:sticky;right:0;z-index:2;flex:none!important;width:44px!important;height:44px!important;min-height:44px!important;margin-left:-52px;padding:0!important;border:1px solid #c5cfdb!important;border-radius:50%!important;background:#fff!important;box-shadow:-14px 0 14px -2px #fff,0 2px 8px #102c5033!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.bxx-fnext>svg{color:#080f44}
html.bxx-tm body.bxx-kh .mobile-results-toolbar>.bxx-fnext[hidden]{display:none!important}
html.bxx-tm body.bxx-kh .mobile-results-toolbar.bxx-tb-fixed>.bxx-fnext{right:-6px;box-shadow:-14px 0 14px -2px #fff,0 0 0 6px #fff,0 2px 8px #102c5033!important}
html.bxx-tm body .flight-sidebar .flight-facets.bxx-one{display:block!important;position:fixed!important;z-index:780;top:var(--bxx-pop-top,120px);left:var(--bxx-pop-left,12px);width:var(--bxx-pop-w,360px);max-height:calc(100dvh - var(--bxx-pop-top,120px) - 16px);overflow:auto;overscroll-behavior:contain;margin:0!important;padding:4px 6px 8px!important;border:1px solid #d5dde8!important;border-radius:14px!important;background:#fff!important;box-shadow:0 16px 34px -10px #102c5066!important}
html.bxx-tm body .flight-sidebar .flight-facets.bxx-one>:not(.bxx-sel){display:none!important}
html.bxx-tm body .flight-sidebar .flight-facets.bxx-one>.bxx-sel{display:block!important;margin:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
html.bxx-tm body .flight-sidebar .flight-facets.bxx-one>.bxx-sel>summary{pointer-events:none;border:0!important}
html.bxx-tm body .flight-sidebar .flight-facets.bxx-one>.bxx-sel>summary>svg:last-child{display:none!important}
@media(prefers-reduced-motion:no-preference){html.bxx-tm body .flight-sidebar .flight-facets.bxx-one{animation:bxxPopIn .16s ease-out}}
@keyframes bxxPopIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.bxx-legx-row:has(>.bxx-legx-body){display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:start;column-gap:4px}
.bxx-legx-body{display:flex;flex-wrap:wrap;align-items:center;gap:4px 5px;min-width:0;min-height:24px}
.bxx-legx-body>.bxx-legx-fare{flex:none;overflow:visible;font-weight:700;color:#062e69}

/* Release .290 (Sasan 30.09.: „Auf dem Desktop machen wir die gleiche Technik – Suche, Go, die neue Version“): Wartezeit auf dem PC
   wie Handy/iPad – drei Kacheln Flüge | Airlines | Reiseseiten statt der Vier-Phasen-Leiste, Ticket-Effekt, Preise erst im Endstand
   (Go), danach rutscht die Seite zur Sortierleiste (konto.js Block .285). Gleiche Regeln wie Handy, Kacheln auf dem PC nebeneinander
   mit Symbol links; in der rechten Spalte über den Karten (wie vorher die Leiste). Karten-Layout auf dem PC unverändert. */
@media(min-width:561px){
 body.bxx-fp-on #results-region .search-progress{display:none!important}
 .bxx-fp{margin:0 6px 12px;padding:12px 12px 10px;background:#fff;border:1px solid #e4eaf2;border-radius:14px;box-shadow:0 2px 12px rgba(6,46,105,.06);transition:opacity .5s,transform .5s}
 .bxx-fp.is-done{opacity:0;transform:translateY(-6px)}
 .bxx-fp-steps{display:flex;gap:6px;margin:0 0 12px}
 .bxx-fp-step{flex:1 1 0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:8px;border:1px solid #e4eaf2;border-radius:12px;background:#fbfcfe;transition:border-color .35s,box-shadow .35s,background .35s,opacity .35s}
 .bxx-fp-step[data-state=active]{border-color:#0a66e8;background:#fff;box-shadow:0 0 0 4px rgba(10,102,232,.12);animation:bxxFpPulse 1.8s ease-in-out infinite}
 .bxx-fp-step[data-state=done]{border-color:#bfe6cf;background:#f4fbf6}
 .bxx-fp-step[data-state=pending]{opacity:.55}
 .bxx-fp-icon{position:relative;width:38px;height:38px;border-radius:50%;background:#e9f1fd;color:#0a66e8;display:grid;place-items:center}
 .bxx-fp-icon svg{width:20px;height:20px}
 .bxx-fp-ring{position:absolute;inset:-4px;border-radius:50%;border:2.5px solid transparent;border-top-color:#0a66e8;display:none}
 .bxx-fp-step[data-state=active] .bxx-fp-ring{display:block;animation:bxxFpSpin 1s linear infinite}
 .bxx-fp-check{display:none;position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;border-radius:50%;background:#19a05a;border:2px solid #fff;box-sizing:border-box}
 .bxx-fp-check::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
 .bxx-fp-step[data-state=done] .bxx-fp-check{display:block}.bxx-fp-step[data-state=done] .bxx-fp-icon{background:#e3f5ea;color:#19a05a}
 .bxx-fp-body{display:flex;flex-direction:column;min-width:0;line-height:1.15}
 .bxx-fp-body b{font-size:10.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#5b6b80}
 .bxx-fp-num{font-size:20px;font-weight:800;color:#0b1f3a;font-variant-numeric:tabular-nums;letter-spacing:-.5px}
 .bxx-fp-track{position:relative;height:6px;border-radius:3px;background:#e4eaf2}
 .bxx-fp-bar{position:relative;height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,#0a66e8,#3b8ef3);transition:width .7s cubic-bezier(.22,1,.36,1)}
 .bxx-fp-plane{position:absolute;right:-9px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:#fff;border:2px solid #0a66e8;color:#0a66e8;display:grid;place-items:center;box-shadow:0 2px 6px rgba(10,102,232,.3)}
 .bxx-fp-plane svg{width:15px;height:15px}
 .bxx-fp[data-done] .bxx-fp-plane,.bxx-fp[data-done] .bxx-fp-label i{display:none}
 .bxx-fp-label{display:flex;align-items:center;gap:9px;margin:12px 0 0;font-size:13.5px;font-weight:600;color:#5b6b80}
 .bxx-fp-label i{flex:0 0 auto;width:15px;height:15px;border:2px solid #cfdcee;border-top-color:#0a66e8;border-radius:50%;animation:bxxFpSpin .9s linear infinite}
 .bxx-fp-label span{display:inline-block;transition:opacity .3s,transform .3s}.bxx-fp-label span.is-swap{opacity:0;transform:translateY(4px)}
 .bxx-fp{margin:0 0 18px;padding:16px 18px 14px}
 .bxx-fp-steps{gap:12px;margin:0 0 16px}
 .bxx-fp-step{flex-direction:row;align-items:center;gap:12px;padding:12px 14px}
 .bxx-fp-icon{width:44px;height:44px;flex:none}
 .bxx-fp-icon svg{width:22px;height:22px}
 .bxx-fp-body b{font-size:11.5px}
 .bxx-fp-num{font-size:24px}
 .bxx-fp-label{font-size:14px}
}
@media(min-width:901px){html body[data-kind=flug] #results-region>.bxx-fp{margin-left:calc(clamp(300px,26vw,400px) + 24px)}}

/* Release .292 (Sasan 30.09., 27. Chat: „auf dem PC bei der Flugsuche sofort graue Blöcke in der neuen Kartenform plus Filterspalte
   als Platzhalter“): NUR PC (html.bxx-dk). Während der Suche graue, pulsierende Platzhalter in der Form der .291-Karte (Kopf, zwei
   Flugzeilen, Preiszeile mit Hinflug/Rückflug links und Preis/Knopf rechts, Fußzeilen) statt der flachen Balken, links ein Platzhalter
   in der Form der Filterspalte. Bausteine aus konto.js Block „Release .292“. Bewusst ohne Breiten-Media-Abfrage (tablet-mobile.js
   rechnet nur Regeln in Breiten-Abfragen um). iPad (bxx-tm) und iPhone unverändert. */
html.bxx-dk body .flight-loading .skeleton-list{display:flex;flex-direction:column;gap:12px}
html.bxx-dk body .flight-loading .skeleton-list>.skeleton-card{display:none}
html.bxx-dk body .skeleton-sidebar.bxx-sks>:not(.bxx-sks-in){display:none}
html.bxx-dk body .skeleton-sidebar.bxx-sks{padding:0;background:#fff;border:1px solid #e1ebf7;border-radius:17px;box-shadow:0 12px 30px #16466c0a;overflow:hidden;align-self:start}
.bxx-skx i{display:block;flex:none;width:100px;height:12px;border-radius:6px;background:#e0e7f0;animation:bxxPvPulse 1.8s ease-in-out infinite}
.bxx-skx .w12{width:12px}.bxx-skx .w36{width:36px}.bxx-skx .w40{width:40px}.bxx-skx .w56{width:56px}.bxx-skx .w60{width:60px}.bxx-skx .w64{width:64px}.bxx-skx .w70{width:70px}.bxx-skx .w74{width:74px}.bxx-skx .w80{width:80px}.bxx-skx .w90{width:90px}.bxx-skx .w100{width:100px}.bxx-skx .w110{width:110px}.bxx-skx .w120{width:120px}.bxx-skx .w130{width:130px}.bxx-skx .w150{width:150px}.bxx-skx .w170{width:170px}.bxx-skx .w190{width:190px}.bxx-skx .w210{width:210px}.bxx-skx .w280{width:280px}
.bxx-skx .h9{height:9px}.bxx-skx .h10{height:10px}.bxx-skx .h11{height:11px}.bxx-skx .h13{height:13px}.bxx-skx .h14{height:14px}.bxx-skx .h18{height:18px;border-radius:9px}.bxx-skx .h20{height:20px}.bxx-skx .h22{height:22px}.bxx-skx .h30{height:30px;border-radius:8px}.bxx-skx .h48{height:48px;border-radius:10px}
.bxx-skx .c18{width:18px;height:18px;border-radius:50%}.bxx-skx .c20{width:20px;height:20px;border-radius:50%}.bxx-skx .c32{width:32px;height:32px;border-radius:50%}
.bxx-skx .sq18{width:18px;height:18px;border-radius:5px}.bxx-skx .sq20{width:20px;height:20px;border-radius:5px}.bxx-skx .sq24{width:24px;height:24px;border-radius:6px}.bxx-skx .sq28{width:28px;height:28px;border-radius:7px}.bxx-skx .sq32{width:32px;height:32px;border-radius:8px}
.bxx-skx .bxx-sk-ln{width:100%;height:2px;border-radius:1px}.bxx-skx .bxx-sk-ch{width:14px;height:8px;margin-left:auto}.bxx-skx .bxx-sk-r{margin-left:auto}
.bxx-sk-col{display:flex;flex-direction:column;gap:9px;min-width:0}
.bxx-sk-row{display:flex;align-items:center;gap:8px;min-width:0}
.bxx-sk{position:relative;display:flex;flex-direction:column;gap:12px;box-sizing:border-box;padding:33px 30px 15px 33px;background:#fff;border:1px solid #e1e8f0;border-right:6px solid #e0e7f0;border-radius:16px;box-shadow:0 10px 18px -6px rgba(16,44,80,.2),0 1px 3px rgba(16,44,80,.1);overflow:hidden}
.bxx-sk-h{display:flex;align-items:center;gap:12px;min-height:56px;padding-bottom:4px}
.bxx-sk-leg{display:grid;grid-template-columns:140px minmax(0,1fr) minmax(100px,170px) minmax(0,1fr) 32px;align-items:center;column-gap:18px;min-height:95px;box-sizing:border-box;padding:14px;border:1px solid #d9e1ea;border-radius:12px}
.bxx-sk-mid{display:flex;flex-direction:column;align-items:center;gap:6px}
.bxx-sk-price{display:grid;grid-template-columns:32px minmax(0,1fr) 210px;column-gap:22px;align-items:center;min-height:150px;box-sizing:border-box;padding:14px 0;border-top:1px solid #edf1f6;margin-top:2px}
.bxx-sk-price .bxx-sk-col:first-child{gap:8px}.bxx-sk-price .bxx-sk-col:nth-child(2){gap:12px}
.bxx-sk-end{align-items:flex-end}
.bxx-sk-foot>div{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 6px;border-top:1px solid #e1e8f0}
.bxx-sk-foot>div+div{min-height:68px}
.bxx-sk-trip{display:flex;align-items:center;justify-content:center;gap:16px;min-height:48px;margin:0 -15px 0 -18px;border-top:1px solid #d4e0ed;background:#f5f8fc;border-radius:0 0 10px 10px}
.bxx-sks-in{display:flex;flex-direction:column}
.bxx-sks-top{min-height:52px;padding:0 18px}
.bxx-sks-sec{display:flex;flex-direction:column;gap:12px;padding:16px 18px 18px;border-top:1px solid #eef2f7}
.bxx-sks-hd{gap:10px}
.bxx-sks-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.bxx-sks-tiles>div{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border:1px solid #e4eaf2;border-radius:10px}
.bxx-skx .bxx-sks-seg{width:100%;height:36px;border-radius:10px}
.bxx-sks-sl{position:relative;display:flex;align-items:center;justify-content:space-between;height:20px}
.bxx-sks-sl .bxx-sk-ln{position:absolute;left:0;right:0;top:9px;width:auto}
.bxx-sks-sl .c18{position:relative}
@media(prefers-reduced-motion:reduce){.bxx-skx i{animation:none}}
/* Release .292 (Sasan 30.09., 28. Chat: „in der mobilen Version steht ‚Weitere Optionen‘ bei der Suche – entfernen, stört total“):
   NUR iPhone (≤ 560 px). Während der Suche zeigt die Vorlage #flight-loading-template unter den Kacheln „Weitere Optionen“
   (.flight-more-loading); im Endstand ist .flight-more-sort ≤ 1100 px schon aus. iPad (bxx-tm) ist seit .289 aus, PC unverändert. */
@media(max-width:560px){body[data-kind=flug] :is(.flight-more-loading,.flight-more-sort){display:none!important}}
/* Release .300 (Sasan 30.09., Fehler 11): „Anbieter vergleichen“ am Knopf der Flugkarte als HTML-Tooltip statt title (::before, weil ::after
   je nach Layout der Pfeil ist). Nur bei Maus (hover:hover + pointer:fine) – auf iPhone/iPad bliebe die Blase nach dem Tipp stehen.
   Fehler 10 (results.html): Dauer, Punkt und Umsteige-Text in EINEM Element, Punkt mit &nbsp; angebunden → kein hängender Punkt mehr. */
.transfer-row .transfer-sep{padding:0 3px}
@media (hover:hover) and (pointer:fine){
html body .flight-card .flight-provider-toggle[data-tip]:not(.bxx-x){position:relative}
html body .flight-card .flight-provider-toggle[data-tip]::before{content:attr(data-tip);position:absolute;left:14px;bottom:calc(100% + 6px);z-index:600;padding:6px 10px;border-radius:7px;background:#0c1f44;color:#fff;font:600 12px/1.3 "Segoe UI",Arial,sans-serif;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s}
html body .flight-card .flight-provider-toggle[data-tip]:hover::before,html body .flight-card .flight-provider-toggle[data-tip]:focus-visible::before{opacity:1;visibility:visible;transform:none}
}
/* Release .300 (Sasan 30.09., 32. Chat: „dieser Text entfernen, das ist unnötig … iPad, iPhone, Desktop, überall“): Zeile „30 von 50
   passenden Treffern angezeigt · 50 in dieser Sortierung“ (app.js [data-filter-count] in .flight-controls) auf allen Breiten aus.
   .flight-controls enthält auf der Ergebnisseite nur das versteckte Sortierfeld und diese Zeile. */
body[data-kind=flug] #results-region .flight-controls{display:none!important}
/* Release .301 (Sasan 30.09., Fehler 9): Solange die Flugkarten ohne Preise kommen (Zwischenstand, SearchOutput.FlightPreview),
   zeigt die Sortierleiste statt „200,50 € · 19:10 Std.“ bzw. „Nicht geliefert“ einen grauen Balken wie die Lade-Vorlage. */
.flight-sort button .skeleton-line{height:13px;width:55%;margin:4px 0}

/* Release .304 – iPhone Hotelliste nach Sasans Mockup V2 (30.09., Ordner hotel-mockup/v2.png, Sasans Wahl) + Suchzeile aus V1.
   Symbole als eigene SVG-Dateien (web/hv2-*.svg über /kayak/experience-assets/) – data:-URIs sperrt die CSP (img-src). Nur ≤ 560 px, nur hotels (body[data-kind=hotel]); PC/iPad unverändert. */
@media (max-width:560px){
  /* Suchzeile wie V1: Lupe | Ort + Reisedaten | Stift „Ändern“ */
  html body[data-kind=hotel] .hotel-mobile-summary{display:grid;grid-template-columns:24px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;min-height:64px;padding:10px 16px}
  html body[data-kind=hotel] .hotel-mobile-summary::before{content:"";grid-column:1;grid-row:1/3;width:22px;height:22px;background:#12233f;-webkit-mask:url(/kayak/experience-assets/hv2-search.svg) center/contain no-repeat;mask:url(/kayak/experience-assets/hv2-search.svg) center/contain no-repeat}
  html body[data-kind=hotel] .hotel-mobile-summary>strong{grid-column:2;grid-row:1;font-size:17px;line-height:1.25;text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html body[data-kind=hotel] .hotel-mobile-summary>span:not(.hotel-mobile-summary-edit){grid-column:2;grid-row:2;font-size:14px;line-height:1.3;color:#5b6b80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html body[data-kind=hotel] .hotel-mobile-summary-edit{grid-column:3;grid-row:1/3;display:flex;align-items:center;gap:6px;min-height:44px;font-size:0;color:#1668e3}
  html body[data-kind=hotel] .hotel-mobile-summary-edit .hotel-field-icon{display:grid;place-items:center;width:20px;height:20px}
  html body[data-kind=hotel] .hotel-mobile-summary-edit .hotel-field-icon .hi{width:20px;height:20px}
  html body[data-kind=hotel] .hotel-mobile-summary-edit::after{content:"Ändern";font-size:16px;font-weight:700}

  /* Filterzeile: wischbar, 44 px hoch; „Alle Filter“ mit Text; Karte als Pill mit Kartensymbol */
  html body[data-kind=hotel] .hotel-chipbar{gap:8px;align-items:center}
  html body[data-kind=hotel] .hotel-chips-row{gap:8px;padding:2px 0}
  html body[data-kind=hotel] .hotel-chip-btn{height:44px;padding:0 16px;border-radius:22px;font-size:15px;font-weight:600;gap:6px}
  html body[data-kind=hotel] .hotel-chip-btn.hotel-chip-all{font-size:15px;gap:8px;padding:0 16px}
  html body[data-kind=hotel] .hotel-chip-btn.hotel-chip-all::after{content:none}
  html body[data-kind=hotel] .hotel-map-switch{height:44px;padding:0 16px;border-radius:22px;gap:8px;cursor:pointer}
  html body[data-kind=hotel] .hotel-map-switch>i{display:none}
  html body[data-kind=hotel] .hotel-map-switch::before{content:"";width:20px;height:20px;background:currentColor;-webkit-mask:url(/kayak/experience-assets/hv2-map.svg) center/contain no-repeat;mask:url(/kayak/experience-assets/hv2-map.svg) center/contain no-repeat}
  html body[data-kind=hotel] .hotel-map-switch::after{content:"Karte";font-size:15px;font-weight:600}
  html body[data-kind=hotel] .hotel-map-switch:has(input:checked){background:#e8f0fd;border-color:#1668e3;color:#1668e3}

  /* Zeile „924 Unterkünfte in Boston“ | „Sortieren: Empfehlung ˅“ */
  html body[data-kind=hotel] .hotel-list-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;margin:4px 2px 6px}
  html body[data-kind=hotel] .hotel-list-bar .hotel-pricebox,html body[data-kind=hotel] .hotel-list-bar .hotel-list-count,html body[data-kind=hotel] .hotel-list-bar .bxx-alarm-pill{display:none}
  html body[data-kind=hotel] .hotel-list-bar .hotel-results-title.sr-only{position:static;width:auto;height:auto;margin:0;padding:0;overflow:hidden;clip:auto;clip-path:none;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:400;color:#5b6b80}
  html body[data-kind=hotel] .hotel-list-bar .hotel-results-title strong{font-weight:400}
  html body[data-kind=hotel] .hotel-list-bar .hotel-sortbox{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;font-size:14px;color:#5b6b80}
  html body[data-kind=hotel] .hotel-list-bar .hotel-sortbox select{-webkit-appearance:none;appearance:none;border:0;background:transparent url(/kayak/experience-assets/hv2-chevron.svg) right center/16px no-repeat;padding:0 20px 0 0;height:44px;font-size:14px;font-weight:700;color:#12233f}

  /* Karte: großes Bild oben, alles darunter in voller Breite */
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card){border-radius:16px;overflow:hidden;margin:0 0 14px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"media media media" "title title title" "place place place" "rating rating feat" "badge badge badge" "scarce scarce scarce" "line line line" "ab unit btn" "price unit btn" "pax pax btn" "more more more";gap:0 10px;padding:0 14px 12px;align-items:center}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-main,html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-deal{display:contents}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-media{grid-area:media;grid-row:auto;position:relative;margin:0 -14px 12px;min-height:0}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-image,html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-image-missing{display:grid;place-items:center;width:100%;height:190px;aspect-ratio:auto;object-fit:cover;border-radius:0;font-size:14px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .bxx-share{display:none}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-fav{top:12px;right:12px;left:auto;width:44px;height:44px;padding:0;border-radius:50%;box-shadow:0 2px 8px rgba(18,35,63,.18)}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-fav .hi{width:22px;height:22px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-image-count{top:12px;left:12px;right:auto;bottom:auto;display:flex;align-items:center;gap:6px;height:32px;padding:0 10px;border-radius:8px;font-size:14px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-image-count::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url(/kayak/experience-assets/hv2-photo.svg) center/contain no-repeat;mask:url(/kayak/experience-assets/hv2-photo.svg) center/contain no-repeat}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-title{grid-area:title;margin:0 0 4px;font-size:20px;line-height:1.25;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-title a{font-size:20px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-place{grid-area:place;display:flex;flex-wrap:nowrap;align-items:center;gap:6px;margin:0 0 10px;font-size:15px;line-height:1.3;min-width:0}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-place>.hi{width:18px;height:18px;flex:0 0 18px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-place>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating{grid-area:rating;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;margin:0 0 10px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-score{min-width:40px;height:30px;padding:0 7px;border-radius:7px;font-size:16px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-score-label{font-size:16px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-score-count{display:block;font-size:14px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-stars{display:none}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons{grid-area:feat;justify-self:end;display:flex;gap:6px;margin:0 0 10px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon{width:34px;height:34px;border-radius:9px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon .hi{width:19px;height:19px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-perks,html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-more{display:none}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-badge{grid-area:badge;justify-self:start;display:inline-flex;align-items:center;gap:8px;min-height:32px;margin:0 0 8px;padding:4px 12px;border-radius:8px;font-size:15px;line-height:1.25}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-badge::before{content:"";flex:0 0 18px;width:18px;height:18px;background:currentColor;-webkit-mask:url(/kayak/experience-assets/hv2-tag.svg) center/contain no-repeat;mask:url(/kayak/experience-assets/hv2-tag.svg) center/contain no-repeat}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-scarce{grid-area:scarce;display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:15px;font-weight:600;color:#d92d20}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-scarce .hi{width:20px;height:20px;flex:0 0 20px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-top::after{content:"";grid-area:line;height:1px;background:#e4eaf2;margin:4px 0 10px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-ab{grid-area:ab;align-self:end;font-size:14px;line-height:1.1;color:#5b6b80}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-price{grid-area:price;align-self:start;font-size:30px;line-height:1.1;white-space:nowrap}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-unit{grid-area:unit;align-self:center;font-size:13px;line-height:1.25;color:#5b6b80;max-width:96px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax{grid-area:pax;display:flex;align-items:center;gap:12px;margin:6px 0 0;justify-content:flex-start}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax .pk-pax-i{font-size:15px;font-weight:700;gap:3px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax .hi{width:19px;height:19px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax .pk-price-info .hi{width:21px;height:21px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button{grid-area:btn;align-self:center;justify-self:end;height:48px;padding:0 16px;border-radius:10px;font-size:16px;gap:6px;white-space:nowrap}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-deal-unavailable,html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .price-unavailable{grid-area:btn}

  /* Anbieter-Kasten: 3 Anbieter (Logo, Punkt + Preis) + Pfeil zu allen Angeboten; ganze Zelle antippbar */
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-card-providers{display:flex;align-items:stretch;margin:0 14px 14px;border-radius:12px;min-height:60px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell{position:relative;flex:1 1 0;min-width:0;display:grid;align-content:center;gap:4px;padding:8px 10px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell+.hotel-provider-cell{border-left:1px solid #e4eaf2}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell:nth-child(n+4){display:none}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-perks,html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-note{display:none}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-name{font-size:13px;min-height:18px;overflow:hidden}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-name img{max-height:18px;height:auto;width:auto;max-width:100%}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-price{font-size:15px;gap:6px;color:#12233f}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-price.is-best{color:#08893f}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-price i{width:9px;height:9px}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) a.hotel-provider-price::after{content:"";position:absolute;inset:0}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-more{flex:0 0 40px;display:flex;align-items:stretch;border-left:1px solid #e4eaf2}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-more button{width:40px;height:auto;min-height:44px;padding:0;margin:0;border:0;background:none;font-size:0;display:grid;place-items:center;color:#12233f}
  html body[data-kind=hotel] .hotel-card:not(.car-card):not(.package-card) .hotel-provider-more button .hi{width:20px;height:20px;transform:rotate(-90deg)}
}

/* Release .305 – iPhone Suchmaske Hotels/Mietwagen (Sasans Screenshot 16:40, Mietwagen nach „Bearbeiten“): Kasten war nur ~80 % breit
   (Regel body.has-flight-search … .compact-route.hotel-route{grid-template-columns:minmax(180px,260px) auto auto auto;width:fit-content}
   überstimmte die ≤560-Regel), „4. Okt“ stand unter dem Kalendersymbol, „Rückgabe …“ klebte unten am Rand. */
@media (max-width:560px){
  html body.has-flight-search .compact-search.hotel-search:not(.is-multi) .compact-route.hotel-route{width:auto;max-width:none;grid-template-columns:minmax(0,1fr);padding:0}
  html body.has-flight-search .hotel-search .compact-route .hotel-field-dates{width:100%;height:auto;min-height:92px;padding:8px 0;row-gap:4px}
  html body.has-flight-search .hotel-search .compact-route .hotel-field-dates>span{padding:0 14px}
  html body.has-flight-search .hotel-search .compact-route .hotel-field-dates>span:nth-child(2){padding-left:44px}
}

/* Release .306 (Sasan 30.09.: Hotels + Mietwagen auf dem iPhone „genauso wie im Flug“): NUR ≤ 560 px und nur, wenn konto.js Block
   .306 die neue Wartezeit führt (body.bxx-sp-on). Kacheln = Flug-Klassen .bxx-fp (oben in dieser Datei); die alte Vier-Phasen-Leiste
   (Hotels), die Kachelleiste .pk-progress (Mietwagen) und die orange Zeile „… werden abgefragt“ sind aus. Platzhalter in Kartenform:
   Hotels wie V2 (Bild oben volle Breite, darunter Zeilen, Preiszeile), Mietwagen wie die Mietwagenkarte (Bild links, Zeilen rechts,
   Preiszeile darunter); nichts läuft über den Rand. PC/iPad unverändert. */
@media (max-width:560px){
 html body.bxx-sp-on #results-region .search-progress{display:none!important}
 html body.bxx-sp-on #results-region .hotel-loading>.hotel-results-head{display:none!important}
 html body.bxx-sp-on .bxx-fp.bxx-sp{margin:0 0 14px}
 html body.bxx-sp-on #results-region .hotel-loading{padding:0!important;overflow:hidden}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-list{display:flex!important;flex-direction:column;gap:14px;margin:0;padding:0;width:auto;max-width:100%;box-sizing:border-box}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card{display:block!important;position:relative;width:auto!important;min-width:0!important;max-width:100%;height:auto!important;min-height:0!important;margin:0!important;padding:0 0 14px!important;box-sizing:border-box;overflow:hidden;background:#fff;border:1px solid #e4eaf2;border-radius:16px;box-shadow:0 2px 12px rgba(6,46,105,.05);grid-template-columns:none!important}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card::before{content:"";display:block;height:190px;background:#e6ecf4;animation:bxxPvPulse 1.8s ease-in-out infinite}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card>div{display:flex!important;flex-direction:column;gap:10px;width:auto!important;min-width:0;margin:0!important;padding:14px 14px 0!important}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card .skeleton-line{display:block;flex:none;height:13px;margin:0!important;border-radius:7px;background:#e6ecf4;animation:bxxPvPulse 1.8s ease-in-out infinite}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card .skeleton-medium{width:70%!important;height:18px}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card .skeleton-wide{width:48%!important}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card .skeleton-short{width:34%!important}
 html body.bxx-sp-on #results-region .hotel-loading .skeleton-card>.skeleton-price{position:static!important;display:block;width:auto!important;height:46px!important;margin:14px 14px 0!important;border-radius:12px;transform:none!important}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card{display:grid!important;grid-template-columns:44% minmax(0,1fr)!important;column-gap:12px;padding:14px!important}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card::before{height:112px;border-radius:12px;grid-column:1;grid-row:1}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card>div{grid-column:2;grid-row:1;padding:4px 0 0!important}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card .skeleton-medium{width:85%!important}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card .skeleton-wide{width:70%!important}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card .skeleton-short{width:50%!important}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card>.skeleton-price{grid-column:1/-1;grid-row:2;margin:14px 0 0!important}
}
/* Release .307 (Sasan 30.09., 35. Chat: Hotels + Mietwagen „genauso wie beim Flug“ – Kopfzeile mit kleinem „B“, ☰, Suche als graues
   Feld, Herz/Konto; nach der Abfrage „Alle Filter“ direkt unter der Kopfzeile). Die Kopfzeile selbst kommt aus Block .283 (body.bxx-kh,
   von konto.js Block .307 hier nur ≤ 560 px gesetzt). Hier nur: die Zusammenfassung „Ort / Datum … Bearbeiten“ unter dem Bild aus (sie
   steht jetzt oben im grauen Feld; unsichtbar mit Höhe 0 statt display:none, weil konto.js die Preisalarm-Zeile sonst mit ausblendet),
   Ort wie bisher mit großen Anfangsbuchstaben. PC/iPad unverändert. */
@media (max-width:560px){
 html body.bxx-kh:is([data-kind=hotel],[data-kind=mietwagen]) #reise-suche .hotel-mobile-summary{visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important}
 html body.bxx-kh:is([data-kind=hotel],[data-kind=mietwagen]) .site-header .bxx-head-search b{text-transform:capitalize}
}
/* Release .369 (Sasan 30.09., 47. Chat: Flug + Hotel Handy „das kleine B kommt da oben, alleine, daneben die Navi … da kommt die Suchmaske
   rein“): Kopfzeile wie Hotels (Block .283 über body.bxx-kh, von konto.js Block .307 jetzt auch für data-kind=paket gesetzt, nur ≤ 560 px).
   Hier nur: die Zusammenfassung Von/Nach/Reisedatum/Reisende unter dem Bild aus (steht jetzt im grauen Feld; Höhe 0 wie Block .307, damit
   die Preisalarm-Zeile bleibt). PC/iPad unverändert. */
@media (max-width:560px){
 html body.bxx-kh[data-kind=paket] #reise-suche .package-summary{visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important}
}
/* Release .312 (Sasan 30.09., 35. Chat: „rechts einen Rahmen drumherum genauso wie beim Flug, damit man weiß, wo das Hotel anfängt
   und endet – und links genauso, so eine Form Ticket“): NUR Handy ≤ 560 px. Hotelkarte (V2) und Mietwagenkarte als Ticket wie die
   Flugkarte (Block .274): Rahmen, rechts orange Kante 5 px, Schatten, 6 px Abstand zum Rand, Kerbe links (grau) und rechts (orange).
   Hotel: Kerben an der Unterkante des Bildes (190 px); Mietwagen: Kerben an der Trennlinie über dem Preis. PC/iPad unverändert. */
@media (max-width:560px){
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card){position:relative;overflow:visible!important;margin:0 6px 16px;border:1px solid #e1e8f0;border-right:5px solid #ff795c;border-radius:16px;box-shadow:0 10px 18px -6px #102c5033,0 1px 3px #102c501a}
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media{overflow:hidden;border-radius:15px 11px 0 0}
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card)::before,html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card)::after{content:"";position:absolute;z-index:3;box-sizing:border-box;border-radius:50%;background:#fff;pointer-events:none}
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card)::before{left:-11px;top:180px;width:20px;height:20px;border:1px solid #e1e8f0;clip-path:inset(-2px -2px -2px 50%)}
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card)::after{right:-18px;top:175px;width:30px;height:30px;border:5px solid #ff795c;clip-path:inset(-2px 50% -2px -2px)}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card{position:relative;overflow:visible!important;margin:0 6px 16px;border:1px solid #e1e8f0;border-right:5px solid #ff795c;border-radius:16px;box-shadow:0 10px 18px -6px #102c5033,0 1px 3px #102c501a}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card>.car-card-top{border-radius:15px 11px 15px 15px}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal{position:relative}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal::before,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal::after{content:"";position:absolute;z-index:3;box-sizing:border-box;border-radius:50%;background:#fff;pointer-events:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal::before{left:-21px;top:-11px;width:20px;height:20px;border:1px solid #e1e8f0;clip-path:inset(-2px -2px -2px 50%)}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal::after{right:-28px;top:-16px;width:30px;height:30px;border:5px solid #ff795c;clip-path:inset(-2px 50% -2px -2px)}
}
/* Release .313 (Sasan 30.09., 36. Chat: „du musst die gleiche Technik benutzen wie beim Flug – diese Wartezeiten beim Hotel … in
   Desktop auch“): Hotels auf PC/iPad (ab 561 px) mit der Wartezeit der Flugsuche – Go schickt bis zum Endstand nur Zähler
   (stay_preview.go), drei Kacheln Unterkünfte | Anbieter | Preise (Aussehen aus Block .290, konto.js Block .306), graue Platzhalter in
   der Form der PC-Hotelkarte (Bild links, Zeilen, Preis rechts), am Ende alle Karten mit Preisen auf einmal und Rutschen zu „Alle
   Filter“. Alte Vier-Phasen-Leiste und Zeile „Unterkünfte in … werden abgefragt“ aus. iPhone, Mietwagen und Flug unverändert. */
@media (min-width:561px){
 html body.bxx-sp-on[data-kind=hotel] #results-region .search-progress{display:none!important}
 html body.bxx-sp-on[data-kind=hotel] #results-region .hotel-loading>.hotel-results-head{display:none!important}
 html body.bxx-sp-on[data-kind=hotel] .bxx-fp.bxx-sp{margin:0 0 18px}
 html body.bxx-sp-on[data-kind=hotel] #results-region .hotel-loading .skeleton-card::before,html body.bxx-sp-on[data-kind=hotel] #results-region .hotel-loading .skeleton-line{animation:bxxPvPulse 1.8s ease-in-out infinite}
}
/* Release .314 (Sasan 30.09., 36. Chat: Hotel-Ergebnisseite PC „genau wie hotel-mockup/desktop-ipad/v1.png“ – „das ist eine
   Designumstellung … muss genauso übernommen werden“). Schritt 1: Kopfzeile wie im Mockup (Logo + „Mehr Urlaub für weniger.“,
   Reiter Hotels | Flüge | Pauschalreisen | Mietwagen | Deals, rechts Herz | Hilfe | Mein Konto | ☰ – ☰ klappt die bisherige
   Navigation mit allen Bereichen als Menü auf), ohne Hero-Bild und Voucher, Suchleiste volle Breite (Reiseziel | Reisedaten mit
   Nächten | Gäste & Zimmer | blauer Knopf „Suche ändern“). Markup: index.html (hv1-*, nur Hotel-Ergebnisseite), Texte: konto.js
   Block .314. NUR PC ab 1200 px mit Maus (hover:hover, pointer:fine) – iPad/iPhone, Flug, Mietwagen unverändert. */
.hv1-claim,.hv1-nav,.hv1-help,.hv1-account,.hv1-sum,.hv1-pin,.hv1-ico{display:none}
/* Release .315: iPhone-Kopfzeile (Block .283, bxx-kh) zeigt sonst alle Links in .tnav-tools – Hilfe/Mein Konto außerhalb des PC hart aus. */
html body .site-header .tnav-tools>a.hv1-help,html body .site-header .tnav-tools>a.hv1-account,html body .site-header .header-inner>.hv1-claim,html body .site-header .header-inner>.hv1-nav{display:none!important}
/* Release .316 (Sasan 30.09., 37. Chat: „nur auf dem Desktop … unsere Header bleibt … die Navigation bleibt … die Hero bleibt …
   von der Suchmaske nach unten“ + Antwort „Unsere alte Suchmaske“): PC-Block .314 (Kopfzeile wie Mockup, ohne Hero/Voucher, Suchleiste
   auf grauem Band) wieder entfernt – Kopfzeile, Navigation, Hero und Suchmaske am PC wie vor .314. Mockup v1 gilt erst unter der Suchmaske. */
/* Release .317 (Sasan 30.09., 37. Chat, Frage „Mietwagen am PC und iPad die gleiche Wartezeit wie Hotel?“ – „Ja, bitte, setze das
   genauso um“): Mietwagen auf PC/iPad (ab 561 px) wie Block .313 – Kacheln Mietwagen | Vermieter | Preise, graue Platzhalter, keine
   Karte und kein Preis vor dem Endstand, dann alle auf einmal und Rutschen zu „Alle Filter“. iPhone, Hotel und Flug unverändert. */
@media (min-width:561px){
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .search-progress{display:none!important}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading>.hotel-results-head{display:none!important}
 html body.bxx-sp-on[data-kind=mietwagen] .bxx-fp.bxx-sp{margin:0 0 18px}
 html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-card::before,html body.bxx-sp-on[data-kind=mietwagen] #results-region .hotel-loading .skeleton-line{animation:bxxPvPulse 1.8s ease-in-out infinite}
}
/* Release .319 (Sasan 30.09., 37. Chat: PC nach hotel-mockup/desktop-ipad/v1.png, „eins zu eins, Pixel für Pixel“, aber erst UNTER der
   Suchmaske – Kopfzeile, Navigation, Hero bleiben; „Alles weg wie Mockup“). Drei Spalten wie im Mockup (1586 px: Filter 260 | Liste | rechts 257,
   Abstand 23): Filterspalte „Ergebnisse filtern“ aus der vorhandenen Chip-Leiste (Gruppen immer offen/aufklappbar), Mitte „N Hotels in <Stadt>“
   + „Sortieren nach“, rechts Karte + „Beliebte Stadtteile“ + „<Stadt> erleben“. Aufbau: konto.js Block .319 (Klasse .hv1 nur am PC). */
@media (min-width:1200px) and (hover:hover) and (pointer:fine){
 html body[data-kind=hotel] #results-region .hotel-results.hv1{display:grid!important;grid-template-columns:260px minmax(0,1fr) 257px;column-gap:23px;align-items:start}
 html body[data-kind=hotel] #results-region .hotel-results.hv1>*{grid-column:1/-1}
 html body[data-kind=hotel] #results-region .hotel-results.hv1>.hotel-chipbar{grid-column:1;grid-row:2}
 html body[data-kind=hotel] #results-region .hotel-results.hv1>.hotel-layout{display:contents!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-main{grid-column:2;grid-row:2;min-width:0;width:auto!important;max-width:none!important;margin:0!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1>.hv1-side{grid-column:3;grid-row:2;display:flex;flex-direction:column;gap:14px;min-width:0}
 html body[data-kind=hotel] #results-region .hotel-results.hv1>.hotel-map-fab{display:none!important}
 html body[data-kind=hotel]:has(#results-region .hotel-results.hv1) .bxx-alarm-row{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1>.hotel-chipbar{position:static!important;top:auto!important;z-index:auto!important;display:block!important;margin:0!important;padding:18px 20px 6px!important;width:auto!important;min-width:0;background:#fff!important;border:1px solid #e7ecf2!important;border-radius:12px!important;box-shadow:0 2px 12px rgba(16,44,80,.05)!important;overflow:visible!important;box-sizing:border-box}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-fhead{padding:0 0 12px;border-bottom:1px solid #e8edf2}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-ftitle{margin:0;font-size:18px;font-weight:700;line-height:24px;color:#14233a}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-fcount{margin:3px 0 0;font-size:12.5px;line-height:17px;color:#6b7a8f}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chips-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;flex-wrap:nowrap!important;gap:0!important;overflow:visible!important;margin:0!important;padding:0!important;width:auto!important;-webkit-mask-image:none!important;mask-image:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-all,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-reset,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-map-switch,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-count,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-done,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap:has(>[data-hotel-chip=rating]),html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap:has(>[data-hotel-chip=deals]),html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap:has(>[data-hotel-chip=distance]){display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap{position:static!important;display:block!important;margin:0!important;padding:13px 0!important;border-bottom:1px solid #e8edf2}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap[data-hv1=types]{border-bottom:0}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-btn{display:flex!important;align-items:center;justify-content:space-between;gap:8px;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;font-size:14px!important;font-weight:700!important;line-height:20px!important;color:#14233a!important;text-align:left;cursor:pointer}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-btn .hi{flex:none;width:16px;height:16px;margin:0!important;color:#4a5b72;transform:rotate(180deg);transition:transform .2s ease}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-shut>.hotel-chip-btn .hi{transform:none}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-panel{display:block!important;position:static!important;inset:auto!important;transform:none!important;width:auto!important;min-width:0!important;max-width:none!important;max-height:none!important;overflow:visible!important;margin:9px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;animation:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-shut>.hotel-chip-panel{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-panel>.hotel-panel-title:first-child{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap[data-hv1=stars] .hotel-panel-title-sub,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap[data-hv1=stars] label:has([data-hotel-api-filter=officialOnly]),html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap[data-hv1=board] .hotel-panel-title-sub,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-wrap[data-hv1=board] label:has(>input[value=""]){display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row{display:flex!important;align-items:center;gap:9px;min-height:0!important;margin:0!important;padding:3.5px 0!important;border:0!important;background:none!important;font-size:13px!important;line-height:17px;color:#33445c;cursor:pointer}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row[hidden]{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-panel:has(>[data-hotel-more]:not([data-open="1"]))>.hotel-filter-row:nth-of-type(n+7){display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row>span:not(.hotel-filter-stars):not(.hv1-fi){flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row em{flex:none;margin-left:auto;font-style:normal;font-size:12px;color:#7a8799}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row em:not(:empty)::before{content:"("}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row em:not(:empty)::after{content:")"}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row em:empty{display:none}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row input{-webkit-appearance:none;appearance:none;flex:none;width:16px;height:16px;margin:0!important;border:1.5px solid #b9c4d2;border-radius:4px;background:#fff;cursor:pointer}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-row input:checked{border-color:#1462d8;background:#1462d8;box-shadow:inset 0 0 0 3px #fff}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-stars{flex:none!important;font-size:13px;letter-spacing:1px;color:#f5a623}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-stars .hv1-rest{font-style:normal;color:#d5dbe3}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-fi{display:grid;place-items:center;flex:none;width:18px;height:18px;color:#33445c}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-fi svg{width:17px;height:17px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-more{margin:5px 0 0!important;padding:0!important;border:0!important;background:none!important;font-size:13px;font-weight:600;color:#1462d8;cursor:pointer}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-filter-empty{margin:0;font-size:13px;color:#7a8799}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-price-label{margin:0 0 8px!important;font-size:13px!important;color:#33445c}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-range input[type=range]{accent-color:#1462d8}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-price-inputs{display:flex!important;justify-content:space-between;margin:6px 0 0!important;gap:0}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-price-inputs output{min-width:0!important;height:auto!important;padding:0!important;border:0!important;background:none!important;font-size:11.5px!important;color:#7a8799!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-list-bar{display:flex!important;align-items:center;justify-content:space-between;gap:16px;min-height:34px;margin:0 0 12px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-ltitle{margin:0;min-width:0;font-size:20px;font-weight:700;line-height:28px;color:#14233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-pricebox,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-list-count,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-sort-info{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-sortbox{display:flex!important;align-items:center;gap:12px;margin:0 0 0 auto!important;font-size:13px!important;font-weight:400!important;color:#5b6b80!important;white-space:nowrap}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-sortbox select{width:190px!important;height:34px!important;padding:0 12px!important;border:1px solid #d9e1ea!important;border-radius:8px!important;background-color:#fff!important;font-size:13px!important;font-weight:500!important;color:#14233a!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-side>.hotel-map-column{display:block!important;position:relative!important;top:auto!important;inset:auto!important;width:auto!important;height:231px!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;border:1px solid #e3e8ef;border-radius:12px;overflow:hidden;background:#e9eef4;box-shadow:0 2px 12px rgba(16,44,80,.05)}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-side .hotel-map{position:absolute!important;inset:0!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;border:0!important;border-radius:0!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-side .hotel-map-note{position:absolute;left:6px;bottom:4px;z-index:500;margin:0!important;padding:0 4px;border-radius:4px;background:rgba(255,255,255,.8);font-size:9px!important;line-height:14px;color:#5b6b80}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-mapbig{position:absolute;right:12px;bottom:14px;z-index:600;display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border:0;border-radius:8px;background:#fff;box-shadow:0 2px 10px rgba(16,44,80,.18);font:inherit;font-size:12.5px;font-weight:600;color:#14233a;cursor:pointer}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-mapbig svg{width:16px;height:16px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1.hv1-bigmap .hv1-side>.hotel-map-column{position:fixed!important;inset:24px 40px!important;z-index:900;width:auto!important;height:auto!important;box-shadow:0 30px 80px rgba(10,30,60,.35)}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hoods{padding:16px 14px 6px;background:#fff;border:1px solid #e7ecf2;border-radius:12px;box-shadow:0 2px 12px rgba(16,44,80,.05)}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hoods[hidden]{display:none}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hoods h3{margin:0 0 8px;font-size:15px;font-weight:700;line-height:20px;color:#14233a}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood{display:grid;grid-template-columns:62px minmax(0,1fr) 16px;align-items:center;gap:12px;width:100%;margin:0;padding:6px 0;border:0;border-top:1px solid #edf1f5;background:none;font:inherit;text-align:left;cursor:pointer}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hoods h3+.hv1-hood{border-top:0}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood img,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood>i{display:block;width:62px;height:46px;border-radius:6px;object-fit:cover;background:#e9eef4}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood b{display:block;font-size:13.5px;font-weight:700;line-height:18px;color:#14233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood small{display:block;margin-top:2px;font-size:12.5px;line-height:16px;color:#6b7a8f}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood svg{width:16px;height:16px;color:#4a5b72}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood:hover b,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-hood[aria-pressed=true] b{color:#1462d8}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-city{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:193px;padding:52px 16px 20px;border-radius:12px;overflow:hidden;background:linear-gradient(160deg,#1d6fe0,#0b3d8c);color:#fff!important;text-decoration:none!important;box-sizing:border-box}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-city img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-city.has-img::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.05) 20%,rgba(0,0,0,.55))}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-city b{position:relative;z-index:2;font-size:20px;font-weight:700;line-height:26px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-city-btn{position:relative;z-index:2;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 16px;border-radius:8px;background:#fff;font-size:12.5px;font-weight:600;color:#14233a}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-city-btn svg{width:15px;height:15px}
}

/* Release .320 (Sasan 30.09., 38. Chat – Fehler aus .319 beim Live-Test, PC nach v1.png): „Alle Filter“-Knopf in der Filterspalte aus (die
   Regel .hotel-chip-btn{display:flex} aus .319 schlug .hotel-chip-all), „Preisalarm“ neben der Überschrift aus, auf der kleinen Karte
   „Ungefähre Lage“ und der KAYAK-Vergleichskasten aus (alles nicht im Mockup), Rand links/rechts 40 px wie im Mockup (Filter x 40, Liste x 323). */
@media (min-width:1200px) and (hover:hover) and (pointer:fine){
 html body[data-kind=hotel] #results-region .hotel-results.hv1{margin:0 16px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-chip-btn.hotel-chip-all{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .bxx-alarm-pill{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-map-approx,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-compare{display:none!important}
}

/* Release .321 (Sasan 30.09., 38. Chat): Hotelkarte am PC eins zu eins nach hotel-mockup/desktop-ipad/v1.png – „die Dimensionen des Bildes
   und daneben alles miteinander stimmen“, nichts schiebt sich: Bild 295×188 (Radius 8), daneben kompakt genau so hoch wie das Bild (Name +
   Sterne + Herz, Ort „<Stadtteil>, <Stadt>“ · km · Karten-Symbol, Bewertung, Ausstattung mit Text), rechts durch Linie getrennt der breitere
   Preisblock 220 px (Etikett, „Nur noch N Zimmer“, ab / Preis mit Personen-Symbolen daneben, Gesamtpreis, Knopf 220×48 „Zum Angebot →“);
   Anbieterleiste 4 Zellen (Logo, Punkt, Preis, Hinweise als Symbole mit HTML-Tooltip) + Spalte „Alle Anbieter (N)“. Aufbau konto.js Block .321. */
@media (min-width:1200px) and (hover:hover) and (pointer:fine){
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card{border-radius:12px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-top{display:grid!important;grid-template-columns:295px minmax(0,1fr) 237px!important;column-gap:16px!important;padding:10px 15px 0 10px!important;align-items:stretch!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-media{width:295px!important;height:188px!important;min-height:0!important;border-radius:8px!important;overflow:hidden}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-image{width:100%!important;height:100%!important;object-fit:cover;border-radius:8px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .bxx-share,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-perks,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-deal-more,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-note,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-perks{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-image-nav{top:calc(50% - 15px)!important;width:30px!important;height:30px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-main{display:flex!important;flex-direction:column;gap:0!important;row-gap:0!important;min-width:0;height:188px;margin:0!important;padding:4px 0 14px!important;box-sizing:border-box;overflow:hidden}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-chead{display:flex;align-items:center;gap:10px;min-width:0}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-title{flex:0 1 auto;min-width:0;margin:0!important;font-size:20px!important;line-height:26px!important;font-weight:700!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-title a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#14233a!important;font:inherit}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-chead .hotel-stars{flex:none;margin:0!important;font-size:18px!important;line-height:26px!important;letter-spacing:1px;color:#f5b301!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-chead .hotel-stars .hv1-rest{font-style:normal;color:#d5dbe3}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-chead .hotel-fav{position:static!important;inset:auto!important;flex:none;display:grid!important;place-items:center;width:28px!important;height:26px!important;margin:0 0 0 auto!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:#14233a!important;backdrop-filter:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-chead .hotel-fav svg{width:22px!important;height:22px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-place{display:flex!important;align-items:center;gap:6px;min-width:0;margin:8px 0 0!important;font-size:14.5px!important;line-height:20px!important;color:#5b6b80!important;white-space:nowrap}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-place>svg{flex:none;width:16px!important;height:16px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-place>span:not(.hv1-where):not(.hv1-km){display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-where{min-width:0;overflow:hidden;text-overflow:ellipsis}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-km{flex:none;font-size:13px;color:#7a8799}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-km::before{content:"·";margin-right:6px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-place .hotel-map-link{flex:none;display:grid!important;place-items:center;width:24px!important;height:20px!important;margin:0!important;padding:0!important;border:0!important;border-radius:6px!important;background:none!important;font-size:0!important;color:#1462d8!important;cursor:pointer}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-place .hotel-map-link svg{width:16px!important;height:16px!important;margin:0!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-rating{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;column-gap:10px;row-gap:1px;align-items:center;margin:12px 0 0!important;padding:0!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-score{grid-row:1/3;display:grid!important;place-items:center;min-width:48px;height:32px!important;margin:0!important;padding:0 8px!important;border-radius:6px!important;background:#0f8a3e!important;color:#fff!important;font-size:16px!important;font-weight:700!important;line-height:32px!important;box-sizing:border-box}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-score-label{grid-column:2;grid-row:1;margin:0!important;font-size:15px!important;font-weight:700!important;line-height:19px!important;color:#14233a!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-score-count{grid-column:2;grid-row:2;margin:0!important;font-size:12.5px!important;line-height:16px!important;color:#6b7a8f!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-perks{grid-column:3;grid-row:1/3;display:flex;gap:6px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-perks i{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e8f6ee;color:#16803c}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-perks svg{width:15px;height:15px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-main>.hotel-features-icons{display:flex!important;align-items:flex-start;flex:none!important;flex-wrap:nowrap!important;gap:16px!important;height:auto!important;min-height:0!important;max-height:none!important;margin:auto 0 0!important;padding:0!important;overflow:visible!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-feature-icon{display:flex!important;flex-direction:column;align-items:center;gap:6px;width:auto!important;height:auto!important;min-width:38px;max-width:80px;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;color:#33445c!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-feature-icon>svg{box-sizing:content-box;width:18px!important;height:18px!important;padding:8px 10px;border-radius:8px;background:#f1f4f8}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-fl{display:block;max-width:80px;font-size:12px;font-weight:400;line-height:15px;color:#33445c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-deal{display:flex!important;flex-direction:column;align-items:stretch!important;justify-content:flex-start!important;width:auto!important;height:188px;min-width:0;margin:0!important;padding:4px 0 11px 16px!important;border:0!important;border-left:1px solid #e8edf2!important;background:none!important;text-align:left!important;box-sizing:border-box}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-deal-badge{align-self:flex-start;display:block!important;max-width:calc(100% + 8px);height:auto!important;min-height:0!important;margin:0!important;padding:3px 7px!important;border:0!important;border-radius:4px!important;background:#e5f6ea!important;color:#16803c!important;font-size:11px!important;font-weight:600!important;line-height:14px!important;text-align:left!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-deal .hotel-card-scarce{display:flex!important;align-items:center;gap:5px;margin:9px 0 0!important;font-size:12.5px!important;line-height:16px!important;color:#e02424!important;white-space:nowrap;overflow:hidden}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-deal .hotel-card-scarce svg{flex:none;width:14px!important;height:14px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-deal-ab{display:block!important;margin:auto 0 0!important;font-size:12px!important;line-height:15px!important;color:#6b7a8f!important;text-align:left!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-prow{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-deal-price{display:block!important;margin:0!important;font-size:24px!important;line-height:30px!important;font-weight:800!important;color:#14233a!important;text-align:left!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-prow .hotel-deal-pax{display:flex!important;align-items:center;gap:8px;margin:0 0 6px!important;padding:0!important;color:#5b6b80!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-deal-unit{display:block!important;margin:0!important;font-size:12px!important;line-height:15px!important;color:#6b7a8f!important;text-align:left!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-deal-button{display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%!important;height:48px!important;min-height:0!important;margin:10px 0 0!important;padding:0!important;border:0!important;border-radius:8px!important;background:#ff6a13!important;color:#fff!important;font-size:17px!important;font-weight:700!important;box-sizing:border-box}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-deal-button svg{width:20px!important;height:20px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-providers{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr)) 165px;margin:14px 15px 10px 10px!important;padding:0!important;border:1px solid #e3e8ef!important;border-radius:8px!important;background:#fff!important;overflow:visible!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-cell{display:grid!important;grid-template-columns:auto minmax(0,1fr);column-gap:8px;row-gap:5px;align-content:center;min-width:0;width:auto!important;height:53px!important;min-height:0!important;margin:0!important;padding:6px 16px!important;border:0!important;border-left:1px solid #e8edf2!important;border-radius:0!important;background:none!important;box-sizing:border-box}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-cell:first-child{border-left:0!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-name{grid-column:1/-1;display:flex!important;align-items:center;gap:5px;height:18px!important;margin:0!important;overflow:hidden;white-space:nowrap;font-size:13px!important;line-height:18px!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-name img{max-height:16px!important;width:auto!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-price{grid-column:1;grid-row:2;display:flex!important;align-items:center;gap:7px;width:auto!important;margin:0!important;padding:0!important;font-size:14.5px!important;font-weight:700!important;line-height:18px!important;white-space:nowrap}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-pi{grid-column:2;grid-row:2;display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-pi>i{display:grid;place-items:center;flex:none;width:18px;height:18px;margin:0!important;padding:0!important;background:none!important;color:#7a8799;font-style:normal}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-pi>i svg{width:15px!important;height:15px!important;margin:0!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-pi .hotel-perk.is-green{color:#16803c!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hv1-pi .hotel-perk b{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-more{grid-column:5;grid-row:1;display:none!important;align-items:center;justify-content:center;margin:0!important;padding:0!important;border:0!important;border-left:1px solid #e8edf2!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-more.hv1-on{display:flex!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-more button{display:inline-flex!important;align-items:center;gap:6px;margin:0!important;padding:0!important;border:0!important;background:none!important;font-size:13.5px!important;font-weight:500!important;color:#1462d8!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-provider-more button svg{width:14px!important;height:14px!important}
}
.hv1-tipbox{position:fixed;left:0;top:0;z-index:3000;max-width:300px;padding:6px 10px;border-radius:7px;background:#0c1f44;color:#fff;font:600 12px/1.35 'Segoe UI',Arial,sans-serif;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;pointer-events:none;transition:opacity .12s}
.hv1-tipbox.is-on{opacity:1}

/* Release .322 (38. Chat): „Nur noch N Zimmer zu diesem Preis“ im Preisblock wurde rechts abgeschnitten – 12 px und den Kartenrand (15 px) mitnutzen. */
@media (min-width:1200px) and (hover:hover) and (pointer:fine){
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hotel-card .hotel-card-deal .hotel-card-scarce{margin-right:-12px!important;font-size:12px!important;overflow:visible!important}
}

/* Release .323 (Sasan 30.09., 38. Chat): statt des blauen Kastens „<Stadt> erleben“ „unsere Erlebnisreisen – Viator, vier Stück, das nutzen wir
   schon im Flug“ → rechte Spalte „Erlebnisse in <Stadt>“ (Werbung · Viator) mit 4 Angeboten aus /kayak/api/experiences?city=… (wie Flug),
   Stil wie „Beliebte Stadtteile“. Liefert Viator für die Stadt nichts (z. B. Boston), bleibt der bisherige Kasten. Aufbau konto.js Block .323. */
@media (min-width:1200px) and (hover:hover) and (pointer:fine){
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-side:has(>.hv1-exp) > .hv1-city{display:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp{padding:16px 14px 12px;background:#fff;border:1px solid #e7ecf2;border-radius:12px;box-shadow:0 2px 12px rgba(16,44,80,.05)}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 0 8px}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp h3{margin:0;min-width:0;font-size:15px;font-weight:700;line-height:20px;color:#14233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-ad{flex:none;font-size:10.5px;line-height:14px;color:#7a8799}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:12px;padding:7px 0;border-top:1px solid #edf1f5;color:inherit!important;text-decoration:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-head+.hv1-exp-item{border-top:0}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item img,html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item>i{display:block;width:62px;height:46px;border-radius:6px;object-fit:cover;background:#e9eef4}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px;font-weight:700;line-height:16px;color:#14233a}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item small{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:12px;line-height:15px;color:#6b7a8f;white-space:nowrap}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item small strong{font-weight:700;color:#14233a}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item small svg{width:12px;height:12px;color:#f5a623}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-item:hover b{color:#1462d8}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-all{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:12.5px;font-weight:600;color:#1462d8!important;text-decoration:none!important}
 html body[data-kind=hotel] #results-region .hotel-results.hv1 .hv1-exp-all svg{width:14px;height:14px}
}

/* Release .324 (Sasan 30.09., 37./38. Chat: „die Suchmasken nehmen wir [aus dem Mockup] … Hero bleibt“): PC-Suchleiste nach v1 halb auf dem
   Hero an der Stelle der bisherigen Suchmaske, rechts neben dem Voucher (1.099 px statt Mockup 1.462 px): Reiseziel | Reisedaten „… (N Nächte)“ |
   Gäste & Zimmer | blauer Knopf „Suche ändern“, Beschriftung klein darüber. KAYAK-Partnerzeile darunter bleibt. Texte: konto.js Block .324. */
@media (min-width:1200px) and (hover:hover) and (pointer:fine){
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-form-main{width:auto!important;max-width:none!important;margin:0!important}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .compact-route.hotel-route{display:grid!important;grid-template-columns:minmax(0,1fr) 405px 250px 190px!important;align-items:center!important;width:auto!important;height:76px!important;min-height:0!important;padding:6px 6px 6px 0!important;gap:0!important;box-sizing:border-box}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-route>*:not(.search-button){position:relative;justify-self:stretch!important;width:auto!important;max-width:none!important;min-width:0;height:64px!important;margin:0!important;box-shadow:none!important;border:0!important;background:none!important}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-route>.search-popover::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:1px;background:#e3e8ef;z-index:1}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-field,html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .search-travelers .search-popover-trigger{display:flex!important;align-items:center;gap:0;width:100%!important;height:64px!important;min-height:0!important;padding:0 14px 0 20px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;text-align:left;box-sizing:border-box}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-field .hotel-field-icon{flex:none;width:24px;height:24px;margin:0 16px 0 0!important;color:#2a3d57}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-destination>.hotel-field-icon>svg{display:none}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-destination>.hotel-field-icon>.hv1-pin{display:grid;place-items:center;width:24px;height:24px}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hv1-pin svg,html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-field-icon svg,html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hv1-ico svg{width:24px;height:24px}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-destination .hotel-field-text{position:relative;display:block;flex:1 1 auto;min-width:0;padding-top:17px}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-destination .hotel-field-text::before{content:"Reiseziel";position:absolute;left:0;top:0;font-size:12px;font-weight:500;line-height:14px;color:#6b7a8f}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-destination .airport-entry{width:100%;height:22px;padding:0!important;border:0!important;background:none!important;font-size:16px!important;font-weight:600!important;color:#14233a!important;text-transform:capitalize;text-overflow:ellipsis}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-destination .airport-clear{display:none!important}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-field-dates>span:not(.hv1-sum):not(.hv1-ico),html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-field-dates>svg{display:none!important}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hv1-ico{display:grid!important;place-items:center;flex:none;width:24px;height:24px;margin:0 16px 0 0;color:#2a3d57}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .search-travelers .search-popover-trigger>:not(.hv1-sum):not(.hv1-ico){display:none!important}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hv1-sum{position:relative;display:block!important;flex:1 1 auto;min-width:0;padding-top:17px;font-size:15px;font-weight:600;line-height:22px;color:#14233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hv1-sum::before{position:absolute;left:0;top:0;font-size:12px;font-weight:500;line-height:14px;color:#6b7a8f}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-field-dates .hv1-sum::before{content:"Reisedaten"}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .search-travelers .hv1-sum::before{content:"Gäste & Zimmer"}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hv1-sum b{font-weight:600}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hv1-sum em{margin-left:8px;font-style:normal;font-weight:400;font-size:14px;color:#6b7a8f}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-route>.search-button{justify-self:stretch;width:auto!important;height:56px!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:8px!important;background:#1462d8!important;color:transparent!important;font-size:0!important;box-shadow:0 4px 12px rgba(20,98,216,.22)!important}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-route>.search-button *{display:none!important}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-route>.search-button::after{content:"Suche ändern";color:#fff;font-size:17px;font-weight:600}
 html body[data-kind=hotel].has-flight-search:has(.hv1-nav) #reise-suche .hotel-route>.search-button:hover{background:#0f53bb!important}
}

/* Release .325 (Sasan 30.09., 37.–39. Chat: iPad + iPad Mini nach hotel-mockup/desktop-ipad/v2.png ab der Suchmaske, „eins zu eins, Pixel für
   Pixel“; Kopfzeile, Navigation und Hero bleiben): Schritt 1 – Suchleiste halb auf dem Hero (Reiseziel | Reisedaten mit Nächten | Gäste & Zimmer |
   oranger „✎ Suche ändern“), Chipzeile Filter | Preis | Sterne | Bewertung | Lage | Ausstattung | Hoteltyp + „Karte“ rechts, Zeile „N Hotels in
   <Stadt> gefunden“ + „Sortieren nach“. Nicht im Mockup → aus: Chips Deals/Hotelkategorie, Preisalarm, Preistyp, Ergebniszahl, Sortier-Info,
   „Ungefähre Lage“ und KAYAK-Vergleichskasten auf der Karte. Nur mit Klasse .hv2 (konto.js Block .325: Touch 561–1400 px). Hochformat < 1000 px:
   Suchleiste zweizeilig (sonst passen Datum und Gäste nicht). */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #reise-suche .hotel-form-main{width:auto!important;max-width:none!important;margin:0!important}
 html body.hv2[data-kind=hotel] #reise-suche .compact-route.hotel-route{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.03fr) minmax(0,.93fr) auto!important;align-items:center!important;width:auto!important;height:74px!important;min-height:0!important;padding:0 12px 0 0!important;gap:0!important;border:1px solid #e3e8ef!important;border-radius:12px!important;background:#fff!important;box-shadow:0 6px 18px rgba(20,35,58,.08)!important;box-sizing:border-box}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>*:not(.search-button):not(.is-picker-open){position:relative;justify-self:stretch!important;width:auto!important;max-width:none!important;min-width:0;height:72px!important;margin:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-popover::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:1px;background:#e3e8ef;z-index:1}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open).hotel-field,html body.hv2[data-kind=hotel] #reise-suche .hotel-field-dates,html body.hv2[data-kind=hotel] #reise-suche .search-travelers .search-popover-trigger{display:flex!important;align-items:center;gap:0;width:100%!important;height:72px!important;min-height:0!important;padding:0 14px 0 24px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;text-align:left;box-sizing:border-box}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open)>.hotel-field-icon{display:grid!important;place-items:center;flex:none;width:26px;height:26px;margin:0 18px 0 0!important;color:#2a3d57}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open)>.hotel-field-icon>svg,html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open)>.airport-field-label,html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .hotel-field-text>small,html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .airport-clear{display:none!important}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-pin,html body.hv2[data-kind=hotel] #reise-suche .hv2-ico{display:grid!important;place-items:center;flex:none;width:26px;height:26px;color:#2a3d57}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-ico{order:-1;margin:0 18px 0 0}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-pin svg,html body.hv2[data-kind=hotel] #reise-suche .hv2-ico svg{width:26px;height:26px}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .hotel-field-text{position:relative;display:block;flex:1 1 auto;min-width:0;height:44px}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .airport-entry{display:block;width:100%;height:25px;padding:0!important;border:0!important;background:none!important;font-size:18px!important;font-weight:600!important;line-height:25px;color:#14233a!important;text-overflow:ellipsis}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .airport-entry:not(:focus){color:transparent!important}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-dest{position:absolute;left:0;top:0;right:0;display:block;font-size:18px;font-weight:600;line-height:25px;color:#14233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .hotel-field-text:focus-within .hv2-dest{display:none}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .hotel-field-text::after{content:"Reiseziel";position:absolute;left:0;top:26px;font-size:14px;font-weight:400;line-height:18px;color:#6b7a8f;pointer-events:none}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-field-dates>:not(.hv2-sum):not(.hv2-ico),html body.hv2[data-kind=hotel] #reise-suche .search-travelers .search-popover-trigger>:not(.hv2-sum):not(.hv2-ico){display:none!important}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-sum{display:block!important;flex:1 1 auto;min-width:0;font-size:18px;font-weight:400;line-height:25px;color:#14233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-sum b{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-sum em{display:block;font-style:normal;font-size:14px;line-height:18px;color:#6b7a8f}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-button{justify-self:end;display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;min-width:0!important;height:52px!important;min-height:0!important;margin:0!important;padding:0 28px!important;border:0!important;border-radius:8px!important;background:#ff6a13!important;color:#fff!important;font-size:0!important;box-shadow:none!important}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-button>:not(.hv2-btn){display:none!important}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-btn{display:inline-flex!important;align-items:center;gap:12px;font-size:19px;font-weight:600;line-height:1;color:#fff;white-space:nowrap}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-btn svg{width:22px;height:22px}
 html body.hv2[data-kind=hotel] #results-region .hotel-chipbar{display:flex!important;align-items:center;gap:14px;height:auto!important;min-height:48px;margin-top:18px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row{flex:1 1 auto;min-width:0;gap:14px!important;padding:1px 0!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-btn,html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap>.hotel-chip-btn{display:inline-flex!important;align-items:center;gap:12px;height:46px!important;min-height:0!important;padding:0 20px!important;border:1px solid #dfe5ee!important;border-radius:10px!important;background:#fff!important;font-size:16px!important;font-weight:500!important;color:#14233a!important;box-shadow:0 1px 2px rgba(20,35,58,.04)!important;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row .hotel-chip-btn svg{width:18px;height:18px}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=deals]),html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=board]){display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-all{order:0}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=price]){order:1}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=stars]){order:2}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=rating]){order:3}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=distance]){order:4}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=features]){order:5}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap:has(>[data-hotel-chip=types]){order:6}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-reset{order:7}
 html body.hv2[data-kind=hotel] #results-region .hotel-map-switch{flex:none;display:inline-flex!important;align-items:center;gap:12px;height:46px;margin:0!important;padding:0 14px 0 16px!important;border:1px solid #dfe5ee!important;border-radius:10px!important;background:#fff!important;font-size:16px!important;font-weight:500!important;color:#14233a!important;box-sizing:border-box}
 html body.hv2[data-kind=hotel] #results-region .hotel-map-switch>span:not(.hv2-x){order:1;margin-right:16px}
 html body.hv2[data-kind=hotel] #results-region .hotel-map-switch>.hv2-mapico{order:0;display:grid;place-items:center;width:22px;height:22px;color:#2a3d57}
 html body.hv2[data-kind=hotel] #results-region .hotel-map-switch>.hv2-mapico svg{width:22px;height:22px}
 html body.hv2[data-kind=hotel] #results-region .hotel-map-switch>input,html body.hv2[data-kind=hotel] #results-region .hotel-map-switch>i{order:2}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar{display:flex!important;align-items:center!important;justify-content:space-between;flex-wrap:nowrap!important;gap:16px;min-height:48px;margin:0 0 12px!important;padding:0!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar>.bxx-alarm-pill,html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-pricebox,html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-list-count,html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-sort-info,html body.hv2[data-kind=hotel] #results-region .hotel-map-approx,html body.hv2[data-kind=hotel] #results-region .hotel-compare{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar>.hv2-ltitle{order:-1;display:block;flex:1 1 auto;min-width:0;margin:0;font-size:18px;font-weight:400;line-height:24px;color:#14233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-sortbox{position:relative;display:inline-flex!important;align-items:center;gap:14px;margin:0 0 0 auto!important;font-size:16px!important;font-weight:400!important;color:#4a5a70!important;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-sortbox select{width:auto!important;min-width:236px;height:46px!important;padding:0 44px 0 16px!important;border:1px solid #dfe5ee!important;border-radius:8px!important;background:#fff!important;font-size:17px!important;font-weight:600!important;color:#14233a!important;-webkit-appearance:none;appearance:none;box-shadow:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-sortbox>.hv2-sorti{position:absolute;right:14px;top:50%;display:grid;width:18px;height:18px;margin-top:-9px;color:#2a3d57;pointer-events:none}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-sortbox>.hv2-sorti svg{width:18px;height:18px}
}
@media (min-width:561px) and (max-width:999px){
 html body.hv2[data-kind=hotel] #reise-suche .compact-route.hotel-route{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-auto-rows:72px;height:auto!important;padding:0!important;background:linear-gradient(#e3e8ef,#e3e8ef) 0 72px/100% 1px no-repeat,#fff!important}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-travelers::before{display:none}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-button{justify-self:stretch;margin:0 12px 0 0!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-list-bar .hotel-sortbox select{min-width:0}
}

/* Release .326 (Sasan 30.09., 39. Chat): iPad-Hotelkarte nach hotel-mockup/desktop-ipad/v2.png – „alles in der Höhe des Bildes … die Texte schließen
   unten ab … und Zum Angebot“; keine verlorenen Zeilen („ab“ neben dem Preis, Stecknadel nur einmal, kein „Karte anzeigen“), Ort „1,9 km vom
   Stadtzentrum“ wie KAYAK. Links Bild (Herz, Pfeile, „1 / 40“), Mitte Name + Sterne, Ort, Bewertung, Ausstattung mit Text, rote Zeile; rechts
   hinter der Linie Etikett, „ab“ + Preis, Gesamtpreis, Personen/Zimmer, oranger Knopf, 3 Anbieter untereinander. Schmale Karte (Hochformat oder
   Karte daneben): Containerabfrage auf .hotel-list. Texte: konto.js Block .325 (Hotelkarten). */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-list{container-type:inline-size}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card){display:grid!important;grid-template-columns:33.5% minmax(0,1fr) 25.5%!important;grid-template-rows:auto 1fr!important;column-gap:20px!important;row-gap:0!important;height:auto!important;min-height:0!important;padding:8px 14px 8px 8px!important;border:1px solid #e3e8ef!important;border-radius:14px!important;background:#fff!important;box-shadow:0 2px 8px rgba(20,35,58,.05)!important;overflow:hidden!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card)::before,html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card)::after{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-top{display:contents!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media{grid-column:1!important;grid-row:1/3!important;position:relative!important;width:auto!important;height:250px!important;min-height:0!important;margin:0!important;border-radius:10px!important;overflow:hidden!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-card-image,html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:10px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .bxx-share{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-fav{position:absolute!important;top:10px!important;right:10px!important;left:auto!important;display:grid!important;place-items:center;width:42px!important;height:42px!important;border-radius:10px!important;background:#fff!important;box-shadow:0 2px 6px rgba(0,0,0,.12)!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-image-nav{top:50%!important;width:40px!important;height:40px!important;margin-top:-20px!important;border-radius:50%!important;background:rgba(20,28,40,.62)!important;color:#fff!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-image-nav.is-prev{left:10px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-image-nav.is-next{right:10px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-image-count{left:12px!important;right:auto!important;bottom:12px!important;top:auto!important;padding:5px 12px!important;border-radius:7px!important;background:rgba(20,28,40,.72)!important;color:#fff!important;font-size:14px!important;font-weight:600!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main{grid-column:2!important;grid-row:1/3!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;gap:0!important;min-width:0!important;height:250px!important;margin:0!important;padding:4px 20px 2px 0!important;border-right:1px solid #e6ebf2!important;box-sizing:border-box;overflow:hidden!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>*{margin:0!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-title{display:flex!important;align-items:baseline;gap:10px;min-width:0;font-size:21px!important;line-height:28px!important;font-weight:700!important;color:#14233a!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-title>a{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:inherit!important;text-decoration:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-title>.hv2-stars{flex:none;font-size:17px;letter-spacing:1px;color:#cfd6e0}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-title>.hv2-stars i{font-style:normal;color:#f5a623}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-place{display:block!important;min-width:0;font-size:15px!important;line-height:22px!important;color:#4a5a70!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-place>:not(.hv2-where){display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-place>.hv2-where{display:flex!important;align-items:center;gap:8px;min-width:0;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-place>.hv2-where svg{flex:none;width:18px;height:18px;color:#4a5a70}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-place>.hv2-where span{overflow:hidden;text-overflow:ellipsis}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating{display:flex!important;align-items:center;gap:10px;min-width:0;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating .hotel-score{display:grid!important;place-items:center;min-width:46px;height:32px;padding:0 8px!important;border-radius:6px!important;background:#138a36!important;color:#fff!important;font-size:16px!important;font-weight:700!important;box-sizing:border-box}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating .hotel-score-label{font-size:16px!important;font-weight:700!important;color:#14233a!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating .hotel-score-count{overflow:hidden;text-overflow:ellipsis;font-size:15px!important;color:#4a5a70!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating .hotel-stars{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons{display:flex!important;flex-wrap:nowrap!important;gap:4px!important;min-width:0;overflow:hidden!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon{display:flex!important;flex-direction:column;align-items:center;gap:5px;flex:none;width:64px!important;height:auto!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon>svg{width:42px!important;height:42px!important;padding:10px;border-radius:9px;background:#f1f4f8;color:#2a3d57;box-sizing:border-box}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon:nth-child(n+7){display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{display:block;max-width:64px;font-size:12px;line-height:15px;color:#4a5a70;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-perks{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-scarce{display:flex!important;align-items:center;gap:8px;font-size:15px!important;font-weight:600!important;color:#d92d20!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-deal{grid-column:3!important;grid-row:1!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-areas:"badge badge" "ab price" ". unit" ". pax" "btn btn"!important;align-content:start;column-gap:14px;width:auto!important;min-width:0!important;height:auto!important;margin:0!important;padding:4px 0 0!important;border:0!important;background:none!important;text-align:left!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-badge{grid-area:badge;justify-self:start;display:inline-flex!important;align-items:center;max-width:100%;margin:0 0 6px!important;padding:3px 10px!important;border-radius:6px!important;background:#e3f6e8!important;color:#0f6b2c!important;font-size:13px!important;font-weight:600!important;line-height:18px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-ab{grid-area:ab;align-self:start;margin:6px 0 0!important;font-size:16px!important;color:#4a5a70!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-price{grid-area:price;margin:0!important;font-size:30px!important;line-height:36px!important;font-weight:800!important;color:#14233a!important;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-unit{grid-area:unit;margin:0!important;font-size:14px!important;line-height:18px!important;color:#4a5a70!important;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax{grid-area:pax;display:flex!important;align-items:center;gap:14px;margin:4px 0 0!important;font-size:15px!important;color:#14233a!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax .pk-price-info{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax .pk-rooms .pk-pax-i::after{content:" Zimmer";white-space:pre}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button{grid-area:btn;display:flex!important;align-items:center;justify-content:center;gap:10px;width:auto!important;height:44px!important;min-height:0!important;margin:8px 0 0!important;padding:0 12px!important;border-radius:8px!important;background:#ff6a13!important;color:#fff!important;font-size:18px!important;font-weight:600!important;text-decoration:none!important;box-shadow:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button::after{content:"→";font-size:20px;line-height:1}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button svg{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-more,html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-more{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-providers{grid-column:3!important;grid-row:2!important;align-self:end!important;display:block!important;width:auto!important;margin:8px 0 0!important;padding:3px 10px!important;border:1px solid #e3e8ef!important;border-radius:8px!important;background:#fff!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-providers>.hotel-provider-cell{display:flex!important;align-items:center;justify-content:space-between;gap:10px;width:auto!important;height:25px!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-providers>.hotel-provider-cell:nth-child(n+4),html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-note,html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-perks,html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell>small{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-name{display:flex!important;align-items:center;min-width:0;height:20px;font-size:13px!important;font-weight:700!important;overflow:hidden;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-name img{max-width:96px!important;max-height:18px!important;width:auto!important;height:auto!important;object-fit:contain}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-price{display:inline-flex!important;align-items:center;gap:12px;margin:0!important;font-size:14px!important;font-weight:700!important;color:#14233a!important;text-decoration:none!important;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-price i{display:block!important;width:8px;height:8px;border-radius:50%;background:#1f9d4a!important}
 @container (max-width:980px){
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card){grid-template-columns:31% minmax(0,1fr) 30%!important;column-gap:16px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main{padding-right:16px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-title{font-size:18px!important;line-height:24px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-title>.hv2-stars{font-size:14px}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-place,html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating .hotel-score-count{font-size:14px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating .hotel-score-label{font-size:15px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon{width:56px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon>svg{width:38px!important;height:38px!important;padding:9px}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon:nth-child(n+5){display:none!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{max-width:56px;font-size:11px}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-price{font-size:26px!important;line-height:32px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button{font-size:16px!important}
 }
}

/* Release .327 (39. Chat, Live-Test .325/.326): Karte rechts passte 9 px nicht in die Bildhöhe (Karten 276 statt 268) → Abstände knapper, Anbieterzeilen
   24 px; Personen/Zimmer links unter dem Preis; Bewertungszahl in derselben Zeile; schmale Karte 4 Symbole à 52 px; „Kostenlose Stornierung“/„Später bezahlen“ wieder sichtbar (Sasan: „muss auch drin stehen“); Chipzeile einzeilig (quer
   wischbar, wenn zu schmal); Suchleiste: Reisedaten in voller Länge, Werte 17 px. */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-deal{padding-top:0!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-badge{margin-bottom:4px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button{margin-top:6px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-providers{margin-top:6px!important;padding:2px 10px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-providers>.hotel-provider-cell{height:24px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax{justify-content:flex-start!important;text-align:left!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating{flex-wrap:nowrap!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-perks{display:flex!important;align-items:center;flex-wrap:nowrap!important;gap:16px!important;min-width:0;overflow:hidden;margin:0!important;font-size:14px!important;line-height:20px!important;color:#138a36!important;white-space:nowrap}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-perks>*{flex:none;margin:0!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating>*{flex:none}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-rating .hotel-score-count{flex:0 1 auto!important;min-width:0}
 @container (max-width:980px){
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons{gap:2px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon{width:52px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{max-width:52px}
 }
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row{flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none;gap:12px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row::-webkit-scrollbar{display:none}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-btn,html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>.hotel-chip-wrap>.hotel-chip-btn{padding:0 16px!important;gap:10px}
 html body.hv2[data-kind=hotel] #results-region .hotel-chips-row>*{flex:none!important}
 html body.hv2[data-kind=hotel] #reise-suche .compact-route.hotel-route{grid-template-columns:minmax(0,1fr) auto minmax(0,.85fr) auto!important}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-sum,html body.hv2[data-kind=hotel] #reise-suche .hv2-dest,html body.hv2[data-kind=hotel] #reise-suche .hotel-destination:not(.is-picker-open) .airport-entry{font-size:17px!important}
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-button{padding:0 22px!important}
}
@media (min-width:561px) and (max-width:999px){
 html body.hv2[data-kind=hotel] #reise-suche .compact-route.hotel-route{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
}

/* Release .328 (Sasan 39. Chat: „die Personenanzahl auf die Linke, da ist viel Platz“): Personen/Zimmer (konto.js Block .325 verschiebt
   .hotel-deal-pax in die Mitte) als letzte Zeile der Mitte; rechts entfällt die Zeile, Knopf und Anbieter rücken hoch. */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-deal{grid-template-areas:"badge badge" "ab price" ". unit" "btn btn"!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-deal-pax{margin:0!important;font-size:15px!important;line-height:20px}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button{margin-top:10px!important}
}

/* Release .329 (Sasan 39. Chat, Mockup v2 erneut geschickt – „eins zu eins“): Personen/Zimmer wieder rechts unter „Gesamtpreis“ wie im Mockup
   (Block .328 aufgehoben, passt nach .327 in die Bildhöhe); Text unter den Ausstattungs-Symbolen vollständig, bei Bedarf zweizeilig
   (Sasan: „wenn es nicht passt, zweizeilig“); Gäste in der Suchleiste ungekürzt; Karte anfangs aus wie im Mockup. */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-deal{grid-template-areas:"badge badge" "ab price" ". unit" ". pax" "btn btn"!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-button{margin-top:6px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-pax .pk-pax-i{font-weight:500!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal!important;overflow:hidden;line-height:14px!important;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}
 html body.hv2[data-kind=hotel] #reise-suche .compact-route.hotel-route{grid-template-columns:minmax(0,1fr) auto auto auto!important}
}
@media (min-width:561px) and (max-width:999px){
 html body.hv2[data-kind=hotel] #reise-suche .compact-route.hotel-route{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
}

/* Release .330 (Sasan 39. Chat: „die Informationen untereinander schön zusammen … Hotelname, darunter direkt … nicht auseinanderziehen“):
   Mitte oben bündig mit festen Abständen wie im Mockup (Name, Ort, Bewertung, Ausstattung), nur Storno/„Nur noch N Zimmer“ unten an der Bildkante. */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main{justify-content:flex-start!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-place{margin-top:6px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-rating{margin-top:12px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-features-icons{margin-top:16px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-perks{margin-top:auto!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-scarce{margin-top:auto!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-perks~.hotel-card-scarce{margin-top:6px!important}
}

/* Release .331 (Sasan 39. Chat, Screenshot iPad hochkant): Symboltexte nicht mitten im Wort umbrechen („Fitnessber|eich“) – Trennung nur an
   weichen Trennstellen aus konto.js („Fitness-/bereich“, „Klima-/anlage“); Storno/„Später bezahlen“ bei schmaler Karte zweizeilig statt abgeschnitten. */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{overflow-wrap:normal!important;word-break:normal!important;-webkit-hyphens:manual!important;hyphens:manual!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-perks{flex-wrap:wrap!important;row-gap:2px!important;white-space:nowrap}
}

/* Release .332 (Sasan 39. Chat): „Kostenlose Stornierung / Später bezahlen untereinander schreiben – genug Platz“; Symboltexte kleiner, damit sie
   meist einzeilig unter das Symbol passen („Schriften kleiner“), lange Wörter weiter mit Trennstrich („Fitness-/bereich“). */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-perks{flex-direction:column!important;align-items:flex-start!important;flex-wrap:nowrap!important;gap:2px!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{font-size:11px!important;line-height:13px!important;letter-spacing:-.1px}
 @container (max-width:980px){
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons>.hotel-feature-icon{width:54px!important}
  html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{max-width:54px;font-size:10.5px!important}
 }
}

/* Release .333 (Sasan 39. Chat: „zweizeilig wird uneinheitlich … wenn länger, drei Punkte und HTML-Tooltip“): Symboltexte immer einzeilig mit
   „…“, Symbole oben bündig in einer Linie; der volle Text steht im vorhandenen HTML-Tooltip des Symbols (data-tip, antippen). */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-features-icons{align-items:flex-start!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-feature-icon>.hv2-fl{display:block!important;-webkit-line-clamp:unset!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;width:100%}
}

/* Release .334 (Sasan 39. Chat: „bei der Desktop-Version haben wir ein i … Premium Doppelzimmer mit Balkon, inklusive Frühstück … die gleichen
   Icons neben dem Veranstalter, wo die grünen Punkte stehen“): Anbieterzeilen mit ⓘ und Storno-/Frühstück-/Später-bezahlen-Symbolen vor Punkt +
   Preis; Text per Antippen als HTML-Tooltip (Klasse is-open). Release .335: Preis ohne Symbole wieder rechtsbündig. */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hv2-pi{display:flex!important;align-items:center;gap:6px;flex:none;margin-left:auto}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hv2-pi>i{position:relative;display:grid;place-items:center;width:18px;height:18px;margin:0;padding:0;background:none;color:#7a8799;font-style:normal;cursor:pointer}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hv2-pi>i.is-green{color:#16803c}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hv2-pi>i svg{width:15px!important;height:15px!important;margin:0!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hv2-pi>i[data-tip]::after{content:attr(data-tip);position:absolute;right:-8px;bottom:calc(100% + 8px);z-index:30;width:max-content;max-width:230px;padding:6px 10px;border-radius:7px;background:#0c1f44;color:#fff;font:600 12px/1.35 'Segoe UI',Arial,sans-serif;white-space:normal;text-align:left;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;visibility:hidden;pointer-events:none}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hv2-pi>i.is-open::after{opacity:1;visibility:visible}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-providers>.hotel-provider-cell{justify-content:flex-start!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-price{margin-left:auto!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hotel-provider-name{flex:0 1 auto}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-provider-cell .hv2-pi+.hotel-provider-price{margin-left:0!important}
}

/* Release .337 (Sasan 40. Chat, Screenshots echtes iPad): Bildzähler „1 / 40“ weg („braucht man nicht … störend“); unten rechts auf dem Bild ein
   kleines weißes Schild „Angebot von <Logo>“ = Anbieter des großen Preises (Zelle .is-best, konto.js Block .325; „Angebot von“ klein, Logo größer);
   Etikett und „Nur noch N Zimmer …“ einzeilig mit „…“ statt abgeschnitten/zweizeilig; Hochformat: „Suche ändern“ kleiner und mittig in seiner Zeile
   (klebte an der Trennlinie). */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-image-count{display:none!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from{position:absolute;right:12px;bottom:12px;z-index:3;display:flex;align-items:center;gap:6px;height:32px;max-width:calc(100% - 24px);padding:0 9px;border-radius:7px;background:rgba(255,255,255,.96);box-shadow:0 1px 4px rgba(0,0,0,.18);box-sizing:border-box;pointer-events:none;white-space:nowrap;overflow:hidden}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>span{flex:none;font-size:10px;font-weight:500;line-height:1;color:#6b7a8f}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>img{display:block;flex:0 1 auto;min-width:0;max-width:110px;max-height:19px;width:auto;height:auto;object-fit:contain}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>b{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:700;color:#14233a}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-deal-badge{display:block!important;min-width:0;max-width:100%!important;box-sizing:border-box;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-scarce{display:block!important;min-width:0;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-main>.hotel-card-scarce>svg{display:inline-block;width:16px;height:16px;margin:0 6px 0 0;vertical-align:-3px}
}
@media (min-width:561px) and (max-width:999px){
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-button{align-self:center!important;height:46px!important;padding:0 18px!important}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-btn{gap:10px;font-size:17px}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-btn svg{width:19px;height:19px}
}

/* Release .339 (Sasan 40. Chat): Kartenbild auf dem iPad mit dem Finger wischen (konto.js Block .325, touchstart/touchend) – waagerecht wechselt das
   Bild, senkrecht scrollt die Seite. */
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media{touch-action:pan-y}
}
/* Release .339 (Sasan 40. Chat, Ausschnitt 767 hochkant: „Suche ändern … viel zu groß … zu weit“): Knopf nicht mehr über die halbe Breite gezogen,
   sondern so breit wie sein Text, rechtsbündig, etwas niedriger. */
@media (min-width:561px) and (max-width:999px){
 html body.hv2[data-kind=hotel] #reise-suche .hotel-route>.search-button{justify-self:end!important;width:auto!important;height:42px!important;margin:0 14px 0 0!important;padding:0 20px!important}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-btn{gap:9px;font-size:16px}
 html body.hv2[data-kind=hotel] #reise-suche .hv2-btn svg{width:18px;height:18px}
}

/* Release .340 (Sasan 40. Chat: „überall iPhone, PC … auf dem Bild genau das Gleiche“): Bildzähler „1 / 40“ auf allen Geräten aus, Anbieter-Schild
   „Angebot von <Logo>“ unten rechts auf jedem Hotelbild (konto.js Block .340 am Dateiende); Logo etwas größer (Sasan: „Angebot von kleiner, Logo größer“). */
html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media .hotel-image-count{display:none!important}
html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from{position:absolute;right:10px;bottom:10px;left:auto;top:auto;z-index:3;display:flex;align-items:center;gap:6px;height:32px;max-width:calc(100% - 20px);margin:0;padding:0 9px;border-radius:7px;background:rgba(255,255,255,.96);box-shadow:0 1px 4px rgba(0,0,0,.18);box-sizing:border-box;pointer-events:none;white-space:nowrap;overflow:hidden}
html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>span{flex:none;font-size:10px;font-weight:500;line-height:1;color:#6b7a8f}
html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>img{display:block;flex:0 1 auto;min-width:0;max-width:120px;max-height:24px;width:auto;height:auto;object-fit:contain}
html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>b{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:700;color:#14233a}
@media (max-width:560px){
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from{right:6px;bottom:6px;height:26px;max-width:calc(100% - 12px);gap:4px;padding:0 6px;border-radius:6px}
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>span{font-size:9px}
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>img{max-height:18px;max-width:84px}
 html body[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>b{font-size:11px}
}
@media (min-width:561px) and (max-width:1400px){
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from{right:12px;bottom:12px;max-width:calc(100% - 24px)}
 html body.hv2[data-kind=hotel] #results-region .hotel-card:not(.car-card):not(.package-card) .hotel-card-media>.bxx-from>img{max-width:120px;max-height:24px}
}
/* Release .342 – Mietwagenkarte iPhone nach Sasans Mockup car\mobil\v2.png (41. Chat: „das ist die verbindliche … Bild oben … eins zu eins,
   Pixel für Pixel“; ersetzt die v3-Karte aus .341; PC/iPad unverändert). Bild oben volle Breite (Etiketten oben links, Herz oben rechts),
   Modell | Vermieter, Klasse, sechs Symbole mit Beschriftung (Trennlinien vor Klima und Kraftstoff), grauer Kasten Storno | Kilometer |
   Zahlung, Linie, Preis + „Gesamt (N Tage)“ | „Zum Angebot →“, Linie, „Weitere Angebote ab …“ | „N Anbieter vergleichen ›“, Kacheln
   (4 sichtbar, günstigster = Hauptpreis orange umrandet, wischbar, runder Pfeil). Ohne Daten nicht gebaut: Bewertung, Bildzähler.
   Elemente .bxx-v2* setzt konto.js Block „Release .342“ nur ≤ 560 px. Release .343: scroll-padding-left, sonst schnappt die
   erste Kachel an den Rand und die fünfte schaut 6 px vor dem Pfeil heraus. */
html body[data-kind=mietwagen] .bxx-v2b,html body[data-kind=mietwagen] .bxx-v2s,html body[data-kind=mietwagen] .bxx-v2p,html body[data-kind=mietwagen] .bxx-v2o,html body[data-kind=mietwagen] .bxx-v2a{display:none}
@media (max-width:560px){
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card{min-width:0;max-width:100%}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-top{position:relative;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"img img" "title agency" "cls cls" "specs specs" "pol pol" "deal deal";column-gap:10px;row-gap:0;align-items:start;padding:6px 6px 0}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-media,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-main{display:contents}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-media .hotel-card-image{grid-area:img;display:block;width:100%;height:140px;box-sizing:border-box;padding:6px;object-fit:contain;border-radius:10px;background:#eef2f7}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-media .bxx-share{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-media .hotel-fav{position:absolute;top:14px;right:14px;left:auto;width:36px;height:36px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(12,31,68,.18);display:grid;place-items:center;z-index:2}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-media .hotel-fav svg{width:19px;height:19px}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2b{display:flex;flex-direction:column;align-items:flex-start;gap:6px;position:absolute;top:14px;left:14px;z-index:2;max-width:60%}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2b span{display:inline-flex;align-items:center;gap:5px;max-width:100%;height:24px;box-sizing:border-box;padding:0 10px;border-radius:12px;background:#1f8f4e;color:#fff;font:700 12px/1 'Segoe UI',Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 6px rgba(12,31,68,.18)}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2b span+span{background:rgba(12,31,68,.86)}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2b svg{width:13px;height:13px;flex:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-media .car-agency{grid-area:agency;align-self:start;justify-self:end;display:flex;align-items:center;justify-content:flex-end;height:28px;max-width:110px;margin:8px 6px 0 0;overflow:hidden;font:400 12px/1.15 'Segoe UI',Arial,sans-serif;color:#5b6b80;text-align:right}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-media .car-agency img{display:block;max-width:96px;max-height:18px;width:auto;height:auto;margin-left:auto}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-main>.hotel-card-title{grid-area:title;min-width:0;height:26px;margin:10px 0 0 6px;font:800 21px/1.25 'Segoe UI',Arial,sans-serif;color:#0b1f4d;position:relative;white-space:nowrap}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-main>.car-card-class{grid-area:cls;min-width:0;margin:1px 6px 0;font:400 14px/1.35 'Segoe UI',Arial,sans-serif;color:#5b6b80;position:relative;white-space:nowrap}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-t{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-main>.car-specs,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-main>.car-card-station,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-main>.car-policies{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2s{grid-area:specs;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);margin:12px 0 0;padding:0;list-style:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2s li{display:grid;justify-items:center;row-gap:3px;min-width:0;margin:0;padding:0 2px}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2s li.is-sep{border-left:1px solid #e3e8ef}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2s li>span{display:flex;align-items:center;gap:4px;height:22px;font:700 15px/1 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2s li svg{width:20px;height:20px;flex:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2s li>small{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:400 12px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6b80}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p{grid-area:pol;display:grid;grid-auto-flow:column;grid-auto-columns:auto;align-items:start;box-sizing:border-box;min-height:82px;margin:12px 0 0;padding:10px 0;border-radius:10px;background:#f3f6fa}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p>div{display:grid;grid-template-columns:20px auto;column-gap:5px;align-items:start;min-width:0;padding:0 6px;border-left:1px solid #dfe5ee}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p>div:first-child{border-left:0}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p svg{width:20px;height:20px;color:#5b6b80}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p .is-green svg,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p .is-green b{color:#08893f}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p b{display:block;font:700 12px/1.25 'Segoe UI',Arial,sans-serif;color:#12233f}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p .is-plain b{font-weight:600;color:#3b4a60}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p small{display:block;margin-top:2px;font:400 11px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6b80}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal{grid-area:deal;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"price button" "unit button";column-gap:12px;row-gap:0;align-items:center;margin:12px 0 0;padding:12px 6px;border-top:1px solid #e3e8ef;height:auto}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .car-deal-provider,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .car-deal-pax,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .car-deal-payment,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .car-card-perday{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .hotel-deal-price{grid-area:price;align-self:end;margin:0;font:850 30px/1.1 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .hotel-deal-unit{grid-area:unit;align-self:start;margin:2px 0 0;font:400 14px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6b80}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .hotel-deal-button{grid-area:button;align-self:center;display:flex;align-items:center;justify-content:center;gap:8px;height:48px;min-width:170px;padding:0 18px;border-radius:12px;font:800 17px/1 'Segoe UI',Arial,sans-serif}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .car-card-deal .hotel-deal-button svg{width:19px;height:19px;stroke-width:2.2}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2o{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 16px 0 12px;padding:10px 0 8px;border-top:1px solid #e3e8ef;font:400 13px/1.3 'Segoe UI',Arial,sans-serif;color:#3b4a60}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2o b{font-weight:700;color:#0b1f4d}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2o button{display:inline-flex;align-items:center;gap:3px;margin:0;padding:0;border:0;background:none;font:400 13px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6b80;white-space:nowrap;cursor:pointer}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2o button svg{width:15px;height:15px}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w{position:relative;margin:0 0 12px}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-card-providers{display:flex;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-left:12px;scroll-behavior:smooth;scrollbar-width:none;margin:0 44px 0 0;padding:1px 0 1px 12px;height:auto;border:0;border-radius:0;background:none;box-shadow:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-card-providers::-webkit-scrollbar{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell[hidden]{flex:0 0 calc((100% - 18px) / 4);display:grid;justify-items:center;align-content:center;row-gap:6px;position:relative;box-sizing:border-box;width:auto;height:54px;margin:0;padding:6px 4px;border:1px solid #dfe5ee;border-radius:8px;background:#fff;scroll-snap-align:start}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell:has(.is-best){border:2px solid #ff6a13;padding:5px 3px}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell::after{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell .hotel-provider-note{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell .hotel-provider-name{display:flex;align-items:center;justify-content:center;width:100%;height:16px;min-width:0;overflow:hidden;font:700 11px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell .hotel-provider-name img{display:block;max-width:100%;max-height:16px;width:auto;height:auto}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell .hotel-provider-price{position:static;display:flex;align-items:baseline;justify-content:center;height:auto;margin:0;padding:0;font:800 13px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap;text-decoration:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell .hotel-provider-price>i{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell .hotel-provider-price::after{content:"€"}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-cell a.hotel-provider-price::before{content:"";position:absolute;inset:0;z-index:1}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2w .hotel-provider-more{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2a{display:grid;place-items:center;position:absolute;right:6px;top:50%;transform:translateY(-50%);z-index:3;width:32px;height:32px;margin:0;padding:0;border:1px solid #e3e8ef;border-radius:50%;background:#fff;color:#0b1f4d;box-shadow:0 2px 8px rgba(12,31,68,.16);cursor:pointer}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2a[hidden]{display:none}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2a svg{width:18px;height:18px;stroke-width:2.2}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-tip[data-tip]::after{content:attr(data-tip);position:absolute;left:0;bottom:calc(100% + 6px);z-index:30;width:max-content;max-width:240px;padding:6px 10px;border-radius:7px;background:#0c1f44;color:#fff;font:600 12px/1.35 'Segoe UI',Arial,sans-serif;white-space:normal;text-align:left;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-tip[data-tip].is-open::after,html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-tip[data-tip]:hover::after{opacity:1;visibility:visible}
}
/* Release .344 – Mietwagen ohne eigenes Foto (Sasan 42. Chat: „drei No-Image … Autos … zufällig … unscharf machen mit CSS … damit man
   nicht erkennt, was für ein Auto das ist … besser als No Image“): Go setzt eins von drei Ersatzbildern (car_noimage.go). Alle Breiten:
   Bild füllt die Fläche (cover), leicht unscharf (.345, Sasan: „Blur … 85 % weniger“ → 6 px × 0,15 = 0,9 px); scale(1.04) + clip-path
   inset(1,923 %) schneiden den hellen Blur-Rand ab (sichtbar = Bildfläche). */
html body[data-kind=mietwagen] #results-region .hotel-card.car-card img.car-card-image[src*="car-noimage-"]{box-sizing:border-box;padding:0!important;object-fit:cover!important;object-position:50% 62%;background:#dfe6ef;filter:blur(.9px);transform:scale(1.04);clip-path:inset(1.923% round 8px)}
/* Release .345 – iPhone (≤ 560 px) noch weniger unscharf (Sasan: „Mobile Version … unscharf … so 10 %“ → 6 px × 0,1 = 0,6 px). */
@media (max-width:560px){html body[data-kind=mietwagen] #results-region .hotel-card.car-card img.car-card-image[src*="car-noimage-"]{filter:blur(.6px);transform:scale(1.03);clip-path:inset(1.456% round 8px)}}
/* Release .346 – iPhone, grauer Kasten (Sasans Screenshot: nur „Anzahlung“ in einem 82 px hohen Kasten – „mach ihn klein … die Anzahlung
   muss nur Icon da sein … mit Touch drüber … oder Mouse Over. HTML dann zeigen“): Kasten so hoch wie sein Inhalt (min-height 0),
   Zahlungsart nur als Karten-Symbol rechts (.is-pay), Text als HTML-Tooltip (antippen / Maus), rechtsbündig, damit er nicht übersteht. */
@media (max-width:560px){
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p{min-height:0}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p>.is-pay{position:relative;display:flex;align-items:center;justify-content:center;align-self:center;justify-self:end;min-width:44px;height:28px;padding:0 10px;cursor:pointer;outline:0}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p>.is-pay:only-child{justify-self:start;border-left:0}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p>.is-pay svg{width:22px;height:22px;color:#3b4a60}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-tip-r[data-tip]::after{left:auto;right:0}
 html body[data-kind=mietwagen] #results-region .hotel-card.car-card .bxx-v2p>.is-pay:only-child[data-tip]::after{left:0;right:auto}
}
/* Release .351 – Mietwagenkarte iPad nach Sasans Mockup car\ipad\v3.png (43. Chat) – ersetzt v1-Karte (.347/.348) und Filter-Spalte (.350);
   Filterzeile bleibt oben. NUR iPad (body.cv3 aus konto.js Block „Release .351“, Touch 561–1400 px). Aufbau .cv3 (Maße aus dem Mockup
   1420 px Karte → ÷1,26): Bild 25,6 % | Mitte | Preis 23,8 % hinter Linie; Fußzeile über die ganze Breite (Kaution · Kreditkarte · Zahlung |
   Details & Bedingungen | N Anbieter vergleichen). Schmale Karte (Hochformat) per @container cv3. Alter Aufbau der Karte bleibt im DOM (aus). Zeile Abholort/Haken mit Mindesthöhe → alle Karten gleich hoch. */
html body[data-kind=mietwagen] .cv3{display:none}
@media (min-width:561px){ /* .363: auch PC (body.cv3 setzt konto.js nur fürs iPad und ab .363 für PC mit Maus ab 1024 px) */
 html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card{container:cv3/inline-size;display:block!important;position:relative!important;overflow:visible!important;box-sizing:border-box!important;width:auto!important;height:auto!important;min-height:0!important;margin:0 0 14px!important;padding:0!important;border:1px solid #e3e9f1!important;border-radius:12px!important;background:#fff!important;box-shadow:0 1px 2px rgba(16,44,80,.06),0 6px 16px -8px rgba(16,44,80,.16)!important}
 html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card::before,html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card::after{display:none!important}
 html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card[data-cv3]>.car-card-top{display:none!important}
 html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card>.cv3{display:grid;grid-template-columns:25.6% minmax(0,1fr) 23.8%;grid-template-rows:auto auto;box-sizing:border-box;width:100%;font-family:'Segoe UI',Arial,sans-serif;color:#0b1f4d}
 /* Bild */
 html body.cv3[data-kind=mietwagen] #results-region .cv3-img{position:relative;align-self:start;height:206px;margin:12px 0 12px 12px;overflow:hidden;border-radius:10px;background:#eef2f7}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-img>img{position:static!important;display:block!important;box-sizing:border-box!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:10px;object-fit:contain;border:0!important;border-radius:0!important}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-ex{position:absolute;left:10px;bottom:10px;z-index:2;padding:4px 10px;border-radius:12px;background:rgba(236,240,245,.92);font:400 12px/1.2 'Segoe UI',Arial,sans-serif;color:#3b4a60}
 /* Mitte */
 html body.cv3[data-kind=mietwagen] #results-region .cv3-mid{min-width:0;padding:14px 20px 14px 20px;border-right:1px solid #e6ebf2;margin:0 0 0}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-head{display:flex;align-items:baseline;gap:9px;min-width:0}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-title{position:relative;flex:0 1 auto;min-width:0;margin:0;font:700 21px/26px 'Segoe UI',Arial,sans-serif;color:#0b1f4d;letter-spacing:0}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-cls{position:relative;flex:0 1 auto;min-width:40px;font:400 15px/20px 'Segoe UI',Arial,sans-serif;color:#5b6b80}
 html body.cv3[data-kind=mietwagen] #results-region .cv3 .cv3-t{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-pill{display:inline-flex;flex:none;align-self:center;align-items:center;gap:5px;height:24px;padding:0 10px;border-radius:12px;background:#eaf1fd;font:500 13px/1 'Segoe UI',Arial,sans-serif;color:#1d4fa8;white-space:nowrap}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-pill svg{width:15px;height:15px}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-specs{display:grid;grid-template-columns:repeat(3,max-content);gap:9px 28px;margin:13px 0 0;padding:0;list-style:none}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-specs li{display:flex;align-items:center;gap:9px;margin:0;padding:0;font:400 15px/20px 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-specs svg{flex:none;width:20px;height:20px;color:#3b4a60}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-who{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;margin:12px 0 0;padding:10px 0 0;border-top:1px solid #e6ebf2}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-who>div{display:grid;gap:3px;min-width:0}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-who>.cv3-ag{padding-right:24px}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-who>.cv3-pv{padding-left:24px;border-left:1px solid #e6ebf2}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-who small{font:400 13px/16px 'Segoe UI',Arial,sans-serif;color:#3b4a60}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-who .cv3-logo,html body.cv3[data-kind=mietwagen] #results-region .cv3-who .cv3-opaque{display:flex;align-items:center;height:28px;min-width:0;max-width:160px;overflow:hidden;font:700 15px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap;text-overflow:ellipsis}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-who .cv3-logo img{display:block;width:auto;height:auto;max-width:130px;max-height:26px}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-pv-link{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;color:#1d63e0;text-decoration:none}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-pv-link>svg{flex:none;width:17px;height:17px;color:#1d63e0}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-row{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;margin:10px 0 0;min-height:45px}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-loc{display:flex;align-items:flex-start;gap:10px;min-width:0;max-width:210px;padding-right:20px}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-loc svg{flex:none;width:19px;height:19px;margin-top:1px;color:#0b1f4d}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-loc>span{display:grid;gap:3px;min-width:0}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-loc b{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:600 14.5px/18px 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-loc small{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:400 13.5px/17px 'Segoe UI',Arial,sans-serif;color:#5b6b80}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-checks{display:grid;gap:7px;min-width:0;margin:0;padding:0 0 0 20px;border-left:1px solid #e6ebf2;list-style:none}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-loc+.cv3-checks{padding-left:20px}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-row>.cv3-checks:only-child{grid-column:1/-1;padding-left:0;border-left:0}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-checks li{display:flex;align-items:center;gap:9px;min-width:0;margin:0;padding:0;font:400 14.5px/18px 'Segoe UI',Arial,sans-serif;color:#3b4a60}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-checks li.is-good{color:#16924a}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-checks li span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-checks svg{flex:none;width:19px;height:19px;color:#8a97a8}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-checks li.is-good svg{color:#1fa35a}
 /* Rechts */
 html body.cv3[data-kind=mietwagen] #results-region .cv3-deal{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:22px 16px 14px 22px}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-deal>.hotel-fav{position:absolute!important;top:12px!important;right:12px!important;left:auto!important;bottom:auto!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;color:#0b1f4d!important}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-deal>.hotel-fav svg{width:23px!important;height:23px!important}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-deal>.bxx-share{display:none!important}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-price{display:block;margin:6px 40px 0 0;font:800 38px/42px 'Segoe UI',Arial,sans-serif;letter-spacing:-.4px;color:#0b1f4d;white-space:nowrap}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-days{margin:6px 0 0;font:400 16px/20px 'Segoe UI',Arial,sans-serif;color:#5b6b80;white-space:nowrap}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-perday{margin:6px 0 0;font:400 15px/19px 'Segoe UI',Arial,sans-serif;color:#3b4a60;white-space:nowrap}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-deal>.cv3-go{display:flex!important;align-items:center;justify-content:center;gap:9px;box-sizing:border-box!important;width:100%!important;min-width:0!important;height:48px!important;margin:auto 0 0!important;padding:0 12px!important;border-radius:8px!important;font:600 17px/1 'Segoe UI',Arial,sans-serif!important;white-space:nowrap;text-decoration:none}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-go svg{flex:none;width:18px;height:18px;stroke-width:2.2}
 /* Fußzeile */
 html body.cv3[data-kind=mietwagen] #results-region .cv3-foot{grid-column:1/-1;display:flex;align-items:center;min-width:0;height:46px;padding:0 16px 0 14px;border-top:1px solid #e6ebf2}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-facts{position:relative;display:flex;flex:1 1 auto;align-items:center;gap:10px;min-width:0;margin:0;font:400 14.5px/18px 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-facts>svg{flex:none;width:20px;height:20px;color:#0b1f4d}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-facts b{font-weight:600}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-sep{margin:0 8px;font-style:normal;color:#5b6b80}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-link{display:flex;flex:none;align-items:center;gap:9px;height:30px;margin:0 0 0 18px;padding:0 0 0 18px;border:0;border-left:1px solid #e6ebf2;border-radius:0;background:none;font:600 14.5px/1 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap;cursor:pointer}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-link svg{flex:none;width:20px;height:20px}
 html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card.cv3-open .cv3-cmp{color:#1d63e0}
 html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card[data-cv3]:not(.cv3-open)>.hotel-card-providers{display:none!important}
 html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card.cv3-open>.hotel-card-providers{margin:0 14px 12px!important}
 /* HTML-Tooltip für Gekürztes (Modell, Klasse, Fußzeile) */
 html body.cv3[data-kind=mietwagen] #results-region .cv3 .cv3-tip[data-tip]::after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 6px);z-index:30;width:max-content;max-width:300px;padding:6px 10px;border-radius:7px;background:#0c1f44;color:#fff;font:600 12px/1.35 'Segoe UI',Arial,sans-serif;white-space:normal;text-align:left;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}
 html body.cv3[data-kind=mietwagen] #results-region .cv3 .cv3-tip[data-tip].is-open::after,html body.cv3[data-kind=mietwagen] #results-region .cv3 .cv3-tip[data-tip]:hover::after{opacity:1;visibility:visible}
 html body.cv3[data-kind=mietwagen] #results-region .cv3-facts.cv3-tip[data-tip]::after{top:auto;bottom:calc(100% + 6px)}
 /* Schmale Karte (iPad hoch, ~790 px) */
 @container cv3 (max-width:960px){
  html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card>.cv3{grid-template-columns:25% minmax(0,1fr) 25.5%}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-img{height:178px;margin:12px 0 12px 10px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-mid{padding:12px 12px 12px 14px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-title{font-size:18px;line-height:23px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-cls{font-size:13.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-pill{height:22px;padding:0 8px;font-size:12px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-specs{gap:7px 14px;margin-top:10px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-specs li{gap:6px;font-size:13.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-specs svg{width:18px;height:18px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-who{margin-top:10px;padding-top:8px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-who>.cv3-ag{padding-right:14px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-who>.cv3-pv{padding-left:14px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-who small{font-size:12px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-who .cv3-logo img{max-width:104px;max-height:22px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-row{grid-template-columns:minmax(0,1fr);row-gap:7px;margin-top:8px;min-height:66px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-loc{max-width:none;padding-right:0}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-loc>span{display:flex;gap:6px;align-items:baseline}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-loc b{flex:0 1 auto;font-size:13.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-loc small{flex:0 1 auto;font-size:12.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-loc small::before{content:'· '}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-checks,html body.cv3[data-kind=mietwagen] #results-region .cv3-loc+.cv3-checks{gap:5px;padding-left:0;border-left:0}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-checks li{gap:8px;font-size:13px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-checks svg,html body.cv3[data-kind=mietwagen] #results-region .cv3-loc svg{width:17px;height:17px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-deal{padding:18px 12px 12px 14px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-deal>.hotel-fav{top:8px!important;right:6px!important}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-price{margin-right:30px;font-size:29px;line-height:34px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-days{margin-top:4px;font-size:14px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-perday{margin-top:4px;font-size:13.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-deal>.cv3-go{height:44px!important;gap:6px;font-size:15px!important}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-foot{height:44px;padding:0 12px 0 10px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-facts{gap:8px;font-size:13px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-facts>svg{width:18px;height:18px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-sep{margin:0 5px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-link{gap:6px;margin-left:10px;padding-left:10px;font-size:13px}
  html body.cv3[data-kind=mietwagen] #results-region .cv3-link svg{width:18px;height:18px}
 }
}

/* Release .355 – Mietwagen iPad: Details (car\ipad\v3_1.png) und Anbieter-Vergleich (car\ipad\v4.png) als Einblendung auf derselben Seite
   (konto.js Block „Release .355“, .cvd in section.car-results, Liste + Filter solange ausgeblendet; Kopfzeile/Suchleiste bleiben).
   Maße aus den Mockups (1492 px ≙ iPad quer 1180, Faktor ≈ 0,78); schmal (Hochformat) per @container cvd. */
html body.cv3[data-kind=mietwagen] #results-region .car-results.cvd-on>:not(.cvd){display:none!important}
html body.cv3[data-kind=mietwagen] #results-region .cvd{container:cvd/inline-size;margin:4px 0 22px;opacity:0;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease;color:#0b1f4d;font-family:'Segoe UI',Arial,sans-serif}
html body.cv3[data-kind=mietwagen] #results-region .cvd.is-in{opacity:1;transform:none}
html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card.cvd-back-hit{box-shadow:0 0 0 2px #1d63e0!important;transition:box-shadow .3s}
html body.cv3[data-kind=mietwagen] #results-region .cvd svg{flex:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 14px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-titles{min-width:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-back{display:inline-flex;align-items:center;gap:4px;margin:0 0 10px;padding:0;border:0;background:none;font:600 15px/1.2 'Segoe UI',Arial,sans-serif;color:#1d63e0;cursor:pointer}
html body.cv3[data-kind=mietwagen] #results-region .cvd-back svg{width:17px;height:17px;stroke-width:2.2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0;font:800 34px/1.15 'Segoe UI',Arial,sans-serif;letter-spacing:-.3px;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-model{font:inherit}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cls{font:400 17px/1.3 'Segoe UI',Arial,sans-serif;letter-spacing:0;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(280px,32.5%,370px);gap:17px;align-items:start}
html body.cv3[data-kind=mietwagen] #results-region .cvd-main{display:grid;gap:14px;min-width:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-box{box-sizing:border-box;min-width:0;margin:0;background:#fff;border:1px solid #e3e8f0;border-radius:12px;box-shadow:0 1px 3px rgba(11,31,77,.05)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-veh{display:grid;grid-template-columns:58% minmax(0,1fr);gap:22px;padding:9px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-img{position:relative;height:218px;overflow:hidden;border-radius:9px;background:#eef2f7}
html body.cv3[data-kind=mietwagen] #results-region .cvd-img img{display:block;width:100%;height:100%;object-fit:contain}
html body.cv3[data-kind=mietwagen] #results-region .cvd-img img[src*="car-noimage-"]{object-fit:cover;object-position:50% 62%;filter:blur(.9px);transform:scale(1.04)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-ex{position:absolute;left:10px;bottom:10px;padding:4px 8px;border-radius:6px;background:rgba(255,255,255,.92);font:600 11.5px/1.2 'Segoe UI',Arial,sans-serif;color:#33415c}
html body.cv3[data-kind=mietwagen] #results-region .cvd-vr{display:flex;flex-direction:column;min-width:0;padding:16px 14px 8px 0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 10px;margin:0;padding:0 0 18px;list-style:none;border-bottom:1px solid #e6ebf2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-specs li{display:flex;flex-direction:column;gap:7px;min-width:0;font:400 14.5px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-specs li b{font-weight:700}
html body.cv3[data-kind=mietwagen] #results-region .cvd-specs svg{width:23px;height:23px;stroke-width:1.6}
html body.cv3[data-kind=mietwagen] #results-region .cvd-code{margin:13px 0 0;font:400 13px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-bh{display:flex;align-items:center;gap:14px;margin:0 0 14px;font:800 18px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-bh svg{width:24px;height:24px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pick{display:grid;grid-template-columns:minmax(0,1fr) 44%;gap:18px;padding:16px 16px 16px 20px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pick.is-nomap{grid-template-columns:minmax(0,1fr)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pt{min-width:0;padding-right:16px;border-right:1px solid #e6ebf2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pick.is-nomap .cvd-pt{border-right:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pa{margin:0 0 4px;font:700 16px/1.3 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pl{margin:0 0 2px;font:400 14.5px/1.4 'Segoe UI',Arial,sans-serif;color:#33415c}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pk{display:flex;align-items:center;gap:10px;margin:12px 0 0;font:400 14px/1.3 'Segoe UI',Arial,sans-serif;color:#33415c}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pk svg{width:19px;height:19px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-drop{margin-top:8px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-map{position:relative;min-height:142px;overflow:hidden;border-radius:10px;background:#e8eef5}
html body.cv3[data-kind=mietwagen] #results-region .cvd-tiles{position:absolute;left:50%;top:50%;width:768px;height:768px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-tiles img{position:absolute;display:block;width:256px;height:256px;max-width:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-chip{position:absolute;left:8px;top:8px;padding:4px 8px;border-radius:6px;background:#fff;box-shadow:0 1px 3px rgba(11,31,77,.15);font:600 11.5px/1.2 'Segoe UI',Arial,sans-serif;color:#33415c}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-92%);line-height:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pin svg{width:30px;height:30px;fill:#0b1f4d;stroke:#fff;stroke-width:1.2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pin svg circle{fill:#fff;stroke:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-maplabel{position:absolute;left:calc(50% + 16px);top:calc(50% - 30px);max-width:calc(50% - 24px);font:600 11.5px/1.3 'Segoe UI',Arial,sans-serif;color:#0b1f4d;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 3px #fff}
html body.cv3[data-kind=mietwagen] #results-region .cvd-maplink{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;background:#fff;box-shadow:0 1px 4px rgba(11,31,77,.18);font:600 12.5px/1.2 'Segoe UI',Arial,sans-serif;color:#1d63e0;text-decoration:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-maplink svg{width:16px;height:16px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-osm{position:absolute;left:6px;bottom:4px;padding:0 3px;background:rgba(255,255,255,.75);font:400 9.5px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cond{padding:16px 20px 14px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-rows{margin:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row{display:grid;grid-template-columns:34% minmax(0,1fr);align-items:center;min-height:26px;border-top:1px solid #edf0f5}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row:last-child{border-bottom:1px solid #edf0f5}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row.is-more{display:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cond.is-open .cvd-row.is-more{display:grid}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row dt{font:700 14px/1.3 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row dd{display:flex;align-items:center;gap:10px;min-width:0;margin:0;font:400 14px/1.3 'Segoe UI',Arial,sans-serif;color:#33415c}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row dd svg{width:18px;height:18px;color:#8a94a6}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row dd.is-good{color:#15803d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-row dd.is-good svg{color:#16a34a}
html body.cv3[data-kind=mietwagen] #results-region .cvd-more{display:flex;align-items:center;gap:10px;box-sizing:border-box;width:100%;height:38px;margin:12px 0 0;padding:0 14px;border:1px solid #d9e0ea;border-radius:10px;background:#fff;font:600 14.5px/1 'Segoe UI',Arial,sans-serif;color:#1d63e0;cursor:pointer}
html body.cv3[data-kind=mietwagen] #results-region .cvd-more svg{width:18px;height:18px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-more svg:last-child{margin-left:auto;transition:transform .2s}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cond.is-open .cvd-more svg:last-child{transform:rotate(180deg)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-side{box-sizing:border-box;min-width:0;padding:20px 18px;background:#fff;border:1px solid #e3e8f0;border-radius:12px;box-shadow:0 1px 3px rgba(11,31,77,.05)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-who{display:grid;grid-template-columns:1fr 1fr;padding:0 0 16px;border-bottom:1px solid #e6ebf2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-who>div{min-width:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-who>div+div{padding-left:16px;border-left:1px solid #e6ebf2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-who small{display:block;margin:0 0 9px;font:400 13px/1.2 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd .cvd-logo,html body.cv3[data-kind=mietwagen] #results-region .cvd .cvd-opaque{display:flex;align-items:center;height:30px;min-width:0;max-width:100%;overflow:hidden;font:700 15px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap;text-overflow:ellipsis}
html body.cv3[data-kind=mietwagen] #results-region .cvd .cvd-logo img{display:block;width:auto;height:auto;max-width:130px;max-height:28px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pvlink{display:inline-flex;max-width:100%;text-decoration:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-price{padding:16px 0 14px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-price strong{display:block;font:800 38px/1.1 'Segoe UI',Arial,sans-serif;letter-spacing:-.4px;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-price span{display:block;margin-top:4px;font:400 15px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd a.cvd-go{display:flex!important;align-items:center;justify-content:center;gap:9px;box-sizing:border-box!important;width:100%!important;min-width:0!important;height:48px!important;margin:0!important;padding:0 12px!important;border-radius:10px!important;font:700 17px/1 'Segoe UI',Arial,sans-serif!important;white-space:nowrap;text-decoration:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-go svg,html body.cv3[data-kind=mietwagen] #results-region .cvd-go2 svg{width:18px;height:18px;stroke-width:2.2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cmpbtn{display:block;box-sizing:border-box;width:100%;height:40px;margin:10px 0 0;border:1.5px solid #1d63e0;border-radius:10px;background:#fff;font:700 14.5px/1 'Segoe UI',Arial,sans-serif;color:#1d63e0;cursor:pointer}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pay{margin:18px 0 0;padding:16px 0 2px;border-top:1px solid #e6ebf2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-pay h3{margin:0 0 13px;font:800 17px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-prow{display:flex;align-items:flex-start;gap:16px;margin:0 0 14px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-prow svg{width:24px;height:24px;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-prow b{display:block;font:500 14.5px/1.3 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-prow small,html body.cv3[data-kind=mietwagen] #results-region .cvd-note small{display:block;margin-top:3px;font:400 13px/1.45 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-note{display:flex;align-items:flex-start;gap:14px;padding:16px 0 0;border-top:1px solid #e6ebf2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-note svg{width:24px;height:24px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-note b{display:block;font:700 14.5px/1.3 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-note small{margin-top:6px}
/* Anbieter-Vergleich (v4): je drei Anbieter nebeneinander, die nächsten drei darunter */
html body.cv3[data-kind=mietwagen] #results-region .cvd-sub{margin:6px 0 0;font:400 17px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-headimg{flex:none;width:clamp(170px,21%,250px);margin:0;text-align:right}
html body.cv3[data-kind=mietwagen] #results-region .cvd-headimg img{display:block;width:100%;height:112px;object-fit:contain}
html body.cv3[data-kind=mietwagen] #results-region .cvd-headimg img[src*="car-noimage-"]{object-fit:cover;border-radius:10px;filter:blur(.9px)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-headimg figcaption{margin-top:3px;font:400 10.5px/1.2 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-table{margin-top:4px;background:#fff;border:1px solid #e3e8f0;border-radius:12px;box-shadow:0 1px 3px rgba(11,31,77,.05)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-grp{display:grid;grid-template-columns:minmax(170px,27%) repeat(3,minmax(0,1fr))}
html body.cv3[data-kind=mietwagen] #results-region .cvd-grp+.cvd-grp{margin-top:14px;border-top:2px solid #e6ebf2}
html body.cv3[data-kind=mietwagen] #results-region .cvd-lab{display:flex;align-items:center;gap:14px;min-width:0;min-height:33px;padding:0 16px;border-top:1px solid #edf0f5;font:500 14px/1.25 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-lab svg{width:20px;height:20px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-lab.cvd-hl{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:20px;padding:14px 16px;border-top:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-lab.cvd-hl b{font:700 14.5px/1.2 'Segoe UI',Arial,sans-serif}
html body.cv3[data-kind=mietwagen] #results-region .cvd-col{box-sizing:border-box;min-width:0;border-left:1px solid #edf0f5}
html body.cv3[data-kind=mietwagen] #results-region .cvd-hc{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;padding:38px 10px 14px;text-align:center}
html body.cv3[data-kind=mietwagen] #results-region .cvd-hc.is-best,html body.cv3[data-kind=mietwagen] #results-region .cvd-cell.is-best.is-diff{background:#fff4ec}
html body.cv3[data-kind=mietwagen] #results-region .cvd-tag{position:absolute;top:9px;left:50%;transform:translateX(-50%);padding:4px 12px;border-radius:6px;background:#f26b1d;font:700 11.5px/1.2 'Segoe UI',Arial,sans-serif;color:#fff;white-space:nowrap}
html body.cv3[data-kind=mietwagen] #results-region .cvd-prov{display:inline-flex;align-items:center;gap:6px;max-width:100%;color:#1d63e0;text-decoration:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-prov svg{width:16px;height:16px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-hc .cvd-logo{justify-content:center;height:30px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cp{margin-top:6px;font:800 28px/1.1 'Segoe UI',Arial,sans-serif;letter-spacing:-.3px;color:#0b1f4d;white-space:nowrap}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cd{font:400 13.5px/1.3 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cell,html body.cv3[data-kind=mietwagen] #results-region .cvd-empty{display:flex;align-items:center;min-height:33px;padding:5px 14px;border-top:1px solid #edf0f5;font:400 14px/1.25 'Segoe UI',Arial,sans-serif;color:#33415c}
html body.cv3[data-kind=mietwagen] #results-region .cvd-hc.cvd-empty,html body.cv3[data-kind=mietwagen] #results-region .cvd-fc.cvd-empty{border-top:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-cell.is-diff{background:#fff7f1}
html body.cv3[data-kind=mietwagen] #results-region .cvd-col.is-best{border-left:1.5px solid #f59a62;border-right:1.5px solid #f59a62}
html body.cv3[data-kind=mietwagen] #results-region .cvd-hc.is-best{border-top:1.5px solid #f59a62;border-radius:12px 12px 0 0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-fc.is-best{border-bottom:1.5px solid #f59a62;border-radius:0 0 12px 12px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-col.is-best+.cvd-col{border-left:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-lab.cvd-fl{border-top:1px solid #edf0f5}
html body.cv3[data-kind=mietwagen] #results-region .cvd-fc{display:flex;align-items:center;padding:12px 12px 14px;border-top:1px solid #edf0f5}
html body.cv3[data-kind=mietwagen] #results-region .cvd-fc a.cvd-go{height:44px!important;font-size:16px!important}
html body.cv3[data-kind=mietwagen] #results-region .cvd-go2{display:flex;align-items:center;justify-content:center;gap:9px;box-sizing:border-box;width:100%;height:44px;border:1.5px solid #0b1f4d;border-radius:10px;background:#fff;font:700 16px/1 'Segoe UI',Arial,sans-serif;color:#0b1f4d;white-space:nowrap;text-decoration:none}
html body.cv3[data-kind=mietwagen] #results-region .cvd-foot{display:flex;align-items:center;gap:12px;margin:0;padding:12px 16px;border-top:1px solid #e6ebf2;font:400 13px/1.35 'Segoe UI',Arial,sans-serif;color:#5b6478}
html body.cv3[data-kind=mietwagen] #results-region .cvd-foot svg{width:20px;height:20px;color:#0b1f4d}
html body.cv3[data-kind=mietwagen] #results-region .cvd-toggle{position:relative;display:flex;align-items:center;gap:10px;font:400 13.5px/1.2 'Segoe UI',Arial,sans-serif;color:#33415c;cursor:pointer}
html body.cv3[data-kind=mietwagen] #results-region .cvd-toggle input{position:absolute;width:1px;height:1px;opacity:0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-toggle i{position:relative;flex:none;width:38px;height:22px;border-radius:11px;background:#d5dbe5;transition:background .2s}
html body.cv3[data-kind=mietwagen] #results-region .cvd-toggle i::after{content:"";position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .2s}
html body.cv3[data-kind=mietwagen] #results-region .cvd-toggle input:checked+i{background:#1d63e0}
html body.cv3[data-kind=mietwagen] #results-region .cvd-toggle input:checked+i::after{transform:translateX(16px)}
html body.cv3[data-kind=mietwagen] #results-region .cvd-toggle input:focus-visible+i{outline:2px solid #1d63e0;outline-offset:2px}
html body.cv3[data-kind=mietwagen] #results-region .cvd-table.only-diff .is-same{display:none!important}
@container cvd (max-width:900px){
  html body.cv3[data-kind=mietwagen] #results-region .cvd-h,html body.cv3[data-kind=mietwagen] #results-region .cvd-ch{font-size:28px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-cls,html body.cv3[data-kind=mietwagen] #results-region .cvd-sub{font-size:15.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-grid{grid-template-columns:minmax(0,1fr) 262px;gap:12px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-veh{grid-template-columns:47% minmax(0,1fr);gap:14px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-img{height:172px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-vr{padding:10px 8px 6px 0}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-specs{gap:16px 6px;padding-bottom:12px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-specs li{gap:5px;font-size:12.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-specs svg{width:20px;height:20px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-pick{grid-template-columns:minmax(0,1fr);gap:12px;padding:14px 14px 14px 16px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-pt{padding-right:0;border-right:0}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-cond{padding:14px 14px 12px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-row{grid-template-columns:38% minmax(0,1fr)}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-row dt,html body.cv3[data-kind=mietwagen] #results-region .cvd-row dd{font-size:13px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-side{padding:16px 14px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-who>div+div{padding-left:10px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd .cvd-logo img{max-width:100px;max-height:24px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-price strong{font-size:31px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-price span{font-size:13.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd a.cvd-go{height:44px!important;font-size:15.5px!important}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-headimg{width:150px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-headimg img{height:84px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-grp{grid-template-columns:minmax(140px,24%) repeat(3,minmax(0,1fr))}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-lab{gap:8px;padding:0 10px;font-size:12.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-lab svg{width:17px;height:17px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-lab.cvd-hl{padding:12px 10px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-cell,html body.cv3[data-kind=mietwagen] #results-region .cvd-empty{padding:5px 9px;font-size:12.5px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-cp{font-size:23px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-cd{font-size:12px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-hc .cvd-logo img{max-width:110px;max-height:22px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-fc{padding:10px 8px 12px}
  html body.cv3[data-kind=mietwagen] #results-region .cvd-fc a.cvd-go,html body.cv3[data-kind=mietwagen] #results-region .cvd-go2{height:40px!important;gap:6px;font-size:14px!important}
}
/* Release .360 – Mietwagen iPad: ausgefilterte Karten ([hidden]) wirklich ausblenden. Block .351 setzt die Karte auf display:block!important,
   dadurch blieben alle Karten sichtbar, obwohl Filter/„N Ergebnisse“ richtig rechneten (Sasan 30.09.: „keine einzige funktioniert“). */
html body.cv3[data-kind=mietwagen] #results-region .hotel-card.car-card[hidden]{display:none!important}
/* Sasan 30.09.: kein „Fertig“ – Filter wirken sofort beim Antippen (Logik war schon dynamisch); Schließen per Tipp daneben oder auf den Chip. */
html body.cv3[data-kind=mietwagen] #results-region .hotel-chip-panel .hotel-chip-done{display:none!important}
/* Release .361 – Mietwagen iPad: Filterbereich aufgeräumt (Sasan 30.09.: „benutze deine besten Ideen … da oben aufräumen“).
   Zeile 1: Rückgabe-Auswahl + „Nur mit Automatikgetriebe“ als Pillen, KAYAK-Partner rechts. Zeile 2: alle Filter-Chips sichtbar
   (umbrechend statt verdeckt/waagerecht versteckt), „Karte“ rechts. Zeile 3 (zwischen Linien): Ergebnisse · Preisanzeige · Sortieren · Preisalarm.
   Filter wirken sofort (kein Fertig, siehe .360); Panel bleibt im Bildschirm (konto.js Block „Release .361“). */
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-chipbar{display:flex!important;align-items:flex-start!important;gap:14px!important;flex-wrap:nowrap!important;margin:4px 0 0!important;padding:0!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-chips-row{flex:1 1 auto!important;min-width:0!important;display:flex!important;flex-wrap:wrap!important;gap:8px 6px!important;overflow:visible!important;mask-image:none!important;-webkit-mask-image:none!important;padding:0!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-chip-btn{height:34px!important;padding:0 10px 0 12px!important;border-radius:17px!important;white-space:nowrap!important;font-size:13px!important;box-sizing:border-box!important;gap:4px!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-map-switch{flex:none!important;height:34px!important;align-self:flex-start!important;margin:0!important;padding:0 0 0 14px!important;border-left:1px solid #dfe5ee!important;display:flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-map-switch>span{font-size:0!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-map-switch>span::before{content:"Karte";font-size:13px;font-weight:650}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-list-bar{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:12px!important;min-height:44px!important;padding:10px 0!important;margin:12px 0 10px!important;border-top:1px solid #e3e9f1!important;border-bottom:1px solid #e3e9f1!important;grid-template-columns:none!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-list-bar>*{position:static!important;grid-column:auto!important;grid-row:auto!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-list-count{order:1!important;flex:none!important;margin:0!important;font-size:14px!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-pricebox{order:2!important;flex:0 1 auto!important;min-width:0!important;max-width:380px!important;margin:0!important;justify-self:auto!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-pricebox select{max-width:100%!important;text-overflow:ellipsis!important;font-size:13px!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-sortbox{order:3!important;margin:0 0 0 auto!important;flex:none!important;justify-self:auto!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .bxx-alarm-pill{order:4!important;flex:none!important;margin:0!important;height:34px!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-form-top .car-option.car-option>span{display:none!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-form-top .car-option.car-option select{height:32px!important;padding:0 28px 0 12px!important;border:1px solid #d5deea!important;border-radius:16px!important;background-color:#fff!important;font-size:13px!important;font-weight:650!important;color:#0b1f4d!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-form-tail.hotel-form-tail{display:flex!important;align-items:center!important;gap:10px!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-form-tail.hotel-form-tail .car-automatic{order:-1!important;height:32px!important;display:inline-flex!important;align-items:center!important;gap:8px!important;padding:0 12px!important;border:1px solid #d5deea!important;border-radius:16px!important;background:#fff!important;font-size:13px!important;font-weight:650!important;cursor:pointer!important;box-sizing:border-box!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-form-tail.hotel-form-tail .car-automatic:has(input:checked){border-color:#1a5fd0!important;background:#eef4ff!important;color:#1a4fb0!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-form-tail.hotel-form-tail .search-partner{margin-left:auto!important}
/* Release .362 – Mietwagen iPad: nur 1 Angebot laut KAYAK → grauer Hinweis „Nur 1 Anbieter“ statt „Anbieter vergleichen“ (Karte + Details) */
html body.cv3[data-kind=mietwagen] #results-region .cv3-one{font-weight:500;color:#6b7a90;cursor:default}
html body.cv3[data-kind=mietwagen] #results-region .cv3-one svg{opacity:.75}
html body.cv3[data-kind=mietwagen] #results-region .cvd-one{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:40px;margin:10px 0 0;border:1.5px solid #e1e7ef;border-radius:10px;background:#f7f9fc;font:600 14px/1 'Segoe UI',Arial,sans-serif;color:#6b7a90}
/* Release .363 – Mietwagen PC nach car\desktop\v2.png (Sasan 30.09.: „der Hero bleibt … auf der linken Seite unsere Filter … sonst ist fast alles gleich“).
   body.cv3d (konto.js Block .351: Maus + ab 1024 px); Karten/Details/Vergleich aus den Blöcken .351/.355; Filter-Spalte aus konto.js Block .363.
   Block .361 (Filterbereich oben) gilt nur noch fürs iPad (:not(.cv3d)). */
html body.cv3d[data-kind=mietwagen] #results-region section.car-results{display:grid!important;grid-template-columns:290px minmax(0,1fr);column-gap:24px;align-items:start}
html body.cv3d[data-kind=mietwagen] #results-region section.car-results>*{grid-column:2;min-width:0}
html body.cv3d[data-kind=mietwagen] #results-region section.car-results>.cvd{grid-column:1/-1}
html body.cv3d[data-kind=mietwagen] #results-region section.car-results>.cv3d-side{grid-column:1;grid-row:1/span 2;align-self:start;position:sticky;top:16px;z-index:3}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-in{box-sizing:border-box;max-height:calc(100vh - 32px);overflow:auto;overscroll-behavior:contain;padding:22px 22px 18px;border:1px solid #e3e9f1;border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(15,35,75,.05)}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 0 16px;border-bottom:1px solid #e6ebf2}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-head h2{margin:0;font:800 22px/1.1 'Segoe UI',Arial,sans-serif;color:#0b1f4d}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-n{font:500 14px/1 'Segoe UI',Arial,sans-serif;color:#5d6b82;white-space:nowrap}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-sec{padding:16px 0 14px;border-bottom:1px solid #e6ebf2}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-sh{display:flex;align-items:center;justify-content:space-between;width:100%;margin:0;padding:0;border:0;background:none;font:700 16px/1.2 'Segoe UI',Arial,sans-serif;color:#0b1f4d;text-align:left;cursor:pointer}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-sh svg{flex:none;width:18px;height:18px;color:#0b1f4d;transition:transform .18s}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-sec.is-closed .cv3d-sh svg{transform:rotate(180deg)}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-sec.is-closed>.hotel-chip-panel{display:none!important}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-chip-panel.cv3d-panel{position:static!important;inset:auto!important;translate:none!important;display:block!important;width:auto!important;min-width:0!important;max-width:none!important;max-height:none!important;margin:12px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;overflow:visible!important}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-chip-panel.cv3d-panel .hotel-panel-title,html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-chip-panel .hotel-chip-done{display:none!important}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-filter-row{display:grid!important;grid-template-columns:20px minmax(0,1fr) auto;column-gap:12px;align-items:center;min-height:32px;margin:0!important;padding:3px 0!important;border:0!important;background:none!important;font:400 15px/1.25 'Segoe UI',Arial,sans-serif;color:#0b1f4d;cursor:pointer}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-filter-row input{grid-column:1;grid-row:1/span 2;width:18px;height:18px;margin:0;accent-color:#1d63e0}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-filter-row>span{grid-column:2;grid-row:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-filter-row>small{grid-column:2;grid-row:2;font-size:12px;color:#7a869a}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-filter-row>em{grid-column:3;grid-row:1/span 2;font:400 14px/1 'Segoe UI',Arial,sans-serif;font-style:normal;color:#5d6b82}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-reset{display:inline-flex;align-items:center;gap:10px;margin:16px 0 0;padding:0;border:0;background:none;font:600 16px/1 'Segoe UI',Arial,sans-serif;color:#1d63e0;cursor:pointer}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-reset svg{width:20px;height:20px}
html body.cv3d[data-kind=mietwagen] #results-region .hotel-chips-row .hotel-chip-wrap,html body.cv3d[data-kind=mietwagen] #results-region .hotel-chips-row .hotel-chip-all,html body.cv3d[data-kind=mietwagen] #results-region .hotel-chips-row .hotel-chip-reset{display:none!important}
/* Release .364 – PC Mietwagen: Mietwagenklasse gruppiert (konto.js Block .364), „+“ klappt die Klassen der Gruppe auf; ausgeblendete Zeilen ([hidden], z. B. „Mehr anzeigen“) bleiben aus */
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-filter-row[hidden]{display:none!important}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .hotel-chip-panel[data-cv3g] .hotel-filter-more{display:none!important}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-head{display:grid;grid-template-columns:minmax(0,1fr) 26px;column-gap:10px;align-items:center;min-height:34px}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-lab{display:grid;grid-template-columns:20px minmax(0,1fr) auto;column-gap:12px;align-items:center;margin:0;font:400 15px/1.25 'Segoe UI',Arial,sans-serif;color:#0b1f4d;cursor:pointer}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-lab input{width:18px;height:18px;margin:0;accent-color:#1d63e0}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-lab span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-lab em{font:400 14px/1 'Segoe UI',Arial,sans-serif;font-style:normal;color:#5d6b82}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-plus{display:grid;place-items:center;width:26px;height:26px;margin:0;padding:0;border:1px solid #cfd8e6;border-radius:50%;background:#fff;font:600 17px/1 'Segoe UI',Arial,sans-serif;color:#1d63e0;cursor:pointer}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-plus:hover{border-color:#1d63e0;background:#eef4ff}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g-body{display:none;margin:2px 0 4px 32px}
html body.cv3d[data-kind=mietwagen] #results-region .cv3d-side .cv3g.is-open .cv3g-body{display:block}
/* Release .365 – iPad Mietwagen (Sasan 30.09., iPad hoch: „die Filter … schweben irgendwo hin … müssen genau unter jedem Bereich kommen, den man öffnet“):
   bis 1100 px setzte die Regel „iPad 561–1100“ das Chip-Panel auf position:fixed ohne top → nach dem Scrollen landete es um die Scrollstrecke zu tief
   (mitten in Karte 2). Jetzt hängt das Panel direkt unter seinem Chip (absolute im Chip, scrollt mit); die Zeile bricht um, nichts schneidet ab. */
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-chips-row .hotel-chip-wrap{position:relative!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-chips-row .hotel-chip-panel:not(.is-inline){position:absolute!important;top:calc(100% + 6px)!important;left:0!important;right:auto!important;bottom:auto!important;margin:0!important;z-index:60!important;width:min(320px,calc(100vw - 32px))!important;max-height:min(460px,60vh)!important;overflow:auto!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-chipbar,html body.cv3:not(.cv3d)[data-kind=mietwagen] #results-region section.car-results .hotel-chips-row{position:relative;z-index:40}
/* Release .366 – iPad Mietwagen: Mietwagenklasse ebenso gruppiert wie am PC (konto.js Block .364, „+“ klappt auf) – im Chip-Panel und im Dialog „Alle Filter“ */
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .hotel-filter-more{display:none!important}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g-head{display:grid;grid-template-columns:minmax(0,1fr) 26px;column-gap:10px;align-items:center;min-height:34px}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g-lab{display:grid;grid-template-columns:20px minmax(0,1fr) auto;column-gap:10px;align-items:center;margin:0;font-size:14px;color:#0b1f4d;cursor:pointer}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g-lab input{width:18px;height:18px;margin:0;accent-color:#1d63e0}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g-lab span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g-lab em{font-style:normal;font-size:13px;color:#5d6b82}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g-plus{display:grid;place-items:center;width:26px;height:26px;margin:0;padding:0;border:1px solid #cfd8e6;border-radius:50%;background:#fff;font:600 17px/1 'Segoe UI',Arial,sans-serif;color:#1d63e0;cursor:pointer}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g-body{display:none;margin:0 0 4px 30px}
html body.cv3:not(.cv3d)[data-kind=mietwagen] .hotel-chip-panel[data-cv3g] .cv3g.is-open .cv3g-body{display:block}
/* Release .373 (49. Chat): Preiskalender Flug + Hotel – HTML-Tooltip mit dem Flugpreis je Hinflugtag (Maus), statt title-Attribut */
.package-search .pk-cal-tip{position:absolute;z-index:30;transform:translate(-50%,calc(-100% - 6px));background:#192024;color:#fff;font:600 12px/1.3 inherit;padding:5px 9px;border-radius:6px;white-space:nowrap;pointer-events:none;box-shadow:0 4px 14px rgba(15,23,42,.22)}
.package-search .pk-cal-tip[hidden]{display:none}
.package-search .package-price-note[hidden]{display:none}
/* Release .375 (Sasan 01.10.): Preiskalender Flug + Hotel – am Handy steht der Flugpreis klein im Tag („~“ = geschätzt); PC: Tooltip */
.package-search .pk-cal-price,.package-search .pk-note-tilde{display:none}
/* Release .376 (Sasan 00:19, iPhone: „muss drunter sein, bisschen höher machen“): Tage im Paket-Kalender am Handy 52 px hoch, Preis 11 px darunter */
@media(max-width:560px){.package-search .calendar-days .calendar-day{min-height:52px}.package-search .calendar-day.has-price{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.1;padding:4px 0}.package-search .pk-cal-price{display:block;font-size:11px;font-weight:600;letter-spacing:-.2px;opacity:.9;white-space:nowrap}.package-search .pk-note-tilde{display:inline}}
/* Release .376 (48./49. Chat, Preisprognose Punkt 2): „Günstigere Tage“ unter „Dein Flug“ auf der Flug + Hotel-Ergebnisseite – Flugpreise ±3 Tage (Price Insights) */
.pk-days{margin:0 0 12px;padding:10px 12px 12px;border:1px solid var(--pk-line,#dfe6ee);border-radius:12px;background:#fff}
.pk-days-head{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:12.5px;color:var(--muted,#5b6875)}
.pk-days-head .hi{width:16px;height:16px;color:var(--pk-blue,#0a66e8)}.pk-days-head strong{color:var(--ink,#192024);font-weight:800}
.pk-days-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.pk-day{display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 4px;border:1px solid var(--pk-line,#dfe6ee);border-radius:10px;background:#f7f9fc;color:var(--ink,#192024);text-decoration:none;text-align:center;min-width:0}
a.pk-day:hover{border-color:#0a66e8;background:#eef4ff}
.pk-day-date{font-size:12px;font-weight:600;white-space:nowrap}.pk-day-price{font-size:13px;font-weight:800;white-space:nowrap}.pk-day-kind{font-size:10.5px;color:var(--muted,#5b6875);min-height:13px;white-space:nowrap}
.pk-day.is-low{background:#e3f7ec;border-color:#83deb1}.pk-day.is-low .pk-day-price{color:#0b7a43}
.pk-day.is-current{border:2px solid #062e69;background:#fff}.pk-day.is-empty .pk-day-price{font-weight:600;color:var(--muted,#5b6875)}
@media(max-width:560px){.pk-days-head{flex-wrap:wrap}.pk-days-row{display:flex;overflow-x:auto;scrollbar-width:none;margin:0 -12px;padding:0 12px 2px}.pk-days-row::-webkit-scrollbar{display:none}.pk-day{flex:0 0 88px}}
/* Release .377 (Sasan 00:2x: Preis im Tag „auch“ am PC): Preis unter dem Tag auf allen Breiten, Tage höher; 561–1180 px (zwei schmale Monate) kleiner und ohne „€“ */
.package-search .calendar-days .calendar-day{min-height:54px}
.package-search .calendar-day.has-price{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.1;padding:4px 0}
.package-search .pk-cal-price{display:block;font-size:11px;font-weight:600;letter-spacing:-.2px;opacity:.9;white-space:nowrap}
.package-search .pk-note-tilde{display:inline}
@media(min-width:561px) and (max-width:1180px){.package-search .pk-cal-price{font-size:9.5px;letter-spacing:-.3px}}
/* Release .378 (Sasan: „mit Eurozeichen ist gut“): € immer – bei schmalen Tagen (561–1180 px) in eigener Zeile unter der Zahl */
@media(min-width:561px) and (max-width:1180px){.package-search .pk-cal-eur{display:block}}
@media(max-width:560px){.package-search .calendar-days .calendar-day{min-height:52px}}
/* Release .379: „Günstigere Tage“ darf die Seite am Handy nicht verbreitern (Leiste scrollt in sich) */
.pk-days{contain:inline-size;min-width:0;max-width:100%;box-sizing:border-box}.pk-days-row{position:relative}
/* Release .381 (Sasan Ende 49. Chat: Flug-Kalender „genauso“ wie Flug + Hotel): Datumswähler der Flugsuche – Preis mit € unter dem Tag
   („~“ = von KAYAK geschätzt), Tage höher, HTML-Tooltip (Maus). Gilt nur mit .fl-cal (search.js setzt die Klasse; zuerst Vorschau-Schalter). */
.fl-cal .calendar-days .calendar-day{min-height:54px}
.fl-cal .calendar-day.has-price{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.1;padding:4px 0}
.fl-cal .pk-cal-price{display:block;font-size:11px;font-weight:600;letter-spacing:-.2px;opacity:.9;white-space:nowrap}
.fl-cal .fl-cal-tip{position:absolute;z-index:30;transform:translate(-50%,calc(-100% - 6px));background:#192024;color:#fff;font-size:12px;font-weight:600;line-height:1.3;padding:5px 9px;border-radius:6px;white-space:nowrap;pointer-events:none;box-shadow:0 4px 14px rgba(15,23,42,.22)}
.fl-cal-tip[hidden]{display:none}
@media(max-width:620px){.fl-cal .calendar-days .calendar-day{min-height:52px}}

/* Release .403: „Günstigster“ entfällt direkt neben dem gewählten Tag (search.js). Release .402: Kopf je Seite nur „Hinflug“/„Rückflug“ (ohne Strecke/Monat). Release .401: Preisbalken für alle live, alter Block .386–.397 (.fl-bars) entfernt. */
/* Release .400 (Sasan 52. Chat, Designentwurf + „aber in einer Zeile“ + „viel schmaler“): Hinflug | Rückflug einspurig nebeneinander, je 20 Tage,
   Grautöne, günstige Tage hellgrün, gewählter Tag dunkelgrün, weiße Preisblase mit Strich, „Günstigster“ mit Strich, Datum alle 5 Tage + Pille,
   Kopf und Fußzeile je eine Zeile. */
.fl-pb{--pb-bar:#d6dce6;--pb-bar-hi:#bcc6d6;--pb-cheap:#cdeee0;--pb-cheap-hi:#b1e1cc;--pb-min:#a3d9c2;--pb-sel:#2a9d80;--pb-ink:#16233f;--pb-mute:#66758c;--pb-green:#1f9a6c;--pb-top:36px;--pb-bh:60px;position:relative;margin:14px 0 16px;padding:14px 22px 0;background:#fff;border:1px solid #e3e8f0;border-radius:16px;box-shadow:0 4px 16px rgba(18,38,74,.06);color:var(--pb-ink)}
.fl-pb[hidden]{display:none}
.fl-pb-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-right:30px}
.fl-pb-panels:has(> :only-child){grid-template-columns:minmax(0,1fr)}
.fl-pb-panel{display:grid;grid-template-columns:20px minmax(0,1fr) 20px;column-gap:4px;min-width:0}
.fl-pb-panel+.fl-pb-panel{border-left:1px solid #e8edf3;padding-left:14px;margin-left:14px}
.fl-pb-head{grid-column:2;grid-row:1;display:flex;align-items:baseline;gap:10px;min-width:0}
.fl-pb-kind{font-size:16px;font-weight:800;line-height:1.3;white-space:nowrap}
.fl-pb-plot{grid-column:2;grid-row:2;position:relative;min-width:0;padding-top:var(--pb-top)}
.fl-pb-arrow{grid-row:2;align-self:start;margin-top:calc(var(--pb-top) + var(--pb-bh) / 2 - 12px);display:inline-flex;align-items:center;justify-content:center;width:20px;height:24px;padding:0;border:0;border-radius:6px;background:none;color:var(--pb-ink);cursor:pointer;font-size:0;transition:background .15s}
.fl-pb-arrow::before{content:"";width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateX(2px) rotate(135deg)}
.fl-pb-arrow.is-next::before{transform:translateX(-2px) rotate(-45deg)}
.fl-pb-arrow.is-prev{grid-column:1}.fl-pb-arrow.is-next{grid-column:3}
.fl-pb-arrow:hover:not(:disabled){background:#eef3f8}
.fl-pb-arrow:disabled{opacity:.25;cursor:default}
.fl-pb-bars{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));align-items:end;height:var(--pb-bh)}
.fl-pb-col{display:flex;align-items:flex-end;justify-content:center;height:100%;min-width:0;padding:0 16%;margin:0;border:0;background:none;cursor:pointer;font:inherit;color:inherit}
.fl-pb-col:disabled{cursor:default}
.fl-pb-col:focus-visible{outline:2px solid var(--pb-sel);outline-offset:1px;border-radius:4px}
.fl-pb-bar{display:block;width:100%;max-width:30px;height:calc(var(--h) * 100%);background:var(--pb-bar);border-radius:3px 3px 1px 1px;transform-origin:bottom;transition:background .18s}
.fl-pb-bars.is-grow .fl-pb-bar{animation:flPbUp .5s cubic-bezier(.2,.8,.25,1) both;animation-delay:calc(var(--i) * 12ms)}
.fl-pb-col.is-cheap .fl-pb-bar{background:var(--pb-cheap)}
.fl-pb-col.is-min .fl-pb-bar{background:var(--pb-min)}
.fl-pb-col.is-empty .fl-pb-bar{background:#edf1f6}
.fl-pb-col:hover:not(:disabled) .fl-pb-bar{background:var(--pb-bar-hi)}
.fl-pb-col.is-cheap:hover:not(:disabled) .fl-pb-bar{background:var(--pb-cheap-hi)}
.fl-pb-col.is-sel .fl-pb-bar,.fl-pb-col.is-sel:hover .fl-pb-bar{background:var(--pb-sel)}
.fl-pb-col.is-sel.is-empty .fl-pb-bar{background:#9fcfc2}
.fl-pb-plot.is-wait .fl-pb-bar{background:#e8edf4;animation:flPbPulse 1s ease-in-out infinite alternate}
.fl-pb-bubble{position:absolute;top:0;left:0;width:0;height:26px;z-index:3;pointer-events:none;transition:left .28s cubic-bezier(.2,.8,.25,1),opacity .15s}
.fl-pb-bubble[hidden]{display:none}
.fl-pb-tag{position:absolute;top:0;left:0;transform:translateX(calc(-50% + var(--dx,0px)));display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 9px;border:1px solid #d9e0ea;border-radius:7px;background:#fff;color:var(--pb-ink);font-size:13.5px;font-weight:700;line-height:1;white-space:nowrap;box-shadow:0 3px 10px rgba(18,38,74,.10)}
.fl-pb-tag b{font-weight:700}
.fl-pb-tag small{font-size:11px;font-weight:600;color:var(--pb-mute)}
.fl-pb-best{font-size:11px;font-weight:700;color:#0f5a44;background:#cdeee0;border-radius:999px;padding:3px 7px}
.fl-pb-line{position:absolute;left:-.75px;top:26px;width:1.5px;height:calc(var(--pb-top) - 26px + var(--pb-bh) * (1 - var(--h,1)));background:var(--pb-ink);transition:height .28s cubic-bezier(.2,.8,.25,1)}
.fl-pb-bubble.is-hover,.fl-pb-bubble.is-hover .fl-pb-line{transition:none}
.fl-pb-bubble.is-hover{z-index:4}
.fl-pb-bubble.is-hover .fl-pb-tag{animation:flPbIn .15s ease both}
.fl-pb-plot.is-hovering .fl-pb-bubble:not(.is-hover){opacity:.25}
.fl-pb-cheap{position:absolute;left:0;top:calc(var(--pb-top) + var(--pb-bh) * (1 - var(--h,1)) - 24px);z-index:2;transform:translateX(-50%);font-size:12px;font-weight:700;line-height:16px;color:var(--pb-green);white-space:nowrap;pointer-events:none;animation:flPbIn .3s ease both}
.fl-pb-cheap::after{content:"";position:absolute;left:50%;top:18px;width:1.5px;height:6px;background:currentColor;transform:translateX(-50%)}
.fl-pb-cheap[hidden]{display:none}
.fl-pb-axis{position:relative;height:30px}
.fl-pb-day{position:absolute;top:8px;left:0;transform:translateX(-50%);font-size:12px;line-height:18px;color:#7b889c;white-space:nowrap}
.fl-pb-day::before{content:"";position:absolute;left:50%;top:-9px;width:1px;height:5px;background:#cbd4e1}
.fl-pb-day.is-sel{top:4px;padding:2px 9px;border-radius:999px;background:#d9f1e8;color:#0f2d27;font-size:12.5px;font-weight:700}
.fl-pb-day.is-sel::before{top:-5px;height:4px;background:var(--pb-sel)}
.fl-pb-none{position:absolute;left:0;right:0;top:calc(var(--pb-top) + 20px);z-index:2;margin:0;text-align:center;font-size:13px;font-weight:600;color:var(--pb-mute)}
.fl-pb-none[hidden]{display:none}
.fl-pb-foot{display:flex;align-items:center;gap:16px;margin:2px -22px 0;padding:10px 22px 11px;border-top:1px solid #e8edf3}
.fl-pb-dates{font-size:17px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}
.fl-pb-div{flex:none;width:1px;height:22px;background:#d9e0ea}
.fl-pb-price{display:flex;align-items:baseline;gap:6px;flex:1;min-width:0;white-space:nowrap}
.fl-pb-total{font-size:19px;font-weight:800;letter-spacing:-.01em}
.fl-pb-total:empty{display:none}
.fl-pb-per{font-size:15px;font-weight:600}
.fl-pb-per[hidden]{display:none}
.fl-pb-note{margin-left:10px;font-size:13px;color:var(--pb-mute);overflow:hidden;text-overflow:ellipsis}
.fl-pb-price.is-new{animation:flPbIn .3s ease both}
.fl-pb-go{display:inline-flex;align-items:center;gap:8px;flex:none;height:34px;padding:0 16px;border:1.5px solid #1f6f5c;border-radius:9px;background:#fff;color:#14513f;font:inherit;font-size:14.5px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,transform .15s,opacity .15s}
.fl-pb-go::after{content:"→";font-size:16px;line-height:1}
.fl-pb-go:hover:not(:disabled){background:#1f6f5c;color:#fff;transform:translateY(-1px)}
.fl-pb-go:disabled{opacity:.4;cursor:default}
.fl-pb-close{position:absolute;top:10px;right:12px;z-index:5;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:#f1f5fa;color:var(--pb-ink);cursor:pointer;font-size:0;transition:background .15s,transform .15s}
.fl-pb-close::before,.fl-pb-close::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;border-radius:2px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}
.fl-pb-close::after{transform:translate(-50%,-50%) rotate(-45deg)}
.fl-pb-close:hover{background:#e3eaf4;transform:rotate(90deg)}
.fl-pb-reopen{display:block;margin:10px 0 12px auto;border:1px solid #d5deea;background:#fff;border-radius:999px;padding:6px 14px;font:inherit;font-size:13px;font-weight:700;color:#0b57c9;cursor:pointer}
.fl-pb-reopen[hidden]{display:none}
@keyframes flPbUp{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes flPbPulse{from{opacity:.5}to{opacity:1}}
@keyframes flPbIn{from{opacity:0}to{opacity:1}}
@media (max-width:1023px){.fl-pb,.fl-pb-reopen{display:none}}
@media (prefers-reduced-motion:reduce){.fl-pb *{animation:none!important;transition:none!important}}

/* Release .404 (Sasan 53. Chat: „in iPad können wir es noch mit reinnehmen … unter dem Bild oder über den Filtern“): Preisbalken auf dem iPad
   (html.bxx-tm = Touch 561–1400 px, tablet-mobile.js; hoch und quer) unter dem Bild, über Preisalarm und Filterleiste. Gleiches Aussehen wie am PC,
   größere Tippflächen (Pfeile, ✕), Wischen erlaubt. Bis zur Freigabe nur mit html.bxx-pb-tm (search.js, Vorschau-Schalter). Keine Breiten-Media-
   Abfragen hier – tablet-mobile.js rechnet sie auf dem iPad wie 430 px; iPhone und PC unverändert. */
html.bxx-tm.bxx-pb-tm .fl-pb:not([hidden]){display:block;margin:14px 0 6px;padding:12px 16px 0;border-radius:14px}
html.bxx-tm.bxx-pb-tm .fl-pb-reopen:not([hidden]){display:block;margin:10px 0 4px auto}
html.bxx-tm.bxx-pb-tm .fl-pb-panels{padding-right:34px}
html.bxx-tm.bxx-pb-tm .fl-pb-panel{grid-template-columns:28px minmax(0,1fr) 28px;column-gap:2px}
html.bxx-tm.bxx-pb-tm .fl-pb-panel+.fl-pb-panel{padding-left:10px;margin-left:10px}
html.bxx-tm.bxx-pb-tm .fl-pb-arrow{width:28px;height:36px;margin-top:calc(var(--pb-top) + var(--pb-bh) / 2 - 18px);-webkit-tap-highlight-color:transparent}
html.bxx-tm.bxx-pb-tm .fl-pb-plot{touch-action:pan-y}
html.bxx-tm.bxx-pb-tm .fl-pb-col{padding:0 14%;-webkit-tap-highlight-color:transparent}
html.bxx-tm.bxx-pb-tm .fl-pb-close{top:8px;right:10px;width:32px;height:32px;-webkit-tap-highlight-color:transparent}
html.bxx-tm.bxx-pb-tm .fl-pb-close:hover{transform:none}
html.bxx-tm.bxx-pb-tm .fl-pb-foot{margin:2px -16px 0;padding:10px 16px 12px;gap:12px}
html.bxx-tm.bxx-pb-tm .fl-pb-go{height:38px}
/* Release .405 (iPad-Vorschau): „Günstigster“ am Rand ins Feld geschoben (--dx aus search.js), Strich bleibt über dem Balken. */
html.bxx-tm.bxx-pb-tm .fl-pb-cheap{transform:translateX(calc(-50% + var(--dx,0px)))}
html.bxx-tm.bxx-pb-tm .fl-pb-cheap::after{left:calc(50% - var(--dx,0px))}
/* Release .406 (Sasan 53. Chat: „Preisalarm … in die Suchleiste da oben neben dem Merken“): iPad – Glocke in der Kopfzeile zwischen Suchfeld und
   Herz (konto.js), aktiv = blau gefüllt + grüner Punkt; die Preisalarm-Zeile über der Filterleiste entfällt dort. Nur mit iPad-Vorschau (bxx-pb-tm). */
html.bxx-tm.bxx-pb-tm .site-header .bxx-alarm-head{order:3;position:relative;display:grid;place-items:center;flex:0 0 auto;width:30px;height:34px;margin:0 2px 0 0;padding:0;border:0;border-radius:8px;background:none;color:#0b2a55;cursor:pointer;-webkit-tap-highlight-color:transparent}
html.bxx-tm.bxx-pb-tm .site-header .bxx-alarm-head svg{width:22px;height:22px;stroke-width:2.2}
html.bxx-tm.bxx-pb-tm .site-header .bxx-alarm-head i{display:none;position:absolute;top:5px;right:2px;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#1f9a6c}
html.bxx-tm.bxx-pb-tm .site-header .bxx-alarm-head.is-on{color:#0a66e8}
html.bxx-tm.bxx-pb-tm .site-header .bxx-alarm-head.is-on svg{fill:currentColor}
html.bxx-tm.bxx-pb-tm .site-header .bxx-alarm-head.is-on i{display:block}
html.bxx-tm.bxx-pb-tm body .flight-sidebar > .bxx-alarm-card{display:none}
/* Release .409 (Sasan 54. Chat: „die iPad-Version auch im iPhone … zehn Tage … je kleiner, desto kleiner“): iPhone ≤ 560 px – Preisbalken wie iPad
   nebeneinander, 10 Tage je Seite (search.js), kleinere Abstände, Fußzeile darf umbrechen. Seit .412 für alle iPhones (html.bxx-pb-ph). */
html.bxx-pb-ph .fl-pb:not([hidden]){display:block;--pb-top:34px;--pb-bh:54px;margin:10px 0 6px;padding:10px 10px 0;border-radius:14px}
html.bxx-pb-ph .fl-pb-reopen:not([hidden]){display:block;margin:8px 0 4px auto}
html.bxx-pb-ph .fl-pb-panels{padding-right:26px}
html.bxx-pb-ph .fl-pb-panel{grid-template-columns:18px minmax(0,1fr) 18px;column-gap:1px}
html.bxx-pb-ph .fl-pb-panel+.fl-pb-panel{padding-left:6px;margin-left:6px}
html.bxx-pb-ph .fl-pb-kind{font-size:14px}
html.bxx-pb-ph .fl-pb-arrow{width:18px;height:32px;margin-top:calc(var(--pb-top) + var(--pb-bh) / 2 - 16px);-webkit-tap-highlight-color:transparent}
html.bxx-pb-ph .fl-pb-plot{touch-action:pan-y}
html.bxx-pb-ph .fl-pb-col{padding:0 12%;-webkit-tap-highlight-color:transparent}
html.bxx-pb-ph .fl-pb-tag{height:24px;padding:0 7px;font-size:12px;gap:4px}
html.bxx-pb-ph .fl-pb-tag small{font-size:10px}
html.bxx-pb-ph .fl-pb-line{top:24px;height:calc(var(--pb-top) - 24px + var(--pb-bh) * (1 - var(--h,1)))}
html.bxx-pb-ph .fl-pb-cheap{font-size:11px;transform:translateX(calc(-50% + var(--dx,0px)))}
html.bxx-pb-ph .fl-pb-cheap::after{left:calc(50% - var(--dx,0px))}
html.bxx-pb-ph .fl-pb-close{top:6px;right:6px;width:28px;height:28px;-webkit-tap-highlight-color:transparent}
html.bxx-pb-ph .fl-pb-close:hover{transform:none}
html.bxx-pb-ph .fl-pb-foot{flex-wrap:wrap;margin:2px -10px 0;padding:8px 10px 10px;gap:6px 10px}
html.bxx-pb-ph .fl-pb-dates{font-size:15px}
html.bxx-pb-ph .fl-pb-total{font-size:17px}
html.bxx-pb-ph .fl-pb-per{font-size:13px}
/* Release .410 (iPhone-Vorschau): Fußzeile – „pro Person“ lief unter den Knopf → Hinweis in eigene Zeile, Knopf volle Breite darunter. */
/* Release .411 (Sasan 54. Chat: „650 pro Person pp schreiben … gegenüberstellen … Freiraum haben wir auf der rechten Seite“): Datum links,
   „650 € p. P.“ rechts in derselben Zeile (search.js setzt „p. P.“), Hinweis klein rechts darunter, Knopf volle Breite. */
html.bxx-pb-ph .fl-pb-foot{align-items:baseline}
html.bxx-pb-ph .fl-pb-div{display:none}
html.bxx-pb-ph .fl-pb-price{display:contents}
html.bxx-pb-ph .fl-pb-total{margin-left:auto}
html.bxx-pb-ph .fl-pb-per{margin-left:-5px}
html.bxx-pb-ph .fl-pb-note{flex-basis:100%;margin:-4px 0 0;font-size:12px;text-align:right}
html.bxx-pb-ph .fl-pb-go{flex:1 0 100%;justify-content:center;height:38px}
html.bxx-pb-ph .fl-pb-day{font-size:10.5px}
/* Release .413 (Sasan 54. Chat: „nur diesen Balken anzeigen … keinen Text“, alle Fassungen): Einblenden-Knopf nur als Balken-Symbol (search.js). */
.fl-pb-reopen{place-items:center;width:52px;height:34px;padding:0;border-radius:10px;line-height:0;-webkit-tap-highlight-color:transparent}
@media (min-width:1024px){.fl-pb-reopen:not([hidden]){display:grid}}
html.bxx-tm.bxx-pb-tm .fl-pb-reopen:not([hidden]),html.bxx-pb-ph .fl-pb-reopen:not([hidden]){display:grid}
.fl-pb-reopen svg{display:block;width:34px;height:13px}
.fl-pb-reopen:hover{border-color:#9fb0c6}
/* Release .414 (Sasan 55. Chat, iPhone: Preisalarm kompakt, „ohne Text“, ohne Schalter): Glocke .bxx-alarm-mini (konto.js) – Balken offen oben rechts
   neben dem ✕, Balken zu links in einer Reihe mit dem Balken-Symbol (.fl-pb-zrow, search.js); aktiv blau gefüllt + grüner Punkt; große Karte entfällt. */
html.bxx-pb-ph.bxx-alarm-mini-on body .flight-sidebar > .bxx-alarm-card{display:none}
html.bxx-pb-ph .fl-pb-zrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 4px}
html.bxx-pb-ph .fl-pb-zrow[hidden]{display:none}
html.bxx-pb-ph .fl-pb-zrow .fl-pb-reopen:not([hidden]){margin:0 0 0 auto}
html.bxx-pb-ph .bxx-alarm-mini{position:relative;display:grid;place-items:center;width:52px;height:34px;padding:0;border:1px solid #d5deea;border-radius:10px;background:#fff;color:#0b2a55;cursor:pointer;-webkit-tap-highlight-color:transparent}
html.bxx-pb-ph .bxx-alarm-mini svg{width:20px;height:20px;stroke-width:2.1}
html.bxx-pb-ph .bxx-alarm-mini i{display:none;position:absolute;top:5px;right:14px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#1f9a6c}
html.bxx-pb-ph .bxx-alarm-mini.is-on{color:#0a66e8}
html.bxx-pb-ph .bxx-alarm-mini.is-on svg{fill:currentColor}
html.bxx-pb-ph .bxx-alarm-mini.is-on i{display:block}
html.bxx-pb-ph .fl-pb > .bxx-alarm-mini{position:absolute;top:6px;right:38px;z-index:2;width:28px;height:28px;border:0;border-radius:8px;background:none}
html.bxx-pb-ph .fl-pb > .bxx-alarm-mini svg{width:19px;height:19px}
html.bxx-pb-ph .fl-pb > .bxx-alarm-mini i{top:3px;right:3px}
/* Release .415 (Sasan 55. Chat): iPhone 7 Tage je Seite (search.js, „dickere Balken“); Hin- und Rückflug gleich breit („rechte Seite zusammengequetscht“ –
   der Platz fürs ✕ entfällt, ✕ und Glocke stehen in der Kopfzeile); Kopf = Flugzeug-Symbol statt Text. Gleiten per Finger (iPhone + iPad): --pb-dx. */
html.bxx-pb-ph .fl-pb-panels{padding-right:0}
html.bxx-pb-ph .fl-pb-panel:first-child{padding-right:6px}
html.bxx-pb-ph .fl-pb-panel+.fl-pb-panel{padding-left:6px;margin-left:0}
html.bxx-pb-ph .fl-pb-kind.is-icon{display:flex;align-items:center;height:22px;color:#0b2a55}
html.bxx-pb-ph .fl-pb-kind.is-icon svg{width:22px;height:22px}
.fl-pb-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.fl-pb-plot.is-drag{clip-path:inset(-80px 0 -40px 0)}
.fl-pb-plot.is-drag > *{translate:var(--pb-dx,0px) 0}
.fl-pb-plot.is-drag .fl-pb-bubble,.fl-pb-plot.is-drag .fl-pb-cheap{transition:none}

/* Release .415: auf Touch kein Text-Markieren im Preisbalken beim Wischen/Halten (Sasan-Screenshot: „15. – 25. Jan.“ blau markiert). */
html.bxx-pb-ph .fl-pb,html.bxx-tm.bxx-pb-tm .fl-pb{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
/* Release .416 (Sasan 55. Chat: „das Datum … bei allen Versionen entfernen … ist ja oben schon markiert“): Datum + Trennstrich in der Fußzeile weg (PC, iPad,
   iPhone). iPhone („Flüge anzeigen … in die erste Reihe … Geschätzt Hin- und Rückflug bleibt unten … spart viel Platz“): links „3.224 € p. P.“ mit
   „Geschätzt · Hin- und Rückflug“ darunter, rechts der Knopf – eine Zeile statt drei. */
.fl-pb-foot .fl-pb-dates,.fl-pb-foot .fl-pb-div{display:none}
html.bxx-pb-ph .fl-pb-foot{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:4px;row-gap:1px;align-items:baseline;padding:8px 10px 10px}
html.bxx-pb-ph .fl-pb-total{grid-column:1;grid-row:1;margin:0}
html.bxx-pb-ph .fl-pb-per{grid-column:2;grid-row:1;margin:0}
html.bxx-pb-ph .fl-pb-note{grid-column:1/4;grid-row:2;margin:0;text-align:left;font-size:11.5px}
html.bxx-pb-ph .fl-pb-go{grid-column:4;grid-row:1/3;align-self:center;width:auto;height:38px;padding:0 14px;margin-left:8px;white-space:nowrap}

/* Release .419 (Sasan 55. Chat, Flug-Kalender Rückflugpreise – Vorschau): Schritt-Zeile Hinflug → Rückflug, Tage vor dem Hinflug grau mit Preis,
   beim Laden die letzten Preise blasser. */
.cal-step{display:flex;align-items:center;gap:10px;margin:2px 0 12px;padding:8px 12px;border-radius:12px;background:#f4f7fb;font-size:13.5px;color:#5b6b82}
.cal-step[hidden]{display:none}
.cal-step-item{display:flex;align-items:center;gap:6px;white-space:nowrap}
.cal-step-item b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#dfe6ef;color:#5b6b82;font-size:12px}
.cal-step-item strong{color:#0b2a55}
.cal-step-item.is-now{color:#0b2a55;font-weight:700}
.cal-step-item.is-now b{background:#0b57c9;color:#fff}
.cal-step-item.is-now strong{color:#0b57c9}
.cal-step-item.is-done b{background:#1f9a6c;color:#fff}
.cal-step-line{flex:0 0 26px;height:2px;border-radius:2px;background:#cfd8e4}
.calendar-day.cal-before:not(.date-selected){background:#eef1f5!important;color:#a3adbb!important;border-color:#e3e8ef!important}
.calendar-day.cal-before:not(.date-selected) .pk-cal-price{color:#a3adbb!important}
.calendar-day.cal-stale .pk-cal-price{opacity:.45}
/* Release .421: Summe Hin + Rück rechts in der Schritt-Zeile. */
.cal-step-total{margin-left:auto;font-weight:800;color:#0b2a55;white-space:nowrap}

/* Release .422 (Sasan 55. Chat: „da oben … zu viel Januar, zu viel Februar … zu viele Zahlen … kompakter machen“ – Vorschau ?vorschau=kopf):
   kompakter Kalender-Kopf – statt zwei großer Datumsfelder + „genau“-Auswahl + Schritt-Zeile EINE Zeile: je Strecke ein Feld (Nummer/✓,
   Hinflug/Rückflug, Datum, „genau ▾“), rechts „Hin + Rück“ mit der Summe. Am Handy zwei Felder nebeneinander, Summe darunter. */
.cal-compact .calendar-inputs{display:none}
.cal-head{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:5px;border-radius:14px;background:#f4f7fb;color:#0b2a55}
.cal-head [hidden],.cal-head[hidden]{display:none!important}
.cal-leg{display:flex;align-items:center;min-width:0;border:1.5px solid transparent;border-radius:10px}
.cal-leg.is-now{background:#fff;border-color:#0b57c9;box-shadow:0 1px 3px rgba(11,42,85,.12)}
.cal-leg-pick{display:grid;grid-template-columns:22px auto;grid-template-rows:auto auto;column-gap:8px;align-items:center;min-width:0;margin:0;padding:5px 6px 5px 9px;border:0;border-radius:9px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.cal-leg-pick b{grid-row:1/3;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#dfe6ef;color:#5b6b82;font-size:12px}
.cal-leg-l{font-size:12px;line-height:1.2;color:#5b6b82}
.cal-leg-d{font-size:15px;font-weight:800;line-height:1.25;white-space:nowrap}
.cal-leg.is-now .cal-leg-pick b{background:#0b57c9;color:#fff}
.cal-leg.is-now .cal-leg-l{color:#0b57c9;font-weight:700}
.cal-leg.is-done .cal-leg-pick b{background:#1f9a6c;color:#fff}
.cal-leg.is-next .cal-leg-d{color:#5b6b82;font-weight:650}
.cal-leg-flex{position:relative;display:flex;align-items:center;gap:5px;margin:0 8px 0 2px;padding:3px 9px;border-radius:999px;background:#e6edf6;color:#33475f;font-size:12px;font-weight:650;line-height:1.3;white-space:nowrap;cursor:pointer}
.cal-leg.is-now .cal-leg-flex{background:#eaf3ff;color:#0b57c9}
.cal-leg-flex::after{content:"";width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.cal-leg-flex select{position:absolute;inset:0;width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:0;border:0;opacity:0;font-size:16px;cursor:pointer}
.cal-head .cal-step-line{flex:0 0 18px;height:2px;border-radius:2px;background:#cfd8e4}
.cal-head-total{display:flex;flex-direction:column;align-items:flex-end;margin-left:auto;padding:0 10px 0 6px;line-height:1.25;white-space:nowrap}
.cal-head-total small{font-size:12px;color:#5b6b82}
.cal-head-total strong{font-size:15px;font-weight:800}
@media(max-width:560px){
  .cal-head{display:grid;grid-template-columns:1fr 1fr;gap:5px}
  .cal-head.is-one{grid-template-columns:1fr}
  .cal-head .cal-step-line{display:none}
  .cal-leg{flex-direction:column;align-items:flex-start}
  .cal-leg-pick{width:100%}
  .cal-leg-flex{margin:0 0 6px 39px}
  .cal-head-total{grid-column:1/-1;flex-direction:row;justify-content:flex-end;align-items:baseline;gap:8px;margin:0;padding:1px 8px 3px}
}

/* Release .424 (Sasan 56. Chat: „unten eine kleine Legende … mit Farben … kein Text … Mouse-Over“ – Vorschau ?vorschau=legende): Farb-Legende
   unter dem Kalender (nur Farbfelder, Erklärung als HTML-Blase bei Maus/Fokus/Antippen), Blasen auch am Kopf. Erklärtext unten nur noch für Screenreader. */
.cal-legend{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin:12px 0 0 -6px}
.cal-legend[hidden]{display:none}
.cal-lg-i{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;cursor:help;outline:none;-webkit-tap-highlight-color:transparent}
.cal-lg-i:hover,.cal-lg-i:focus-visible{background:#eef3f9}
.cal-lg-i:focus-visible{box-shadow:0 0 0 2px #0b57c9 inset}
.cal-lg-i i{display:grid;place-items:center;width:16px;height:16px;border-radius:4px;font-style:normal;font-size:12px;font-weight:800;line-height:1}
.cal-lg-low i{background:#83deb1}.cal-lg-mid i{background:#ffc779}.cal-lg-high i{background:#fa9da7}
.cal-lg-sel i{background:#062e69}.cal-lg-range i{background:#0a66e8}.cal-lg-before i{background:#eef1f5;box-shadow:0 0 0 1px #cfd6e0 inset}
.cal-lg-est i{background:#f1f4f8;color:#33475f;box-shadow:0 0 0 1px #cfd6e0 inset}
.cal-lg-info i{border-radius:50%;background:#0b57c9;color:#fff;font-family:Georgia,serif;font-size:11px}
.calendar-price-note.cal-note-sr{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.cal-help-tip{position:absolute;z-index:31;max-width:260px;padding:8px 11px;border-radius:8px;background:#192024;color:#fff;font-size:12.5px;font-weight:600;line-height:1.4;text-align:left;white-space:normal;transform:translate(-50%,calc(-100% - 8px));pointer-events:none;box-shadow:0 6px 18px rgba(15,23,42,.25)}
.cal-help-tip[hidden]{display:none}
/* Release .425: Blasen am Kalender-Kopf unter dem Feld (oben schnitt der Rand sie ab). */
.cal-help-tip.is-below{transform:translate(-50%,8px)}

/* Release .428 (Sasan 57. Chat: Rückflugpreise im Flug + Hotel-Kalender – Vorschau ?vorschau=pkrueck): im Kopf neben „Aufenthalt n Nächte“
   die Summe „Flug Hin + Rück“, durch einen feinen Strich getrennt; am Handy eine eigene Zeile darunter. */
.pk-head .cal-head-total+.pk-sum{margin-left:0;padding-left:12px;border-left:1px solid #d5dde8}
@media(max-width:560px){.pk-head .cal-head-total+.pk-sum{padding-left:8px;border-left:0}}

/* Release .493 (Sasan 01.10., 75./76. Chat): PC-Suchmaske auf der Ergebnisseite nach Vorlage „01 · Optionen oben“ (Entwurf .runtime/w70).
   Oben Hin- und Rückflug · Gepäckstücke · Nur Direktflüge, darunter Von ⇄ Nach · Datum · Reisende · Suchen mit Symbolen. Ortsnamen voll ausgeschrieben (Name .bxx-cn + Code .bxx-cc aus search.js render()).
   Sasans Entscheidung 76. Chat: auf schmalen PCs (1101–1535 px) „A · Orte eigene Reihe“ – Von ⇄ Nach über die ganze Breite, darunter Datum · Reisende · Suchen.
   Ab 1536 px eine Zeile; passt ein Name dort nicht, setzt search.js .bxx-sm-2r (dann auch zwei Reihen). iPad (bxx-tm): tablet-mobile.js macht alle Breiten-Abfragen zu 430 px – dieser Block wirkt dort nicht. iPhone unverändert. */
.bxx-sm-ico,.bxx-tv-b{display:none}
@media (min-width:1101px){
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi){display:grid;grid-template-columns:minmax(0,1fr);position:relative;isolation:isolate;background:none;box-shadow:none;border:0;padding:0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)::before{content:"";grid-row:1/3;grid-column:1;background:#fff;border-radius:14px;box-shadow:0 8px 28px rgba(16,34,64,.13),0 1px 3px rgba(16,34,64,.08);z-index:-1}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi) .bxx-sm-ico{display:block;position:absolute;left:0;top:50%;transform:translateY(-50%);width:22px;height:22px;color:#0b1f44;pointer-events:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi) .bxx-sm-ico svg{display:block;width:100%;height:100%}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options{grid-row:1;grid-column:1;display:flex;align-items:center;gap:0;margin:0 22px;padding:12px 2px 11px;border-bottom:1px solid #e6ebf2;background:none;min-height:0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options select[name=tripMode]{appearance:none;-webkit-appearance:none;border:0;background:transparent;font:500 15px/1.4 "Segoe UI",Arial,sans-serif;color:#0b1f44;padding:4px 24px 4px 0;margin:0;height:auto;width:auto;cursor:pointer;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi) :is(.search-bags,.search-travelers)>.search-popover-trigger::after{content:"";width:7px;height:7px;border:solid #0b1f44;border-width:0 2px 2px 0;transform:translateY(-3px) rotate(45deg);margin-left:12px;flex:none;pointer-events:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options>.bxx-sm-trip{position:static;transform:none;margin-right:10px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options>.bxx-sm-chev{position:static;width:8px;height:8px;border:solid #0b1f44;border-width:0 2px 2px 0;transform:translateY(-3px) rotate(45deg);margin:0 44px 0 -18px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options>.search-bags{position:relative;padding-left:32px;margin-right:44px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options>.search-bags>.search-popover-trigger{display:flex;align-items:center;border:0;background:transparent;font:500 15px/1.4 "Segoe UI",Arial,sans-serif;color:#0b1f44;padding:4px 2px;min-height:0;height:auto;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options>label.search-control-label{display:flex;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:12px;margin:0;font:500 15px/1.4 "Segoe UI",Arial,sans-serif;color:#0b1f44;cursor:pointer}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-options>label.search-control-label input{width:20px;height:20px;margin:0;accent-color:#1a6ee0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route{grid-row:2;grid-column:1;display:flex;align-items:center;gap:0;background:none;box-shadow:none;border-radius:0;padding:12px 12px 12px 18px;margin:0;min-height:0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field{flex:1 1 auto;min-width:0;height:52px;padding:0 4px 0 30px;border:0;background:none;box-shadow:none;display:flex;align-items:center;position:relative}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field~.airport-field{padding-left:44px;border-left:1px solid #e3e8ef;border-radius:0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field~.airport-field>.bxx-sm-ico{left:14px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field .airport-chips{min-width:0;flex:0 1 auto;gap:6px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field .airport-chip{display:flex;align-items:baseline;min-width:0;max-width:100%;position:relative;background:none;border:0;padding:0;font:700 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field .airport-chip-name{display:flex;min-width:0;overflow:visible;white-space:nowrap;text-overflow:clip}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field .bxx-cn{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field .bxx-cc{flex:none;white-space:pre}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field .airport-remove{display:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field>.airport-entry{font:700 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44;border:0;background:none;box-shadow:none;outline:0;min-width:24px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field.has-airports>.airport-entry{flex:1 1 0;width:0;min-width:0;padding:0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field>.airport-entry::placeholder{color:#6b7a90;font-weight:600}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-swap{flex:none;width:40px;height:40px;margin:0 12px 0 4px;border-radius:50%;border:1px solid #dfe5ec;background:#fff;color:#0b1f44;display:grid;place-items:center;padding:0;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>:is(.search-dates,.search-travelers){position:relative;flex:none;min-width:0;height:52px;border-left:1px solid #e3e8ef;padding-left:14px;display:flex;align-items:center;background:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers{border-right:1px solid #e3e8ef;padding-right:4px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>:is(.search-dates,.search-travelers)>.bxx-sm-ico{left:14px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>:is(.search-dates,.search-travelers)>.search-popover-trigger{width:100%;height:100%;display:flex;align-items:center;justify-content:flex-start;border:0;background:none;box-shadow:none;border-radius:0;padding:0 8px 0 34px;font:600 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44;text-align:left;white-space:nowrap}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers>.search-popover-trigger{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;justify-content:start;align-content:center;column-gap:0;row-gap:1px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers>.search-popover-trigger>.bxx-tv-l1{grid-row:1;grid-column:1;font:700 15px/1.25 "Segoe UI",Arial,sans-serif}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers>.search-popover-trigger .bxx-tv-b{display:inline}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers>.search-popover-trigger>.bxx-tv-c{grid-row:2;grid-column:1;font:400 14px/1.25 "Segoe UI",Arial,sans-serif;color:#6b7a90}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers>.search-popover-trigger::after{grid-row:1;grid-column:2;align-self:center;margin-left:14px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-button{flex:none;height:52px;min-width:128px;margin-left:12px;padding:0 20px;border-radius:10px;background:#1a6ee0;color:#fff;font:700 17px/1 "Segoe UI",Arial,sans-serif;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-button:hover{background:#155ec4}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-button>.bxx-sm-ico{position:static;transform:none;color:#fff;width:22px;height:22px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-search-tail{grid-row:3;grid-column:1;padding:12px 0 0;margin:0;background:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field .airport-chip[data-tip]::after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 14px);z-index:40;width:max-content;max-width:300px;padding:7px 11px;border-radius:8px;background:#0c1f44;color:#fff;font:600 13px/1.35 "Segoe UI",Arial,sans-serif;white-space:normal;text-align:left;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field:not(:focus-within) .airport-chip[data-tip]:hover::after{opacity:1;visibility:visible}
}
@media (min-width:1101px) and (max-width:1535px){
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route{flex-wrap:wrap;row-gap:0;padding-top:6px;padding-bottom:10px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field{order:1}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-swap{order:2}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field~.airport-field{order:3}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route::before{content:"";order:4;flex:0 0 100%;height:0;border-top:1px solid #e6ebf2;margin:6px -12px 8px -18px;box-sizing:content-box;padding-right:30px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates{order:5;flex:1 1 auto;border-left:0;padding-left:0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates>.bxx-sm-ico{left:0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates>.search-popover-trigger{padding-left:30px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers{order:6}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-button{order:7}
}
@media (min-width:1536px){
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route{flex-wrap:wrap;row-gap:0;padding-top:6px;padding-bottom:10px}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field{order:1}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.airport-swap{order:2}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field~.airport-field{order:3}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route::before{content:"";order:4;flex:0 0 100%;height:0;border-top:1px solid #e6ebf2;margin:6px -12px 8px -18px;box-sizing:content-box;padding-right:30px}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates{order:5;flex:1 1 auto;border-left:0;padding-left:0}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates>.bxx-sm-ico{left:0}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates>.search-popover-trigger{padding-left:30px}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers{order:6}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.search-button{order:7}
}

/* Release .494 (Sasan 01.10., 76. Chat): Reiseart am PC als eigenes Menü (search.js Block „Release .494“) statt der Windows-Liste, Symbol je Reiseart,
   kein oranger Rahmen beim Anklicken der Reiseart (nur Tastatur: .bxx-sm-kb). Gilt ab 1101 px auch bei Multi-Stopp; iPad (bxx-tm, Breiten-Abfragen = 430 px) und iPhone unverändert. */
.bxx-sm-menu{display:none}
@media (min-width:1101px){
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search)>.compact-options{position:relative}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search)>.compact-options select[name=tripMode]:focus{outline:none!important;box-shadow:none!important}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-kb:not(.ticket-search)>.compact-options select[name=tripMode]:focus-visible{outline:2px solid #1a6ee0!important;outline-offset:4px;border-radius:6px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-menu{display:grid;gap:2px;position:absolute;left:0;top:calc(100% + 6px);z-index:60;min-width:250px;padding:8px;background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(25,32,36,.16),0 1px 3px rgba(16,34,64,.08)}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-menu[hidden]{display:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt{display:flex;align-items:center;gap:12px;width:100%;min-height:0;margin:0;border:0;background:none;box-shadow:none;border-radius:8px;padding:10px 12px;font:500 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44;text-align:left;cursor:pointer}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt:hover,html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt:focus{background:#eef3fb;outline:none}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt[aria-selected=true]{font-weight:700}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt :is(.bxx-sm-oi,.bxx-sm-ok){display:block;flex:none;width:20px;height:20px}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt svg{display:block;width:100%;height:100%}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt .bxx-sm-ok{margin-left:auto;color:#1a6ee0;visibility:hidden}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search) .bxx-sm-opt[aria-selected=true] .bxx-sm-ok{visibility:visible}
}

/* Release .495 (Sasan 01.10., 76. Chat): Multi-Stopp in der Maske gewählt → Balkenteil gleitet weg (search.js Block „Release .495“), Einblenden-Knopf aus. Alle Geräte. */
section.fl-pb.bxx-mc-off,.fl-pb-reopen.bxx-mc-hide{display:none!important}

/* Release .496 (Sasan 01.10., 76. Chat: „Economy bündig … gleich auch hier … damit Ästhetik bleibt“): zwei Reihen (1101–1535 px bzw. .bxx-sm-2r) – Von und Nach gleich breit,
   die zweite Reihe teilt sich an derselben Stelle: „Reisende“ beginnt genau an der Trennlinie vor „Nach“ (50 % + 20,5 px = Tausch-Knopf 56 px + Polster-Ausgleich). */
@media (min-width:1101px) and (max-width:1535px){
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field{flex:1 1 0}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates{flex:0 0 calc(50% + 20.5px)}
html body.has-flight-search form#kayak-search.compact-search:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers{flex:1 1 auto}
}
@media (min-width:1536px){
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.airport-field{flex:1 1 0}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.search-dates{flex:0 0 calc(50% + 20.5px)}
html body.has-flight-search form#kayak-search.compact-search.bxx-sm-2r:not(.ticket-search):not(.is-multi)>.compact-route>.search-travelers{flex:1 1 auto}
}

/* Release .497 (Sasan 01.10., 76./77. Chat, Screenshots Multi-Stopp): PC-Suchmaske bei Multi-Stopp im neuen Design wie „01 · Optionen oben“ – eine weiße Karte:
   oben Multi-Stopp · Gepäckstücke · Nur Direktflüge, darunter je Strecke eine Reihe Von ⇄ Nach · Datum · genau · × (Orte weiß wie bei Hin/Rück, Tausch-Knopf in jeder Strecke),
   „2 Economy“ in der 1. Strecke genau in der Spalte von „genau“ (gleiche linke Textkante), unten Flug hinzufügen · Alles löschen und „Suchen“ unter genau/×.
   search.js Block „Release .497“ hängt Suchen + Flug hinzufügen/Alles löschen in .bxx-mc-foot um (zurück, sobald nicht Multi-Stopp oder unter 1101 px). Ab 1101 px, nicht iPad (bxx-tm, Breiten-Abfragen = 430 px), iPhone unverändert. */
html body form#kayak-search .compact-extra-leg>:is(.bxx-leg-swap,.bxx-mc-chev){display:none}
@media (min-width:1101px){
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search){display:grid;grid-template-columns:minmax(0,1fr);position:relative;isolation:isolate;background:none;box-shadow:none;border:0;padding:0}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)::before{content:"";grid-row:1/5;grid-column:1;background:#fff;border-radius:14px;box-shadow:0 8px 28px rgba(16,34,64,.13),0 1px 3px rgba(16,34,64,.08);z-index:-1}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .bxx-sm-ico{display:block;position:absolute;left:0;top:50%;transform:translateY(-50%);width:22px;height:22px;color:#0b1f44;pointer-events:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .bxx-sm-ico svg{display:block;width:100%;height:100%}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options{grid-row:1;grid-column:1;display:flex;align-items:center;gap:0;margin:0 22px;padding:12px 2px 11px;border-bottom:1px solid #e6ebf2;background:none;min-height:0}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options select[name=tripMode]{appearance:none;-webkit-appearance:none;border:0;background:transparent;font:500 15px/1.4 "Segoe UI",Arial,sans-serif;color:#0b1f44;padding:4px 24px 4px 0;margin:0;height:auto;width:auto;cursor:pointer;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options>.bxx-sm-trip{position:static;transform:none;margin-right:10px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options>.bxx-sm-chev{position:static;width:8px;height:8px;border:solid #0b1f44;border-width:0 2px 2px 0;transform:translateY(-3px) rotate(45deg);margin:0 44px 0 -18px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options>.search-bags{position:relative;padding-left:32px;margin-right:44px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options>.search-bags>.search-popover-trigger{display:flex;align-items:center;border:0;background:transparent;font:500 15px/1.4 "Segoe UI",Arial,sans-serif;color:#0b1f44;padding:4px 2px;min-height:0;height:auto;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.search-bags,.search-travelers)>.search-popover-trigger::after{content:"";width:7px;height:7px;border:solid #0b1f44;border-width:0 2px 2px 0;transform:translateY(-3px) rotate(45deg);margin-left:12px;flex:none;pointer-events:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options>label.search-control-label{display:flex;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:12px;margin:0;font:500 15px/1.4 "Segoe UI",Arial,sans-serif;color:#0b1f44;cursor:pointer}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-options>label.search-control-label input{width:20px;height:20px;margin:0;accent-color:#1a6ee0}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-route{grid-row:2}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-extra-legs{grid-row:3;grid-column:1;display:block;margin:0;padding:0;background:none;box-shadow:none;border:0;border-radius:0}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg,.bxx-mc-foot){grid-column:1;display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr) 136px 144px 40px;align-items:center;column-gap:0;row-gap:0;margin:0 18px 0 22px;padding:6px 0;background:none;box-shadow:none;border:0;border-radius:0;min-height:0;width:auto}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg{border-top:1px solid #e6ebf2}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field{grid-column:auto;min-width:0;width:auto;height:52px;margin:0;padding:0 4px 0 30px;border:0;border-radius:0;background:none;box-shadow:none;display:flex;align-items:center;position:relative}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field .airport-chips{min-width:0;flex:0 1 auto;gap:6px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field .airport-chip{display:flex;align-items:baseline;min-width:0;max-width:100%;position:relative;background:none;border:0;padding:0;font:700 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field .airport-chip-name{display:flex;min-width:0;overflow:visible;white-space:nowrap;text-overflow:clip}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field .bxx-cn{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field .bxx-cc{flex:none;white-space:pre}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field .airport-remove{display:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field>.airport-entry{font:700 16px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44;border:0;background:none;box-shadow:none;outline:0;min-width:24px;height:auto;padding:0}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field.has-airports>.airport-entry{flex:1 1 0;width:0;min-width:0;padding:0}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field>.airport-entry::placeholder{color:#6b7a90;font-weight:600}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field .airport-chip[data-tip]::after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 14px);z-index:40;width:max-content;max-width:300px;padding:7px 11px;border-radius:8px;background:#0c1f44;color:#fff;font:600 13px/1.35 "Segoe UI",Arial,sans-serif;white-space:normal;text-align:left;box-shadow:0 6px 18px rgba(12,31,68,.22);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field:not(:focus-within) .airport-chip[data-tip]:hover::after{opacity:1;visibility:visible}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-swap{display:grid;grid-row:1;grid-column:2;justify-self:center;align-self:center;width:40px;height:40px;margin:0;border-radius:50%;border:1px solid #dfe5ec;background:#fff;color:#0b1f44;place-items:center;padding:0;box-shadow:none;cursor:pointer}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-swap:hover{background:#eef3fb}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>label.search-control-label{position:relative;display:flex;align-items:center;min-width:0;height:52px;margin:0;padding:0;border:0;border-left:1px solid #e3e8ef;border-radius:0;background:none;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>label.search-control-label>.bxx-sm-ico{left:14px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>label.search-control-label>input{width:100%;min-width:0;height:44px;margin:0;border:0;border-radius:0;background:none;box-shadow:none;outline-offset:-2px;padding:0 6px 0 44px;font:600 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg>select{width:100%;min-width:0;height:52px;margin:0;border:0;border-left:1px solid #e3e8ef;border-radius:0;box-shadow:none;appearance:none;-webkit-appearance:none;background:transparent;padding:0 34px 0 16px;font:500 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44;cursor:pointer}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-route>.search-travelers{position:relative;min-width:0;height:52px;margin:0;padding:0;border:0;border-left:1px solid #e3e8ef;display:flex;align-items:center;background:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-route>.search-travelers>.bxx-sm-ico{display:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-route>.search-travelers>.search-popover-trigger{width:100%;height:100%;display:flex;align-items:center;justify-content:flex-start;border:0;background:none;box-shadow:none;border-radius:0;padding:0 8px 0 16px;font:600 15px/1.3 "Segoe UI",Arial,sans-serif;color:#0b1f44;text-align:left;white-space:nowrap}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg>.remove-flight{justify-self:center;width:34px;height:34px;margin:0;padding:0;border:0;border-radius:50%;background:none;box-shadow:none;color:#6b7a90;font:400 22px/1 "Segoe UI",Arial,sans-serif;display:grid;place-items:center;cursor:pointer}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg>.remove-flight:hover{background:#eef3fb;color:#0b1f44}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot{grid-row:4;border-top:1px solid #e6ebf2;padding:10px 0 12px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot>.bxx-mc-acts{grid-column:1/5;display:flex;align-items:center;gap:28px;min-width:0}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot :is(.add-flight,.clear-flights){display:inline-flex;align-items:center;gap:8px;margin:0;padding:8px 0;border:0;background:none;box-shadow:none;min-height:0;height:auto;font:600 15px/1.3 "Segoe UI",Arial,sans-serif;color:#1a6ee0;cursor:pointer}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot .add-flight::before{content:"+";font:600 22px/1 "Segoe UI",Arial,sans-serif;margin-top:-2px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot .clear-flights{color:#6b7a90}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot :is(.add-flight,.clear-flights):hover{text-decoration:underline}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot .add-flight:disabled{opacity:.45;cursor:default;text-decoration:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot>.search-button{grid-column:5/7;justify-self:stretch;height:48px;min-width:0;margin:0;padding:0 20px;border:0;border-radius:10px;background:#1a6ee0;color:#fff;font:700 17px/1 "Segoe UI",Arial,sans-serif;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot>.search-button:hover{background:#155ec4}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.bxx-mc-foot>.search-button>.bxx-sm-ico{position:static;transform:none;color:#fff;width:22px;height:22px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-search-tail{grid-row:5;grid-column:1;padding:12px 0 0;margin:0;background:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg{position:relative}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>.airport-field:first-child{grid-row:1;grid-column:1}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-route>.airport-field:nth-child(3),html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg>.airport-field:nth-child(2){grid-row:1;grid-column:3}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>label.search-control-label{grid-row:1;grid-column:4}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route>.search-travelers,.compact-extra-leg>select){grid-row:1;grid-column:5}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg>.remove-flight{grid-row:1;grid-column:6}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) .compact-extra-leg>.bxx-mc-chev{display:block;position:absolute;right:58px;top:50%;width:8px;height:8px;border:solid #0b1f44;border-width:0 2px 2px 0;transform:translateY(-70%) rotate(45deg);pointer-events:none}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search)>.compact-route>.search-travelers>.search-popover-trigger::after{margin-left:auto;margin-right:18px}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>label.search-control-label>input{position:static}
html body.has-flight-search form#kayak-search.compact-search.is-multi:not(.ticket-search) :is(.compact-route,.compact-extra-leg)>label.search-control-label>input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;margin:0;padding:0;opacity:0;cursor:pointer}
}

/* Release .501 (Sasan 01.10., 77. Chat: Datum „wie bei Flüge“ – Flug + Hotel am iPhone war gekürzt „Fr., 2. O…“; Entscheidung „Kalender-Symbol kleiner“):
   nur iPhone (weder iPad bxx-tm noch PC bxx-dk), Datumsfeld Flug + Hotel; Release .502: auch Hotels und Mietwagen (bei 360 px gekürzt) – Symbol 18 px, Abstand 8 px, Innenrand 8 px; Schrift bleibt 16 px. */
html:not(.bxx-tm):not(.bxx-dk) body form:is(#kayak-package-search,#kayak-hotel-search,#kayak-car-search) .hotel-field.hotel-field-dates>span{padding-left:8px!important;padding-right:8px!important;gap:8px!important}
html:not(.bxx-tm):not(.bxx-dk) body form:is(#kayak-package-search,#kayak-hotel-search,#kayak-car-search) .hotel-field.hotel-field-dates .hotel-field-icon,html:not(.bxx-tm):not(.bxx-dk) body form:is(#kayak-package-search,#kayak-hotel-search,#kayak-car-search) .hotel-field.hotel-field-dates .hotel-field-icon svg{width:18px!important;height:18px!important;flex:none}

/* Release .504 (Sasan 01.10., 78. Chat, Fragebogen 22:2x „alle gleich, keine Farbspiele“): alle Masken gleiche Farben auf PC, iPad, iPad mini, iPhone –
   Felder weiß mit dünnem Rahmen #e4eaf2 wie Flug + Hotel, Suchen-Knopf Hotels/Mietwagen Orange #fd6318 wie Flug + Hotel („Flüge finden“ bleibt #d84d32);
   Flüge-Startseite am PC: Felder weiß statt grau. Keine Breiten-Abfrage; Auswahlseite (.is-picker-open) und Fokus-Rahmen unverändert. */
html body form:is(#kayak-hotel-search,#kayak-car-search) :is(.airport-field,.search-popover>.search-popover-trigger):not(.is-picker-open){background:#fff!important;border-radius:12px!important}
html body form:is(#kayak-hotel-search,#kayak-car-search) :is(.airport-field,.search-popover>.search-popover-trigger):not(.is-picker-open):not(:focus-within):not(:focus){border-color:#e4eaf2!important}
html body form:is(#kayak-hotel-search,#kayak-car-search) .search-button{background:#fd6318!important;border-color:#fd6318!important;color:#fff!important;border-radius:12px!important}
html body:has(.home-mode-tabs) form#kayak-search :is(.compact-route>.airport-field,.compact-route>.search-dates>.search-popover-trigger):not(.is-picker-open){background:#fff!important}
html body:has(.home-mode-tabs) form#kayak-search :is(.compact-route>.airport-field,.compact-route>.search-dates>.search-popover-trigger):not(.is-picker-open):not(:focus-within):not(:focus){border-color:#e4eaf2!important}
/* Release .507 (Sasan 01.10., 79. Chat: Mietwagen-Uhrzeit „wie KAYAK … über den Kalender“): unten im Mietwagen-Kalender je Spalte
   Beschriftung, Datum und darunter die Uhrzeit mit „›“ (Auswahl der halben Stunden aus der KAYAK-API, 12:00 = „Mittags“). Ersetzt die
   Zeile „Abholzeit/Rückgabezeit“. Auf allen Geräten gleich – keine Breiten-Abfrage. */
form#kayak-car-search .calendar-inputs.car-when{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:14px 0 0;padding:12px 0 0;border-top:1px solid #e4eaf2}
form#kayak-car-search .car-when .car-when-cell{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px;min-width:0;margin:0;padding:2px 14px}
form#kayak-car-search .car-when .car-when-cell:first-child{padding-left:2px}
form#kayak-car-search .car-when .car-when-cell+.car-when-cell{border-left:1px solid #e4eaf2}
form#kayak-car-search .car-when .car-when-label{color:#54647b;font-size:12px;font-weight:600;line-height:1.2}
form#kayak-car-search .car-when .calendar-choice{appearance:none;-webkit-appearance:none;display:block;max-width:100%;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#0d1b2e;font-family:inherit;font-size:16px;font-weight:800;line-height:1.25;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
form#kayak-car-search .car-when .calendar-choice[aria-pressed=true]{color:#0755b7}
form#kayak-car-search .car-when .car-when-time{position:relative;display:inline-flex;align-items:center;gap:7px;max-width:100%;margin:-5px 0 -7px;padding:5px 10px 7px 0;color:#0d1b2e;font-size:16px;font-weight:600;line-height:1.3;cursor:pointer}
form#kayak-car-search .car-when .car-when-time::after{content:"›";color:#54647b;font-size:21px;font-weight:600;line-height:1;transform:translateY(-1px)}
form#kayak-car-search .car-when .car-when-time select{appearance:none;-webkit-appearance:none;position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;opacity:0;font-size:16px;cursor:pointer}
form#kayak-car-search .car-when .car-when-time:has(select:focus-visible){outline:2px solid #0755b7;outline-offset:3px;border-radius:4px}
/* Release .528 (02.10.2026): ⓘ „Erklärung der Sortierung“ an den Flug-Reitern (§ 5b UWG, Sasans Ja aus Chat 85) – absolut in der Ecke, ändert das Raster nicht; am Touch-Layout (≤ 1100 px) stattdessen im Sortier-Blatt (app.js) */
.flight-sort-wrap{position:relative}
.flight-sort-info{position:absolute;top:5px;right:5px;z-index:3;display:inline-grid;place-items:center;width:20px;height:20px;margin:0;padding:0;color:#54647b;cursor:help}
.flight-sort-info .hi{width:16px;height:16px}
.flight-sort-info::after{content:attr(data-tip);position:absolute;right:0;top:calc(100% + 6px);z-index:600;width:min(320px,calc(100vw - 40px));padding:10px 12px;border-radius:10px;background:#12233f;color:#fff;font-size:12px;font-weight:400;line-height:1.4;text-align:left;white-space:normal;box-shadow:0 8px 24px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .15s}
.flight-sort-info:hover::after,.flight-sort-info:focus::after{opacity:1}
.flight-sort-info:focus{outline:none}.flight-sort-info:focus-visible{outline:2px solid #0755b7;outline-offset:2px;border-radius:4px}
.mobile-sort-why>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer}.mobile-sort-why>summary::-webkit-details-marker{display:none}.mobile-sort-why .hi{width:16px;height:16px;flex:none;color:#54647b}
.mobile-sort-why>p{margin:0;padding:0 12px 12px 36px;font-size:13px;line-height:1.45;color:#54647b}
@media(max-width:1100px){.flight-sort-info{display:none}}
/* Release .561 (Sasan A29 Teil 2): Gruppenreise – Knopf „Für die Gruppe merken (n ×)“ an jedem Flug (Karte .flight-booking und Detail-Fenster
   .fk-pane-foot), Optik wie der dunkle Suchen-Knopf im Chat (A27: #1b2431, weiße Schrift, oranger runder Abschluss mit Pfeil). Nur bei ?gruppe=. */
/* Release .568 (Sasan A30): Gruppensuche – Sprechblase des Koffers oben im Detail-Fenster (im Fluss, verdeckt nichts), zieht weich auf;
   „Ja, merken“ dunkel wie die übrigen Knöpfe, „Nein, danke“ hell. Koffer-Figur aus frage-begleiter.js (blinzelt über .kb-eye). */
.konto-gruppe-blase{display:flex;align-items:flex-end;justify-content:flex-end;gap:6px;padding:12px 14px 4px;opacity:0;transform:translateY(-6px) scale(.96);transform-origin:right top;transition:opacity .35s ease,transform .5s cubic-bezier(.22,1.2,.36,1)}
.konto-gruppe-blase.is-on{opacity:1;transform:none}
.konto-gruppe-blase-box{max-width:min(290px,calc(100% - 56px));padding:10px 12px;border:1px solid #dce5ee;border-radius:14px 14px 4px 14px;background:#fff;box-shadow:0 8px 24px rgba(8,27,73,.14);color:#12233f;font:600 14px/1.35 "Segoe UI",Arial,sans-serif}
.konto-gruppe-blase-box p{margin:0 0 8px}
.konto-gruppe-blase-row{display:flex;align-items:center;gap:8px}
/* Nachtrag A30: runde Symbol-Knöpfe – grüner Haken (Ja, merken), rotes Kreuz (Nein, danke), HTML-Tooltip; Mikro-Symbol (frage-mikro.css .kf-mic) kleiner daneben */
.konto-gruppe-ja,.konto-gruppe-nein{position:relative;display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;color:#fff;cursor:pointer}
.konto-gruppe-ja{background:#1f8a4c}
.konto-gruppe-ja:hover{background:#18733f}
.konto-gruppe-nein{background:#d93025}
.konto-gruppe-nein:hover{background:#b8261d}
.konto-gruppe-ja svg,.konto-gruppe-nein svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.konto-gruppe-blase-row button:focus-visible{outline:3px solid #f28b29;outline-offset:2px}
.konto-gruppe-tip{position:absolute;bottom:calc(100% + 6px);left:50%;z-index:2;padding:5px 9px;border-radius:7px;background:#12233f;color:#fff;font:600 12px/1.3 "Segoe UI",Arial,sans-serif;white-space:nowrap;opacity:0;visibility:hidden;transform:translate(-50%,3px);transition:opacity .15s,transform .15s,visibility 0s .15s;pointer-events:none}
.konto-gruppe-ja:hover .konto-gruppe-tip,.konto-gruppe-ja:focus-visible .konto-gruppe-tip,.konto-gruppe-nein:hover .konto-gruppe-tip,.konto-gruppe-nein:focus-visible .konto-gruppe-tip{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .15s,transform .15s}
.konto-gruppe-blase-row .kf-mic.konto-gruppe-mic{width:32px;height:32px;border-width:1.5px}
.konto-gruppe-blase-row .kf-mic.konto-gruppe-mic svg{width:16px;height:16px}
.konto-gruppe-hinweis{margin:8px 0 0!important;color:#54647b;font-size:12.5px;font-weight:500}
.konto-gruppe-koffer.is-hoert{border-radius:50%;box-shadow:0 0 0 calc(2px + var(--kf-mic-level,0) * 9px) rgba(217,48,37,.28);transition:box-shadow .08s linear}
.konto-gruppe-koffer{flex:none;width:44px;height:44px}
.konto-gruppe-koffer svg{display:block;width:44px;height:44px}
@media (prefers-reduced-motion:reduce){.konto-gruppe-blase{transition:none}}
/* Release .570 (Sasan A33 + Änderung): „Für die Gruppe merken (n ×)“ nur als kleines graues Herz (wie auf den Karten), dünner Rand, linksbündig,
   HTML-Tooltip (.konto-gruppe-tip, links ausgerichtet); nur im Inhalt (Karte/Detail-Fenster), nicht mehr im festen Preis-Bereich unten. */
.konto-gruppe-merken{position:relative;display:inline-grid;place-items:center;align-self:flex-start;width:34px;height:34px;margin:8px 0 0;padding:0;border:1px solid #dce5ee;border-radius:50%;background:transparent;color:#7a889b;cursor:pointer}
.konto-gruppe-merken svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round}
.konto-gruppe-merken:hover{border-color:#b9c6d6;color:#12233f;background:#f8fafc}
.konto-gruppe-merken:focus-visible{outline:3px solid #f28b29;outline-offset:2px}
.konto-gruppe-merken .konto-gruppe-tip{left:0;transform:translate(0,3px)}
.konto-gruppe-merken:hover .konto-gruppe-tip,.konto-gruppe-merken:focus-visible .konto-gruppe-tip{opacity:1;visibility:visible;transform:none;transition:opacity .15s,transform .15s}
.konto-blase-weiter{display:block;margin:0;padding:0;border:0;background:none;color:#0755b7;font:600 14px/1.35 "Segoe UI",Arial,sans-serif;text-align:left;cursor:pointer}
.konto-blase-weiter:hover{text-decoration:underline}
.konto-blase-weiter:focus-visible{outline:3px solid #f28b29;outline-offset:2px;border-radius:4px}
/* Release .573 (Sasan F29 Punkt 4, PC): die Leaflet-Ebenen der Hotelkarte (z-index 400–1000) lagen über dem aufgeklappten Feld
   „Gäste und Zimmer“ (Suchmaske z-index 10, Panel 35). Die Karte bildet jetzt einen eigenen Stapel – Aufklapp-Felder liegen darüber. Kein Layout. */
.hotel-map{isolation:isolate}
/* Release .574 (Sasan A34-Nachtrag): Pille im Detail-Fenster wie die schwebende KI-Leiste der Startseite (.kf-float in frage.css: weißer
   Grund, Verlaufsrand rosa/orange, Stern, Text schreibt sich selbst) – unten über dem festen Preis-Bereich (bottom per JS), schiebt sich
   weich von unten herein und wieder heraus; wegwischbar (is-zieht = ohne Übergang dem Finger folgen). */
.konto-pille-wrap{position:absolute;left:16px;right:16px;z-index:5;display:flex;align-items:center;gap:10px;opacity:0;transform:translateY(24px);transition:opacity .3s ease,transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.konto-pille-wrap.is-on{opacity:1;transform:none;pointer-events:auto}
.konto-pille-wrap.is-zieht{transition:none}
.konto-pille{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:12px;min-height:56px;padding:10px 18px;border:2px solid transparent;border-radius:999px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#ff4fa3,#fd6318) border-box;box-shadow:0 8px 28px rgba(8,27,73,.18);color:#536d86;font:600 16px/1.3 "Segoe UI",Arial,sans-serif;text-align:left;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
.konto-pille.is-offen{border-radius:26px}
.konto-pille:focus-visible{outline:3px solid #f28b29;outline-offset:2px}
.konto-pille-stern{flex:none;width:20px;height:20px;fill:#12233f}
.konto-pille-inhalt{flex:1 1 auto;min-width:0}
.konto-pille-text{display:block;min-height:1.3em}
.konto-pille .konto-gruppe-blase-row{margin-top:8px}
.konto-pille .konto-gruppe-blase-row[hidden]{display:none}
.konto-pille .konto-gruppe-hinweis{margin:6px 0 0!important}
.konto-pille .konto-blase-weiter{font-size:15px}
.konto-pille-koffer{flex:none;width:48px;height:48px;padding:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.konto-pille-koffer svg{width:48px;height:48px}
.konto-pille-koffer:focus-visible{outline:3px solid #f28b29;outline-offset:2px;border-radius:50%}
@media (prefers-reduced-motion:reduce){.konto-pille-wrap{transition:none}}
@media (pointer:coarse){.konto-pille-wrap,.konto-pille-wrap button{touch-action:manipulation}}
/* Release .578 (Sasan A38): fünf unauffällige Umriss-Sterne unter der Frage der Pille; erscheinen weich nach dem Schreiben, beim Antippen
   füllen sich 1–n dezent (gedecktes Gold), danach „Danke!“ */
.konto-sterne{display:flex;gap:2px;margin:6px 0 0 -6px;opacity:0;transition:opacity .35s ease}
.konto-sterne.is-da{opacity:1}
.konto-stern{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:none;color:#9aa7b6;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.konto-stern svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;transition:fill .25s ease,color .25s ease}
.konto-stern.is-voll{color:#d9a93a}
.konto-stern.is-voll svg{fill:#f1d38a}
.konto-stern:disabled{cursor:default}
.konto-stern:focus-visible{outline:2px solid #f28b29;outline-offset:1px}
@media (hover:hover){.konto-sterne:not(:has(:disabled)) .konto-stern:hover{color:#6d7d90}}
@media (prefers-reduced-motion:reduce){.konto-sterne,.konto-stern svg{transition:none}}
/* Release .589 (Sasan A39): Preiskalender ruhig wie die Balken-Karte – Tage neutral (Preise bleiben stehen), nur EIN günstigster Tag hellgrün
   (wie .kf-zr-col.is-cheap) und höchstens EIN teuerster dezent rot umrandet; gewählter Zeitraum durchgehend in einem ruhigen Hellblau,
   Hin- und Rücktag dunkel (date-selected unverändert). Größen unverändert. */
html body .calendar-day.date-in-range{background:#e5efff;color:#123b68}
html body .calendar-day.date-in-range:hover{background:#d3e3fb}
html body .calendar-day.price-min:not(.date-selected){background:#cdeee0;color:#0d5c37}
html body .calendar-day.price-min:not(.date-selected):hover{background:#b1e1cc}
html body .calendar-day.price-max:not(.date-selected){box-shadow:inset 0 0 0 1.5px #e9a5ad}
.cal-lg-min i{background:#cdeee0}
.cal-lg-max i{background:#fff;box-shadow:0 0 0 1.5px #e9a5ad inset}
/* Release .590 (Sasan F39): Handy – Hotel/Flug + Hotel/Mietwagen-Ergebnisseite: Kopfzeile öffnet die Maske als Blatt über die ganze Seite
   (dialog.search-edit-dialog.bxx-blatt, konto.js) wie auf der Flug-Ergebnisseite; Felder wie die Maske der Startseite mobil: jedes Feld mit
   Rahmen, Hin-/Rückdatum nebeneinander in einem Feld (Trennlinie), volle Breite. */
html body .search-edit-dialog.bxx-blatt .compact-search{width:100%;max-width:none;margin:0;padding:0;border:0;box-shadow:none;background:none}
html body .search-edit-dialog.bxx-blatt .compact-search .compact-route{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important}
html body .search-edit-dialog.bxx-blatt .compact-search .compact-route>*{grid-column:1!important;grid-row:auto!important;width:100%!important;max-width:none!important;margin:0!important}
html body .search-edit-dialog.bxx-blatt .compact-search .compact-route>.search-popover{display:block!important}
html body .search-edit-dialog.bxx-blatt .compact-search .compact-route .hotel-field{width:100%!important;min-height:52px!important;height:auto!important;border:1px solid #e4eaf2!important;border-radius:10px!important;background:#fff!important}
html body .search-edit-dialog.bxx-blatt .compact-search .compact-route .hotel-field-dates{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;row-gap:0!important;min-height:52px!important;padding:0!important;align-items:center}
html body .search-edit-dialog.bxx-blatt .compact-search .compact-route .hotel-field-dates>span{display:flex;align-items:center;gap:10px;padding:6px 12px!important;min-width:0}
html body .search-edit-dialog.bxx-blatt .compact-search .compact-route .hotel-field-dates>span+span{border-left:1px solid #e4eaf2;padding-left:12px!important}
html body .search-edit-dialog.bxx-blatt .compact-search .hotel-field-dates .hotel-field-text small{display:none!important}
html body .search-edit-dialog.bxx-blatt .compact-search .hotel-form-main{width:100%!important;max-width:none!important;margin:0!important}
/* Release .593 (Sasan F40): Preise in den Tagen dezent grau, nur die günstigsten (Hinflug/Rückflug) grün; kein „Teuerster“ mehr; Hover-
   Vorschau als eigene dezente Fläche (date-preview) – der gewählte Zeitraum bleibt durchgehend hellblau; günstigster Tag auch im Zeitraum
   grün, als gewählter (dunkler) Tag mit grünem Ring. */
html body .calendar-day .pk-cal-price{color:#8392a6}
html body .calendar-day.date-selected .pk-cal-price{color:#fff}
html body .calendar-day.price-min .pk-cal-price{color:#0d6b40;font-weight:700;opacity:1}
html body .calendar-day.date-selected.price-min{outline:2px solid #2fb57a;outline-offset:-2px}
html body .calendar-day.date-selected.price-min .pk-cal-price{color:#fff}
html body .calendar-day.price-max:not(.date-selected){box-shadow:none}
html body .calendar-day.date-preview:not(.date-selected):not(.price-min){background:#f2f6fd;box-shadow:inset 0 0 0 1px #d3e2f8}
/* Release .596 (Sasan F44): Preis-Blase im Kalender in der obersten Reihe unter dem Tag statt darüber (bleibt im Fenster). */
.fl-cal .fl-cal-tip.is-below,.package-search .pk-cal-tip.is-below{transform:translate(-50%,6px)}
/* Release .597 (Sasan A42): Preisbalken der Ergebnisseite (fl-pb) klein im Flug-Kalender – gleiche Farben/Formen, niedrigere Säulen, kleinere Schrift. */
.cal-pb{--pb-bar:#d6dce6;--pb-bar-hi:#bcc6d6;--pb-min:#a3d9c2;--pb-sel:#2a9d80;--pb-ink:#16233f;--pb-mute:#66758c;--pb-green:#1f9a6c;--pb-top:28px;--pb-bh:38px;position:relative;margin:0 0 10px;padding:8px 10px 0;background:#fff;border:1px solid #e3e8f0;border-radius:12px;color:var(--pb-ink)}
.cal-pb[hidden]{display:none}
.cal-pb-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.cal-pb.is-one .cal-pb-panels{grid-template-columns:minmax(0,1fr)}
.cal-pb-panel{display:grid;grid-template-columns:16px minmax(0,1fr) 16px;column-gap:3px;min-width:0}
.cal-pb-panel[hidden]{display:none}
.cal-pb-panel+.cal-pb-panel{border-left:1px solid #e8edf3;padding-left:10px;margin-left:10px}
.cal-pb-kind{grid-column:2;grid-row:1;font-size:12.5px;font-weight:800;line-height:1.3;white-space:nowrap}
.cal-pb-plot{grid-column:2;grid-row:2;position:relative;min-width:0;padding-top:var(--pb-top)}
.cal-pb-arrow{grid-row:2;align-self:start;margin-top:calc(var(--pb-top) + var(--pb-bh) / 2 - 11px);display:inline-flex;align-items:center;justify-content:center;width:16px;height:22px;padding:0;border:0;border-radius:5px;background:none;color:var(--pb-ink);cursor:pointer;font-size:0;transition:background .15s}
.cal-pb-arrow::before{content:"";width:6px;height:6px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateX(2px) rotate(135deg)}
.cal-pb-arrow.is-next::before{transform:translateX(-2px) rotate(-45deg)}
.cal-pb-arrow.is-prev{grid-column:1}.cal-pb-arrow.is-next{grid-column:3}
.cal-pb-arrow:hover:not(:disabled){background:#eef3f8}
.cal-pb-arrow:disabled{opacity:.25;cursor:default}
.cal-pb-bars{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));align-items:end;height:var(--pb-bh)}
.cal-pb-col{display:flex;align-items:flex-end;justify-content:center;height:100%;min-width:0;padding:0 14%;margin:0;border:0;background:none;cursor:pointer;font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}
.cal-pb-col:disabled{cursor:default}
.cal-pb-col:focus-visible{outline:2px solid var(--pb-sel);outline-offset:1px;border-radius:3px}
.cal-pb-bar{display:block;width:100%;max-width:18px;height:calc(var(--h) * 100%);background:var(--pb-bar);border-radius:2px 2px 1px 1px;transform-origin:bottom;transition:background .18s}
.cal-pb-bars.is-grow .cal-pb-bar{animation:calPbUp .45s cubic-bezier(.2,.8,.25,1) both;animation-delay:calc(var(--i) * 10ms)}
.cal-pb-col.is-min .cal-pb-bar{background:var(--pb-min)}
.cal-pb-col.is-empty .cal-pb-bar{background:#edf1f6}
.cal-pb-col:hover:not(:disabled) .cal-pb-bar{background:var(--pb-bar-hi)}
.cal-pb-col.is-min:hover:not(:disabled) .cal-pb-bar{background:#8fd0b4}
.cal-pb-col.is-sel .cal-pb-bar,.cal-pb-col.is-sel:hover .cal-pb-bar{background:var(--pb-sel)}
.cal-pb-plot.is-wait .cal-pb-bar{background:#e8edf4;animation:calPbPulse 1s ease-in-out infinite alternate}
.cal-pb-bubble{position:absolute;top:0;left:0;width:0;height:20px;z-index:3;pointer-events:none;transition:left .25s cubic-bezier(.2,.8,.25,1),opacity .15s}
.cal-pb-bubble[hidden]{display:none}
.cal-pb-tag{position:absolute;top:0;left:0;transform:translateX(calc(-50% + var(--dx,0px)));display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 7px;border:1px solid #d9e0ea;border-radius:6px;background:#fff;color:var(--pb-ink);font-size:11.5px;font-weight:700;line-height:1;white-space:nowrap;box-shadow:0 2px 6px rgba(22,35,63,.1)}
.cal-pb-tag small{font-size:10px;font-weight:600;color:var(--pb-mute)}
.cal-pb-best{font-size:9.5px;font-weight:700;color:#0f5a44;background:#cdeee0;border-radius:999px;padding:2px 5px}
.cal-pb-line{position:absolute;left:-.75px;top:20px;width:1.5px;height:calc(var(--pb-top) - 20px + var(--pb-bh) * (1 - var(--h,1)));background:var(--pb-ink);transition:height .25s cubic-bezier(.2,.8,.25,1)}
.cal-pb-bubble.is-hover,.cal-pb-bubble.is-hover .cal-pb-line{transition:none}
.cal-pb-bubble.is-hover{z-index:4}
.cal-pb-plot.is-hovering .cal-pb-bubble:not(.is-hover){opacity:.25}
.cal-pb-cheap{position:absolute;left:0;top:calc(var(--pb-top) + var(--pb-bh) * (1 - var(--h,1)) - 19px);z-index:2;transform:translateX(calc(-50% + var(--dx,0px)));font-size:10.5px;font-weight:700;line-height:13px;color:var(--pb-green);white-space:nowrap;pointer-events:none}
.cal-pb-cheap::after{content:"";position:absolute;left:calc(50% - var(--dx,0px));top:14px;width:1.5px;height:5px;background:currentColor;transform:translateX(-50%)}
.cal-pb-cheap[hidden]{display:none}
.cal-pb-axis{position:relative;height:22px}
.cal-pb-day{position:absolute;top:6px;left:0;transform:translateX(-50%);font-size:10.5px;line-height:14px;color:#7b889c;white-space:nowrap}
.cal-pb-day::before{content:"";position:absolute;left:50%;top:-7px;width:1px;height:4px;background:#cbd4e1}
.cal-pb-day.is-sel{top:3px;padding:2px 7px;border-radius:999px;background:#d9f1e8;color:#0f2d27;font-size:11px;font-weight:700}
.cal-pb-day.is-sel::before{top:-4px;height:3px;background:var(--pb-sel)}
.cal-pb-none{position:absolute;left:0;right:0;top:calc(var(--pb-top) + 10px);z-index:2;margin:0;text-align:center;font-size:11.5px;font-weight:600;color:var(--pb-mute)}
.cal-pb-none[hidden]{display:none}
.cal-pb-foot{display:flex;align-items:center;gap:10px;margin:0 -10px;padding:6px 10px 7px;border-top:1px solid #e8edf3}
.cal-pb-dates{font-size:13px;font-weight:700;white-space:nowrap}
.cal-pb-div{flex:none;width:1px;height:16px;background:#d9e0ea}
.cal-pb-price{display:flex;align-items:baseline;gap:5px;flex:1;min-width:0;white-space:nowrap}
.cal-pb-total{font-size:14px;font-weight:800}
.cal-pb-total:empty{display:none}
.cal-pb-per{font-size:12px;font-weight:600}
.cal-pb-per[hidden]{display:none}
.cal-pb-note{margin-left:6px;font-size:11.5px;color:var(--pb-mute);overflow:hidden;text-overflow:ellipsis}
@keyframes calPbUp{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes calPbPulse{from{opacity:.5}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.cal-pb *{animation:none!important;transition:none!important}}
/* Release .601 (Sasan A43): Kalender-Blatt (Flug, Hotel, Flug + Hotel, Mietwagen) ohne Kopfzeile „Reisedaten“ + „Schließen“ – nur ein kleines, flaches X
   oben rechts in der Ecke der Schritt-Pillen, ohne eigene Zeile (Kopf 0 px hoch, bleibt beim Scrollen oben); Tippfläche 36 × 30 px, Zeichen 12 px. */
@media(max-width:1100px){
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading{position:sticky;top:14px;z-index:6;display:flex;justify-content:flex-end;height:0;min-height:0;margin:0;padding:0;border:0;background:none;overflow:visible}
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>strong{display:none}
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>.search-panel-close{position:relative;top:-14px;right:-12px;flex:none;width:36px;height:30px;min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:8px;background:none;color:#7b889c;font-size:0;line-height:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>.search-panel-close::before,dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>.search-panel-close::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.6px;border-radius:2px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>.search-panel-close::after{transform:translate(-50%,-50%) rotate(-45deg)}
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>.search-panel-close:focus{outline:none}
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>.search-panel-close:focus-visible{color:#12233f;outline:1.5px solid #9fb3cc;outline-offset:-3px}
}
@media(max-width:1100px) and (hover:hover){
 dialog.search-popover-panel:has(.calendar-months)>.search-panel-heading>.search-panel-close:hover{color:#12233f;background:#eef3f8}
}
/* Release .607 (Sasan A44): Flug-Kalender entrümpelt – Schritt-Pillen und Preisbalken als ZWEI Blöcke nebeneinander (Hinflug | Rückflug):
   Kopf = Symbol (Langform als HTML-Blase) + Datum + „genau ▾“, darunter die Balken des Blocks; aktiver Schritt = blauer Rahmen um den Block.
   Ohne Zahlen-Kreise, ohne zweite Überschrift, ohne Datum-Pille unter dem Balken, ohne Termin links in der Fußzeile. Nur Flug (.fl-cal). */
.fl-cal .cal-head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch;margin:0 0 6px;padding:0;background:none}
.fl-cal .cal-head.is-one{grid-template-columns:minmax(0,1fr)}
.fl-cal .cal-head .cal-step-line{display:none}
.fl-cal .cal-leg{--pb-bar:#d6dce6;--pb-bar-hi:#bcc6d6;--pb-min:#a3d9c2;--pb-sel:#2a9d80;--pb-ink:#16233f;--pb-mute:#66758c;--pb-green:#1f9a6c;--pb-top:28px;--pb-bh:38px;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;align-content:start;min-width:0;padding:3px 6px 2px;border:1.5px solid #e3e8f0;border-radius:12px;background:#fff;box-shadow:none}
.fl-cal .cal-leg.is-now{border-color:#0b57c9;box-shadow:0 1px 3px rgba(11,42,85,.12)}
.fl-cal .cal-leg-pick{display:flex;align-items:center;gap:7px;width:auto;padding:5px 4px 5px 3px}
.fl-cal .cal-leg-ico{display:inline-flex;flex:none;width:20px;height:20px;color:#5b6b82}
.fl-cal .cal-leg-ico svg{width:20px;height:20px}
.fl-cal .cal-leg.is-now .cal-leg-ico{color:#0b57c9}
.fl-cal .cal-leg-d{font-size:15px}
.fl-cal .cal-leg-flex{margin:0 0 0 2px;justify-self:start}
.fl-cal .cal-leg>.cal-pb-panel{grid-column:1/-1;margin-top:2px}
.fl-cal .cal-leg>.cal-pb-panel[hidden]{display:none}
.fl-cal .cal-head-total{grid-column:1/-1;flex-direction:row;justify-content:flex-end;align-items:baseline;gap:8px;margin:0;padding:0 6px}
.fl-cal .cal-pb{margin:0 0 6px;padding:0 4px;border:0;border-radius:0;background:none}
.fl-cal .cal-pb-foot{margin:0;padding:0 2px 2px;border-top:0}
@media(max-width:1100px){.fl-cal .cal-head{margin-top:14px}} /* .607 (A44): im Blatt Platz für das kleine X (A43) über dem Rückflug-Block */
/* Release .608 (Sasan Übergangsbetrieb): ohne Sandbox-Preise bleibt der Kalender reine Datumswahl – keine Preis-Hinweiszeile, keine
   Farb-Legende, keine Preisbalken/Fußzeile, keine Summe im Kopf (Flug und Flug + Hotel; Hotel/Mietwagen haben keine Preise). */
body[data-uebergang="1"] .fl-cal .calendar-price-note,body[data-uebergang="1"] .fl-cal .cal-legend,body[data-uebergang="1"] .fl-cal .cal-pb,body[data-uebergang="1"] .fl-cal .cal-head-total,
body[data-uebergang="1"] .package-search .package-price-note,body[data-uebergang="1"] .package-search .cal-legend,body[data-uebergang="1"] .package-search .cal-head-total{display:none!important}
/* Release .611 (Sasan F50): Preisbalken im Flug-Kalender mit dem Finger wischen (search.js, wie die Pfeile) – senkrecht scrollt die Seite weiter */
.fl-cal .cal-pb-plot{touch-action:pan-y}
