:root{
  --black:#030604;
  --black2:#060b08;
  --green:#4dff5a;
  --green2:#20df3b;
  --text:#f7faf6;
  --muted:#b7c1b9;
  --line:rgba(92,255,105,.14);
  --line2:rgba(255,255,255,.075);
  --glass:rgba(7,12,9,.74);
  --glass2:rgba(10,18,13,.86);
  --shadow:0 32px 100px rgba(0,0,0,.58), 0 0 60px rgba(52,255,74,.09);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{
  min-height:100vh;
  color:var(--text);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  background:
    radial-gradient(circle at 8% 20%, rgba(43,255,71,.20), transparent 23%),
    radial-gradient(circle at 88% 40%, rgba(43,255,71,.13), transparent 27%),
    var(--black);
  overflow-x:hidden;
}

.ambient-grid{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-2;
  background-image:
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.72), transparent 86%);
}

.shell{
  width:min(1420px, calc(100% - 96px));
  margin:0 auto;
}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  height:92px;
  border-bottom:1px solid rgba(255,255,255,.055);
  background:linear-gradient(180deg, rgba(3,6,4,.94), rgba(3,6,4,.76));
  backdrop-filter:blur(18px);
}

.nav-shell{
  height:92px;
  display:grid;
  grid-template-columns:190px 1fr 190px;
  align-items:center;
  gap:24px;
}

.brand{
  display:inline-flex;
  width:142px;
  align-items:center;
}
.brand img{
  width:100%;
  display:block;
  filter:drop-shadow(0 0 14px rgba(77,255,90,.30));
}

.main-nav{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:34px;
}
.main-nav a{
  color:rgba(247,250,246,.83);
  text-decoration:none;
  font-size:15px;
  font-weight:500;
  position:relative;
  transition:.2s ease;
}
.main-nav a:hover,
.main-nav a.active{color:#fff}
.main-nav a.active:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-18px;
  transform:translateX(-50%);
  width:25px;
  height:3px;
  border-radius:999px;
  background:var(--green);
  box-shadow:0 0 18px rgba(77,255,90,.88);
}

.nav-button{
  justify-self:end;
  min-height:56px;
  padding:0 28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  color:#061008;
  text-decoration:none;
  font-weight:900;
  font-size:15px;
  background:linear-gradient(180deg, #83ff7d 0%, #29ee48 100%);
  box-shadow:0 0 0 1px rgba(255,255,255,.14) inset, 0 14px 42px rgba(55,255,75,.34);
}

.menu-toggle{
  display:none;
  border:0;
  background:transparent;
  flex-direction:column;
  gap:5px;
  padding:0;
}
.menu-toggle span{
  width:26px;
  height:2px;
  border-radius:99px;
  background:#fff;
}

.hero{
  position:relative;
  min-height:calc(100vh - 92px);
  padding:118px 0 42px;
  overflow:hidden;
}

.hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  /*background:
    radial-gradient(circle at 34% 82%, rgba(77,255,90,.095), transparent 29%),
    radial-gradient(circle at 78% 46%, rgba(77,255,90,.075), transparent 28%),
    linear-gradient(90deg, rgba(3,6,4,.98) 0%, rgba(3,6,4,.79) 34%, rgba(3,6,4,.25) 67%, rgba(3,6,4,.70) 100%);*/
}

.hero-image{
  position:absolute;
  z-index:-3;
  right:-3vw;
  top:34px;
  width:75vw;
  height:690px;
  pointer-events:none;
}
.hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:saturate(1.08) contrast(1.12) brightness(.88);
  mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.08) 9%, rgba(0,0,0,.90) 30%, black 54%, black 100%);
}

.hero-vignette{
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  /*background:
    radial-gradient(circle at 73% 40%, rgba(77,255,90,.11), transparent 26%),
    radial-gradient(circle at 42% 63%, rgba(0,0,0,.02), rgba(0,0,0,.62) 67%),
    linear-gradient(180deg, transparent 0%, rgba(3,6,4,.06) 55%, rgba(3,6,4,.94) 100%);*/
}

.hero-shell{
  position:relative;
  min-height:540px;
}

.hero-copy{
  width:min(650px, 49vw);
}

.eyebrow{
  margin:0 0 28px;
  color:var(--green);
  letter-spacing:.25em;
  font-size:13px;
  font-weight:900;
}

h1{
  margin:0;
  color:#fff;
  font-size:clamp(72px, 6.45vw, 118px);
  line-height:.94;
  letter-spacing:-.075em;
  font-weight:950;
  text-shadow:0 16px 40px rgba(0,0,0,.55);
}
h1 span{
  color:var(--green);
  text-shadow:0 0 34px rgba(77,255,90,.22);
}

.lead{
  width:min(600px, 100%);
  margin:30px 0 0;
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  font-weight:450;
}

