/* ============================================================
   SmartDogsProtect – Theme-Stile (1:1 zum Design-Handoff)
   General Sans self-hosted, keine externen Requests.
   Tiefe über Flächen und feine Linien – keine Schatten, keine Rahmen.
   ============================================================ */

/* ---------- General Sans (self-hosted) ---------- */
@font-face{font-family:'GeneralSans';src:url('../fonts/GeneralSans-Extralight.woff2') format('woff2');font-weight:200;font-style:normal;font-display:swap;}
@font-face{font-family:'GeneralSans';src:url('../fonts/GeneralSans-Light.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap;}
@font-face{font-family:'GeneralSans';src:url('../fonts/GeneralSans-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'GeneralSans';src:url('../fonts/GeneralSans-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'GeneralSans';src:url('../fonts/GeneralSans-Semibold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:'GeneralSans';src:url('../fonts/GeneralSans-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;}

/* ---------- Tokens ---------- */
:root{
  --ink:oklch(25% 0.04 260);
  --navy:oklch(25% 0.04 260);
  --accent:#0632aa;
  --accent-soft:oklch(60% 0.13 258);
  --cream:oklch(98% 0.008 60);
  --cream2:oklch(96% 0.015 60);
  --panel:oklch(93% 0.015 60);
  --panel-dk:oklch(90% 0.015 60);
  --white:oklch(100% 0 0);
  --white2:oklch(99% 0.005 60);
  --muted:oklch(35% 0.03 260);
  --muted2:oklch(45% 0.02 260);
  --grad-btn:linear-gradient(135deg, oklch(55% 0.19 258), oklch(30% 0.16 262));
  --grad-text:linear-gradient(90deg, #000A71, #0F21D7 25%, #031E8E 50%, #000A71);
  --squircle:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20200%20240'%3E%3Cpath%20d='M24,0%20H176%20Q200,0%20200,24%20V120%20Q200,200%20100,240%20Q0,200%200,120%20V24%20Q0,0%2024,0%20Z'/%3E%3C/svg%3E");
  --wrap:1200px;
}

*{box-sizing:border-box;}
html,body{margin:0;overflow-x:hidden;}
body{font-family:'GeneralSans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--white);font-weight:400;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:oklch(40% 0.09 250);text-decoration:none;}
a:hover{color:#0632aa;}
::selection{background:oklch(70% 0.15 258 / 0.3);}
h1,h2,h3{margin:0;letter-spacing:-0.01em;}
button{font-family:inherit;}

/* ---------- Bausteine ---------- */
.sdp-center{text-align:center;}
.sdp-h1{font-size:52px;line-height:1.08;font-weight:700;letter-spacing:-0.02em;}
.sdp-h2{font-size:32px;font-weight:700;line-height:1.25;}
.sdp-h2--sm{font-size:28px;}
.sdp-h3{font-size:26px;font-weight:700;}
.sdp-lead{font-size:17px;line-height:1.6;color:var(--muted);}

/* Gradient-Wort + welliger Unterstrich */
.sdp-grad{position:relative;display:inline-block;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.sdp-grad__line{position:absolute;left:0;bottom:-10px;width:100%;height:12px;}
.sdp-grad--plain{}

/* Buttons – nur Füllung, keine Rahmen, keine Schatten */
.sdp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;cursor:pointer;font-weight:600;border-radius:100px;padding:13px 24px;font-size:14.5px;line-height:1;transition:filter .15s ease,background .2s ease;white-space:nowrap;text-align:center;}
.sdp-btn--grad{background:var(--grad-btn);color:var(--cream);}
.sdp-btn--grad:hover{filter:brightness(1.06);color:var(--cream);}
.sdp-btn--dark{background:var(--navy);color:var(--cream);padding:15px 28px;font-size:15px;}
.sdp-btn--dark:hover{filter:brightness(1.15);color:var(--cream);}
.sdp-btn--light{background:var(--cream);color:oklch(35% 0.16 262);}
.sdp-btn--light:hover{filter:brightness(0.97);}
.sdp-btn--sm{padding:11px 18px;font-size:13.5px;}
.sdp-btn--lg{padding:15px 30px;font-size:16px;}
.sdp-btn--xl{padding:18px 40px;font-size:17px;}
.sdp-btn--block{display:flex;width:100%;}

/* Squircle-Bildmaske */
.sdp-squircle{display:block;background-size:cover;background-position:center;-webkit-mask-image:var(--squircle);mask-image:var(--squircle);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;}
.sdp-card-bg{position:absolute;inset:0;border-radius:28px;z-index:0;}
.sdp-card-bg--accent{background:var(--accent);}
.sdp-card-bg--panel{background:var(--panel-dk);border-radius:24px;}

/* Feature-Icons: 3D-Icon ohne Hintergrund, groß */
.sdp-fic{display:flex;align-items:center;justify-content:flex-start;flex:none;}
.sdp-fic img,.sdp-ic{display:block;}
.sdp-fic--why{margin-bottom:16px;}
.sdp-fic--why img{width:72px;height:72px;}
.sdp-fic--cov img{width:60px;height:60px;}

/* Checklisten */
.sdp-checklist{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-direction:column;gap:10px;}
.sdp-checklist li{display:flex;gap:10px;font-size:15px;align-items:flex-start;}
.sdp-checklist li svg{flex:none;margin-top:3px;}
.sdp-checklist--lg li{font-size:16px;align-items:center;}
.sdp-checklist--lg li svg{margin-top:0;}

/* ---------- Topbar ---------- */
.sdp-topbar{background:var(--navy);color:oklch(96% 0.015 60);display:flex;justify-content:center;gap:48px;padding:10px 24px;font-size:14px;font-weight:500;flex-wrap:wrap;}
.sdp-topbar__item{display:inline-flex;align-items:center;gap:6px;}

/* ---------- Header ---------- */
.sdp-header{display:flex;align-items:center;justify-content:space-between;padding:18px 56px;background:var(--white);position:relative;z-index:50;}
.sdp-brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:22px;letter-spacing:-0.02em;color:var(--ink);}
.sdp-brand:hover{color:var(--ink);}
.sdp-nav{display:flex;gap:6px;align-items:center;font-size:15px;font-weight:500;}
.sdp-nav__item{position:relative;}
.sdp-nav__link{cursor:pointer;padding:12px 16px;border-radius:100px;display:inline-flex;align-items:center;gap:6px;color:var(--ink);}
.sdp-nav__link--plain:hover{color:var(--ink);opacity:.7;}
.sdp-chev{transition:transform .2s ease;color:oklch(35% 0.03 260);}
.sdp-has-mega:hover .sdp-chev{transform:rotate(180deg);}

/* Mega-Menü */
.sdp-mega{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(6px);margin-top:10px;background:var(--white);border-radius:28px;padding:40px;z-index:60;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease;}
.sdp-has-mega:hover .sdp-mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);}
.sdp-mega--vers{display:grid;grid-template-columns:repeat(3,240px) 250px;gap:14px;}
.sdp-mega__card{display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:20px;color:var(--ink);background:oklch(97% 0.012 258);transition:background .15s;}
.sdp-mega__card:hover{background:oklch(94% 0.025 258);color:var(--ink);}
.sdp-mega__ic{display:flex;align-items:center;justify-content:flex-start;flex:none;}
.sdp-mega__ic img{width:54px;height:54px;display:block;}
.sdp-mega__title{display:block;font-weight:700;font-size:16px;margin-bottom:6px;}
.sdp-mega__lead{display:block;font-size:13.5px;line-height:1.55;color:var(--muted2);}
.sdp-mega__more{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:13px;color:oklch(35% 0.1 250);margin-top:auto;}
.sdp-mega__promo{background:var(--grad-btn);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:14px;}
.sdp-mega__promo-ic{display:flex;align-items:center;justify-content:flex-start;}
.sdp-mega__promo-ic img{width:60px;height:60px;display:block;}
.sdp-mega__promo-title{font-weight:700;font-size:16px;color:var(--cream);line-height:1.3;}
.sdp-mega__promo-text{font-size:13px;line-height:1.55;color:oklch(93% 0.02 258);}
/* Ratgeber-Mega, umfangreich – rechtsbündig, damit es nie über den Rand läuft */
.sdp-mega--rat{display:block;width:940px;max-width:min(940px,94vw);left:auto;right:0;transform:translateY(6px);}
.sdp-has-mega:hover .sdp-mega--rat{transform:translateY(0);}
.sdp-mega__ratgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.sdp-mega__grouphead{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.sdp-mega__gic{display:flex;align-items:center;justify-content:center;flex:none;}
.sdp-mega__gic img{width:38px;height:38px;display:block;}
.sdp-mega__gtitle{font-weight:700;font-size:12.5px;color:var(--muted2);letter-spacing:0.04em;}
.sdp-mega__gtitle--plain{margin-bottom:16px;}
.sdp-mega__links{display:flex;flex-direction:column;gap:8px;}
.sdp-mega__link{display:flex;flex-direction:column;gap:2px;color:var(--ink);background:oklch(97% 0.012 258);border-radius:12px;padding:11px 14px;transition:background .15s;}
.sdp-mega__link:hover{color:var(--ink);background:oklch(94% 0.025 258);}
.sdp-mega__link-t{font-size:13.5px;font-weight:600;}
.sdp-mega__link-s{font-size:11.5px;color:var(--muted2);}
.sdp-mega__ratfeatured{margin-top:22px;padding-top:22px;border-top:1px solid oklch(91% 0.012 258);}
.sdp-mega__posts--row{display:grid;grid-template-columns:repeat(3,1fr) 210px;gap:16px;align-items:stretch;}
.sdp-mega__post{display:flex;gap:14px;align-items:center;color:inherit;}
.sdp-mega__post:hover{color:inherit;}
.sdp-mega__post--card{flex-direction:column;align-items:flex-start;gap:8px;background:oklch(97% 0.012 258);padding:12px;border-radius:16px;transition:background .15s;}
.sdp-mega__post--card:hover{background:oklch(94% 0.025 258);}
.sdp-mega__post-cat{font-size:11px;font-weight:700;color:var(--accent);letter-spacing:0.03em;}
.sdp-mega__post-title{font-size:13.5px;line-height:1.4;font-weight:600;}
.sdp-squircle--postimg{width:100%;height:104px;}
.sdp-mega__ratcta{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;background:var(--grad-btn);color:var(--cream);border-radius:16px;padding:18px;font-weight:700;font-size:14.5px;line-height:1.3;}
.sdp-mega__ratcta:hover{color:var(--cream);filter:brightness(1.05);}

/* Burger (mobil) */
.sdp-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:70;}
.sdp-burger span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s;}
.sdp-nav-open .sdp-burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.sdp-nav-open .sdp-burger span:nth-child(2){opacity:0;}
.sdp-nav-open .sdp-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ---------- Layout-Wraps ---------- */
.sdp-hero,.sdp-products,.sdp-split,.sdp-why,.sdp-coverage,.sdp-faq,.sdp-receipt,.sdp-steps{max-width:var(--wrap);margin:0 auto;}
.sdp-hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;padding:80px 56px 64px;max-width:1280px;}
.sdp-hero__sub{font-size:19px;line-height:1.6;color:var(--muted);margin:0 0 32px;max-width:520px;}
.sdp-h1{margin:0 0 24px;}
.sdp-hero__form{display:inline-flex;align-items:center;background:var(--cream);border-radius:100px;padding:6px;margin:8px 0 20px;max-width:460px;width:100%;}
.sdp-hero__form input{border:none;outline:none;background:transparent;padding:12px 18px;font-family:inherit;font-size:15px;color:var(--ink);flex:1;min-width:0;}
.sdp-hero__trust{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.sdp-hero__trust-label{font-size:11px;font-weight:600;color:var(--muted2);letter-spacing:0.02em;}
.sdp-avatars{display:flex;}
.sdp-avatars span{width:30px;height:30px;border-radius:50%;background:var(--panel);outline:2px solid var(--cream2);}
.sdp-avatars span+span{margin-left:-13px;}
.sdp-avatars__more{display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:var(--muted2);}
.sdp-hero__media{position:relative;}
.sdp-squircle--hero{width:100%;height:420px;position:relative;z-index:1;}

/* USPs */
.sdp-usps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:1200px;margin:0 auto;padding:48px 56px 80px;}
.sdp-usp{text-align:center;}
.sdp-usp__title{font-weight:700;font-size:18px;margin-bottom:8px;}
.sdp-usp__text{color:oklch(40% 0.02 260);font-size:15px;line-height:1.5;}

/* Produkte */
.sdp-products{padding:24px 56px 96px;}
.sdp-products .sdp-lead{max-width:640px;margin:0 auto 48px;}
.sdp-products__grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.sdp-products__left{min-height:420px;display:flex;flex-direction:column;}
.sdp-tabs{display:inline-flex;gap:2px;background:var(--panel);border-radius:100px;padding:5px;margin-bottom:28px;align-self:flex-start;}
.sdp-tab{position:relative;overflow:hidden;background:transparent;color:oklch(50% 0.03 260);padding:10px 18px;border-radius:100px;font-weight:600;cursor:pointer;border:none;font-size:14px;}
.sdp-tab.is-active{background:oklch(97% 0.015 258);color:var(--navy);font-weight:700;}
.sdp-tab__label{position:relative;z-index:1;}
.sdp-tab__bar{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:100px;background:radial-gradient(circle at 0% 0%, oklch(99% 0.005 60) 0%, oklch(97% 0.01 258) 60%, oklch(94% 0.02 258) 100%);z-index:0;}
.sdp-tab.is-active .sdp-tab__bar{animation:sdpTabProgress 4s linear forwards;}
@keyframes sdpTabProgress{from{width:0;}to{width:100%;}}
.sdp-tabpanel{display:none;}
.sdp-tabpanel.is-active{display:block;}
.sdp-tabpanel .sdp-h3{margin:0 0 14px;}
.sdp-tabpanel__lead{font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 22px;}
.sdp-products__media{position:relative;}
.sdp-squircle--tab{width:100%;height:420px;position:relative;z-index:1;display:none;}
.sdp-squircle--tab.is-active{display:block;}

/* Split-Sektionen */
.sdp-split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:24px 56px 96px;}
.sdp-split--flush{padding:0;}
.sdp-split__media{position:relative;}
.sdp-squircle--md{width:100%;height:380px;position:relative;z-index:1;}
.sdp-squircle--sm{width:100%;height:340px;position:relative;z-index:1;}
.sdp-split__text .sdp-lead{margin:0 0 24px;}
#warum{gap:64px;}
.sdp-service{max-width:1100px;margin:0 auto;padding:24px 56px 96px;display:flex;flex-direction:column;gap:96px;}
.sdp-badge247{position:absolute;left:-16px;bottom:-16px;background:var(--cream);border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:12px;z-index:2;}
.sdp-badge247__ic{width:38px;height:38px;border-radius:50%;background:oklch(60% 0.14 145);display:flex;align-items:center;justify-content:center;flex:none;}
.sdp-badge247__t{display:block;font-weight:700;font-size:14px;}
.sdp-badge247__s{display:block;font-size:12.5px;color:var(--muted2);}

/* Pfote drauf */
.sdp-why{padding:24px 56px 96px;text-align:center;max-width:1020px;}
.sdp-why .sdp-h2{margin:0 0 48px;}
.sdp-why__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;text-align:left;}
.sdp-why__card{background:var(--panel);border-radius:20px;padding:28px 30px;}
.sdp-why__title{font-size:18px;font-weight:700;margin:0 0 8px;}
.sdp-why__text{font-size:15px;line-height:1.6;color:var(--muted);margin:0;}

