﻿/* ══════════════════════════════════════════
   DESIGN TOKENS
══════════════════════════════════════════ */
:root {
  --blue:        #2563eb;
  --blue-dark:   #1a2332;
  --blue-bright: #3b82f6;
  --blue-light:  #60a5fa;
  --blue-pale:   #eff6ff;
  --blue-border: #bfdbfe;
  --grad:        linear-gradient(135deg, #1a2332 0%, #1e3a5f 55%, #2563eb 100%);
  --cta-orange:  #f59e0b;
  --cta-orange-hover:#e88900;
  --cta-ink:     #111827;

  --ink:    #0d1b2a;
  --mid:    #2d3e50;
  --muted:  #546e7a;
  --faint:  #78909c;
  --xfaint: #b0bec5;
  --bg:     #ffffff;
  --bg2:    #f7faff;
  --bg3:    #edf3fb;
  --bdr:    #dde8f5;
  --bdr2:   #c5d8f0;

  --r:   6px;
  --rl:  12px;
  --rxl: 20px;
  --sh:  0 2px 12px rgba(21,101,192,.09);
  --shl: 0 8px 36px rgba(21,101,192,.16);
  --shxl:0 20px 60px rgba(21,101,192,.2);

  --ease: cubic-bezier(.4,0,.2,1);
}

/* ══════════════════════════════════════════
   RESET
══════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Poppins',system-ui,sans-serif;
  color:var(--ink);background:var(--bg);
  overflow-x:hidden;-webkit-font-smoothing:antialiased
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
ul{list-style:none}

/* ══════════════════════════════════════════
   TYPOGRAPHY
══════════════════════════════════════════ */
h1,h2,h3,h4{
  font-family:'Poppins',system-ui,sans-serif;
  line-height:1.2;color:var(--ink)
}
h1{font-size:clamp(2rem,4vw,2.9rem);font-weight:700}
h2{font-size:clamp(1.5rem,2.8vw,2rem);font-weight:700}
h3{font-size:1.05rem;font-weight:700}
p{font-size:.95rem;line-height:1.75;color:var(--muted)}

.eyebrow{
  display:inline-block;
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--blue);background:var(--blue-pale);
  padding:4px 12px;border-radius:999px;margin-bottom:12px
}

/* ══════════════════════════════════════════
   BUTTONS
══════════════════════════════════════════ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  font-family:'Poppins',system-ui,sans-serif;font-weight:600;
  border-radius:var(--r);cursor:pointer;
  transition:all .22s var(--ease);
  text-decoration:none;white-space:nowrap
}
.btn-primary{
  background:var(--grad);color:#fff;
  padding:13px 26px;font-size:.9rem;
  box-shadow:0 3px 16px rgba(21,101,192,.3)
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(21,101,192,.4)}
.btn-outline{
  background:transparent;color:var(--blue);
  border:1.5px solid var(--blue);
  padding:12px 24px;font-size:.9rem
}
.btn-outline:hover{background:var(--blue-pale)}
.btn-white{
  background:#fff;color:var(--blue-dark);
  padding:13px 26px;font-size:.9rem;
  box-shadow:0 3px 16px rgba(0,0,0,.14)
}
.btn-white:hover{background:var(--blue-pale);transform:translateY(-2px)}

/* ══════════════════════════════════════════
   LAYOUT
══════════════════════════════════════════ */
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
.sec{padding:72px 0}
.sec-sm{padding:52px 0}
.sec-dark{background:var(--bg2)}
.sec-blue{background:var(--grad)}

/* Grid helpers */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}