.hero-actions{
  display:flex;
  gap:17px;
  margin-top:34px;
}
.button{
  min-height:58px;
  padding:0 29px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  text-decoration:none;
  font-weight:900;
  font-size:15px;
  transition:transform .2s ease, box-shadow .2s ease;
}
.button:hover{transform:translateY(-2px)}
.button.primary{
  color:#051008;
  background:linear-gradient(180deg, #83ff7d, #28ef47);
  box-shadow:0 0 0 1px rgba(255,255,255,.14) inset, 0 14px 42px rgba(55,255,75,.34);
}
.button.ghost{
  color:#fff;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.035);
  box-shadow:0 16px 40px rgba(0,0,0,.24);
}

.trust-row{
  margin-top:27px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.trust-row span{
  min-height:45px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  color:rgba(247,250,246,.88);
  font-weight:750;
  font-size:14px;
  border:1px solid var(--line2);
  background:rgba(255,255,255,.032);
  box-shadow:0 10px 34px rgba(0,0,0,.2);
}


.hero-features{
  margin-top:-2px;
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:1px;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.055);
  box-shadow:var(--shadow);
}
.hero-features article{
  min-height:118px;
  padding:28px 30px;
  display:flex;
  align-items:center;
  gap:18px;
  background:linear-gradient(180deg, rgba(16,24,18,.85), rgba(8,13,10,.88));
}
.feature-icon{
  flex:0 0 42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:var(--green);
  border:1px solid rgba(77,255,90,.22);
  background:rgba(77,255,90,.06);
  text-shadow:0 0 18px rgba(77,255,90,.35);
  font-size:22px;
}
.hero-features h3{
  margin:0 0 7px;
  font-size:17px;
}
.hero-features p{
  margin:0;
  color:var(--muted);
  line-height:1.45;
  font-size:14px;
}



@media (max-width:1180px){
  .shell{width:min(100% - 54px, 1420px)}
  .nav-shell{grid-template-columns:150px 1fr 170px}
  .main-nav{gap:20px}
  .hero{padding-top:96px}
  .hero-copy{width:min(650px, 58vw)}
  .hero-image{width:82vw; right:-20vw; top:24px; opacity:.88}
  .hero-features{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:880px){
  .site-header{height:82px}
  .nav-shell{height:82px; grid-template-columns:1fr auto}
  .brand{width:116px}
  .main-nav,.nav-button{display:none}
  .menu-toggle{display:flex}
  .site-header.open .main-nav{
    position:absolute;
    left:24px;
    right:24px;
    top:82px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:17px;
    padding:22px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(4,8,5,.98);
  }
  .hero{
    min-height:auto;
    padding:1px 0 32px;
  }
  .hero:before{
    /*background:linear-gradient(180deg, rgba(3,6,4,.88), rgba(3,6,4,.76) 38%, rgba(3,6,4,.98) 78%);*/
  }
  .hero-image{
    position:relative;
    top:auto;
    right:auto;
    width:100%;
    height:auto;
    /*margin:30px auto 0;*/
    border-radius:28px;
    overflow:hidden;
  }
  .hero-image img{
    height:auto;
    object-position:center;
    mask-image:none;
    border-radius:28px;
  }
  .hero-shell{min-height:auto}
  .hero-copy{width:100%}
  h1{font-size:clamp(56px, 15vw, 86px)}
  .lead{font-size:16px}
  .hero-features{margin-top:28px}
}

@media (max-width:640px){
  .shell{width:min(100% - 28px, 1420px)}
  .hero-actions{flex-direction:column}
  .button{width:100%}
  .trust-row span{width:100%; justify-content:center}
  .hero-features{grid-template-columns:1fr}
  .hero-features article{padding:22px}
}


/* ==============================
   Pakete & Preise – realistisch kalkuliert
   ============================== */
.packages-section{
  scroll-margin-top:92px;
  position:relative;
  padding:94px 0 112px;
  background:
    radial-gradient(circle at 50% 18%, rgba(77,255,90,.09), transparent 27%),
    radial-gradient(circle at 16% 70%, rgba(77,255,90,.06), transparent 26%),
    linear-gradient(180deg, rgba(3,6,4,.98) 0%, rgba(4,8,6,1) 58%, rgba(2,4,3,1) 100%);
  overflow:hidden;
}
.packages-section:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(77,255,90,.28), transparent);
}
.packages-section:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), transparent 78%);
}
.section-glow{
  position:absolute;
  left:50%;
  top:16%;
  width:620px;
  height:360px;
  transform:translateX(-50%);
  background:radial-gradient(circle, rgba(77,255,90,.13), transparent 64%);
  filter:blur(28px);
  pointer-events:none;
}
.packages-shell{
  position:relative;
  z-index:2;
}
.section-heading{
  max-width:820px;
  margin:0 auto 46px;
  text-align:center;
}
.section-kicker{
  margin:0 0 12px;
  color:var(--green);
  letter-spacing:.22em;
  font-size:12px;
  font-weight:950;
}
.section-heading h2{
  margin:0;
  font-size:clamp(38px, 4.5vw, 64px);
  line-height:.96;
  letter-spacing:-.055em;
  font-weight:950;
  color:#fff;
}
.section-heading p:not(.section-kicker){
  margin:20px auto 0;
  max-width:720px;
  color:var(--muted);
  font-size:17px;
  line-height:1.72;
}
.price-hint{
  margin:24px auto 0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  color:rgba(247,250,246,.88);
  font-weight:800;
  font-size:14px;
  border:1px solid rgba(77,255,90,.18);
  background:rgba(77,255,90,.055);
  box-shadow:0 16px 52px rgba(0,0,0,.22);
}
.package-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
  align-items:stretch;
  max-width:1280px;
  margin:0 auto;
}
.package-card{
  position:relative;
  min-height:470px;
  padding:32px 26px 28px;
  border-radius:24px;
  background:
    linear-gradient(180deg, rgba(18,27,21,.88), rgba(8,13,10,.94)),
    radial-gradient(circle at 80% 8%, rgba(77,255,90,.12), transparent 35%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 22px 80px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.045);
  overflow:hidden;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.package-card:hover{
  transform:translateY(-5px);
  border-color:rgba(77,255,90,.24);
  box-shadow:0 30px 100px rgba(0,0,0,.5), 0 0 48px rgba(77,255,90,.10), inset 0 1px 0 rgba(255,255,255,.055);
}
.package-topline{
  position:absolute;
  left:26px;
  right:26px;
  top:0;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(77,255,90,.68), transparent);
  opacity:.6;
}
.package-label{
  margin:0 0 13px;
  color:var(--green);
  font-size:11px;
  letter-spacing:.17em;
  text-transform:uppercase;
  font-weight:950;
}
.package-card h3{
  margin:0;
  color:#fff;
  font-size:30px;
  line-height:1.05;
  letter-spacing:-.035em;
}
.package-desc{
  margin:16px 0 23px;
  color:var(--muted);
  line-height:1.58;
  font-size:14px;
  min-height:88px;
}
.package-card ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.package-card li{
  position:relative;
  padding-left:23px;
  color:rgba(247,250,246,.87);
  font-size:14px;
  line-height:1.36;
}
.package-card li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--green);
  font-weight:950;
  text-shadow:0 0 14px rgba(77,255,90,.35);
}
.price-row{
  margin-top:30px;
  display:flex;
  align-items:flex-end;
  gap:8px;
}
.price-row span{
  color:rgba(247,250,246,.70);
  font-weight:800;
  margin-bottom:4px;
}
.price-row strong{
  color:#fff;
  font-size:31px;
  line-height:.9;
  letter-spacing:-.04em;
}
.package-button{
  margin-top:24px;
  min-height:48px;
  width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
  border-radius:999px;
  border:1px solid rgba(77,255,90,.22);
  background:rgba(255,255,255,.032);
  font-weight:900;
  font-size:14px;
  transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.package-button:hover{
  transform:translateY(-1px);
  background:rgba(77,255,90,.08);
  box-shadow:0 0 28px rgba(77,255,90,.12);
}
.featured-package{
  border-color:rgba(77,255,90,.34);
  background:
    radial-gradient(circle at 50% 0%, rgba(77,255,90,.18), transparent 43%),
    linear-gradient(180deg, rgba(20,32,23,.95), rgba(8,13,10,.97));
  box-shadow:0 30px 110px rgba(0,0,0,.54), 0 0 70px rgba(77,255,90,.14), inset 0 1px 0 rgba(255,255,255,.07);
  transform:translateY(-12px);
}
.featured-package:hover{
  transform:translateY(-18px);
}
.recommended-badge{
  position:absolute;
  right:20px;
  top:18px;
  padding:8px 12px;
  border-radius:999px;
  color:#061008;
  background:linear-gradient(180deg, #90ff88, #38ee51);
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
  box-shadow:0 0 24px rgba(77,255,90,.28);
}
.primary-package{
  color:#061008;
  background:linear-gradient(180deg, #83ff7d, #28ef47);
  border-color:transparent;
  box-shadow:0 13px 42px rgba(77,255,90,.24);
}
.special-use-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
  max-width:1060px;
  margin:38px auto 0;
}
.special-use-card{
  position:relative;
  overflow:hidden;
  padding:30px 30px 28px;
  border-radius:24px;
  border:1px solid rgba(77,255,90,.16);
  background:
    radial-gradient(circle at 18% 0%, rgba(77,255,90,.12), transparent 40%),
    linear-gradient(180deg, rgba(16,24,18,.84), rgba(8,13,10,.92));
  box-shadow:0 24px 80px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06);
}
.special-use-card:before{
  content:"";
  position:absolute;
  inset:auto 24px 0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(77,255,90,.48), transparent);
}
.special-tag{
  width:max-content;
  margin-bottom:16px;
  padding:8px 13px;
  border-radius:999px;
  color:#071208;
  background:linear-gradient(180deg, #8eff86, #35ec4f);
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 0 24px rgba(77,255,90,.20);
}
.special-use-card h3{
  margin:0 0 12px;
  font-size:24px;
  letter-spacing:-.035em;
}
.special-use-card p{
  margin:0 0 18px;
  color:var(--muted);
  line-height:1.65;
  font-size:15px;
}
.special-use-card ul{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.special-use-card li{
  position:relative;
  padding-left:22px;
  color:rgba(247,250,246,.84);
  line-height:1.5;
  font-size:14px;
}
.special-use-card li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--green);
  font-weight:950;
}

