/* Schriften liegen auf dem eigenen Server – keine Verbindung zu Google beim Seitenaufruf. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 800;font-display:swap;
  src:url('fonts/archivo-700.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:300 700;font-display:swap;
  src:url('fonts/source-sans-3-400.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* =========================================================
   EssenScout – Gestaltung über WpResidence
   Aufbau: 1 Grundwerte · 2 Schrift · 3 Kopf · 4 Schaltflächen
           5 Objektkarten · 6 Suche & Filter · 7 Karte/Halbkarte
           8 Objektseite · 9 Formulare · 10 Fuß · 11 Mobil
   ========================================================= */

:root{
  --es-brand:#006AFF;
  --es-brand-dark:#0052CC;
  --es-brand-soft:#E6F0FF;
  --es-accent:#DD5128;
  --es-accent-soft:#FCEDE7;
  --es-ink:#101821;
  --es-body:#48586A;
  --es-muted:#6C7C8D;
  --es-line:#DCE4ED;
  --es-line-soft:#EDF1F6;
  --es-surface:#FFFFFF;
  --es-ground:#F4F7FA;
  --es-good:#127A57;
  --es-r:10px;
  --es-r-lg:16px;
  --es-shadow-sm:0 1px 3px rgba(16,24,33,.10);
  --es-shadow:0 1px 2px rgba(16,24,33,.06),0 8px 24px rgba(16,24,33,.08);
  --es-display:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --es-text:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* ---------- 2 Schrift ---------- */
body,
.listing_details,
.property-unit-information-wrapper,
p{
  font-family:var(--es-text);
  color:var(--es-body);
  font-size:16px;
  line-height:1.55;
}
h1,h2,h3,h4,h5,
.listing_unit_price_wrapper,
.price_label,
.wpresidence_button,
.btn{
  font-family:var(--es-display);
  letter-spacing:-.015em;
}
h1,h2,h3,h4,h5{color:var(--es-ink);font-weight:700;text-wrap:balance}
h1{font-size:clamp(28px,4vw,44px);line-height:1.1;font-weight:800}
h2{font-size:clamp(22px,2.6vw,30px)}
h3{font-size:21px}
h4{font-size:18px}
a{color:var(--es-ink)}
a:hover{color:var(--es-brand)}

/* ---------- 3 Kopf ---------- */
.header_wrapper,
#access{background:var(--es-surface)}
.header_wrapper{border-bottom:1px solid var(--es-line);box-shadow:none}
#access .menu > li > a,
.menu-item-link{
  font-family:var(--es-display);
  font-weight:600;
  font-size:15px;
  letter-spacing:-.01em;
}
.header_media, .top_bar{border:0}

/* ---------- 4 Schaltflächen ---------- */
.wpresidence_button,
.btn-primary,
input[type="submit"],
button.wpresidence_button{
  background:var(--es-brand);
  border:1px solid var(--es-brand);
  color:#fff;
  border-radius:var(--es-r);
  font-weight:600;
  font-size:15px;
  padding:10px 18px;
  box-shadow:none;
  transition:background .15s,border-color .15s;
}
.wpresidence_button:hover,
.btn-primary:hover,
input[type="submit"]:hover{
  background:var(--es-brand-dark);
  border-color:var(--es-brand-dark);
  color:#fff;
}
.wpresidence_button.secondary,
.btn-secondary{
  background:var(--es-surface);
  border-color:var(--es-line);
  color:var(--es-ink);
}
.wpresidence_button.secondary:hover{border-color:var(--es-muted);background:var(--es-surface);color:var(--es-ink)}

/* Inserieren ist der Akzent – überall dort, wo das Theme „submit" verwendet */
.submit_listing,
.submit_listing a,
a.submit_listing{
  background:var(--es-accent)!important;
  border-color:var(--es-accent)!important;
  color:#fff!important;
  border-radius:var(--es-r);
  font-family:var(--es-display);
  font-weight:600;
}

/* ---------- 5 Objektkarten ---------- */
.property_listing,
.property_unit{
  background:var(--es-surface);
  border:1px solid var(--es-line);
  border-radius:var(--es-r-lg);
  overflow:hidden;
  box-shadow:var(--es-shadow-sm);
  transition:box-shadow .16s ease,transform .16s ease;
}
.property_listing:hover,
.property_unit:hover{
  box-shadow:var(--es-shadow);
  transform:translateY(-2px);
}
.property_listing .property_listing_image_wrapper,
.property_unit_carousel{border-radius:0}
.property_unit_carousel .carousel-item img,
.property_listing img{object-fit:cover}

/* Preis zuerst, dann Titel – wie beim großen Vorbild */
.property-unit-information-wrapper{
  display:flex;
  flex-direction:column;
  padding:14px 16px 16px;
  gap:2px;
}
.property-unit-information-wrapper .listing_unit_price_wrapper{
  order:1;
  font-size:23px;
  font-weight:800;
  color:var(--es-ink);
  font-variant-numeric:tabular-nums;
  letter-spacing:-.02em;
  margin:0;
  line-height:1.2;
}
.property_unit .listing_unit_price_wrapper,
.property_listing .listing_unit_price_wrapper,
.listing_unit_price_wrapper,
.listing_unit_price_wrapper a{color:var(--es-ink)!important}
.listing_unit_price_wrapper .price_label{color:var(--es-muted)!important;font-weight:600;font-size:14px}
.property-unit-information-wrapper h4{
  order:2;
  font-size:16px;
  font-weight:600;
  line-height:1.35;
  margin:2px 0 0;
}
.property-unit-information-wrapper h4 a{color:var(--es-ink);text-decoration:none}
.property-unit-information-wrapper .listing_details{order:3}
.property-unit-information-wrapper .property_listing_details{
  order:3;
  font-size:14.5px;
  color:var(--es-body);
  font-variant-numeric:tabular-nums;
  border:0;
  padding:4px 0 0;
  margin:0;
}
.property-unit-information-wrapper .property_listing_details .inforoom,
.property-unit-information-wrapper .property_listing_details .infobath,
.property-unit-information-wrapper .property_listing_details .infosize{
  color:var(--es-body);
}
/* Beschreibungstext gehört nicht in die Karte */
.property_unit .listing_details.the_grid_view,
.property_listing .listing_details.the_grid_view{display:none!important}

.property_location_image{
  font-size:13px;
  background:rgba(16,24,33,.62);
  border-radius:6px;
  padding:4px 9px;
  backdrop-filter:blur(2px);
}
.property_location_image a,
.property_location_image i{color:#fff!important}
.featured_gradient{background:linear-gradient(180deg,rgba(16,24,33,.35) 0%,rgba(16,24,33,0) 42%)}

.action_tag_wrapper,
.ribbon-inside{
  font-family:var(--es-display);
  font-weight:700;
  font-size:12px;
  letter-spacing:.01em;
  border-radius:6px;
  padding:4px 9px;
  box-shadow:var(--es-shadow-sm);
}
.action_tag_wrapper{background:var(--es-surface);color:var(--es-ink)}
.ribbon-inside{background:var(--es-accent);color:#fff}

/* ---------- 6 Suche & Filter ---------- */
.advanced_search_sidebar,
.advanced_search_shortcode,
#adv-search-1,
.adv-search-1{
  background:var(--es-surface);
  border:1px solid var(--es-line);
  border-radius:var(--es-r-lg);
  box-shadow:var(--es-shadow);
}
.form-control,
.listing_filter_select,
select.form-select,
input[type="text"],
input[type="email"],
input[type="password"],
textarea{
  border:1px solid var(--es-line);
  border-radius:var(--es-r);
  font-family:var(--es-text);
  font-size:15px;
  color:var(--es-ink);
  background:var(--es-surface);
  padding:10px 13px;
  box-shadow:none;
}
.form-control:focus,
input:focus,
select:focus,
textarea:focus{
  border-color:var(--es-brand);
  box-shadow:0 0 0 3px var(--es-brand-soft);
  outline:none;
}
.filter_menu_trigger,
.wpresidence_dropdown .dropdown-toggle{
  border:1px solid var(--es-line);
  border-radius:var(--es-r);
  background:var(--es-surface);
  color:var(--es-ink);
  font-family:var(--es-display);
  font-weight:600;
  font-size:14.5px;
  padding:8px 14px;
}
.filter_menu_trigger:hover,
.wpresidence_dropdown .dropdown-toggle:hover{border-color:var(--es-muted)}
.filter_menu_trigger.active,
.wpresidence_dropdown.show .dropdown-toggle{
  border-color:var(--es-brand);
  color:var(--es-brand);
  background:var(--es-brand-soft);
}
.dropdown-menu{
  border:1px solid var(--es-line);
  border-radius:var(--es-r);
  box-shadow:var(--es-shadow);
  padding:8px;
}

/* ---------- 7 Karte und Halbkarte ---------- */
.listing_wrapper_half,
.property_list_half{background:var(--es-ground)}
#googleMap,
#googleMapSlider,
.leaflet-container{border-radius:0}
.leaflet-container{font-family:var(--es-text)}
/* Preisblasen auf der Karte */
.leaflet-marker-icon .map_pin_price,
.map_pin_price,
.marker_price{
  background:var(--es-surface);
  color:var(--es-ink);
  border:1px solid var(--es-line);
  border-radius:99px;
  padding:5px 11px;
  font-family:var(--es-display);
  font-weight:700;
  font-size:13px;
  box-shadow:var(--es-shadow);
  font-variant-numeric:tabular-nums;
}
.leaflet-marker-icon:hover .map_pin_price,
.map_pin_price:hover{background:var(--es-brand);border-color:var(--es-brand);color:#fff}
.marker-cluster div{
  background:var(--es-brand);
  color:#fff;
  font-family:var(--es-display);
  font-weight:700;
}
.marker-cluster{background:rgba(16,70,201,.25)}

/* ---------- 8 Objektseite ---------- */
.single_property_labels,
.property_categs{font-family:var(--es-display);font-weight:600;font-size:13px}
.single_property_wrapper .price_area,
.price_area{
  font-family:var(--es-display);
  font-size:32px;
  font-weight:800;
  color:var(--es-ink);
  letter-spacing:-.025em;
  font-variant-numeric:tabular-nums;
}
.property_categs_and_details,
.wpestate_estate_property_details{
  border:1px solid var(--es-line);
  border-radius:var(--es-r);
  background:var(--es-surface);
}
.panel-heading,
.wpestate_property_description,
.property_content{font-size:16.5px;line-height:1.65;color:var(--es-body)}
.agent_contact_form_wrapper,
.property_contact_form,
.sidebar_property_agent{
  background:var(--es-surface);
  border:1px solid var(--es-line);
  border-radius:var(--es-r-lg);
  box-shadow:var(--es-shadow-sm);
}

/* ---------- 9 Formulare und Hinweise ---------- */
.loginalert,
.alert{border-radius:var(--es-r);font-size:14.5px}
.login_form,
.wpestate_login_form_wrapper{border-radius:var(--es-r-lg)}
label{font-family:var(--es-display);font-weight:600;font-size:13.5px;color:var(--es-ink)}

/* ---------- 10 Fuß ---------- */
.footer_wrapper{background:var(--es-surface);border-top:1px solid var(--es-line);color:var(--es-body)}
.footer_wrapper h3,.footer_wrapper h4{color:var(--es-ink)}
.copyright_content,.footer_copy{background:var(--es-surface);color:var(--es-muted);font-size:13.5px;border-top:1px solid var(--es-line-soft)}

/* ---------- 11 Mobil ---------- */
@media (max-width:767px){
  .property-unit-information-wrapper .listing_unit_price_wrapper{font-size:21px}
  h1{font-size:28px}
  .wpresidence_button{padding:11px 16px}
}
@media (prefers-reduced-motion:reduce){
  .property_listing,.property_unit{transition:none}
}

/* =========================================================
   12 Startseite
   ========================================================= */
.es-start{background:var(--es-surface)}
.es-wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
.es-sektion{padding-block:54px}
.es-kopf{max-width:56ch;margin-bottom:26px}
.es-kopf h2{font-size:clamp(24px,3vw,33px);font-weight:800;margin:0 0 10px}
.es-kopf p{margin:0;font-size:17px;line-height:1.6}
.es-kopf-reihe{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;max-width:none}
.es-mehr{font-family:var(--es-display);font-weight:600;color:var(--es-brand);text-decoration:none;white-space:nowrap;font-size:15.5px}
.es-mehr:hover{color:var(--es-brand-dark)}

/* Kopfbereich */
.es-hero{position:relative;background:
   radial-gradient(1100px 420px at 12% -10%, var(--es-brand-soft) 0%, transparent 62%),
   radial-gradient(900px 380px at 92% 0%, var(--es-accent-soft) 0%, transparent 58%),
   var(--es-surface);
  border-bottom:1px solid var(--es-line);overflow:hidden}
.es-hero-inner{max-width:900px;margin:0 auto;padding:62px 20px 56px;text-align:center}
.es-auge{font-family:var(--es-display);font-weight:700;font-size:12.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--es-brand);margin:0 0 14px}
.es-hero h1{font-size:clamp(30px,5vw,52px);line-height:1.06;font-weight:800;margin:0 auto 16px;max-width:17ch}
.es-lead{font-size:clamp(16.5px,1.6vw,19.5px);line-height:1.55;margin:0 auto 30px;max-width:54ch}
.es-suche{display:flex;align-items:center;gap:6px;background:var(--es-surface);border:2px solid var(--es-ink);
  border-radius:14px;padding:5px;max-width:700px;margin:0 auto 18px;box-shadow:var(--es-shadow)}
.es-suche input{flex:1;min-width:0;border:0;background:transparent;font-family:var(--es-text);font-size:16.5px;
  padding:14px 16px;color:var(--es-ink)}
.es-suche input:focus{outline:none}
.es-suche input::placeholder{color:var(--es-muted)}
.es-suche button{display:inline-flex;align-items:center;gap:8px;border:0;background:var(--es-brand);color:#fff;
  font-family:var(--es-display);font-weight:700;font-size:16px;padding:13px 22px;border-radius:10px;cursor:pointer;
  transition:background .15s}
.es-suche button:hover{background:var(--es-brand-dark)}
.es-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.es-chips a{background:var(--es-surface);border:1px solid var(--es-line);border-radius:99px;padding:7px 15px;
  font-size:14.5px;font-weight:600;color:var(--es-body);text-decoration:none;transition:all .15s}
.es-chips a:hover{border-color:var(--es-brand);color:var(--es-brand);transform:translateY(-1px)}

/* Zwei Wege */
.es-zwei{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-block:52px}
.es-weg{background:var(--es-surface);border:1px solid var(--es-line);border-radius:20px;padding:30px 28px;
  display:flex;flex-direction:column;gap:10px;box-shadow:var(--es-shadow-sm);transition:box-shadow .18s,transform .18s}
.es-weg:hover{box-shadow:var(--es-shadow);transform:translateY(-3px)}
.es-weg-akzent{border-color:var(--es-accent);background:linear-gradient(180deg,var(--es-accent-soft) 0%,var(--es-surface) 42%)}
.es-weg h2{font-size:24px;font-weight:800;margin:0}
.es-weg p{margin:0;font-size:16px;line-height:1.6}
.es-weg-ico{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;margin-bottom:6px}
.es-blau{background:var(--es-brand-soft);color:var(--es-brand)}
.es-orange{background:#fff;color:var(--es-accent);border:1px solid var(--es-accent)}
.es-knopf{align-self:flex-start;margin-top:8px;display:inline-block;text-decoration:none;border-radius:11px;
  font-family:var(--es-display);font-weight:700;font-size:15.5px;padding:12px 22px;transition:all .15s}
.es-knopf-blau{background:var(--es-brand);color:#fff}
.es-knopf-blau:hover{background:var(--es-brand-dark);color:#fff}
.es-knopf-orange{background:var(--es-accent);color:#fff}
.es-knopf-orange:hover{background:#c2431f;color:#fff}
.es-knopf-gross{font-size:17px;padding:15px 30px}

/* Helfer */
.es-helfer{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.es-helfer article{background:var(--es-ground);border-radius:18px;padding:26px 24px;position:relative}
.es-helfer h3{font-size:19px;font-weight:700;margin:14px 0 8px}
.es-helfer p{margin:0;font-size:15.5px;line-height:1.6}
.es-nummer{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--es-brand);
  color:#fff;font-family:var(--es-display);font-weight:800;font-size:18px}
.es-helfer article:nth-child(2) .es-nummer{background:var(--es-accent)}
.es-helfer article:nth-child(3) .es-nummer{background:var(--es-good)}

/* Objektkarten auf der Startseite */
.es-karten{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px}
.es-karte{background:var(--es-surface);border:1px solid var(--es-line);border-radius:18px;overflow:hidden;
  text-decoration:none;display:flex;flex-direction:column;box-shadow:var(--es-shadow-sm);
  transition:box-shadow .18s,transform .18s}
.es-karte:hover{box-shadow:var(--es-shadow);transform:translateY(-3px)}
.es-karte-bild{position:relative;aspect-ratio:4/3;background:var(--es-line-soft);overflow:hidden}
.es-karte-bild img{width:100%;height:100%;object-fit:cover;display:block}
.es-kein-bild{position:absolute;inset:0;display:grid;place-items:center;color:var(--es-muted)}
.es-fahne{position:absolute;top:12px;left:12px;background:var(--es-surface);color:var(--es-ink);
  font-family:var(--es-display);font-weight:700;font-size:12.5px;padding:5px 11px;border-radius:7px;
  box-shadow:var(--es-shadow-sm)}
.es-karte-text{padding:16px 18px 18px;display:flex;flex-direction:column;gap:5px}
.es-preis-gross{font-family:var(--es-display);font-size:24px;font-weight:800;color:var(--es-ink);
  letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15}
.es-preis-gross small{font-size:14px;font-weight:600;color:var(--es-muted)}
.es-preis-anfrage{font-size:19px;color:var(--es-body)}
.es-karte-text h3{font-size:16.5px;font-weight:600;line-height:1.35;margin:2px 0 0;color:var(--es-ink)}
.es-fakten{display:flex;flex-wrap:wrap;gap:12px;font-size:14.5px;color:var(--es-body);
  font-variant-numeric:tabular-nums;margin-top:4px}
.es-fakten b{color:var(--es-ink);font-weight:700}
.es-ort{font-size:14.5px;color:var(--es-muted);margin-top:2px}

/* Anleitung */
.es-anleitung{background:var(--es-ground);padding-block:58px;border-block:1px solid var(--es-line)}
.es-schritte{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s}
.es-schritte li{background:var(--es-surface);border:1px solid var(--es-line);border-radius:18px;padding:24px 22px;
  position:relative;display:flex;flex-direction:column;gap:7px}
.es-schritte li::after{content:"";position:absolute;right:-13px;top:50%;width:14px;height:2px;background:var(--es-line)}
.es-schritte li:last-child::after{display:none}
.es-schritt-nr{width:34px;height:34px;border-radius:99px;background:var(--es-ink);color:#fff;display:grid;
  place-items:center;font-family:var(--es-display);font-weight:800;font-size:16px}
.es-schritte h3{font-size:17.5px;font-weight:700;margin:8px 0 0}
.es-schritte p{margin:0;font-size:15px;line-height:1.55}
.es-dauer{margin-top:auto;padding-top:10px;font-family:var(--es-display);font-weight:700;font-size:13px;
  color:var(--es-good)}
.es-anleitung-cta{margin-top:30px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.es-anleitung-cta span{font-size:15px;color:var(--es-muted)}

/* Stadtteile */
.es-teile{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.es-teil-kachel{background:var(--es-surface);border:1px solid var(--es-line);border-radius:12px;padding:15px 17px;
  text-decoration:none;display:flex;flex-direction:column;gap:2px;transition:all .15s}
.es-teil-kachel:hover{border-color:var(--es-brand);transform:translateY(-2px)}
.es-teil-kachel b{font-family:var(--es-display);color:var(--es-ink);font-size:16px}
.es-teil-kachel span{font-size:14px;color:var(--es-muted)}

/* Makler */
.es-makler{background:var(--es-ink);color:#fff;border-radius:20px;padding:34px 32px;display:flex;
  align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}
.es-makler h2{color:#fff;font-size:25px;font-weight:800;margin:0 0 8px}
.es-makler p{margin:0;color:#B4C1CF;font-size:16px;line-height:1.6;max-width:62ch}
.es-makler .es-knopf{margin-top:0;flex:none}

@media (max-width:980px){
  .es-zwei{grid-template-columns:1fr}
  .es-helfer{grid-template-columns:1fr}
  .es-schritte{grid-template-columns:1fr 1fr}
  .es-schritte li::after{display:none}
}
@media (max-width:600px){
  .es-schritte{grid-template-columns:1fr}
  .es-suche{flex-direction:column;align-items:stretch;border-radius:14px}
  .es-suche button{justify-content:center}
  .es-hero-inner{padding-block:44px 40px}
  .es-makler{flex-direction:column;align-items:flex-start}
}

/* Auf der Startseite stört der Medienkopf des Themes – die eigene Suche reicht. */
.page-template-escout-startseite .header_media{height:110px!important;min-height:110px!important;background:transparent!important;box-shadow:none!important}
.page-template-escout-startseite .header_media .search_wrapper,
.page-template-escout-startseite .header_media .adv-search-1,
.page-template-escout-startseite .header_media .search_wrapper_color,
.page-template-escout-startseite .header_media > *{display:none!important}
@media (max-width:767px){.page-template-escout-startseite .header_media,.page-template-escout-landing .header_media{height:0!important;min-height:0!important;margin:0!important;padding:0!important}}
.page-template-escout-startseite .header_wrapper{position:relative!important;top:auto!important;z-index:30}
.page-template-escout-startseite .top_bar{position:relative!important;z-index:31}
.page-template-escout-startseite .es-start{position:relative;z-index:1}
.es-hero h1{max-width:26ch}

/* Ohne hinterlegte Profile bringen die Symbole nichts. */
.social_widget_top,#social_widget_top-1,.top-bar-left-widget-area .widget_social_widget_top{display:none!important}

/* ---------- Landingpages ---------- */
.es-landing .header_media{display:none}
.page-template-escout-landing .header_media{height:110px!important;min-height:110px!important;background:transparent!important}
.page-template-escout-landing .header_media > *{display:none!important}
.page-template-escout-landing .search_wrapper{display:none!important}
.es-landing .es-hero-inner{max-width:820px}
.es-landing h1{margin-bottom:14px}
.es-vorteile{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-block:8px}
.es-vorteil{background:var(--es-surface);border:1px solid var(--es-line);border-radius:16px;padding:22px 20px}
.es-vorteil b{display:block;font-family:var(--es-display);font-size:17px;color:var(--es-ink);margin-bottom:6px}
.es-vorteil span{font-size:15.5px;line-height:1.55;color:var(--es-body)}
.es-vergleich{width:100%;border-collapse:separate;border-spacing:0;font-size:15.5px;
  border:1px solid var(--es-line);border-radius:16px;overflow:hidden;background:var(--es-surface)}
.es-vergleich th,.es-vergleich td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--es-line-soft)}
.es-vergleich th{font-family:var(--es-display);font-size:15px;color:var(--es-ink);background:var(--es-ground)}
.es-vergleich tr:last-child td{border-bottom:0}
.es-vergleich .es-ja{color:var(--es-good);font-weight:700}
.es-vergleich .es-nein{color:var(--es-muted)}
.es-frage{border-top:1px solid var(--es-line);padding-block:18px}
.es-frage h3{font-size:18px;margin:0 0 7px}
.es-frage p{margin:0;font-size:16px;line-height:1.6}
.es-schluss{background:var(--es-brand);color:#fff;border-radius:20px;padding:34px 32px;text-align:center;margin-block:10px 40px}
.es-schluss h2{color:#fff;font-size:27px;font-weight:800;margin:0 0 10px}
.es-schluss p{color:#DCE6FB;font-size:17px;margin:0 auto 20px;max-width:52ch}
.es-schluss .es-knopf{background:#fff;color:var(--es-brand)}
.es-schluss .es-knopf:hover{background:var(--es-brand-soft);color:var(--es-brand-dark)}
@media (max-width:900px){.es-vorteile{grid-template-columns:1fr}}

/* ------------------------------------------------------------------
   13. Kopfzeile: schmaler Infostreifen und Logo
   ------------------------------------------------------------------ */
.top_bar_wrapper{background:#00081D!important;border:0!important}
.top_bar{background:transparent!important;min-height:40px;padding-top:0!important;padding-bottom:0!important}
.top_bar, .top_bar a, .top_bar span, .top_bar p, .top_bar li{
  color:#E6EBF2!important;font-family:var(--es-font-text,inherit);font-size:.86rem;line-height:1.2}
.top_bar a:hover{color:#fff!important}
.top_bar i, .top_bar .fas, .top_bar .far, .top_bar .fab{color:#3AD6A3!important}
/* Reste der Theme-Standardwidgets im Infostreifen ausblenden */
.top_bar .right-top-widet .widget_block,
.top_bar .right-top-widet .widget_categories,
.top_bar .right-top-widet .widget_archive,
.top_bar .right-top-widet .widget_recent_entries,
.top_bar .right-top-widet .widget_meta{display:none!important}
.top_bar .right-top-widet ul.xoxo{margin:0;padding:0;list-style:none;display:flex;gap:1.25rem;align-items:center}
.top_bar .right-top-widet li{margin:0;padding:0;border:0!important}
/* Logo sauber einpassen */
.logo img, .logo_container img{max-height:40px!important;width:auto!important;height:auto!important;object-fit:contain}
@media (max-width:991px){.logo img, .logo_container img{max-height:34px!important}}
/* Hauptmenü: dunkle Schrift auf hellem Kopf */
.header_wrapper a.menu-item-link,
.header_wrapper .menu > li > a,
.header_wrapper .navbar-nav > li > a{color:#00081D!important;font-weight:600}
.header_wrapper a.menu-item-link:hover,
.header_wrapper .menu > li > a:hover,
.header_wrapper .menu > li.current-menu-item > a{color:#008F67!important}
.header_wrapper .menu ul li a{color:#00081D!important}
.header_wrapper .menu ul li a:hover{color:#008F67!important}
.header_wrapper .mobile_menu_button span,
.header_wrapper .navbar-toggler-icon{background:#00081D!important}
/* Mobiler Kopf: dunkelblau statt Grau, helles Logo */
.mobile_header, .mobile_menu_wrapper, .mobile-header-wrapper,
.header_wrapper.mobile_header, .mobile_menu_container{background:#00081D!important}
@media (max-width:1199px){
  .master_header, .header_wrapper{background:#00081D!important}
  .header_wrapper a.menu-item-link, .header_wrapper .menu > li > a{color:#fff!important}
}