/* Rechnung */
.sdp-receipt{padding:88px 56px;background:var(--panel);text-align:center;max-width:none;position:relative;overflow:hidden;}
.sdp-receipt .sdp-lead{max-width:520px;margin:0 auto;}
.sdp-receipt__row{position:relative;max-width:980px;margin:48px auto 0;display:flex;align-items:center;justify-content:center;}
.sdp-receipt__dog{width:220px;height:260px;flex:none;z-index:0;opacity:.9;}
.sdp-receipt__dog--l{margin-right:-56px;transform:rotate(-4deg);}
.sdp-receipt__dog--r{margin-left:-56px;transform:rotate(4deg);}
.sdp-receipt__card{background:var(--white2);padding:36px 32px 30px;width:360px;flex:none;position:relative;z-index:1;text-align:left;clip-path:polygon(10px 0, 350px 0, 100% 10px, 100% calc(100% - 10px), 360px calc(100% - 10px), 342px 100%, 324px calc(100% - 10px), 306px 100%, 288px calc(100% - 10px), 270px 100%, 252px calc(100% - 10px), 234px 100%, 216px calc(100% - 10px), 198px 100%, 180px calc(100% - 10px), 162px 100%, 144px calc(100% - 10px), 126px 100%, 108px calc(100% - 10px), 90px 100%, 72px calc(100% - 10px), 54px 100%, 36px calc(100% - 10px), 18px 100%, 0px calc(100% - 10px), 0 10px);}
.sdp-receipt__title{font-size:20px;font-weight:700;margin:0 0 20px;text-align:center;}
.sdp-receipt__lines{display:flex;flex-direction:column;gap:10px;}
.sdp-receipt__line{display:flex;justify-content:space-between;border-radius:100px;padding:12px 18px;font-weight:700;font-size:13px;letter-spacing:0.02em;}
.sdp-receipt__line--row{background:var(--panel);}
.sdp-receipt__line--dark{background:var(--navy);color:var(--cream);}
.sdp-receipt__line--accent{background:oklch(70% 0.15 258 / 0.35);}