@media (max-width:880px){
  .special-use-grid{grid-template-columns:1fr; max-width:560px; margin-top:28px}
}

.addon-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  max-width:1060px;
  margin:34px auto 0;
}
.addon-card{
  padding:20px 22px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.032);
  box-shadow:0 18px 60px rgba(0,0,0,.30);
}
.addon-card strong{
  display:block;
  color:#fff;
  font-size:16px;
  margin-bottom:8px;
}
.addon-card p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.55;
}
.package-note{
  margin:30px auto 0;
  max-width:900px;
  text-align:center;
  color:rgba(247,250,246,.66);
  font-size:14px;
  line-height:1.65;
}
.package-note strong{
  color:#fff;
}

@media (max-width:1180px){
  .package-grid{grid-template-columns:repeat(2, minmax(0, 1fr)); max-width:820px; gap:20px}
  .featured-package,
  .featured-package:hover{transform:none}
  .package-card{min-height:auto}
  .package-desc{min-height:auto}
}

@media (max-width:880px){
  .packages-section{
  scroll-margin-top:92px;padding:72px 0 86px}
  .addon-grid{grid-template-columns:1fr; max-width:560px}
}

@media (max-width:640px){
  .packages-section{
  scroll-margin-top:92px;padding:58px 0 70px}
  .section-heading{text-align:left; margin-bottom:28px}
  .section-heading p:not(.section-kicker){font-size:15px}
  .price-hint{align-items:flex-start; justify-content:flex-start; border-radius:18px; padding:12px 14px; height:auto; line-height:1.45}
  .package-grid{grid-template-columns:1fr; max-width:560px}
  .package-card{padding:28px 24px 24px; border-radius:20px}
  .recommended-badge{position:static; width:max-content; margin-bottom:14px}
}