/* ══════════════════════════════════════════
   ANIMATIONS — Headlines fliegen herein
══════════════════════════════════════════ */
@keyframes fadeUp{
  from{opacity:0;transform:translateY(32px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes fadeLeft{
  from{opacity:0;transform:translateX(-28px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes fadeRight{
  from{opacity:0;transform:translateX(28px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes pulseDot{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.5;transform:scale(1.4)}
}

.anim-up   {animation:fadeUp   .65s var(--ease) both}
.anim-left {animation:fadeLeft .65s var(--ease) both}
.anim-right{animation:fadeRight.65s var(--ease) both}
.d1{animation-delay:.08s}
.d2{animation-delay:.18s}
.d3{animation-delay:.28s}
.d4{animation-delay:.38s}
.d5{animation-delay:.48s}

/* Scroll-triggered animations */
.reveal{
  opacity:0;transform:translateY(24px);
  transition:opacity .6s var(--ease),transform .6s var(--ease)
}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ══════════════════════════════════════════
   URGENCY BANNER
══════════════════════════════════════════ */
.banner{
  background:var(--ink);color:rgba(255,255,255,.82);
  text-align:center;padding:9px 24px;
  font-size:.78rem;font-weight:500;letter-spacing:.01em
}
.banner strong{color:#fff;font-weight:700}
.dot-live{
  display:inline-block;width:6px;height:6px;
  background:#ef4444;border-radius:50%;
  margin-right:7px;vertical-align:middle;
  animation:pulseDot 1.6s ease infinite
}

/* ══════════════════════════════════════════
   NAV
══════════════════════════════════════════ */
.nav{
  position:sticky;top:0;z-index:400;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--bdr)
}
.nav-inner{
  max-width:1140px;margin:0 auto;padding:0 24px;
  display:flex;align-items:center;justify-content:space-between;
  height:80px
}
.nav-brand{
  flex-shrink:0;
  display:flex;
  align-items:center
}
.nav-brand-logo{
  height:58px;
  width:auto;
  display:block;
  transform:scale(3);
  transform-origin:left center;
  position:relative;
  left:-44px;
  z-index:2
}
.nav-logo img{height:36px;width:auto}
.nav-links{display:flex;gap:26px}
.nav-item{position:relative}
.nav-link-group{display:flex;align-items:center}
.nav-links a,
.nav-link-base{
  font-size:.85rem;font-weight:500;color:var(--muted);
  transition:color .2s;padding:4px 0;
  border-bottom:2px solid transparent
}
.nav-links a:hover,.nav-link-base:hover{color:var(--blue)}
.nav-links a.active,.nav-link-base.active{color:var(--blue);border-bottom-color:var(--blue)}
.nav-dropdown-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;margin-left:2px;color:var(--muted);
  transition:color .2s var(--ease),transform .2s var(--ease)
}
.nav-dropdown-toggle svg{width:15px;height:15px}
.nav-item-dropdown:hover .nav-dropdown-toggle,
.nav-item-dropdown:focus-within .nav-dropdown-toggle,
.nav-item-dropdown.nav-item-active .nav-dropdown-toggle{color:var(--blue)}
.nav-dropdown{
  position:absolute;top:calc(100% + 14px);left:0;
  min-width:220px;padding:10px;
  display:flex;flex-direction:column;gap:4px;
  background:#fff;border:1px solid var(--bdr);
  border-radius:14px;box-shadow:var(--shl);
  opacity:0;visibility:hidden;transform:translateY(10px);
  transition:opacity .22s var(--ease),transform .22s var(--ease),visibility .22s var(--ease)
}
.nav-item-dropdown:hover .nav-dropdown,
.nav-item-dropdown:focus-within .nav-dropdown{
  opacity:1;visibility:visible;transform:translateY(0)
}
.nav-dropdown a{
  border-bottom:none;
  padding:10px 12px;
  border-radius:10px;
  color:var(--mid);
  font-size:.84rem;
  font-weight:500
}
.nav-dropdown a:hover,
.nav-dropdown a.active{
  background:var(--blue-pale);
  color:var(--blue)
}
.nav-right{display:flex;gap:10px;align-items:center}
.nav-right .btn-primary{
  background:linear-gradient(135deg, #25456f 0%, #2d63eb 100%);
  padding:11px 22px;
  font-size:.84rem;
  border-radius:14px;
  box-shadow:0 8px 22px rgba(37,99,235,.22);
}
.nav-right .btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(37,99,235,.26);
}
.nav-tel{
  font-size:.83rem;font-weight:600;color:var(--mid);
  display:flex;align-items:center;gap:5px
}
.nav-tel:hover{color:var(--blue)}
.hbg{
  display:none;flex-direction:column;gap:4.5px;
  padding:6px;cursor:pointer
}
.hbg span{
  display:block;width:22px;height:2px;
  background:var(--mid);border-radius:2px;transition:all .3s
}
.mob-menu{
  display:none;position:fixed;
  top:80px;left:0;right:0;bottom:0;
  background:#fff;z-index:399;
  padding:28px 24px;flex-direction:column;overflow-y:auto
}
.mob-menu.open{display:flex}
.mob-menu a{
  font-size:1rem;font-weight:500;color:var(--ink);
  padding:13px 0;border-bottom:1px solid var(--bdr)
}
.mob-menu a.active{color:var(--blue)}
.mob-submenu{border-bottom:1px solid var(--bdr)}
.mob-submenu-toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  font-size:1rem;font-weight:500;color:var(--ink);
  padding:13px 0
}
.mob-submenu-toggle svg{
  width:18px;height:18px;transition:transform .22s var(--ease)
}
.mob-submenu-toggle.active{color:var(--blue)}
.mob-submenu.open .mob-submenu-toggle svg{transform:rotate(180deg)}
.mob-submenu-links{display:none;padding:0 0 10px 14px}
.mob-submenu-links.open{display:flex;flex-direction:column}
.mob-submenu-links a{
  font-size:.95rem;
  padding:10px 0;
  color:var(--muted)
}
.mob-menu-cta{
  display:flex;flex-direction:column;gap:10px;margin-top:20px
}
@media(min-width:861px){
  .nav-inner{
    display:grid;
    grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);
    align-items:center;
    column-gap:24px
  }

  .nav-brand{
    justify-self:start
  }

  .nav-links{
    justify-self:center;
    align-items:center;
    justify-content:center;
    flex-wrap:nowrap;
    position:relative;
    left:-78px
  }

  .nav-right{
    justify-self:end;
    justify-content:flex-end;
    white-space:nowrap
  }
}
@media(max-width:860px){
  .nav-links{display:none}
  .nav-right .btn,.nav-tel{display:none}
  .hbg{display:flex}
}

/* ══════════════════════════════════════════
   HERO
══════════════════════════════════════════ */
.hero{
  background:#fff;
  padding:30px 24px 76px;
  position:relative;overflow:hidden;
  border-bottom:1px solid var(--bdr)
}
.hero-bg-circle{display:none}
.hero-inner{
  max-width:1140px;margin:0 auto;
  display:flex;flex-direction:column;
  align-items:center;text-align:center;
  position:relative;z-index:1;gap:0
}

/* Hero h1 */
.hero h1{
  color:var(--ink);margin:0 auto 12px;
  font-size:clamp(1.6rem,3.2vw,2.25rem);
  max-width:32ch;
  line-height:1.28;
  text-align:center
}
.hero h1 em{
  display:block;font-style:normal;
  color:var(--blue);font-weight:600
}

/* Hero sub */
.hero-sub{
  font-size:.9rem;line-height:1.75;
  color:var(--muted);
  margin:0 auto 18px;max-width:640px;
  text-align:center
}

/* Hero CTA row */
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px;justify-content:center}

/* Hero trust pills */
.hero-pills{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}
.hpill{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--blue-pale);
  border:1px solid var(--blue-border);
  color:var(--mid);
  font-size:.76rem;font-weight:500;
  padding:4px 11px;border-radius:999px
}
.hpill-check{
  color:var(--blue);font-size:.68rem;font-weight:800
}

/* Hero right cards */
.hero-cards{display:flex;flex-direction:column;gap:10px;width:100%;max-width:520px;margin-top:32px}

/* Hero mini cards horizontal row */
.hero-cards-row{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:10px;width:100%;margin-top:16px
}
.hcard-mini{
  background:var(--bg2);border:1px solid var(--bdr);
  border-radius:var(--rl);padding:14px 16px;
  text-decoration:none;
  transition:all .22s var(--ease);
  cursor:pointer;display:block
}
.hcard-mini:hover{
  background:var(--blue-pale);border-color:var(--blue-border);
  transform:translateY(-2px);box-shadow:var(--sh)
}
.hcard-mini.featured{
  background:var(--blue-pale);border-color:var(--blue);
  box-shadow:0 0 0 2px rgba(21,101,192,.1)
}
.hcm-star{
  font-size:.6rem;font-weight:700;color:var(--blue);
  text-transform:uppercase;letter-spacing:.1em;
  margin-bottom:5px
}
.hcm-name{
  font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:4px
}
.hcm-price{
  font-family:'Poppins',system-ui,sans-serif;font-size:1.1rem;font-weight:700;
  color:var(--blue);margin-bottom:4px
}
.hcm-price span{font-size:.7rem;font-weight:400;font-family:'Poppins',system-ui,sans-serif;color:var(--faint)}
.hcm-desc{font-size:.72rem;color:var(--muted);line-height:1.45}
@media(max-width:600px){
  .hero-cards-row{grid-template-columns:1fr}
}
.hcard{
  background:var(--bg2);
  border:1px solid var(--bdr);
  border-radius:var(--rl);
  padding:16px 20px;
  transition:all .25s var(--ease)
}
.hcard:hover{
  background:var(--blue-pale);
  border-color:var(--blue-border);
  transform:translateY(-2px);box-shadow:var(--sh)
}
.hcard.featured{
  background:var(--blue-pale);
  border-color:var(--blue-border)
}
.hcard-star{
  font-size:.62rem;font-weight:700;color:var(--blue);
  letter-spacing:.1em;text-transform:uppercase;
  margin-bottom:7px;display:block
}
.hcard-row{
  display:flex;justify-content:space-between;
  align-items:flex-start;margin-bottom:4px
}
.hcard-name{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.88rem;font-weight:700;color:var(--ink)
}
.hcard-price{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:1.1rem;font-weight:700;color:var(--blue)
}
.hcard-price small{
  font-size:.68rem;font-weight:400;
  font-family:'Poppins',system-ui,sans-serif;
  color:var(--faint)
}
.hcard-desc{
  font-size:.76rem;color:var(--muted);line-height:1.5
}

@media(max-width:860px){
  .hero{padding:60px 24px 56px}
  .hero h1{font-size:2rem}
  .hero-cards{grid-template-columns:1fr 1fr;display:grid}
}
@media(max-width:500px){
  .hero-cards{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════
   TRUST BAR
══════════════════════════════════════════ */
.trust-bar{
  background:#fff;border-bottom:1px solid var(--bdr)
}
.trust-bar-inner{
  max-width:1140px;margin:0 auto;
  display:flex
}
.tbi{
  display:flex;align-items:center;gap:10px;
  padding:16px 24px;flex:1;
  border-right:1px solid var(--bdr)
}
.tbi:last-child{border-right:none}
.tbi-icon{
  width:32px;height:32px;
  background:var(--blue-pale);border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0
}
.tbi-icon svg{width:15px;height:15px;fill:var(--blue)}
.tbi-title{font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:1px}
.tbi-sub{font-size:.7rem;color:var(--faint)}

@media(max-width:720px){
  .trust-bar-inner{flex-direction:column}
  .tbi{border-right:none;border-bottom:1px solid var(--bdr);padding:12px 24px}
  .tbi:last-child{border-bottom:none}
}

/* ══════════════════════════════════════════
   PROBLEM SECTION
══════════════════════════════════════════ */
.prob-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.25rem;margin-top:36px
}
.prob-card{
  background:#fff;border:1px solid var(--bdr);
  border-radius:var(--rl);padding:24px;
  position:relative;overflow:hidden;
  transition:all .25s var(--ease)
}
.prob-card::after{
  content:'';
  position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--grad);
  transform:scaleX(0);transform-origin:left;
  transition:transform .3s var(--ease)
}
.prob-card:hover::after{transform:scaleX(1)}
.prob-card:hover{transform:translateY(-4px);box-shadow:var(--shl)}
.prob-svg{
  width:40px;height:40px;
  background:var(--blue-pale);border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:14px
}
.prob-svg svg{width:20px;height:20px;fill:var(--blue)}
.prob-title{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.95rem;font-weight:700;
  color:var(--ink);margin-bottom:7px
}
.prob-text{
  font-size:.83rem;color:var(--muted);
  line-height:1.7;margin-bottom:12px
}
.prob-cost{
  display:inline-block;
  font-size:.72rem;font-weight:700;
  background:#fef2f2;color:#b91c1c;
  padding:3px 10px;border-radius:999px
}

@media(max-width:720px){.prob-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════
   LEISTUNGEN
══════════════════════════════════════════ */
.lst-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:1.1rem;margin-top:32px
}
.lst-card{
  background:#fff;border:1px solid var(--bdr);
  border-radius:var(--rl);padding:28px 24px;
  display:flex;gap:18px;
  transition:box-shadow .22s var(--ease)
}
.lst-card:hover{box-shadow:var(--shl)}
.lst-num{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:2.2rem;font-weight:700;
  color:var(--blue-pale);line-height:1;
  flex-shrink:0;min-width:2.2rem;
  background:var(--grad);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text
}
.lst-body h3{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.95rem;margin-bottom:7px
}
.lst-body p{font-size:.82rem;margin-bottom:12px}
.lst-feats{display:flex;flex-direction:column;gap:5px}
.lst-feat{
  font-size:.8rem;color:var(--muted);
  display:flex;gap:7px;align-items:flex-start;line-height:1.5
}
.lst-feat::before{
  content:'';flex-shrink:0;
  width:16px;height:16px;
  background:var(--blue-pale);border-radius:50%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%231565c0' d='M13.5 3.5L6 11 2.5 7.5l-1 1L6 13l8.5-8.5z'/%3E%3C/svg%3E");
  background-size:10px;background-repeat:no-repeat;background-position:center;
  margin-top:2px
}
@media(max-width:680px){.lst-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════
   PRICING
══════════════════════════════════════════ */
.pricing-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.25rem
}
.pcard{
  background:#fff;border:1.5px solid var(--bdr);
  border-radius:var(--rxl);
  padding:22px 20px 18px;
  position:relative;
  display:flex;flex-direction:column;
  transition:all .28s var(--ease)
}
.pcard:hover{transform:translateY(-5px);box-shadow:var(--shxl)}
.pcard.featured{
  border-color:var(--blue);
  box-shadow:0 0 0 4px rgba(21,101,192,.09),var(--shl)
}
.pbadge{
  position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  background:var(--grad);color:#fff;
  font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  padding:4px 16px;border-radius:999px;white-space:nowrap;
  box-shadow:0 3px 12px rgba(21,101,192,.3)
}
.picon{
  width:48px;height:48px;
  background:var(--blue-pale);border-radius:var(--rl);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:10px
}
.picon svg{width:24px;height:24px;fill:var(--blue)}
.pcard.featured .picon{background:var(--grad)}
.pcard.featured .picon svg{fill:#fff}
.pname{
  display:flex;
  align-items:flex-end;
  min-height:2.9em;
  max-width:18ch;
  font-size:.64rem;
  font-weight:700;
  letter-spacing:.1em;
  line-height:1.4;
  text-transform:uppercase;
  color:var(--faint);
  margin-bottom:6px;
  text-wrap:balance
}
.pprice{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:2.4rem;font-weight:700;
  color:var(--ink);line-height:1;margin-bottom:2px
}
.pprice sup{font-size:1rem;font-weight:600;vertical-align:super;margin-right:1px}
.pprice .per{
  font-size:.88rem;font-weight:400;
  font-family:'Poppins',system-ui,sans-serif;color:var(--faint)
}
.ppnote{font-size:.75rem;color:var(--faint);margin-bottom:2px}
.ppsave{
  font-size:.75rem;font-weight:600;
  color:var(--blue);min-height:.9rem;margin-bottom:12px
}
.pdivider{border:none;border-top:1px solid var(--bdr);margin:10px 0}
.pfeats{
  flex:1;display:flex;flex-direction:column;gap:6px;margin-bottom:14px
}
.pfeat{
  font-size:.83rem;color:var(--mid);
  display:flex;align-items:flex-start;gap:8px;line-height:1.38
}
.pfeat .ck{
  flex-shrink:0;width:17px;height:17px;
  background:var(--blue-pale);border-radius:50%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%231565c0' d='M13.5 3.5L6 11 2.5 7.5l-1 1L6 13l8.5-8.5z'/%3E%3C/svg%3E");
  background-size:10px;background-repeat:no-repeat;background-position:center;
  margin-top:1px
}
.pcta-main{
  display:block;text-align:center;padding:10px;
  background:var(--grad);color:#fff;
  border-radius:var(--r);font-weight:600;font-size:.87rem;
  box-shadow:0 3px 14px rgba(21,101,192,.28);
  transition:all .22s var(--ease);text-decoration:none
}
.pcta-main:hover{opacity:.88;transform:translateY(-1px)}
.pcta-sec{
  display:block;text-align:center;padding:10px;
  border:1.5px solid var(--bdr2);color:var(--mid);
  border-radius:var(--r);font-weight:600;font-size:.87rem;
  transition:all .22s var(--ease);text-decoration:none
}
.pcta-sec:hover{border-color:var(--blue);color:var(--blue)}
.pnote{
  font-size:.68rem;color:var(--xfaint);
  text-align:center;margin-top:6px
}

/* UPSELL */
.upsell-box{
  background:var(--blue-pale);
  border:1.5px solid var(--blue-border);
  border-radius:var(--rl);padding:24px 26px;margin-top:22px
}
.upsell-head{
  display:flex;align-items:center;gap:10px;margin-bottom:16px
}
.upsell-label{
  background:var(--grad);color:#fff;
  font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 11px;border-radius:999px
}
.upsell-title{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.95rem;font-weight:700;color:var(--ink)
}
.upsell-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.upsell-card{
  background:#fff;border:1px solid var(--bdr);
  border-radius:var(--r);padding:16px;
  transition:box-shadow .2s
}
.upsell-card:hover{box-shadow:var(--sh)}
.upsell-card h4{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.88rem;font-weight:700;
  color:var(--ink);margin-bottom:5px
}
.upsell-card p{font-size:.78rem;margin-bottom:8px}
.upsell-price{
  font-size:.76rem;font-weight:700;
  color:var(--blue);background:var(--blue-pale);
  padding:2px 9px;border-radius:999px;
  display:inline-block;margin-bottom:9px
}
.upsell-feats{display:flex;flex-direction:column;gap:3px}
.upsell-feat{
  font-size:.74rem;color:var(--muted);
  display:flex;gap:5px
}
.upsell-feat::before{
  content:'–';color:var(--blue);font-weight:700;flex-shrink:0
}
.upsell-note{
  font-size:.78rem;color:var(--blue-dark);
  font-style:italic;margin-top:14px;font-weight:500
}
.price-guarantee{
  display:flex;align-items:flex-start;gap:12px;
  background:#f0f8ff;border:1px solid var(--blue-border);
  border-radius:var(--rl);padding:16px 18px;margin-top:20px
}
.pg-icon svg{width:22px;height:22px;fill:var(--blue);flex-shrink:0}
.price-guarantee p{font-size:.82rem;line-height:1.65}
.pricing-footer-note{
  font-size:.72rem;color:var(--xfaint);
  text-align:center;margin-top:14px
}

@media(max-width:860px){
  .pricing-grid{
    display:flex;overflow-x:scroll;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    gap:14px;padding-bottom:6px
  }
  .pricing-grid::-webkit-scrollbar{display:none}
  .pcard{
    min-width:78vw;max-width:78vw;
    scroll-snap-align:center;flex-shrink:0
  }
  .upsell-grid{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════
   VORTEILE (blauer Hintergrund)
══════════════════════════════════════════ */
.feat-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1.1rem;margin-top:40px
}
.feat-card{
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.13);
  border-radius:var(--rl);padding:22px 18px;
  text-align:center;
  transition:all .22s var(--ease)
}
.feat-card:hover{
  background:rgba(255,255,255,.16);
  transform:translateY(-4px)
}
.feat-icon{
  width:48px;height:48px;
  background:rgba(255,255,255,.14);
  border-radius:var(--rl);
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 14px
}
.feat-icon svg{width:22px;height:22px;fill:#fff}
.feat-card h3{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.9rem;color:#fff;margin-bottom:7px
}
.feat-card p{font-size:.78rem;color:rgba(255,255,255,.62);line-height:1.65}
@media(max-width:720px){.feat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.feat-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════
   ABLAUF
══════════════════════════════════════════ */
.abl-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:0;position:relative;margin-top:44px
}
.abl-grid::before{
  content:'';
  position:absolute;top:22px;left:12.5%;right:12.5%;
  height:1.5px;background:var(--bdr2);z-index:0
}
.abl{text-align:center;position:relative;z-index:1;padding:0 12px}
.abl-n{
  width:44px;height:44px;border-radius:50%;
  background:var(--blue-pale);color:var(--blue);
  font-family:'Poppins',system-ui,sans-serif;font-size:1.1rem;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 14px;
  border:3px solid #fff;
  box-shadow:0 4px 16px rgba(21,101,192,.18)
}
.abl:first-child .abl-n{background:var(--grad);color:#fff;box-shadow:0 4px 16px rgba(21,101,192,.3)}
.abl h3{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.85rem;color:var(--ink);margin-bottom:6px;line-height:1.3
}
.abl p{font-size:.78rem;line-height:1.6}
.abl-tag{
  display:inline-block;
  font-size:.67rem;font-weight:700;
  color:var(--blue);background:var(--blue-pale);
  padding:2px 8px;border-radius:999px;margin-top:7px
}
.trust-nums{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:.9rem;margin-top:36px
}
.tn{
  background:#fff;border:1px solid var(--bdr);
  border-radius:var(--rl);padding:14px;text-align:center
}
.tn-num{
  font-family:'Poppins',system-ui,sans-serif;font-size:1.5rem;font-weight:700;
  background:var(--grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text
}
.tn-lbl{font-size:.7rem;color:var(--faint);margin-top:3px;line-height:1.35}

.vals-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.1rem}
.val-card{
  background:#fff;border:1px solid var(--bdr);
  border-radius:var(--rl);padding:18px 20px
}
.val-card h4{
  font-size:.68rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--faint);margin-bottom:10px
}
.val-list{display:flex;flex-direction:column;gap:6px}
.val-item{
  font-size:.82rem;color:var(--mid);
  display:flex;gap:7px
}
.val-item::before{
  content:'–';color:var(--blue);font-weight:700;flex-shrink:0
}

@media(max-width:680px){
  .abl-grid{grid-template-columns:1fr 1fr;gap:24px}
  .abl-grid::before{display:none}
  .trust-nums{grid-template-columns:1fr 1fr}
  .vals-grid{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════
   ZIELGRUPPEN
══════════════════════════════════════════ */
.ziel-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.1rem
}
.zcard{
  border:1.5px solid var(--bdr);border-radius:var(--rl);
  padding:24px;transition:all .22s var(--ease)
}
.zcard:hover{box-shadow:var(--shl);border-color:var(--blue-border);transform:translateY(-3px)}
.zcard-icon{
  width:42px;height:42px;
  background:var(--blue-pale);border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:14px
}
.zcard-icon svg{width:20px;height:20px;fill:var(--blue)}
.zcard h3{font-family:'Poppins',system-ui,sans-serif;font-size:.95rem;margin-bottom:6px}
.zcard p{font-size:.82rem;margin-bottom:12px}
.zcard-feats{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.zcard-feat{font-size:.78rem;color:var(--mid);display:flex;gap:5px}
.zcard-feat::before{content:'–';color:var(--blue);font-weight:700;flex-shrink:0}
.zcard-link{
  font-size:.8rem;font-weight:600;color:var(--blue);
  display:inline-flex;align-items:center;gap:4px
}
.zcard-link:hover{text-decoration:underline}
@media(max-width:720px){.ziel-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════
   BLOG / RATGEBER
══════════════════════════════════════════ */
.blog-featured{
  display:grid;grid-template-columns:1fr 1fr;gap:32px;
  background:var(--bg2);border:1px solid var(--bdr);
  border-radius:var(--rxl);padding:28px;
  margin-bottom:20px
}
.bf-meta{
  display:flex;gap:7px;align-items:center;
  flex-wrap:wrap;margin-bottom:12px
}
.btag{
  font-size:.66rem;font-weight:700;
  letter-spacing:.05em;text-transform:uppercase;
  border-radius:999px;padding:2px 9px
}
.btag-cat{background:var(--blue-pale);color:var(--blue-dark)}
.btag-new{background:#d1fae5;color:#065f46}
.btag-soon{background:var(--bg3);color:var(--faint)}
.btag-time{font-size:.72rem;color:var(--faint);font-weight:400}
.bf-title{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:1.15rem;font-weight:700;
  color:var(--ink);margin-bottom:10px;line-height:1.3
}
.bf-text{font-size:.85rem;margin-bottom:14px;line-height:1.7}
.bf-bullets{display:flex;flex-direction:column;gap:5px;margin-bottom:16px}
.bf-bullet{font-size:.8rem;color:var(--mid);display:flex;gap:6px}
.bf-bullet::before{content:'–';color:var(--blue);font-weight:700;flex-shrink:0}
.bf-stats{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:14px}
.bf-stat-num{
  font-family:'Poppins',system-ui,sans-serif;font-size:1.2rem;font-weight:700;color:var(--blue)
}
.bf-stat-lbl{font-size:.68rem;color:var(--faint);line-height:1.35}
.bf-quote{
  font-size:.78rem;color:var(--muted);font-style:italic;
  padding-top:12px;border-top:1px solid var(--bdr)
}
.bf-ctas{display:flex;flex-direction:column;gap:9px}
.bf-cta-main{
  display:block;text-align:center;padding:12px;
  background:var(--grad);color:#fff;
  border-radius:var(--r);font-weight:600;font-size:.85rem;
  text-decoration:none;
  box-shadow:0 3px 14px rgba(21,101,192,.25);
  transition:opacity .2s
}
.bf-cta-main:hover{opacity:.88}
.bf-cta-sec{
  display:block;text-align:center;padding:11px;
  border:1.5px solid var(--bdr2);color:var(--mid);
  border-radius:var(--r);font-weight:600;font-size:.85rem;
  text-decoration:none;transition:all .2s
}
.bf-cta-sec:hover{border-color:var(--blue);color:var(--blue)}
.art-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1rem
}
.art-card{
  background:#fff;border:1px solid var(--bdr);
  border-radius:var(--rl);overflow:hidden;
  transition:all .22s var(--ease)
}
.art-card:hover{transform:translateY(-4px);box-shadow:var(--shl)}
.art-card.coming{opacity:.45;pointer-events:none}
.art-thumb{
  height:100px;display:flex;align-items:center;
  justify-content:center;
  font-size:.75rem;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:var(--blue)
}
.at1{background:linear-gradient(135deg,#e8f4fc,#d0e8f8)}
.at2{background:linear-gradient(135deg,#e8f0fc,#d0dcf8)}
.at3{background:linear-gradient(135deg,#edf4e8,#d8edd0)}
.at4{background:linear-gradient(135deg,#f4f0e8,#ede0cc)}
.at5{background:linear-gradient(135deg,#f0e8f4,#e0ccf0)}
.at6{background:linear-gradient(135deg,#e8f4f4,#ccece8)}
.art-body{padding:16px}
.art-meta{
  display:flex;gap:6px;flex-wrap:wrap;align-items:center;
  margin-bottom:8px
}
.art-h{
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.87rem;font-weight:700;
  color:var(--ink);margin-bottom:5px;line-height:1.35
}
.art-p{font-size:.78rem;line-height:1.6;margin-bottom:10px}
.art-link{
  font-size:.78rem;font-weight:700;color:var(--blue);
  display:inline-flex;align-items:center;gap:3px
}
.blog-footer{
  background:var(--bg2);border:1px solid var(--bdr);
  border-radius:var(--rl);padding:16px 20px;
  display:flex;justify-content:space-between;align-items:center;
  gap:12px;flex-wrap:wrap;margin-top:16px
}
.blog-footer p{font-size:.85rem}
.blog-footer a{font-size:.85rem;font-weight:700;color:var(--blue)}
@media(max-width:820px){.blog-featured{grid-template-columns:1fr}}
@media(max-width:680px){
  .art-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:440px){.art-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════
   B2B
══════════════════════════════════════════ */
.b2b-inner{
  display:grid;grid-template-columns:1fr 1fr;
  gap:40px;align-items:start
}
.b2b-inner h2{
  font-family:'Poppins',system-ui,sans-serif;color:#fff;margin-bottom:12px
}
.b2b-inner p{
  color:rgba(255,255,255,.65);margin-bottom:16px
}
.b2b-feats{display:flex;flex-direction:column;gap:7px;margin-bottom:22px}
.b2b-feat{
  font-size:.85rem;color:rgba(255,255,255,.7);
  display:flex;gap:7px
}
.b2b-feat::before{content:'–';color:#93c5fd;font-weight:700;flex-shrink:0}
.b2b-btns{display:flex;gap:10px;flex-wrap:wrap}
.btn-b2b-white{
  padding:11px 22px;background:#fff;color:var(--blue-dark);
  border-radius:var(--r);font-size:.87rem;font-weight:700;
  text-decoration:none;transition:all .2s;display:inline-block
}
.btn-b2b-white:hover{background:var(--blue-pale)}
.btn-b2b-outline{
  padding:10px 22px;background:transparent;color:#fff;
  border:1.5px solid rgba(255,255,255,.35);
  border-radius:var(--r);font-size:.87rem;font-weight:600;
  text-decoration:none;transition:all .2s;display:inline-block
}
.btn-b2b-outline:hover{border-color:#fff}
.b2b-steps{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--rl);padding:22px;
  display:flex;flex-direction:column;gap:14px
}
.b2b-step{display:flex;gap:11px;align-items:flex-start}
.b2b-sn{
  width:24px;height:24px;border-radius:50%;
  background:var(--blue-bright);color:#fff;
  font-size:.72rem;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;margin-top:1px
}
.b2b-step p{
  font-size:.82rem;color:rgba(255,255,255,.65);
  margin:0;line-height:1.5
}
@media(max-width:680px){.b2b-inner{grid-template-columns:1fr}}

/* ══════════════════════════════════════════
   FAQ
══════════════════════════════════════════ */
.faq-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:.75rem;margin-top:32px
}
.fi{
  border:1.5px solid var(--bdr);border-radius:var(--r);
  overflow:hidden;background:#fff;
  transition:border-color .2s
}
.fi.open{border-color:var(--blue-border)}
.fq{
  width:100%;padding:14px 16px;
  display:flex;justify-content:space-between;align-items:center;
  gap:12px;background:none;border:none;cursor:pointer;
  font-family:'Poppins',system-ui,sans-serif;
  font-size:.85rem;font-weight:600;color:var(--ink);text-align:left;
  transition:background .15s
}
.fq:hover{background:var(--bg2)}
.fq svg{
  flex-shrink:0;width:17px;height:17px;
  transition:transform .25s;fill:var(--xfaint)
}
.fi.open .fq svg{transform:rotate(180deg);fill:var(--blue)}
.fa{
  display:none;padding:0 16px 14px;
  font-size:.82rem;color:var(--muted);line-height:1.75
}
.fi.open .fa{display:block}
.faq-cta{
  margin-top:18px;text-align:center;
  font-size:.85rem;color:var(--muted)
}
.faq-cta a{color:var(--blue);font-weight:700}
@media(max-width:680px){.faq-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════
   KONTAKT / LEAD FORM
══════════════════════════════════════════ */
.kontakt-inner{
  display:grid;grid-template-columns:1fr 1fr;
  gap:48px;align-items:start
}
.kontakt-inner h2{font-family:'Poppins',system-ui,sans-serif;color:#fff;margin-bottom:10px}
.kontakt-inner h2 em{font-style:italic;color:#93c5fd}
.kontakt-lead{
  color:rgba(255,255,255,.65);font-size:.9rem;
  line-height:1.75;margin-bottom:24px
}
.kopts{display:flex;flex-direction:column;gap:10px}
.kopt{
  display:flex;align-items:center;gap:12px;
  padding:13px 16px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r);
  text-decoration:none;transition:background .2s
}
.kopt:hover{background:rgba(255,255,255,.12)}
.kico{
  width:36px;height:36px;
  background:var(--blue-bright);border-radius:7px;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0
}
.kico svg{width:16px;height:16px;fill:#fff}
.klbl{font-size:.7rem;color:rgba(255,255,255,.45)}
.kval{font-size:.88rem;font-weight:600;color:#fff}
/* Form */
.kform{
  background:#fff;border-radius:var(--rxl);
  padding:28px 24px;box-shadow:0 20px 60px rgba(10,61,143,.2)
}
.kform h3{
  font-family:'Poppins',system-ui,sans-serif;font-size:1.05rem;
  font-weight:700;color:var(--ink);margin-bottom:4px
}
.kform-sub{
  font-size:.8rem;color:var(--muted);margin-bottom:20px
}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fg{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.fg label{
  font-size:.7rem;font-weight:700;color:var(--mid);
  text-transform:uppercase;letter-spacing:.05em
}
.req{color:#ef4444;margin-left:2px}
.fg input,.fg select,.fg textarea{
  width:100%;padding:10px 13px;
  border:1.5px solid var(--bdr);border-radius:var(--r);
  font-size:.87rem;font-family:'Poppins',system-ui,sans-serif;color:var(--ink);
  outline:none;transition:border-color .2s,box-shadow .2s;
  background:var(--bg2)
}
.fg input:focus,.fg select:focus,.fg textarea:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(21,101,192,.1);
  background:#fff
}
.fg input::placeholder{color:var(--xfaint)}
.fg textarea{resize:vertical;min-height:66px}
.fsub{
  width:100%;padding:13px;
  background:var(--grad);color:#fff;
  border:none;border-radius:var(--r);
  font-family:'Poppins',system-ui,sans-serif;font-size:.9rem;font-weight:600;
  cursor:pointer;
  box-shadow:0 3px 16px rgba(21,101,192,.3);
  transition:all .22s var(--ease);
  display:flex;align-items:center;justify-content:center;gap:7px
}
.fsub:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(21,101,192,.4)}
.fsub-note{
  font-size:.7rem;color:var(--faint);
  text-align:center;margin-top:8px
}
.pre-reg-note{
  margin-top:14px;
  max-width:720px;
  font-size:.82rem;
  line-height:1.7;
  color:#5b6f86;
}
.pre-reg-note-center{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
@media(max-width:860px){
  .kontakt-inner{grid-template-columns:1fr;gap:28px}
  .frow{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════
   CTA FINAL
══════════════════════════════════════════ */
.cta-fin{
  background:var(--grad);padding:64px 24px;
  text-align:center;position:relative;overflow:hidden
}
.cta-fin::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at center bottom,rgba(255,255,255,.07),transparent 55%)
}
.cta-fin-inner{
  max-width:680px;margin:0 auto;position:relative;z-index:1
}
.cta-fin h2{
  font-family:'Poppins',system-ui,sans-serif;color:#fff;
  font-size:clamp(1.5rem,3vw,2rem);margin-bottom:10px
}
.cta-fin p{
  color:rgba(255,255,255,.7);margin-bottom:28px;font-size:.95rem
}
.cta-fin-btns{
  display:flex;gap:14px;flex-wrap:nowrap;justify-content:center;align-items:center;
  margin-bottom:14px
}
.cta-fin-btns .btn{
  min-width:280px;
  flex:0 0 auto;
  justify-content:center;
}
.btn-fin-highlight{
  background:var(--grad);
  color:#fff;
  min-width:326px;
  padding:13px 32px;
  font-size:.9rem;
  font-weight:600;
  box-shadow:none;
  transition:none;
  order:2
}
.cta-fin-btns .btn-white:first-child{order:1}
.cta-fin-btns .btn-white:last-child{order:3}
.cta-fin-note{font-size:.72rem;color:rgba(255,255,255,.38)}

/* ══════════════════════════════════════════
   FOOTER
══════════════════════════════════════════ */
.footer{background:#080f1a;padding:24px 24px 22px}
.footer-top{
  max-width:1140px;margin:0 auto;
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;
  gap:36px;padding-bottom:28px;
  border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:18px
}
.footer-brand-block{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  margin-top:-28px
}
.footer-logo{margin:-18px 0 6px -38px}
.footer-logo img{
  height:138px;
  width:auto;
  display:block;
  filter:brightness(.82) saturate(1.35) contrast(1.08);
  opacity:1
}
.footer-brand{
  margin:-1cm 0 0;
  font-size:.78rem;color:rgba(255,255,255,.3);
  line-height:1.65;max-width:300px
}
.footer-col h4{
  font-size:.66rem;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:12px
}
.footer-col ul{display:flex;flex-direction:column;gap:8px}
.footer-col ul li a{
  font-size:.78rem;color:rgba(255,255,255,.28);
  transition:color .2s
}
.footer-col ul li a:hover{color:rgba(255,255,255,.75)}
.footer-bottom{
  max-width:1140px;margin:0 auto;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:10px;
  font-size:.7rem;color:rgba(255,255,255,.18)
}
.footer-legal{display:flex;gap:14px}
.footer-legal a{color:rgba(255,255,255,.22);transition:color .2s}
.footer-legal a:hover{color:rgba(255,255,255,.65)}
@media(max-width:860px){
  .footer-top{grid-template-columns:1fr 1fr;gap:24px}
  .footer-brand-block{margin-top:0}
}
@media(max-width:480px){
  .footer-top{grid-template-columns:1fr}
  .footer-logo img{height:74px}
}

/* ══════════════════════════════════════════
   WHATSAPP FLOAT
══════════════════════════════════════════ */
.wa-float{
  position:fixed;bottom:88px;right:22px;z-index:800;
  width:52px;height:52px;background:#25d366;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 18px rgba(37,211,102,.45);
  transition:transform .22s var(--ease)
}
.wa-float:hover{transform:scale(1.1)}
.wa-float svg{width:26px;height:26px;fill:#fff}
.wa-tip{
  position:absolute;right:60px;top:50%;transform:translateY(-50%);
  background:var(--ink);color:#fff;
  font-size:.72rem;font-weight:600;white-space:nowrap;
  padding:5px 11px;border-radius:5px;
  opacity:0;pointer-events:none;transition:opacity .2s
}
.wa-float:hover .wa-tip{opacity:1}

/* Sticky bar mobile */
.sbar{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:390;
  background:#fff;border-top:1px solid var(--bdr);
  padding:9px 14px;gap:8px
}
.sbar a{
  flex:1;text-align:center;padding:10px;border-radius:var(--r);
  font-weight:600;font-size:.8rem;text-decoration:none
}
.sbar a.call{background:var(--grad);color:#fff}
.sbar a.plan{
  border:1.5px solid var(--blue-border);color:var(--blue)
}
@media(max-width:680px){
  .sbar{display:flex}
  body{padding-bottom:58px}
  .wa-float{bottom:76px}
}

/* ══════════════════════════════════════════
   MODAL LEAD CAPTURE
══════════════════════════════════════════ */
.modal-ov{
  display:none;position:fixed;inset:0;z-index:1000;
  background:rgba(8,15,26,.7);backdrop-filter:blur(5px);
  align-items:center;justify-content:center;padding:20px
}
.modal-ov.open{display:flex}
.modal-box{
  background:#fff;border-radius:var(--rxl);
  padding:32px 26px;max-width:460px;width:100%;
  position:relative;box-shadow:0 32px 80px rgba(10,61,143,.25);
  animation:fadeUp .32s var(--ease)
}
.modal-close{
  position:absolute;top:14px;right:14px;
  width:30px;height:30px;
  background:var(--bg3);border-radius:50%;border:none;
  cursor:pointer;font-size:1rem;color:var(--muted);
  display:flex;align-items:center;justify-content:center;
  transition:all .2s
}
.modal-close:hover{background:var(--bdr2)}
.modal-ey{
  font-size:.66rem;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--blue);margin-bottom:6px
}
.modal-title{
  font-family:'Poppins',system-ui,sans-serif;font-size:1.2rem;font-weight:700;
  color:var(--ink);margin-bottom:5px
}
.modal-sub{font-size:.8rem;color:var(--muted);margin-bottom:18px;line-height:1.6}
.modal-pkg{
  background:var(--blue-pale);border:1px solid var(--blue-border);
  border-radius:var(--r);padding:10px 14px;margin-bottom:16px;
  display:flex;justify-content:space-between;align-items:center
}
.modal-pkg span{font-size:.8rem;color:var(--mid)}
.modal-pkg strong{
  font-family:'Poppins',system-ui,sans-serif;font-size:.9rem;font-weight:700;color:var(--blue-dark)
}

.cmp-wrap{overflow-x:auto;margin-top:32px}
    .cmp-table{width:100%;border-collapse:collapse;min-width:640px;background:#fff;border-radius:var(--rxl);overflow:hidden;box-shadow:var(--shl)}
    .cmp-table th{padding:20px 16px;text-align:center;font-size:.78rem;font-weight:700;background:#fff;border-bottom:2px solid var(--bdr);vertical-align:top}
    .cmp-table th:first-child{text-align:left;min-width:220px}
    .cmp-table th.col-featured{background:var(--blue-dark);color:#fff;position:relative}
    .cmp-badge-th{display:inline-block;background:var(--blue-bright);color:#fff;font-size:.6rem;font-weight:700;padding:2px 8px;border-radius:999px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
    .cmp-pname{font-family:'Poppins',system-ui,sans-serif;font-size:.95rem;font-weight:700;margin-bottom:4px}
    .col-featured .cmp-pname{color:#fff}
    .cmp-price{font-family:'Poppins',system-ui,sans-serif;font-size:1.6rem;font-weight:700;color:var(--ink);line-height:1}
    .col-featured .cmp-price{color:#fff}
    .cmp-price-note{font-size:.7rem;color:var(--faint);margin-top:3px}
    .col-featured .cmp-price-note{color:rgba(255,255,255,.65)}
    .cmp-table td{padding:12px 16px;border-bottom:1px solid var(--bdr);font-size:.82rem;color:var(--mid);vertical-align:middle}
    .cmp-table td:first-child{font-weight:500;color:var(--ink)}
    .cmp-table td.col-featured{background:#f0f5ff;text-align:center}
    .cmp-table td:not(:first-child){text-align:center}
    .cmp-table tr:last-child td{border-bottom:none}
    .cmp-table tr:hover td{background:var(--bg2)}
    .cmp-table tr:hover td.col-featured{background:#e8f0ff}
    .cmp-note-row td{font-size:.7rem;color:var(--faint);font-style:italic;padding:8px 16px;border-bottom:none!important;background:var(--bg2)!important}
    .cmp-note-row td:first-child{text-align:left}
    .cmp-td-sub{font-size:.7rem;color:var(--faint);display:block;margin-top:2px;font-weight:400}
    .cmp-cta-row td{padding:16px;background:#fff!important;border-bottom:none!important}
    .cmp-cta-row td.col-featured{background:#f0f5ff!important}
    .ck-yes{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:var(--blue-pale);border-radius:50%}
    .ck-yes svg{width:12px;height:12px;fill:var(--blue)}
    .ck-no{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:var(--bg3);border-radius:50%}
    .ck-no svg{width:12px;height:12px;fill:var(--xfaint)}
    .cmp-kontakt{background:var(--bg2);border:1px solid var(--bdr);border-radius:var(--rl);padding:20px 24px;margin-top:16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
    .cmp-kontakt p{font-size:.85rem;color:var(--mid)}
    .cmp-kontakt p strong{color:var(--ink)}
    @media(max-width:600px){.cmp-table{min-width:500px}}

.art-panel{display:none;position:fixed;inset:0;z-index:600;background:#fff;overflow-y:auto}
.art-panel.open{display:block}
.art-panel-inner{max-width:760px;margin:0 auto;padding:40px 24px 80px}
.ap-back{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:var(--blue);cursor:pointer;margin-bottom:28px;border:none;background:none;font-family:inherit;padding:0}
.ap-back:hover{text-decoration:underline}
.ap-cat{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--blue-pale);color:var(--blue);padding:3px 10px;border-radius:999px;margin-bottom:12px}
.ap-h1{font-family:'Poppins',system-ui,sans-serif;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700;color:var(--ink);margin-bottom:14px;line-height:1.2}
.ap-meta{display:flex;gap:16px;font-size:.75rem;color:var(--faint);margin-bottom:22px}
.ap-lead{font-size:1rem;color:var(--mid);line-height:1.8;padding:18px 20px;background:var(--blue-pale);border-left:3px solid var(--blue);border-radius:0 var(--r) var(--r) 0;margin-bottom:28px}
.ap-h2{font-family:'Poppins',system-ui,sans-serif;font-size:1.25rem;font-weight:700;color:var(--ink);margin:32px 0 10px;padding-bottom:8px;border-bottom:1px solid var(--bdr)}
.ap-h3{font-size:.95rem;font-weight:700;color:var(--ink);margin:20px 0 7px}
.ap-p{font-size:.88rem;color:var(--mid);line-height:1.85;margin-bottom:14px}
.ap-table{width:100%;border-collapse:collapse;margin:16px 0 22px;background:#fff;border-radius:var(--rl);overflow:hidden;border:1px solid var(--bdr)}
.ap-table th{background:var(--ink);color:rgba(255,255,255,.8);padding:10px 14px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:left}
.ap-table td{padding:10px 14px;font-size:.82rem;color:var(--mid);border-bottom:1px solid var(--bdr)}
.ap-table tr:last-child td{border-bottom:none}
.ap-table tr:nth-child(even) td{background:var(--bg2)}
.ap-green{color:#16a34a;font-weight:700}
.ap-red{color:#dc2626;font-weight:700}
.ap-list{margin:10px 0 16px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:5px}
.ap-list li{font-size:.85rem;color:var(--mid);display:flex;gap:7px;line-height:1.5}
.ap-list li::before{content:'–';color:var(--blue);font-weight:700;flex-shrink:0}
.ap-box-blue{background:var(--blue-pale);border:1px solid var(--blue-border);border-radius:var(--rl);padding:16px 18px;margin:16px 0}
.ap-box-blue p{font-size:.83rem;color:var(--mid)}
.ap-cta-box{background:linear-gradient(135deg,var(--blue-dark),var(--blue));border-radius:var(--rxl);padding:32px;text-align:center;margin:36px 0}
.ap-cta-box h3{font-family:'Poppins',system-ui,sans-serif;font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:7px}
.ap-cta-box p{font-size:.83rem;color:rgba(255,255,255,.7);margin-bottom:18px}
.ap-cta-note{font-size:.7rem;color:rgba(255,255,255,.4);margin-top:8px}
.ap-author{background:var(--bg2);border:1px solid var(--bdr);border-radius:var(--rl);padding:16px 18px;display:flex;align-items:center;gap:12px;margin-top:36px}
.ap-av{width:40px;height:40px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem;font-weight:700;flex-shrink:0}
.ap-aname{font-size:.83rem;font-weight:700}
.ap-abio{font-size:.75rem;color:var(--faint);margin-top:2px;line-height:1.4}
.ap-related{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
.ap-rel-card{background:#fff;border:1px solid var(--bdr);border-radius:var(--rl);padding:14px;cursor:pointer;transition:all .2s;display:block}
.ap-rel-card:hover{border-color:var(--blue-border);transform:translateY(-2px)}
.ap-rel-cat{font-size:.65rem;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;display:block}
.ap-rel-h{font-size:.82rem;font-weight:700;color:var(--ink);line-height:1.35}
.ap-rel-sub{font-size:.72rem;color:var(--faint);margin-top:2px}

/* Multi-page additions */
.page-hero{
  padding:78px 0 48px;
  background:linear-gradient(180deg,#fff 0%,var(--bg2) 100%)
}
.page-hero-inner{
  display:grid;
  grid-template-columns:1.3fr .7fr;
  gap:24px;
  align-items:start
}
.page-hero h1{margin-bottom:14px}
.page-hero h1,
.thankyou-card h1{
  max-width:none
}
.page-hero p{max-width:64ch}
.page-hero-card,
.thankyou-card,
.legal-content,
.article-inline{
  background:#fff;
  border:1px solid var(--bdr);
  border-radius:var(--rxl);
  box-shadow:var(--sh)
}
.page-hero-card{
  padding:24px
}
.page-hero-card strong{
  display:block;
  font-size:.92rem;
  margin-bottom:8px
}
.service-grid{grid-template-columns:repeat(2,1fr)}
.home-pricing{
  position:relative;
  overflow:hidden;
  padding-top:32px;
  padding-bottom:56px;
  background:#eef4ff
}
.home-pricing::after{
  display:none
}
.home-pricing .home-pricing-shell{
  width:min(1140px, calc(100vw - 48px));
  max-width:1140px;
  margin-left:auto;
  margin-right:auto;
  padding:0;
}
.home-pricing .pricing-grid{
  width:100%;
  margin:0 auto;
  gap:1.25rem;
  grid-template-columns:repeat(3, minmax(0, 360px));
  justify-content:center
}
.packages-section .pricing-grid{
  width:100%;
  margin:0 auto;
  gap:1.25rem;
  grid-template-columns:repeat(3, minmax(0, 360px));
  justify-content:center
}
.home-pricing .pcard{
  min-height:auto;
  padding-bottom:28px
}
.packages-section .pcard{
  min-height:auto;
  padding-bottom:28px
}
.home-pricing .pfeats{
  margin-bottom:22px
}
.packages-section .pfeats{
  margin-bottom:22px
}
@media (max-width:980px){
  .home-pricing .home-pricing-shell{
    width:auto;
    margin-left:auto;
    margin-right:auto;
    padding:0 20px;
  }
  .home-pricing{
    padding-bottom:40px;
  }
  .home-pricing .pcard{
    min-height:auto;
  }
  .landlord{
    margin-top:0;
    border-top-left-radius:26px;
    border-top-right-radius:26px;
  }
}
@media (max-width:640px){
  .home-pricing .home-pricing-shell{
    padding:0 16px;
  }
  .landlord{
    margin-top:0;
    border-top-left-radius:20px;
    border-top-right-radius:20px;
  }
}
.field-error{
  margin-top:8px;
  font-size:.78rem;
  color:#b91c1c;
  font-weight:600
}
.kform textarea{
  width:100%;
  min-height:140px;
  resize:vertical
}
.article-stack{padding-top:0}
.article-inline{
  padding:34px 28px;
  margin-bottom:24px
}
.article-compare{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:14px 0 20px
}
.article-compare-good,
.article-compare-bad{
  border-radius:var(--rl);
  padding:16px
}
.article-compare-good{
  background:#f0fdf4;
  border:1px solid #bbf7d0
}
.article-compare-bad{
  background:#fef2f2;
  border:1px solid #fecaca
}
.article-compare p{
  font-size:.78rem;
  font-weight:700;
  margin-bottom:8px
}
.thankyou-card{
  max-width:760px;
  margin:0 auto;
  padding:48px 36px;
  text-align:center
}
.legal-content{
  padding:36px 32px;
  display:grid;
  gap:14px
}
.legal-content h2{
  font-size:1.05rem;
  margin-top:12px
}
.legal-content p{
  margin:0
}
@media(max-width:980px){
  .page-hero-inner,
  .service-grid,
  .article-compare{
    grid-template-columns:1fr
  }
}

.services-hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:24px
}
.services-hero-list{
  margin:12px 0 0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:8px
}
.services-hero-list li{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.9rem;
  color:var(--mid)
}
.service-trust-bar{
  background:#f0f4ff;
  border-top:1px solid #dce6fa;
  border-bottom:1px solid #dce6fa;
  padding:28px 0
}
.service-trust-bar .trust-bar-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap
}
.trust-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  flex:1;
  min-width:140px
}
.trust-num{
  font-size:1.9rem;
  font-weight:700;
  color:var(--blue,#1565c0);
  line-height:1.1
}
.trust-label{
  font-size:.78rem;
  color:#555;
  margin-top:4px;
  max-width:160px
}
.trust-divider{
  width:1px;
  height:40px;
  background:#c8d8f5;
  flex-shrink:0
}
.service-intro-copy{
  max-width:640px;
  color:#555;
  margin-bottom:40px
}
.zcard-icon{
  width:52px;
  height:52px;
  background:#eef2ff;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:16px
}
.service-note{
  font-size:.8rem;
  color:#888;
  margin-top:12px
}
.service-process-section{
  background:#fafbff
}
.process-grid{
  display:flex;
  align-items:flex-start;
  gap:0;
  margin-top:40px;
  flex-wrap:wrap;
  justify-content:center
}
.process-step{
  flex:1;
  min-width:200px;
  max-width:280px;
  text-align:center;
  padding:0 16px
}
.process-num{
  width:56px;
  height:56px;
  background:var(--blue,#1565c0);
  color:#fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.4rem;
  font-weight:700;
  margin:0 auto 16px
}
.process-step h3{
  font-size:1rem;
  font-weight:600;
  margin-bottom:8px
}
.process-step p{
  font-size:.88rem;
  color:#555;
  line-height:1.55
}
.process-arrow{
  font-size:1.8rem;
  color:#c5d3f0;
  padding:28px 8px 0;
  flex-shrink:0
}
.service-process-cta{
  text-align:center;
  margin-top:40px
}
.faq-list{
  margin-top:32px;
  display:flex;
  flex-direction:column;
  gap:0;
  border-top:1px solid #e5eaf5
}
.faq-item{
  border-bottom:1px solid #e5eaf5;
  padding:0
}
.faq-item summary{
  padding:18px 0;
  font-weight:600;
  font-size:.97rem;
  cursor:pointer;
  list-style:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#1a1a2e;
  user-select:none
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:'+';
  font-size:1.4rem;
  font-weight:300;
  color:var(--blue,#1565c0);
  flex-shrink:0;
  margin-left:16px;
  transition:transform .2s
}
.faq-item[open] summary::after{
  content:'−'
}
.faq-item p{
  padding:0 0 18px;
  font-size:.9rem;
  color:#444;
  line-height:1.65;
  max-width:720px
}
.pricing-guide-section .service-grid{
  grid-template-columns:repeat(3,1fr)
}
.product-detail-intro{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin:18px 0 28px
}
.product-detail-hero,
.product-point,
.product-coverage-card,
.product-facts-box{
  background:#fff;
  border:1px solid var(--bdr);
  border-radius:var(--rxl);
  box-shadow:var(--sh)
}
.product-detail-hero{
  padding:28px
}
.product-detail-hero h3{
  font-size:1.3rem;
  margin-bottom:10px
}
.product-detail-badge{
  display:inline-block;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#fff;
  background:var(--grad);
  padding:6px 10px;
  border-radius:999px;
  margin-bottom:14px
}
.product-detail-points{
  display:grid;
  gap:16px
}
.product-point{
  padding:22px 24px
}
.product-point strong{
  display:block;
  margin-bottom:8px;
  font-size:.95rem
}
.product-coverage-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px
}
.product-coverage-card{
  padding:26px 24px
}
.product-coverage-card h3{
  margin-bottom:10px
}
.coverage-list{
  margin:18px 0 0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:10px
}
.coverage-list li{
  position:relative;
  padding-left:24px;
  color:var(--mid);
  line-height:1.55
}
.coverage-list.included li::before,
.coverage-list.notes li::before{
  content:'';
  position:absolute;
  left:0;
  top:8px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--blue)
}
.coverage-exclusion{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--bdr)
}
.coverage-exclusion strong{
  display:block;
  font-size:.86rem;
  margin-bottom:6px
}
.coverage-exclusion p{
  font-size:.84rem;
  color:var(--muted)
}
.product-facts-box{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:22px;
  padding:28px;
  margin-top:24px
}
.product-facts-copy h3{
  margin-bottom:10px
}
.coverage-list.notes{
  margin-top:0
}
.blog-cta-band{
  background:linear-gradient(180deg,#fff 0%,var(--bg2) 100%)
}
.blog-cta-inner{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:28px;
  align-items:center;
  background:#fff;
  border:1px solid var(--bdr);
  border-radius:var(--rxl);
  box-shadow:var(--sh);
  padding:32px 30px
}
.blog-cta-inner h2{
  max-width:18ch;
  margin-bottom:12px
}
.blog-cta-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  justify-content:flex-end
}
@media (max-width:700px){
  .trust-divider{display:none}
  .service-trust-bar .trust-bar-inner{
    justify-content:center;
    gap:20px
  }
  .process-arrow{display:none}
  .process-step{
    max-width:100%;
    padding:0 0 24px
  }
}
@media(max-width:980px){
  .product-detail-intro,
  .product-coverage-grid,
  .product-facts-box,
  .pricing-guide-section .service-grid,
  .blog-cta-inner{
    grid-template-columns:1fr
  }
  .blog-cta-actions{
    justify-content:flex-start
  }
  .blog-cta-inner h2{
    max-width:none
  }
}

/* Home conversion refresh */
.container{
  width:min(100%, 1520px);
  margin:0 auto;
  padding:0 clamp(20px,3vw,40px)
}
.wrap{
  width:min(100%, 1440px);
  margin:0 auto;
  padding:0 clamp(20px,3vw,40px)
}
.emergency-bar{
  position:sticky;
  top:0;
  z-index:1001;
  background:#dc2626;
  color:#fff;
  padding:8px 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  flex-wrap:wrap;
  text-align:center;
  font-size:14px
}
.emergency-phone{
  color:#fff;
  text-decoration:underline;
  font-weight:600
}
.emergency-hours{
  opacity:.92
}
.nav-inner{
  min-height:72px;
  height:72px;
  padding-top:0;
  padding-bottom:0
}
.mob-menu{
  top:72px
}
.nav{
  top:40px;
  z-index:1000
}
.hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  align-items:stretch;
  background:
    radial-gradient(circle at 14% 24%, rgba(255,255,255,.08), transparent 28%),
    radial-gradient(circle at 84% 18%, rgba(245,158,11,.08), transparent 18%),
    linear-gradient(112deg,#08111f 0%,#122238 52%,#1b3352 100%);
  min-height:calc(100svh - 112px);
  padding:0
}
.home-hero{
  background:#fff;
  min-height:auto
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(6,12,22,.1) 0%, rgba(6,12,22,0) 30%, rgba(6,12,22,.1) 100%),
    linear-gradient(180deg, rgba(255,255,255,.03), transparent 28%);
  z-index:0
}
.home-hero::before{
  display:none
}
.hero::after{
  content:"";
  position:absolute;
  left:20%;
  right:-4%;
  top:16%;
  bottom:16%;
  background:linear-gradient(90deg, transparent 0%, rgba(255,255,255,.03) 100%);
  z-index:0
}
.home-hero::after{
  display:none
}
.hero-bg-circle,.hero-inner,.hero-cards-row,.hero-sub,.hero-ctas,.hero-pills{
  display:none
}
.hero-content{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(460px,1.05fr) minmax(0,.92fr);
  gap:clamp(44px,5vw,88px);
  align-items:stretch;
  min-height:calc(100svh - 112px);
  padding-top:0;
  padding-bottom:clamp(12px,1.4vw,22px)
}
.hero-text{
  color:#fff;
  width:100%;
  max-width:640px;
  justify-self:start;
  align-self:center;
  padding-top:clamp(16px,2vw,32px);
  margin-top:0;
  min-height:clamp(430px,56vh,560px);
  display:flex;
  flex-direction:column
}
.home-hero .hero-text{
  color:var(--ink);
  width:100%;
  max-width:none;
  min-height:460px;
  justify-content:center;
  align-items:center;
  justify-self:start;
  align-self:center;
  padding:clamp(18px,2vw,30px) clamp(10px,1.4vw,18px) clamp(18px,2vw,26px) 0
}
.home-hero .hero-content{
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  min-height:auto;
  padding:18px 0 12px;
  grid-template-columns:minmax(360px,470px) minmax(360px,470px);
  gap:clamp(28px,3vw,48px);
  justify-content:start;
  align-items:center;
  background:
    radial-gradient(circle at 76% 44%, rgba(191,219,254,.48) 0%, rgba(191,219,254,0) 26%),
    linear-gradient(90deg, #f8fbff 0%, #ffffff 44%, #f4f8ff 100%)
}
.hero-title{
  font-size:clamp(2.9rem,4.7vw,5rem);
  color:#fff;
  font-weight:700;
  letter-spacing:-.045em;
  line-height:1.05;
  margin-bottom:18px;
  max-width:12ch
}
.home-hero .hero-title{
  color:#111827;
  font-size:clamp(2rem,2.45vw,2.95rem);
  letter-spacing:-.055em;
  line-height:1.08;
  margin-bottom:14px;
  max-width:9.6ch;
  text-align:center;
  margin-left:auto;
  margin-right:auto
}
.hero-title-blue{
  color:#bfdbfe
}
.home-hero .hero-title-blue{
  color:#2563eb
}
.hero-highlight,
.text-blue{
  color:#fff
}
.home-hero .hero-highlight,
.home-hero .text-blue{
  color:#111827
}
.hero-subtitle{
  font-size:clamp(.92rem,1vw,1rem);
  color:#d6e2f1;
  line-height:1.62;
  margin-bottom:0;
  max-width:56ch;
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto
}
.home-hero .hero-subtitle{
  font-size:clamp(.98rem,.96vw,1.02rem);
  color:#4b5563;
  line-height:1.58;
  max-width:35ch;
  text-align:left;
  text-wrap:pretty
}
.home-hero .eyebrow{
  color:#1d4ed8;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(191,219,254,.92);
  box-shadow:0 10px 30px rgba(37,99,235,.08)
}
.hero-cta{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  justify-content:flex-start;
  width:100%;
  margin-top:auto;
  margin-bottom:0;
  padding-top:30px
}
.home-hero .hero-cta{
  padding-top:18px;
  justify-content:center
}
.btn-primary-lg,
.btn-phone-lg{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 20px;
  border-radius:14px;
  font-size:13px;
  font-weight:600;
  transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease
}
.btn-primary-lg{
  background:var(--cta-orange);
  color:var(--cta-ink);
  box-shadow:0 14px 30px rgba(245,158,11,.22)
}
.home-hero .btn-primary-lg{
  box-shadow:0 18px 36px rgba(245,158,11,.24)
}
.btn-primary-lg:hover{
  background:var(--cta-orange-hover);
  transform:translateY(-2px)
}
.btn-phone-lg{
  background:transparent;
  border:1px solid rgba(255,255,255,.26);
  color:#fff;
  backdrop-filter:none
}
.home-hero .btn-phone-lg{
  background:#fff;
  border:1px solid #dbe5f2;
  color:#173557;
  box-shadow:none;
  backdrop-filter:none
}
.btn-phone-lg:hover{
  background:rgba(255,255,255,.08);
  transform:translateY(-2px)
}
.home-hero .btn-phone-lg:hover{
  background:#f8fbff;
  border-color:#bfd4ee
}
.hero-image{
  min-width:0;
  position:relative;
  display:flex;
  align-items:stretch;
  align-self:stretch;
  order:-1;
  margin-top:0;
  height:100%
}
.home-hero .hero-image{
  margin-top:0;
  width:100%;
  max-width:470px;
  justify-self:start;
  align-self:center;
  padding:6px 0 8px 0
}
.home-hero .hero-image::before{
  display:none
}
.hero-image::before{
  content:"";
  position:absolute;
  inset:6% auto 6% -8%;
  width:88%;
  background:radial-gradient(circle, rgba(37,99,235,.18), transparent 68%);
  filter:blur(40px);
  z-index:0
}
.home-hero .hero-image::before{
  inset:10% auto 8% -6%;
  width:84%;
  background:radial-gradient(circle, rgba(96,165,250,.22), transparent 70%);
  filter:blur(42px)
}
.hero-img-placeholder{
  position:relative;
  overflow:hidden;
  border-radius:0;
  min-height:calc(100svh - 112px);
  height:100%;
  width:100%;
  background:#0f172a;
  border:none;
  box-shadow:none;
  z-index:1
}
.home-hero .hero-img-placeholder{
  background:#eaf3ff;
  border-radius:16px;
  min-height:360px;
  aspect-ratio:auto;
  border:1px solid rgba(148,163,184,.22);
  box-shadow:0 30px 70px rgba(37,99,235,.14)
}
.hero-img-placeholder::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(15,23,42,.04) 0%, rgba(15,23,42,.14) 55%, rgba(15,23,42,.44) 100%);
  z-index:1;
  pointer-events:none
}
.home-hero .hero-img-placeholder::before{
  background:linear-gradient(90deg, rgba(17,24,39,.06) 0%, rgba(17,24,39,0) 22%)
}

.home-hero .hero-img-placeholder img{
  min-height:360px
}
.hero-img-placeholder img{
  width:100%;
  height:100%;
  min-height:calc(100svh - 112px);
  object-fit:cover;
  object-position:center center
}
.hero-img-fallback{
  display:none;
  width:100%;
  height:100%;
  min-height:calc(100svh - 112px);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:14px;
  color:#cbd5e1;
  padding:32px
}
.home-hero .hero-img-fallback{
  color:#64819c
}
.hero-img-fallback svg{
  width:140px;
  height:140px
}
.hero-img-placeholder.no-image .hero-img-fallback{
  display:flex
}
.home-trust-bar{
  position:relative;
  z-index:2;
  margin-top:0;
  background:transparent;
  border:none;
  padding:28px 0 28px
}
.home-trust-bar .trust-bar-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:0;
  flex-wrap:nowrap;
  background:#fff;
  border:1px solid #e5ebf4;
  border-radius:28px;
  padding:22px 28px;
  box-shadow:0 12px 34px rgba(15,23,42,.06);
  overflow-x:auto;
  overflow-y:hidden;
  -ms-overflow-style:none;
  scrollbar-width:none
}
.home-trust-bar .trust-bar-inner::-webkit-scrollbar{display:none}
.tb-item{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:center;
  flex:1 1 0;
  min-width:0;
  white-space:nowrap;
  padding:0 20px;
  font-size:14px;
  color:#374151;
  font-weight:600
}
.tb-icon{
  font-size:18px
}
.tb-divider{
  width:1px;
  height:24px;
  background:#cbd5e1;
  flex-shrink:0
}
@media (max-width:1280px){
  .home-trust-bar .trust-bar-inner{
    justify-content:flex-start;
  }

  .tb-item{
    justify-content:flex-start;
    flex:0 0 auto;
    min-width:max-content;
    padding:0 18px;
  }
}
.landlord{
  position:relative;
  overflow:hidden;
  margin-top:0;
  background:
    radial-gradient(circle at 12% 24%, rgba(96,165,250,.14) 0%, rgba(96,165,250,0) 24%),
    linear-gradient(180deg, #f7faff 0%, #eef4fb 100%);
  padding:clamp(40px,4.6vw,64px) 0
}
.landlord::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.56) 0%, rgba(255,255,255,.08) 22%, rgba(255,255,255,0) 52%);
  pointer-events:none
}
.landlord-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.24fr) minmax(280px,320px);
  gap:30px;
  align-items:center;
  padding:34px 38px;
  border-radius:32px;
  background:linear-gradient(135deg, rgba(255,255,255,.96) 0%, rgba(244,248,255,.92) 100%);
  border:1px solid #d8e4f2;
  box-shadow:0 24px 56px rgba(15,23,42,.08)
}
.landlord-main{
  display:grid;
  grid-template-columns:68px minmax(0,1fr);
  gap:18px 24px;
  align-items:start
}
.landlord-icon{
  width:68px;
  height:68px;
  border-radius:20px;
  border:1px solid #c9dcf4;
  background:linear-gradient(180deg, #f3f8ff 0%, #e9f1fb 100%);
  box-shadow:0 12px 24px rgba(37,99,235,.08);
  flex-shrink:0
}
.landlord-text{
  min-width:0
}
.landlord-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid #d7e6fa;
  color:#2563eb;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:14px;
  box-shadow:0 10px 24px rgba(37,99,235,.08)
}
.landlord-text h2{
  color:#1a2332;
  font-size:clamp(2rem,2.35vw,2.7rem);
  line-height:1.12;
  letter-spacing:-.04em;
  margin-bottom:12px
}
.landlord-text p{
  max-width:52ch;
  color:#516174;
  font-size:16px;
  line-height:1.68
}
.landlord-list{
  list-style:none;
  grid-column:2;
  color:#243b53;
  margin:6px 0 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 14px
}
.landlord-list li{
  min-height:100%;
  padding:14px 16px;
  border-radius:16px;
  background:#fff;
  border:1px solid #dce7f3;
  box-shadow:0 10px 24px rgba(15,23,42,.05)
}
.landlord-cta{
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
  padding:24px 22px;
  border-radius:24px;
  background:linear-gradient(180deg, #fffaf0 0%, #ffffff 100%);
  border:1px solid #f6d9a2;
  box-shadow:0 18px 38px rgba(245,158,11,.12);
  text-align:center
}
.landlord-cta-label{
  color:#1f3b61;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase
}
.landlord-cta .btn-primary-lg{
  width:100%;
  min-height:52px
}
.landlord-promise{
  color:#64748b;
  font-size:14px;
  margin-top:0
}
.why-us{
  background:#fff;
  padding:clamp(88px,8vw,128px) 0
}
.why-us h2,
.reviews h2{
  text-align:center
}
.section-sub{
  max-width:760px;
  margin:18px auto 0;
  text-align:center;
  color:#64748b;
  font-size:17px;
  line-height:1.8
}
.why-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px;
  margin-top:48px
}
.why-item{
  background:#fff;
  border-radius:20px;
  padding:28px;
  border:1px solid #e2e8f0;
  box-shadow:0 12px 34px rgba(15,23,42,.05);
  transition:transform .2s ease,box-shadow .2s ease
}
.why-item:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 36px rgba(15,23,42,.12)
}
.why-img{
  height:220px;
  border-radius:16px;
  overflow:hidden;
  position:relative;
  background:#f1f5f9;
  margin-bottom:18px
}
.why-img img{
  width:100%;
  height:100%;
  object-fit:cover
}
.why-img-icon{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  font-size:48px;
  opacity:0;
  pointer-events:none
}
.why-img.no-image .why-img-icon{
  opacity:1
}
.why-item h3{
  color:#1a2332;
  font-size:18px;
  font-weight:600;
  margin-bottom:10px
}
.why-item p{
  color:#64748b;
  font-size:15px;
  line-height:1.6
}
.reviews{
  background:#f8fafc;
  padding:clamp(88px,8vw,128px) 0
}
.reviews-header{
  text-align:center;
  margin-bottom:56px
}
.reviews-overall{
  display:flex;
  gap:12px;
  justify-content:center;
  align-items:center;
  margin-top:12px;
  flex-wrap:wrap
}
.reviews-score{
  font-size:24px;
  font-weight:700;
  color:#1a2332
}
.reviews-stars{
  color:#f59e0b;
  font-size:20px
}
.reviews-count{
  color:#64748b;
  font-size:14px
}
.reviews-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px
}
.review-card{
  background:#fff;
  border-radius:20px;
  padding:32px;
  border:1px solid #e2e8f0;
  box-shadow:0 12px 34px rgba(15,23,42,.06)
}
.featured-review{
  border:2px solid #3b82f6
}
.review-top{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:14px;
  align-items:center
}
.review-avatar{
  display:flex
}
.avatar-initials{
  width:44px;
  height:44px;
  border-radius:50%;
  background:#1e3a5f;
  color:#fff;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center
}
.review-name{
  font-weight:600;
  color:#1a2332
}
.review-location{
  color:#94a3b8;
  font-size:13px
}
.review-card .review-stars{
  color:#f59e0b;
  font-size:18px
}
.review-text{
  color:#374151;
  font-size:15px;
  line-height:1.7;
  font-style:italic;
  margin:16px 0
}
.review-date{
  color:#94a3b8;
  font-size:13px
}
.reviews-cta{
  text-align:center;
  margin-top:28px
}
.btn-google-review{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border:2px solid #4285F4;
  color:#4285F4;
  padding:12px 28px;
  border-radius:8px;
  transition:all .2s ease
}
.btn-google-review:hover{
  background:#4285F4;
  color:#fff
}
.founder{
  background:#fff;
  padding:clamp(88px,8vw,128px) 0
}
.founder-grid{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:clamp(36px,4.8vw,72px);
  align-items:start
}
.founder-text{
  max-width:580px;
  align-self:start;
  margin-top:-20px;
  padding:42px 32px 32px;
  border:1px solid #e4edf7;
  border-radius:28px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 18px 48px rgba(15,23,42,.08);
}
.founder-text h2{
  max-width:none;
  font-size:clamp(2.15rem,2.7vw,3rem);
  line-height:1.08;
  letter-spacing:-.04em;
  margin-bottom:0;
  white-space:normal;
}
.founder-text p{
  max-width:none;
  font-size:.98rem;
  line-height:1.68;
  color:#526579;
  margin:0;
}
.founder-copy{
  display:grid;
  margin-top:-12px;
  gap:10px;
}
.founder-image{
  border-radius:28px;
  overflow:hidden;
  aspect-ratio:4/3;
  background:#f1f5f9;
  position:relative
}
.founder-image img{
  width:100%;
  height:100%;
  object-fit:cover
}
.founder-img-placeholder{
  display:none;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  height:100%;
  color:#94a3b8;
  font-size:64px;
  text-align:center;
  gap:12px
}
.founder-image.no-image .founder-img-placeholder{
  display:flex
}
.founder-img-placeholder p{
  color:#94a3b8;
  font-size:16px
}
.founder-badge{
  display:inline-block;
  background:var(--cta-orange);
  color:var(--cta-ink);
  border-radius:999px;
  padding:8px 16px;
  font-size:13px;
  font-weight:600;
  margin-bottom:18px
}
.founder-lead{
  font-size:1.02rem;
  color:#243447;
  font-weight:500;
  line-height:1.7;
  margin:0
}
.founder-facts{
  margin:18px 0 0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  max-width:none
}
.founder-fact{
  display:flex;
  gap:10px;
  align-items:flex-start;
  color:#334155;
  font-size:14px;
  line-height:1.5;
  padding:12px 14px;
  border:1px solid #dbe7f4;
  border-radius:16px;
  background:#fff;
  min-height:100%;
  box-shadow:0 8px 24px rgba(37,99,235,.06)
}
.fact-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:10px;
  background:#eef4ff;
  color:#2563eb;
  flex-shrink:0
}
.founder-text .btn.btn-primary{
  margin-top:28px;
  padding:11px 20px;
  font-size:.84rem;
  min-height:44px;
  border-radius:12px
}
@media (max-width:1024px){
  .hero-title{
    font-size:clamp(2.9rem,6vw,4.2rem)
  }
  .hero-content,
  .founder-grid{
    grid-template-columns:1fr
  }
  .hero-content{
    min-height:auto
  }
  .hero-text{
    max-width:none;
    justify-self:stretch;
    padding-top:0;
    margin-top:0;
    min-height:auto
  }
  .why-grid,
  .reviews-grid{
    grid-template-columns:repeat(2,1fr)
  }
}
@media (max-width:768px){
  .emergency-bar{
    position:relative;
    font-size:12px;
    gap:10px;
    padding:8px 14px
  }
  .nav{
    top:0
  }
  .nav-inner{
    min-height:80px;
    padding:10px 20px
  }
  .nav-brand-logo{
    height:76px
  }
  .mob-menu{
    top:80px;
    padding:20px 20px 32px
  }
  .hero{
    min-height:auto
  }
  .hero::after{
    bottom:-180px
  }
  .home-hero::after{
    display:none
  }
  .hero-content{
    gap:24px;
    padding-top:12px;
    padding-bottom:36px
  }
  .home-hero .hero-content{
    width:auto;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
    grid-template-columns:1fr;
    gap:0
  }
  .home-hero .hero-text{
    min-height:auto;
    padding:28px 20px 34px
  }
  .hero-title{
    font-size:clamp(2.35rem,11vw,3.4rem)
  }
  .home-hero .hero-title{
    font-size:clamp(2.35rem,9.5vw,3.4rem);
    max-width:11ch
  }
  .hero-subtitle{
    font-size:14px;
    margin-bottom:10px
  }
  .home-hero .hero-subtitle{
    font-size:15px;
    max-width:none
  }
  .why-grid,
  .reviews-grid,
  .landlord-list{
    grid-template-columns:1fr
  }
  .hero-cta{
    flex-direction:column
  }
  .btn-primary-lg,
  .btn-phone-lg{
    width:100%
  }
  .btn-primary-lg{
    padding:14px 22px;
    font-size:15px;
    min-height:48px
  }
  .tb-divider{
    display:block
  }
  .home-trust-bar .trust-bar-inner{
    justify-content:flex-start;
    border-radius:22px;
    padding:16px 18px
  }
  .hero-img-placeholder,
  .hero-img-placeholder img,
  .hero-img-fallback{
    min-height:380px
  }
  .tb-item{
    width:auto;
    padding:0 16px;
    font-size:13px
  }
  .landlord-inner{
    gap:22px;
    padding:24px 20px
  }
  .landlord-inner{
    grid-template-columns:1fr;
  }
  .landlord-main{
    grid-template-columns:56px minmax(0,1fr);
    gap:16px;
  }
  .landlord-text h2{
    font-size:24px
  }
  .landlord-text p{
    font-size:16px;
  }
  .landlord-list{
    grid-column:1;
  }
  .landlord-cta{
    max-width:420px;
    padding:20px 18px;
  }
  .founder{
    padding:64px 0
  }
}
@media (max-width:640px){
  .nav-inner{
    min-height:76px;
    padding:10px 16px
  }
  .nav-brand-logo{
    height:72px
  }
  .mob-menu{
    top:76px;
    padding:18px 16px 28px
  }
  .container,
  .wrap{
    padding:0 16px
  }
  .hero-content{
    padding-top:10px;
    padding-bottom:28px
  }
  .home-hero .hero-text{
    padding:24px 16px 28px
  }
  .pricing-grid{
    display:grid;
    grid-template-columns:1fr;
    overflow:visible;
    scroll-snap-type:none;
    gap:18px
  }
  .pcard{
    min-width:0;
    max-width:none;
    scroll-snap-align:none
  }
  .cta-fin-btns{
    flex-direction:column
  }
  .cta-fin-btns .btn{
    width:100%;
    min-width:0;
    white-space:normal
  }
  .review-top{
    grid-template-columns:auto 1fr;
    align-items:start
  }
  .review-top .review-stars{
    grid-column:2;
    justify-self:start
  }
  .hero-img-placeholder,
  .hero-img-placeholder img,
  .hero-img-fallback{
    min-height:320px
  }
  .dot-divider{
    display:none
  }
}

/* Service detail pages */
.page-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(96,165,250,.24), transparent 26%),
    radial-gradient(circle at 88% 14%, rgba(14,165,233,.16), transparent 20%),
    radial-gradient(circle at 48% 100%, rgba(191,219,254,.82), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f9fbff 46%,#eef5ff 100%);
  color:var(--ink);
  padding:60px 0
}
.page-hero::before,
.contact-options::before,
.thankyou-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.66) 0%, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 22% 72%, rgba(255,255,255,.74), transparent 32%);
  z-index:0
}
.page-hero::after,
.contact-options::after,
.thankyou-hero::after{
  content:"";
  position:absolute;
  left:54%;
  right:-8%;
  top:12%;
  bottom:8%;
  background:radial-gradient(circle, rgba(37,99,235,.11) 0%, rgba(37,99,235,0) 66%);
  filter:blur(6px);
  z-index:0
}
.page-hero > .container,
.page-hero > .wrap,
.contact-options > .container,
.thankyou-hero > .wrap{
  position:relative;
  z-index:1
}
.page-hero .container{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px;
  align-items:center
}
.page-hero-content{
  min-width:0
}
.page-hero h1{
  color:#11243b;
  margin-bottom:16px
}
.page-hero-sub{
  color:#4b5f75;
  font-size:18px;
  line-height:1.7;
  margin-bottom:24px
}
.page-hero p{
  color:#4b5f75
}
.page-hero .eyebrow,
.contact-options .eyebrow,
.thankyou-hero .eyebrow{
  color:#1d4ed8;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(191,219,254,.92);
  box-shadow:0 10px 30px rgba(37,99,235,.08)
}
.page-hero-cta{
  display:flex;
  gap:16px;
  flex-wrap:wrap
}
.page-hero .btn-primary-lg,
.thankyou-hero .btn-primary{
  box-shadow:0 18px 36px rgba(245,158,11,.24)
}
.page-hero .btn-phone-lg{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(37,99,235,.18);
  color:#173557;
  box-shadow:0 12px 32px rgba(37,99,235,.12);
  backdrop-filter:blur(10px)
}
.page-hero .btn-phone-lg:hover{
  background:#fff;
  border-color:rgba(37,99,235,.34)
}
.page-hero-image{
  min-width:0;
  border-radius:16px;
  overflow:hidden;
  background:#eaf3ff;
  border:1px solid rgba(148,163,184,.22);
  box-shadow:0 30px 70px rgba(37,99,235,.14);
  min-height:320px;
  display:flex;
  align-items:center;
  justify-content:center
}
.page-hero-card{
  box-shadow:0 24px 60px rgba(37,99,235,.12)
}
.breadcrumb{
  color:#64748b;
  font-size:14px;
  margin-bottom:16px
}
.breadcrumb a{
  color:#2563eb;
  text-decoration:none
}
.page-hero-image img{
  width:100%;
  height:100%;
  object-fit:cover
}
@media (max-width:768px){
  .page-hero .container{
    grid-template-columns:1fr
  }
  .page-hero::after,
  .contact-options::after,
  .thankyou-hero::after{
    left:12%;
    right:12%;
    top:auto;
    bottom:-110px
  }
}

.services-overview{
  padding:80px 0;
  background:#fff
}
.services-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:28px;
  margin-top:48px
}
@media (max-width:768px){
  .services-grid{
    grid-template-columns:1fr
  }
}
.service-card{
  background:#fff;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 2px 12px rgba(0,0,0,.08);
  transition:transform .2s
}
.service-card:hover{
  transform:translateY(-4px)
}
.service-img{
  height:200px;
  background:#f1f5f9;
  position:relative;
  overflow:hidden
}
.service-img img{
  width:100%;
  height:100%;
  object-fit:cover
}
.service-icon{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  font-size:56px;
  opacity:0;
  transition:opacity .2s ease
}
.service-img.no-image .service-icon{
  opacity:1
}
.service-body{
  padding:24px
}
.service-body h3{
  margin-bottom:12px
}
.service-list{
  list-style:none;
  margin:16px 0;
  display:flex;
  flex-direction:column;
  gap:8px;
  color:#374151;
  font-size:14px
}
.service-price{
  display:inline-block;
  background:#f0fdf4;
  color:#16a34a;
  padding:6px 14px;
  border-radius:20px;
  font-weight:600;
  font-size:14px;
  margin-top:12px
}

.problem-solution{
  background:#f8fafc;
  padding:80px 0
}
.ps-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px
}
@media (max-width:768px){
  .ps-grid{
    grid-template-columns:1fr
  }
}
.problem-col{
  background:#fef2f2;
  border-radius:12px;
  padding:32px
}
.solution-col{
  background:#f0fdf4;
  border-radius:12px;
  padding:32px
}
.ps-item{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:20px
}
.ps-icon{
  width:28px;
  height:28px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  flex-shrink:0;
  font-size:14px
}
.ps-icon.bad{
  background:#fee2e2;
  color:#dc2626
}
.ps-icon.good{
  background:#dcfce7;
  color:#16a34a
}
.ps-cta{
  text-align:center;
  margin-top:48px
}

.packages-section{
  padding:36px 0 80px;
  background:#fff
}
.packages-section h2{
  text-align:center;
  max-width:14ch;
  margin:0 auto;
  line-height:1.08;
  letter-spacing:-.03em
}
.packages-section .section-sub{
  max-width:54ch;
  margin:0 auto 0;
  font-size:16px;
  line-height:1.7
}
.packages-subline-single{
  max-width:none !important;
  font-size:14px !important;
  line-height:1.45 !important;
  white-space:nowrap;
}
@media (max-width: 900px){
  .packages-subline-single{
    white-space:normal;
  }
}
.packages-section .pcards{
  margin-top:28px;
}
.packages-section-services .pcards{
  margin-top:28px;
}
.pcards{
  margin-top:198px
}

.safety-note{
  background:#fffbeb;
  border-top:3px solid #f59e0b;
  border-bottom:3px solid #f59e0b;
  padding:40px 0
}
.safety-inner{
  display:flex;
  gap:24px;
  align-items:center
}
.safety-icon{
  font-size:48px;
  flex-shrink:0
}
@media (max-width:768px){
  .safety-inner{
    flex-direction:column;
    align-items:flex-start
  }
}

.seo-text{
  padding:60px 0;
  background:#fff
}
.seo-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px;
  margin-top:32px
}
@media (max-width:768px){
  .seo-columns{
    grid-template-columns:1fr
  }
}
.seo-text h3{
  color:#1a2332;
  margin-bottom:12px
}
.seo-text p{
  color:#64748b;
  line-height:1.8;
  margin-bottom:16px
}

.faq-section{
  padding:80px 0;
  background:#f8fafc
}

.final-cta{
  background:linear-gradient(135deg,#1a2332,#1e3a5f);
  padding:80px 0;
  text-align:center;
  color:#fff
}
.final-cta h2{
  font-size:36px;
  margin-bottom:16px;
  color:#fff
}
.final-cta p{
  color:#cbd5e1;
  margin-bottom:32px
}
.final-cta-buttons{
  display:flex;
  gap:16px;
  justify-content:center;
  flex-wrap:wrap
}

.compare-table{
  padding:44px 0 80px;
  background:#fff
}
.table-wrapper{
  overflow-x:auto;
  margin-top:32px
}
.comparison{
  width:100%;
  border-collapse:collapse;
  background:#fff
}
.comparison th{
  background:#1a2332;
  color:#fff;
  padding:16px;
  text-align:center;
  font-weight:600
}
.comparison th small{
  font-size:12px;
  opacity:.9
}
.comparison th.featured-col{
  background:var(--cta-orange);
  color:var(--cta-ink)
}
.comparison td{
  padding:14px 16px;
  border-bottom:1px solid #e2e8f0;
  text-align:center
}
.comparison td:first-child{
  text-align:left;
  font-weight:500
}
.comparison .check{
  color:#22c55e;
  font-weight:700;
  font-size:18px
}
.comparison .cross{
  color:#94a3b8
}
.comparison td.featured-col{
  background:#fff7ed
}
.comparison tbody tr:hover{
  background:#f8fafc
}

.guarantee-banner{
  padding:0 0 80px;
  background:#fff
}
.guarantee-inner{
  display:flex;
  gap:32px;
  align-items:center;
  flex-wrap:wrap;
  background:#f0fdf4;
  border-radius:12px;
  padding:32px;
  border:2px solid #22c55e
}
.guarantee-icon{
  font-size:48px
}
.guarantee-text{
  flex:1 1 320px
}

.contact-options{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:60px 0 24px;
  background:
    radial-gradient(circle at 12% 18%, rgba(96,165,250,.24), transparent 26%),
    radial-gradient(circle at 88% 14%, rgba(14,165,233,.16), transparent 20%),
    radial-gradient(circle at 48% 100%, rgba(191,219,254,.82), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f9fbff 46%,#eef5ff 100%)
}
.contact-options h1{
  color:#11243b;
  text-align:center;
  margin-bottom:12px
}
.contact-options .section-sub{
  color:#4b5f75;
  max-width:58ch;
  margin-left:auto;
  margin-right:auto
}
.contact-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin-top:40px
}
@media (max-width:768px){
  .contact-cards{
    grid-template-columns:1fr
  }
}
.contact-card{
  padding:28px;
  border-radius:12px;
  border:2px solid #e2e8f0;
  text-decoration:none;
  display:flex;
  flex-direction:column;
  gap:8px;
  transition:all .2s ease;
  cursor:pointer;
  background:#fff;
  box-shadow:0 18px 40px rgba(37,99,235,.08);
  min-height:240px
}
.contact-card:hover{
  border-color:#3b82f6;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(15,23,42,.08)
}
.contact-card--phone{
  border-color:#22c55e
}
.contact-card--whatsapp{
  border-color:#25d366
}
.cc-icon{
  font-size:36px
}
.cc-hint{
  color:#64748b;
  font-size:14px
}
.cc-cta{
  color:#3b82f6;
  font-weight:600;
  margin-top:auto
}
.contact-form-layout{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
  gap:32px;
  align-items:start
}
@media (max-width:768px){
  .contact-form-layout{
    grid-template-columns:1fr
  }
}
.contact-trust{
  background:#f8fafc;
  border-radius:12px;
  padding:28px
}
.contact-trust ul{
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:10px;
  color:#374151;
  margin:18px 0 24px
}
.contact-trust-rating{
  display:flex;
  gap:10px;
  align-items:center;
  color:#374151;
  font-weight:600;
  margin-bottom:20px
}
.contact-trust-rating .stars{
  color:#f59e0b
}
.contact-trust-img{
  border-radius:12px;
  overflow:hidden;
  background:#e2e8f0;
  min-height:220px
}
.contact-trust-img img{
  width:100%;
  height:100%;
  object-fit:cover
}

/* ============================================
   FOOTER
   ============================================ */

.site-footer{
  background:linear-gradient(160deg,#1a2332 0%,#1e3a5f 100%);
}

.footer-main{
  padding:56px 0 40px;
}

.footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:48px;
}

@media (max-width:1024px){
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:40px;
  }
  .footer-col--brand{
    grid-column:1 / -1;
  }
}

@media (max-width:640px){
  .footer-grid{
    grid-template-columns:1fr;
    gap:32px;
  }

  .footer-col-text{
    max-width:none;
  }
}

.footer-logo{
  margin-bottom:16px;
}

.footer-logo img{
  height:58px;
  width:auto;
}

.footer-logo-text{
  font-size:26px;
  font-weight:900;
  letter-spacing:-1px;
}

.logo-sabo{
  background:linear-gradient(135deg,#1e3a5f,#2563eb);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}

.logo-therm{
  color:#2563eb;
  font-weight:300;
}

.footer-tagline{
  color:#94a3b8;
  font-size:13px;
  line-height:1.75;
  margin-bottom:20px;
  max-width:280px;
}

.footer-social{
  display:flex;
  gap:10px;
  margin-bottom:20px;
}

.social-btn{
  width:36px;
  height:36px;
  border-radius:8px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#94a3b8;
  text-decoration:none;
  transition:background .2s,border-color .2s,color .2s;
}

.social-btn:hover{
  background:rgba(37,99,235,.2);
  border-color:#2563eb;
  color:#93c5fd;
}

.footer-rating{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.rating-stars{
  color:#f59e0b;
  font-size:15px;
  letter-spacing:2px;
}

.rating-text{
  color:#64748b;
  font-size:12px;
}

.footer-col-title{
  color:#ffffff;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:1.5px;
  margin-bottom:10px;
}

.footer-col-text{
  margin:0 0 18px;
  color:#64748b;
  font-size:12px;
  line-height:1.6;
  max-width:220px;
}

.footer-links{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.footer-links li a{
  color:#94a3b8;
  text-decoration:none;
  font-size:13px;
  display:flex;
  align-items:center;
  gap:6px;
  line-height:1.45;
  transition:color .2s,transform .2s;
}

.footer-links li a::before{
  content:"›";
  color:#2563eb;
  font-size:16px;
  line-height:1;
}

.footer-links li a:hover{
  color:#e2e8f0;
  transform:translateX(2px);
}

.footer-links li a.is-active{
  color:#ffffff;
  font-weight:600;
}

.footer-contact-items{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.footer-contact-item{
  display:flex;
  gap:12px;
  align-items:center;
  text-decoration:none;
  transition:opacity .2s;
}

.footer-contact-item:hover{
  opacity:.8;
}

.footer-contact-item--static{
  cursor:default;
}

.footer-contact-item--static:hover{
  opacity:1;
}

.fci-icon{
  width:34px;
  height:34px;
  border-radius:8px;
  background:rgba(37,99,235,.15);
  border:1px solid rgba(37,99,235,.25);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#93c5fd;
  flex-shrink:0;
}

.fci-label{
  display:block;
  color:#64748b;
  font-size:11px;
  margin-bottom:1px;
}

.fci-value{
  display:block;
  color:#e2e8f0;
  font-size:13px;
  font-weight:500;
}

.footer-trust{
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
  padding:16px 0;
}

.footer-trust-inner{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  align-items:center;
}

.trust-badge{
  display:flex;
  align-items:center;
  gap:8px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  padding:5px 14px;
  color:#94a3b8;
  font-size:12px;
}

.trust-dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#22c55e;
  flex-shrink:0;
}

.footer-bottom{
  padding:20px 0;
}

.footer-bottom-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
}

.footer-copy{
  color:#475569;
  font-size:12px;
}

.footer-legal{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
}

.footer-legal a{
  color:#475569;
  font-size:12px;
  text-decoration:none;
  transition:color .2s;
}

.footer-legal a:hover{
  color:#94a3b8;
}

/* ============================================
   SVG ICONS - Globale Styles
   ============================================ */

svg{
  display:inline-block;
  vertical-align:middle;
  flex-shrink:0;
}

.icon-star{color:#f59e0b;}
.icon-check{color:#22c55e;}
.icon-check-sm{color:#22c55e;width:14px;height:14px;}
.icon-bad{color:#ef4444;}
.icon-good{color:#22c55e;}
.icon-alert{color:#f59e0b;}
.icon-contact{color:#2563eb;}
.icon-feature{color:#2563eb;}
.icon-service{color:#2563eb;opacity:.9;}
.icon-landlord{color:#93c5fd;}
.icon-success-lg{color:#22c55e;display:block;margin:0 auto 24px;}

.star-row{
  display:inline-flex;
  gap:2px;
  align-items:center;
}

.emergency-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#ffffff;
  display:inline-block;
  flex-shrink:0;
  animation:pulse-dot 2s ease-in-out infinite;
}

@keyframes pulse-dot{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:.5;transform:scale(.8);}
}

.dot-divider{
  display:inline-block;
  width:4px;
  height:4px;
  border-radius:50%;
  background:currentColor;
  opacity:.4;
  margin:0 8px;
  vertical-align:middle;
}

.icon-feature{
  display:block;
  margin-bottom:12px;
}

.icon-service{
  display:block;
  margin:0 auto;
}

a svg{transition:opacity .2s;}
a:hover svg{opacity:.8;}

.emergency-icon,
.tb-icon,
.landlord-icon,
.why-img-icon,
.fact-icon,
.service-icon,
.safety-icon,
.cc-icon,
.fci-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.hero-guarantee,
.landlord-list li,
.service-list li,
.contact-trust ul li,
.fsub-note,
.rating-text,
.review-date{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
}

.hero-guarantee svg,
.landlord-list li svg,
.service-list li svg,
.contact-trust ul li svg{
  flex-shrink:0;
}

.tb-icon svg{width:20px;height:20px;}
.landlord-icon svg{width:48px;height:48px;}
.why-img-icon svg{width:32px;height:32px;}

@media (max-width:768px){
  .hero-guarantee{
    display:grid;
    align-items:start;
    gap:10px
  }
}

@media (max-width:640px){
  .dot-divider{
    display:none
  }
}

footer.site-footer .footer-bar-logo img{
  height:650px !important;
  width:auto !important;
  max-width:none !important;
}

footer.site-footer .footer-logo img{
  height:650px !important;
  width:auto !important;
  max-width:none !important;
}

@media (max-width:768px){
  footer.site-footer .footer-bar-logo img{
    height:320px !important;
  }

  footer.site-footer .footer-logo img{
    height:320px !important;
  }
}
.fact-icon svg{width:18px;height:18px;}
.service-icon svg{width:40px;height:40px;}
.safety-icon svg{width:40px;height:40px;}
.cc-icon svg{width:28px;height:28px;}
.fci-icon svg{width:16px;height:16px;}
.rating-stars svg,
.reviews-stars svg,
.review-stars svg{width:14px;height:14px;}
.trust-number svg{width:16px;height:16px;margin-top:-2px;}

/* Footer logo refinement */
.footer-col--brand{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.footer-logo{
  margin:0 0 22px;
  display:flex;
  align-items:flex-start;
}

.footer-logo img{
  height:176px;
  width:auto;
  max-width:min(100%, 720px);
  object-fit:contain;
  filter:drop-shadow(0 10px 28px rgba(37,99,235,.18));
}

.footer-tagline{
  margin-top:-18px;
}

@media (max-width:640px){
  .footer-logo{
    justify-content:flex-start;
  }

  .footer-logo img{
    height:118px;
  }
}

/* Footer redesign aligned to header screenshot */
.site-footer{
  background:#ffffff;
  border-top:1px solid var(--bdr);
}

.footer-bar{
  background:#ffffff;
  border-bottom:1px solid var(--bdr);
}

.footer-bar-inner{
  min-height:96px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.footer-bar-logo{
  display:inline-flex;
  align-items:center;
  flex-shrink:0;
}

.footer-bar-logo img{
  height:220px;
  width:auto;
  display:block;
}

.footer-bar-actions{
  display:flex;
  align-items:center;
  gap:14px;
}

.footer-bar-phone{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--mid);
  font-size:.9rem;
  font-weight:600;
}

.footer-bar-phone:hover{
  color:var(--blue);
}

.footer-main{
  padding:48px 0 34px;
  background:#ffffff;
}

.footer-grid{
  grid-template-columns:1.7fr 1fr 1fr 1.1fr;
  gap:42px;
}

.footer-logo{
  margin:0 0 14px;
  display:flex;
  align-items:center;
}

.footer-logo img{
  height:230px;
  width:auto;
  max-width:100%;
  object-fit:contain;
  filter:none;
}

.footer-tagline{
  margin-top:0;
  max-width:340px;
  color:#64748b;
  font-size:13px;
  line-height:1.8;
}

.footer-col-title{
  color:#1a2332;
}

.footer-links li a{
  color:#64748b;
}

.footer-links li a:hover{
  color:var(--blue);
}

.social-btn{
  background:#f8fafc;
  border:1px solid #dbe7f4;
  color:#64748b;
}

.social-btn:hover{
  background:#eff6ff;
  border-color:#bfdbfe;
  color:var(--blue);
}

.rating-text,
.fci-label,
.footer-copy,
.footer-legal a{
  color:#64748b;
}

.fci-value{
  color:#1a2332;
}

.footer-trust{
  background:#f8fafc;
  border-top:1px solid #e2e8f0;
  border-bottom:1px solid #e2e8f0;
}

.trust-badge{
  background:#ffffff;
  border:1px solid #dbe7f4;
  color:#475569;
}

.footer-bottom{
  background:#ffffff;
  padding:18px 0 24px;
}

.footer-legal a:hover{
  color:var(--blue);
}

@media (max-width:1024px){
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:34px;
  }
}

@media (max-width:768px){
  .footer-bar-inner{
    min-height:auto;
    padding:18px 0;
    flex-direction:column;
    align-items:flex-start;
  }

  .footer-bar-logo img{
    height:160px;
  }

  .footer-bar-actions{
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }

  .footer-bar-phone{
    justify-content:center;
    min-height:44px;
    padding:0 16px;
    border:1px solid var(--bdr);
    border-radius:10px;
  }

  .footer-bar-actions .btn{
    width:100%;
  }
}

@media (max-width:640px){
  .footer-logo img{
    height:170px;
  }

  .footer-tagline{
    max-width:none;
  }
}


footer.site-footer{
  background:linear-gradient(160deg,#1a2332 0%,#1e3a5f 100%) !important;
  border-top:none !important;
}

footer.site-footer .footer-main{
  padding:56px 0 40px !important;
  background:transparent !important;
}

footer.site-footer .footer-grid{
  display:grid !important;
  grid-template-columns:2fr 1fr 1fr 1fr !important;
  gap:48px !important;
}

footer.site-footer .footer-logo{
  margin:0 0 16px !important;
  display:flex !important;
  align-items:center !important;
}

footer.site-footer .footer-logo img{
  height:58px !important;
  width:auto !important;
  max-width:100% !important;
  filter:none !important;
}

footer.site-footer .footer-tagline{
  margin-top:0 !important;
  max-width:280px !important;
  color:#94a3b8 !important;
}

footer.site-footer .footer-col-title{
  color:#ffffff !important;
}

footer.site-footer .footer-col-text{
  color:#64748b !important;
}

footer.site-footer .footer-links li a{
  color:#94a3b8 !important;
}

footer.site-footer .footer-links li a:hover{
  color:#e2e8f0 !important;
}

footer.site-footer .footer-links li a.is-active{
  color:#ffffff !important;
}

footer.site-footer .social-btn{
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:#94a3b8 !important;
}

footer.site-footer .social-btn:hover{
  background:rgba(37,99,235,.2) !important;
  border-color:#2563eb !important;
  color:#93c5fd !important;
}

footer.site-footer .rating-text,
footer.site-footer .fci-label,
footer.site-footer .footer-copy,
footer.site-footer .footer-legal a{
  color:#64748b !important;
}

footer.site-footer .fci-value{
  color:#e2e8f0 !important;
}

footer.site-footer .footer-trust{
  background:transparent !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;
}

footer.site-footer .trust-badge{
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  color:#94a3b8 !important;
}

footer.site-footer .footer-bottom{
  background:transparent !important;
  padding:20px 0 !important;
}

footer.site-footer .footer-legal a:hover{
  color:#94a3b8 !important;
}

@media (max-width:1024px){
  footer.site-footer .footer-grid{
    grid-template-columns:1fr 1fr !important;
    gap:40px !important;
  }

  footer.site-footer .footer-col--brand{
    grid-column:1 / -1 !important;
  }
}

@media (max-width:640px){
  footer.site-footer .footer-grid{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }

  footer.site-footer .footer-logo img{
    height:52px !important;
  }

  footer.site-footer .footer-tagline{
    max-width:none !important;
  }
}

/* Screenshot restore: Startseite Hero und Kopfbereich */
.emergency-bar{
  min-height:40px;
  padding:6px 18px;
  gap:14px;
  font-size:13px;
  font-weight:500;
  line-height:1.2;
}

.emergency-phone{
  text-decoration:none;
  font-weight:600;
}

.nav-brand-logo{
  height:60px;
  transform:scale(3.08);
  left:-16px;
}

.nav{
  top:40px;
  background:#fff;
  border-bottom:1px solid #dbe4ef;
  box-shadow:none;
}

.nav-inner{
  max-width:1340px;
  min-height:94px;
  height:94px;
  padding:0 28px;
  column-gap:28px;
}

.nav-links{
  gap:34px;
  left:-92px;
}

.nav-link-base,
.nav-dropdown a{
  font-size:16px;
  font-weight:600;
  color:#5f748a;
}

.nav-right{
  gap:16px;
}

.nav-tel{
  gap:8px;
  font-size:15px;
  font-weight:600;
  color:#31465f;
}

.nav .btn-primary{
  min-height:54px;
  min-width:274px;
  padding:0 28px;
  border-radius:9px;
  font-size:15px;
  font-weight:700;
  background:linear-gradient(135deg,#1f324e 0%,#2c5fd0 100%);
  box-shadow:0 12px 24px rgba(37,99,235,.18);
}

.home-hero{
  background:
    radial-gradient(circle at 76% 43%, rgba(191,219,254,.58) 0%, rgba(191,219,254,0) 24%),
    linear-gradient(90deg, #f8fbff 0%, #ffffff 46%, #f4f8ff 100%);
  padding:0 0 34px;
  border-bottom:none;
}

.home-hero .hero-content{
  width:min(100%, 1880px);
  max-width:1880px;
  margin:0 auto;
  min-height:auto;
  padding:18px 0 12px;
  grid-template-columns:minmax(520px, 960px) minmax(420px, 760px);
  gap:86px;
  align-items:center;
  justify-content:center;
  background:none;
}

.hero-image{
  order:0;
  height:auto;
}

.home-hero .hero-image{
  max-width:none;
  padding:0;
  justify-self:start;
  width:94%;
  transform:translateX(26px);
}

.home-hero .hero-img-placeholder{
  width:100%;
  aspect-ratio:1024 / 682;
  min-height:auto;
  border:none;
  border-radius:36px;
  box-shadow:0 18px 46px rgba(37,99,235,.16);
  background:#e7f1ff;
}

.home-hero .hero-img-placeholder::before{
  background:linear-gradient(90deg, rgba(17,24,39,.04) 0%, rgba(17,24,39,0) 18%);
}

.home-hero .hero-img-placeholder img{
  min-height:auto;
  object-fit:cover;
}

.home-hero .hero-text{
  max-width:740px;
  min-height:auto;
  justify-self:start;
  align-self:start;
  align-items:flex-start;
  justify-content:flex-start;
  padding:22px 0 0;
  margin-top:-6px;
  margin-left:-42px;
}

.home-hero .hero-title{
  max-width:620px;
  margin:0 0 24px;
  font-size:clamp(3rem, 2.55vw, 3.65rem);
  font-weight:600;
  line-height:1.04;
  letter-spacing:-.06em;
  text-align:left;
}

.home-hero .hero-title-blue{
  display:block;
  margin-bottom:10px;
  color:#2d63eb;
  font-weight:600;
}

.home-hero .hero-title-dark,
.home-hero .hero-highlight{
  display:block;
  color:#163a67;
  font-weight:600;
  line-height:1.04;
}

.home-hero .hero-subtitle{
  max-width:700px;
  margin:0;
  font-size:clamp(1.06rem, .98vw, 1.14rem);
  line-height:1.95;
  color:#111827;
  text-align:left;
  hyphens:auto;
}

.home-hero .hero-subtitle-blocks p{
  margin:0 0 14px;
  color:#111827;
}

.home-hero .hero-subtitle-blocks p:last-child{
  margin-bottom:0;
}

.home-hero .hero-text-accent{
  color:#2d63eb;
  font-weight:600;
}

.home-hero .hero-cta{
  margin-top:36px;
  padding-top:0;
  gap:12px;
  justify-content:flex-start;
  padding-left:0;
  margin-left:0;
}

.home-hero .btn-primary-lg,
.home-hero .btn-phone-lg{
  min-height:44px;
  min-width:0;
  width:auto;
  padding:0 12px;
  border-radius:12px;
  font-size:11px;
  font-weight:600;
}

.home-hero .btn-primary-lg{
  background:#f7a400;
  color:#111827;
  box-shadow:0 20px 36px rgba(245,158,11,.26);
}

.home-hero .btn-primary-lg:hover{
  background:#ea9700;
}

.home-hero .btn-phone-lg{
  background:#fff;
  border:1px solid #d8e3f0;
  color:#29425f;
  box-shadow:0 10px 22px rgba(148,163,184,.12);
}

.home-hero .btn-phone-lg:hover{
  background:#f8fbff;
  border-color:#c2d4ea;
}

@media (max-width:1200px){
  .home-hero .hero-content{
    width:min(100%, 1220px);
    padding:24px 24px 18px;
    grid-template-columns:minmax(440px, 1fr) minmax(360px, .92fr);
    gap:44px;
  }

  .home-hero .hero-img-placeholder,
  .home-hero .hero-img-placeholder img,
  .home-hero .hero-img-fallback{
    min-height:auto;
  }

  .home-hero .hero-title{
    font-size:clamp(2.5rem, 3.2vw, 3.45rem);
    max-width:560px;
  }

}

@media (max-width:980px){
  .home-hero{
    padding-bottom:28px;
  }

  .home-hero .hero-content{
    width:auto;
    max-width:none;
    grid-template-columns:1fr;
    gap:28px;
    padding:18px 20px 20px;
  }

  .home-hero .hero-image,
  .home-hero .hero-text{
    justify-self:stretch;
  }

  .home-hero .hero-image{
    transform:none;
  }

  .home-hero .hero-text{
    max-width:700px;
    margin:0 auto;
    align-self:center;
    padding-top:0;
    justify-self:stretch;
    align-items:center;
  }

  .home-hero .hero-title{
    max-width:560px;
    margin:0 auto 22px;
    font-size:clamp(2.25rem, 5.5vw, 3rem);
    text-align:center;
  }

  .home-hero .hero-subtitle{
    max-width:640px;
    margin:0 auto;
  }

  .home-hero .hero-img-placeholder,
  .home-hero .hero-img-placeholder img,
  .home-hero .hero-img-fallback{
    min-height:auto;
  }
}

@media (max-width:768px){
  .nav{
    top:0;
  }

  .nav-inner{
    min-height:80px;
    height:80px;
    padding:10px 20px;
  }

  .home-hero .hero-content{
    padding:14px 18px 22px;
  }

  .home-hero .hero-subtitle{
    max-width:none;
    font-size:15px;
    line-height:1.78;
  }

  .home-hero .hero-cta{
    gap:14px;
    justify-content:center;
    padding-left:0;
    margin-left:0;
  }

  .home-hero .btn-primary-lg,
  .home-hero .btn-phone-lg{
    min-height:60px;
    font-size:16px;
  }
}

@media (max-width:640px){
  .nav-inner{
    padding:10px 16px;
  }

  .home-hero .hero-content{
    padding:12px 16px 18px;
  }

  .home-hero .hero-img-placeholder{
    border-radius:28px;
  }

  .home-hero .hero-img-placeholder,
  .home-hero .hero-img-placeholder img,
  .home-hero .hero-img-fallback{
    min-height:auto;
  }

  .home-hero .hero-title{
    max-width:none;
    font-size:clamp(1.95rem, 8.4vw, 2.5rem);
  }
}

.nav .nav-right .btn.btn-primary{
  background:linear-gradient(135deg, #1a2332 0%, #1e3a5f 55%, #2563eb 100%) !important;
  padding:10px 20px !important;
  min-height:44px !important;
  font-size:.82rem !important;
  border-radius:12px !important;
  box-shadow:0 10px 24px rgba(37,99,235,.22) !important;
}

.nav .nav-right .btn.btn-primary:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 14px 28px rgba(37,99,235,.28) !important;
}


@media (max-width:768px){
  html,body{
    max-width:100%;
    overflow-x:hidden;
  }

  .container,
  .wrap{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .emergency-bar{
    justify-content:center;
    flex-wrap:wrap;
    row-gap:6px;
    text-align:center;
    min-height:auto;
    padding:6px 12px !important;
  }

  .nav{
    top:0 !important;
  }

  .nav-inner{
    min-height:72px !important;
    height:72px !important;
    padding:10px 16px !important;
  }

  .nav-brand{
    min-width:0;
  }

  .nav-brand-logo{
    height:56px !important;
    transform:scale(2.18) !important;
    left:-8px !important;
  }

  .mob-menu{
    top:72px !important;
    padding:16px 16px 28px !important;
  }

  .mob-menu .btn,
  .mob-menu-cta .btn{
    width:100%;
  }

  .home-hero .hero-content{
    width:auto !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    padding:12px 0 20px !important;
    background:
      radial-gradient(circle at 50% 8%, rgba(191,219,254,.44) 0%, rgba(191,219,254,0) 32%),
      linear-gradient(180deg, #f8fbff 0%, #ffffff 56%, #f3f8ff 100%) !important;
  }

  .home-hero .hero-image{
    order:2;
    width:100% !important;
    max-width:none !important;
    justify-self:stretch !important;
    align-self:stretch !important;
    transform:none !important;
    padding:0 !important;
  }

  .home-hero .hero-img-placeholder{
    min-height:0 !important;
    aspect-ratio:4 / 3 !important;
    border-radius:24px !important;
  }

  .home-hero .hero-img-placeholder img{
    min-height:0 !important;
  }

  .home-hero .hero-text{
    order:1;
    max-width:none !important;
    min-height:auto !important;
    padding:10px 0 0 !important;
    margin:0 !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
  }

  .home-hero .hero-title,
  .home-hero .hero-subtitle{
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
  }

  .home-hero .hero-title{
    font-size:clamp(2rem, 8vw, 2.8rem) !important;
    line-height:1.08 !important;
    margin-bottom:16px !important;
  }

  .home-hero .hero-subtitle{
    font-size:15px !important;
    line-height:1.72 !important;
  }

  .home-hero .hero-cta{
    justify-content:stretch !important;
    gap:12px !important;
    margin-top:22px !important;
    padding-top:0 !important;
  }

  .home-hero .btn-primary-lg,
  .home-hero .btn-phone-lg,
  .page-hero .btn-primary-lg,
  .page-hero .btn-phone-lg,
  .final-cta-buttons .btn,
  .cta-fin-btns .btn{
    width:100% !important;
    max-width:none !important;
    min-height:50px !important;
  }

  .home-trust-bar{
    padding:18px 0 !important;
  }

  .home-trust-bar .trust-bar-inner{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:10px;
    padding:16px !important;
    overflow:visible !important;
    border-radius:22px !important;
  }

  .home-trust-bar .tb-item{
    min-width:0 !important;
    width:auto !important;
    padding:10px 12px !important;
    white-space:normal !important;
    justify-content:flex-start !important;
    background:#f8fbff;
    border:1px solid #e6eef8;
    border-radius:16px;
  }

  .home-trust-bar .tb-divider{
    display:none !important;
  }

  .page-hero{
    padding:42px 0 !important;
  }

  .page-hero .container{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }

  .page-hero-content{
    order:1;
  }

  .page-hero-image{
    order:2;
    min-height:0 !important;
    border-radius:24px !important;
  }

  .page-hero-image img{
    aspect-ratio:4 / 3;
    object-fit:cover;
  }

  .page-hero h1{
    font-size:clamp(2rem, 7.2vw, 2.6rem) !important;
    line-height:1.12 !important;
  }

  .page-hero-sub{
    font-size:15px !important;
    line-height:1.72 !important;
    margin-bottom:18px !important;
  }

  .page-hero-cta{
    flex-direction:column;
    align-items:stretch;
    gap:12px !important;
  }

  .services-overview,
  .problem-solution,
  .seo-text,
  .faq-section,
  .reviews,
  .why-us,
  .founder,
  .landlord,
  .compare-table,
  .contact-options{
    padding-top:56px !important;
    padding-bottom:56px !important;
  }

  .final-cta{
    padding:60px 0 !important;
  }

  .services-grid,
  .ps-grid,
  .seo-columns,
  .why-grid,
  .reviews-grid,
  .founder-grid,
  .contact-cards,
  .contact-form-layout{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  .pricing-grid,
  .home-pricing .pricing-grid,
  .packages-section .pricing-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
    width:100% !important;
    justify-content:stretch !important;
    padding-bottom:0 !important;
  }

  .home-pricing .home-pricing-shell{
    width:100% !important;
    max-width:none !important;
  }

  .pcard{
    min-width:0 !important;
    max-width:none !important;
    scroll-snap-align:none !important;
    padding:20px 18px 18px !important;
  }

  .pname{
    min-height:auto !important;
    max-width:none !important;
  }

  .packages-section h2,
  .packages-section .section-sub{
    max-width:none !important;
  }

  .pcards,
  .packages-section .pcards,
  .packages-section-services .pcards{
    margin-top:28px !important;
  }

  .table-wrapper{
    margin-top:20px !important;
    border:1px solid #e2e8f0;
    border-radius:18px;
    background:#fff;
  }

  .comparison th,
  .comparison td{
    padding:12px 10px !important;
  }

  .guarantee-inner,
  .contact-trust{
    padding:22px !important;
  }

  .contact-card{
    min-height:0 !important;
    padding:22px !important;
  }

  .founder-text{
    max-width:none !important;
    margin-top:0 !important;
    padding-top:0 !important;
  }

  .founder-text h2{
    max-width:none !important;
    white-space:normal !important;
    font-size:clamp(2rem, 7vw, 2.6rem) !important;
    line-height:1.1 !important;
  }

  .founder-text p,
  .founder-lead,
  .founder-facts{
    max-width:none !important;
  }

  .founder-facts{
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin:18px 0 16px !important;
  }

  .founder-fact{
    font-size:14px !important;
  }

  footer.site-footer .footer-grid,
  .footer-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }

  .footer-main{
    padding:40px 0 26px !important;
  }

  .footer-bottom-inner{
    flex-direction:column;
    align-items:flex-start !important;
  }

  .footer-legal{
    gap:12px !important;
  }
}

@media (max-width:480px){
  .container,
  .wrap{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .emergency-bar{
    font-size:10.5px !important;
    padding:6px 10px !important;
    gap:8px !important;
  }

  .nav-inner{
    min-height:68px !important;
    height:68px !important;
    padding:10px 14px !important;
  }

  .nav-brand-logo{
    height:50px !important;
    transform:scale(2.02) !important;
    left:-4px !important;
  }

  .mob-menu{
    top:68px !important;
    padding:14px 14px 24px !important;
  }

  .home-hero .hero-title{
    font-size:clamp(1.8rem, 9vw, 2.35rem) !important;
  }

  .home-hero .hero-subtitle,
  .page-hero-sub,
  .page-hero p,
  .founder-text p{
    font-size:14px !important;
    line-height:1.66 !important;
  }

  .home-trust-bar .trust-bar-inner{
    grid-template-columns:1fr !important;
  }

  .tb-item{
    font-size:13px !important;
  }

  .page-hero,
  .services-overview,
  .problem-solution,
  .seo-text,
  .faq-section,
  .reviews,
  .why-us,
  .founder,
  .landlord,
  .compare-table,
  .contact-options{
    padding-top:46px !important;
    padding-bottom:46px !important;
  }

  .service-body,
  .review-card,
  .contact-card,
  .contact-trust,
  .guarantee-inner,
  .problem-col,
  .solution-col{
    padding:18px !important;
  }

  .comparison{
    min-width:640px;
  }
}








