/* =======================
   Meisterly – Light Theme (clean)
   ======================= */

/* ---------- Theme tokens ---------- */
:root{
  --bg:#f6f8fb;
  --panel:#fff;
  --fg:#0f1a2b;
  --muted:#5b6b7f;

  --pri:#2563eb;      /* primary */
  --pri-2:#1e40af;    /* primary dark */
  --acc:#22c55e;      /* accent/ok */
  --warn:#f59e0b;
  --err:#dc2626;

  --chip:#eff6ff;
  --pill:#eef2ff;
  --bd:#e6eaf2;
  --shadow:0 10px 30px rgba(15,26,43,.08);
  --radius:16px;
}

/* ---------- Base ---------- */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:system-ui, Segoe UI, Roboto, Arial, sans-serif;
  background:var(--bg);
  color:var(--fg);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
a{color:inherit}
a:focus,button:focus,input:focus,textarea:focus,select:focus{
  outline:2px solid rgba(37,99,235,.35); outline-offset:2px;
}

/* ---------- Layout ---------- */
.container{max-width:1100px;margin:0 auto;padding:16px}
.header{padding:28px 0 12px}
h1{margin:.2rem 0 0;font-size:clamp(1.4rem,2.4vw,2rem)}
h2{margin:1rem 0 .5rem;font-size:1.25rem}
.subtitle{color:var(--muted);margin:.4rem 0 1rem}
.footer{margin:36px 0 12px;color:var(--muted);font-size:.9rem;text-align:center}
.footer a{color:var(--muted);text-decoration:none}
.footer a:hover{text-decoration:underline}

/* ---------- Forms ---------- */
.form-row{display:flex;flex-wrap:wrap;gap:8px;margin:.5rem 0}
.input{
  flex:1 1 220px;min-width:200px;padding:12px;border-radius:12px;
  border:1px solid var(--bd);background:#fff;color:var(--fg);
  box-shadow:inset 0 1px 0 rgba(15,26,43,.03);
}
textarea.input{min-height:140px;resize:vertical}
select.input{appearance:none}
label{display:block;margin:.25rem 0}

/* ---------- Buttons & Pills ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  height:40px;padding:0 14px;border-radius:12px;
  border:1px solid var(--bd);background:#fff;color:var(--fg);
  text-decoration:none;cursor:pointer;
  transition:transform .08s ease, box-shadow .12s ease, background .12s ease;
}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}
.btn:active{transform:none}
.btn-cta{background:linear-gradient(180deg,var(--pri),var(--pri-2));border-color:transparent;color:#fff}
.btn-outline{background:#fff;color:var(--pri);border:1px solid #c7d2fe}
.btn-ghost{background:transparent;border-color:transparent}

/* Basis */
.pill.pill--sponsored{
  margin-left:.5rem;
  font-size:12px; line-height:1;
  padding:4px 10px;
  border-radius:999px;
  font-weight:700;
  letter-spacing:.2px;
  box-shadow:0 2px 8px rgba(15,26,43,.12);
}