/* Leistungen */
.services-section{
  scroll-margin-top:92px;
  position:relative;
  overflow:hidden;
  padding:96px 0 112px;
  background:
    radial-gradient(circle at 18% 16%, rgba(77,255,90,.075), transparent 28%),
    radial-gradient(circle at 88% 62%, rgba(77,255,90,.055), transparent 30%),
    linear-gradient(180deg, rgba(3,6,4,.94), rgba(4,8,6,.98));
  border-top:1px solid rgba(255,255,255,.045);
}
.services-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), transparent 90%);
}
.services-shell{
  position:relative;
  z-index:2;
}
.services-heading{
  max-width:820px;
}
.services-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:20px;
  margin-top:44px;
}
.service-card{
  position:relative;
  min-height:330px;
  overflow:hidden;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.075);
  background:linear-gradient(180deg, rgba(15,22,17,.88), rgba(8,12,10,.94));
  box-shadow:0 26px 90px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.055);
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.service-card:hover{
  transform:translateY(-5px);
  border-color:rgba(77,255,90,.25);
  box-shadow:0 34px 105px rgba(0,0,0,.46), 0 0 48px rgba(77,255,90,.10), inset 0 1px 0 rgba(255,255,255,.07);
}
.service-visual{
  position:relative;
  height:136px;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.055);
}
.service-visual:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg, rgba(0,0,0,.2), rgba(77,255,90,.14), rgba(255,255,255,.06), rgba(0,0,0,.2)),
    radial-gradient(circle at 18% 36%, rgba(77,255,90,.34), transparent 22%),
    radial-gradient(circle at 78% 42%, rgba(255,255,255,.12), transparent 25%),
    linear-gradient(135deg, #071009, #151b17 48%, #060907);
  transform:scale(1.04);
}
.service-visual:after{
  content:"";
  position:absolute;
  inset:auto -12% 0;
  height:58%;
  background:linear-gradient(180deg, transparent, rgba(0,0,0,.58));
}
.service-visual span{
  position:absolute;
  left:22px;
  bottom:18px;
  z-index:2;
  color:#fff;
  font-size:13px;
  font-weight:950;
  letter-spacing:.20em;
  text-transform:uppercase;
  text-shadow:0 0 18px rgba(0,0,0,.75);
}
.visual-interior:before{
  background:
    linear-gradient(120deg, rgba(0,0,0,.18), rgba(77,255,90,.12), rgba(255,255,255,.055), rgba(0,0,0,.2)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.07) 0 1px, transparent 1px 38px),
    radial-gradient(circle at 24% 38%, rgba(77,255,90,.24), transparent 24%),
    linear-gradient(135deg, #080d0a, #242824 46%, #060806);
}
.visual-exterior:before{
  background:
    linear-gradient(110deg, transparent 0 36%, rgba(255,255,255,.14) 37% 39%, transparent 40%),
    radial-gradient(circle at 30% 40%, rgba(77,255,90,.26), transparent 26%),
    linear-gradient(135deg, #050907, #1b211e 50%, #070a08);
}
.visual-polish:before{
  background:
    radial-gradient(circle at 76% 44%, rgba(255,255,255,.20), transparent 16%),
    radial-gradient(circle at 70% 48%, rgba(77,255,90,.30), transparent 24%),
    linear-gradient(110deg, #050805, #1d221e 46%, #090b09);
}
.visual-protection:before{
  background:
    radial-gradient(circle at 28% 28%, rgba(77,255,90,.32), transparent 18%),
    radial-gradient(circle at 64% 56%, rgba(255,255,255,.14), transparent 16%),
    repeating-radial-gradient(circle at 50% 50%, rgba(255,255,255,.05) 0 1px, transparent 1px 18px),
    linear-gradient(135deg, #061007, #1a1f1b 54%, #050705);
}
.visual-odor:before{
  background:
    radial-gradient(ellipse at 28% 46%, rgba(77,255,90,.22), transparent 25%),
    radial-gradient(ellipse at 54% 38%, rgba(255,255,255,.11), transparent 22%),
    linear-gradient(120deg, #060b08, #1c211d 52%, #050705);
  filter:blur(.1px);
}
.visual-sale:before{
  background:
    linear-gradient(120deg, transparent 0 58%, rgba(77,255,90,.16) 59% 62%, transparent 63%),
    radial-gradient(circle at 72% 36%, rgba(77,255,90,.28), transparent 22%),
    linear-gradient(135deg, #060a07, #222620 50%, #050705);
}
.service-content{
  padding:26px 26px 28px;
}
.service-icon{
  width:46px;
  height:46px;
  margin-bottom:18px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:var(--green);
  border:1px solid rgba(77,255,90,.22);
  background:rgba(77,255,90,.065);
  box-shadow:0 0 26px rgba(77,255,90,.10);
  font-size:22px;
  font-weight:900;
}
.service-content h3{
  margin:0 0 10px;
  color:#fff;
  font-size:22px;
  letter-spacing:-.035em;
}
.service-content p{
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.62;
}
.services-cta{
  margin:36px auto 0;
  padding:28px 30px;
  max-width:1060px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-radius:26px;
  border:1px solid rgba(77,255,90,.16);
  background:
    radial-gradient(circle at 10% 0%, rgba(77,255,90,.13), transparent 40%),
    linear-gradient(180deg, rgba(15,24,18,.88), rgba(8,13,10,.94));
  box-shadow:0 24px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.055);
}
.services-cta .section-kicker{
  margin-bottom:10px;
}
.services-cta h3{
  margin:0;
  font-size:28px;
  line-height:1.16;
  letter-spacing:-.045em;
}
.services-cta .button{
  flex:0 0 auto;
}

@media (max-width:1180px){
  .services-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
}
@media (max-width:880px){
  .services-section{padding:76px 0 88px}
  .services-grid{grid-template-columns:1fr; max-width:620px; margin-left:auto; margin-right:auto}
  .services-cta{max-width:620px; flex-direction:column; align-items:flex-start}
  .services-cta .button{width:100%}
}
@media (max-width:640px){
  .services-section{padding:60px 0 72px}
  .service-card{min-height:auto}
  .service-visual{height:118px}
  .service-content{padding:24px 22px 25px}
  .services-cta{padding:24px 22px; border-radius:22px}
  .services-cta h3{font-size:23px}
}


/* Ergebnisse / Vorher-Nachher */
.results-section{
  scroll-margin-top:92px;
  position:relative;
  overflow:hidden;
  padding:82px 0 110px;
  background:
    radial-gradient(circle at 76% 14%, rgba(77,255,90,.075), transparent 30%),
    radial-gradient(circle at 14% 76%, rgba(77,255,90,.075), transparent 30%),
    linear-gradient(180deg, rgba(4,8,6,.98), rgba(3,6,4,.98));
  border-top:1px solid rgba(255,255,255,.045);
}
.results-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), transparent 92%);
}
.results-shell{
  position:relative;
  z-index:2;
}
.results-heading{
  max-width:820px;
}
.before-after-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:22px;
  margin-top:28px;
}
.ba-card{
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.075);
  background:linear-gradient(180deg, rgba(15,22,17,.88), rgba(8,12,10,.94));
  box-shadow:0 28px 95px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.055);
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.ba-card:hover{
  transform:translateY(-5px);
  border-color:rgba(77,255,90,.24);
  box-shadow:0 36px 115px rgba(0,0,0,.50), 0 0 54px rgba(77,255,90,.09), inset 0 1px 0 rgba(255,255,255,.07);
}
.ba-visual{
  position:relative;
  height:270px;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:#080c09;
}
.ba-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.ba-side{
  position:absolute;
  top:0;
  bottom:0;
  width:50%;
  overflow:hidden;
}
.ba-before{
  left:0;
  background:linear-gradient(135deg, rgba(0,0,0,.48), rgba(0,0,0,.08));
}
.ba-after{
  right:0;
  background:linear-gradient(135deg, rgba(77,255,90,.08), rgba(255,255,255,.02));
}
.ba-interior .ba-before{
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 22px),
    radial-gradient(circle at 36% 45%, rgba(140,140,132,.22), transparent 26%),
    linear-gradient(135deg, #1a1a17, #080b08);
}
.ba-interior .ba-after{
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.065) 0 1px, transparent 1px 22px),
    radial-gradient(circle at 62% 42%, rgba(77,255,90,.32), transparent 25%),
    linear-gradient(135deg, #0c130d, #222822);
}
.ba-paint .ba-before{
  background:
    linear-gradient(115deg, transparent 0 43%, rgba(255,255,255,.11) 44% 46%, transparent 47%),
    radial-gradient(circle at 38% 42%, rgba(120,120,112,.20), transparent 26%),
    linear-gradient(135deg, #111412, #050807);
}
.ba-paint .ba-after{
  background:
    linear-gradient(115deg, transparent 0 38%, rgba(255,255,255,.24) 39% 42%, transparent 43%),
    radial-gradient(circle at 60% 43%, rgba(77,255,90,.34), transparent 24%),
    linear-gradient(135deg, #081009, #19201b);
}
.ba-wheels .ba-before{
  background:
    repeating-radial-gradient(circle at 50% 50%, rgba(255,255,255,.065) 0 2px, transparent 2px 18px),
    radial-gradient(circle at 50% 50%, rgba(90,90,86,.24), transparent 40%),
    linear-gradient(135deg, #151713, #050806);
}
.ba-wheels .ba-after{
  background:
    repeating-radial-gradient(circle at 50% 50%, rgba(77,255,90,.10) 0 2px, transparent 2px 18px),
    radial-gradient(circle at 50% 50%, rgba(77,255,90,.34), transparent 38%),
    linear-gradient(135deg, #081109, #1d251e);
}
.ba-side span{
  position:absolute;
  bottom:18px;
  padding:8px 12px;
  border-radius:999px;
  color:#fff;
  background:rgba(0,0,0,.58);
  border:1px solid rgba(255,255,255,.09);
  backdrop-filter:blur(12px);
  font-size:11px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ba-before span{left:18px}
.ba-after span{right:18px; color:var(--green)}
.ba-divider{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, transparent, rgba(77,255,90,.86), transparent);
  box-shadow:0 0 28px rgba(77,255,90,.50);
}
.ba-divider span{
  position:absolute;
  left:50%;
  top:50%;
  width:44px;
  height:44px;
  transform:translate(-50%, -50%);
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#071208;
  background:linear-gradient(180deg, #8dff86, #34ee4f);
  box-shadow:0 0 34px rgba(77,255,90,.42);
  font-weight:950;
}
.ba-content{
  padding:26px 26px 28px;
}
.ba-label{
  margin:0 0 10px;
  color:var(--green);
  font-size:12px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.ba-content h3{
  margin:0 0 10px;
  color:#fff;
  font-size:22px;
  letter-spacing:-.035em;
}
.ba-content p:last-child{
  margin:0;
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.proof-strip{
  margin:42px auto 0;
  max-width:1120px;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1px;
  overflow:hidden;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.055);
  box-shadow:0 26px 90px rgba(0,0,0,.35);
}
.proof-strip article{
  padding:28px 30px;
  background:linear-gradient(180deg, rgba(15,23,17,.86), rgba(8,13,10,.91));
}
.proof-strip strong{
  display:block;
  margin-bottom:12px;
  color:var(--green);
  font-size:12px;
  font-weight:950;
  letter-spacing:.14em;
}
.proof-strip h3{
  margin:0 0 8px;
  color:#fff;
  font-size:20px;
  letter-spacing:-.03em;
}
.proof-strip p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
  font-size:14px;
}

@media (max-width:1180px){
  .before-after-grid{grid-template-columns:1fr; max-width:720px; margin-left:auto; margin-right:auto}
  .ba-visual{height:260px}
}
@media (max-width:880px){
  .results-section{padding:76px 0 88px}
  .proof-strip{grid-template-columns:1fr; max-width:720px}
}
@media (max-width:640px){
  .results-section{padding:60px 0 72px}
  .before-after-grid{gap:18px}
  .ba-visual{height:220px}
  .ba-content{padding:24px 22px 25px}
  .proof-strip article{padding:24px 22px}
}

.next-section-placeholder{
  padding:84px 0 110px;
  min-height:340px;
  background:
    radial-gradient(circle at 50% 0%, rgba(77,255,90,.10), transparent 34%),
    linear-gradient(180deg, rgba(3,6,4,.98), rgba(2,4,3,1));
  border-top:1px solid rgba(255,255,255,.045);
  text-align:center;
}
.next-section-placeholder h2{
  margin:10px auto 12px;
  max-width:720px;
  color:#fff;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.02;
  letter-spacing:-.055em;
}
.next-section-placeholder p:not(.section-kicker){
  margin:0 auto;
  max-width:640px;
  color:var(--muted);
  line-height:1.65;
}


/* Aktiver Vorher/Nachher-Slider */
.ba-slider{
  cursor:ew-resize;
  user-select:none;
  touch-action:none;
  background:#050806;
}
.ba-slider .ba-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  pointer-events:none;
}
.ba-slider .ba-after-wrap{
  position:absolute;
  inset:0;
  width:100%;
  overflow:hidden;
  clip-path:inset(0 calc(100% - var(--pos, 50%)) 0 0);
}
.ba-slider .ba-side{
  display:none;
}
.ba-slider .ba-divider{
  left:var(--pos, 50%);
  z-index:5;
  width:2px;
}
.ba-slider .ba-divider span{
  display:none;
}
.ba-handle{
  position:absolute;
  left:var(--pos, 50%);
  top:50%;
  z-index:7;
  width:48px;
  height:48px;
  transform:translate(-50%, -50%);
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.20);
  border-radius:999px;
  color:#061008;
  background:linear-gradient(180deg, #91ff8a, #35ee50);
  box-shadow:0 0 0 7px rgba(77,255,90,.08), 0 0 34px rgba(77,255,90,.48), 0 18px 40px rgba(0,0,0,.45);
  cursor:ew-resize;
}
.ba-handle span{
  font-weight:950;
  font-size:21px;
  line-height:1;
  transform:translateY(-1px);
}
.ba-handle:focus-visible{
  outline:3px solid rgba(255,255,255,.85);
  outline-offset:4px;
}
.ba-pill{
  position:absolute;
  bottom:18px;
  z-index:6;
  padding:8px 12px;
  border-radius:999px;
  color:#fff;
  background:rgba(0,0,0,.60);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(12px);
  font-size:11px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
  pointer-events:none;
}
.ba-pill-before{left:18px}
.ba-pill-after{right:18px; color:var(--green)}
.ba-slider:after{
  content:"ziehen";
  position:absolute;
  left:50%;
  top:calc(50% + 36px);
  transform:translateX(-50%);
  z-index:6;
  padding:5px 9px;
  border-radius:999px;
  color:rgba(247,250,246,.72);
  background:rgba(0,0,0,.38);
  border:1px solid rgba(255,255,255,.08);
  font-size:10px;
  font-weight:850;
  letter-spacing:.10em;
  text-transform:uppercase;
  opacity:.82;
  pointer-events:none;
}
.ba-slider.is-dragging:after,
.ba-slider:hover:after{
  opacity:0;
}


/* Kontakt & Anfrage */
.contact-section{
  min-height:680px;
  scroll-margin-top:92px;
  position:relative;
  overflow:hidden;
  scroll-margin-top:92px;
  padding:104px 0 116px;
  background:
    radial-gradient(circle at 18% 12%, rgba(77,255,90,.10), transparent 30%),
    radial-gradient(circle at 84% 76%, rgba(77,255,90,.08), transparent 30%),
    linear-gradient(180deg, rgba(3,6,4,.98), rgba(2,4,3,1));
  border-top:1px solid rgba(255,255,255,.045);
}
.contact-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), transparent 92%);
}
.contact-glow{
  position:absolute;
  right:7%;
  top:20%;
  width:380px;
  height:380px;
  border-radius:999px;
  background:rgba(77,255,90,.10);
  filter:blur(80px);
  pointer-events:none;
}
.contact-shell{
  position:relative;
  z-index:2;
}
.contact-panel{
  position:relative;
  display:grid;
  grid-template-columns:0.92fr 1.25fr 0.72fr;
  gap:22px;
  align-items:stretch;
  padding:26px;
  border-radius:34px;
  border:1px solid rgba(77,255,90,.16);
  background:
    radial-gradient(circle at 10% 0%, rgba(77,255,90,.13), transparent 38%),
    linear-gradient(180deg, rgba(15,24,18,.86), rgba(7,11,9,.95));
  box-shadow:0 34px 120px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.06);
}
.contact-info,
.contact-form,
.whatsapp-card{
  border-radius:26px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.032);
  box-shadow:0 20px 70px rgba(0,0,0,.28);
}
.contact-info{
  padding:34px 32px;
}
.contact-info h2{
  margin:10px 0 16px;
  color:#fff;
  font-size:clamp(38px, 4.7vw, 68px);
  line-height:.98;
  letter-spacing:-.065em;
}
.contact-info p:not(.section-kicker){
  margin:0;
  color:var(--muted);
  line-height:1.68;
  font-size:15px;
}
.contact-list{
  display:grid;
  gap:12px;
  margin-top:28px;
}
.contact-list a,
.contact-list > div{
  min-height:72px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(0,0,0,.18);
  color:#fff;
  text-decoration:none;
}
.contact-list span{
  flex:0 0 40px;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  color:var(--green);
  border-radius:12px;
  border:1px solid rgba(77,255,90,.22);
  background:rgba(77,255,90,.06);
}
.contact-list strong{
  display:block;
  font-size:14px;
}
.contact-list small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
}
.contact-form{
  padding:30px;
}
.form-row{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}
.contact-form label{
  display:block;
  margin-bottom:16px;
}
.contact-form label span{
  display:block;
  margin-bottom:9px;
  color:rgba(247,250,246,.86);
  font-size:13px;
  font-weight:850;
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  width:100%;
  color:#fff;
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  background:rgba(0,0,0,.28);
  outline:none;
  font:inherit;
  font-size:14px;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.contact-form input,
.contact-form select{
  min-height:50px;
  padding:0 15px;
}
.contact-form textarea{
  resize:vertical;
  min-height:126px;
  padding:15px;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  border-color:rgba(77,255,90,.42);
  box-shadow:0 0 0 4px rgba(77,255,90,.08);
  background:rgba(0,0,0,.35);
}
.contact-form ::placeholder{
  color:rgba(183,193,185,.55);
}
.contact-submit{
  width:100%;
  min-height:58px;
  border:0;
  border-radius:999px;
  color:#061008;
  background:linear-gradient(180deg, #8eff86, #30ef4b);
  box-shadow:0 13px 42px rgba(77,255,90,.25);
  font-weight:950;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease;
}
.contact-submit:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 52px rgba(77,255,90,.33);
}
.form-note{
  margin:13px 0 0;
  color:rgba(247,250,246,.55);
  font-size:12px;
  line-height:1.55;
}
.form-note code{
  color:rgba(247,250,246,.78);
}
.whatsapp-card{
  position:relative;
  overflow:hidden;
  padding:30px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:100%;
  background:
    radial-gradient(circle at 50% 26%, rgba(77,255,90,.28), transparent 30%),
    linear-gradient(180deg, rgba(15,24,18,.80), rgba(7,11,9,.95));
}
.whatsapp-card:before{
  content:"";
  position:absolute;
  inset:auto -30% -22% -30%;
  height:55%;
  background:
    radial-gradient(circle at 50% 20%, rgba(77,255,90,.35), transparent 18%),
    radial-gradient(circle at 35% 72%, rgba(77,255,90,.15), transparent 18%);
  filter:blur(24px);
  opacity:.8;
}
.whatsapp-icon{
  position:relative;
  z-index:2;
  width:86px;
  height:86px;
  margin-bottom:22px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#071208;
  background:linear-gradient(180deg, #8fff87, #30ef4b);
  box-shadow:0 0 44px rgba(77,255,90,.35);
  font-size:42px;
}
.whatsapp-card h3{
  position:relative;
  z-index:2;
  margin:0 0 10px;
  color:#fff;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-.045em;
}
.whatsapp-card p{
  position:relative;
  z-index:2;
  margin:0 0 22px;
  color:var(--muted);
  line-height:1.58;
  font-size:14px;
}
.whatsapp-card .button{
  position:relative;
  z-index:2;
  width:100%;
}

@media (max-width:1180px){
  .contact-panel{
    grid-template-columns:1fr 1.2fr;
  }
  .whatsapp-card{
    grid-column:1 / -1;
    min-height:260px;
  }
}
@media (max-width:880px){
  .contact-section{padding:78px 0 92px}
  .contact-panel{
    grid-template-columns:1fr;
    padding:18px;
    border-radius:28px;
  }
  .contact-info,
  .contact-form,
  .whatsapp-card{
    border-radius:22px;
  }
  .form-row{
    grid-template-columns:1fr;
    gap:0;
  }
}
@media (max-width:640px){
  .contact-section{padding:60px 0 74px}
  .contact-info,
  .contact-form,
  .whatsapp-card{
    padding:24px 22px;
  }
  .contact-list a,
  .contact-list > div{
    align-items:flex-start;
  }
}


/* Footer */
.site-footer{
  position:relative;
  z-index:3;
  padding:28px 0;
  border-top:1px solid rgba(255,255,255,.06);
  background:rgba(2,4,3,1);
}
.footer-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.footer-brand img{
  width:96px;
  display:block;
  filter:drop-shadow(0 0 12px rgba(77,255,90,.22));
}
.site-footer p{
  margin:0;
  color:rgba(247,250,246,.58);
  font-size:13px;
  text-align:center;
}
.site-footer nav{
  display:flex;
  gap:18px;
}
.site-footer a{
  color:rgba(247,250,246,.74);
  text-decoration:none;
  font-size:13px;
}
.site-footer a:hover{
  color:#fff;
}
@media (max-width:760px){
  .footer-shell{
    flex-direction:column;
    text-align:center;
  }
}


.send-choice{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:2px 0 18px;
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(0,0,0,.18);
}
.send-choice > span{
  margin-right:auto;
  color:rgba(247,250,246,.78);
  font-size:13px;
  font-weight:850;
}
.send-choice label{
  margin:0;
  cursor:pointer;
}
.send-choice input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.send-choice b{
  min-height:38px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  color:rgba(247,250,246,.74);
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.032);
  font-size:13px;
  font-weight:950;
  transition:border-color .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}
.send-choice input:checked + b{
  color:#061008;
  border-color:transparent;
  background:linear-gradient(180deg, #8eff86, #30ef4b);
  box-shadow:0 0 28px rgba(77,255,90,.20);
}

@media (max-width:640px){
  .send-choice{
    align-items:stretch;
  }
  .send-choice > span{
    width:100%;
    margin-right:0;
  }
  .send-choice label{
    flex:1;
  }
  .send-choice b{
    width:100%;
  }
}


.form-status{
  min-height:20px;
  margin:10px 0 0;
  color:var(--green);
  font-size:12px;
  font-weight:850;
}


/* Ablauf, Vertrauen & FAQ */
.trust-section{
  position:relative;
  overflow:hidden;
  scroll-margin-top:92px;
  padding:104px 0 112px;
  background:
    radial-gradient(circle at 16% 16%, rgba(77,255,90,.09), transparent 30%),
    radial-gradient(circle at 86% 54%, rgba(77,255,90,.06), transparent 32%),
    linear-gradient(180deg, rgba(3,6,4,.98), rgba(4,8,6,.98));
  border-top:1px solid rgba(255,255,255,.045);
}
.trust-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), transparent 92%);
}
.trust-shell{
  position:relative;
  z-index:2;
}
.trust-heading{
  max-width:890px;
}
.process-grid{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:1px;
  margin-top:44px;
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.055);
  box-shadow:0 30px 110px rgba(0,0,0,.42);
}
.process-card{
  min-height:210px;
  padding:30px 26px;
  background:
    radial-gradient(circle at 24% 0%, rgba(77,255,90,.10), transparent 40%),
    linear-gradient(180deg, rgba(16,24,18,.86), rgba(8,13,10,.92));
}
.process-card strong{
  display:block;
  margin-bottom:24px;
  color:var(--green);
  font-size:13px;
  font-weight:950;
  letter-spacing:.14em;
}
.process-card h3{
  margin:0 0 10px;
  color:#fff;
  font-size:21px;
  letter-spacing:-.035em;
}
.process-card p{
  margin:0;
  color:var(--muted);
  line-height:1.58;
  font-size:14px;
}
.why-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:28px;
  align-items:stretch;
  margin-top:54px;
}
.why-copy{
  padding:36px 34px;
  border-radius:30px;
  border:1px solid rgba(77,255,90,.16);
  background:
    radial-gradient(circle at 12% 0%, rgba(77,255,90,.16), transparent 40%),
    linear-gradient(180deg, rgba(16,24,18,.86), rgba(8,13,10,.94));
  box-shadow:0 26px 95px rgba(0,0,0,.40), inset 0 1px 0 rgba(255,255,255,.055);
}
.why-copy h2{
  margin:10px 0 18px;
  color:#fff;
  font-size:clamp(34px, 4vw, 58px);
  line-height:1.02;
  letter-spacing:-.06em;
}
.why-copy p:not(.section-kicker){
  margin:0;
  color:var(--muted);
  line-height:1.68;
  font-size:15px;
}
.why-cards{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}
.why-cards article{
  padding:28px 28px 26px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.075);
  background:linear-gradient(180deg, rgba(15,22,17,.82), rgba(8,12,10,.94));
  box-shadow:0 22px 78px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.05);
}
.why-cards span{
  width:44px;
  height:44px;
  margin-bottom:18px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:var(--green);
  border:1px solid rgba(77,255,90,.22);
  background:rgba(77,255,90,.06);
  box-shadow:0 0 26px rgba(77,255,90,.10);
  font-size:21px;
  font-weight:950;
}
.why-cards h3{
  margin:0 0 9px;
  color:#fff;
  font-size:20px;
  letter-spacing:-.035em;
}
.why-cards p{
  margin:0;
  color:var(--muted);
  line-height:1.58;
  font-size:14px;
}