/* Leistungen Grid */
.sdp-coverage{padding:24px 56px 96px;text-align:center;max-width:1100px;}
.sdp-coverage .sdp-lead{max-width:600px;margin:0 auto 44px;}
.sdp-coverage__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:left;}
.sdp-cov{background:var(--panel);border-radius:18px;padding:22px 24px;display:flex;gap:18px;align-items:center;}
.sdp-cov__title{font-size:15.5px;font-weight:700;margin:0 0 4px;}
.sdp-cov__text{font-size:13.5px;line-height:1.5;color:oklch(40% 0.02 260);margin:0;}

/* Reveal-Utility (Scroll-Animation) */
.sdp-reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);}
.sdp-reveal.is-in{opacity:1;transform:none;}

/* Schritte – animierte Timeline mit zentraler gestrichelter Spine */
.sdp-steps{padding:80px 56px 110px;max-width:1000px;margin:0 auto;position:relative;}
.sdp-steps .sdp-h2{margin:0 0 72px;}
.sdp-timeline{position:relative;padding:10px 0;}
.sdp-timeline__spine{position:absolute;left:50%;top:0;bottom:0;transform:translateX(-50%);border-left:2px dashed oklch(72% 0.04 258 / 0.6);}
.sdp-timeline__progress{position:absolute;left:50%;top:0;height:0;transform:translateX(-50%);border-left:2px dashed var(--accent);z-index:2;will-change:height;}
.sdp-timeline__paw{position:absolute;left:-15px;bottom:-16px;width:32px;height:32px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;}
.sdp-timeline__paw svg{transform:rotate(0deg);}
.sdp-tl-step{position:relative;min-height:200px;display:flex;align-items:center;}
.sdp-tl-step + .sdp-tl-step{margin-top:88px;}
.sdp-tl-step--left.sdp-reveal{transform:translateX(-44px);}
.sdp-tl-step--right.sdp-reveal{transform:translateX(44px);}
.sdp-tl-step.is-in{transform:none;}
.sdp-tl-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:15px;background:var(--accent);color:#fff;font-weight:700;font-style:italic;font-size:20px;display:flex;align-items:center;justify-content:center;z-index:3;}
.sdp-tl-card{position:absolute;top:50%;transform:translateY(-50%);width:410px;max-width:calc(50% - 48px);background:var(--panel);border-radius:20px;padding:28px 30px;box-sizing:border-box;}
.sdp-tl-step--left .sdp-tl-card{right:calc(50% + 48px);}
.sdp-tl-step--right .sdp-tl-card{left:calc(50% + 48px);}
.sdp-tl-step--left .sdp-tl-card::after{content:"";position:absolute;top:50%;left:100%;width:48px;border-top:2px dashed oklch(72% 0.04 258 / 0.6);}
.sdp-tl-step--right .sdp-tl-card::before{content:"";position:absolute;top:50%;right:100%;width:48px;border-top:2px dashed oklch(72% 0.04 258 / 0.6);}
.sdp-tl-card__title{font-size:19px;font-weight:700;margin:0 0 10px;}
.sdp-tl-card__text{font-size:14.5px;line-height:1.6;color:var(--muted);margin:0;}