/* Silber */
.pill--silver{
  color:#263040;
  background:linear-gradient(135deg,#f5f7fa 0%, #e6eaf1 100%);
  border:1px solid #cfd6e3;
}

/* Platin (kühler als Silber, leicht bläulich) */
.pill--platinum{
  color:#1e2a48;
  background:linear-gradient(135deg,#eef3ff 0%, #dbe7ff 100%);
  border:1px solid #9db6ff;
}

/* Gold */
.pill--gold{
  color:#5a3a00;
  background:linear-gradient(135deg,#ffe9a8 0%, #ffd56a 100%);
  border:1px solid #f3b93c;
}

/* Hover (optional) */
.pill--silver:hover   { filter:brightness(0.98); }
.pill--platinum:hover { filter:brightness(1.02); }
.pill--gold:hover     { filter:brightness(1.02); }

/* Dark mode optional */
@media (prefers-color-scheme: dark){
  .pill--silver{
    color:#e6edf3;
    background:linear-gradient(135deg,#2b313a 0%, #3a414c 100%);
    border-color:#4a5568;
  }
  .pill--platinum{
    color:#e6edf3;
    background:linear-gradient(135deg,#252f49 0%, #33405f 100%);
    border-color:#5b78c4;
  }
  .pill--gold{
    color:#1f1300;
    background:linear-gradient(135deg,#ffd56a 0%, #ffca45 100%);
    border-color:#f3b93c;
  }
}



/* ---------- Grid / Cards (generic) ---------- */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:980px){.grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.grid{grid-template-columns:1fr}}

.card{
  display:block;text-decoration:none;color:inherit;
  background:var(--panel); border:1px solid var(--bd);
  border-radius:18px; box-shadow:var(--shadow);
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(15,26,43,.12);border-color:#d7e0ea}

/* ---------- Breadcrumbs & Pagination ---------- */
.breadcrumbs{font-size:.92rem;color:var(--muted);margin-bottom:8px}
.breadcrumbs a{color:#3b6ea8;text-decoration:none}
.breadcrumbs a:hover{text-decoration:underline}

.pagination{display:flex;gap:8px;justify-content:center;margin:20px 0}
.page-btn{
  padding:8px 12px;border:1px solid var(--bd);
  border-radius:10px;background:#fff;color:var(--fg);text-decoration:none
}
.page-btn[aria-current="page"]{background:#e6f2fb;color:#0f1a2b;border-color:#cfe6f7}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;border-radius:24px;background:var(--panel);box-shadow:var(--shadow);margin:16px 0 24px}
.hero--image picture, .hero--image img{display:block;width:100%;height:360px;object-fit:cover;filter:saturate(1.05)}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.15) 35%,rgba(0,0,0,0));display:flex;flex-direction:column;justify-content:center;gap:14px;padding:28px}
.hero__title{color:#fff;font-size:clamp(22px,3vw,36px);font-weight:800;margin:0}
.hero__sub{color:#e9eefc;margin:0}

.hero__topbar{position:absolute;top:12px;right:12px;display:flex;gap:8px;z-index:2}
.hero__cta{height:38px;padding:0 14px;border-radius:12px;font-weight:600}
@media (max-width:640px){ .hero__topbar{position:static;justify-content:flex-end;margin-bottom:8px} }

.hero__search{
  background:rgba(255,255,255,.9);backdrop-filter:saturate(140%) blur(6px);
  border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px;width:min(980px,100%)
}
.search__row{display:flex;gap:10px;align-items:center}
.search__row.-minor{opacity:.9}
.search__field{flex:1;display:flex;flex-direction:column;gap:4px}
.search__label{font-size:12px;color:var(--muted)}
.hero__search input{height:44px;border:1px solid var(--bd);border-radius:12px;padding:0 12px;font-size:15px}
.search__submit{height:44px;border-radius:12px}

@media (max-width:760px){
  .hero--image img{height:280px}
  .hero__search{padding:10px}
  .search__row{flex-direction:column;align-items:stretch}
}

/* ---------- A–Z ---------- */
.az{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.az .chip{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:28px;height:28px;padding:0 8px;border-radius:999px;
  font-size:.80rem;border:1px solid var(--bd);background:#f8fafc;color:#0b2a4a;text-decoration:none;
}
.az .chip:hover{background:#eef2ff}
.az .chip[aria-current="page"]{background:linear-gradient(135deg,var(--pri),var(--pri-2));color:#fff;border-color:transparent}
.az.az--xs{gap:6px}
.az.az--xs .chip{min-width:24px;height:24px;padding:0 6px;font-size:.75rem}
.az.az--xxs{gap:4px}
.az.az--xxs .chip{min-width:20px;height:20px;padding:0 6px;font-size:.70rem}
@media (max-width:480px){ .az.az--xs{gap:4px} .az.az--xs .chip{min-width:22px;height:22px;font-size:.72rem} }

/* ---------- Kategorie-Kacheln ---------- */
.grid.cat-grid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.grid.cat-grid .card{padding:10px 12px;border-radius:12px}
.grid.cat-grid .card img{width:100%;height:88px;object-fit:cover;border-radius:10px}
.grid.cat-grid .tile-initial{
  height:88px;display:grid;place-items:center;border-radius:10px;
  background:linear-gradient(135deg,#e6f0ff,#dfeaff);font-weight:800;font-size:18px;color:#1e3a8a;
}
.grid.cat-grid .card strong{display:block;margin-top:6px;font-size:.95rem;font-weight:600}
@media (max-width:640px){
  .grid.cat-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
  .grid.cat-grid .card img, .grid.cat-grid .tile-initial{height:72px}
  .grid.cat-grid .card strong{font-size:.9rem}
}

/* ---------- Ergebnisliste ---------- */
.result-list{display:grid;gap:10px;margin:10px 0 18px}
.result{
  display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:start;
  padding:12px;border:1px solid var(--bd);border-radius:14px;background:var(--panel);box-shadow:var(--shadow);
  transition:box-shadow .12s ease, transform .12s ease;
}
.result:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(15,26,43,.10)}

.thumb{display:block;width:72px;height:72px;border-radius:12px;overflow:hidden;background:#f0f4ff}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.thumb__initial{
  width:100%;height:100%;display:grid;place-items:center;font-weight:800;font-size:24px;color:#1e3a8a;
  background:linear-gradient(135deg,#e0eaff,#cfe7ff);
}

.info{display:grid;gap:6px}
.title{margin:0;font-size:16px;line-height:1.2}
.title a{color:var(--fg);text-decoration:none}
.title a:hover{text-decoration:underline}

.meta-line{display:flex;flex-wrap:wrap;gap:6px;color:var(--muted);font-size:13px}
.meta-line .dot{opacity:.6}
.meta-item{white-space:nowrap}

.snippet{margin:2px 0 0;color:#324256;font-size:14px;line-height:1.35}

.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.chip{background:var(--chip);border:1px solid #dbeafe;color:#1e3a8a;padding:3px 8px;border-radius:999px;font-size:12px}

.actions{display:grid;align-content:start}
.btn-sm{height:34px;padding:0 12px;border-radius:8px;font-size:14px}

@media (max-width:760px){
  .result{grid-template-columns:56px 1fr;gap:10px}
  .thumb{width:56px;height:56px;border-radius:10px}
  .actions{grid-column:1/-1;justify-content:start;margin-top:6px}
}

/* Hinweis über Liste (Sponsored first) */
.results-hint{margin:6px 0 10px;font-size:13px;color:var(--muted)}

/* ---------- Tables (Admin) ---------- */
.table{width:100%;border-collapse:collapse;background:#fff}
.table th,.table td{border:1px solid var(--bd);padding:8px;vertical-align:top}
.table th{background:#f1f5f9;text-align:left;color:#32455a}

/* ---------- Alerts ---------- */
.alert{padding:10px 12px;border-radius:12px;border:1px solid var(--bd);background:#f8fafc;color:#1f2937}
.alert-ok{border-color:rgba(34,197,94,.35);background:#eefcf3}
.alert-warn{border-color:rgba(245,158,11,.35);background:#fff7ea}
.alert-err{border-color:rgba(220,38,38,.35);background:#fff0f0}

/* ---------- Utilities ---------- */
.hidden{display:none!important}
.center{text-align:center}
.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}
.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}
.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}
.round{border-radius:12px}
.shadow{box-shadow:var(--shadow)}

/* ---------- Maps ---------- */
#map, #bizmap{overflow:hidden;border-radius:16px}
.leaflet-container a{color:inherit}

/* ---------- Consent (Banner & Modal) ---------- */
.cns[hidden]{display:none!important}
.cns-banner{
  position:fixed;left:0;right:0;bottom:0;z-index:99998;background:#0b1320;color:#fff;padding:12px 16px
}
.cns-banner .cns-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:12px}
.cns-banner a{color:#93c5fd}
.cns-banner .cns-actions{display:flex;gap:8px;flex-wrap:wrap}

.cns-modal{
  position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;
  background:rgba(15,23,42,.55);pointer-events:auto
}
.cns-modal__card{
  width:min(680px,calc(100% - 24px));max-height:calc(100vh - 24px);overflow:auto;
  background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.25);padding:16px 18px
}
.cns-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.cns-modal__close{border:0;background:transparent;font-size:24px;line-height:1;cursor:pointer}
.cns-form .cns-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;margin:8px 0}
.cns-fineprint{font-size:.9rem;color:#6b7280}
/* Sichtbare, barrierearme Farben pro Tier */
  .pill { display:inline-flex; align-items:center; gap:6px; padding:3px 10px;
          border-radius:999px; border:1px solid transparent; font-size:12px; font-weight:700; vertical-align:middle }
  .pill--sponsored { margin-left:.35rem }

  .pill--silver   { background:linear-gradient(135deg,#f3f5f8,#e5e9f1); color:#1f2a3b; border-color:#cfd6e3 }
  .pill--platinum { background:linear-gradient(135deg,#eaf1ff,#d5e5ff); color:#14203b; border-color:#9db6ff }
  .pill--gold     { background:linear-gradient(135deg,#ffebad,#ffd56a); color:#5a3a00; border-color:#f3b93c }

  /* Karten-Akzent je Tier — dezent aber spürbar */
  .result { position:relative }
  .result.tier--silver   { border-color:#dfe5ef }
  .result.tier--platinum { border-color:#cfe0ff; box-shadow:0 8px 24px rgba(32,64,160,.10) }
  .result.tier--gold     { border-color:#f3d08a; box-shadow:0 10px 28px rgba(160,120,32,.16) }

  /* schmale Farbkante links (unterstützt Orientierung) */
  .result.tier--silver::before,
  .result.tier--platinum::before,
  .result.tier--gold::before{
    content:""; position:absolute; left:0; top:0; bottom:0; width:4px; border-radius:14px 0 0 14px;
  }
  .result.tier--silver::before   { background:#cfd6e3 }
  .result.tier--platinum::before { background:#9db6ff }
  .result.tier--gold::before     { background:#f3b93c }

  /* Hinweis-Zeile über Ergebnissen */
  .results-hint{
    display:flex; flex-wrap:wrap; align-items:center; gap:10px;
    margin:6px 0 10px; font-size:13px; color:var(--muted,#5b6b7f);
  }
  .legend { display:flex; gap:8px; align-items:center; flex-wrap:wrap }
  .legend .dot{ width:10px; height:10px; border-radius:50%; display:inline-block; vertical-align:-2px }
  .dot.gold{ background:#f3b93c; border:1px solid #e3a726 }
  .dot.platinum{ background:#9db6ff; border:1px solid #7aa0ff }
  .dot.silver{ background:#cfd6e3; border:1px solid #b8c2d1 }

  /* ===== Leistungen (Cards) nur sichtbar bei Gold ===== */
  .svc-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:10px }
  @media (max-width:980px){ .svc-grid{ grid-template-columns:repeat(2,1fr) } }
  @media (max-width:640px){ .svc-grid{ grid-template-columns:1fr } }

  .svc-card{
    border:1px solid var(--bd,#e6eaf2);
    background:#fff;
    border-radius:14px;
    padding:12px;
    box-shadow:0 10px 26px rgba(2,6,23,.06);
    transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
    display:grid; gap:8px;
    min-height: 110px;
  }
  .svc-card:hover{ transform:translateY(-2px); box-shadow:0 16px 34px rgba(2,6,23,.12); border-color:#d7e2f0 }

  .svc-head{ display:flex; align-items:center; gap:10px }
  .svc-ic{
    width:34px; height:34px; border-radius:10px;
    background:#f5f8ff; border:1px solid #dbe6ff;
    display:grid; place-items:center; font-size:16px; color:#1e40af;
    flex:0 0 34px;
  }
  .svc-title{ margin:0; font-size:1rem; line-height:1.25; color:#0f172a }
  .svc-desc{ margin:0; color:#324256; font-size:.95rem; line-height:1.35 }

  /* Gold etwas „wärmer“ akzentuieren */
  body.tier--gold .svc-card{ border-color:#f3d08a; box-shadow:0 12px 28px rgba(160,120,32,.12) }
  body.tier--gold .svc-ic{ background:#fff7e1; border-color:#f3d08a; color:#7a5200 }

.cat-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(220px,1fr));
  gap:14px;
}
@media (max-width:1100px){ .cat-grid{ grid-template-columns:repeat(3,1fr) } }
@media (max-width:720px){  .cat-grid{ grid-template-columns:repeat(2,1fr) } }

.cat-card{
  display:grid; grid-template-rows: 1fr auto; gap:8px;
  padding:10px; border:1px solid #e5e7eb; border-radius:16px; background:#fff;
  box-shadow:0 6px 16px rgba(2,6,23,.06); text-decoration:none; color:inherit;
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.cat-card:hover{ transform:translateY(-2px); box-shadow:0 12px 28px rgba(2,6,23,.10); border-color:#dbeafe; }
.cat-img{ width:100%; height:140px; object-fit:cover; border-radius:12px; border:1px solid #e5e7eb; background:#f8fafc; }
.cat-name{ font-size:0.95rem; color:#0f172a; }

  /* === Ergebnisliste responsiv === */
  #results.result-list{
    display:grid;
    gap:12px;
  }

  /* Karte / Zeile */
  #results .result{
    display:grid;
    grid-template-columns: 96px 1fr 120px; /* Thumb | Info | Actions */
    gap:12px;
    align-items:flex-start;
    border:1px solid var(--bd, #e5e7eb);
    border-radius:14px;
    background:#fff;
    padding:12px;
    box-shadow:var(--shadow, 0 6px 14px rgba(2,6,23,.06));
  }

  /* Thumb */
  #results .thumb{
    width:96px;height:96px; border-radius:12px; overflow:hidden;
    background:#f1f5f9; display:block; border:1px solid var(--bd, #e5e7eb);
  }

  #results .thumb__initial{
    width:100%; height:100%;
    display:grid; place-items:center;
    font-weight:800; font-size:28px; color:#334155; background:#eaf2ff;
  }

  /* Info */
  #results .info{min-width:0;}
  #results .title{margin:0 0 4px; font-size:1.125rem; line-height:1.25;}
  #results .title a{color:#0f172a; text-decoration:none;}
  #results .meta-line{display:flex; flex-wrap:wrap; gap:6px; color:#475569; font-size:.95rem;}
  #results .snippet{margin:.25rem 0 0; color:#334155;}
  #results .chips{display:flex; flex-wrap:wrap; gap:6px; margin-top:6px;}
  #results .chip{background:#eff6ff; border:1px solid #dbeafe; color:#1e3a8a; padding:2px 8px; border-radius:999px; font-size:.8rem;}

  /* Actions */
  #results .actions{display:flex; justify-content:flex-end; align-items:flex-start;}
  #results .btn-sm{height:34px; padding:0 12px; border-radius:8px;}

  /* Sponsoring-Pill */
  .pill.pill--sponsored{margin-left:.35rem; padding:2px 8px; border-radius:999px; font-size:.75rem; font-weight:700; border:1px solid #e5e7eb;}
  .pill--gold{background:linear-gradient(135deg,#ffe9a8,#ffd56a); color:#5a3a00; border-color:#f3b93c}
  .pill--platinum{background:linear-gradient(135deg,#eef3ff,#dbe7ff); color:#1e2a48; border-color:#9db6ff}
  .pill--silver{background:linear-gradient(135deg,#f5f7fa,#e6eaf1); color:#263040; border-color:#cfd6e3}

  /* Hinweiszeile */
  .results-hint{display:flex; gap:8px; align-items:center; font-size:.9rem; color:#475569; margin-bottom:6px;}
  .results-hint .legend{display:inline-flex; gap:10px; align-items:center;}
  .results-hint .dot{width:10px; height:10px; border-radius:999px; display:inline-block; border:1px solid rgba(0,0,0,.08); vertical-align:middle; margin-right:4px}
  .results-hint .dot.gold{background:#f3b93c}
  .results-hint .dot.platinum{background:#9db6ff}
  .results-hint .dot.silver{background:#cfd6e3}

  /* === Breakpoints === */
  /* Tablet & kleine Laptops: Actions unter die Info */
  @media (max-width: 900px){
    #results .result{
      grid-template-columns: 80px 1fr; /* Thumb | Info */
    }
    #results .thumb{width:80px; height:80px;}
    #results .actions{
      grid-column: 1 / -1; /* volle Breite */
      justify-content:flex-start;
      margin-top:6px;
    }
  }
  /* Mobil: kompakter */
  @media (max-width: 560px){
    #results .result{
      grid-template-columns: 72px 1fr;
      padding:10px;
      gap:10px;
    }
    #results .thumb{width:72px; height:72px;}
    #results .title{font-size:1rem;}
    #results .snippet{font-size:.95rem;}
  }

  /* Sicherstellen, dass nichts anderes das Layout kaputtmacht */
  @media (max-width: 560px){
    .container, .result-list{width:100%;}
    .result-list .result *{min-width:0;}
  }
/* Kategorien in der Meta-Zeile sauber kürzen */
#results .meta-line{ min-width:0 }
#results .meta-cat{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:100%;
}

/* Auf sehr kleinen Screens Kategorien komplett ausblenden */
@media (max-width:560px){
  #results .meta-cat{ display:none }
  #results .meta-line .dot:first-of-type{ display:none }
}
/* Ergebniskarte Grundlayout (falls noch nicht vorhanden) */
.result {
  display: grid;
  grid-template-columns: 96px 1fr auto; /* thumb | info | actions */
  gap: 12px;
  align-items: start;
}

/* Thumb-Container: fixe Box, Zentrum, overflow hidden */
.result .thumb {
  width: 96px;
  height: 96px;
  flex: 0 0 96px;
  border-radius: 12px;
  background: #fff;              /* neutrale Fläche hinter PNGs mit Transparenz */
  box-shadow: 0 0 0 1px rgba(0,0,0,.06) inset;
  display: grid;
  place-items: center;
  overflow: hidden;
}

/* Bild passt sich an Box an, behält Seitenverhältnis */
.result .thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;           /* WICHTIG: in Box einpassen */
  object-position: center;
 
}

/* Fallback-Buchstabe, wenn kein Logo vorhanden ist */
.result .thumb__initial {
  width: 96px;
  height: 96px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #f6f7fb;
  color: #334155;
  font-weight: 800;
  font-size: 28px;
}

/* Mobile: etwas kleiner */
@media (max-width: 640px) {
  .result { grid-template-columns: 72px 1fr auto; }
  .result .thumb,
  .result .thumb__initial { width: 72px; height: 72px; }
}
    /* ===== Tier-Design: abgestufte Hervorhebung ===== */
    .tier--silver   .hero__overlay::after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:linear-gradient(90deg,#cfd6e3,#e6eaf1)}
    .tier--platinum .hero__overlay::after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:linear-gradient(90deg,#9db6ff,#dbe7ff)}
    .tier--gold     .hero__overlay::after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:linear-gradient(90deg,#f3b93c,#ffd56a)}
    .pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:700}
    .pill--none{background:#f1f5f9;color:#475569;border-color:#e2e8f0}
    .pill--silver{background:linear-gradient(135deg,#f5f7fa,#e6eaf1);color:#263040;border-color:#cfd6e3}
    .pill--platinum{background:linear-gradient(135deg,#eef3ff,#dbe7ff);color:#1e2a48;border-color:#9db6ff}
    .pill--gold{background:linear-gradient(135deg,#ffe9a8,#ffd56a);color:#5a3a00;border-color:#f3b93c}
    .hero .meta-line{display:flex;flex-wrap:wrap;gap:8px;color:#e7eefc}
    .card{border:1px solid var(--bd);border-radius:16px;background:#fff;box-shadow:var(--shadow,0 12px 28px rgba(0,0,0,.08));padding:16px 18px}
    .card--tier{position:relative}
    .tier--silver   .card--tier{border-color:#dfe5ef;box-shadow:0 10px 26px rgba(44,62,80,.08)}
    .tier--platinum .card--tier{border-color:#cfe0ff;box-shadow:0 12px 28px rgba(32,64,160,.10)}
    .tier--gold     .card--tier{border-color:#f3d08a;box-shadow:0 14px 34px rgba(160,120,32,.16)}
    .btn{height:40px;padding:0 14px;border-radius:10px;display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;text-decoration:none}
    .btn-cta{background:linear-gradient(180deg,var(--pri,#2563eb),var(--pri-2,#1e40af));color:#fff}
    .btn-outline{background:#fff;color:#1e3a8a;border:1px solid #c7d2fe}
    .tier--platinum .btn-cta{box-shadow:0 10px 22px rgba(29,78,216,.20)}
    .tier--gold .btn-cta{background:linear-gradient(180deg,#eab308,#f59e0b);box-shadow:0 12px 26px rgba(234,179,8,.28)}
    .info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}
    .info-row{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--bd);background:#fff;border-radius:12px;padding:10px}
    .ic{width:18px;height:18px;flex:0 0 18px;color:#3b6ea8}
    .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
    .chip{background:#eff6ff;border:1px solid #dbeafe;color:#1e3a8a;padding:4px 8px;border-radius:999px;font-size:12px}
    .direct-card { display:grid; gap:10px }
    .copy-btn { height:34px; padding:0 10px; border-radius:8px; border:1px solid #dbeafe; background:#f8fbff; cursor:pointer }
    .copy-btn:hover { background:#eef6ff }
    @media (max-width:760px){ .sticky-cta{ position:sticky; bottom:8px; z-index:50; display:flex; gap:8px; justify-content:space-between; background:rgba(255,255,255,.9); backdrop-filter:blur(6px); padding:8px; border:1px solid #e5e7eb; border-radius:12px; box-shadow:0 8px 22px rgba(0,0,0,.10) } }
    @media (max-width:720px){.info-grid{grid-template-columns:1fr}}
    .svc-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:10px }
    @media (max-width:980px){ .svc-grid{ grid-template-columns:repeat(2,1fr) } }
    @media (max-width:640px){ .svc-grid{ grid-template-columns:1fr } }
    .svc-card{ border:1px solid var(--bd,#e6eaf2); background:#fff; border-radius:14px; padding:12px; box-shadow:0 10px 26px rgba(2,6,23,.06); transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease; display:grid; gap:8px; min-height:110px; }
    .svc-card:hover{ transform:translateY(-2px); box-shadow:0 16px 34px rgba(2,6,23,.12); border-color:#d7e2f0 }
    .svc-head{ display:flex; align-items:center; gap:10px }
    .svc-ic{ width:34px; height:34px; border-radius:10px; background:#f5f8ff; border:1px solid #dbe6ff; display:grid; place-items:center; font-size:16px; color:#1e40af; flex:0 0 34px; }
    .svc-title{ margin:0; font-size:1rem; line-height:1.25; color:#0f172a }
    .svc-desc{ margin:0; color:#324256; font-size:.95rem; line-height:1.35 }
    body.tier--gold .svc-card{ border-color:#f3d08a; box-shadow:0 12px 28px rgba(160,120,32,.12) }
    body.tier--gold .svc-ic{ background:#fff7e1; border-color:#f3d08a; color:#7a5200 }
    .subtitle{color:#324256}
	/* Einheitliche Logo-Box für die Header-Card */
.biz-logo{
  width:112px; height:112px;
  border-radius:16px;
  background:#fff;                 /* neutrale Fläche hinter transparenten PNGs */
  border:1px solid var(--bd,#e5e7eb);
  display:grid; place-items:center;
  overflow:hidden;
  box-shadow:0 0 0 1px rgba(0,0,0,.04) inset;
}
.biz-logo img{
  width:100%; height:100%;
  object-fit:contain;               
  object-position:center;
}
.biz-logo--initial{
  font-weight:900; font-size:32px; color:#334155;
  background:linear-gradient(135deg,#eaf2ff,#dfeaff);
}

/* Wer’s etwas kompakter mag:
@media (max-width:640px){
  .biz-logo{ width:96px; height:96px; border-radius:14px; }
}
*/

/* Card-Inhalt darf schrumpfen (wichtig bei Grid!) */
.result .info { min-width: 0; }

/* Titel schöner umbrechen */
.result .title{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;      /* Pill darf in nächste Zeile */
}

/* Meta & Snippet sauber begrenzen */
.result .meta-line{ min-width:0; }
.result .meta-cat{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width: 52ch;     /* anpassen */
}

/* Snippet als 2 Zeilen Clamp (wirkt sofort “professioneller”) */
.result .snippet{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Chips nicht “endlos hoch” (optional) */
.result .chips{ max-height: 64px; overflow:hidden; }

/* ---------- SEO Bridge / Brand-Verknuepfung ---------- */
.seo-bridge{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  padding:18px 20px;
  margin:-8px 0 18px;
  border-radius:20px;
  background:linear-gradient(135deg,#ffffff 0%,#eef6ff 100%);
}
.seo-bridge h2{margin:2px 0 6px;font-size:clamp(1.15rem,2vw,1.65rem);letter-spacing:-.02em}
.seo-bridge p{margin:0;color:#334155;max-width:820px}
.eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2563eb;margin:0 0 4px!important}
.bridge-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:760px){.seo-bridge{grid-template-columns:1fr}.bridge-actions{justify-content:flex-start}}

/* ---------- Landing Hausverwaltung ---------- */
.landing-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:18px;align-items:stretch;margin:16px 0 18px}
.landing-panel{padding:28px;border-radius:24px;background:linear-gradient(135deg,#0f3f9e 0%,#2563eb 100%);color:#fff;box-shadow:var(--shadow)}
.landing-panel h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.04;margin:8px 0 12px;color:#fff;letter-spacing:-.04em}
.landing-panel p{color:#eaf1ff;font-size:1.05rem;max-width:760px}
.landing-card{padding:22px;border-radius:24px;background:#fff;border:1px solid var(--bd);box-shadow:var(--shadow)}
.landing-points{display:grid;gap:10px;margin:16px 0 0;padding:0;list-style:none}.landing-points li{display:flex;gap:10px;align-items:flex-start;color:#172033}.landing-points li:before{content:'✓';display:inline-grid;place-items:center;width:22px;height:22px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:900;flex:0 0 22px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}.feature-card{padding:16px;border-radius:18px;background:#fff;border:1px solid var(--bd);box-shadow:var(--shadow)}.feature-card h3{margin:0 0 6px}.feature-card p{margin:0;color:var(--muted)}
.workflow-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.workflow-step{padding:14px;border-radius:16px;background:#f8fafc;border:1px solid var(--bd)}.workflow-step strong{display:block;color:#0f3f9e;margin-bottom:4px}
@media (max-width:900px){.landing-hero{grid-template-columns:1fr}.feature-grid,.workflow-strip{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.feature-grid,.workflow-strip{grid-template-columns:1fr}.landing-panel{padding:22px}}

/* =========================================================
   V5.3.63 – Business/SEO UI, breite Darstellung, mobile Navigation
   ========================================================= */
:root{
  --hp-navy:#0b1f3a;
  --hp-blue:#1455d9;
  --hp-blue-2:#0f3fa3;
  --hp-soft:#f4f7fb;
  --hp-text:#0f172a;
  --hp-muted:#5b667a;
  --hp-line:#dbe3ef;
}
body{background:linear-gradient(180deg,#f7f9fc 0%,#edf2f8 100%);color:var(--hp-text)}
.container{max-width:1280px;width:100%;padding:18px clamp(14px,2.4vw,34px)}
.page-shell{padding-top:18px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(219,227,239,.9)}
.site-header__inner{max-width:1320px;margin:0 auto;padding:12px clamp(14px,2.4vw,34px);display:flex;align-items:center;gap:18px;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--hp-navy)}
.brand__mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--hp-navy),var(--hp-blue));color:#fff;font-weight:900;letter-spacing:.04em;box-shadow:0 10px 24px rgba(20,85,217,.18)}
.brand strong{display:block;font-size:1rem;line-height:1.1;letter-spacing:-.02em}.brand small{display:block;color:var(--hp-muted);font-size:.78rem;margin-top:2px}
.site-nav{display:flex;align-items:center;gap:6px}.site-nav a{padding:10px 12px;border-radius:11px;text-decoration:none;color:#22314b;font-weight:650;font-size:.94rem}.site-nav a:hover{background:#eef4ff;color:var(--hp-blue-2)}.site-nav .nav-cta{background:linear-gradient(180deg,var(--hp-blue),var(--hp-blue-2));color:#fff;padding-inline:16px}.site-nav .nav-cta:hover{background:linear-gradient(180deg,var(--hp-blue),var(--hp-blue-2));color:#fff}
.nav-toggle{display:none;border:1px solid var(--hp-line);background:#fff;border-radius:12px;height:42px;padding:0 12px;align-items:center;gap:8px;color:var(--hp-navy);font-weight:750}.nav-toggle span{display:block;width:18px;height:2px;background:currentColor;border-radius:999px;margin:3px 0}.nav-toggle b{font-size:.84rem}
.hero{border-radius:24px;margin-top:14px}.hero--image picture,.hero--image img{height:420px}.hero__overlay{background:linear-gradient(90deg,rgba(7,21,42,.88),rgba(7,21,42,.62) 48%,rgba(7,21,42,.22));justify-content:center;padding:clamp(22px,4vw,54px)}.hero__title{font-size:clamp(2rem,4.2vw,4rem);line-height:1.04;letter-spacing:-.045em;max-width:850px}.hero__sub{font-size:clamp(1rem,1.55vw,1.22rem);max-width:780px;color:#e8eefb}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:900;color:#315a9e;margin:0 0 8px}.hero-eyebrow{color:#bfdbfe}.hero__badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 4px}.hero__badges span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.20);color:#fff;border-radius:999px;padding:6px 10px;font-size:.84rem;font-weight:700}
.hero__search{border:1px solid rgba(255,255,255,.40);background:rgba(255,255,255,.94);box-shadow:0 24px 60px rgba(4,13,31,.22);width:min(1060px,100%)}.hero__search input{height:48px}.search__submit{height:48px;white-space:nowrap;padding-inline:18px}
.business-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;background:#fff;border:1px solid var(--hp-line);border-radius:22px;padding:clamp(18px,2.8vw,32px);box-shadow:0 18px 45px rgba(15,23,42,.07);margin:18px 0 14px}.business-panel h2,.section-head h2{margin:.15rem 0 .45rem;font-size:clamp(1.45rem,2.2vw,2.05rem);letter-spacing:-.03em}.business-panel p,.section-head p{color:#4b5870;max-width:920px}.business-panel__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.flowline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}.flowline span{background:#f5f8fc;border:1px solid var(--hp-line);border-radius:999px;padding:7px 11px;font-weight:800;font-size:.86rem;color:#1f2d48}.flowline i{width:22px;height:1px;background:#9fb0c7;display:block}
.package-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.package-grid .section-head{grid-column:1/-1;background:transparent}.package-card{background:#fff;border:1px solid var(--hp-line);border-radius:18px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.055);display:flex;flex-direction:column;gap:8px}.package-card strong{font-size:1.04rem;color:var(--hp-navy)}.package-card p{color:#566176;margin:0;line-height:1.45}.package-card a{margin-top:auto;color:var(--hp-blue-2);font-weight:800;text-decoration:none}.package-card a:hover{text-decoration:underline}
.grid.cat-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.grid.cat-grid .card{padding:12px;border-radius:16px;box-shadow:0 10px 24px rgba(15,23,42,.055)}.grid.cat-grid .card img{height:108px;border-radius:13px}.grid.cat-grid .card strong{font-weight:800;color:#18243a}.cat-card:hover{transform:translateY(-3px);border-color:#bcd0ef}.result{grid-template-columns:84px minmax(0,1fr) auto;border-radius:18px;padding:15px}.thumb{width:84px;height:84px}.result .title{font-size:1.05rem}.btn-cta{background:linear-gradient(180deg,var(--hp-blue),var(--hp-blue-2))}.btn-outline{border-color:#b9c8e5;color:var(--hp-blue-2)}
.footer{padding:24px 0;color:#66758c}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Professional form pages */
.form-page{max-width:1160px;margin:0 auto}.form-hero{background:#fff;border:1px solid var(--hp-line);border-radius:24px;padding:clamp(20px,3vw,36px);box-shadow:0 20px 54px rgba(15,23,42,.075);margin-top:18px}.form-hero h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;letter-spacing:-.045em}.form-hero p{color:#526077;max-width:840px}.form-card{padding:22px!important;border-radius:22px!important}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.form-grid .span-2{grid-column:span 2}.form-grid .span-3{grid-column:1/-1}.secure-note{border:1px solid #cbd5e1;background:#f8fafc;border-radius:16px;padding:13px 15px;color:#334155;font-size:.94rem}.package-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.package-option{border:1px solid var(--hp-line);border-radius:14px;padding:12px;background:#fff}.package-option input{margin-right:6px}.package-option strong{display:block}.package-option small{color:#64748b}
@media (max-width:1080px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.business-panel{grid-template-columns:1fr}.business-panel__actions{justify-content:flex-start}.form-grid,.package-options{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span-2{grid-column:1/-1}}
@media (max-width:760px){
  .site-header__inner{padding:10px 14px}.nav-toggle{display:inline-flex}.nav-toggle span{display:block}.nav-toggle{flex-shrink:0}.nav-toggle b{display:inline}.site-nav{position:absolute;left:12px;right:12px;top:66px;background:#fff;border:1px solid var(--hp-line);border-radius:18px;box-shadow:0 28px 70px rgba(15,23,42,.18);display:none;flex-direction:column;align-items:stretch;padding:8px}.site-header.is-open .site-nav{display:flex}.site-nav a{padding:13px 14px}.site-nav .nav-cta{text-align:center;justify-content:center}.brand small{display:none}.brand__mark{width:38px;height:38px}.container{padding:14px}.hero--image picture,.hero--image img{height:auto;min-height:560px}.hero__overlay{position:absolute;inset:0;padding:20px;background:linear-gradient(180deg,rgba(7,21,42,.92),rgba(7,21,42,.64))}.hero__search{margin-top:6px}.hero__badges span{font-size:.78rem}.az--cities{display:none}.package-grid{grid-template-columns:1fr}.flowline i{display:none}.grid.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cat-grid .card img{height:84px}.result{grid-template-columns:64px minmax(0,1fr);padding:12px}.thumb{width:64px;height:64px}.form-grid,.package-options{grid-template-columns:1fr}.form-card{padding:16px!important}
}
@media (max-width:420px){.grid.cat-grid{grid-template-columns:1fr}.hero__title{font-size:2rem}.hero--image picture,.hero--image img{min-height:620px}.search__submit{width:100%;justify-content:center}.brand strong{font-size:.92rem}.nav-toggle b{display:none}}


/* =========================================================
   V5.3.64 – LIVE-HOTFIX Layout/Sicherheit
   Ziel: keine gequetschten Spalten, klare Business-Darstellung,
   responsive Navigation und saubere mobile Darstellung.
   ========================================================= */
*, *::before, *::after { min-width: 0; }
html { overflow-x: hidden; }
body { overflow-x: hidden; }

.container,
.site-header__inner { width: 100%; }

.business-panel{
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
}
.business-panel > *,
.secure-note,
.package-card,
.result,
.info,
.snippet,
.hero__sub{
  min-width:0;
  overflow-wrap:break-word;
  word-break:normal;
}
.secure-note{
  width:100%;
  max-width:420px;
  justify-self:end;
  line-height:1.5;
}
.business-panel--single,
.business-panel.business-panel--single{
  grid-template-columns:1fr;
}
.business-panel--security,
.business-panel.business-panel--security{
  grid-template-columns:minmax(0,1fr);
  align-items:start;
}
.business-panel--security .secure-note{
  max-width:none;
  justify-self:stretch;
}
.security-grid,
.business-check-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}
.security-card,
.business-check-card{
  background:#f8fafc;
  border:1px solid var(--hp-line,#dbe3ef);
  border-radius:16px;
  padding:15px;
  color:#334155;
  min-width:0;
}
.security-card strong,
.business-check-card strong{
  display:block;
  color:var(--hp-navy,#0b1f3a);
  margin-bottom:5px;
}
.security-card p,
.business-check-card p{
  margin:0;
  color:#526077;
  line-height:1.45;
}

.hero__overlay{ min-width:0; }
.hero__overlay .btn{ white-space:normal; }
.hero__badges span{ max-width:100%; }

.nav-toggle{ cursor:pointer; }
.site-nav{ min-width:0; }
.site-nav a{ white-space:nowrap; }

@media (max-width:1080px){
  .business-panel,
  .business-panel.business-panel--security{
    grid-template-columns:1fr;
  }
  .secure-note{
    max-width:none;
    justify-self:stretch;
  }
  .security-grid,
  .business-check-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:760px){
  .site-header{ position:sticky; }
  .site-header__inner{ gap:10px; }
  .site-nav a{ white-space:normal; }
  .hero{ border-radius:18px; }
  .hero--image picture,
  .hero--image img{
    min-height:0!important;
    height:auto!important;
  }
  .hero.hero--image picture,
  .hero.hero--image img{
    height:640px!important;
  }
  .hero__overlay{
    padding:18px;
    gap:10px;
  }
  .hero__title{
    font-size:clamp(1.9rem,9vw,2.6rem);
    line-height:1.08;
  }
  .hero__sub{ font-size:1rem; }
  .business-panel,
  .package-card,
  .form-hero,
  .form-card{
    border-radius:18px!important;
  }
  .business-panel{ padding:18px; }
  .security-grid,
  .business-check-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:420px){
  .container{ padding:12px; }
  .hero.hero--image picture,
  .hero.hero--image img{ height:700px!important; }
  .hero__badges{ gap:6px; }
  .hero__badges span{ font-size:.75rem; }
  .business-panel__actions .btn{ width:100%; justify-content:center; }
}

/* V5.3.65 live clean: professional product sections */
.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.module-grid .section-head{grid-column:1/-1}.module-card{background:#fff;border:1px solid var(--hp-line,#dbe3ef);border-radius:18px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.055)}.module-card h3{margin:.05rem 0 .45rem;font-size:1.05rem;color:var(--hp-navy,#0b1f3a);letter-spacing:-.015em}.module-card p{margin:0;color:#566176;line-height:1.5}.cta-panel{background:linear-gradient(180deg,#fff,#f8fbff)}.faq-section{background:#fff;border:1px solid var(--hp-line,#dbe3ef);border-radius:22px;padding:clamp(18px,2.8vw,30px);box-shadow:0 18px 45px rgba(15,23,42,.06);margin:18px 0}.faq-item{border:1px solid #e2e8f0;border-radius:14px;padding:0 14px;margin-top:10px;background:#fff}.faq-item summary{cursor:pointer;font-weight:850;color:#0b1f3a;padding:13px 0}.faq-item p{margin:0 0 13px;color:#526077}.hero__badges span{white-space:normal}.package-card small,.module-card small{color:#64748b;font-size:.86rem;line-height:1.35}.section-head{max-width:1050px}@media (max-width:1080px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.module-grid{grid-template-columns:1fr}.faq-section{border-radius:18px}.hero__title{font-size:clamp(2rem,11vw,3.1rem)}.hero__sub{font-size:1rem}.business-panel__actions .btn{width:100%;justify-content:center;text-align:center}.package-card,.module-card{padding:16px}}


/* ---------- Betriebly Integration Highlight ---------- */
.betriebly-bridge{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.42fr);gap:18px;align-items:stretch;margin:18px 0;background:linear-gradient(135deg,#07152a,#0b2e68 55%,#0b5fff);color:#fff;border-radius:26px;padding:clamp(20px,3vw,34px);box-shadow:0 24px 70px rgba(11,46,104,.22);overflow:hidden;position:relative}.betriebly-bridge:before{content:"";position:absolute;inset:-40% -20% auto auto;width:420px;height:420px;background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,255,255,0) 65%);pointer-events:none}.betriebly-bridge>*{position:relative}.betriebly-bridge .eyebrow{color:#bfdbfe}.betriebly-bridge h2{margin:.15rem 0 .55rem;font-size:clamp(1.75rem,3vw,2.55rem);letter-spacing:-.04em;line-height:1.06}.betriebly-lead{max-width:980px;color:#e8eefb;font-size:1.02rem;line-height:1.62}.betriebly-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.betriebly-points div{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:14px}.betriebly-points strong{display:block;margin-bottom:5px;color:#fff}.betriebly-points span{display:block;color:#dbeafe;font-size:.94rem;line-height:1.45}.betriebly-bridge__card{background:rgba(255,255,255,.96);color:#0b1f3a;border:1px solid rgba(255,255,255,.55);border-radius:22px;padding:20px;box-shadow:0 24px 60px rgba(4,13,31,.20);display:flex;flex-direction:column;gap:10px}.betriebly-bridge__card strong{font-size:1.2rem;letter-spacing:-.025em}.betriebly-bridge__card p{color:#4b5870;margin:0 0 4px}.package-card--highlight{border-color:#93c5fd!important;background:linear-gradient(180deg,#fff,#f0f7ff)!important;box-shadow:0 18px 48px rgba(11,95,255,.11)!important}.package-card--highlight strong{color:#0b5fff}@media (max-width:980px){.betriebly-bridge{grid-template-columns:1fr}.betriebly-points{grid-template-columns:1fr}.betriebly-bridge__card .btn{width:100%;justify-content:center}}

/* V5.3.68: echtes Betriebly als eigenes Betriebsportal deutlicher darstellen */
.betriebly-points--wide{grid-template-columns:repeat(4,minmax(0,1fr));}
@media (max-width:1180px){.betriebly-points--wide{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:720px){.betriebly-points--wide{grid-template-columns:1fr;}}

/* V5.3.70: Startseite entlasten, Dienstleistersuche vorne, echte Betriebly-Werbung als Karten */
@media (min-width:1300px){
  .container{max-width:1560px;}
  .hero__title{max-width:980px;}
  .hero__sub{max-width:900px;}
}
.front-focus{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:18px;
  align-items:stretch;
  margin:18px 0;
}
.front-focus__main{
  background:#fff;
  border:1px solid var(--hp-line,#dbe3ef);
  border-radius:26px;
  padding:clamp(20px,3vw,34px);
  box-shadow:0 18px 48px rgba(15,23,42,.07);
  min-width:0;
}
.front-focus__main h2{
  margin:.15rem 0 .55rem;
  font-size:clamp(1.75rem,2.8vw,2.9rem);
  line-height:1.06;
  letter-spacing:-.045em;
  color:var(--hp-navy,#0b1f3a);
}
.front-focus__main p{
  max-width:780px;
  margin:0;
  color:#526077;
  font-size:1.02rem;
  line-height:1.58;
}
.front-focus__actions,
.betriebly-clean__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px;
}
.front-focus__tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}
.front-focus__tags a{
  text-decoration:none;
  color:#0b2e68;
  background:#f1f6ff;
  border:1px solid #dbe8ff;
  border-radius:999px;
  padding:7px 11px;
  font-weight:800;
  font-size:.9rem;
}
.front-focus__side{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  min-width:0;
}
.front-tile{
  display:flex;
  flex-direction:column;
  gap:8px;
  text-decoration:none;
  background:#fff;
  border:1px solid var(--hp-line,#dbe3ef);
  border-radius:22px;
  padding:18px;
  box-shadow:0 18px 48px rgba(15,23,42,.065);
  min-width:0;
  color:#0b1f3a;
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.front-tile:hover{
  transform:translateY(-2px);
  box-shadow:0 22px 58px rgba(15,23,42,.10);
  border-color:#bfdbfe;
}
.front-tile small{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.7rem;
  font-weight:900;
  color:#315a9e;
}
.front-tile strong{
  font-size:1.08rem;
  line-height:1.18;
  letter-spacing:-.02em;
}
.front-tile span{
  color:#566176;
  line-height:1.45;
  font-size:.94rem;
}
.front-tile b{
  margin-top:auto;
  color:#0b5fff;
  font-size:.92rem;
}
.front-tile--strong{
  background:linear-gradient(135deg,#07152a,#0b2e68 58%,#0b5fff);
  color:#fff;
  border-color:rgba(255,255,255,.18);
}
.front-tile--strong small{color:#bfdbfe;}
.front-tile--strong span{color:#dbeafe;}
.front-tile--strong b{color:#fff;}
.betriebly-clean{
  display:grid;
  grid-template-columns:minmax(320px,.56fr) minmax(0,1fr);
  gap:16px;
  align-items:stretch;
  margin:18px 0;
  background:linear-gradient(180deg,#fff,#f8fbff);
  border:1px solid var(--hp-line,#dbe3ef);
  border-radius:26px;
  padding:clamp(18px,2.6vw,30px);
  box-shadow:0 18px 48px rgba(15,23,42,.06);
}
.betriebly-clean__intro{min-width:0;}
.betriebly-clean h2{
  margin:.15rem 0 .55rem;
  font-size:clamp(1.5rem,2.4vw,2.35rem);
  line-height:1.08;
  letter-spacing:-.04em;
  color:var(--hp-navy,#0b1f3a);
}
.betriebly-clean p{margin:0;color:#526077;line-height:1.58;}
.betriebly-clean__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.betriebly-clean__grid div{
  background:#fff;
  border:1px solid #dbe3ef;
  border-radius:18px;
  padding:15px;
  min-width:0;
}
.betriebly-clean__grid strong{
  display:block;
  color:#0b1f3a;
  margin-bottom:4px;
  letter-spacing:-.015em;
}
.betriebly-clean__grid span{
  display:block;
  color:#566176;
  line-height:1.42;
  font-size:.93rem;
}
@media (max-width:1180px){
  .front-focus{grid-template-columns:1fr;}
  .front-focus__side{grid-template-columns:repeat(3,minmax(0,1fr));}
  .betriebly-clean{grid-template-columns:1fr;}
}
@media (max-width:860px){
  .front-focus__side,
  .betriebly-clean__grid{grid-template-columns:1fr;}
  .front-focus__actions .btn,
  .betriebly-clean__actions .btn{width:100%;justify-content:center;text-align:center;}
}
@media (max-width:520px){
  .front-focus__main,
  .front-tile,
  .betriebly-clean{border-radius:18px;}
  .front-focus__main{padding:18px;}
}

/* V5.3.71: Startseite neu strukturiert – links Kacheln, Mitte Dienstleistersuche, rechts Betriebly-Kacheln, volle Breite */
.page-shell--home{
  max-width:none!important;
  width:100%!important;
  padding-left:clamp(14px,2.2vw,44px)!important;
  padding-right:clamp(14px,2.2vw,44px)!important;
}
.page-shell--home .breadcrumbs{
  max-width:1760px;
  margin-left:auto;
  margin-right:auto;
}
.page-shell--home .hero,
.page-shell--home .home-board,
.page-shell--home .betriebly-strip,
.page-shell--home .package-grid,
.page-shell--home .card,
.page-shell--home .cat-grid,
.page-shell--home .result-list,
.page-shell--home .pagination{
  max-width:1760px;
  margin-left:auto;
  margin-right:auto;
}
.page-shell--home .hero{
  margin-top:12px;
  margin-bottom:18px;
  border-radius:24px;
}
.page-shell--home .hero--image picture,
.page-shell--home .hero--image img{
  height:360px!important;
  min-height:0!important;
}
.page-shell--home .hero__overlay{
  padding:clamp(22px,3.2vw,46px);
  background:linear-gradient(90deg,rgba(7,21,42,.90),rgba(7,21,42,.64) 46%,rgba(7,21,42,.18));
  gap:12px;
}
.page-shell--home .hero__title{
  max-width:880px;
  font-size:clamp(2.1rem,4.2vw,4.2rem);
}
.page-shell--home .hero__sub{
  max-width:980px;
  font-size:clamp(1rem,1.35vw,1.18rem);
}
.hero__quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:4px;
}
.hero__btn-light{
  background:rgba(255,255,255,.94)!important;
  color:#0b2e68!important;
  border-color:rgba(255,255,255,.75)!important;
}
.home-board{
  display:grid;
  grid-template-columns:minmax(230px,300px) minmax(520px,1fr) minmax(300px,390px);
  grid-template-areas:"left main right";
  gap:16px;
  align-items:stretch;
  margin:18px 0;
}
.home-board__left{grid-area:left;display:grid;gap:12px;align-content:stretch;min-width:0;}
.home-board__main{grid-area:main;background:#fff;border:1px solid var(--hp-line,#dbe3ef);border-radius:24px;padding:clamp(20px,2.5vw,34px);box-shadow:0 18px 48px rgba(15,23,42,.075);min-width:0;}
.home-board__right{grid-area:right;display:grid;gap:12px;min-width:0;}
.home-board__main h2{
  margin:.15rem 0 .6rem;
  font-size:clamp(1.9rem,3vw,3.25rem);
  line-height:1.04;
  letter-spacing:-.05em;
  color:var(--hp-navy,#0b1f3a);
}
.home-board__main p{
  margin:0;
  color:#526077;
  line-height:1.58;
  font-size:1.02rem;
  max-width:980px;
}
.home-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
  text-decoration:none;
  color:#0b1f3a;
  background:#fff;
  border:1px solid var(--hp-line,#dbe3ef);
  border-radius:22px;
  padding:18px;
  box-shadow:0 16px 42px rgba(15,23,42,.06);
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.home-card:hover{transform:translateY(-2px);box-shadow:0 22px 58px rgba(15,23,42,.10);border-color:#bfdbfe;}
.home-card small{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.7rem;
  font-weight:900;
  color:#315a9e;
}
.home-card strong{
  font-size:1.08rem;
  line-height:1.16;
  letter-spacing:-.02em;
}
.home-card span{color:#566176;line-height:1.45;font-size:.94rem;}
.home-card b{margin-top:auto;color:#0b5fff;font-size:.92rem;}
.home-card--mini{min-height:0;}
.home-card--betriebly{
  color:#fff;
  background:linear-gradient(135deg,#07152a,#0b2e68 58%,#0b5fff);
  border-color:rgba(255,255,255,.16);
}
.home-card--betriebly small{color:#bfdbfe;}
.home-card--betriebly span{color:#dbeafe;}
.home-card--betriebly b{color:#fff;}
.home-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.65fr) auto;
  gap:10px;
  margin-top:20px;
  background:#f8fbff;
  border:1px solid #dbe8ff;
  border-radius:20px;
  padding:12px;
}
.home-search__field{display:flex;flex-direction:column;gap:5px;min-width:0;}
.home-search__field span{font-size:.76rem;font-weight:900;color:#475569;text-transform:uppercase;letter-spacing:.04em;}
.home-search__field input{
  height:50px;
  border:1px solid #d5e0ef;
  border-radius:14px;
  padding:0 14px;
  font-size:1rem;
  width:100%;
  background:#fff;
}
.home-search__submit{height:50px;align-self:end;white-space:nowrap;padding-inline:20px;}
.home-tags,
.home-cities{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.home-tags a,
.home-cities a{
  text-decoration:none;
  color:#0b2e68;
  background:#f1f6ff;
  border:1px solid #dbe8ff;
  border-radius:999px;
  padding:7px 11px;
  font-weight:800;
  font-size:.88rem;
}
.home-cities a{font-size:.82rem;color:#334155;background:#fff;}
.home-cities a[aria-current="page"]{background:#0b5fff;color:#fff;border-color:#0b5fff;}
.betriebly-strip{
  display:grid;
  grid-template-columns:minmax(280px,.42fr) minmax(0,1fr);
  gap:16px;
  align-items:center;
  margin:18px 0;
  background:#fff;
  border:1px solid var(--hp-line,#dbe3ef);
  border-radius:24px;
  padding:clamp(18px,2vw,26px);
  box-shadow:0 18px 46px rgba(15,23,42,.055);
}
.betriebly-strip__text h2{
  margin:.12rem 0 0;
  font-size:clamp(1.35rem,2.1vw,2.2rem);
  line-height:1.08;
  letter-spacing:-.04em;
  color:var(--hp-navy,#0b1f3a);
}
.betriebly-strip__items{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.betriebly-strip__items span{
  background:#eef5ff;
  border:1px solid #d8e8ff;
  color:#0b2e68;
  border-radius:999px;
  padding:8px 11px;
  font-weight:850;
  font-size:.88rem;
}
.page-shell--home .package-grid{grid-template-columns:repeat(5,minmax(0,1fr));}
@media (max-width:1380px){
  .home-board{grid-template-columns:minmax(210px,270px) minmax(420px,1fr) minmax(280px,340px);gap:14px;}
  .page-shell--home .package-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:1160px){
  .home-board{grid-template-columns:1fr 1fr;grid-template-areas:"main main" "left right";}
  .home-board__left{grid-template-columns:repeat(3,minmax(0,1fr));}
  .betriebly-strip{grid-template-columns:1fr;}
  .betriebly-strip__items{justify-content:flex-start;}
  .page-shell--home .package-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
  .page-shell--home{padding-left:12px!important;padding-right:12px!important;}
  .page-shell--home .hero--image picture,
  .page-shell--home .hero--image img{height:480px!important;}
  .page-shell--home .hero__overlay{padding:18px;background:linear-gradient(180deg,rgba(7,21,42,.94),rgba(7,21,42,.68));}
  .page-shell--home .hero__title{font-size:clamp(2rem,9vw,2.9rem);}
  .hero__quick-actions .btn{width:100%;justify-content:center;text-align:center;}
  .home-board{grid-template-columns:1fr;grid-template-areas:"main" "left" "right";gap:12px;}
  .home-board__left{grid-template-columns:1fr;}
  .home-search{grid-template-columns:1fr;}
  .home-search__submit{width:100%;justify-content:center;}
  .home-board__main,.home-card,.betriebly-strip{border-radius:18px;padding:16px;}
  .home-cities{display:none;}
  .page-shell--home .package-grid{grid-template-columns:1fr;}
}

/* V5.3.72: Startseite live sauberer – unten ebenfalls links/main/rechts, keine sperrige Paket-Ueberschrift */
.page-shell--home .hero,
.page-shell--home .home-board,
.page-shell--home .home-lower-board,
.page-shell--home .card,
.page-shell--home .cat-grid,
.page-shell--home .result-list,
.page-shell--home .pagination{
  max-width:none!important;
  width:100%!important;
}
.page-shell--home .betriebly-strip,
.page-shell--home .package-grid{display:none!important;}
.home-lower-board{
  display:grid;
  grid-template-columns:minmax(230px,300px) minmax(520px,1fr) minmax(300px,390px);
  grid-template-areas:"left main right";
  gap:16px;
  align-items:stretch;
  margin:18px 0;
}
.home-lower-board__left{grid-area:left;display:grid;gap:12px;align-content:stretch;min-width:0;}
.home-lower-board__right{grid-area:right;display:grid;gap:12px;align-content:stretch;min-width:0;}
.home-lower-board__main{
  grid-area:main;
  min-width:0;
  background:linear-gradient(135deg,#07152a,#0b2e68 58%,#0b5fff);
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px;
  padding:clamp(20px,2.5vw,34px);
  box-shadow:0 22px 62px rgba(11,46,104,.18);
  overflow:hidden;
}
.home-lower-board__main .eyebrow{color:#bfdbfe!important;}
.home-lower-board__main h2{
  margin:.12rem 0 .65rem;
  color:#fff;
  font-size:clamp(1.8rem,2.8vw,3rem);
  line-height:1.05;
  letter-spacing:-.05em;
  max-width:960px;
}
.home-lower-board__main p{
  margin:0;
  color:#e6efff;
  line-height:1.6;
  font-size:1.02rem;
  max-width:1120px;
}
.home-product-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}
.home-product-tags span{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  border-radius:999px;
  padding:8px 11px;
  font-weight:850;
  font-size:.88rem;
}
.home-lower-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.home-lower-actions .btn-outline{
  background:rgba(255,255,255,.08);
  color:#fff!important;
  border-color:rgba(255,255,255,.38)!important;
}
.home-lower-actions .btn-outline:hover{background:rgba(255,255,255,.16);}
@media (max-width:1380px){
  .home-lower-board{grid-template-columns:minmax(210px,270px) minmax(420px,1fr) minmax(280px,340px);gap:14px;}
}
@media (max-width:1160px){
  .home-lower-board{grid-template-columns:1fr 1fr;grid-template-areas:"main main" "left right";}
  .home-lower-board__left,.home-lower-board__right{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
  .home-lower-board{grid-template-columns:1fr;grid-template-areas:"main" "left" "right";gap:12px;}
  .home-lower-board__left,.home-lower-board__right{grid-template-columns:1fr;}
  .home-lower-board__main{border-radius:18px;padding:18px;}
  .home-lower-actions .btn{width:100%;justify-content:center;text-align:center;}
  .home-product-tags span{font-size:.82rem;padding:7px 10px;}
}

/* V5.3.73: Live-Fix Navigation + lesbarer Hero-Text */
.site-header{
  position:sticky;
  top:0;
  z-index:80;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(219,227,239,.92);
}
.site-header__inner{
  max-width:none!important;
  width:100%!important;
  padding:10px clamp(18px,3vw,56px)!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr);
  gap:18px;
  align-items:center;
}
.brand{min-width:0;}
.brand strong{font-size:1rem;}
.brand small{font-size:.76rem;white-space:nowrap;}
.site-nav{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:4px;
  min-width:0;
}
.site-nav a{
  padding:9px 11px;
  font-size:.91rem;
  white-space:nowrap;
}
.site-nav .nav-cta{padding-inline:15px;}

.page-shell--home .hero{
  margin-top:10px;
  margin-bottom:16px;
  border-radius:22px;
}
.page-shell--home .hero--image picture,
.page-shell--home .hero--image img{
  height:330px!important;
  filter:saturate(1.02) contrast(1.03) brightness(.82);
}
.page-shell--home .hero__overlay{
  justify-content:center;
  align-items:flex-start;
  padding:clamp(22px,3.6vw,52px)!important;
  background:linear-gradient(90deg,rgba(6,18,36,.96),rgba(6,18,36,.80) 43%,rgba(6,18,36,.32) 74%,rgba(6,18,36,.10));
}
.page-shell--home .hero-eyebrow{
  margin:0;
  color:#dbeafe!important;
  text-shadow:0 1px 2px rgba(0,0,0,.35);
}
.page-shell--home .hero__title{
  max-width:820px;
  font-size:clamp(2.2rem,3.4vw,4rem)!important;
  line-height:1.02!important;
  letter-spacing:-.055em;
  text-shadow:0 3px 18px rgba(0,0,0,.36);
}
.page-shell--home .hero__sub{
  max-width:900px!important;
  font-size:clamp(.98rem,1.15vw,1.12rem)!important;
  line-height:1.55;
  color:#f1f5ff!important;
  text-shadow:0 2px 10px rgba(0,0,0,.40);
  background:rgba(6,18,36,.28);
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  padding:10px 13px;
}
.page-shell--home .hero__badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  max-width:920px;
}
.page-shell--home .hero__badges span{
  color:#fff;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(5px);
}
.home-board{
  grid-template-columns:minmax(230px,310px) minmax(560px,1fr) minmax(310px,390px);
}
.home-board__main h2{
  font-size:clamp(1.85rem,2.5vw,3rem);
}
.home-board__main p{max-width:880px;}
.home-card span{font-size:.92rem;}

@media (max-width:1180px){
  .site-header__inner{display:flex!important;justify-content:space-between;}
  .nav-toggle{display:inline-flex!important;}
  .site-nav{
    position:absolute;
    left:14px;
    right:14px;
    top:64px;
    background:#fff;
    border:1px solid var(--hp-line,#dbe3ef);
    border-radius:18px;
    box-shadow:0 28px 70px rgba(15,23,42,.18);
    display:none;
    flex-direction:column;
    align-items:stretch;
    padding:8px;
    z-index:90;
  }
  .site-header.is-open .site-nav{display:flex;}
  .site-nav a{white-space:normal;padding:13px 14px;}
  .site-nav .nav-cta{text-align:center;}
}
@media (max-width:760px){
  .site-header__inner{padding:9px 12px!important;}
  .brand small{display:none;}
  .page-shell--home .hero{border-radius:18px;}
  .page-shell--home .hero--image picture,
  .page-shell--home .hero--image img{height:470px!important;}
  .page-shell--home .hero__overlay{
    padding:18px!important;
    background:linear-gradient(180deg,rgba(6,18,36,.96),rgba(6,18,36,.74));
  }
  .page-shell--home .hero__title{
    font-size:clamp(2rem,9vw,2.75rem)!important;
    letter-spacing:-.045em;
  }
  .page-shell--home .hero__sub{
    font-size:.96rem!important;
    padding:10px;
  }
  .page-shell--home .hero__badges span{font-size:.75rem;}
  .home-board{grid-template-areas:"main" "left" "right";grid-template-columns:1fr;}
}

/* V5.3.74: Feinschliff Hero – keine abgeschnittenen Buttons, ruhiger auf Live */
.page-shell--home .hero{
  margin-bottom:18px!important;
}
.page-shell--home .hero--image picture,
.page-shell--home .hero--image img{
  height:380px!important;
}
.page-shell--home .hero__overlay{
  gap:10px!important;
}
.page-shell--home .hero__title{
  max-width:780px!important;
  font-size:clamp(2rem,3.05vw,3.55rem)!important;
}
.page-shell--home .hero__sub{
  max-width:820px!important;
  font-size:clamp(.96rem,1.05vw,1.08rem)!important;
  line-height:1.48!important;
  padding:9px 12px!important;
}
.page-shell--home .hero__badges{
  gap:7px!important;
  margin-top:0!important;
}
.page-shell--home .hero__badges span{
  padding:5px 9px!important;
  font-size:.8rem!important;
}
.hero__quick-actions{
  margin-top:2px!important;
}
.hero__quick-actions .btn{
  min-height:42px!important;
  padding:9px 16px!important;
  line-height:1.15!important;
}
.home-board{
  margin-top:14px!important;
}
@media (max-width:1180px){
  .page-shell--home .hero--image picture,
  .page-shell--home .hero--image img{height:420px!important;}
}
@media (max-width:760px){
  .page-shell--home .hero--image picture,
  .page-shell--home .hero--image img{height:520px!important;}
  .page-shell--home .hero__title{font-size:clamp(1.9rem,8.2vw,2.65rem)!important;}
  .hero__quick-actions .btn{width:100%;justify-content:center;text-align:center;}
}

/* V5.3.75: Kategorie-Kacheln auf der Startseite kompakter */
.page-shell--home .grid.cat-grid{
  grid-template-columns:repeat(auto-fill,minmax(138px,1fr))!important;
  gap:10px!important;
  align-items:start;
}
.page-shell--home .grid.cat-grid .card{
  padding:8px 10px!important;
  border-radius:13px!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
  min-height:0!important;
}
.page-shell--home .grid.cat-grid .card img,
.page-shell--home .grid.cat-grid .tile-initial{
  height:62px!important;
  border-radius:10px!important;
}
.page-shell--home .grid.cat-grid .tile-initial{
  font-size:17px!important;
  letter-spacing:.08em;
}
.page-shell--home .grid.cat-grid .card strong{
  margin-top:6px!important;
  font-size:.86rem!important;
  line-height:1.18!important;
  font-weight:800!important;
}
@media (min-width:1500px){
  .page-shell--home .grid.cat-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;}
}
@media (max-width:760px){
  .page-shell--home .grid.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  .page-shell--home .grid.cat-grid .card{padding:8px!important;}
  .page-shell--home .grid.cat-grid .card img,
  .page-shell--home .grid.cat-grid .tile-initial{height:58px!important;}
  .page-shell--home .grid.cat-grid .card strong{font-size:.82rem!important;}
}

/* V5.3.76: Suche als klare Hero-Card rechts, Texte weniger "Hausmeister"-lastig */
.page-shell--home .hero{
  max-width:none!important;
  width:100%!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.page-shell--home .hero--image picture,
.page-shell--home .hero--image img{
  height:430px!important;
  min-height:0!important;
}
.page-shell--home .hero__overlay{
  padding:clamp(24px,3vw,52px)!important;
  background:linear-gradient(90deg,rgba(6,18,36,.96),rgba(6,18,36,.82) 42%,rgba(6,18,36,.48) 68%,rgba(6,18,36,.22))!important;
}
.page-shell--home .hero__content{
  width:100%;
  max-width:1760px;
  margin:0 auto;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(320px,430px);
  gap:clamp(18px,3vw,42px);
  align-items:center;
}
.page-shell--home .hero__copy{
  min-width:0;
  max-width:880px;
}
.page-shell--home .hero__title{
  max-width:790px!important;
  font-size:clamp(2.1rem,3.45vw,4.15rem)!important;
  line-height:1.02!important;
}
.page-shell--home .hero__sub{
  max-width:840px!important;
  margin-top:12px!important;
  background:rgba(6,18,36,.36)!important;
  border-color:rgba(255,255,255,.16)!important;
}
.hero-search-card{
  width:100%;
  align-self:center;
  background:rgba(255,255,255,.96);
  color:#0b1f3a;
  border:1px solid rgba(255,255,255,.72);
  border-radius:24px;
  padding:18px;
  box-shadow:0 26px 80px rgba(0,0,0,.28);
  backdrop-filter:blur(10px);
  display:grid;
  gap:12px;
}
.hero-search-card__head small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:.7rem;
  font-weight:900;
  color:#1d4ed8;
  margin-bottom:2px;
}
.hero-search-card__head strong{
  display:block;
  font-size:1.25rem;
  line-height:1.1;
  letter-spacing:-.025em;
}
.hero-search-card__head span{
  display:block;
  color:#64748b;
  font-size:.9rem;
  margin-top:3px;
}
.hero-search-card label{
  display:grid;
  gap:5px;
  margin:0;
}
.hero-search-card label span{
  font-size:.72rem;
  font-weight:900;
  color:#475569;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.hero-search-card input{
  width:100%;
  height:48px;
  border:1px solid #d6e2f2;
  background:#fff;
  border-radius:14px;
  padding:0 13px;
  font-size:.96rem;
  color:#0f172a;
}
.hero-search-card .btn{
  height:48px;
  justify-content:center;
  width:100%;
}
.hero-search-card__links{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.hero-search-card__links a{
  text-decoration:none;
  color:#0b2e68;
  background:#eff6ff;
  border:1px solid #dbe8ff;
  border-radius:999px;
  padding:6px 10px;
  font-weight:850;
  font-size:.82rem;
}
.hero-search-card__betriebly{
  display:block;
  text-align:center;
  text-decoration:none;
  color:#0b5fff;
  font-weight:900;
  font-size:.92rem;
  padding-top:2px;
}
.page-shell--home .home-board{
  margin-top:16px!important;
}
.page-shell--home .home-board__main .home-main-actions{
  margin-top:16px;
}
@media (max-width:1180px){
  .page-shell--home .hero--image picture,
  .page-shell--home .hero--image img{height:560px!important;}
  .page-shell--home .hero__content{
    grid-template-columns:1fr;
    align-items:start;
    gap:16px;
  }
  .page-shell--home .hero__copy{max-width:980px;}
  .hero-search-card{max-width:720px;}
}
@media (max-width:760px){
  .page-shell--home .hero--image picture,
  .page-shell--home .hero--image img{height:700px!important;}
  .page-shell--home .hero__overlay{
    padding:18px!important;
    background:linear-gradient(180deg,rgba(6,18,36,.96),rgba(6,18,36,.76))!important;
  }
  .page-shell--home .hero__title{font-size:clamp(2rem,8vw,2.85rem)!important;}
  .page-shell--home .hero__badges span{font-size:.74rem!important;}
  .hero-search-card{border-radius:18px;padding:14px;gap:10px;}
  .hero-search-card__head strong{font-size:1.1rem;}
}


/* V5.3.77: Such-Doppelblock entfernt, Suche springt direkt zu Ergebnissen */
html{scroll-behavior:smooth;}
#results{scroll-margin-top:96px;}
.page-shell--home .home-board.home-board--cards-only{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-areas:"left right"!important;
  gap:16px!important;
  align-items:stretch!important;
  margin-top:16px!important;
}
.page-shell--home .home-board.home-board--cards-only .home-board__left,
.page-shell--home .home-board.home-board--cards-only .home-board__right{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px!important;
  align-content:stretch!important;
}
.page-shell--home .home-board.home-board--cards-only .home-card{
  min-height:145px;
}
.page-shell--home .hero-search-card{
  scroll-margin-top:96px;
}
@media (max-width:1180px){
  .page-shell--home .home-board.home-board--cards-only{
    grid-template-columns:1fr!important;
    grid-template-areas:"left" "right"!important;
  }
  .page-shell--home .home-board.home-board--cards-only .home-board__left,
  .page-shell--home .home-board.home-board--cards-only .home-board__right{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (max-width:760px){
  #results{scroll-margin-top:82px;}
  .page-shell--home .home-board.home-board--cards-only{gap:12px!important;}
  .page-shell--home .home-board.home-board--cards-only .home-board__left,
  .page-shell--home .home-board.home-board--cards-only .home-board__right{
    grid-template-columns:1fr;
  }
  .page-shell--home .home-board.home-board--cards-only .home-card{
    min-height:0;
  }
}