.faq-section{
  position:relative;
  overflow:hidden;
  scroll-margin-top:92px;
  padding:96px 0 108px;
  background:
    radial-gradient(circle at 76% 12%, rgba(77,255,90,.07), transparent 30%),
    linear-gradient(180deg, rgba(4,8,6,.98), rgba(3,6,4,.98));
  border-top:1px solid rgba(255,255,255,.045);
}
.faq-shell{
  position:relative;
  z-index:2;
}
.faq-heading{
  max-width:820px;
}
.faq-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
  margin-top:40px;
}
.faq-item{
  border-radius:22px;
  border:1px solid rgba(255,255,255,.075);
  background:linear-gradient(180deg, rgba(15,22,17,.86), rgba(8,12,10,.94));
  box-shadow:0 20px 70px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.05);
  overflow:hidden;
}
.faq-item summary{
  position:relative;
  padding:22px 54px 22px 24px;
  color:#fff;
  cursor:pointer;
  font-size:17px;
  font-weight:900;
  letter-spacing:-.02em;
  list-style:none;
}
.faq-item summary::-webkit-details-marker{
  display:none;
}
.faq-item summary:after{
  content:"+";
  position:absolute;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#061008;
  background:linear-gradient(180deg, #8eff86, #30ef4b);
  box-shadow:0 0 24px rgba(77,255,90,.18);
  font-weight:950;
}
.faq-item[open] summary:after{
  content:"–";
}
.faq-item p{
  margin:0;
  padding:0 24px 24px;
  color:var(--muted);
  line-height:1.65;
  font-size:14px;
}

@media (max-width:1180px){
  .process-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .process-card:last-child{
    grid-column:1 / -1;
  }
  .why-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:880px){
  .trust-section{padding:78px 0 88px}
  .faq-section{padding:76px 0 88px}
  .process-grid,
  .why-cards,
  .faq-grid{
    grid-template-columns:1fr;
  }
  .process-card:last-child{
    grid-column:auto;
  }
}
@media (max-width:640px){
  .trust-section{padding:60px 0 72px}
  .faq-section{padding:60px 0 74px}
  .process-card,
  .why-copy,
  .why-cards article{
    padding:24px 22px;
  }
  .faq-item summary{
    padding:20px 52px 20px 20px;
  }
  .faq-item p{
    padding:0 20px 20px;
  }
}


/* Rechtliche Seiten */
.legal-header{
  position:sticky;
}
.legal-page{
  min-height:calc(100vh - 92px);
  padding:96px 0 110px;
  background:
    radial-gradient(circle at 12% 16%, rgba(77,255,90,.10), transparent 30%),
    radial-gradient(circle at 84% 22%, rgba(77,255,90,.06), transparent 30%),
    linear-gradient(180deg, rgba(3,6,4,.98), rgba(2,4,3,1));
}
.legal-shell{
  max-width:980px;
}
.legal-page h1{
  margin:10px 0 32px;
  color:#fff;
  font-size:clamp(46px, 6vw, 86px);
  line-height:.98;
  letter-spacing:-.065em;
}
.legal-card{
  margin-top:18px;
  padding:32px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.075);
  background:
    radial-gradient(circle at 12% 0%, rgba(77,255,90,.10), transparent 34%),
    linear-gradient(180deg, rgba(15,24,18,.86), rgba(7,11,9,.95));
  box-shadow:0 28px 95px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.055);
}
.legal-card.important-card{
  border-color:rgba(77,255,90,.22);
}
.legal-card h2{
  margin:26px 0 10px;
  color:#fff;
  font-size:22px;
  letter-spacing:-.03em;
}
.legal-card h2:first-child{
  margin-top:0;
}
.legal-card p{
  margin:0 0 14px;
  color:var(--muted);
  line-height:1.72;
  font-size:15px;
}
@media (max-width:640px){
  .legal-page{
    padding:66px 0 84px;
  }
  .legal-card{
    padding:24px 22px;
    border-radius:22px;
  }
}