/* Karussell */
.sdp-carousel-sec{max-width:1280px;margin:0 auto;padding:24px 0 96px;overflow:hidden;}
.sdp-carousel-sec__h{margin:0 0 12px;padding:0 56px;}
.sdp-carousel-sec__sub{margin:0 0 32px;padding:0 56px;}
.sdp-carousel{display:flex;gap:18px;overflow-x:auto;padding:0 0 8px;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;}
.sdp-carousel::-webkit-scrollbar{display:none;}
.sdp-cc{background:var(--panel);border-radius:24px;padding:30px 30px 26px;min-width:320px;width:320px;height:270px;flex:none;position:relative;overflow:hidden;transition:background-image .2s;}
.sdp-cc:first-child{margin-left:56px;}
.sdp-cc:last-child{margin-right:56px;}
.sdp-cc:hover{background-image:radial-gradient(circle at 100% 100%, oklch(80% 0.08 258 / 0.5) 0%, transparent 60%);}
.sdp-cc__title{font-size:20px;font-weight:700;margin:0 0 10px;position:relative;z-index:1;}
.sdp-cc__text{font-size:14.5px;line-height:1.55;color:oklch(40% 0.02 260);margin:0;position:relative;z-index:1;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;}
.sdp-cc__text--short{-webkit-line-clamp:3;}
.sdp-cc__text--long{-webkit-line-clamp:5;display:none;}
.sdp-cc.is-open .sdp-cc__text--short{display:none;}
.sdp-cc.is-open .sdp-cc__text--long{display:-webkit-box;}
.sdp-cc__ic{display:flex;align-items:center;justify-content:center;position:absolute;left:28px;bottom:24px;transition:opacity .25s ease;}
.sdp-cc__ic img{width:72px;height:72px;display:block;}
.sdp-cc.is-open .sdp-cc__ic{opacity:0;}
.sdp-cc__toggle{width:34px;height:34px;border-radius:50%;background:var(--white2);border:none;cursor:pointer;position:absolute;right:24px;bottom:24px;display:flex;align-items:center;justify-content:center;z-index:2;}
.sdp-cc__toggle svg{transition:transform .25s ease;}
.sdp-cc.is-open .sdp-cc__toggle svg{transform:rotate(45deg);}
.sdp-carousel__nav{display:flex;justify-content:flex-end;gap:10px;padding:16px 56px 0;}
.sdp-carousel__btn{width:38px;height:38px;border-radius:50%;background:var(--panel);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.sdp-carousel__btn:hover{filter:brightness(0.96);}

/* FAQ */
.sdp-faq{padding:96px 56px;}
.sdp-faq .sdp-lead{color:var(--muted2);margin:0 0 40px;}
.sdp-faq .sdp-h2{margin:0 0 8px;}
.sdp-faq__grid{display:grid;grid-template-columns:280px 1fr;gap:40px;align-items:start;}
.sdp-faq__aside{position:sticky;top:24px;background:linear-gradient(160deg, oklch(97% 0.015 258) 0%, oklch(93% 0.035 258) 100%);color:var(--ink);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:14px;}
.sdp-faq__aside-title{font-weight:700;font-size:18px;}
.sdp-faq__aside-text{font-size:14px;line-height:1.6;color:var(--muted2);margin:0;}
.sdp-faq__contact{color:var(--ink);font-weight:600;font-size:14px;}
.sdp-faq__cats{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap;}
.sdp-faq__cat{background:var(--panel);color:var(--navy);padding:10px 20px;border-radius:100px;font-weight:500;cursor:pointer;border:none;font-size:14px;}
.sdp-faq__cat.is-active{background:var(--navy);color:var(--cream);font-weight:600;}
.sdp-faq__list{display:flex;flex-direction:column;gap:12px;}
.sdp-faq__item{background:var(--white2);border-radius:18px;padding:22px 26px;cursor:pointer;}
.sdp-faq__item[hidden]{display:none;}
.sdp-faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:none;border:none;cursor:pointer;padding:0;text-align:left;font-family:inherit;font-weight:600;font-size:16px;color:var(--ink);}
.sdp-faq__chev{flex:none;transition:transform .2s;}
.sdp-faq__item.is-open .sdp-faq__chev{transform:rotate(180deg);}
.sdp-faq__a{font-size:15px;line-height:1.6;color:var(--muted);display:none;padding-top:14px;}
.sdp-faq__a p{margin:0;}
.sdp-faq__item.is-open .sdp-faq__a{display:block;}

