/* flugscout.de – reduziertes, neutrales Layout
   Palette: Zinc-Graustufen + eine Akzentfarbe (Blau) für primäre Aktionen.
   Abstände im 4/8px-Raster, Rahmen statt Schatten, keine externen Fonts. */
:root{
  --zinc-50:#fafafa;
  --zinc-100:#f4f4f5;
  --zinc-200:#e4e4e7;
  --zinc-300:#d4d4d8;
  --zinc-400:#a1a1aa;
  --zinc-500:#71717a;
  --zinc-600:#52525b;
  --zinc-700:#3f3f46;
  --zinc-800:#27272a;
  --zinc-900:#18181b;
  --zinc-950:#09090b;
  --accent:#2563eb;
  --accent-hover:#1d4ed8;
  --accent-soft:#eff6ff;
  --radius-sm:6px;
  --radius:8px;
  --radius-lg:12px;
  --ease:cubic-bezier(.16,1,.3,1);
  --font:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;overflow-x:clip;font-family:var(--font);font-size:16px;line-height:1.7;color:var(--zinc-700);background:#fff;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}
img{max-width:100%;height:auto}
a{color:var(--zinc-900);text-decoration:underline;text-decoration-color:var(--zinc-300);text-underline-offset:3px;transition:color .15s ease-out,text-decoration-color .15s ease-out}
a:hover{text-decoration-color:var(--zinc-900)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.wrap{width:min(1120px,100% - 48px);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-999px;top:8px;z-index:100;padding:8px 12px;border-radius:var(--radius);background:var(--zinc-900);color:#fff}
.skip-link:focus{left:8px}
.icon{width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--zinc-200)}
.header-inner{display:flex;align-items:center;gap:24px;height:64px}
.brand img{display:block;height:36px;width:auto}
.main-nav{display:flex;align-items:center;gap:16px;margin-left:auto}
.nav-list{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.nav-item{position:relative}
.nav-item>a,.sub-toggle{display:flex;align-items:center;gap:4px;height:36px;padding:0 12px;border:0;border-radius:var(--radius);background:none;font:500 14px/1 var(--font);color:var(--zinc-600);text-decoration:none;cursor:pointer;transition:color .15s ease-out,background-color .15s ease-out}
.sub-toggle .icon{width:14px;height:14px;color:var(--zinc-400);transition:transform .15s ease-out}
.nav-item>a:hover,.sub-toggle:hover,.has-sub.is-open>.sub-toggle{color:var(--zinc-900);background:var(--zinc-100)}
.nav-item.is-active>a,.nav-item.is-active>.sub-toggle{color:var(--zinc-900)}
.has-sub.is-open>.sub-toggle .icon{transform:rotate(180deg)}
.sub{position:absolute;top:calc(100% + 8px);left:0;min-width:224px;margin:0;padding:4px;list-style:none;background:#fff;border:1px solid var(--zinc-200);border-radius:var(--radius-lg);box-shadow:0 4px 12px rgba(9,9,11,.06);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease-out,transform .15s ease-out,visibility .15s}
.sub a{display:block;padding:8px 12px;border-radius:var(--radius-sm);font-size:14px;line-height:20px;color:var(--zinc-700);text-decoration:none}
.sub a:hover{background:var(--zinc-100);color:var(--zinc-900)}
@media (hover:hover) and (min-width:961px){.has-sub:hover .sub,.has-sub:focus-within .sub{opacity:1;visibility:visible;transform:none}}
.has-sub.is-open .sub{opacity:1;visibility:visible;transform:none}
.nav-phone{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border:1px solid var(--zinc-200);border-radius:var(--radius);font-size:14px;font-weight:500;color:var(--zinc-900);text-decoration:none;white-space:nowrap;transition:background-color .15s ease-out,border-color .15s ease-out}
.nav-phone:hover{background:var(--zinc-50);border-color:var(--zinc-300)}
.nav-phone .icon{color:var(--zinc-500)}
.nav-toggle{display:none;margin-left:auto;width:40px;height:40px;padding:0;border:1px solid var(--zinc-200);border-radius:var(--radius);background:#fff;color:var(--zinc-900);cursor:pointer}
.nav-toggle .icon{width:20px;height:20px;margin:auto;display:block}
.nav-toggle .icon-close{display:none}
.nav-open .nav-toggle .icon-menu{display:none}
.nav-open .nav-toggle .icon-close{display:block}

@media (max-width:960px){
  .nav-toggle{display:block}
  .main-nav{position:fixed;inset:64px 0 0 0;flex-direction:column;align-items:stretch;gap:16px;padding:16px 24px 32px;background:#fff;overflow:auto;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .15s ease-out,transform .15s ease-out,visibility .15s}
  .nav-open .main-nav{opacity:1;visibility:visible;transform:none}
  .nav-list{flex-direction:column;gap:0}
  .nav-item{border-bottom:1px solid var(--zinc-100)}
  .nav-item>a,.sub-toggle{width:100%;height:48px;padding:0 4px;justify-content:space-between;font-size:15px;color:var(--zinc-900)}
  .nav-item>a:hover,.sub-toggle:hover,.has-sub.is-open>.sub-toggle{background:none}
  .sub{position:static;display:none;min-width:0;margin:0 0 8px;padding:0;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none}
  .has-sub.is-open .sub{display:block}
  .sub a{padding:8px 4px;color:var(--zinc-600)}
  .nav-phone{justify-content:center;height:44px}
}

/* ---------- Hero ---------- */
.hero{background:var(--zinc-50);border-bottom:1px solid var(--zinc-200)}
.hero-inner{padding:56px 0 48px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:4px 10px;border:1px solid var(--zinc-200);border-radius:999px;background:#fff;font-size:12px;font-weight:500;line-height:16px;color:var(--zinc-600)}
.hero-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}
.hero-title{margin:0 0 12px;font-size:clamp(32px,4.4vw,48px);line-height:1.1;font-weight:600;letter-spacing:-.03em;color:var(--zinc-950)}
.hero-lead{margin:0 0 32px;max-width:560px;font-size:16px;line-height:1.6;color:var(--zinc-500)}
.hero-usp{display:flex;flex-wrap:wrap;gap:8px 24px;margin:24px 0 0;padding:0;list-style:none}
.hero-usp li{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--zinc-600)}
.hero-usp .icon-box{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--zinc-200);border-radius:6px;background:#fff;color:var(--zinc-900)}
.hero-usp .icon{width:14px;height:14px}

/* Suchmaske im Stil einer Such-Leiste (Kayak-Layout)
   Markup kommt von specials.de – nur per CSS umgeordnet. */
.hero-search{position:relative;color:var(--zinc-900);font-size:14px;line-height:1.4}
.hero-search.is-flight #suchbox,.hero-search.is-flight .searchformFlight{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.hero-search.is-flight .searchform-headline,.hero-search.is-flight .lang{display:none!important}
.hero-search.is-flight form{display:flex;flex-wrap:wrap;align-items:stretch;gap:4px;margin:0}
.hero-search.is-flight form::after{content:"";order:2;flex-basis:100%;height:8px}
.hero-search.is-flight .row-fluid-horizontalBox,.hero-search.is-flight #datepicker{display:contents!important}
.hero-search.is-flight .horizontalBox{position:relative;float:none!important;width:auto!important;min-width:0;margin:0!important;padding:0!important}
.hero-search.is-flight #depAptSuggestBox,.hero-search.is-flight #dstAptSuggestBox{position:absolute}
.hero-search.is-flight .suggestBoxFlight{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:100%;background:#fff;border-radius:var(--radius)}
.hero-search.is-flight .suggestBoxFlight:not(:empty){border:1px solid var(--zinc-200);box-shadow:0 8px 24px rgba(9,9,11,.08)}

/* Zeile 1: Optionen (Route, Reisende, Klasse) als kompakte Auswahl */
.hero-search.is-flight .horizontalBox:has(select){order:1;display:flex;align-items:center;gap:6px;height:36px;padding:0 4px 0 10px!important;border-radius:var(--radius);transition:background-color .15s ease-out}
.hero-search.is-flight .horizontalBox:has(select):hover{background:var(--zinc-200)}
.hero-search.is-flight .horizontalBox:has(#type){order:0}
.hero-search.is-flight .horizontalBox:has(select) label{margin:0;font-size:13px;font-weight:400;color:var(--zinc-500);white-space:nowrap}
.hero-search.is-flight .horizontalBox:has(select) .fontmin{display:none}
.hero-search.is-flight select{appearance:none;-webkit-appearance:none;height:36px;width:auto!important;max-width:none;margin:0;padding:0 22px 0 0!important;border:0!important;border-radius:0!important;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 4px center/14px!important;box-shadow:none!important;font:500 14px/36px var(--font)!important;color:var(--zinc-900)!important;cursor:pointer}
.hero-search.is-flight select:focus{outline:none}
.hero-search.is-flight .horizontalBox:has(select:focus-visible){box-shadow:0 0 0 2px var(--accent)}

/* Zeile 2: Von | Nach | Abflug | Rückflug | Suchen */
.hero-search.is-flight .horizontalBox:has(input[type=text]){order:3;flex:1 1 0;height:64px;background:#fff;border:1px solid var(--zinc-200);border-radius:var(--radius);transition:border-color .15s ease-out,box-shadow .15s ease-out}
.hero-search.is-flight .horizontalBox:has(#departureApt),.hero-search.is-flight .horizontalBox:has(#destinationApt){flex-grow:1.4}
.hero-search.is-flight .horizontalBox:has(input[type=text]):hover{border-color:var(--zinc-300)}
.hero-search.is-flight .horizontalBox:has(input[type=text]:focus){border-color:var(--zinc-900);box-shadow:0 0 0 1px var(--zinc-900)}
.hero-search.is-flight .horizontalBox:has(input[type=text]) label{position:absolute;top:11px;left:16px;margin:0;font-size:12px;font-weight:400;line-height:16px;color:var(--zinc-500);pointer-events:none}
.hero-search.is-flight .horizontalBox:has(input[type=text]) > div:not(.suggestBoxFlight){height:100%}
.hero-search.is-flight input[type=text]{display:block;width:100%!important;max-width:none;height:100%!important;margin:0!important;padding:26px 16px 10px!important;border:0!important;border-radius:var(--radius)!important;background:transparent!important;box-shadow:none!important;font:500 16px/24px var(--font)!important;color:var(--zinc-950)!important;outline:none}
.hero-search.is-flight input[type=text]::placeholder{color:var(--zinc-400)}
.hero-search.is-flight .horizontalBox:has(#from){margin-left:8px!important}

.hero-search.is-flight .horizontalBox.pull-right{order:4;flex:0 0 auto}
.hero-search.is-flight #flug-suchen{position:relative;display:grid;place-items:center;width:64px!important;height:64px!important;margin:0!important;padding:0!important;border:0!important;border-radius:var(--radius)!important;background:var(--accent)!important;background-image:none!important;box-shadow:none!important;text-shadow:none!important;font-size:0!important;color:#fff!important;cursor:pointer;transition:background-color .15s ease-out}
.hero-search.is-flight #flug-suchen::before{content:"";width:22px;height:22px;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat}
.hero-search.is-flight #flug-suchen:hover{background:var(--accent-hover)!important}

@media (max-width:960px){
  .hero-inner{padding:32px 0}
  .hero-lead{margin-bottom:24px}
  .hero-usp{display:none}
  .hero-search.is-flight .horizontalBox:has(#departureApt),.hero-search.is-flight .horizontalBox:has(#destinationApt){flex:1 1 100%}
  .hero-search.is-flight .horizontalBox:has(#from),.hero-search.is-flight .horizontalBox:has(#to){flex:1 1 40%;margin-left:0!important}
  .hero-search.is-flight .horizontalBox.pull-right{flex:1 1 100%}
  .hero-search.is-flight #flug-suchen{display:flex;gap:8px;width:100%!important;height:52px!important;font:500 15px/1 var(--font)!important}
  .hero-search.is-flight #flug-suchen::before{width:18px;height:18px}
  .hero-search.is-flight .horizontalBox:has(select){padding-left:8px!important}
}

/* Vorschläge Flughafen-Suche */
.hero-search.is-flight .suggestBoxFlight{min-width:max(100%,320px);max-height:320px;overflow:auto}
.hero-search.is-flight .suggestBoxFlight:not(:empty){padding:4px}
.hero-search.is-flight .suggestBoxFlight .choice{padding:8px 12px!important;border-radius:6px;font-size:14px;line-height:20px;color:var(--zinc-600);cursor:pointer;transition:background-color .15s ease-out}
.hero-search.is-flight .suggestBoxFlight .choice:hover{background:var(--zinc-100)}
.hero-search.is-flight .suggestBoxFlight .choice.level1{padding-left:28px!important}
.hero-search.is-flight .suggestBoxFlight .location{font-weight:500;color:var(--zinc-950)}
.hero-search.is-flight .suggestBoxFlight .locationAirp{font-size:12px;color:var(--zinc-500)}

/* ---------- Inhalt ---------- */
.site-main{padding:64px 0 96px}
.prose{max-width:760px;margin-inline:auto;overflow-wrap:break-word}
.prose::after{content:"";display:table;clear:both}
.prose>*:first-child,.prose>*:first-child>*:first-child{margin-top:0}
.prose h1,.prose h2,.prose h3,.prose h4{color:var(--zinc-950);font-weight:600;letter-spacing:-.02em}
.prose h1{margin:0 0 24px;font-size:clamp(28px,3.2vw,36px);line-height:1.15;letter-spacing:-.025em}
.prose h1:not(:first-child){margin-top:64px}
.prose h2{margin:48px 0 16px;font-size:24px;line-height:1.25}
.prose h3{margin:32px 0 8px;font-size:18px;line-height:1.4;letter-spacing:-.01em}
.prose h4{margin:24px 0 8px;font-size:16px;line-height:1.5;letter-spacing:0}
.prose p{margin:0 0 16px}
.prose ul,.prose ol{margin:0 0 16px;padding-left:20px}
.prose li{margin:4px 0}
.prose li::marker{color:var(--zinc-400)}
.prose hr{margin:32px 0;border:0;border-top:1px solid var(--zinc-200)}
.prose strong{font-weight:600;color:var(--zinc-900)}
.prose em{color:var(--zinc-900)}
.prose p img,.prose div>img{float:right;width:min(40%,320px);margin:4px 0 16px 32px;border:1px solid var(--zinc-200);border-radius:var(--radius-lg)}
@media (max-width:640px){.prose p img,.prose div>img{float:none;width:100%;margin:16px 0}}

/* Einleitung (ehem. Kopfbereiche mit H1) */
.page-intro{margin:0 0 48px;padding:0 0 32px;border-bottom:1px solid var(--zinc-200)}
.page-intro h1{margin:0 0 8px}
.page-intro p{margin:0;font-size:18px;color:var(--zinc-500)}

/* Sprungnavigation (ehem. Tabs) */
.chip-nav{display:flex;flex-wrap:wrap;gap:8px;margin:32px 0!important;padding:0!important;list-style:none}
.chip-nav li{margin:0}
.chip-nav a{display:inline-flex;align-items:center;height:32px;padding:0 12px;border:1px solid var(--zinc-200);border-radius:999px;font-size:13px;font-weight:500;color:var(--zinc-700);text-decoration:none;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out}
.chip-nav a:hover{border-color:var(--zinc-300);background:var(--zinc-50);color:var(--zinc-950)}
.tab-panel{scroll-margin-top:88px;margin:40px 0;padding-top:32px;border-top:1px solid var(--zinc-200)}
.tab-panel h2{margin-top:0}

/* Karten-Raster */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:32px 0}
.card-grid>div{display:flex;flex-direction:column;padding:24px;border:1px solid var(--zinc-200);border-radius:var(--radius-lg);background:#fff;transition:border-color .15s ease-out}
.card-grid>div:hover{border-color:var(--zinc-300)}
.card-grid h3{margin:0 0 8px;font-size:16px}
.card-grid h3 strong{font-weight:600}
.card-grid p{flex:1;margin:0 0 20px;font-size:14px;line-height:1.6;color:var(--zinc-500)}
.card-grid>div>a:last-child{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius);background:var(--zinc-900);color:#fff;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s ease-out}
.card-grid>div>a:last-child::after{content:"";width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat}
.card-grid>div>a:last-child:hover{background:var(--zinc-700)}

/* Linklisten (Flugrouten, Mietwagen-Orte) */
.link-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:16px 0 32px}
.link-grid>h3,.link-grid>h4{grid-column:1/-1;margin:16px 0 4px}
.link-grid>a{display:block;padding:8px 12px;border:1px solid var(--zinc-200);border-radius:var(--radius);font-size:14px;line-height:20px;color:var(--zinc-700);text-decoration:none;transition:border-color .15s ease-out,background-color .15s ease-out}
.link-grid>a:hover{border-color:var(--zinc-300);background:var(--zinc-50);color:var(--zinc-950)}
.link-grid>a strong{font-weight:500;color:inherit}

/* Tabellen */
.table-wrap{margin:24px 0 32px;overflow-x:auto;border:1px solid var(--zinc-200);border-radius:var(--radius-lg)}
.prose table{width:100%;border-collapse:collapse;font-size:14px}
.prose th,.prose td{padding:10px 16px;border-bottom:1px solid var(--zinc-200);text-align:left;vertical-align:top}
.prose tr:last-child td{border-bottom:0}
.prose th{background:var(--zinc-50);font-weight:500;color:var(--zinc-500);font-size:13px}
.prose td a{text-decoration:none;font-weight:500}
.prose td a:hover{text-decoration:underline}

/* Buchungsmaschine (IBE) */
.ibe-box{margin:32px 0;min-height:48px}

/* 404 */
.notfound{padding:32px 0;text-align:center}
.btn{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:var(--radius);background:var(--accent);color:#fff!important;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s ease-out}
.btn:hover{background:var(--accent-hover)}

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--zinc-200);background:var(--zinc-50);font-size:14px;color:var(--zinc-500)}
.site-footer a{color:var(--zinc-600);text-decoration:none;transition:color .15s ease-out}
.site-footer a:hover{color:var(--zinc-950)}
.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;padding:64px 0 40px}
.footer-col h4{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--zinc-950)}
.footer-col h4:not(:first-child){margin-top:32px}
.footer-col ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.footer-phone{margin:0;font-size:16px;font-weight:600}
.footer-phone a{color:var(--zinc-950)}
.footer-note{margin:4px 0 0;font-size:12px;color:var(--zinc-400)}
.footer-links{padding:24px 0;border-top:1px solid var(--zinc-200)}
.footer-links ul{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;list-style:none;font-size:13px}
.footer-bottom{padding:20px 0;border-top:1px solid var(--zinc-200);font-size:13px;color:var(--zinc-400)}
.footer-bottom .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media (max-width:960px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ===== Kontrast-Update: dunkler Hero, Inhalt als Karte, dunkler Footer ===== */
body{background:var(--zinc-100)}

/* Hero dunkel */
.hero{background:var(--zinc-950);border-bottom:0;color:#fff}
.hero-eyebrow{border-color:var(--zinc-800);background:var(--zinc-900);color:var(--zinc-300)}
.hero-title{color:#fff}
.hero-lead{color:var(--zinc-400)}
.hero-usp li{color:var(--zinc-300)}
.hero-usp .icon-box{border-color:var(--zinc-800);background:var(--zinc-900);color:#fff}

/* Optionszeile auf dunklem Grund */
.hero-search{color:#fff}
.hero-search.is-flight .horizontalBox:has(select):hover{background:var(--zinc-800)}
.hero-search.is-flight .horizontalBox:has(select) label{color:var(--zinc-400)}
.hero-search.is-flight select{color:#fff!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important}
.hero-search.is-flight select option{color:var(--zinc-900);background:#fff}

/* Eingabefelder weiß, ohne Rahmen */
.hero-search.is-flight .horizontalBox:has(input[type=text]){border-color:transparent}
.hero-search.is-flight .horizontalBox:has(input[type=text]):hover{border-color:transparent;box-shadow:0 0 0 1px var(--zinc-300)}
.hero-search.is-flight .horizontalBox:has(input[type=text]:focus){border-color:transparent;box-shadow:0 0 0 2px var(--accent)}
.hero-search.is-flight .suggestBoxFlight{color:var(--zinc-900)}

/* Such-Button mit sichtbarer Beschriftung */
.hero-search.is-flight #flug-suchen{display:flex!important;align-items:center;justify-content:center;gap:8px;width:auto!important;min-width:64px;padding:0 24px!important;font:600 15px/1 var(--font)!important;white-space:nowrap}
.hero-search.is-flight #flug-suchen::before{width:18px;height:18px}

/* Inhalt als Karte auf grauem Grund */
.site-main{padding:48px 0 80px}
.prose{max-width:880px;padding:clamp(24px,5vw,56px);background:#fff;border:1px solid var(--zinc-200);border-radius:var(--radius-lg)}

/* Footer dunkel */
.site-footer{border-top:0;background:var(--zinc-950);color:var(--zinc-400)}
.site-footer a{color:var(--zinc-300)}
.site-footer a:hover{color:#fff}
.footer-col h4,.footer-phone a{color:#fff}
.footer-note,.footer-bottom{color:var(--zinc-500)}
.footer-links,.footer-bottom{border-top-color:var(--zinc-800)}

/* Such-Button auf dem Handy über die volle Breite */
@media (max-width:960px){.hero-search.is-flight #flug-suchen{width:100%!important;height:52px!important}}

/* Untermenü: unsichtbare Brücke über den 8px-Abstand, damit das Menü
   beim Bewegen der Maus vom Menüpunkt ins Untermenü offen bleibt */
@media (min-width:961px){
  .sub::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
  .has-sub:hover>.sub-toggle{color:var(--zinc-900);background:var(--zinc-100)}
}

/* ===== Suchmasken für Reisen, Hotels und Mietwagen (specials.de) =====
   Gleiches Layout wie die Flugsuche: oben eine Optionszeile,
   darunter eine Leiste mit den Hauptfeldern und dem Such-Button. */
.hero-search.is-generic #suchbox,.hero-search.is-generic [class^="searchform"]{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.hero-search.is-generic .searchform-headline{display:none!important}
.hero-search.is-generic form{display:flex;flex-wrap:wrap;align-items:stretch;gap:4px;margin:0}
.hero-search.is-generic form::before{display:none!important;content:none!important}
.hero-search.is-generic form::after{content:"";order:2;flex-basis:100%;height:8px}
.hero-search.is-generic #searchbox,.hero-search.is-generic .section-side,.hero-search.is-generic .selection,.hero-search.is-generic .row-fluid-horizontalBox,.hero-search.is-generic #datepicker{display:contents!important}
.hero-search.is-generic .row-fluid::before,.hero-search.is-generic .row-fluid::after,.hero-search.is-generic .row-fluid-horizontalBox::before,.hero-search.is-generic .row-fluid-horizontalBox::after{display:none!important;content:none!important}

/* Zeile 1: Optionen als kompakte Auswahl auf dunklem Grund */
.hero-search.is-generic .horizontalBox{order:1;position:relative;display:flex;align-items:center;gap:6px;width:auto!important;min-width:0;height:36px;float:none!important;margin:0!important;padding:0 6px 0 10px!important;border-radius:var(--radius);transition:background-color .15s ease-out}
.hero-search.is-generic .horizontalBox:hover{background:var(--zinc-800)}
.hero-search.is-generic .horizontalBox>label{margin:0;font-size:13px;font-weight:400;line-height:16px;color:var(--zinc-400);white-space:nowrap}
.hero-search.is-generic .fontmin{display:none}
.hero-search.is-generic select{appearance:none;-webkit-appearance:none;width:auto!important;max-width:none;height:36px!important;margin:0!important;padding:0 20px 0 0!important;border:0!important;border-radius:0!important;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 2px center/14px!important;box-shadow:none!important;font:500 14px/36px var(--font)!important;color:#fff!important;outline:none;cursor:pointer}
.hero-search.is-generic select option{color:var(--zinc-900);background:#fff}
.hero-search.is-generic .horizontalBox>.row-fluid{display:flex;gap:2px;margin:0!important}
.hero-search.is-generic .horizontalBox>.row-fluid>[class*="span"]{flex:0 0 auto;width:auto!important;margin:0!important;float:none!important}
.hero-search.is-generic .horizontalBox:has(select:focus-visible){box-shadow:0 0 0 2px var(--accent)}
.hero-search.is-generic .pricerange{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--zinc-400);white-space:nowrap}
.hero-search.is-generic .pricerange .price{color:#fff}
.hero-search.is-generic .pricerange .slider{flex:0 0 120px;width:120px!important;margin:0 8px 0 0!important}
.hero-search.is-generic .horizontalBox:has(#show-more-options){padding:0!important}
.hero-search.is-generic #show-more-options{width:auto!important;height:36px;margin:0!important;padding:0 10px!important;border:0!important;background:none!important;box-shadow:none!important;text-shadow:none!important;font:500 13px/36px var(--font)!important;color:var(--zinc-400)!important;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.hero-search.is-generic #show-more-options:hover{color:#fff!important}
.hero-search.is-generic #more-options{order:5;flex-basis:100%;padding:8px 0 0}
.hero-search.is-generic #more-options .row-fluid-horizontalBox{display:flex!important;flex-wrap:wrap;gap:4px}
.hero-search.is-generic #more-options>label{display:block;margin:8px 0 4px 10px;font-size:13px;color:var(--zinc-400)}
.hero-search.is-generic #more-options input[type=text]{height:30px;padding:0 8px!important;border:1px solid var(--zinc-700)!important;border-radius:6px!important;background:var(--zinc-900)!important;color:#fff!important;font:14px var(--font)!important}
.hero-search.is-generic .globaltypes{display:flex;flex-wrap:wrap;gap:6px 16px;padding:4px 10px}
.hero-search.is-generic .globaltypes label.checkbox{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:13px;color:var(--zinc-300)}

/* Zeile 2: Hauptfelder als weiße Leiste */
.hero-search.is-generic .horizontalBox:has(#showDeparture),.hero-search.is-generic .horizontalBox:has(#destination),
.hero-search.is-generic .horizontalBox:has(#from),.hero-search.is-generic .horizontalBox:has(#to),
.hero-search.is-generic .horizontalBox:has(#pickup),.hero-search.is-generic .horizontalBox:has(#dropoff),
.hero-search.is-generic .horizontalBox:has(#pckdate),.hero-search.is-generic .horizontalBox:has(#drpdate){order:3;flex:1 1 0;display:block;height:64px;padding:0!important;background:#fff;border-radius:var(--radius);color:var(--zinc-950);transition:box-shadow .15s ease-out}
.hero-search.is-generic .horizontalBox:has(#showDeparture),.hero-search.is-generic .horizontalBox:has(#destination),.hero-search.is-generic .horizontalBox:has(#pickup),.hero-search.is-generic .horizontalBox:has(#dropoff){flex-grow:1.4}
.hero-search.is-generic .horizontalBox:has(#from),.hero-search.is-generic .horizontalBox:has(#pckdate){margin-left:8px!important}
.hero-search.is-generic .horizontalBox:has(#showDeparture):hover,.hero-search.is-generic .horizontalBox:has(#destination):hover,.hero-search.is-generic .horizontalBox:has(#from):hover,.hero-search.is-generic .horizontalBox:has(#to):hover,.hero-search.is-generic .horizontalBox:has(#pickup):hover,.hero-search.is-generic .horizontalBox:has(#dropoff):hover,.hero-search.is-generic .horizontalBox:has(#pckdate):hover,.hero-search.is-generic .horizontalBox:has(#drpdate):hover{background:#fff;box-shadow:0 0 0 1px var(--zinc-300)}
.hero-search.is-generic .horizontalBox:has(#showDeparture):focus-within,.hero-search.is-generic .horizontalBox:has(#destination):focus-within,.hero-search.is-generic .horizontalBox:has(#from):focus-within,.hero-search.is-generic .horizontalBox:has(#to):focus-within,.hero-search.is-generic .horizontalBox:has(#pickup):focus-within,.hero-search.is-generic .horizontalBox:has(#dropoff):focus-within,.hero-search.is-generic .horizontalBox:has(#pckdate):focus-within,.hero-search.is-generic .horizontalBox:has(#drpdate):focus-within{box-shadow:0 0 0 2px var(--accent)}
.hero-search.is-generic .horizontalBox:has(#showDeparture)>label,.hero-search.is-generic .horizontalBox:has(#destination)>label,.hero-search.is-generic .horizontalBox:has(#from)>label,.hero-search.is-generic .horizontalBox:has(#to)>label,.hero-search.is-generic .horizontalBox:has(#pickup)>label,.hero-search.is-generic .horizontalBox:has(#dropoff)>label,.hero-search.is-generic .horizontalBox:has(#pckdate)>label,.hero-search.is-generic .horizontalBox:has(#drpdate)>label{position:absolute;top:11px;left:16px;z-index:1;font-size:12px;color:var(--zinc-500);pointer-events:none}
.hero-search.is-generic .horizontalBox:has(#pickup)>div,.hero-search.is-generic .horizontalBox:has(#dropoff)>div{height:100%}
.hero-search.is-generic input[type=text]{display:block;width:100%!important;max-width:none;height:100%!important;margin:0!important;padding:26px 16px 10px!important;border:0!important;border-radius:var(--radius)!important;background:transparent!important;box-shadow:none!important;font:500 16px/24px var(--font)!important;color:var(--zinc-950)!important;outline:none}
.hero-search.is-generic input[type=text]::placeholder{color:var(--zinc-400)}
.hero-search.is-generic #showDeparture{height:100%!important;margin:0!important;padding:28px 16px 10px!important;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border:0!important;border-radius:var(--radius)!important;background:transparent!important;box-shadow:none!important;font:500 16px/24px var(--font)!important;color:var(--zinc-950)!important;cursor:pointer}
.hero-search.is-generic #destination{width:100%!important;height:100%!important;padding:26px 36px 10px 16px!important;background-color:transparent!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-position:right 14px center!important;font:500 16px/24px var(--font)!important;color:var(--zinc-950)!important}
.hero-search.is-generic .horizontalBox:has(#pckdate)>.row-fluid,.hero-search.is-generic .horizontalBox:has(#drpdate)>.row-fluid{display:flex;height:100%;gap:0;margin:0!important}
.hero-search.is-generic .horizontalBox:has(#pckdate) .span6,.hero-search.is-generic .horizontalBox:has(#drpdate) .span6{flex:1 1 auto!important;width:auto!important;margin:0!important;float:none!important}
.hero-search.is-generic .horizontalBox:has(#pckdate) .span5,.hero-search.is-generic .horizontalBox:has(#drpdate) .span5{flex:0 0 auto!important;width:auto!important;margin:0!important;float:none!important}
.hero-search.is-generic .horizontalBox:has(#pckdate) select,.hero-search.is-generic .horizontalBox:has(#drpdate) select{height:100%!important;padding:26px 30px 10px 4px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-position:right 10px center!important;font:500 16px/24px var(--font)!important;color:var(--zinc-950)!important}
.hero-search.is-generic .horizontalBox:has(#pckdate) input,.hero-search.is-generic .horizontalBox:has(#drpdate) input{padding-right:4px!important}

/* Such-Button */
.hero-search.is-generic .horizontalBox:has(.btn-primary:not(.btn-close)){order:4;flex:0 0 auto;height:64px;padding:0!important;background:none}
.hero-search.is-generic .btn-primary:not(.btn-close){display:flex!important;align-items:center;justify-content:center;gap:8px;width:auto!important;height:64px!important;margin:0!important;padding:0 24px!important;border:0!important;border-radius:var(--radius)!important;background:var(--accent)!important;background-image:none!important;box-shadow:none!important;text-shadow:none!important;font:600 15px/1 var(--font)!important;color:#fff!important;white-space:nowrap;cursor:pointer;transition:background-color .15s ease-out}
.hero-search.is-generic .btn-primary:not(.btn-close)::before{content:"";width:18px;height:18px;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat}
.hero-search.is-generic .btn-primary:not(.btn-close):hover{background:var(--accent-hover)!important}

/* Vorschläge und Abflughafen-Auswahl */
.hero-search.is-generic .suggestBox{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:max(100%,300px);background:#fff;border-radius:var(--radius);color:var(--zinc-900)}
.hero-search.is-generic .suggestBox:not(:empty){padding:4px;border:1px solid var(--zinc-200);box-shadow:0 8px 24px rgba(9,9,11,.08)}
.hero-search.is-generic #departurePopup{top:calc(100% + 4px)!important;left:0!important;bottom:auto!important;z-index:40;width:min(680px,calc(100vw - 48px))!important;max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--zinc-200);border-radius:var(--radius-lg);box-shadow:0 12px 32px rgba(9,9,11,.12);color:var(--zinc-900);font-size:13px}
.hero-search.is-generic #departurePopup .btn-close{height:36px!important;border:0!important;border-radius:var(--radius)!important;background:var(--zinc-900)!important;background-image:none!important;box-shadow:none!important;text-shadow:none!important;color:#fff!important;font:500 14px/36px var(--font)!important}

@media (max-width:960px){
  .hero-search.is-generic .horizontalBox:has(#showDeparture),.hero-search.is-generic .horizontalBox:has(#destination),.hero-search.is-generic .horizontalBox:has(#pickup),.hero-search.is-generic .horizontalBox:has(#dropoff){flex:1 1 100%}
  .hero-search.is-generic .horizontalBox:has(#from),.hero-search.is-generic .horizontalBox:has(#to),.hero-search.is-generic .horizontalBox:has(#pckdate),.hero-search.is-generic .horizontalBox:has(#drpdate){flex:1 1 40%;margin-left:0!important}
  .hero-search.is-generic .horizontalBox:has(.btn-primary:not(.btn-close)){flex:1 1 100%;height:52px}
  .hero-search.is-generic .btn-primary:not(.btn-close){width:100%!important;height:52px!important}
}

/* Buchungsmaschinen: vor der Suche nur unsere Suchmaske im Hero,
   nach der Suche nur die Ergebnisse der Buchungsmaschine */
body.no-results .ibe-box:has(#ypsnet-ibe:not([data-src*="/jump/78/"])){display:none}
body.has-results:has(#ypsnet-ibe) .hero-search,body.has-results:has(#ypsnet-ibe) .hero-usp{display:none}
body.has-results:has(#ypsnet-ibe) .hero-inner{padding:40px 0 32px}
body.has-results:has(#ypsnet-ibe) .hero-lead{margin-bottom:0}
/* Rechtstexte (AGB, Datenschutz, Disclaimer) kommen aus der Buchungsmaschine: dort keine Suchmaske */
body:has(#ypsnet-ibe[data-src*="/jump/78/"]) .hero-search,body:has(#ypsnet-ibe[data-src*="/jump/78/"]) .hero-usp{display:none}
body:has(#ypsnet-ibe[data-src*="/jump/78/"]) .hero-inner{padding:40px 0 32px}
body:has(#ypsnet-ibe[data-src*="/jump/78/"]) .hero-lead{margin-bottom:0}

/* Logo 50 % größer */
.header-inner{height:80px}
.brand img{height:54px}
@media (max-width:960px){.main-nav{inset:80px 0 0 0}}
.tab-panel{scroll-margin-top:104px}
