    :root{
      --brand:#0e7c5f;
      --brand2:#0bb07a;
      --ink:#0f172a;
      --muted:#64748b;
      --bg:#ffffff;
      --soft:#f5f7fa;
      --line:rgba(15,23,42,.10);
      --shadow:0 18px 45px rgba(2,6,23,.12);
      --radius:18px;
      --max:1160px;
      --dark:#0b1a16;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family:Poppins, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      color:var(--ink);
      background:var(--bg);
      line-height:1.6;
    }
    a{color:inherit; text-decoration:none}
    .container{max-width:var(--max); margin:0 auto; padding:0 20px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
      padding:12px 18px; border-radius:999px;
      border:1px solid rgba(255,255,255,.28);
      background:rgba(255,255,255,.08);
      color:#fff;
      font-weight:600;
      transition:.18s ease;
      cursor:pointer;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-1px); background:rgba(255,255,255,.12)}
    .btn.primary{background:linear-gradient(135deg,var(--brand),var(--brand2)); border-color:transparent}
    .btn.light{color:var(--ink); background:#fff; border-color:rgba(15,23,42,.14)}
    .btn.light:hover{box-shadow:0 12px 30px rgba(2,6,23,.12)}

    /* NAV – ähnlich Struktur */
    header{
      position:sticky; top:0; z-index:50;
      background:rgba(11,26,22,.72);
      backdrop-filter: blur(10px);
      border-bottom:1px solid rgba(255,255,255,.10);
    }
    .nav{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0}
    .brand{display:flex; align-items:center; gap:12px}
    .logoWrap{
      width:54px; height:54px; border-radius:12px;
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.16);
      display:grid; place-items:center;
    }
    .logoWrap img{width:42px; height:42px; object-fit:contain}
    .brand strong{font-family:Montserrat, Poppins, sans-serif; font-size:14px; letter-spacing:.02em; color:#fff}
    .brand span{display:block; font-size:12px; color:rgba(255,255,255,.70)}
    .links{display:flex; align-items:center; gap:12px; flex-wrap:wrap}
    .links a{color:rgba(255,255,255,.78); font-size:14px; padding:8px 10px; border-radius:999px; transition:.18s ease}
    .links a:hover{color:#fff; background:rgba(255,255,255,.08)}
    .menu{display:none; border:1px solid rgba(255,255,255,.20); border-radius:14px; padding:10px 12px; background:rgba(255,255,255,.08); color:#fff}
    @media (max-width: 980px){ .links{display:none} .menu{display:inline-flex} }

    /* HERO mit Video-Look */
    .hero{position:relative; min-height: 520px; color:#fff; overflow:hidden}
    .hero video{
      position:absolute; inset:0;
      width:100%; height:100%;
      object-fit:cover;
      filter:saturate(1.05) contrast(1.05);
    }
    .hero .overlay{
      position:absolute; inset:0;
      background:
        linear-gradient(90deg, rgba(11,26,22,.86) 0%, rgba(11,26,22,.72) 48%, rgba(11,26,22,.55) 100%),
        radial-gradient(900px 420px at 20% 10%, rgba(14,124,95,.35), transparent 60%);
    }
    .hero-inner{position:relative; padding:62px 0 44px}
    h1{
      font-family:Montserrat, Poppins, sans-serif;
      margin:0 0 10px;
      font-size: clamp(32px, 4.6vw, 56px);
      line-height:1.05;
      letter-spacing:-.02em;
    }
    .sub{max-width:72ch; color:rgba(255,255,255,.82); font-size:16px}
    .hero-cta{margin-top:16px; display:flex; gap:12px; flex-wrap:wrap; align-items:center}
    .hero-box{
      margin-top:22px;
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:12px;
    }
    @media (max-width: 980px){ .hero-box{grid-template-columns:1fr} }
    .hero-mini{
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.16);
      border-radius: var(--radius);
      padding:14px 14px;
    }
    .hero-mini h3{margin:0 0 6px; font-family:Montserrat, Poppins, sans-serif; font-size:15px}
    .hero-mini p{margin:0; color:rgba(255,255,255,.78); font-size:13px}

    /* SECTIONS */
    section{padding:46px 0}
    .section-head{display:flex; justify-content:space-between; gap:14px; align-items:flex-end; margin-bottom:18px}
    .section-head h2{font-family:Montserrat, Poppins, sans-serif; margin:0; font-size: clamp(22px, 2.4vw, 32px)}
    .section-head p{margin:0; color:var(--muted); max-width: 78ch}

    .grid{display:grid; grid-template-columns: repeat(12, 1fr); gap:14px}
    .card{
      background:#fff;
      border:1px solid rgba(15,23,42,.10);
      border-radius: var(--radius);
      box-shadow: 0 10px 28px rgba(2,6,23,.06);
      padding:18px;
    }
    .card h3{font-family:Montserrat, Poppins, sans-serif; margin:0 0 6px; font-size:16px}
    .card p{margin:0; color:var(--muted); font-size:14px}
    .list{margin:10px 0 0; padding-left:18px; color:var(--muted); font-size:14px}
    .list li{margin:6px 0}

    .half{grid-column: span 6}
    .third{grid-column: span 4}
    @media (max-width: 980px){ .half,.third{grid-column: span 12} }

    .soft-band{background: var(--soft); border-top:1px solid var(--line); border-bottom:1px solid var(--line)}

    /* Modal (ähnlich "Bewertung starten"-Dialog) */
    .modal{position:fixed; inset:0; display:none; align-items:center; justify-content:center;
      background:rgba(2,6,23,.62); padding:18px; z-index:100;}
    .modal.open{display:flex}
    .modal-inner{width:min(980px, 100%); max-height:86vh; overflow:auto; background:#fff; border-radius:22px;
      border:1px solid rgba(15,23,42,.14); box-shadow: var(--shadow); padding:18px;}
    .modal-top{display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:8px}
    .close{border-radius:14px}
    .stepgrid{display:grid; grid-template-columns: repeat(3, 1fr); gap:12px; margin-top:12px}
    @media (max-width: 980px){ .stepgrid{grid-template-columns:1fr} }
    .choice{
      border:1px solid rgba(15,23,42,.12);
      background: var(--soft);
      border-radius: 18px;
      padding:14px;
      cursor:pointer;
      transition:.18s ease;
      min-height: 92px;
    }
    .choice:hover{transform: translateY(-1px); box-shadow: 0 12px 30px rgba(2,6,23,.10)}
    .choice b{font-family:Montserrat, Poppins, sans-serif}
    .small{font-size:12px; color:var(--muted)}

    /* Contact */
    .field{display:flex; flex-direction:column; gap:6px; margin-bottom:10px}
    label{font-size:13px; color:var(--muted)}
    input, textarea{width:100%; padding:12px 12px; border-radius: 14px; border:1px solid rgba(15,23,42,.14); background:#fff; outline:none; font-family:inherit}
    textarea{min-height:120px; resize:vertical}
    input:focus, textarea:focus{border-color: rgba(14,124,95,.55); box-shadow:0 0 0 4px rgba(14,124,95,.12)}

    /* Footer – dunkel wie wio-estate */
    footer{background:var(--dark); color:rgba(255,255,255,.82); padding:44px 0 30px}
    footer a{color: rgba(255,255,255,.78)}
    footer a:hover{color:#fff; text-decoration:underline; text-underline-offset:3px}
    .foot-grid{display:grid; grid-template-columns: 1.2fr .8fr .8fr; gap:16px}
    @media (max-width: 980px){ .foot-grid{grid-template-columns:1fr} }
    .foot-title{font-family:Montserrat, Poppins, sans-serif; font-weight:700; margin:0 0 10px}
    .foot-list{margin:0; padding:0; list-style:none}
    .foot-list li{margin:8px 0}
    .divider{height:1px; background:rgba(255,255,255,.12); margin:20px 0 16px}