.legal-card a{color:var(--green);text-decoration:none}.legal-card a:hover{text-decoration:underline}


/* Version 15 – Mobile Feinschliff */
@media (max-width: 880px){
  .site-header{
    height:74px;
  }
  .nav-shell{
    height:74px;
  }
  .brand{
    width:104px;
  }
  .menu-toggle span{
    width:28px;
    height:3px;
  }
  .site-header.open .main-nav{
    top:74px;
  }

  .hero{
    padding:46px 0 28px;
  }
  .hero-image{
    margin-top:22px;
  }
  .hero-copy{
    margin-top:4px;
  }

  .packages-section,
  .services-section,
  .results-section,
  .trust-section,
  .faq-section,
  .contact-section{
    padding-top:64px;
    padding-bottom:72px;
  }

  .section-heading,
  .packages-heading,
  .services-heading,
  .results-heading,
  .trust-heading,
  .faq-heading{
    max-width:100%;
  }

  .package-grid,
  .services-grid,
  .before-after-grid,
  .faq-grid{
    gap:18px;
  }

  .package-card,
  .special-use-card,
  .service-card,
  .ba-card,
  .why-copy,
  .why-cards article,
  .faq-item,
  .contact-info,
  .contact-form,
  .whatsapp-card{
    border-radius:22px;
  }

  .special-use-grid,
  .addon-grid,
  .services-grid,
  .before-after-grid,
  .process-grid,
  .why-grid,
  .faq-grid{
    margin-top:26px;
  }

  .process-card{
    min-height:auto;
  }

  .services-cta{
    margin-top:26px;
  }

  .contact-panel{
    gap:16px;
  }

  .footer-shell{
    gap:14px;
  }
}