/* CTA */
.sdp-cta{padding:24px 56px 0;position:relative;z-index:2;margin-bottom:-160px;}
.sdp-cta__box{max-width:1200px;margin:0 auto;background:radial-gradient(120% 140% at 15% 15%, oklch(62% 0.19 258) 0%, oklch(35% 0.16 262) 70%, oklch(25% 0.14 264) 100%);border-radius:32px;padding:72px 56px;text-align:center;}
.sdp-cta__h{font-size:34px;font-weight:700;color:var(--cream);margin:0 0 16px;}
.sdp-cta__sub{font-size:18px;color:oklch(88% 0.02 258);margin:0 0 32px;}

/* Footer */
.sdp-footer{background:linear-gradient(180deg, oklch(98% 0.008 60) 0%, oklch(96% 0.015 60) 30%, oklch(90% 0.03 250) 100%);color:var(--ink);padding:220px 56px 0;position:relative;z-index:1;}
.sdp-footer__inner{max-width:1200px;margin:0 auto;}
.sdp-footer__brand{display:flex;align-items:center;gap:10px;padding-bottom:32px;flex-wrap:wrap;}
.sdp-footer__name{font-weight:700;font-size:19px;}
.sdp-footer__claim{font-weight:500;font-size:16px;color:var(--muted2);}
.sdp-footer__rule{height:1px;background:oklch(25% 0.04 260 / 0.1);margin-bottom:36px;}
.sdp-footer__cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;padding-bottom:44px;}
.sdp-footer__head{font-weight:700;font-size:13.5px;margin-bottom:16px;}
.sdp-footer__links{display:flex;flex-direction:column;gap:12px;}
.sdp-footer__links a{color:var(--muted);font-size:14px;}
.sdp-footer__links a:hover{color:var(--accent);}
.sdp-footer__social{display:flex;justify-content:flex-end;gap:12px;padding-bottom:40px;}
.sdp-footer__social a{width:38px;height:38px;border-radius:50%;background:var(--white2);display:flex;align-items:center;justify-content:center;}
.sdp-footer__legal{display:flex;justify-content:space-between;align-items:center;padding-bottom:32px;flex-wrap:wrap;gap:12px;}
.sdp-footer__legal-links{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;}
.sdp-footer__legal-links a,.sdp-footer__copy{color:var(--muted2);font-size:13px;}

