/* ===== Kisto.ch – Mover-Stil, Marke: navy/blau/grün ===== */
:root{
  --navy:#0e2f47;
  --navy-2:#13456a;
  --blue:#1a91d6;
  --blue-2:#3fb6e6;
  --blue-dark:#1577b3;
  --blue-pale:#e9f4fb;
  --green:#1a91d6;
  --green-dark:#1577b3;
  --green-pale:#e9f4fb;
  --bg:#ffffff;
  --bg-soft:#f5f8fb;
  --ink:#0f2535;
  --text:#54677a;
  --muted:#74879a;
  --border:#e6eef4;
  --radius:18px;
  --shadow:0 24px 60px rgba(14,47,71,.14);
  --shadow-sm:0 12px 30px rgba(14,47,71,.08);
}
*{box-sizing:border-box;margin:0;padding:0}
body:not(.rg-page){overflow-x:clip}
html{scroll-behavior:smooth;overflow-x:clip}
body{font-family:'Poppins',-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);background:var(--bg);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
h1,h2,h3,h4{color:var(--ink);line-height:1.14;font-weight:800;letter-spacing:-.02em}
h1,h2{overflow-wrap:anywhere}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.acc{color:var(--blue)}
.muted{color:var(--muted)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;cursor:pointer;font-weight:700;font-family:inherit;border-radius:12px;padding:.92rem 1.6rem;font-size:1rem;transition:.16s}
.btn .ic{stroke:#fff}
.btn-green{background:var(--green);color:#fff;box-shadow:0 12px 24px rgba(26,145,214,.3)}
.btn-green:hover{background:var(--green-dark);transform:translateY(-2px)}
.btn-blue{background:var(--blue);color:#fff;box-shadow:0 12px 24px rgba(26,145,214,.28)}
.btn-blue:hover{background:var(--blue-dark);transform:translateY(-2px)}
.btn-lg-inline{padding:1.05rem 2rem;font-size:1.06rem;white-space:nowrap}

/* icons */
.ic{width:24px;height:24px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.ic-sm{width:18px;height:18px;stroke-width:2.4}

/* eyebrow */
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;color:#fff;font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem;background:rgba(26,145,214,.18);padding:.4rem .9rem;border-radius:99px}
.eyebrow-dark{background:var(--green-pale);color:var(--green-dark)}
.eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--green)}

/* section heads */
.sec{padding:88px 24px}
.sec-head{text-align:center;max-width:660px;margin:0 auto 3rem}
.sec-head h2{font-size:2.3rem}
.sec-sub{color:var(--muted);font-size:1.08rem;margin-top:.6rem}

/* topbar */
.topbar{background:#fff;position:sticky;top:0;z-index:40;box-shadow:0 2px 16px rgba(14,47,71,.06)}
.topbar-in{display:flex;align-items:center;justify-content:space-between;height:76px;gap:1.2rem}
.logo img{height:58px;width:auto;display:block}
.topnav{display:flex;gap:1.9rem;margin-left:auto;margin-right:1.6rem}
.topnav a{color:var(--ink);font-weight:600;font-size:.97rem}
.topnav a:hover{color:var(--blue)}
@media(max-width:820px){.topnav{display:none}}

/* hero */
.hero{background:radial-gradient(1000px 500px at 85% -10%, var(--blue-pale), transparent 60%), var(--bg-soft);padding:8px 0 0}
.hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding:64px 24px 76px}
.hero h1{font-size:3.15rem;margin-bottom:1.1rem}
.hero .lead{font-size:1.14rem;color:var(--text);margin-bottom:1.5rem;max-width:34em}
.checks{list-style:none;display:grid;gap:.6rem}
.checks li{display:flex;align-items:center;gap:.7rem;font-weight:600;color:var(--ink)}
.ck{width:21px;height:21px;flex:0 0 auto;margin-top:2px;border-radius:50%;background:var(--blue);box-shadow:inset 0 0 0 6px #fff,0 0 0 2px var(--blue)}
.ck .ic{display:none}
@media(max-width:920px){.hero-in{grid-template-columns:1fr;gap:32px;padding:44px 24px 56px}.hero h1{font-size:2.4rem}}

/* intake card */
.intake-card{background:#fff;border-radius:22px;box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--border);min-width:0}
.hero-copy{min-width:0;overflow-wrap:anywhere}
.consent-row{display:flex;align-items:flex-start;gap:.7rem;margin-top:.85rem;color:var(--text);font-size:.82rem;line-height:1.5;cursor:pointer}
.consent-row input{width:18px;height:18px;min-width:18px;margin-top:.14rem;accent-color:var(--blue)}
.consent-row a{color:var(--blue-dark);text-decoration:underline;text-underline-offset:2px}
[data-send]:disabled{opacity:.7;cursor:wait}
.intake-head{padding:22px 26px 0}
.intake-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}
.intake-title-row strong{font-size:1.12rem;color:var(--ink);font-weight:800}
.badge-mini{background:var(--green-pale);color:var(--green-dark);font-weight:700;font-size:.78rem;padding:.25rem .7rem;border-radius:99px}
.intake-progress{height:8px;background:var(--bg-soft);border-radius:99px;overflow:hidden}
.intake-progress span{display:block;height:100%;width:20%;background:linear-gradient(90deg,var(--green),#4fb3ea);border-radius:99px;transition:width .35s}
.intake-step-label{font-size:.76rem;color:var(--muted);font-weight:700;margin-top:.5rem;text-transform:uppercase;letter-spacing:.05em}
.intake-app{padding:16px 26px 28px}
.q-title{font-size:1.2rem;color:var(--ink);font-weight:800;margin:.35rem 0 1.05rem}
.choices{display:grid;gap:.6rem}
.choice{display:flex;align-items:center;gap:.85rem;border:1.6px solid var(--border);border-radius:13px;padding:.92rem 1.05rem;cursor:pointer;background:#fff;transition:.13s;font-size:1.01rem;font-weight:700;color:var(--ink)}
.choice .ci{font-size:0;display:inline-flex}.choice .ci .ic{width:24px;height:24px;color:var(--blue)}
.choice:hover{border-color:var(--green);background:var(--green-pale)}
.choice.sel{border-color:var(--green);background:var(--green-pale);box-shadow:0 0 0 3px var(--green-pale)}
.choice .chk{margin-left:auto;width:22px;height:22px;border-radius:99px;border:2px solid var(--border);display:grid;place-items:center;color:#fff;font-size:.78rem;flex:0 0 auto}
.choice.sel .chk{background:var(--green);border-color:var(--green)}
.obj-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.obj-grid .choice{flex-direction:column;text-align:center;gap:.45rem;padding:1.05rem .6rem;position:relative}
.obj-grid .choice .ci .ic{width:30px;height:30px}
.obj-grid .choice .chk{position:absolute;top:.55rem;right:.55rem;margin:0}
.field{margin-bottom:1rem}.field label{display:block;font-weight:700;color:var(--ink);font-size:.9rem;margin-bottom:.45rem}
.chips{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center}
.chip{border:1.6px solid var(--border);background:#fff;border-radius:14px;padding:.6rem 1.15rem;cursor:pointer;font-weight:700;color:var(--ink);font-size:.95rem;font-family:inherit;transition:transform .14s cubic-bezier(.34,1.56,.64,1),box-shadow .14s ease,background .14s,border-color .14s;-webkit-tap-highlight-color:transparent}
.chip:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 8px 16px -10px rgba(20,145,90,.55)}
.chip:active{transform:translateY(0) scale(.96)}
.chip.sel{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 10px 20px -10px rgba(20,145,90,.7);transform:translateY(-1px)}
/* zentrierter, animierter Detail-Block (Zimmer / Etage / Lift) */
.details{animation:detailsIn .32s cubic-bezier(.22,1,.36,1) both}
.details .field{text-align:center;margin-bottom:1.15rem}
.details .field label{font-size:.82rem;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}
@keyframes detailsIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.details{animation:none}.chip{transition:background .12s,border-color .12s}.chip:hover,.chip.sel{transform:none}}
/* Auszug/Einzug als zwei kompakte Karten nebeneinander */
.floor-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:.3rem}
.floor-card{border:1.5px solid var(--border);background:#fafbfc;border-radius:16px;padding:.95rem .8rem;animation:detailsIn .3s cubic-bezier(.22,1,.36,1) both}
.fc-title{font-weight:800;font-size:.94rem;color:var(--ink);text-align:center;margin-bottom:.55rem}
.fc-sub{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:center;margin:.5rem 0 .34rem}
.floor-card .chips{justify-content:center;gap:.38rem}
.floor-card .chip{padding:.44rem .8rem;font-size:.88rem}
@media(max-width:520px){.floor-grid{grid-template-columns:1fr;gap:.6rem}}
/* Adressblock (Strasse & Nr + PLZ | Ort) */
.addr-block{margin-bottom:1.15rem;animation:detailsIn .32s cubic-bezier(.22,1,.36,1) both}
.addr-block+.addr-block{padding-top:1rem;border-top:1px dashed var(--border)}
.addr-title{font-weight:800;color:var(--ink);font-size:.98rem;margin:.1rem 0 .7rem}
input,textarea,select{width:100%;border:1.6px solid var(--border);border-radius:14px;padding:.82rem .95rem;font-size:1rem;color:var(--ink);font-family:inherit;box-sizing:border-box}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px var(--green-pale)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}@media(max-width:420px){.two{grid-template-columns:1fr}}
/* Mobile: Chips gross & tippbar, Feld-Ränder komfortabel */
@media(max-width:520px){.intake-app{padding:14px 16px 24px}.chip{padding:.62rem 1.05rem;font-size:.97rem}.chips{gap:.5rem}.details .field label{font-size:.8rem}}
.toggle-row{display:flex;align-items:center;gap:.55rem;margin-top:.45rem;font-size:.9rem;color:var(--muted)}
.nav-row{display:flex;gap:.7rem;margin-top:1.3rem}.nav-row .btn{flex:1}.back{flex:0 0 auto!important}
.hint{font-size:.8rem;color:var(--muted);text-align:center;margin-top:.75rem}
.done{text-align:center;padding:1rem 0}.done h3{font-size:1.5rem;margin:.5rem 0;color:var(--ink)}
.done .big{font-size:0}.done .big::before{content:"";display:inline-block;width:64px;height:64px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4.5 12.5 5 5 10-11'/%3E%3C/svg%3E") center/30px no-repeat}
.summary{background:var(--bg-soft);border:1px solid var(--border);border-radius:13px;padding:1rem;text-align:left;margin:1rem 0;font-size:.94rem}
.summary div{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0;border-bottom:1px dashed var(--border)}.summary div:last-child{border:0}.summary b{color:var(--ink);text-align:right}

/* stats strip */
.stats{background:var(--navy)}
.stats-in{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:30px 24px}
.stat{display:flex;align-items:center;gap:.9rem;color:#fff}
.stat .si{width:52px;height:52px;flex:0 0 auto;border-radius:14px;display:grid;place-items:center;background:rgba(26,145,214,.16);color:var(--green)}
.stat .si .ic{width:24px;height:24px}
.stat strong{display:block;font-size:1.02rem}.stat span{font-size:.84rem;color:rgba(255,255,255,.72)}
@media(max-width:760px){.stats-in{grid-template-columns:1fr;gap:14px;text-align:left}}

/* split sections */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:90px 24px}
.split>*{min-width:0}
.split h2{font-size:2.3rem;margin:.25rem 0 1rem}
.split .checks{margin-bottom:1.6rem}
.split-img{position:relative}
.split-img picture{display:block}
.split-img img{border-radius:20px;box-shadow:var(--shadow);width:100%;height:auto;display:block}
.float-badge{position:absolute;right:-14px;bottom:26px;background:var(--green);color:#fff;border-radius:16px;padding:1rem 1.3rem;box-shadow:0 16px 30px rgba(26,145,214,.4);text-align:center}
.float-badge strong{display:block;font-size:1.7rem;font-weight:800;line-height:1}
.float-badge span{font-size:.8rem}
.split.reverse .split-txt{order:2}
.feat-2x2{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 1.6rem;margin-top:1.6rem}
.feat-mini{display:flex;gap:.85rem}
.feat-mini .fi{width:46px;height:46px;flex:0 0 auto;border-radius:12px;display:grid;place-items:center;background:var(--blue-pale);color:var(--blue)}
.feat-mini .fi .ic{width:23px;height:23px}
.feat-mini h3,.feat-mini h4{font-size:1.05rem;margin-bottom:.15rem}
.feat-mini p{font-size:.92rem;color:var(--muted)}
@media(max-width:880px){.split{grid-template-columns:1fr;gap:30px;padding:54px 24px}.split.reverse .split-txt{order:0}.feat-2x2{grid-template-columns:1fr}.float-badge{right:8px}}

/* bands & cards */
.band{background:var(--bg-soft);padding:88px 0}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}@media(max-width:860px){.grid-3{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:2.1rem 1.8rem;box-shadow:var(--shadow-sm);transition:.18s}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.icon-circle{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;margin-bottom:1.1rem;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-2));box-shadow:0 14px 26px rgba(26,145,214,.32)}
.icon-circle .ic{width:30px;height:30px;color:#fff;stroke-width:2.2}
.card h3{font-size:1.25rem;margin-bottom:.45rem}.card p{color:var(--muted)}
.card-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1rem;color:var(--green-dark);font-weight:700}
.card-link:hover{color:var(--green)}

/* reviews */
.review{display:flex;flex-direction:column}
.review .stars{display:flex;gap:3px;margin-bottom:.6rem}.review .stars .ic{width:18px;height:18px;fill:#f5a623;stroke:none}
.review p{color:var(--ink);font-weight:500;margin-bottom:1rem}
.review footer{display:flex;align-items:center;gap:.7rem;margin-top:auto}
.review .avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--navy),var(--blue));font-size:.9rem}
.review cite{color:var(--ink);font-style:normal;font-weight:700;font-size:.92rem}

/* CTA card (überlappt den Footer) */

/* faq */
.faq{max-width:780px;margin:0 auto}
details{border:1px solid var(--border);border-radius:14px;padding:1.1rem 1.3rem;margin-bottom:.75rem;background:#fff;box-shadow:var(--shadow-sm)}
summary{font-weight:700;color:var(--ink);cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}
summary::after{content:"+";float:right;color:var(--green);font-weight:800;font-size:1.3rem;line-height:1}details[open] summary::after{content:"–"}
details p{margin-top:.7rem;color:var(--muted)}

/* footer (EazeMove-Stil) */
.footer{background:var(--navy);color:#9fb6c8;padding-top:62px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:40px;padding:0 24px 46px}
.footer-logo{font-weight:900;font-size:1.75rem;color:#fff}.footer-logo span{color:var(--blue)}
.footer-brand p{margin:.9rem 0 1.4rem;font-size:.93rem;max-width:30em;color:#9fb6c8;line-height:1.75}
.footer-call{display:inline-flex;align-items:center;gap:.8rem}
.footer-call .call-ic{width:48px;height:48px;flex:0 0 auto;border-radius:12px;display:grid;place-items:center;background:var(--blue);color:#fff}
.footer-call .call-ic .ic{width:22px;height:22px}
.footer-call .call-txt{display:flex;flex-direction:column;line-height:1.25}
.footer-call small{color:#9fb6c8;font-size:.8rem}
.footer-call strong{color:#fff;font-size:1.12rem;font-weight:700}
.footer-col h5{color:var(--blue-2);font-size:.95rem;margin-bottom:1.1rem;font-weight:700}
.footer-col a{display:block;color:#9fb6c8;font-size:.93rem;padding:.32rem 0}.footer-col a:hover{color:#fff}
.footer-bar{border-top:1px solid rgba(255,255,255,.1)}
.footer-bar-in{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px;font-size:.86rem;color:#7e96aa}
.footer-bar a{color:#9fb6c8}.footer-bar a:hover{color:#fff}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}.footer{padding-top:46px}.footer-bar-in{flex-direction:column;text-align:center}}

/* ===== Conversion add-ons (v=conv1): 3-Schritte-Ablauf, Steps-CTA, Mobile-Sticky-CTA ===== */
/* So funktioniert's – 3 Schritte */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.step{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:2.1rem 1.7rem;box-shadow:var(--shadow-sm);transition:.18s}
.step:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.step .step-no{font-size:.78rem;font-weight:800;color:var(--blue);letter-spacing:.12em;text-transform:uppercase}
.step .step-ic{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-2));box-shadow:0 14px 26px rgba(26,145,214,.3);margin:.7rem 0 1rem}
.step .step-ic .ic{width:28px;height:28px;color:#fff;stroke-width:2.2}
.step h3{font-size:1.22rem;margin-bottom:.4rem}
.step p{color:var(--muted)}
.step::after{content:"";position:absolute;top:50%;right:-26px;width:26px;height:2px;background:var(--border);z-index:1}
.step:last-child::after{display:none}
.steps-cta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.6rem 1.2rem;margin-top:2.6rem}
.steps-cta-note{color:var(--muted);font-weight:600;font-size:.92rem}
@media(max-width:860px){.steps{grid-template-columns:1fr;gap:18px}.step::after{display:none}}

/* visually-hidden (Bootstrap-exakt, wie auf den DichtFix-Hubs): im DOM, optisch unsichtbar */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Regionen – Banner (Bild unter H2/Untertitel) + Karte (DichtFix-Stil) + Place-Cards */
.region-banner{max-width:820px;margin:0 auto 1.2rem;background:transparent}
.region-banner img{width:100%;height:auto;object-fit:contain;display:block}
.kisto-map-wrap{position:relative;max-width:1010px;margin:0 auto;padding:10px;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm)}
.kisto-map{display:block;width:100%;height:420px;border:0;border-radius:12px}
@media(max-width:760px){.kisto-map{height:300px}}
.kisto-places-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:10px;max-width:1010px;margin:0 auto}
.region-group{margin:1.4rem 0 .7rem;font-weight:800;color:var(--navy);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}
.region-group:first-child{margin-top:0}
.kisto-place-card{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border-radius:12px;background:#fff;border:1px solid var(--border);color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.kisto-place-card:hover{transform:translateY(-1px);border-color:var(--blue);box-shadow:0 4px 18px rgba(26,145,214,.08)}
.kisto-place-pin{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--blue-pale);color:var(--blue)}
.kisto-place-pin .ic{width:19px;height:19px}
.kisto-place-copy{flex:1 1 auto;min-width:0}
.kisto-place-name{display:flex;align-items:center;gap:6px;margin-bottom:3px;color:var(--ink);font-size:.92rem;font-weight:800;line-height:1.28}
.kisto-place-arr{color:var(--blue);font-size:.8rem;transition:transform .16s}
.kisto-place-card:hover .kisto-place-arr{transform:translateX(3px)}
.kisto-place-desc{display:block;color:var(--muted);font-size:.84rem;line-height:1.55}
/* Einfacher Link auf "Unsere Einzugsgebiete" (kein Effekt, kein Pfeil); Karten bleiben im DOM, optisch verborgen */
.region-link-wrap{margin-top:30px;text-align:center}
.region-link-label{color:var(--text);font-weight:700;font-size:.98rem}
.region-link{color:var(--text);font-weight:700;font-size:.98rem;font-family:inherit;line-height:inherit;text-decoration:none;background:none;border:0;padding:0;cursor:pointer}
.region-note{text-align:center;color:var(--muted);margin-top:2.2rem;font-weight:600}
.region-note a{color:var(--blue-dark);font-weight:800}.region-note a:hover{color:var(--blue)}

/* Mobile sticky CTA */
.mobile-cta{display:none}
@media(max-width:820px){
  .mobile-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:.7rem 16px calc(.7rem + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.93);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 -8px 24px rgba(14,47,71,.14)}
  .mobile-cta .btn{flex:1;font-size:1.02rem}
  body{padding-bottom:74px}
}

/* ===== Pillar / Unterseiten add-ons (conv12) ===== */
.breadcrumb{background:var(--bg-soft)}
.breadcrumb .wrap{padding-top:14px;padding-bottom:14px}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;font-size:.86rem;color:var(--muted)}
.breadcrumb li{display:flex;align-items:center;gap:.45rem}
.breadcrumb li+li::before{content:"\203A";color:var(--border);font-weight:700}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--blue)}
.breadcrumb [aria-current]{color:var(--ink);font-weight:600}

.crosslink-card{display:flex;align-items:center;gap:1.4rem;justify-content:space-between;background:linear-gradient(120deg,var(--navy),var(--navy-2));color:#fff;border-radius:var(--radius);padding:2rem 2.2rem;box-shadow:var(--shadow-sm)}
.crosslink-card h3{color:#fff;font-size:1.5rem;margin-bottom:.3rem}
.crosslink-card p{color:rgba(255,255,255,.82);max-width:46ch}
.crosslink-card .btn{flex-shrink:0;background:#fff;color:var(--navy)}
.crosslink-card .btn:hover{background:var(--blue-pale)}
@media(max-width:680px){.crosslink-card{flex-direction:column;align-items:flex-start;text-align:left}}

.checks.cols2{display:grid;grid-template-columns:1fr 1fr;gap:.7rem 2rem}
@media(max-width:640px){.checks.cols2{grid-template-columns:1fr}}


/* Legal pages */
.legal{max-width:820px;margin:0 auto;padding:48px 24px 80px}
.legal h1{font-size:2rem;margin-bottom:.4rem}
.legal .legal-meta{color:var(--muted);font-size:.9rem;margin-bottom:2.2rem}
.legal h2{font-size:1.22rem;margin:2.1rem 0 .6rem}
.legal h3{font-size:1.02rem;margin:1.4rem 0 .4rem}
.legal p,.legal li{color:var(--text);margin-bottom:.7rem}
.legal ul{padding-left:1.2rem;margin-bottom:1rem}
.legal a{color:var(--blue-dark);font-weight:600}
.legal a:hover{color:var(--blue)}
.legal .ph{background:#fff3cd;color:#7a5b00;padding:.04em .4em;border-radius:4px;font-weight:600}
.legal .legal-note{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;padding:1rem 1.2rem;font-size:.92rem;margin-bottom:2rem}

/* ── Nav dropdown ───────────────────────────── */
.nav-item{position:relative;display:flex;align-items:center;height:76px}
.nav-item>a::after{content:"";display:inline-block;width:.46em;height:.46em;margin-left:.18rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.5}
.nav-drop{position:absolute;top:100%;left:0;min-width:216px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:.45rem;display:none;flex-direction:column;z-index:50}
.nav-item:hover>.nav-drop,.nav-item:focus-within>.nav-drop{display:flex}
.nav-drop a{padding:.55rem .7rem;border-radius:8px;font-size:.92rem;font-weight:600;white-space:nowrap;color:var(--ink)}
.nav-drop a:hover{background:var(--bg-soft);color:var(--blue)}
.nav-drop-label{display:block;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800;padding:.55rem .7rem .15rem}
.nav-drop-label:first-child{padding-top:.2rem}

/* ── Ratgeber article layout (DichtFix-Stil, kompakt, Brand-Blau) ── */
.rg-grid{display:grid;gap:26px;max-width:1080px;margin:0 auto}
.rg-cap{display:flex;align-items:center;gap:.45rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--blue-dark);font-weight:800;margin:0 0 .6rem}
.rg-cap::before{content:"";width:14px;height:2px;background:var(--blue);border-radius:2px}
.rg-toc,.rg-side{background:#fff;border:1px solid var(--border);border-top:3px solid var(--blue);border-radius:12px;padding:.85rem .95rem;box-shadow:0 3px 16px rgba(14,47,71,.05)}
.rg-toc ol{list-style:none;margin:0;padding:0}
.rg-toc li{margin:0}
.rg-toc a{display:flex;align-items:flex-start;gap:.5rem;padding:.32rem .35rem;border-radius:7px;color:var(--ink);font-size:.85rem;font-weight:600;line-height:1.35}
.rg-toc a::before{content:"";flex:0 0 auto;width:6px;height:6px;margin-top:.5em;border-radius:50%;background:var(--blue);opacity:.45}
.rg-toc a:hover{background:var(--blue-pale);color:var(--blue-dark)}
.rg-toc a:hover::before{opacity:1}
.rg-main>.eyebrow{margin-bottom:.6rem}
.rg-main h1{font-size:1.9rem;line-height:1.15;margin:.2rem 0 1rem}
.rg-main h2{font-size:1.32rem;margin:1.9rem 0 .6rem;scroll-margin-top:92px}
.rg-main p,.rg-main li{color:var(--text);line-height:1.7}
.rg-main .lead{font-size:1.08rem;color:var(--ink);margin-bottom:1.3rem}
.rg-cover{margin:1rem 0 1.6rem;border-radius:16px;overflow:hidden;background:var(--bg-soft);box-shadow:var(--shadow-sm)}
.rg-cover img{width:100%;height:clamp(240px,42vw,440px);object-fit:cover}
.rg-main .rg-cover img{height:clamp(240px,36vw,390px)}
.rg-main .checks{margin:.4rem 0 1.1rem}
.rg-pop{display:flex;flex-direction:column;gap:.5rem}
.rg-pop a{display:block;padding:.55rem .65rem;border:1px solid var(--border);border-radius:9px;font-weight:600;font-size:.85rem;color:var(--ink);line-height:1.35}
.rg-pop a:hover{background:var(--blue-pale);color:var(--blue-dark);border-color:var(--blue)}
.rg-pop a small{display:block;color:var(--blue);font-weight:800;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.12rem}
@media(min-width:980px){
  .rg-grid{grid-template-columns:minmax(0,1fr) 270px;grid-template-areas:"main toc" "main side";align-items:start}
  .rg-toc{grid-area:toc;position:sticky;top:90px}
  .rg-main{grid-area:main}
  .rg-side{grid-area:side}
}

/* ── Objekt-Tiles (Umzugsarten) ─────────────── */
.obj-band{margin-top:2.2rem}
.obj-band-title{display:flex;align-items:center;gap:.5rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--navy);font-weight:800;margin-bottom:.9rem}
.obj-band-title .dot{width:8px;height:8px;border-radius:50%;background:var(--blue)}
.obj-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.obj-tile{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.15rem 1.15rem 1.25rem}
.obj-tile .obj-ic{width:46px;height:46px;border-radius:12px;background:var(--blue-pale);color:var(--blue);display:grid;place-items:center}
.obj-tile .obj-ic .ic{width:24px;height:24px}
.obj-tile strong{font-size:1.02rem;color:var(--ink);font-weight:800}
.obj-tile small{color:var(--muted);font-size:.84rem;line-height:1.45}
@media(max-width:680px){.obj-grid4{grid-template-columns:1fr 1fr;gap:12px}}
@media(max-width:380px){.obj-grid4{grid-template-columns:1fr}}

/* ── End-CTA (unter FAQ) ────────────────────── */
.endform-card{max-width:560px;margin:0 auto;border:1px solid var(--border)}

/* ── Mobile Hamburger + Menü ─────────────────── */
.nav-toggle{display:none;flex-direction:column;align-items:center;gap:3px;background:none;border:0;cursor:pointer;padding:4px 6px}
.nt-bars{display:flex;flex-direction:column;gap:9px;width:46px}
.nt-bars span{display:block;height:4px;width:100%;background:var(--blue);border-radius:2px;transition:transform .18s,opacity .18s}
.nt-label{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--blue);line-height:1}
.nav-toggle.open .nt-bars span:nth-child(1){transform:translateY(13px) rotate(45deg)}
.nav-toggle.open .nt-bars span:nth-child(2){opacity:0}
.nav-toggle.open .nt-bars span:nth-child(3){transform:translateY(-13px) rotate(-45deg)}
.mobile-menu{display:none}
.mm-group{padding:.7rem 0;border-bottom:1px solid var(--border)}
.mm-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800;margin-bottom:.35rem}
.mm-group a{display:block;padding:.5rem 0;color:var(--ink);font-weight:600;font-size:1.02rem}
.mm-group a:hover{color:var(--blue)}
@media(max-width:820px){
  .nav-toggle{display:flex}
  .topbar-in{gap:.5rem}
  .topbar-in>a.btn{padding:.55rem .95rem;font-size:.9rem;flex:0 0 auto}
  .topbar-in>a.btn .ic{display:none}
  .mobile-menu{display:block;position:fixed;top:76px;left:0;right:0;bottom:0;z-index:39;background:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.6rem 24px 2.5rem;border-top:1px solid var(--border)}
  .mobile-menu[hidden]{display:none}
}

/* ── Wortmarke-Logo (header, scharf bei jeder Grösse) ── */
.logo{display:inline-flex;align-items:center;gap:.46rem;text-decoration:none}
.logo-mark{width:28px;height:28px;flex:0 0 auto;fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.logo-text{font-weight:800;font-size:1.62rem;color:var(--navy);letter-spacing:-.02em;line-height:1}
@media(max-width:380px){.logo-text{font-size:1.42rem}.logo-mark{width:24px;height:24px}}
/* Logo image (header + footer badge) */
@media(max-width:820px){.logo img{height:50px}}
.footer-logo-badge{display:inline-block;background:#fff;border-radius:10px;padding:8px 12px;line-height:0;margin-bottom:.6rem}
.footer-logo-badge img{height:48px;width:auto;display:block}
.choice .ci-img{height:34px;width:auto;display:inline-block;vertical-align:middle}

/* ── Hero mit Lastwagen-Bild (nur Startseite) ── */
.hero-home{background:linear-gradient(100deg,rgba(11,38,58,.94) 0%,rgba(11,38,58,.75) 36%,rgba(11,38,58,.34) 58%,rgba(11,38,58,.08) 100%) center/cover no-repeat, url("/img/hero-umzug-desktop.webp") center/cover no-repeat}
.hero-photo{position:relative;isolation:isolate;overflow:hidden;background:#0b263a!important}
.hero-photo .hero-media{position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block}
.hero-photo .hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-photo::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(11,38,58,.95) 0%,rgba(11,38,58,.78) 37%,rgba(11,38,58,.40) 60%,rgba(11,38,58,.18) 100%);pointer-events:none}
.hero-photo .hero-in{position:relative;z-index:2}
.hero-home .eyebrow-dark{background:rgba(255,255,255,.16);color:#fff}
.hero-home .eyebrow-dark .dot{background:var(--blue-2)}
.hero-home h1{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.9),0 2px 8px rgba(0,0,0,.7),0 4px 22px rgba(0,0,0,.55)}
.hero-home .acc{color:var(--blue-2)}
.hero-home .lead{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.95),0 2px 8px rgba(0,0,0,.7)}
.hero-home .checks li{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.95),0 2px 7px rgba(0,0,0,.7)}
@media(max-width:920px){
  .hero-home{background:linear-gradient(180deg,rgba(11,38,58,.92) 0%,rgba(11,38,58,.80) 30%,rgba(11,38,58,.45) 52%,rgba(11,38,58,0) 72%) center/100% 100% no-repeat, url("/img/hero-umzug-mobile.webp?v=4") top center/100% auto no-repeat;background-color:#0b263a}
  .hero-photo::after{background:linear-gradient(180deg,rgba(11,38,58,.94) 0%,rgba(11,38,58,.84) 34%,rgba(11,38,58,.66) 58%,rgba(11,38,58,.42) 100%)}
  .hero-photo .hero-media img{object-position:center top}
  .hero-home .hero-in{padding-top:18px;gap:18px}
}
/* ── Sanftes Erscheinen beim Scrollen ── */
.rv,.rv.rv-in{opacity:1;transform:none;transition:none}
@media(prefers-reduced-motion:reduce){.rv,.rv.rv-in{opacity:1;transform:none;transition:none}}
/* Sekcijske boje — sve OSIM Ratgeber (Ratgeber = vlastiti dizajn) */
body:not(.rg-page) .band{background:linear-gradient(180deg,#e6f1fb 0%,#f3f8fc 78%)}
body:not(.rg-page) .sec{background:radial-gradient(1100px 440px at 82% -6%, rgba(26,145,214,.06), transparent 62%)}
/* Hero-Foto Zürich (/umzug-zuerich/) – Bahnhof Museumstrasse */
.hero-zuerich{background:linear-gradient(100deg,rgba(11,38,58,.94) 0%,rgba(11,38,58,.75) 36%,rgba(11,38,58,.34) 58%,rgba(11,38,58,.08) 100%) center/cover no-repeat, url("/img/hero-umzug-zuerich-desktop.webp?v=4") center/cover no-repeat}
@media(max-width:920px){.hero-zuerich{background:linear-gradient(180deg,rgba(11,38,58,.92) 0%,rgba(11,38,58,.80) 30%,rgba(11,38,58,.45) 52%,rgba(11,38,58,0) 72%) center/100% 100% no-repeat, url("/img/hero-umzug-zuerich-mobile.webp?v=4") top center/100% auto no-repeat;background-color:#0b263a}}
/* Hero-Foto Luzern (/umzug-luzern/) – Seebrücke, Wasserturm & Pilatus */
.hero-luzern{background:linear-gradient(100deg,rgba(11,38,58,.94) 0%,rgba(11,38,58,.75) 36%,rgba(11,38,58,.34) 58%,rgba(11,38,58,.08) 100%) center/cover no-repeat, url("/img/hero-umzug-luzern-desktop.webp?v=4") center/cover no-repeat}
@media(max-width:920px){.hero-luzern{background:linear-gradient(180deg,rgba(11,38,58,.92) 0%,rgba(11,38,58,.80) 30%,rgba(11,38,58,.45) 52%,rgba(11,38,58,0) 72%) center/100% 100% no-repeat, url("/img/hero-umzug-luzern-mobile.webp?v=4") top center/100% auto no-repeat;background-color:#0b263a}}
/* Hero-Foto Zug (/umzug-zug/) – moderne Seestadt */
.hero-zug{background:linear-gradient(100deg,rgba(11,38,58,.94) 0%,rgba(11,38,58,.75) 36%,rgba(11,38,58,.34) 58%,rgba(11,38,58,.08) 100%) center/cover no-repeat, url("/img/hero-umzug-zug-desktop.webp?v=4") center/cover no-repeat}
@media(max-width:920px){.hero-zug{background:linear-gradient(180deg,rgba(11,38,58,.92) 0%,rgba(11,38,58,.80) 30%,rgba(11,38,58,.45) 52%,rgba(11,38,58,0) 72%) center/100% 100% no-repeat, url("/img/hero-umzug-zug-mobile.webp?v=4") top center/100% auto no-repeat;background-color:#0b263a}}

/* ---- Nav im reparfix-Stil: durchscheinende Blur-Leiste + weicher Dropdown ---- */
.topbar{background:rgba(255,255,255,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);box-shadow:none}
.nav-drop{border-radius:10px;box-shadow:0 14px 34px -20px rgba(14,47,71,.5);padding:.4rem;margin-top:.35rem}
.nav-drop a:hover{background:var(--blue-pale);color:var(--blue-dark)}
.topnav .nav-item:last-child>a,.topnav .nav-item:nth-last-child(2)>a{font-weight:700}
.topnav .nav-item:last-child>a::after{display:none}



/* Dropdown-Pfeil wie bei reparfix (voller ▾) */
.nav-item>a::after{content:"";display:inline-block;width:0;height:0;margin-left:.4em;border-top:.34em solid currentColor;border-right:.34em solid transparent;border-left:.34em solid transparent;border-bottom:0;transform:none;opacity:.55;vertical-align:middle}
.topnav .nav-item:last-child>a::after,.topnav .nav-item:nth-last-child(2)>a::after{display:none}

/* Pfeil rechts neben jeder Kategorie IM Dropdown */
.nav-drop a{display:flex;align-items:center;justify-content:space-between}
.nav-drop a::after{content:"›";color:var(--muted);font-weight:800;font-size:1.15em;margin-left:1rem;opacity:.55;flex:0 0 auto}

/* Login + Partner werden: KEIN Symbol (kein Häkchen/Pfeil) */
.topnav .nav-item:last-child>a::before,.topnav .nav-item:last-child>a::after,
.topnav .nav-item:nth-last-child(2)>a::before,.topnav .nav-item:nth-last-child(2)>a::after{content:none!important;display:none!important}

/* Fix: kein Hover-Gap zwischen Kategorie und Untermenü (sonst schliesst es beim Rübergehen) */
.nav-drop{margin-top:0!important;padding-top:.5rem}
.nav-item>.nav-drop::before{content:"";position:absolute;top:-14px;left:0;right:0;height:16px}


/* PRG-masked legal and login controls: visually identical to the replaced links. */
.kisto-prg-link{-webkit-appearance:none;appearance:none;background:none;border:0;border-radius:0;padding:0;margin:0;color:inherit;font:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;text-align:inherit;text-decoration:none;cursor:pointer}
.topnav .kisto-prg-link{color:var(--ink);font-weight:600;font-size:.97rem}
.topnav .nav-item:last-child>.kisto-prg-link{font-weight:700}
.topnav .kisto-prg-link:hover{color:var(--blue)}
.mm-group .kisto-prg-link{display:block;width:100%;padding:.5rem 0;color:var(--ink);font-weight:600;font-size:1.02rem;text-align:left}
.mm-group .kisto-prg-link:hover{color:var(--blue)}
.footer-col .kisto-prg-link{display:block;color:#9fb6c8;font-size:.93rem;padding:.32rem 0;text-align:left}
.footer-col .kisto-prg-link:hover,.footer-bar .kisto-prg-link:hover{color:#fff}
.footer-bar .kisto-prg-link{display:inline;color:#9fb6c8}
.legal .kisto-prg-link{color:var(--blue-dark);font-weight:600}
.legal .kisto-prg-link:hover{color:var(--blue)}
.consent-row .kisto-prg-link{color:var(--blue-dark);text-decoration:underline;text-underline-offset:2px}