@media (max-width: 640px){
  body{
    -webkit-text-size-adjust:100%;
  }

  .shell{
    width:min(100% - 26px, 1420px);
  }

  .site-header{
    height:70px;
  }
  .nav-shell{
    height:70px;
  }
  .brand{
    width:96px;
  }
  .site-header.open .main-nav{
    top:70px;
  }

  .hero{
    padding:34px 0 22px;
  }
  .hero-image{
    margin-top:18px;
    border-radius:22px;
  }
  .hero-image img{
    border-radius:22px;
  }
  .eyebrow,
  .section-kicker{
    letter-spacing:.22em;
  }
  .hero h1,
  h1{
    letter-spacing:-.07em;
  }
  .lead{
    margin-top:22px;
    line-height:1.62;
  }

  .btn,
  .button,
  .nav-button,
  .contact-submit{
    min-height:54px;
  }

  .trust-row{
    margin-top:20px;
  }
  .chip{
    min-height:42px;
  }

  .hero-features article{
    min-height:auto;
    padding:20px;
    gap:16px;
  }
  .feature-icon{
    flex-basis:38px;
    width:38px;
    height:38px;
  }

  .packages-section,
  .services-section,
  .results-section,
  .trust-section,
  .faq-section,
  .contact-section{
    padding-top:54px;
    padding-bottom:62px;
  }

  .package-card{
    padding:28px 26px;
  }
  .package-card.featured{
    transform:none;
  }
  .package-card.featured:hover,
  .package-card:hover{
    transform:none;
  }

  .special-use-card{
    padding:26px 24px;
  }

  .addon-card{
    padding:22px;
  }

  .service-card{
    min-height:auto;
  }
  .service-visual{
    height:104px;
  }
  .service-content{
    padding:22px 20px 23px;
  }
  .service-icon{
    width:40px;
    height:40px;
    margin-bottom:14px;
  }

  .services-cta{
    padding:22px;
    gap:18px;
  }
  .services-cta h3{
    font-size:22px;
  }

  .ba-visual{
    height:232px;
  }
  .ba-handle{
    width:44px;
    height:44px;
  }
  .ba-slider:after{
    display:none;
  }
  .ba-content{
    padding:22px 20px 24px;
  }

  .proof-strip article{
    padding:22px 20px;
  }

  .process-card{
    padding:22px 20px;
  }
  .process-card strong{
    margin-bottom:14px;
  }

  .why-copy{
    padding:24px 22px;
  }
  .why-cards article{
    padding:22px 20px;
  }
  .why-cards span{
    width:40px;
    height:40px;
    margin-bottom:14px;
  }

  .faq-item summary{
    padding:18px 50px 18px 20px;
    font-size:16px;
  }
  .faq-item p{
    padding:0 20px 20px;
  }

  .contact-panel{
    padding:14px;
    border-radius:24px;
  }
  .contact-info,
  .contact-form,
  .whatsapp-card{
    padding:22px 20px;
  }
  .contact-info h2{
    font-size:clamp(34px, 12vw, 52px);
  }
  .contact-list{
    gap:10px;
  }
  .contact-list a,
  .contact-list > div{
    min-height:66px;
    padding:12px 14px;
  }
  .contact-list span{
    width:36px;
    height:36px;
    flex-basis:36px;
  }
  .contact-form input,
  .contact-form select{
    min-height:48px;
  }
  .contact-form textarea{
    min-height:112px;
  }
  .send-choice{
    padding:10px;
  }
  .send-choice b{
    min-height:36px;
  }
  .whatsapp-icon{
    width:72px;
    height:72px;
    font-size:34px;
    margin-bottom:18px;
  }

  .site-footer{
    padding:24px 0 30px;
  }
  .footer-brand img{
    width:82px;
  }
}

@media (max-width: 390px){
  .shell{
    width:min(100% - 22px, 1420px);
  }
  .hero h1,
  h1{
    font-size:clamp(44px, 14vw, 62px);
  }
  .section-heading h2,
  .packages-heading h2,
  .services-heading h2,
  .results-heading h2,
  .trust-heading h2,
  .faq-heading h2{
    font-size:clamp(34px, 11vw, 52px);
  }
  .price-row strong{
    font-size:42px;
  }
}


/* Navigation Active State Fix */
.main-nav a:after{
  transition:width .22s ease, opacity .22s ease, transform .22s ease;
}
.main-nav a:not(.active):after{
  width:0;
  opacity:0;
}


/* Scroll-Anker feinjustiert */
#startseite,
#pakete,
#leistungen,
#ergebnisse,
#kontakt{
  scroll-margin-top:96px;
}