/* Generische Seiten (Impressum etc.) */
.sdp-page{max-width:820px;margin:0 auto;padding:64px 56px 120px;}
.sdp-h1--page{font-size:38px;margin:0 0 24px;}
.sdp-prose{font-size:16px;line-height:1.7;color:var(--muted);}
.sdp-prose h2{font-size:24px;margin:32px 0 12px;color:var(--ink);}
.sdp-prose a{color:var(--accent);}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1024px){
  .sdp-hero{grid-template-columns:1fr;gap:40px;padding:56px 32px 48px;}
  .sdp-hero__media{order:-1;}
  .sdp-h1{font-size:42px;}
  .sdp-products__grid,.sdp-split,#warum{grid-template-columns:1fr;gap:40px;}
  .sdp-split--rev .sdp-split__text{order:2;}
  .sdp-usps,.sdp-products,.sdp-coverage,.sdp-faq,.sdp-service{padding-left:32px;padding-right:32px;}
  .sdp-carousel-sec__h,.sdp-carousel-sec__sub,.sdp-carousel__nav{padding-left:32px;padding-right:32px;}
  .sdp-cc:first-child{margin-left:32px;}
  .sdp-cc:last-child{margin-right:32px;}
}
@media (max-width:980px){
  .sdp-nav{position:fixed;inset:0 0 0 auto;width:min(320px,86vw);background:var(--white);flex-direction:column;align-items:stretch;justify-content:flex-start;gap:6px;padding:90px 24px 24px;transform:translateX(100%);transition:transform .25s ease;z-index:60;overflow-y:auto;}
  .sdp-nav-open .sdp-nav{transform:translateX(0);}
  .sdp-burger{display:flex;}
  .sdp-nav__link{width:100%;}
  .sdp-mega{display:none !important;}
  .sdp-nav .sdp-btn{width:100%;margin-top:8px;}
  .sdp-nav-backdrop{position:fixed;inset:0;background:rgba(20,25,40,.4);z-index:55;opacity:0;visibility:hidden;transition:opacity .2s;}
  .sdp-nav-open .sdp-nav-backdrop{opacity:1;visibility:visible;}
}
@media (max-width:768px){
  .sdp-header{padding:16px 20px;}
  .sdp-topbar{gap:14px 22px;font-size:12.5px;padding:9px 16px;}
  .sdp-usps{grid-template-columns:1fr;gap:24px;}
  .sdp-why__grid{grid-template-columns:1fr;}
  .sdp-why__card{transform:none !important;}
  .sdp-coverage__grid{grid-template-columns:1fr 1fr;}
  .sdp-h1{font-size:34px;}
  .sdp-h2{font-size:26px;}
  .sdp-h3{font-size:22px;}
  .sdp-hero,.sdp-usps,.sdp-products,.sdp-coverage,.sdp-faq,.sdp-service,.sdp-steps{padding-left:20px;padding-right:20px;}
  .sdp-split{padding-left:20px;padding-right:20px;}
  .sdp-carousel-sec__h,.sdp-carousel-sec__sub,.sdp-carousel__nav{padding-left:20px;padding-right:20px;}
  .sdp-cc:first-child{margin-left:20px;}
  .sdp-cc:last-child{margin-right:20px;}
  .sdp-receipt{padding:64px 20px;}
  .sdp-receipt__dog{display:none;}
  .sdp-receipt__card{width:100%;max-width:400px;}
  .sdp-cta{padding:24px 20px 0;}
  .sdp-cta__box{padding:48px 28px;}
  .sdp-footer{padding:200px 20px 0;}
  .sdp-footer__cols{grid-template-columns:1fr;gap:28px;}
  .sdp-faq__grid{grid-template-columns:1fr;gap:24px;}
  .sdp-faq__aside{position:static;}
  /* Timeline: linksbündige Spine, Karten rechts daneben */
  .sdp-steps{padding:56px 20px 80px;}
  .sdp-steps .sdp-h2{margin:0 0 40px;}
  .sdp-timeline__spine,.sdp-timeline__progress{left:21px;}
  .sdp-tl-step{min-height:auto;display:block;}
  .sdp-tl-step + .sdp-tl-step{margin-top:40px;}
  .sdp-tl-node{left:21px;top:26px;transform:translate(-50%,0);width:42px;height:42px;font-size:17px;}
  .sdp-tl-card{position:static;transform:none;width:auto;max-width:none;margin-left:54px;}
  .sdp-tl-step--left .sdp-tl-card::after,.sdp-tl-step--right .sdp-tl-card::before{content:none;}
  .sdp-tl-step--left.sdp-reveal,.sdp-tl-step--right.sdp-reveal{transform:translateY(28px);}
  .sdp-page{padding:48px 20px 80px;}
}
@media (max-width:520px){
  .sdp-coverage__grid{grid-template-columns:1fr;}
  .sdp-h1{font-size:30px;}
  .sdp-hero__form{flex-direction:column;background:transparent;padding:0;gap:10px;}
  .sdp-hero__form input{background:var(--cream);border-radius:100px;width:100%;}
  .sdp-hero__form .sdp-btn{width:100%;}
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;transition-duration:.001ms !important;}
  .sdp-reveal,.sdp-tl-step{opacity:1 !important;transform:none !important;}
}
