.rp-page{
  --rp-bg:#f4f1ea;
  --rp-card:#ffffff;
  --rp-card-soft:rgba(255,255,255,.76);
  --rp-dark:#09111f;
  --rp-dark-2:#132035;
  --rp-text:#0f172a;
  --rp-muted:#667085;
  --rp-line:rgba(15,23,42,.09);
  --rp-accent:#d9f255;
  --rp-accent-2:#b7de22;
  --rp-white:rgba(255,255,255,.92);
  --rp-shadow-xl:0 42px 110px rgba(15,23,42,.16);
  --rp-shadow-lg:0 24px 60px rgba(15,23,42,.10);
  --rp-shadow-md:0 16px 32px rgba(15,23,42,.07);
  --rp-radius-3xl:42px;
  --rp-radius-2xl:32px;
  --rp-radius-xl:26px;
  --rp-radius-lg:20px;
  background:
    radial-gradient(circle at 10% 0%, rgba(217,242,85,.14), transparent 18%),
    radial-gradient(circle at 100% 12%, rgba(59,130,246,.07), transparent 20%),
    radial-gradient(circle at 82% 80%, rgba(14,165,233,.06), transparent 18%),
    var(--rp-bg);
  color:var(--rp-text);
}

.rp-page .rp-container{
  max-width:1280px;
  margin:0 auto;
  padding-left:20px;
  padding-right:20px;
}

.rp-page .rp-hero{
  position:relative;
  overflow:hidden;
  padding:122px 0 92px;
  background:
    radial-gradient(circle at 84% 18%, rgba(217,242,85,.15), transparent 24%),
    radial-gradient(circle at 18% 78%, rgba(96,165,250,.08), transparent 22%),
    linear-gradient(180deg, #09111f 0%, #101b2d 100%);
  color:#fff;
  isolation:isolate;
}

.rp-page .rp-hero::before,
.rp-page .rp-hero::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  z-index:-1;
}

.rp-page .rp-hero::before{
  width:520px;
  height:520px;
  right:-120px;
  bottom:-200px;
  background:radial-gradient(circle, rgba(217,242,85,.16), rgba(217,242,85,.02) 58%, transparent 72%);
}

.rp-page .rp-hero::after{
  width:340px;
  height:340px;
  left:-100px;
  top:80px;
  background:radial-gradient(circle, rgba(59,130,246,.12), rgba(59,130,246,.02) 58%, transparent 72%);
}

.rp-page .rp-hero-grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:34px;
  align-items:end;
}

.rp-page .rp-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(12px);
  font-weight:700;
  margin-bottom:22px;
  color:#fff;
}

.rp-page .rp-hero-title{
  font-size:clamp(2.8rem,5.5vw,6.4rem);
  line-height:.92;
  letter-spacing:-.06em;
  margin-bottom:22px;
  max-width:920px;
  color:#fff;
}

.rp-page .rp-hero-title span{
  color:var(--rp-accent);
}

.rp-page .rp-hero-copy{
  color:rgba(255,255,255,.82);
  max-width:760px;
  font-size:1.08rem;
  line-height:1.78;
  margin-bottom:28px;
}

.rp-page .rp-hero-chips{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.rp-page .rp-hero-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-weight:600;
}

.rp-page .rp-hero-panel{
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.12);
  border-radius:34px;
  padding:28px;
  backdrop-filter:blur(18px);
  box-shadow:0 24px 60px rgba(0,0,0,.16);
}

.rp-page .rp-hero-panel-top{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  margin-bottom:18px;
}

.rp-page .rp-mini-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  font-size:.9rem;
  font-weight:700;
}

.rp-page .rp-score strong{
  display:block;
  font-size:2.7rem;
  line-height:1;
  color:#fff;
  letter-spacing:-.04em;
  text-align:right;
}

.rp-page .rp-score span{
  display:block;
  color:rgba(255,255,255,.62);
  font-size:.9rem;
  text-align:right;
}

.rp-page .rp-hero-panel h3{
  color:#fff;
  margin-bottom:12px;
  letter-spacing:-.03em;
}

.rp-page .rp-hero-panel p{
  margin:0;
  color:rgba(255,255,255,.78);
  line-height:1.72;
}

.rp-page .rp-hero-list{
  display:grid;
  gap:10px;
  margin-top:18px;
}

.rp-page .rp-hero-list span{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
  font-weight:600;
  opacity:.92;
}

.rp-page .rp-main{
  margin-top:-48px;
  padding-bottom:92px;
  position:relative;
  z-index:3;
}

.rp-page .rp-shell{
  background:var(--rp-card-soft);
  backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.46);
  border-radius:46px;
  box-shadow:var(--rp-shadow-xl);
  padding:26px;
}

.rp-page .rp-intro{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:20px;
  margin-bottom:24px;
}

.rp-page .rp-intro-card,
.rp-page .rp-stage-copy,
.rp-page .rp-bottom,
.rp-page .rp-sticky-cta{
  background:var(--rp-card);
  border:1px solid var(--rp-line);
  box-shadow:var(--rp-shadow-lg);
}

.rp-page .rp-intro-card{
  border-radius:34px;
  padding:30px;
}

.rp-page .rp-intro-card h2,
.rp-page .rp-intro-card h3{
  letter-spacing:-.035em;
  margin-bottom:12px;
}

.rp-page .rp-intro-card p{
  margin:0;
  color:var(--rp-muted);
  line-height:1.74;
}

.rp-page .rp-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:24px;
}

.rp-page .rp-tab{
  appearance:none;
  border:none;
  border-radius:999px;
  padding:14px 18px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.92);
  border:1.5px solid rgba(15,23,42,.10);
  color:var(--rp-text);
  font-weight:700;
  transition:all .22s ease;
  box-shadow:0 10px 22px rgba(15,23,42,.04);
}

.rp-page .rp-tab:hover,
.rp-page .rp-tab:focus-visible{
  background:rgba(14,23,39,.92);
  color:#fff;
  border-color:rgba(15,23,42,0);
  box-shadow:0 16px 28px rgba(15,23,42,.12);
  transform:translateY(-1px);
  outline:none;
}

.rp-page .rp-tab.is-active{
  background:linear-gradient(135deg, var(--rp-dark) 0%, var(--rp-dark-2) 100%);
  color:#fff;
  border-color:transparent;
  box-shadow:0 18px 34px rgba(15,23,42,.20);
}

.rp-page .rp-stage-top{
  display:grid;
  grid-template-columns:420px minmax(0,1fr);
  gap:22px;
  align-items:start;
  margin-bottom:22px;
}

.rp-page .rp-stage-video{
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
  align-self:start;
}

.rp-page .rp-stage-video-inner{
  position:sticky;
  top:110px;
  background:var(--rp-card);
  border:1px solid var(--rp-line);
  box-shadow:var(--rp-shadow-lg);
  border-radius:38px;
  padding:18px;
}

.rp-page .rp-stage-copy,
.rp-page .rp-bottom{
  border-radius:38px;
}

.rp-page .rp-video-frame{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  background:linear-gradient(135deg, #0d1728 0%, #1a2a44 100%);
  aspect-ratio:16/10;
  min-height:260px;
  max-height:320px;
  cursor:pointer;
  isolation:isolate;
}

.rp-page .rp-video-frame::before{
  content:"";
  position:absolute;
  inset:auto auto -20% -5%;
  width:240px;
  height:240px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(217,242,85,.16), transparent 66%);
  z-index:0;
}

.rp-page .rp-video-frame::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(11,20,35,.05) 0%, rgba(11,20,35,.46) 100%);
  z-index:2;
  pointer-events:none;
}

.rp-page .rp-video-frame video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  opacity:.96;
  transition:transform .36s ease, filter .36s ease;
  position:relative;
  z-index:1;
}

.rp-page .rp-video-frame:hover video{
  transform:scale(1.055);
  filter:saturate(1.08);
}

.rp-page .rp-video-label{
  position:absolute;
  top:18px;
  left:18px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  font-weight:700;
  backdrop-filter:blur(12px);
}

.rp-page .rp-video-play{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:98px;
  height:98px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:2.2rem;
  color:#fff;
  background:rgba(9,17,31,.70);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
  box-shadow:0 26px 54px rgba(0,0,0,.28);
  z-index:3;
  transition:transform .25s ease, background .25s ease;
}

.rp-page .rp-video-frame:hover .rp-video-play{
  transform:translate(-50%,-50%) scale(1.04);
  background:rgba(9,17,31,.82);
}

.rp-page .rp-video-meta{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding-top:16px;
  color:var(--rp-muted);
  font-size:.95rem;
}

.rp-page .rp-video-meta strong{
  display:block;
  color:var(--rp-text);
  margin-bottom:3px;
  letter-spacing:-.02em;
}

.rp-page .rp-video-sidefacts{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:18px;
}

.rp-page .rp-video-fact{
  background:linear-gradient(180deg, #faf9f5, #f7f4ed);
  border:1px solid rgba(15,23,42,.08);
  border-radius:22px;
  padding:16px 18px;
}

.rp-page .rp-video-fact small{
  display:block;
  font-size:.8rem;
  color:var(--rp-muted);
  margin-bottom:6px;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.rp-page .rp-video-fact strong{
  display:block;
  color:var(--rp-text);
  letter-spacing:-.02em;
  line-height:1.35;
}

.rp-page .rp-stage-copy{
  padding:34px;
  min-width:0;
}

.rp-page .rp-copy-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:16px;
}

.rp-page .rp-copy-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  font-size:.9rem;
  font-weight:700;
}

.rp-page .rp-copy-title{
  font-size:clamp(2.15rem,3.4vw,4.1rem);
  line-height:.95;
  letter-spacing:-.055em;
  margin-bottom:16px;
  max-width:690px;
}

.rp-page .rp-copy-lead{
  font-size:1.05rem;
  line-height:1.8;
  color:#1f2937;
  font-weight:600;
  margin-bottom:18px;
}

.rp-page .rp-copy-body p{
  color:var(--rp-muted);
  line-height:1.82;
  margin-bottom:14px;
}

.rp-page .rp-copy-body h3{
  margin-top:28px;
  margin-bottom:10px;
  letter-spacing:-.03em;
  font-size:1.32rem;
}

.rp-page .rp-seo-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:24px 0 22px;
}

.rp-page .rp-seo-card{
  background:linear-gradient(180deg, #faf9f5, #f7f4ed);
  border:1px solid rgba(15,23,42,.08);
  border-radius:26px;
  padding:18px;
}

.rp-page .rp-seo-card strong{
  display:block;
  margin-bottom:8px;
  letter-spacing:-.02em;
  font-size:1rem;
  color:var(--rp-text);
}

.rp-page .rp-seo-card p{
  margin:0;
  color:var(--rp-muted);
  line-height:1.64;
  font-size:.95rem;
}

.rp-page .rp-copy-list{
  padding-left:18px;
  margin:0;
  color:var(--rp-muted);
}

.rp-page .rp-copy-list li + li{
  margin-top:8px;
}

.rp-page .rp-copy-note{
  margin-top:22px;
  border-radius:24px;
  padding:18px 20px;
  background:linear-gradient(135deg, rgba(217,242,85,.18), rgba(217,242,85,.08));
  border:1px solid rgba(36,49,27,.12);
}

.rp-page .rp-copy-note strong{
  display:block;
  margin-bottom:8px;
  letter-spacing:-.02em;
}

.rp-page .rp-copy-note p{
  margin:0;
  color:#334155;
  line-height:1.66;
}

.rp-page .rp-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:24px;
}

.rp-page .rp-btn,
.rp-page .rp-btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border-radius:999px;
  padding:14px 22px;
  font-weight:700;
  text-decoration:none;
  transition:all .22s ease;
}

.rp-page .rp-btn{
  background:linear-gradient(135deg, var(--rp-dark) 0%, var(--rp-dark-2) 100%);
  color:#fff;
  border:1px solid transparent;
  box-shadow:0 16px 28px rgba(15,23,42,.16);
}

.rp-page .rp-btn:hover,
.rp-page .rp-btn:focus-visible{
  background:linear-gradient(135deg, #101a2b 0%, #20304a 100%);
  color:#fff;
  transform:translateY(-2px);
  outline:none;
}

.rp-page .rp-btn-secondary{
  background:transparent;
  color:var(--rp-text);
  border:1px solid rgba(15,23,42,.10);
}

.rp-page .rp-btn-secondary:hover,
.rp-page .rp-btn-secondary:focus-visible{
  background:rgba(15,23,42,.06);
  color:var(--rp-text);
  transform:translateY(-2px);
  outline:none;
}

.rp-page .rp-bottom{
  padding:30px;
  margin-bottom:22px;
}

.rp-page .rp-bottom-light{
  padding:0;
  margin-top:30px;
  margin-bottom:30px;
  box-shadow:none;
  border:none;
  background:transparent;
}

.rp-page .rp-bottom-head{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:24px;
  align-items:start;
  margin-bottom:18px;
}

.rp-page .rp-bottom-head h3{
  margin-bottom:10px;
  letter-spacing:-.035em;
}

.rp-page .rp-bottom-head p{
  color:var(--rp-muted);
  margin:0;
  line-height:1.74;
}

.rp-page .rp-next-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.rp-page .rp-next-link{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:220px;
  text-decoration:none;
  color:var(--rp-text);
  background:
    radial-gradient(circle at top right, rgba(217,242,85,.18), transparent 22%),
    linear-gradient(180deg, #ffffff 0%, #f8f6f1 100%);
  border:1px solid rgba(15,23,42,.08);
  border-radius:30px;
  padding:24px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
  box-shadow:0 14px 30px rgba(15,23,42,.05);
  overflow:hidden;
  cursor:pointer;
}

.rp-page .rp-next-link::before{
  content:"Ratgeber";
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  background:#0f172a;
  color:#fff;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.01em;
  margin-bottom:18px;
}

.rp-page .rp-next-link::after{
  content:"→";
  position:absolute;
  right:22px;
  top:20px;
  width:42px;
  height:42px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.06);
  color:#0f172a;
  font-size:1.15rem;
  font-weight:800;
  transition:transform .25s ease, background .25s ease, color .25s ease;
}

.rp-page .rp-next-link:hover,
.rp-page .rp-next-link:focus-visible{
  color:var(--rp-text);
  transform:translateY(-6px);
  border-color:rgba(15,23,42,.14);
  box-shadow:0 24px 44px rgba(15,23,42,.11);
  outline:none;
}

.rp-page .rp-next-link:hover::after,
.rp-page .rp-next-link:focus-visible::after{
  transform:translateX(4px);
  background:#0f172a;
  color:#fff;
}

.rp-page .rp-next-link strong{
  display:block;
  max-width:85%;
  margin-bottom:12px;
  letter-spacing:-.03em;
  font-size:1.55rem;
  line-height:1.12;
  color:#0f172a;
}

.rp-page .rp-next-link span{
  display:block;
  color:#667085;
  font-size:1.02rem;
  line-height:1.65;
}

.rp-page .rp-next-link .rp-next-link-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:22px;
  padding-top:16px;
  border-top:1px solid rgba(15,23,42,.08);
}

.rp-page .rp-next-link .rp-next-link-cta{
  font-size:.95rem;
  font-weight:700;
  color:#0f172a;
}

.rp-page .rp-sticky-cta{
  position:sticky;
  bottom:16px;
  z-index:30;
  border-radius:28px;
  padding:18px 20px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(14px);
}

.rp-page .rp-sticky-cta strong{
  display:block;
  letter-spacing:-.02em;
}

.rp-page .rp-sticky-cta span{
  color:var(--rp-muted);
  font-size:.95rem;
}

.rp-page .rp-modal{
  position:fixed;
  inset:0;
  background:rgba(9,14,24,.82);
  backdrop-filter:blur(12px);
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  z-index:1000;
}

.rp-page .rp-modal.is-open{
  display:flex;
}

.rp-page .rp-modal-dialog{
  position:relative;
  width:min(1140px, 100%);
  background:#0f172a;
  border-radius:30px;
  padding:14px;
  box-shadow:0 40px 90px rgba(0,0,0,.38);
}

.rp-page .rp-modal-close{
  position:absolute;
  right:14px;
  top:14px;
  width:44px;
  height:44px;
  border:none;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff;
  z-index:2;
}

.rp-page .rp-modal-video{
  width:100%;
  aspect-ratio:16/9;
  border-radius:22px;
  background:#000;
  display:block;
}

.rp-cost-box{
  background:linear-gradient(145deg, #0b132b, #111c44);
  border-radius:20px;
  padding:20px;
  margin-bottom:25px;
  color:white;
  box-shadow:0 20px 40px rgba(0,0,0,0.25);
  transition:all .3s ease;
}

.rp-cost-box:hover{
  transform:translateY(-4px);
}

.rp-cost-header{
  font-size:14px;
  opacity:0.7;
  margin-bottom:15px;
}

.rp-cost-content{
  display:flex;
  justify-content:space-between;
  gap:15px;
  margin-bottom:15px;
}

.rp-cost-item{
  flex:1;
}

.rp-cost-item small{
  display:block;
  font-size:12px;
  opacity:0.6;
  margin-bottom:5px;
}

.rp-cost-item strong{
  font-size:18px;
}

.rp-cost-item .green{
  color:#4ade80;
}

.rp-cost-item .red{
  color:#ff5c5c;
}

.rp-cost-btn{
  display:block;
  text-align:center;
  background:#3b82f6;
  color:white;
  padding:10px;
  border-radius:10px;
  text-decoration:none;
  font-weight:600;
  transition:all .3s ease;
}

.rp-cost-btn:hover{
  background:#2563eb;
  color:white;
  transform:scale(1.03);
}

.rp-content-seo{
  padding-top:10px;
}

.rp-seo-section-shell{
  background:#fff;
  border:1px solid rgba(15,23,42,0.08);
  border-radius:32px;
  padding:32px;
  box-shadow:0 18px 44px rgba(15,23,42,0.06);
}

.rp-seo-section-shell h2{
  font-size:clamp(2rem,4vw,4rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin-bottom:16px;
}

.rp-seo-section-shell h3{
  font-size:1.5rem;
  line-height:1.2;
  color:#0f172a;
  letter-spacing:-.03em;
  margin-top:28px;
  margin-bottom:12px;
}

.rp-seo-section-shell p,
.rp-seo-section-shell li{
  color:#667085;
  line-height:1.9;
  font-size:1.02rem;
}

.rp-seo-section-shell ul{
  padding-left:20px;
  margin-bottom:0;
}

.rp-highlight-box{
  margin-top:26px;
  margin-bottom:26px;
  background:linear-gradient(180deg,#0b1322,#111d31);
  border-radius:26px;
  padding:26px;
  box-shadow:0 24px 60px rgba(15,23,42,0.18);
}

.rp-highlight-box h4{
  color:#fff;
  font-size:1.5rem;
  margin-bottom:14px;
  letter-spacing:-.03em;
}

.rp-highlight-box ul{
  padding-left:20px;
  margin-bottom:14px;
}

.rp-highlight-box li{
  color:rgba(255,255,255,0.82);
}

.rp-highlight-box strong{
  color:#ff8f8f;
}

.rp-highlight-note{
  color:#c9ff72 !important;
  margin-bottom:0;
  font-weight:700;
}

.rp-cta-box{
  margin-top:26px;
  margin-bottom:26px;
  background:linear-gradient(180deg,#faf9f5,#f7f4ed);
  border:1px solid rgba(15,23,42,0.08);
  border-radius:26px;
  padding:24px;
}

.rp-cta-box h4{
  color:#0f172a;
  font-size:1.45rem;
  margin-bottom:10px;
  letter-spacing:-.03em;
}

.rp-cta-box p{
  margin-bottom:16px;
}

.rp-final-cta{
  margin-top:34px;
  background:linear-gradient(180deg,#0b1322,#111d31);
  border-radius:26px;
  padding:28px;
  box-shadow:0 24px 60px rgba(15,23,42,0.18);
}

.rp-final-cta h3{
  color:#fff;
  margin-top:0;
  margin-bottom:10px;
}

.rp-final-cta p{
  color:rgba(255,255,255,0.82);
  margin-bottom:16px;
}

@media (max-width:1199px){
  .rp-page .rp-hero-grid,
  .rp-page .rp-intro,
  .rp-page .rp-stage-top,
  .rp-page .rp-bottom-head{
    grid-template-columns:1fr;
  }

  .rp-page .rp-stage-video-inner{
    position:relative;
    top:auto;
  }

  .rp-page .rp-video-frame{
    aspect-ratio:16/9;
    min-height:auto;
    max-height:none;
  }
}

@media (max-width:991px){
  .rp-page .rp-next-grid{
    grid-template-columns:1fr;
  }

  .rp-page .rp-next-link{
    min-height:auto;
  }

  .rp-page .rp-next-link strong{
    max-width:100%;
    font-size:1.35rem;
  }
}

@media (max-width:767px){
  .rp-page .rp-shell{
    padding:16px;
    border-radius:30px;
  }

  .rp-page .rp-intro-card,
  .rp-page .rp-stage-copy,
  .rp-page .rp-bottom,
  .rp-page .rp-sticky-cta,
  .rp-page .rp-stage-video-inner{
    padding:22px;
  }

  .rp-page .rp-seo-grid{
    grid-template-columns:1fr;
  }

  .rp-page .rp-tabs{
    gap:10px;
  }

  .rp-page .rp-tab{
    padding:12px 14px;
    font-size:.95rem;
  }

  .rp-page .rp-video-play{
    width:72px;
    height:72px;
    font-size:1.7rem;
  }

  .rp-page .rp-sticky-cta{
    flex-direction:column;
    align-items:flex-start;
  }

  .rp-page .rp-seo-section-shell{
    padding:22px;
  }

  .rp-cost-content{
    flex-direction:column;
  }
}
.back-to-main{
  margin: 20px 0 10px;
}

.back-to-main a{
  color:#0f172a;
  text-decoration:none;
  font-weight:600;
  opacity:.7;
  transition:.2s;
}

.back-to-main a:hover{
  opacity:1;
}
.kosten-hero {
  padding: 120px 0;
  background: #0f172a;
}

.kosten-card {
  border-radius: 20px;
}
/* =========================
   ULTRA PREMIUM OVERRIDES
   direkt ganz unten einfügen
========================= */

/* sanftere globale Optik */
.rp-page{
  background:
    radial-gradient(circle at 10% 0%, rgba(217,242,85,.10), transparent 18%),
    radial-gradient(circle at 100% 12%, rgba(59,130,246,.05), transparent 20%),
    radial-gradient(circle at 82% 80%, rgba(14,165,233,.04), transparent 18%),
    #f5f3ee;
}

/* HERO: heller, kompakter, besser lesbar */
.rp-page .rp-hero{
  padding:92px 0 64px;
  background:
    radial-gradient(circle at 84% 18%, rgba(217,242,85,.10), transparent 24%),
    radial-gradient(circle at 18% 78%, rgba(96,165,250,.07), transparent 22%),
    linear-gradient(180deg, #0a1224 0%, #13213a 100%);
}

.rp-page .rp-hero::before{
  width:420px;
  height:420px;
  right:-100px;
  bottom:-150px;
  background:radial-gradient(circle, rgba(217,242,85,.12), rgba(217,242,85,.02) 58%, transparent 72%);
}

.rp-page .rp-hero::after{
  width:260px;
  height:260px;
  left:-60px;
  top:50px;
  background:radial-gradient(circle, rgba(59,130,246,.10), rgba(59,130,246,.02) 58%, transparent 72%);
}

.rp-page .rp-hero-title{
  font-size:clamp(2.3rem,4.8vw,5rem);
  line-height:.96;
  margin-bottom:18px;
}

.rp-page .rp-hero-copy{
  font-size:1rem;
  line-height:1.72;
  max-width:700px;
  margin-bottom:22px;
}

.rp-page .rp-badge,
.rp-page .rp-hero-chip,
.rp-page .rp-mini-pill{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.14);
}

/* hero panel moderner */
.rp-page .rp-hero-panel{
  border-radius:28px;
  padding:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.05));
  box-shadow:0 22px 52px rgba(0,0,0,.18);
}

.rp-page .rp-hero-panel h3{
  font-size:1.45rem;
}

.rp-page .rp-hero-list{
  gap:9px;
}

/* Hauptshell luftiger */
.rp-page .rp-main{
  margin-top:-34px;
  padding-bottom:72px;
}

.rp-page .rp-shell{
  border-radius:34px;
  padding:20px;
  box-shadow:0 28px 80px rgba(15,23,42,.12);
}

/* Intro Cards moderner */
.rp-page .rp-intro-card,
.rp-page .rp-stage-copy,
.rp-page .rp-bottom,
.rp-page .rp-sticky-cta,
.rp-page .rp-stage-video-inner{
  border-radius:26px;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.rp-page .rp-intro-card:hover,
.rp-page .rp-stage-copy:hover,
.rp-page .rp-bottom:hover,
.rp-page .rp-stage-video-inner:hover{
  transform:translateY(-4px);
  box-shadow:0 26px 48px rgba(15,23,42,.10);
}

/* Tabs moderner */
.rp-page .rp-tab{
  border-radius:999px;
  padding:13px 17px;
  box-shadow:0 12px 24px rgba(15,23,42,.05);
}

.rp-page .rp-tab:hover,
.rp-page .rp-tab:focus-visible{
  transform:translateY(-2px);
}

.rp-page .rp-tab.is-active{
  transform:translateY(-1px);
}

/* Video/Linke Spalte kompakter */
.rp-page .rp-stage-top{
  grid-template-columns:360px minmax(0,1fr);
  gap:18px;
}

.rp-page .rp-stage-video-inner{
  top:96px;
  padding:14px;
}

.rp-page .rp-video-frame{
  aspect-ratio:16/10;
  min-height:220px;
  max-height:280px;
  border-radius:24px;
}

.rp-page .rp-video-label{
  top:14px;
  left:14px;
  padding:8px 12px;
}

.rp-page .rp-video-play{
  width:82px;
  height:82px;
  font-size:1.9rem;
}

.rp-page .rp-video-meta{
  padding-top:12px;
  font-size:.92rem;
}

.rp-page .rp-video-sidefacts{
  gap:10px;
  margin-top:14px;
}

.rp-page .rp-video-fact{
  border-radius:18px;
  padding:14px 16px;
}

/* Rechte Inhaltsspalte */
.rp-page .rp-stage-copy{
  padding:28px;
}

.rp-page .rp-copy-title{
  font-size:clamp(2rem,3.2vw,3.5rem);
  line-height:.98;
  margin-bottom:14px;
}

.rp-page .rp-copy-lead{
  font-size:1rem;
  line-height:1.72;
}

.rp-page .rp-copy-body h3{
  font-size:1.24rem;
  margin-top:22px;
}

.rp-page .rp-copy-body p{
  margin-bottom:12px;
}

.rp-page .rp-copy-badge{
  border-radius:999px;
}

/* SEO cards weniger alt */
.rp-page .rp-seo-grid{
  gap:12px;
  margin:20px 0 18px;
}

.rp-page .rp-seo-card{
  border-radius:20px;
  padding:16px;
  transition:transform .24s ease, box-shadow .24s ease;
  box-shadow:0 10px 22px rgba(15,23,42,.04);
}

.rp-page .rp-seo-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 30px rgba(15,23,42,.08);
}

/* Note & actions */
.rp-page .rp-copy-note{
  border-radius:20px;
  padding:16px 18px;
}

.rp-page .rp-actions{
  gap:12px;
}

.rp-page .rp-btn,
.rp-page .rp-btn-secondary{
  padding:13px 20px;
  border-radius:999px;
}

.rp-page .rp-btn:hover,
.rp-page .rp-btn-secondary:hover{
  transform:translateY(-2px) scale(1.01);
}

/* Untere Linkkarten deutlich moderner/klickbarer */
.rp-page .rp-bottom{
  padding:26px;
}

.rp-page .rp-next-grid{
  gap:16px;
}

.rp-page .rp-next-link{
  min-height:200px;
  border-radius:24px;
  padding:22px;
  box-shadow:0 16px 32px rgba(15,23,42,.06);
}

.rp-page .rp-next-link:hover,
.rp-page .rp-next-link:focus-visible{
  transform:translateY(-6px) scale(1.01);
  box-shadow:0 26px 46px rgba(15,23,42,.12);
}

.rp-page .rp-next-link::before{
  margin-bottom:14px;
}

.rp-page .rp-next-link::after{
  width:40px;
  height:40px;
  top:18px;
  right:18px;
  background:rgba(15,23,42,.08);
}

.rp-page .rp-next-link strong{
  font-size:1.38rem;
  line-height:1.14;
  margin-bottom:10px;
}

.rp-page .rp-next-link span{
  font-size:.98rem;
  line-height:1.6;
}

.rp-page .rp-next-link .rp-next-link-bottom{
  margin-top:18px;
}

/* sticky CTA besser */
.rp-page .rp-sticky-cta{
  bottom:12px;
  border-radius:22px;
  padding:16px 18px;
  box-shadow:0 20px 42px rgba(15,23,42,.10);
}

/* Modal etwas cleaner */
.rp-page .rp-modal-dialog{
  border-radius:24px;
  padding:12px;
}

.rp-page .rp-modal-video{
  border-radius:18px;
}

/* Cost cards moderner */
.rp-cost-box{
  border-radius:22px;
  box-shadow:0 22px 44px rgba(0,0,0,.20);
}

.rp-cost-box:hover{
  transform:translateY(-5px) scale(1.01);
}

.rp-cost-btn{
  border-radius:12px;
  padding:11px 14px;
}

/* SEO section auf Unterseiten moderner */
.rp-content-seo{
  padding-top:0;
}

.rp-seo-section-shell{
  border-radius:26px;
  padding:28px;
  box-shadow:0 18px 38px rgba(15,23,42,.05);
}

.rp-seo-section-shell h2{
  font-size:clamp(2rem,3.6vw,3.5rem);
  line-height:1.02;
}

.rp-seo-section-shell h3{
  font-size:1.35rem;
  margin-top:24px;
}

.rp-seo-section-shell p,
.rp-seo-section-shell li{
  font-size:1rem;
  line-height:1.82;
}

.rp-highlight-box,
.rp-cta-box,
.rp-final-cta{
  border-radius:22px;
}

.rp-highlight-box{
  box-shadow:0 22px 46px rgba(15,23,42,.14);
}

.rp-final-cta{
  box-shadow:0 22px 46px rgba(15,23,42,.14);
}

/* Back link sauber */
.back-to-main{
  margin:16px 0 8px;
}

.back-to-main a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 8px 20px rgba(15,23,42,.04);
  opacity:1;
}

.back-to-main a:hover{
  transform:translateY(-2px);
}

/* Alte kosten-* Seiten verbessern */
.kosten-page{
  background:
    radial-gradient(circle at 12% 0%, rgba(217,242,85,.08), transparent 22%),
    radial-gradient(circle at 88% 10%, rgba(59,130,246,.05), transparent 22%),
    #f5f3ee;
}

.kosten-hero{
  padding:96px 0 64px;
  background:
    radial-gradient(circle at 18% 18%, rgba(217,242,85,.08), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.08), transparent 24%),
    linear-gradient(180deg, #0a1224 0%, #13213a 100%) !important;
}

.kosten-hero h1{
  font-size:clamp(2.3rem,5vw,4.8rem);
  line-height:.98;
}

.kosten-hero p{
  font-size:1rem;
  line-height:1.72;
}

.kosten-overview{
  margin-top:-28px;
}

.kosten-overview__shell,
.kosten-mini-intro,
.kosten-mini-prices,
.kosten-card,
.kosten-longtext,
.kosten-cta,
.kosten-linkcard{
  border-radius:24px;
}

.kosten-overview__shell{
  padding:20px;
  box-shadow:0 24px 60px rgba(15,23,42,.10);
}

.kosten-section{
  padding:58px 0;
}

.kosten-head{
  margin-bottom:24px;
}

.kosten-head h2{
  font-size:clamp(2rem,3.8vw,3.4rem);
}

.kosten-card,
.kosten-linkcard,
.kosten-factor,
.kosten-price-card{
  transition:transform .26s ease, box-shadow .26s ease, border-color .26s ease;
}

.kosten-card:hover,
.kosten-linkcard:hover,
.kosten-factor:hover,
.kosten-price-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 40px rgba(15,23,42,.08);
}

.kosten-factor{
  border-radius:20px;
}

.kosten-price-card{
  border-radius:18px;
}

.kosten-compare{
  border-radius:28px;
  padding:28px;
}

.kosten-compare-card{
  border-radius:22px;
}

.kosten-longtext{
  padding:28px;
}

.kosten-linkcard{
  padding:18px;
}

.kosten-cta{
  padding:28px;
}

/* weicher Fade für AOS Bereiche */
[data-aos]{
  will-change:transform, opacity;
}

/* Mobile */
@media (max-width:1199px){
  .rp-page .rp-stage-top{
    grid-template-columns:1fr;
  }

  .rp-page .rp-stage-video-inner{
    position:relative;
    top:auto;
  }

  .rp-page .rp-video-frame{
    aspect-ratio:16/9;
    min-height:auto;
    max-height:none;
  }
}

@media (max-width:991px){
  .rp-page .rp-next-grid{
    grid-template-columns:1fr;
  }

  .rp-page .rp-next-link{
    min-height:auto;
  }

  .rp-page .rp-next-link strong{
    max-width:100%;
    font-size:1.28rem;
  }

  .kosten-links{
    grid-template-columns:1fr;
  }
}

@media (max-width:767px){
  .rp-page .rp-hero{
    padding:72px 0 42px;
  }

  .rp-page .rp-shell{
    padding:14px;
    border-radius:24px;
  }

  .rp-page .rp-intro-card,
  .rp-page .rp-stage-copy,
  .rp-page .rp-bottom,
  .rp-page .rp-sticky-cta,
  .rp-page .rp-stage-video-inner{
    padding:18px;
    border-radius:20px;
  }

  .rp-page .rp-copy-title{
    font-size:clamp(1.8rem,8vw,2.5rem);
  }

  .rp-page .rp-seo-grid,
  .rp-page .rp-next-grid,
  .kosten-grid-2,
  .kosten-factors,
  .kosten-compare-grid{
    grid-template-columns:1fr;
  }

  .rp-page .rp-video-play{
    width:68px;
    height:68px;
    font-size:1.55rem;
  }

  .rp-page .rp-sticky-cta{
    flex-direction:column;
    align-items:flex-start;
  }

  .rp-seo-section-shell,
  .kosten-longtext,
  .kosten-compare,
  .kosten-cta{
    padding:22px;
  }

  .rp-cost-content{
    flex-direction:column;
  }

  .kosten-hero{
    padding:76px 0 48px;
  }
}
/* =========================
   PRIVATRECHTSSCHUTZ KOSTEN
   aus HTML ausgelagert
========================= */

.kosten-page {
  background:
    radial-gradient(circle at 12% 0%, rgba(217,242,85,.10), transparent 22%),
    radial-gradient(circle at 88% 10%, rgba(59,130,246,.08), transparent 22%),
    #f5f3ee;
}

.kosten-hero {
  position: relative;
  overflow: hidden;
  padding: 128px 0 88px;
  background:
    radial-gradient(circle at 18% 18%, rgba(217,242,85,.12), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.12), transparent 24%),
    linear-gradient(180deg, #09111f 0%, #101a2d 100%);
  color: #fff;
}

.kosten-hero::before {
  content: "";
  position: absolute;
  right: -140px;
  bottom: -160px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(217,242,85,.14), transparent 66%);
  pointer-events: none;
}

.kosten-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 16px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.10);
  font-weight: 700;
  margin-bottom: 22px;
}

.kosten-hero h1 {
  font-size: clamp(2.8rem, 6vw, 6rem);
  line-height: .94;
  letter-spacing: -.055em;
  margin-bottom: 18px;
  color: #fff;
}

.kosten-hero p {
  max-width: 820px;
  margin: 0 auto;
  color: rgba(255,255,255,0.80);
  font-size: 1.06rem;
  line-height: 1.82;
}

.kosten-hero__chips {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.kosten-hero__chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 15px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.10);
  color: #fff;
  font-weight: 600;
}

.kosten-backlink-wrap{
  margin-top: 26px;
  text-align: center;
}

.kosten-backlink{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,0.88);
  text-decoration: none;
  font-weight: 700;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.10);
  transition: all .2s ease;
}

.kosten-backlink:hover{
  color:#fff;
  transform: translateY(-2px);
  background: rgba(255,255,255,0.12);
}

.kosten-overview {
  margin-top: -42px;
  position: relative;
  z-index: 3;
}

.kosten-overview__shell {
  background: rgba(255,255,255,0.80);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.44);
  border-radius: 34px;
  box-shadow: 0 30px 90px rgba(15,23,42,0.12);
  padding: 26px;
}

.kosten-overview__grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 20px;
  align-items: stretch;
}

.kosten-mini-intro,
.kosten-mini-prices {
  background: #fff;
  border: 1px solid rgba(15,23,42,0.08);
  border-radius: 28px;
  padding: 24px;
  box-shadow: 0 14px 36px rgba(15,23,42,0.05);
}

.kosten-mini-intro h2 {
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: .98;
  letter-spacing: -.04em;
  margin-bottom: 12px;
}

.kosten-mini-intro p {
  margin: 0;
  color: #667085;
  line-height: 1.8;
}

.kosten-mini-prices-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
  height: 100%;
}

.kosten-price-card {
  border-radius: 24px;
  padding: 18px;
  background: linear-gradient(180deg, #faf9f5, #f7f4ed);
  border: 1px solid rgba(15,23,42,0.08);
}

.kosten-price-card span {
  display: block;
  margin-bottom: 8px;
  color: #667085;
  font-size: .95rem;
}

.kosten-price-card strong {
  display: block;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: -.04em;
  color: #0f172a;
  margin-bottom: 10px;
}

.kosten-price-card small {
  display: block;
  color: #667085;
  line-height: 1.55;
}

.kosten-section {
  padding: 78px 0;
}

.kosten-head {
  max-width: 900px;
  margin-bottom: 34px;
}

.kosten-head h2 {
  font-size: clamp(2.2rem, 4vw, 4.2rem);
  line-height: .98;
  letter-spacing: -.045em;
  margin-bottom: 14px;
  color: #0f172a;
}

.kosten-head p {
  margin: 0;
  color: #667085;
  line-height: 1.84;
}

.kosten-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 20px;
}

.kosten-card {
  background: #fff;
  border: 1px solid rgba(15,23,42,0.08);
  border-radius: 30px;
  padding: 28px;
  box-shadow: 0 16px 40px rgba(15,23,42,0.06);
  height: 100%;
}

.kosten-card h3 {
  margin-bottom: 12px;
  color: #0f172a;
  letter-spacing: -.03em;
  font-size: 1.5rem;
}

.kosten-card p,
.kosten-card li {
  color: #667085;
  line-height: 1.8;
}

.kosten-card ul {
  margin-bottom: 0;
  padding-left: 18px;
}

.kosten-factors {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 16px;
}

.kosten-factor {
  background: linear-gradient(180deg, #faf9f5, #f7f4ed);
  border: 1px solid rgba(15,23,42,0.08);
  border-radius: 26px;
  padding: 20px;
  box-shadow: 0 12px 28px rgba(15,23,42,0.04);
}

.kosten-factor strong {
  display: block;
  margin-bottom: 8px;
  color: #0f172a;
  letter-spacing: -.02em;
}

.kosten-factor p {
  margin: 0;
  color: #667085;
  line-height: 1.66;
  font-size: .96rem;
}

.kosten-compare {
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border-radius: 38px;
  padding: 34px;
  box-shadow: 0 34px 86px rgba(15,23,42,0.18);
  color: #fff;
}

.kosten-compare__head h2 {
  color: #fff;
  font-size: clamp(2rem, 3.8vw, 3.6rem);
  line-height: .98;
  letter-spacing: -.045em;
  margin-bottom: 14px;
}

.kosten-compare__head p {
  color: rgba(255,255,255,0.80);
  line-height: 1.8;
  max-width: 880px;
  margin: 0 0 24px;
}

.kosten-compare-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 20px;
}

.kosten-compare-card {
  border-radius: 28px;
  padding: 24px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(10px);
  height: 100%;
}

.kosten-compare-card .mini-label {
  display: inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  margin-bottom: 14px;
  font-size: .9rem;
  font-weight: 700;
}

.kosten-compare-card.is-negative .mini-label {
  background: rgba(255,77,77,0.14);
  color: #ff8f8f;
}

.kosten-compare-card.is-positive .mini-label {
  background: rgba(173,255,47,0.14);
  color: #c9ff72;
}

.kosten-compare-card h3 {
  color: #fff;
  margin-bottom: 12px;
  letter-spacing: -.03em;
}

.kosten-compare-card p {
  color: rgba(255,255,255,0.78);
  line-height: 1.75;
  margin-bottom: 16px;
}

.kosten-compare-list {
  display: grid;
  gap: 12px;
}

.kosten-compare-line {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  padding: 12px 0;
  border-top: 1px solid rgba(255,255,255,0.08);
}

.kosten-compare-line:first-child {
  border-top: 0;
  padding-top: 0;
}

.kosten-compare-line span {
  color: rgba(255,255,255,0.78);
}

.kosten-compare-line strong {
  flex-shrink: 0;
  letter-spacing: -.02em;
}

.kosten-compare-card.is-negative strong {
  color: #ff8f8f;
}

.kosten-compare-card.is-positive strong {
  color: #c9ff72;
}

.kosten-longtext {
  background: #fff;
  border: 1px solid rgba(15,23,42,0.08);
  border-radius: 34px;
  padding: 34px;
  box-shadow: 0 18px 44px rgba(15,23,42,0.06);
}

.kosten-longtext h2,
.kosten-longtext h3 {
  color: #0f172a;
  letter-spacing: -.035em;
}

.kosten-longtext h2 {
  font-size: clamp(2rem, 3.5vw, 3.6rem);
  line-height: .98;
  margin-bottom: 14px;
}

.kosten-longtext h3 {
  font-size: 1.45rem;
  margin-top: 28px;
  margin-bottom: 12px;
}

.kosten-longtext p {
  color: #667085;
  line-height: 1.9;
  margin-bottom: 14px;
}

.kosten-longtext strong {
  color: #0f172a;
}

.kosten-cta {
  background:
    radial-gradient(circle at 84% 12%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #09111f 0%, #101a2d 100%);
  border-radius: 38px;
  padding: 36px;
  box-shadow: 0 30px 80px rgba(15,23,42,0.18);
  color: #fff;
}

.kosten-cta h2 {
  color: #fff;
  letter-spacing: -.04em;
  margin-bottom: 12px;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
}

.kosten-cta p {
  color: rgba(255,255,255,0.80);
  line-height: 1.8;
  margin-bottom: 0;
}

.kosten-cta .btn {
  border-radius: 999px;
  padding: 14px 22px;
  font-weight: 700;
}

.kosten-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 16px;
}

.kosten-linkcard {
  display: block;
  text-decoration: none;
  background: #fff;
  border: 1px solid rgba(15,23,42,0.08);
  border-radius: 24px;
  padding: 20px;
  color: #0f172a;
  box-shadow: 0 14px 32px rgba(15,23,42,0.05);
  transition: all .2s ease;
}

.kosten-linkcard:hover {
  transform: translateY(-3px);
  color: #0f172a;
  box-shadow: 0 20px 36px rgba(15,23,42,0.08);
}

.kosten-linkcard strong {
  display: block;
  margin-bottom: 8px;
  letter-spacing: -.02em;
}

.kosten-linkcard span {
  color: #667085;
  display: block;
  line-height: 1.64;
}

@media (max-width: 1199px) {
  .kosten-overview__grid,
  .kosten-grid-2,
  .kosten-factors,
  .kosten-compare-grid,
  .kosten-links {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .kosten-hero {
    padding: 114px 0 72px;
  }

  .kosten-mini-prices-grid {
    grid-template-columns: 1fr;
  }

  .kosten-overview__shell,
  .kosten-longtext,
  .kosten-compare,
  .kosten-cta {
    padding: 22px;
  }
}
/* =========================================================
   PROJECTS HUB – MODERN UPGRADE
   unten an projects-ultra-premium.css anhängen
========================================================= */

/* Hero feiner und moderner */
.rp-hero {
  position: relative;
  overflow: hidden;
}

.rp-hero::before {
  content: "";
  position: absolute;
  inset: -10% auto auto -10%;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(217,242,85,.10), transparent 68%);
  pointer-events: none;
  filter: blur(8px);
}

.rp-hero::after {
  content: "";
  position: absolute;
  right: -120px;
  top: -80px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(59,130,246,.10), transparent 68%);
  pointer-events: none;
  filter: blur(10px);
}

.rp-hero-title {
  max-width: 820px;
}

.rp-hero-copy {
  max-width: 760px;
}

/* Rechte Hero-Box hochwertiger */
.rp-hero-panel {
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  backdrop-filter: blur(14px);
  box-shadow: 0 24px 70px rgba(3,10,24,.24);
}

.rp-hero-list span {
  transition: transform .22s ease, background .22s ease, border-color .22s ease;
}

.rp-hero-list span:hover {
  transform: translateY(-2px);
}

/* Intro-Karten moderner */
.rp-intro-card {
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 18px 40px rgba(15,23,42,.06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.rp-intro-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 26px 54px rgba(15,23,42,.10);
  border-color: rgba(15,23,42,.12);
}

/* Tabs stärker wie Themenkarten */
.rp-tabs {
  gap: 12px;
}

.rp-tab {
  position: relative;
  min-height: 58px;
  padding: 14px 18px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.82);
  box-shadow: 0 10px 26px rgba(15,23,42,.04);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}

.rp-tab:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(15,23,42,.08);
  border-color: rgba(15,23,42,.14);
}

.rp-tab.is-active {
  background: linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
  border-color: rgba(59,130,246,.28);
  box-shadow: 0 18px 38px rgba(59,130,246,.12);
}

.rp-tab.is-active::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: -1px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #d9f255 0%, #60a5fa 100%);
}

/* Video- und Content-Bereich ruhiger */
.rp-stage-top {
  gap: 22px;
}

.rp-stage-video-inner,
.rp-stage-copy,
.rp-cost-box,
.rp-video-sidefacts,
.rp-seo-card,
.rp-next-link,
.rp-final-cta,
.rp-cta-box,
.rp-seo-section-shell {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

/* Videobühne mehr Premium */
.rp-video-frame {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 26px 70px rgba(8,15,32,.20);
}

.rp-video-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7,10,20,.00) 35%, rgba(7,10,20,.24) 100%);
  pointer-events: none;
  z-index: 1;
}

.rp-video-frame video {
  transform: scale(1.01);
  transition: transform .5s ease;
}

.rp-video-frame:hover video {
  transform: scale(1.04);
}

.rp-video-play {
  z-index: 2;
  box-shadow: 0 16px 36px rgba(0,0,0,.24);
  transition: transform .22s ease, box-shadow .22s ease;
}

.rp-video-frame:hover .rp-video-play {
  transform: translate(-50%, -50%) scale(1.06);
  box-shadow: 0 20px 42px rgba(0,0,0,.30);
}

.rp-video-label {
  z-index: 2;
  backdrop-filter: blur(10px);
}

/* Meta + Sidefacts kompakter und lebendiger */
.rp-video-meta,
.rp-video-sidefacts,
.rp-cost-box {
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 16px 34px rgba(15,23,42,.05);
}

.rp-video-sidefacts:hover,
.rp-cost-box:hover,
.rp-stage-copy:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 44px rgba(15,23,42,.09);
}

.rp-video-fact {
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border: 1px solid rgba(15,23,42,.06);
}

/* Copy-Badges und Textboxen */
.rp-copy-badge {
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 8px 18px rgba(15,23,42,.04);
}

.rp-copy-note {
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, #ffffff 0%, #fafaf9 100%);
  box-shadow: 0 16px 34px rgba(15,23,42,.05);
}

/* SEO Grid moderner */
.rp-seo-grid {
  gap: 14px;
}

.rp-seo-card {
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 16px 34px rgba(15,23,42,.05);
}

.rp-seo-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 44px rgba(15,23,42,.09);
}

/* Next Cards deutlich moderner */
.rp-next-grid {
  gap: 16px;
}

.rp-next-link {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 18px 40px rgba(15,23,42,.05);
}

.rp-next-link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #d9f255 0%, #60a5fa 100%);
  opacity: 0;
  transition: opacity .22s ease;
}

.rp-next-link:hover {
  transform: translateY(-4px);
  box-shadow: 0 28px 50px rgba(15,23,42,.10);
  border-color: rgba(15,23,42,.12);
}

.rp-next-link:hover::before {
  opacity: 1;
}

.rp-next-link strong {
  display: block;
  margin-bottom: 8px;
}

.rp-next-link-cta {
  font-weight: 700;
  transition: transform .2s ease, opacity .2s ease;
}

.rp-next-link:hover .rp-next-link-cta {
  transform: translateX(2px);
}

/* CTA unten hochwertiger */
.rp-sticky-cta,
.rp-final-cta,
.rp-cta-box {
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 18px 46px rgba(15,23,42,.06);
}

.rp-sticky-cta:hover,
.rp-final-cta:hover,
.rp-cta-box:hover {
  transform: translateY(-2px);
  box-shadow: 0 28px 56px rgba(15,23,42,.09);
}

/* Section Shell unten weniger "Blockig" */
.rp-seo-section-shell {
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 20px 50px rgba(15,23,42,.06);
}

/* Buttons etwas moderner */
.rp-btn,
.rp-btn-secondary,
.rp-cost-btn {
  transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.rp-btn:hover,
.rp-btn-secondary:hover,
.rp-cost-btn:hover {
  transform: translateY(-2px);
}

/* Modal hochwertiger */
.rp-modal-dialog {
  box-shadow: 0 30px 90px rgba(0,0,0,.34);
}

/* Mobile Feinschliff */
@media (max-width: 991.98px) {
  .rp-tabs {
    gap: 10px;
  }

  .rp-tab {
    min-height: 52px;
    padding: 12px 14px;
    border-radius: 16px;
  }

  .rp-video-sidefacts {
    grid-template-columns: 1fr;
  }

  .rp-stage-top {
    gap: 18px;
  }
}

@media (max-width: 767.98px) {
  .rp-hero::before,
  .rp-hero::after {
    display: none;
  }

  .rp-next-link,
  .rp-seo-card,
  .rp-intro-card,
  .rp-cost-box,
  .rp-video-sidefacts,
  .rp-sticky-cta,
  .rp-final-cta,
  .rp-cta-box {
    box-shadow: 0 12px 26px rgba(15,23,42,.05);
  }

  .rp-tab.is-active::after {
    left: 12px;
    right: 12px;
  }
}
/* =========================================================
   PROJECTS HUB – 3 BEREICHE KOMPLETT NEU
========================================================= */

/* ---------- 1) FACT STRIP STATT INFO-BOXEN ---------- */

.rp-facts-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.rp-fact-pill {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  padding: 16px 18px;
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 14px 30px rgba(15,23,42,.05);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.rp-fact-pill::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #d9f255 0%, #60a5fa 100%);
  opacity: .95;
}

.rp-fact-pill:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 42px rgba(15,23,42,.09);
  border-color: rgba(15,23,42,.12);
}

.rp-fact-pill small {
  display: block;
  margin-bottom: 8px;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #6b7280;
}

.rp-fact-pill strong {
  display: block;
  font-size: 1.06rem;
  line-height: 1.35;
  color: #0f172a;
  letter-spacing: -.02em;
}

/* alte Sidefacts nicht mehr anzeigen */
.rp-video-sidefacts {
  display: none !important;
}

/* ---------- 2) SEO-BEREICH WEG VON INFOBOXEN ---------- */

.rp-benefit-layout {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 14px;
  margin-top: 18px;
  margin-bottom: 6px;
}

.rp-benefit-layout .rp-seo-card {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 18px 36px rgba(15,23,42,.05);
  padding: 22px 22px 20px;
  min-height: 100%;
}

.rp-benefit-layout .rp-seo-card::after {
  content: "";
  position: absolute;
  right: -30px;
  top: -30px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(217,242,85,.18), transparent 68%);
  pointer-events: none;
}

.rp-benefit-layout .rp-seo-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 26px 52px rgba(15,23,42,.09);
}

.rp-benefit-layout .rp-seo-card strong {
  display: block;
  font-size: 1.15rem;
  line-height: 1.25;
  margin-bottom: 12px;
  color: #0f172a;
  letter-spacing: -.025em;
}

.rp-benefit-layout .rp-seo-card p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.78;
  color: #667085;
}

.rp-benefit-layout .rp-seo-card:nth-child(1),
.rp-benefit-layout .rp-seo-card:nth-child(2) {
  min-height: 220px;
}

.rp-benefit-layout .rp-seo-card:nth-child(3),
.rp-benefit-layout .rp-seo-card:nth-child(4) {
  min-height: 170px;
}

.rp-benefit-layout .rp-seo-card:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}

.rp-benefit-layout .rp-seo-card:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.rp-benefit-layout .rp-seo-card:nth-child(3) {
  grid-column: 1;
  grid-row: 2;
}

.rp-benefit-layout .rp-seo-card:nth-child(4) {
  grid-column: 2;
  grid-row: 2;
}

/* ---------- 3) NÄCHSTE SCHRITTE ALS PREMIUM NAVIGATION ---------- */

.rp-bottom-premium {
  border-radius: 34px;
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 22px 50px rgba(15,23,42,.06);
}

.rp-next-grid-premium {
  gap: 18px;
}

.rp-next-grid-premium .rp-next-link {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  padding: 26px 26px 22px;
  border: 1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(circle at 92% 16%, rgba(217,242,85,.16), transparent 18%),
    linear-gradient(180deg, #ffffff 0%, #fbfbfa 100%);
  box-shadow: 0 20px 44px rgba(15,23,42,.05);
  min-height: 250px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-decoration: none;
}

.rp-next-grid-premium .rp-next-link::before {
  content: "Ratgeber";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  padding: 10px 18px;
  border-radius: 999px;
  background: #07143e;
  color: #fff;
  font-size: .92rem;
  font-weight: 700;
  letter-spacing: -.01em;
  margin-bottom: 18px;
}

.rp-next-grid-premium .rp-next-link::after {
  content: "→";
  position: absolute;
  right: 22px;
  top: 22px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: rgba(15,23,42,.06);
  color: #0f172a;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  transition: transform .22s ease, background .22s ease;
}

.rp-next-grid-premium .rp-next-link:hover {
  transform: translateY(-5px);
  box-shadow: 0 30px 56px rgba(15,23,42,.10);
  border-color: rgba(15,23,42,.12);
}

.rp-next-grid-premium .rp-next-link:hover::after {
  transform: translateX(3px);
  background: rgba(15,23,42,.10);
}

.rp-next-grid-premium .rp-next-link > div:first-child {
  padding-right: 72px;
}

.rp-next-grid-premium .rp-next-link strong {
  display: block;
  font-size: clamp(1.55rem, 2vw, 2.2rem);
  line-height: 1.08;
  margin-bottom: 14px;
  color: #08112f;
  letter-spacing: -.04em;
}

.rp-next-grid-premium .rp-next-link span {
  display: block;
  color: #667085;
  line-height: 1.7;
  font-size: 1rem;
}

.rp-next-grid-premium .rp-next-link-bottom {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid rgba(15,23,42,.08);
}

.rp-next-grid-premium .rp-next-link-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #08112f;
  font-weight: 800;
  font-size: 1rem;
  letter-spacing: -.02em;
}

.rp-next-grid-premium .rp-next-link-cta::after {
  content: "";
  width: 0;
  height: 2px;
  background: #08112f;
  transition: width .22s ease;
}

.rp-next-grid-premium .rp-next-link:hover .rp-next-link-cta::after {
  width: 22px;
}

/* ---------- RESPONSIVE ---------- */

@media (max-width: 1199.98px) {
  .rp-benefit-layout {
    grid-template-columns: 1fr 1fr;
  }

  .rp-next-grid-premium .rp-next-link strong {
    font-size: 1.9rem;
  }
}

@media (max-width: 991.98px) {
  .rp-facts-strip {
    grid-template-columns: 1fr;
  }

  .rp-benefit-layout {
    grid-template-columns: 1fr;
  }

  .rp-benefit-layout .rp-seo-card:nth-child(1),
  .rp-benefit-layout .rp-seo-card:nth-child(2),
  .rp-benefit-layout .rp-seo-card:nth-child(3),
  .rp-benefit-layout .rp-seo-card:nth-child(4) {
    grid-column: auto;
    grid-row: auto;
    min-height: auto;
  }

  .rp-next-grid-premium .rp-next-link {
    min-height: 220px;
  }
}

@media (max-width: 767.98px) {
  .rp-fact-pill {
    padding: 15px 16px;
    border-radius: 16px;
  }

  .rp-benefit-layout .rp-seo-card {
    border-radius: 20px;
    padding: 18px 18px 16px;
  }

  .rp-next-grid-premium .rp-next-link {
    min-height: auto;
    border-radius: 22px;
    padding: 20px 18px 18px;
  }

  .rp-next-grid-premium .rp-next-link::before {
    padding: 8px 14px;
    font-size: .86rem;
    margin-bottom: 14px;
  }

  .rp-next-grid-premium .rp-next-link::after {
    width: 44px;
    height: 44px;
    right: 16px;
    top: 16px;
    font-size: 1.25rem;
  }

  .rp-next-grid-premium .rp-next-link > div:first-child {
    padding-right: 52px;
  }

  .rp-next-grid-premium .rp-next-link strong {
    font-size: 1.35rem;
    line-height: 1.12;
    margin-bottom: 10px;
  }

  .rp-next-grid-premium .rp-next-link span {
    font-size: .96rem;
    line-height: 1.62;
  }

  .rp-next-grid-premium .rp-next-link-bottom {
    margin-top: 18px;
    padding-top: 14px;
  }
}
/* =========================================================
   PROJECTS HUB – KOMPAKTER FEINSCHLIFF
========================================================= */

/* Gesamte Seite kompakter */
.rp-main {
  padding-top: 44px;
  padding-bottom: 56px;
}

.rp-content-seo {
  padding-top: 56px !important;
  padding-bottom: 64px !important;
}

/* Hero etwas kompakter */
.rp-hero {
  padding-top: 118px;
  padding-bottom: 78px;
}

.rp-hero-grid {
  gap: 36px;
}

.rp-hero-title {
  margin-bottom: 16px;
}

.rp-hero-copy {
  margin-bottom: 0;
  line-height: 1.7;
}

.rp-hero-chips {
  margin-top: 22px;
  gap: 10px;
}

.rp-hero-chip {
  padding: 10px 14px;
}

/* Intro weniger hoch */
.rp-intro {
  gap: 18px;
  margin-bottom: 26px;
}

.rp-intro-card {
  padding: 28px 30px;
  min-height: unset;
}

.rp-intro-card h2,
.rp-intro-card h3 {
  margin-bottom: 10px;
}

/* Tabs enger */
.rp-tabs {
  margin-bottom: 20px;
}

/* Video/Text Bereich kompakter */
.rp-stage-top {
  gap: 18px;
  margin-bottom: 26px;
}

.rp-stage-video-inner,
.rp-stage-copy {
  padding: 0;
}

.rp-video-meta {
  margin-top: 12px;
  padding: 14px 16px;
}

.rp-facts-strip {
  margin-top: 12px;
  gap: 10px;
}

.rp-fact-pill {
  padding: 14px 16px;
}

/* rechte Seite kompakter */
.rp-cost-box {
  padding: 18px 18px 16px;
  margin-bottom: 16px;
}

.rp-copy-badges {
  gap: 8px;
  margin-bottom: 12px;
}

.rp-copy-title {
  margin-bottom: 10px;
  line-height: 1.02;
}

.rp-copy-lead {
  margin-bottom: 14px;
  line-height: 1.7;
}

.rp-copy-body h3 {
  margin-top: 16px;
  margin-bottom: 8px;
}

.rp-copy-body p {
  margin-bottom: 10px;
  line-height: 1.72;
}

/* neue Benefit-Blöcke enger */
.rp-benefit-layout {
  margin-top: 14px;
  margin-bottom: 6px;
  gap: 12px;
}

.rp-benefit-layout .rp-seo-card {
  padding: 18px 18px 16px;
}

.rp-benefit-layout .rp-seo-card strong {
  margin-bottom: 10px;
}

.rp-benefit-layout .rp-seo-card p {
  line-height: 1.65;
}

/* Bullets + Hinweis enger */
.rp-copy-list {
  margin-top: 14px;
  margin-bottom: 14px;
  gap: 8px;
}

.rp-copy-note {
  margin-top: 14px;
  padding: 16px 18px;
}

.rp-actions {
  margin-top: 16px;
  gap: 10px;
}

/* Nächste Schritte kompakter */
.rp-bottom-premium {
  padding: 26px;
}

.rp-bottom-head {
  margin-bottom: 18px;
  gap: 18px;
}

.rp-bottom-head h3 {
  margin-bottom: 8px;
}

.rp-next-grid-premium {
  gap: 14px;
}

.rp-next-grid-premium .rp-next-link {
  min-height: 220px;
  padding: 22px 22px 18px;
}

.rp-next-grid-premium .rp-next-link::before {
  margin-bottom: 14px;
}

.rp-next-grid-premium .rp-next-link strong {
  font-size: clamp(1.35rem, 1.7vw, 1.9rem);
  margin-bottom: 10px;
}

.rp-next-grid-premium .rp-next-link span {
  line-height: 1.58;
}

.rp-next-grid-premium .rp-next-link-bottom {
  margin-top: 18px;
  padding-top: 14px;
}

/* Sticky CTA kompakter */
.rp-sticky-cta {
  margin-top: 24px;
  padding: 18px 20px;
}

/* SEO unten kompakter */
.rp-seo-section-shell {
  padding: 28px;
}

.rp-seo-section-shell h2 {
  margin-bottom: 14px;
}

.rp-seo-section-shell h3 {
  margin-top: 18px;
  margin-bottom: 8px;
}

.rp-seo-section-shell p {
  line-height: 1.72;
  margin-bottom: 10px;
}

.rp-highlight-box,
.rp-cta-box,
.rp-final-cta {
  padding: 22px;
  margin-top: 18px;
}

.rp-bottom-light.rp-bottom-premium {
  padding: 22px;
  margin-top: 20px;
}

/* Footer oben etwas enger */
.footer-premium {
  padding-top: 58px !important;
  padding-bottom: 58px !important;
}

/* Responsive */
@media (max-width: 1199.98px) {
  .rp-hero {
    padding-top: 108px;
    padding-bottom: 64px;
  }

  .rp-main {
    padding-top: 36px;
    padding-bottom: 46px;
  }

  .rp-bottom-premium {
    padding: 22px;
  }
}

@media (max-width: 991.98px) {
  .rp-hero-grid,
  .rp-bottom-head {
    gap: 20px;
  }

  .rp-intro-card {
    padding: 22px;
  }

  .rp-seo-section-shell {
    padding: 22px;
  }

  .rp-next-grid-premium .rp-next-link {
    min-height: auto;
  }
}

@media (max-width: 767.98px) {
  .rp-hero {
    padding-top: 96px;
    padding-bottom: 52px;
  }

  .rp-main {
    padding-top: 28px;
    padding-bottom: 36px;
  }

  .rp-content-seo {
    padding-top: 38px !important;
    padding-bottom: 42px !important;
  }

  .rp-intro {
    margin-bottom: 20px;
  }

  .rp-intro-card,
  .rp-bottom-premium,
  .rp-seo-section-shell,
  .rp-highlight-box,
  .rp-cta-box,
  .rp-final-cta,
  .rp-sticky-cta {
    padding: 18px;
  }

  .rp-video-meta,
  .rp-fact-pill,
  .rp-cost-box,
  .rp-copy-note,
  .rp-benefit-layout .rp-seo-card {
    padding: 14px 14px 13px;
  }

  .rp-copy-title {
    margin-bottom: 8px;
  }

  .rp-next-grid-premium .rp-next-link {
    padding: 18px 16px 16px;
  }

  .footer-premium {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
  }
}
.premium-video-card,
.premium-video-inline,
.premium-video-answer {
  background: linear-gradient(180deg, #09111f 0%, #101a2d 100%);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 32px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(15,23,42,.18);
  color: #fff;
}

.premium-video-card__media,
.premium-video-inline__media,
.premium-video-answer__media {
  position: relative;
  overflow: hidden;
  min-height: 320px;
  background: #0f172a;
}

.premium-video-card__media img,
.premium-video-inline__media img,
.premium-video-answer__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: .92;
}

.premium-video-card__media::after,
.premium-video-inline__media::after,
.premium-video-answer__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(9,17,31,.10), rgba(9,17,31,.45));
}

.premium-video-card__content,
.premium-video-inline__content,
.premium-video-answer__content {
  padding: 24px;
}

.premium-video-card__content h3,
.premium-video-inline__content h3,
.premium-video-answer__content h3 {
  color: #fff;
  margin-bottom: 10px;
  letter-spacing: -.03em;
}

.premium-video-card__content p,
.premium-video-inline__content p,
.premium-video-answer__content p {
  color: rgba(255,255,255,.78);
  line-height: 1.75;
  margin-bottom: 0;
}

.premium-video-badge,
.premium-video-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(13,110,253,.16);
  border: 1px solid rgba(13,110,253,.28);
  color: #fff;
  font-weight: 700;
  font-size: .9rem;
}

.premium-video-badge {
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 3;
}

.premium-video-play {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 84px;
  height: 84px;
  border: 0;
  border-radius: 50%;
  background: linear-gradient(135deg, #fd8728 0%, #ff9a4d 100%);
  color: #fff;
  font-size: 1.6rem;
  box-shadow: 0 18px 40px rgba(253,135,40,.30);
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.premium-video-play:hover {
  transform: translate(-50%, -50%) scale(1.04);
}

@media (max-width: 767px) {
  .premium-video-card,
  .premium-video-inline,
  .premium-video-answer {
    border-radius: 24px;
  }

  .premium-video-card__media,
  .premium-video-inline__media,
  .premium-video-answer__media {
    min-height: 240px;
  }

  .premium-video-play {
    width: 68px;
    height: 68px;
    font-size: 1.25rem;
  }
}
/* =========================================================
   FIRMENRECHTSSCHUTZ KOSTEN – PREMIUM VIDEO PAGE
   safe namespace: .firmenkosten-premium-page + .fkp-*
========================================================= */

.firmenkosten-premium-page{
  background:
    radial-gradient(circle at 12% 0%, rgba(217,242,85,.08), transparent 22%),
    radial-gradient(circle at 88% 10%, rgba(59,130,246,.06), transparent 22%),
    #f5f3ee;
  color:#0f172a;
}

/* HERO */
.firmenkosten-premium-page .fkp-hero{
  position:relative;
  overflow:hidden;
  padding:122px 0 82px;
  background:
    radial-gradient(circle at 18% 18%, rgba(217,242,85,.10), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.10), transparent 24%),
    linear-gradient(180deg, #09111f 0%, #101a2d 100%);
  color:#fff;
}

.firmenkosten-premium-page .fkp-hero::before{
  content:"";
  position:absolute;
  right:-140px;
  bottom:-170px;
  width:430px;
  height:430px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(217,242,85,.12), transparent 66%);
  pointer-events:none;
}

.firmenkosten-premium-page .fkp-hero__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  font-weight:700;
  margin-bottom:22px;
  color:#fff;
}

.firmenkosten-premium-page .fkp-hero h1{
  font-size:clamp(2.8rem, 6vw, 5.9rem);
  line-height:.94;
  letter-spacing:-.055em;
  margin-bottom:18px;
  color:#fff;
}

.firmenkosten-premium-page .fkp-hero p{
  max-width:860px;
  margin:0 auto;
  color:rgba(255,255,255,.80);
  font-size:1.05rem;
  line-height:1.82;
}

.firmenkosten-premium-page .fkp-hero__chips{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.firmenkosten-premium-page .fkp-hero__chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-weight:600;
}

/* SECTION BASICS */
.firmenkosten-premium-page .fkp-section{
  padding:74px 0;
}

.firmenkosten-premium-page .fkp-section-tight{
  padding-top:0;
}

.firmenkosten-premium-page .fkp-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.firmenkosten-premium-page .fkp-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.firmenkosten-premium-page .fkp-pill--dark{
  background:rgba(255,255,255,.10);
  color:#fff;
  border-color:rgba(255,255,255,.14);
}

/* VIDEO STAGE */
.firmenkosten-premium-page .fkp-stage-section{
  margin-top:-34px;
  position:relative;
  z-index:3;
  padding-bottom:72px;
}

.firmenkosten-premium-page .fkp-stage-head{
  max-width:960px;
  margin:0 auto 22px;
}

.firmenkosten-premium-page .fkp-stage-head h2{
  font-size:clamp(2.1rem, 4.2vw, 4.2rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.firmenkosten-premium-page .fkp-stage-head p{
  margin:0 auto;
  max-width:820px;
  color:#667085;
  line-height:1.84;
}

.firmenkosten-premium-page .fkp-stage-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 30px 90px rgba(15,23,42,.12);
  padding:20px;
}

.firmenkosten-premium-page .fkp-stage-media{
  position:relative;
  overflow:hidden;
  min-height:680px;
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(135deg, #e5e7eb 0%, #f8fafc 38%, #d59a63 100%);
  box-shadow:0 26px 60px rgba(15,23,42,.10);
}

.firmenkosten-premium-page .fkp-stage-poster{
  width:100%;
  height:100%;
  min-height:680px;
  object-fit:cover;
  display:block;
}

.firmenkosten-premium-page .fkp-stage-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  padding:3rem;
  background:
    linear-gradient(90deg, rgba(255,255,255,.90) 0%, rgba(255,255,255,.76) 28%, rgba(255,255,255,.20) 58%, rgba(15,23,42,.06) 100%);
  z-index:2;
}

.firmenkosten-premium-page .fkp-stage-copy{
  max-width:560px;
}

.firmenkosten-premium-page .fkp-stage-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 10px 24px rgba(15,23,42,.08);
  font-size:.86rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.firmenkosten-premium-page .fkp-stage-copy h3{
  font-size:clamp(2.3rem, 4.8vw, 5rem);
  line-height:.92;
  letter-spacing:-.05em;
  margin-bottom:1rem;
  max-width:10ch;
  color:#0f172a;
}

.firmenkosten-premium-page .fkp-stage-copy p{
  font-size:1.05rem;
  line-height:1.75;
  color:#334155;
  max-width:54ch;
  margin-bottom:1.35rem;
}

.firmenkosten-premium-page .fkp-stage-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
}

.firmenkosten-premium-page .fkp-stage-actions .btn{
  min-height:54px;
  padding-inline:1.35rem;
  border-radius:999px;
  font-weight:700;
}

.firmenkosten-premium-page .fkp-stage-play{
  position:absolute;
  right:2rem;
  bottom:2rem;
  width:92px;
  height:92px;
  border-radius:50%;
  border:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.86);
  color:#fff;
  text-decoration:none;
  box-shadow:0 22px 44px rgba(15,23,42,.28);
  z-index:3;
  transition:transform .25s ease, box-shadow .25s ease;
}

.firmenkosten-premium-page .fkp-stage-play:hover{
  color:#fff;
  transform:scale(1.04);
  box-shadow:0 28px 50px rgba(15,23,42,.34);
}

.firmenkosten-premium-page .fkp-stage-play iconify-icon{
  font-size:2.2rem;
  margin-left:.15rem;
}

.firmenkosten-premium-page .fkp-stage-bottom{
  margin-top:1.2rem;
}

.firmenkosten-premium-page .fkp-mini-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  padding:24px;
  box-shadow:0 14px 36px rgba(15,23,42,.05);
  height:100%;
  transition:transform .24s ease, box-shadow .24s ease;
}

.firmenkosten-premium-page .fkp-mini-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 38px rgba(15,23,42,.08);
}

.firmenkosten-premium-page .fkp-mini-card h3{
  font-size:1.45rem;
  letter-spacing:-.03em;
  color:#0f172a;
  margin-bottom:12px;
}

.firmenkosten-premium-page .fkp-mini-card p{
  margin:0;
  color:#667085;
  line-height:1.76;
}

/* SPLIT */
.firmenkosten-premium-page .fkp-split{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:20px;
  align-items:stretch;
}

.firmenkosten-premium-page .fkp-split-card{
  border-radius:30px;
  padding:28px;
  height:100%;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.firmenkosten-premium-page .fkp-split-card h2{
  font-size:clamp(1.9rem, 3.4vw, 3.2rem);
  line-height:.98;
  letter-spacing:-.04em;
  margin-bottom:14px;
}

.firmenkosten-premium-page .fkp-split-card p,
.firmenkosten-premium-page .fkp-split-card li{
  line-height:1.8;
}

.firmenkosten-premium-page .fkp-split-card--soft{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
}

.firmenkosten-premium-page .fkp-split-card--soft p,
.firmenkosten-premium-page .fkp-split-card--soft li{
  color:#667085;
}

.firmenkosten-premium-page .fkp-split-card--soft ul{
  margin:0;
  padding-left:18px;
}

.firmenkosten-premium-page .fkp-split-card--dark{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.12), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
}

.firmenkosten-premium-page .fkp-split-card--dark h2{
  color:#fff;
}

.firmenkosten-premium-page .fkp-split-card--dark p{
  color:rgba(255,255,255,.80);
}

.firmenkosten-premium-page .fkp-checklist{
  display:grid;
  gap:12px;
  margin-top:18px;
}

.firmenkosten-premium-page .fkp-checkline{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.08);
}

.firmenkosten-premium-page .fkp-checkline:first-child{
  border-top:0;
  padding-top:0;
}

.firmenkosten-premium-page .fkp-checkline span{
  color:rgba(255,255,255,.80);
}

.firmenkosten-premium-page .fkp-checkline strong{
  color:#c9ff72;
  flex-shrink:0;
  letter-spacing:-.02em;
}

/* TABLE */
.firmenkosten-premium-page .fkp-table-shell{
  border-radius:32px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 28px 70px rgba(15,23,42,.10);
  overflow:hidden;
}

.firmenkosten-premium-page .fkp-table-top{
  padding:1.45rem 1.5rem 1.1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.06), rgba(13,110,253,.02));
}

.firmenkosten-premium-page .fkp-table-top h2{
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.firmenkosten-premium-page .fkp-table-top p{
  margin:0;
  max-width:920px;
  color:#667085;
  line-height:1.78;
}

.firmenkosten-premium-page .fkp-table-wrap{
  padding:1.15rem 1.15rem 1.35rem;
}

.firmenkosten-premium-page .fkp-table{
  margin-bottom:0;
  border-radius:22px;
  overflow:hidden;
}

.firmenkosten-premium-page .fkp-table thead th{
  vertical-align:middle;
  font-weight:800;
  font-size:1.02rem;
  letter-spacing:-.03em;
  background:#edf4ff;
  color:#0f172a;
  border-color:rgba(15,23,42,.08);
  padding:1rem;
}

.firmenkosten-premium-page .fkp-table tbody td{
  vertical-align:middle;
  padding:1rem;
  border-color:rgba(15,23,42,.08);
  background:#fff;
}

.firmenkosten-premium-page .fkp-table tbody tr:nth-child(even) td{
  background:#fbfcff;
}

.firmenkosten-premium-page .fkp-col-case{
  font-weight:700;
  letter-spacing:-.02em;
  color:#0f172a;
}

.firmenkosten-premium-page .fkp-col-cost{
  font-weight:800;
  color:#0f172a;
  white-space:nowrap;
}

.firmenkosten-premium-page .fkp-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(13,110,253,.08), rgba(13,110,253,.03));
  border:1px solid rgba(13,110,253,.10);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
  color:#1d4ed8;
}

.firmenkosten-premium-page .fkp-table-note{
  margin-top:1rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  background:#0f172a;
  color:#fff;
  font-weight:700;
  letter-spacing:-.02em;
}

/* COMPARE */
.firmenkosten-premium-page .fkp-compare{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border-radius:38px;
  padding:34px;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
  color:#fff;
}

.firmenkosten-premium-page .fkp-compare-head h2{
  color:#fff;
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin-bottom:14px;
}

.firmenkosten-premium-page .fkp-compare-head p{
  color:rgba(255,255,255,.80);
  line-height:1.8;
  max-width:880px;
  margin:0 0 24px;
}

.firmenkosten-premium-page .fkp-compare-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:20px;
}

.firmenkosten-premium-page .fkp-compare-card{
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(10px);
  height:100%;
}

.firmenkosten-premium-page .fkp-compare-card .mini-label{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  margin-bottom:14px;
  font-size:.9rem;
  font-weight:700;
}

.firmenkosten-premium-page .fkp-compare-card.is-negative .mini-label{
  background:rgba(255,77,77,0.14);
  color:#ff8f8f;
}

.firmenkosten-premium-page .fkp-compare-card.is-positive .mini-label{
  background:rgba(173,255,47,0.14);
  color:#c9ff72;
}

.firmenkosten-premium-page .fkp-compare-card h3{
  color:#fff;
  margin-bottom:12px;
  letter-spacing:-.03em;
  font-size:1.5rem;
}

.firmenkosten-premium-page .fkp-compare-card p{
  color:rgba(255,255,255,0.78);
  line-height:1.75;
  margin-bottom:16px;
}

.firmenkosten-premium-page .fkp-compare-list{
  display:grid;
  gap:12px;
}

.firmenkosten-premium-page .fkp-compare-line{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,0.08);
}

.firmenkosten-premium-page .fkp-compare-line:first-child{
  border-top:0;
  padding-top:0;
}

.firmenkosten-premium-page .fkp-compare-line span{
  color:rgba(255,255,255,0.78);
}

.firmenkosten-premium-page .fkp-compare-line strong{
  flex-shrink:0;
  letter-spacing:-.02em;
}

.firmenkosten-premium-page .fkp-compare-card.is-negative strong{
  color:#ff8f8f;
}

.firmenkosten-premium-page .fkp-compare-card.is-positive strong{
  color:#c9ff72;
}

/* MINI CHECK */
.firmenkosten-premium-page .fkp-check-head{
  max-width:920px;
  margin-bottom:28px;
}

.firmenkosten-premium-page .fkp-check-head h2{
  font-size:clamp(2rem, 3.8vw, 3.5rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 12px;
  color:#0f172a;
}

.firmenkosten-premium-page .fkp-check-head p{
  margin:0;
  color:#667085;
  line-height:1.82;
}

.firmenkosten-premium-page .fkp-check-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.firmenkosten-premium-page .fkp-check-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:28px;
  padding:24px;
  box-shadow:0 16px 40px rgba(15,23,42,.06);
  transition:transform .24s ease, box-shadow .24s ease;
}

.firmenkosten-premium-page .fkp-check-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 42px rgba(15,23,42,.08);
}

.firmenkosten-premium-page .fkp-check-card h3{
  margin-bottom:12px;
  color:#0f172a;
  letter-spacing:-.03em;
  font-size:1.42rem;
}

.firmenkosten-premium-page .fkp-check-card p{
  color:#667085;
  line-height:1.76;
  margin-bottom:0;
}

.firmenkosten-premium-page .fkp-check-card .btn{
  border-radius:999px;
  padding:13px 18px;
  font-weight:700;
}

/* SEO CONTENT */
.firmenkosten-premium-page .fkp-seo-shell{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:32px;
  padding:32px;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.firmenkosten-premium-page .fkp-seo-shell h2{
  font-size:clamp(2rem, 4vw, 4rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin-bottom:16px;
}

.firmenkosten-premium-page .fkp-seo-shell h3{
  font-size:1.5rem;
  line-height:1.2;
  color:#0f172a;
  letter-spacing:-.03em;
  margin-top:28px;
  margin-bottom:12px;
}

.firmenkosten-premium-page .fkp-seo-shell p,
.firmenkosten-premium-page .fkp-seo-shell li{
  color:#667085;
  line-height:1.9;
  font-size:1.02rem;
}

.firmenkosten-premium-page .fkp-highlight-box{
  margin-top:26px;
  margin-bottom:26px;
  background:linear-gradient(180deg,#0b1322,#111d31);
  border-radius:26px;
  padding:26px;
  box-shadow:0 24px 60px rgba(15,23,42,0.18);
}

.firmenkosten-premium-page .fkp-highlight-box h4{
  color:#fff;
  font-size:1.5rem;
  margin-bottom:14px;
  letter-spacing:-.03em;
}

.firmenkosten-premium-page .fkp-highlight-box ul{
  padding-left:20px;
  margin-bottom:14px;
}

.firmenkosten-premium-page .fkp-highlight-box li{
  color:rgba(255,255,255,0.82);
}

.firmenkosten-premium-page .fkp-highlight-note{
  color:#c9ff72;
  margin-bottom:0;
  font-weight:700;
}

.firmenkosten-premium-page .fkp-cta-box{
  margin-top:26px;
  margin-bottom:8px;
  background:linear-gradient(180deg,#faf9f5,#f7f4ed);
  border:1px solid rgba(15,23,42,0.08);
  border-radius:26px;
  padding:24px;
}

.firmenkosten-premium-page .fkp-cta-box h4{
  color:#0f172a;
  font-size:1.45rem;
  margin-bottom:10px;
  letter-spacing:-.03em;
}

.firmenkosten-premium-page .fkp-cta-box p{
  margin-bottom:16px;
}

.firmenkosten-premium-page .fkp-cta-box .btn{
  border-radius:999px;
  padding:13px 20px;
  font-weight:700;
}

/* NEXT LINKS */
.firmenkosten-premium-page .fkp-next-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 26px 70px rgba(15,23,42,.10);
  padding:24px;
}

.firmenkosten-premium-page .fkp-next-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:22px;
  align-items:start;
  margin-bottom:18px;
}

.firmenkosten-premium-page .fkp-next-head h2{
  font-size:clamp(2rem, 3.7vw, 3.4rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 0;
  color:#0f172a;
}

.firmenkosten-premium-page .fkp-next-head p{
  color:#667085;
  line-height:1.76;
  margin:0;
}

.firmenkosten-premium-page .fkp-next-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}

.firmenkosten-premium-page .fkp-next-link{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:220px;
  text-decoration:none;
  color:#0f172a;
  background:
    radial-gradient(circle at top right, rgba(217,242,85,.16), transparent 22%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border:1px solid rgba(15,23,42,.08);
  border-radius:26px;
  padding:22px;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
  box-shadow:0 18px 40px rgba(15,23,42,.05);
}

.firmenkosten-premium-page .fkp-next-link:hover{
  transform:translateY(-4px);
  color:#0f172a;
  box-shadow:0 26px 46px rgba(15,23,42,.10);
  border-color:rgba(15,23,42,.12);
}

.firmenkosten-premium-page .fkp-next-link strong{
  display:block;
  max-width:88%;
  margin-bottom:10px;
  letter-spacing:-.03em;
  font-size:1.4rem;
  line-height:1.14;
  color:#0f172a;
}

.firmenkosten-premium-page .fkp-next-link span{
  display:block;
  color:#667085;
  font-size:.98rem;
  line-height:1.64;
}

.firmenkosten-premium-page .fkp-next-link-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(15,23,42,.08);
}

.firmenkosten-premium-page .fkp-next-link-cta{
  font-size:.95rem;
  font-weight:700;
  color:#0f172a;
}

/* FAQ */
.firmenkosten-premium-page .fkp-faq-shell{
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 24px 60px rgba(15,23,42,.08);
  overflow:hidden;
}

.firmenkosten-premium-page .fkp-faq-top{
  padding:1.65rem 1.5rem 1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.05), rgba(13,110,253,.015));
}

.firmenkosten-premium-page .fkp-faq-top h2{
  font-size:clamp(2rem, 3.6vw, 3.3rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 10px;
  color:#0f172a;
}

.firmenkosten-premium-page .fkp-faq-top p{
  margin:0;
  color:#667085;
  line-height:1.74;
}

.firmenkosten-premium-page .fkp-faq-inner{
  padding:1rem;
}

.firmenkosten-premium-page .fkp-faq-shell .accordion-item{
  border:1px solid rgba(15,23,42,.08) !important;
  border-radius:20px !important;
  overflow:hidden;
  margin-bottom:.9rem;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.firmenkosten-premium-page .fkp-faq-shell .accordion-button{
  padding:1.15rem 1.2rem;
  font-weight:800 !important;
  letter-spacing:-.03em;
  color:#0f172a;
  background:#fff;
}

.firmenkosten-premium-page .fkp-faq-shell .accordion-button:not(.collapsed){
  color:#163166;
  background:#edf4ff;
  box-shadow:none;
}

.firmenkosten-premium-page .fkp-faq-shell .accordion-body{
  color:#475569;
  line-height:1.7;
  background:#fff;
}

/* MODAL */
.firmenkosten-premium-page .fkp-video-modal .modal-dialog{
  max-width:1280px;
  padding:28px;
}

.firmenkosten-premium-page .fkp-video-modal .modal-content{
  background:transparent;
  border:0;
  box-shadow:none;
  position:relative;
}

.firmenkosten-premium-page .fkp-video-frame{
  position:relative;
  background:#f5f5f7;
  border-radius:34px;
  padding:28px;
  box-shadow:
    0 30px 80px rgba(15,23,42,.10),
    0 8px 24px rgba(15,23,42,.06);
}

.firmenkosten-premium-page .fkp-video-stage{
  overflow:hidden;
  border-radius:28px;
  background:#dfe3ea;
}

.firmenkosten-premium-page .fkp-video-stage video{
  width:100%;
  display:block;
  max-height:78vh;
  object-fit:contain;
  background:#dfe3ea;
}

.firmenkosten-premium-page .fkp-video-close{
  position:absolute;
  top:-12px;
  right:-12px;
  width:52px;
  height:52px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.92);
  color:#0f172a;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 14px 30px rgba(15,23,42,.14);
  z-index:30;
}

.firmenkosten-premium-page .fkp-video-close iconify-icon{
  font-size:1.35rem;
}

.firmenkosten-premium-page .modal-backdrop.show{
  opacity:.72 !important;
}

/* RESPONSIVE */
@media (max-width: 1199.98px){
  .firmenkosten-premium-page .fkp-split,
  .firmenkosten-premium-page .fkp-next-head{
    grid-template-columns:1fr;
  }
}

@media (max-width: 991.98px){
  .firmenkosten-premium-page .fkp-stage-media,
  .firmenkosten-premium-page .fkp-stage-poster{
    min-height:560px;
  }

  .firmenkosten-premium-page .fkp-stage-overlay{
    padding:2rem;
    align-items:flex-end;
    background:
      linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,.68) 50%, rgba(255,255,255,.92) 100%);
  }

  .firmenkosten-premium-page .fkp-stage-copy{
    max-width:100%;
  }

  .firmenkosten-premium-page .fkp-stage-copy h3{
    max-width:100%;
    line-height:.98;
  }

  .firmenkosten-premium-page .fkp-stage-play{
    width:74px;
    height:74px;
    right:1.3rem;
    bottom:1.3rem;
  }

  .firmenkosten-premium-page .fkp-compare-grid,
  .firmenkosten-premium-page .fkp-check-grid,
  .firmenkosten-premium-page .fkp-next-grid{
    grid-template-columns:1fr;
  }

  .firmenkosten-premium-page .fkp-video-modal .modal-dialog{
    padding:16px;
  }

  .firmenkosten-premium-page .fkp-video-frame{
    padding:14px;
    border-radius:24px;
  }

  .firmenkosten-premium-page .fkp-video-stage{
    border-radius:18px;
  }

  .firmenkosten-premium-page .fkp-video-close{
    top:-8px;
    right:-8px;
    width:46px;
    height:46px;
  }
}

@media (max-width: 767.98px){
  .firmenkosten-premium-page .fkp-hero{
    padding:108px 0 68px;
  }

  .firmenkosten-premium-page .fkp-hero h1{
    font-size:clamp(2.2rem, 10vw, 3.5rem);
  }

  .firmenkosten-premium-page .fkp-hero p{
    font-size:.98rem;
    line-height:1.68;
  }

  .firmenkosten-premium-page .fkp-stage-section,
  .firmenkosten-premium-page .fkp-section{
    padding-bottom:58px;
  }

  .firmenkosten-premium-page .fkp-stage-media,
  .firmenkosten-premium-page .fkp-stage-poster{
    min-height:500px;
    border-radius:24px;
  }

  .firmenkosten-premium-page .fkp-stage-overlay{
    padding:1.35rem;
  }

  .firmenkosten-premium-page .fkp-stage-label{
    min-height:36px;
    padding:0 14px;
    font-size:.76rem;
  }

  .firmenkosten-premium-page .fkp-stage-copy h3{
    font-size:clamp(1.9rem, 9vw, 2.8rem);
    line-height:1;
  }

  .firmenkosten-premium-page .fkp-stage-copy p{
    font-size:.95rem;
    line-height:1.58;
  }

  .firmenkosten-premium-page .fkp-stage-actions{
    flex-direction:column;
  }

  .firmenkosten-premium-page .fkp-stage-actions .btn{
    width:100%;
  }

  .firmenkosten-premium-page .fkp-stage-play{
    width:64px;
    height:64px;
    right:1rem;
    bottom:1rem;
  }

  .firmenkosten-premium-page .fkp-stage-play iconify-icon{
    font-size:1.7rem;
  }

  .firmenkosten-premium-page .fkp-stage-shell,
  .firmenkosten-premium-page .fkp-seo-shell,
  .firmenkosten-premium-page .fkp-next-shell,
  .firmenkosten-premium-page .fkp-compare,
  .firmenkosten-premium-page .fkp-faq-top,
  .firmenkosten-premium-page .fkp-faq-inner{
    padding-left:20px;
    padding-right:20px;
  }

  .firmenkosten-premium-page .fkp-split-card,
  .firmenkosten-premium-page .fkp-mini-card,
  .firmenkosten-premium-page .fkp-check-card,
  .firmenkosten-premium-page .fkp-seo-shell,
  .firmenkosten-premium-page .fkp-next-shell,
  .firmenkosten-premium-page .fkp-compare,
  .firmenkosten-premium-page .fkp-table-wrap{
    padding:22px;
  }

  .firmenkosten-premium-page .fkp-table thead th,
  .firmenkosten-premium-page .fkp-table tbody td{
    padding:.85rem .8rem;
    font-size:.95rem;
  }
}

@media (max-width: 479.98px){
  .firmenkosten-premium-page .fkp-stage-media,
  .firmenkosten-premium-page .fkp-stage-poster{
    min-height:430px;
  }

  .firmenkosten-premium-page .fkp-video-modal .modal-dialog{
    padding:10px;
  }

  .firmenkosten-premium-page .fkp-video-frame{
    padding:10px;
    border-radius:18px;
  }

  .firmenkosten-premium-page .fkp-video-stage{
    border-radius:14px;
  }
}
/* =========================================================
   VERKEHRSRECHTSSCHUTZ KOSTEN – PREMIUM VIDEO PAGE
   safe namespace: .verkehrskosten-premium-page + .vkp-*
========================================================= */

.verkehrskosten-premium-page{
  background:
    radial-gradient(circle at 12% 0%, rgba(217,242,85,.08), transparent 22%),
    radial-gradient(circle at 88% 10%, rgba(59,130,246,.06), transparent 22%),
    #f5f3ee;
  color:#0f172a;
}

/* HERO */
.verkehrskosten-premium-page .vkp-hero{
  position:relative;
  overflow:hidden;
  padding:122px 0 82px;
  background:
    radial-gradient(circle at 18% 18%, rgba(217,242,85,.10), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.10), transparent 24%),
    linear-gradient(180deg, #09111f 0%, #101a2d 100%);
  color:#fff;
}

.verkehrskosten-premium-page .vkp-hero::before{
  content:"";
  position:absolute;
  right:-140px;
  bottom:-170px;
  width:430px;
  height:430px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(217,242,85,.12), transparent 66%);
  pointer-events:none;
}

.verkehrskosten-premium-page .vkp-hero__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  font-weight:700;
  margin-bottom:22px;
  color:#fff;
}

.verkehrskosten-premium-page .vkp-hero h1{
  font-size:clamp(2.8rem, 6vw, 5.9rem);
  line-height:.94;
  letter-spacing:-.055em;
  margin-bottom:18px;
  color:#fff;
}

.verkehrskosten-premium-page .vkp-hero p{
  max-width:860px;
  margin:0 auto;
  color:rgba(255,255,255,.80);
  font-size:1.05rem;
  line-height:1.82;
}

.verkehrskosten-premium-page .vkp-hero__chips{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.verkehrskosten-premium-page .vkp-hero__chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-weight:600;
}

/* SECTION BASICS */
.verkehrskosten-premium-page .vkp-section{
  padding:74px 0;
}

.verkehrskosten-premium-page .vkp-section-tight{
  padding-top:0;
}

.verkehrskosten-premium-page .vkp-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.verkehrskosten-premium-page .vkp-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.verkehrskosten-premium-page .vkp-pill--dark{
  background:rgba(255,255,255,.10);
  color:#fff;
  border-color:rgba(255,255,255,.14);
}

/* VIDEO STAGE */
.verkehrskosten-premium-page .vkp-stage-section{
  margin-top:-34px;
  position:relative;
  z-index:3;
  padding-bottom:72px;
}

.verkehrskosten-premium-page .vkp-stage-head{
  max-width:960px;
  margin:0 auto 22px;
}

.verkehrskosten-premium-page .vkp-stage-head h2{
  font-size:clamp(2.1rem, 4.2vw, 4.2rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.verkehrskosten-premium-page .vkp-stage-head p{
  margin:0 auto;
  max-width:820px;
  color:#667085;
  line-height:1.84;
}

.verkehrskosten-premium-page .vkp-stage-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 30px 90px rgba(15,23,42,.12);
  padding:20px;
}

.verkehrskosten-premium-page .vkp-stage-media{
  position:relative;
  overflow:hidden;
  min-height:680px;
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(135deg, #e5e7eb 0%, #f8fafc 38%, #d59a63 100%);
  box-shadow:0 26px 60px rgba(15,23,42,.10);
}

.verkehrskosten-premium-page .vkp-stage-poster{
  width:100%;
  height:100%;
  min-height:680px;
  object-fit:cover;
  display:block;
}

.verkehrskosten-premium-page .vkp-stage-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  padding:3rem;
  background:
    linear-gradient(90deg, rgba(255,255,255,.90) 0%, rgba(255,255,255,.76) 28%, rgba(255,255,255,.20) 58%, rgba(15,23,42,.06) 100%);
  z-index:2;
}

.verkehrskosten-premium-page .vkp-stage-copy{
  max-width:560px;
}

.verkehrskosten-premium-page .vkp-stage-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 10px 24px rgba(15,23,42,.08);
  font-size:.86rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.verkehrskosten-premium-page .vkp-stage-copy h3{
  font-size:clamp(2.3rem, 4.8vw, 5rem);
  line-height:.92;
  letter-spacing:-.05em;
  margin-bottom:1rem;
  max-width:10ch;
  color:#0f172a;
}

.verkehrskosten-premium-page .vkp-stage-copy p{
  font-size:1.05rem;
  line-height:1.75;
  color:#334155;
  max-width:54ch;
  margin-bottom:1.35rem;
}

.verkehrskosten-premium-page .vkp-stage-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
}

.verkehrskosten-premium-page .vkp-stage-actions .btn{
  min-height:54px;
  padding-inline:1.35rem;
  border-radius:999px;
  font-weight:700;
}

.verkehrskosten-premium-page .vkp-stage-play{
  position:absolute;
  right:2rem;
  bottom:2rem;
  width:92px;
  height:92px;
  border-radius:50%;
  border:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.86);
  color:#fff;
  text-decoration:none;
  box-shadow:0 22px 44px rgba(15,23,42,.28);
  z-index:3;
  transition:transform .25s ease, box-shadow .25s ease;
}

.verkehrskosten-premium-page .vkp-stage-play:hover{
  color:#fff;
  transform:scale(1.04);
  box-shadow:0 28px 50px rgba(15,23,42,.34);
}

.verkehrskosten-premium-page .vkp-stage-play iconify-icon{
  font-size:2.2rem;
  margin-left:.15rem;
}

.verkehrskosten-premium-page .vkp-stage-bottom{
  margin-top:1.2rem;
}

.verkehrskosten-premium-page .vkp-mini-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  padding:24px;
  box-shadow:0 14px 36px rgba(15,23,42,.05);
  height:100%;
  transition:transform .24s ease, box-shadow .24s ease;
}

.verkehrskosten-premium-page .vkp-mini-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 38px rgba(15,23,42,.08);
}

.verkehrskosten-premium-page .vkp-mini-card h3{
  font-size:1.45rem;
  letter-spacing:-.03em;
  color:#0f172a;
  margin-bottom:12px;
}

.verkehrskosten-premium-page .vkp-mini-card p{
  margin:0;
  color:#667085;
  line-height:1.76;
}

/* SPLIT */
.verkehrskosten-premium-page .vkp-split{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:20px;
  align-items:stretch;
}

.verkehrskosten-premium-page .vkp-split-card{
  border-radius:30px;
  padding:28px;
  height:100%;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.verkehrskosten-premium-page .vkp-split-card h2{
  font-size:clamp(1.9rem, 3.4vw, 3.2rem);
  line-height:.98;
  letter-spacing:-.04em;
  margin-bottom:14px;
}

.verkehrskosten-premium-page .vkp-split-card p,
.verkehrskosten-premium-page .vkp-split-card li{
  line-height:1.8;
}

.verkehrskosten-premium-page .vkp-split-card--soft{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
}

.verkehrskosten-premium-page .vkp-split-card--soft p,
.verkehrskosten-premium-page .vkp-split-card--soft li{
  color:#667085;
}

.verkehrskosten-premium-page .vkp-split-card--soft ul{
  margin:0;
  padding-left:18px;
}

.verkehrskosten-premium-page .vkp-split-card--dark{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
}

.verkehrskosten-premium-page .vkp-split-card--dark h2{
  color:#fff;
}

.verkehrskosten-premium-page .vkp-split-card--dark p{
  color:rgba(255,255,255,.80);
}

.verkehrskosten-premium-page .vkp-checklist{
  display:grid;
  gap:12px;
  margin-top:18px;
}

.verkehrskosten-premium-page .vkp-checkline{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.08);
}

.verkehrskosten-premium-page .vkp-checkline:first-child{
  border-top:0;
  padding-top:0;
}

.verkehrskosten-premium-page .vkp-checkline span{
  color:rgba(255,255,255,.80);
}

.verkehrskosten-premium-page .vkp-checkline strong{
  color:#c9ff72;
  flex-shrink:0;
  letter-spacing:-.02em;
}

/* TABLE */
.verkehrskosten-premium-page .vkp-table-shell{
  border-radius:32px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 28px 70px rgba(15,23,42,.10);
  overflow:hidden;
}

.verkehrskosten-premium-page .vkp-table-top{
  padding:1.45rem 1.5rem 1.1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.06), rgba(13,110,253,.02));
}

.verkehrskosten-premium-page .vkp-table-top h2{
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.verkehrskosten-premium-page .vkp-table-top p{
  margin:0;
  max-width:920px;
  color:#667085;
  line-height:1.78;
}

.verkehrskosten-premium-page .vkp-table-wrap{
  padding:1.15rem 1.15rem 1.35rem;
}

.verkehrskosten-premium-page .vkp-table{
  margin-bottom:0;
  border-radius:22px;
  overflow:hidden;
}

.verkehrskosten-premium-page .vkp-table thead th{
  vertical-align:middle;
  font-weight:800;
  font-size:1.02rem;
  letter-spacing:-.03em;
  background:#edf4ff;
  color:#0f172a;
  border-color:rgba(15,23,42,.08);
  padding:1rem;
}

.verkehrskosten-premium-page .vkp-table tbody td{
  vertical-align:middle;
  padding:1rem;
  border-color:rgba(15,23,42,.08);
  background:#fff;
}

.verkehrskosten-premium-page .vkp-table tbody tr:nth-child(even) td{
  background:#fbfcff;
}

.verkehrskosten-premium-page .vkp-col-case{
  font-weight:700;
  letter-spacing:-.02em;
  color:#0f172a;
}

.verkehrskosten-premium-page .vkp-col-cost{
  font-weight:800;
  color:#0f172a;
  white-space:nowrap;
}

.verkehrskosten-premium-page .vkp-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(13,110,253,.08), rgba(13,110,253,.03));
  border:1px solid rgba(13,110,253,.10);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
  color:#1d4ed8;
}

.verkehrskosten-premium-page .vkp-table-note{
  margin-top:1rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  background:#0f172a;
  color:#fff;
  font-weight:700;
  letter-spacing:-.02em;
}

/* COMPARE */
.verkehrskosten-premium-page .vkp-compare{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border-radius:38px;
  padding:34px;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
  color:#fff;
}

.verkehrskosten-premium-page .vkp-compare-head h2{
  color:#fff;
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin-bottom:14px;
}

.verkehrskosten-premium-page .vkp-compare-head p{
  color:rgba(255,255,255,.80);
  line-height:1.8;
  max-width:880px;
  margin:0 0 24px;
}

.verkehrskosten-premium-page .vkp-compare-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:20px;
}

.verkehrskosten-premium-page .vkp-compare-card{
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(10px);
  height:100%;
}

.verkehrskosten-premium-page .vkp-compare-card .mini-label{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  margin-bottom:14px;
  font-size:.9rem;
  font-weight:700;
}

.verkehrskosten-premium-page .vkp-compare-card.is-negative .mini-label{
  background:rgba(255,77,77,0.14);
  color:#ff8f8f;
}

.verkehrskosten-premium-page .vkp-compare-card.is-positive .mini-label{
  background:rgba(173,255,47,0.14);
  color:#c9ff72;
}

.verkehrskosten-premium-page .vkp-compare-card h3{
  color:#fff;
  margin-bottom:12px;
  letter-spacing:-.03em;
  font-size:1.5rem;
}

.verkehrskosten-premium-page .vkp-compare-card p{
  color:rgba(255,255,255,0.78);
  line-height:1.75;
  margin-bottom:16px;
}

.verkehrskosten-premium-page .vkp-compare-list{
  display:grid;
  gap:12px;
}

.verkehrskosten-premium-page .vkp-compare-line{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,0.08);
}

.verkehrskosten-premium-page .vkp-compare-line:first-child{
  border-top:0;
  padding-top:0;
}

.verkehrskosten-premium-page .vkp-compare-line span{
  color:rgba(255,255,255,0.78);
}

.verkehrskosten-premium-page .vkp-compare-line strong{
  flex-shrink:0;
  letter-spacing:-.02em;
}

.verkehrskosten-premium-page .vkp-compare-card.is-negative strong{
  color:#ff8f8f;
}

.verkehrskosten-premium-page .vkp-compare-card.is-positive strong{
  color:#c9ff72;
}

/* MINI CHECK */
.verkehrskosten-premium-page .vkp-check-head{
  max-width:920px;
  margin-bottom:28px;
}

.verkehrskosten-premium-page .vkp-check-head h2{
  font-size:clamp(2rem, 3.8vw, 3.5rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 12px;
  color:#0f172a;
}

.verkehrskosten-premium-page .vkp-check-head p{
  margin:0;
  color:#667085;
  line-height:1.82;
}

.verkehrskosten-premium-page .vkp-check-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.verkehrskosten-premium-page .vkp-check-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:28px;
  padding:24px;
  box-shadow:0 16px 40px rgba(15,23,42,.06);
  transition:transform .24s ease, box-shadow .24s ease;
}

.verkehrskosten-premium-page .vkp-check-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 42px rgba(15,23,42,.08);
}

.verkehrskosten-premium-page .vkp-check-card h3{
  margin-bottom:12px;
  color:#0f172a;
  letter-spacing:-.03em;
  font-size:1.42rem;
}

.verkehrskosten-premium-page .vkp-check-card p{
  color:#667085;
  line-height:1.76;
  margin-bottom:0;
}

.verkehrskosten-premium-page .vkp-check-card .btn{
  border-radius:999px;
  padding:13px 18px;
  font-weight:700;
}

/* SEO CONTENT */
.verkehrskosten-premium-page .vkp-seo-shell{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:32px;
  padding:32px;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.verkehrskosten-premium-page .vkp-seo-shell h2{
  font-size:clamp(2rem, 4vw, 4rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin-bottom:16px;
}

.verkehrskosten-premium-page .vkp-seo-shell h3{
  font-size:1.5rem;
  line-height:1.2;
  color:#0f172a;
  letter-spacing:-.03em;
  margin-top:28px;
  margin-bottom:12px;
}

.verkehrskosten-premium-page .vkp-seo-shell p,
.verkehrskosten-premium-page .vkp-seo-shell li{
  color:#667085;
  line-height:1.9;
  font-size:1.02rem;
}

.verkehrskosten-premium-page .vkp-highlight-box{
  margin-top:26px;
  margin-bottom:26px;
  background:linear-gradient(180deg,#0b1322,#111d31);
  border-radius:26px;
  padding:26px;
  box-shadow:0 24px 60px rgba(15,23,42,0.18);
}

.verkehrskosten-premium-page .vkp-highlight-box h4{
  color:#fff;
  font-size:1.5rem;
  margin-bottom:14px;
  letter-spacing:-.03em;
}

.verkehrskosten-premium-page .vkp-highlight-box ul{
  padding-left:20px;
  margin-bottom:14px;
}

.verkehrskosten-premium-page .vkp-highlight-box li{
  color:rgba(255,255,255,0.82);
}

.verkehrskosten-premium-page .vkp-highlight-note{
  color:#c9ff72;
  margin-bottom:0;
  font-weight:700;
}

.verkehrskosten-premium-page .vkp-cta-box{
  margin-top:26px;
  margin-bottom:8px;
  background:linear-gradient(180deg,#faf9f5,#f7f4ed);
  border:1px solid rgba(15,23,42,0.08);
  border-radius:26px;
  padding:24px;
}

.verkehrskosten-premium-page .vkp-cta-box h4{
  color:#0f172a;
  font-size:1.45rem;
  margin-bottom:10px;
  letter-spacing:-.03em;
}

.verkehrskosten-premium-page .vkp-cta-box p{
  margin-bottom:16px;
}

.verkehrskosten-premium-page .vkp-cta-box .btn{
  border-radius:999px;
  padding:13px 20px;
  font-weight:700;
}

/* NEXT LINKS */
.verkehrskosten-premium-page .vkp-next-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 26px 70px rgba(15,23,42,.10);
  padding:24px;
}

.verkehrskosten-premium-page .vkp-next-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:22px;
  align-items:start;
  margin-bottom:18px;
}

.verkehrskosten-premium-page .vkp-next-head h2{
  font-size:clamp(2rem, 3.7vw, 3.4rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 0;
  color:#0f172a;
}

.verkehrskosten-premium-page .vkp-next-head p{
  color:#667085;
  line-height:1.76;
  margin:0;
}

.verkehrskosten-premium-page .vkp-next-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}

.verkehrskosten-premium-page .vkp-next-link{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:220px;
  text-decoration:none;
  color:#0f172a;
  background:
    radial-gradient(circle at top right, rgba(217,242,85,.16), transparent 22%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border:1px solid rgba(15,23,42,.08);
  border-radius:26px;
  padding:22px;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
  box-shadow:0 18px 40px rgba(15,23,42,.05);
}

.verkehrskosten-premium-page .vkp-next-link:hover{
  transform:translateY(-4px);
  color:#0f172a;
  box-shadow:0 26px 46px rgba(15,23,42,.10);
  border-color:rgba(15,23,42,.12);
}

.verkehrskosten-premium-page .vkp-next-link strong{
  display:block;
  max-width:88%;
  margin-bottom:10px;
  letter-spacing:-.03em;
  font-size:1.4rem;
  line-height:1.14;
  color:#0f172a;
}

.verkehrskosten-premium-page .vkp-next-link span{
  display:block;
  color:#667085;
  font-size:.98rem;
  line-height:1.64;
}

.verkehrskosten-premium-page .vkp-next-link-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(15,23,42,.08);
}

.verkehrskosten-premium-page .vkp-next-link-cta{
  font-size:.95rem;
  font-weight:700;
  color:#0f172a;
}

/* FAQ */
.verkehrskosten-premium-page .vkp-faq-shell{
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 24px 60px rgba(15,23,42,.08);
  overflow:hidden;
}

.verkehrskosten-premium-page .vkp-faq-top{
  padding:1.65rem 1.5rem 1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.05), rgba(13,110,253,.015));
}

.verkehrskosten-premium-page .vkp-faq-top h2{
  font-size:clamp(2rem, 3.6vw, 3.3rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 10px;
  color:#0f172a;
}

.verkehrskosten-premium-page .vkp-faq-top p{
  margin:0;
  color:#667085;
  line-height:1.74;
}

.verkehrskosten-premium-page .vkp-faq-inner{
  padding:1rem;
}

.verkehrskosten-premium-page .vkp-faq-shell .accordion-item{
  border:1px solid rgba(15,23,42,.08) !important;
  border-radius:20px !important;
  overflow:hidden;
  margin-bottom:.9rem;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.verkehrskosten-premium-page .vkp-faq-shell .accordion-button{
  padding:1.15rem 1.2rem;
  font-weight:800 !important;
  letter-spacing:-.03em;
  color:#0f172a;
  background:#fff;
}

.verkehrskosten-premium-page .vkp-faq-shell .accordion-button:not(.collapsed){
  color:#163166;
  background:#edf4ff;
  box-shadow:none;
}

.verkehrskosten-premium-page .vkp-faq-shell .accordion-body{
  color:#475569;
  line-height:1.7;
  background:#fff;
}

/* MODAL */
.verkehrskosten-premium-page .vkp-video-modal .modal-dialog{
  max-width:1280px;
  padding:28px;
}

.verkehrskosten-premium-page .vkp-video-modal .modal-content{
  background:transparent;
  border:0;
  box-shadow:none;
  position:relative;
}

.verkehrskosten-premium-page .vkp-video-frame{
  position:relative;
  background:#f5f5f7;
  border-radius:34px;
  padding:28px;
  box-shadow:
    0 30px 80px rgba(15,23,42,.10),
    0 8px 24px rgba(15,23,42,.06);
}

.verkehrskosten-premium-page .vkp-video-stage{
  overflow:hidden;
  border-radius:28px;
  background:#dfe3ea;
}

.verkehrskosten-premium-page .vkp-video-stage video{
  width:100%;
  display:block;
  max-height:78vh;
  object-fit:contain;
  background:#dfe3ea;
}

.verkehrskosten-premium-page .vkp-video-close{
  position:absolute;
  top:-12px;
  right:-12px;
  width:52px;
  height:52px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.92);
  color:#0f172a;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 14px 30px rgba(15,23,42,.14);
  z-index:30;
}

.verkehrskosten-premium-page .vkp-video-close iconify-icon{
  font-size:1.35rem;
}

.verkehrskosten-premium-page .modal-backdrop.show{
  opacity:.72 !important;
}

/* RESPONSIVE */
@media (max-width: 1199.98px){
  .verkehrskosten-premium-page .vkp-split,
  .verkehrskosten-premium-page .vkp-next-head{
    grid-template-columns:1fr;
  }
}

@media (max-width: 991.98px){
  .verkehrskosten-premium-page .vkp-stage-media,
  .verkehrskosten-premium-page .vkp-stage-poster{
    min-height:560px;
  }

  .verkehrskosten-premium-page .vkp-stage-overlay{
    padding:2rem;
    align-items:flex-end;
    background:
      linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,.68) 50%, rgba(255,255,255,.92) 100%);
  }

  .verkehrskosten-premium-page .vkp-stage-copy{
    max-width:100%;
  }

  .verkehrskosten-premium-page .vkp-stage-copy h3{
    max-width:100%;
    line-height:.98;
  }

  .verkehrskosten-premium-page .vkp-stage-play{
    width:74px;
    height:74px;
    right:1.3rem;
    bottom:1.3rem;
  }

  .verkehrskosten-premium-page .vkp-compare-grid,
  .verkehrskosten-premium-page .vkp-check-grid,
  .verkehrskosten-premium-page .vkp-next-grid{
    grid-template-columns:1fr;
  }

  .verkehrskosten-premium-page .vkp-video-modal .modal-dialog{
    padding:16px;
  }

  .verkehrskosten-premium-page .vkp-video-frame{
    padding:14px;
    border-radius:24px;
  }

  .verkehrskosten-premium-page .vkp-video-stage{
    border-radius:18px;
  }

  .verkehrskosten-premium-page .vkp-video-close{
    top:-8px;
    right:-8px;
    width:46px;
    height:46px;
  }
}

@media (max-width: 767.98px){
  .verkehrskosten-premium-page .vkp-hero{
    padding:108px 0 68px;
  }

  .verkehrskosten-premium-page .vkp-hero h1{
    font-size:clamp(2.2rem, 10vw, 3.5rem);
  }

  .verkehrskosten-premium-page .vkp-hero p{
    font-size:.98rem;
    line-height:1.68;
  }

  .verkehrskosten-premium-page .vkp-stage-section,
  .verkehrskosten-premium-page .vkp-section{
    padding-bottom:58px;
  }

  .verkehrskosten-premium-page .vkp-stage-media,
  .verkehrskosten-premium-page .vkp-stage-poster{
    min-height:500px;
    border-radius:24px;
  }

  .verkehrskosten-premium-page .vkp-stage-overlay{
    padding:1.35rem;
  }

  .verkehrskosten-premium-page .vkp-stage-label{
    min-height:36px;
    padding:0 14px;
    font-size:.76rem;
  }

  .verkehrskosten-premium-page .vkp-stage-copy h3{
    font-size:clamp(1.9rem, 9vw, 2.8rem);
    line-height:1;
  }

  .verkehrskosten-premium-page .vkp-stage-copy p{
    font-size:.95rem;
    line-height:1.58;
  }

  .verkehrskosten-premium-page .vkp-stage-actions{
    flex-direction:column;
  }

  .verkehrskosten-premium-page .vkp-stage-actions .btn{
    width:100%;
  }

  .verkehrskosten-premium-page .vkp-stage-play{
    width:64px;
    height:64px;
    right:1rem;
    bottom:1rem;
  }

  .verkehrskosten-premium-page .vkp-stage-play iconify-icon{
    font-size:1.7rem;
  }

  .verkehrskosten-premium-page .vkp-stage-shell,
  .verkehrskosten-premium-page .vkp-seo-shell,
  .verkehrskosten-premium-page .vkp-next-shell,
  .verkehrskosten-premium-page .vkp-compare,
  .verkehrskosten-premium-page .vkp-faq-top,
  .verkehrskosten-premium-page .vkp-faq-inner{
    padding-left:20px;
    padding-right:20px;
  }

  .verkehrskosten-premium-page .vkp-split-card,
  .verkehrskosten-premium-page .vkp-mini-card,
  .verkehrskosten-premium-page .vkp-check-card,
  .verkehrskosten-premium-page .vkp-seo-shell,
  .verkehrskosten-premium-page .vkp-next-shell,
  .verkehrskosten-premium-page .vkp-compare,
  .verkehrskosten-premium-page .vkp-table-wrap{
    padding:22px;
  }

  .verkehrskosten-premium-page .vkp-table thead th,
  .verkehrskosten-premium-page .vkp-table tbody td{
    padding:.85rem .8rem;
    font-size:.95rem;
  }
}

@media (max-width: 479.98px){
  .verkehrskosten-premium-page .vkp-stage-media,
  .verkehrskosten-premium-page .vkp-stage-poster{
    min-height:430px;
  }

  .verkehrskosten-premium-page .vkp-video-modal .modal-dialog{
    padding:10px;
  }

  .verkehrskosten-premium-page .vkp-video-frame{
    padding:10px;
    border-radius:18px;
  }

  .verkehrskosten-premium-page .vkp-video-stage{
    border-radius:14px;
  }
}
/* =========================================================
   ZAHNZUSATZVERSICHERUNG KOSTEN – PREMIUM VIDEO PAGE
   safe namespace: .zahnkosten-premium-page + .zkp-*
========================================================= */

.zahnkosten-premium-page{
  background:
    radial-gradient(circle at 12% 0%, rgba(217,242,85,.08), transparent 22%),
    radial-gradient(circle at 88% 10%, rgba(59,130,246,.06), transparent 22%),
    #f5f3ee;
  color:#0f172a;
}

/* HERO */
.zahnkosten-premium-page .zkp-hero{
  position:relative;
  overflow:hidden;
  padding:122px 0 82px;
  background:
    radial-gradient(circle at 18% 18%, rgba(217,242,85,.10), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.10), transparent 24%),
    linear-gradient(180deg, #09111f 0%, #101a2d 100%);
  color:#fff;
}

.zahnkosten-premium-page .zkp-hero::before{
  content:"";
  position:absolute;
  right:-140px;
  bottom:-170px;
  width:430px;
  height:430px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(217,242,85,.12), transparent 66%);
  pointer-events:none;
}

.zahnkosten-premium-page .zkp-hero__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  font-weight:700;
  margin-bottom:22px;
  color:#fff;
}

.zahnkosten-premium-page .zkp-hero h1{
  font-size:clamp(2.8rem, 6vw, 5.9rem);
  line-height:.94;
  letter-spacing:-.055em;
  margin-bottom:18px;
  color:#fff;
}

.zahnkosten-premium-page .zkp-hero p{
  max-width:860px;
  margin:0 auto;
  color:rgba(255,255,255,.80);
  font-size:1.05rem;
  line-height:1.82;
}

.zahnkosten-premium-page .zkp-hero__chips{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.zahnkosten-premium-page .zkp-hero__chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-weight:600;
}

/* SECTION BASICS */
.zahnkosten-premium-page .zkp-section{
  padding:74px 0;
}

.zahnkosten-premium-page .zkp-section-tight{
  padding-top:0;
}

.zahnkosten-premium-page .zkp-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.zahnkosten-premium-page .zkp-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.zahnkosten-premium-page .zkp-pill--dark{
  background:rgba(255,255,255,.10);
  color:#fff;
  border-color:rgba(255,255,255,.14);
}

/* VIDEO STAGE */
.zahnkosten-premium-page .zkp-stage-section{
  margin-top:-34px;
  position:relative;
  z-index:3;
  padding-bottom:72px;
}

.zahnkosten-premium-page .zkp-stage-head{
  max-width:960px;
  margin:0 auto 22px;
}

.zahnkosten-premium-page .zkp-stage-head h2{
  font-size:clamp(2.1rem, 4.2vw, 4.2rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.zahnkosten-premium-page .zkp-stage-head p{
  margin:0 auto;
  max-width:820px;
  color:#667085;
  line-height:1.84;
}

.zahnkosten-premium-page .zkp-stage-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 30px 90px rgba(15,23,42,.12);
  padding:20px;
}

.zahnkosten-premium-page .zkp-stage-media{
  position:relative;
  overflow:hidden;
  min-height:680px;
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(135deg, #e5e7eb 0%, #f8fafc 38%, #d59a63 100%);
  box-shadow:0 26px 60px rgba(15,23,42,.10);
}

.zahnkosten-premium-page .zkp-stage-poster{
  width:100%;
  height:100%;
  min-height:680px;
  object-fit:cover;
  display:block;
}

.zahnkosten-premium-page .zkp-stage-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  padding:3rem;
  background:
    linear-gradient(90deg, rgba(255,255,255,.90) 0%, rgba(255,255,255,.76) 28%, rgba(255,255,255,.20) 58%, rgba(15,23,42,.06) 100%);
  z-index:2;
}

.zahnkosten-premium-page .zkp-stage-copy{
  max-width:560px;
}

.zahnkosten-premium-page .zkp-stage-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 10px 24px rgba(15,23,42,.08);
  font-size:.86rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.zahnkosten-premium-page .zkp-stage-copy h3{
  font-size:clamp(2.3rem, 4.8vw, 5rem);
  line-height:.92;
  letter-spacing:-.05em;
  margin-bottom:1rem;
  max-width:10ch;
  color:#0f172a;
}

.zahnkosten-premium-page .zkp-stage-copy p{
  font-size:1.05rem;
  line-height:1.75;
  color:#334155;
  max-width:54ch;
  margin-bottom:1.35rem;
}

.zahnkosten-premium-page .zkp-stage-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
}

.zahnkosten-premium-page .zkp-stage-actions .btn{
  min-height:54px;
  padding-inline:1.35rem;
  border-radius:999px;
  font-weight:700;
}

.zahnkosten-premium-page .zkp-stage-play{
  position:absolute;
  right:2rem;
  bottom:2rem;
  width:92px;
  height:92px;
  border-radius:50%;
  border:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.86);
  color:#fff;
  text-decoration:none;
  box-shadow:0 22px 44px rgba(15,23,42,.28);
  z-index:3;
  transition:transform .25s ease, box-shadow .25s ease;
}

.zahnkosten-premium-page .zkp-stage-play:hover{
  color:#fff;
  transform:scale(1.04);
  box-shadow:0 28px 50px rgba(15,23,42,.34);
}

.zahnkosten-premium-page .zkp-stage-play iconify-icon{
  font-size:2.2rem;
  margin-left:.15rem;
}

.zahnkosten-premium-page .zkp-stage-bottom{
  margin-top:1.2rem;
}

.zahnkosten-premium-page .zkp-mini-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  padding:24px;
  box-shadow:0 14px 36px rgba(15,23,42,.05);
  height:100%;
  transition:transform .24s ease, box-shadow .24s ease;
}

.zahnkosten-premium-page .zkp-mini-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 38px rgba(15,23,42,.08);
}

.zahnkosten-premium-page .zkp-mini-card h3{
  font-size:1.45rem;
  letter-spacing:-.03em;
  color:#0f172a;
  margin-bottom:12px;
}

.zahnkosten-premium-page .zkp-mini-card p{
  margin:0;
  color:#667085;
  line-height:1.76;
}

/* SPLIT */
.zahnkosten-premium-page .zkp-split{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:20px;
  align-items:stretch;
}

.zahnkosten-premium-page .zkp-split-card{
  border-radius:30px;
  padding:28px;
  height:100%;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.zahnkosten-premium-page .zkp-split-card h2{
  font-size:clamp(1.9rem, 3.4vw, 3.2rem);
  line-height:.98;
  letter-spacing:-.04em;
  margin-bottom:14px;
}

.zahnkosten-premium-page .zkp-split-card p,
.zahnkosten-premium-page .zkp-split-card li{
  line-height:1.8;
}

.zahnkosten-premium-page .zkp-split-card--soft{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
}

.zahnkosten-premium-page .zkp-split-card--soft p,
.zahnkosten-premium-page .zkp-split-card--soft li{
  color:#667085;
}

.zahnkosten-premium-page .zkp-split-card--soft ul{
  margin:0;
  padding-left:18px;
}

.zahnkosten-premium-page .zkp-split-card--dark{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
}

.zahnkosten-premium-page .zkp-split-card--dark h2{
  color:#fff;
}

.zahnkosten-premium-page .zkp-split-card--dark p{
  color:rgba(255,255,255,.80);
}

.zahnkosten-premium-page .zkp-checklist{
  display:grid;
  gap:12px;
  margin-top:18px;
}

.zahnkosten-premium-page .zkp-checkline{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.08);
}

.zahnkosten-premium-page .zkp-checkline:first-child{
  border-top:0;
  padding-top:0;
}

.zahnkosten-premium-page .zkp-checkline span{
  color:rgba(255,255,255,.80);
}

.zahnkosten-premium-page .zkp-checkline strong{
  color:#c9ff72;
  flex-shrink:0;
  letter-spacing:-.02em;
}

/* TABLE */
.zahnkosten-premium-page .zkp-table-shell{
  border-radius:32px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 28px 70px rgba(15,23,42,.10);
  overflow:hidden;
}

.zahnkosten-premium-page .zkp-table-top{
  padding:1.45rem 1.5rem 1.1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.06), rgba(13,110,253,.02));
}

.zahnkosten-premium-page .zkp-table-top h2{
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.zahnkosten-premium-page .zkp-table-top p{
  margin:0;
  max-width:920px;
  color:#667085;
  line-height:1.78;
}

.zahnkosten-premium-page .zkp-table-wrap{
  padding:1.15rem 1.15rem 1.35rem;
}

.zahnkosten-premium-page .zkp-table{
  margin-bottom:0;
  border-radius:22px;
  overflow:hidden;
}

.zahnkosten-premium-page .zkp-table thead th{
  vertical-align:middle;
  font-weight:800;
  font-size:1.02rem;
  letter-spacing:-.03em;
  background:#edf4ff;
  color:#0f172a;
  border-color:rgba(15,23,42,.08);
  padding:1rem;
}

.zahnkosten-premium-page .zkp-table tbody td{
  vertical-align:middle;
  padding:1rem;
  border-color:rgba(15,23,42,.08);
  background:#fff;
}

.zahnkosten-premium-page .zkp-table tbody tr:nth-child(even) td{
  background:#fbfcff;
}

.zahnkosten-premium-page .zkp-col-case{
  font-weight:700;
  letter-spacing:-.02em;
  color:#0f172a;
}

.zahnkosten-premium-page .zkp-col-cost{
  font-weight:800;
  color:#0f172a;
  white-space:nowrap;
}

.zahnkosten-premium-page .zkp-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(13,110,253,.08), rgba(13,110,253,.03));
  border:1px solid rgba(13,110,253,.10);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
  color:#1d4ed8;
}

.zahnkosten-premium-page .zkp-table-note{
  margin-top:1rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  background:#0f172a;
  color:#fff;
  font-weight:700;
  letter-spacing:-.02em;
}

/* COMPARE */
.zahnkosten-premium-page .zkp-compare{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border-radius:38px;
  padding:34px;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
  color:#fff;
}

.zahnkosten-premium-page .zkp-compare-head h2{
  color:#fff;
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin-bottom:14px;
}

.zahnkosten-premium-page .zkp-compare-head p{
  color:rgba(255,255,255,.80);
  line-height:1.8;
  max-width:880px;
  margin:0 0 24px;
}

.zahnkosten-premium-page .zkp-compare-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:20px;
}

.zahnkosten-premium-page .zkp-compare-card{
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(10px);
  height:100%;
}

.zahnkosten-premium-page .zkp-compare-card .mini-label{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  margin-bottom:14px;
  font-size:.9rem;
  font-weight:700;
}

.zahnkosten-premium-page .zkp-compare-card.is-negative .mini-label{
  background:rgba(255,77,77,0.14);
  color:#ff8f8f;
}

.zahnkosten-premium-page .zkp-compare-card.is-positive .mini-label{
  background:rgba(173,255,47,0.14);
  color:#c9ff72;
}

.zahnkosten-premium-page .zkp-compare-card h3{
  color:#fff;
  margin-bottom:12px;
  letter-spacing:-.03em;
  font-size:1.5rem;
}

.zahnkosten-premium-page .zkp-compare-card p{
  color:rgba(255,255,255,0.78);
  line-height:1.75;
  margin-bottom:16px;
}

.zahnkosten-premium-page .zkp-compare-list{
  display:grid;
  gap:12px;
}

.zahnkosten-premium-page .zkp-compare-line{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,0.08);
}

.zahnkosten-premium-page .zkp-compare-line:first-child{
  border-top:0;
  padding-top:0;
}

.zahnkosten-premium-page .zkp-compare-line span{
  color:rgba(255,255,255,0.78);
}

.zahnkosten-premium-page .zkp-compare-line strong{
  flex-shrink:0;
  letter-spacing:-.02em;
}

.zahnkosten-premium-page .zkp-compare-card.is-negative strong{
  color:#ff8f8f;
}

.zahnkosten-premium-page .zkp-compare-card.is-positive strong{
  color:#c9ff72;
}

/* MINI CHECK */
.zahnkosten-premium-page .zkp-check-head{
  max-width:920px;
  margin-bottom:28px;
}

.zahnkosten-premium-page .zkp-check-head h2{
  font-size:clamp(2rem, 3.8vw, 3.5rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 12px;
  color:#0f172a;
}

.zahnkosten-premium-page .zkp-check-head p{
  margin:0;
  color:#667085;
  line-height:1.82;
}

.zahnkosten-premium-page .zkp-check-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.zahnkosten-premium-page .zkp-check-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:28px;
  padding:24px;
  box-shadow:0 16px 40px rgba(15,23,42,.06);
  transition:transform .24s ease, box-shadow .24s ease;
}

.zahnkosten-premium-page .zkp-check-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 42px rgba(15,23,42,.08);
}

.zahnkosten-premium-page .zkp-check-card h3{
  margin-bottom:12px;
  color:#0f172a;
  letter-spacing:-.03em;
  font-size:1.42rem;
}

.zahnkosten-premium-page .zkp-check-card p{
  color:#667085;
  line-height:1.76;
  margin-bottom:0;
}

.zahnkosten-premium-page .zkp-check-card .btn{
  border-radius:999px;
  padding:13px 18px;
  font-weight:700;
}

/* SEO CONTENT */
.zahnkosten-premium-page .zkp-seo-shell{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:32px;
  padding:32px;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.zahnkosten-premium-page .zkp-seo-shell h2{
  font-size:clamp(2rem, 4vw, 4rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin-bottom:16px;
}

.zahnkosten-premium-page .zkp-seo-shell h3{
  font-size:1.5rem;
  line-height:1.2;
  color:#0f172a;
  letter-spacing:-.03em;
  margin-top:28px;
  margin-bottom:12px;
}

.zahnkosten-premium-page .zkp-seo-shell p,
.zahnkosten-premium-page .zkp-seo-shell li{
  color:#667085;
  line-height:1.9;
  font-size:1.02rem;
}

.zahnkosten-premium-page .zkp-highlight-box{
  margin-top:26px;
  margin-bottom:26px;
  background:linear-gradient(180deg,#0b1322,#111d31);
  border-radius:26px;
  padding:26px;
  box-shadow:0 24px 60px rgba(15,23,42,0.18);
}

.zahnkosten-premium-page .zkp-highlight-box h4{
  color:#fff;
  font-size:1.5rem;
  margin-bottom:14px;
  letter-spacing:-.03em;
}

.zahnkosten-premium-page .zkp-highlight-box ul{
  padding-left:20px;
  margin-bottom:14px;
}

.zahnkosten-premium-page .zkp-highlight-box li{
  color:rgba(255,255,255,0.82);
}

.zahnkosten-premium-page .zkp-highlight-note{
  color:#c9ff72;
  margin-bottom:0;
  font-weight:700;
}

.zahnkosten-premium-page .zkp-cta-box{
  margin-top:26px;
  margin-bottom:8px;
  background:linear-gradient(180deg,#faf9f5,#f7f4ed);
  border:1px solid rgba(15,23,42,0.08);
  border-radius:26px;
  padding:24px;
}

.zahnkosten-premium-page .zkp-cta-box h4{
  color:#0f172a;
  font-size:1.45rem;
  margin-bottom:10px;
  letter-spacing:-.03em;
}

.zahnkosten-premium-page .zkp-cta-box p{
  margin-bottom:16px;
}

.zahnkosten-premium-page .zkp-cta-box .btn{
  border-radius:999px;
  padding:13px 20px;
  font-weight:700;
}

/* NEXT LINKS */
.zahnkosten-premium-page .zkp-next-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 26px 70px rgba(15,23,42,.10);
  padding:24px;
}

.zahnkosten-premium-page .zkp-next-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:22px;
  align-items:start;
  margin-bottom:18px;
}

.zahnkosten-premium-page .zkp-next-head h2{
  font-size:clamp(2rem, 3.7vw, 3.4rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 0;
  color:#0f172a;
}

.zahnkosten-premium-page .zkp-next-head p{
  color:#667085;
  line-height:1.76;
  margin:0;
}

.zahnkosten-premium-page .zkp-next-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}

.zahnkosten-premium-page .zkp-next-link{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:220px;
  text-decoration:none;
  color:#0f172a;
  background:
    radial-gradient(circle at top right, rgba(217,242,85,.16), transparent 22%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border:1px solid rgba(15,23,42,.08);
  border-radius:26px;
  padding:22px;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
  box-shadow:0 18px 40px rgba(15,23,42,.05);
}

.zahnkosten-premium-page .zkp-next-link:hover{
  transform:translateY(-4px);
  color:#0f172a;
  box-shadow:0 26px 46px rgba(15,23,42,.10);
  border-color:rgba(15,23,42,.12);
}

.zahnkosten-premium-page .zkp-next-link strong{
  display:block;
  max-width:88%;
  margin-bottom:10px;
  letter-spacing:-.03em;
  font-size:1.4rem;
  line-height:1.14;
  color:#0f172a;
}

.zahnkosten-premium-page .zkp-next-link span{
  display:block;
  color:#667085;
  font-size:.98rem;
  line-height:1.64;
}

.zahnkosten-premium-page .zkp-next-link-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(15,23,42,.08);
}

.zahnkosten-premium-page .zkp-next-link-cta{
  font-size:.95rem;
  font-weight:700;
  color:#0f172a;
}

/* FAQ */
.zahnkosten-premium-page .zkp-faq-shell{
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 24px 60px rgba(15,23,42,.08);
  overflow:hidden;
}

.zahnkosten-premium-page .zkp-faq-top{
  padding:1.65rem 1.5rem 1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.05), rgba(13,110,253,.015));
}

.zahnkosten-premium-page .zkp-faq-top h2{
  font-size:clamp(2rem, 3.6vw, 3.3rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 10px;
  color:#0f172a;
}

.zahnkosten-premium-page .zkp-faq-top p{
  margin:0;
  color:#667085;
  line-height:1.74;
}

.zahnkosten-premium-page .zkp-faq-inner{
  padding:1rem;
}

.zahnkosten-premium-page .zkp-faq-shell .accordion-item{
  border:1px solid rgba(15,23,42,.08) !important;
  border-radius:20px !important;
  overflow:hidden;
  margin-bottom:.9rem;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.zahnkosten-premium-page .zkp-faq-shell .accordion-button{
  padding:1.15rem 1.2rem;
  font-weight:800 !important;
  letter-spacing:-.03em;
  color:#0f172a;
  background:#fff;
}

.zahnkosten-premium-page .zkp-faq-shell .accordion-button:not(.collapsed){
  color:#163166;
  background:#edf4ff;
  box-shadow:none;
}

.zahnkosten-premium-page .zkp-faq-shell .accordion-body{
  color:#475569;
  line-height:1.7;
  background:#fff;
}

/* MODAL */
.zahnkosten-premium-page .zkp-video-modal .modal-dialog{
  max-width:1280px;
  padding:28px;
}

.zahnkosten-premium-page .zkp-video-modal .modal-content{
  background:transparent;
  border:0;
  box-shadow:none;
  position:relative;
}

.zahnkosten-premium-page .zkp-video-frame{
  position:relative;
  background:#f5f5f7;
  border-radius:34px;
  padding:28px;
  box-shadow:
    0 30px 80px rgba(15,23,42,.10),
    0 8px 24px rgba(15,23,42,.06);
}

.zahnkosten-premium-page .zkp-video-stage{
  overflow:hidden;
  border-radius:28px;
  background:#dfe3ea;
}

.zahnkosten-premium-page .zkp-video-stage video{
  width:100%;
  display:block;
  max-height:78vh;
  object-fit:contain;
  background:#dfe3ea;
}

.zahnkosten-premium-page .zkp-video-close{
  position:absolute;
  top:-12px;
  right:-12px;
  width:52px;
  height:52px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.92);
  color:#0f172a;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 14px 30px rgba(15,23,42,.14);
  z-index:30;
}

.zahnkosten-premium-page .zkp-video-close iconify-icon{
  font-size:1.35rem;
}

.zahnkosten-premium-page .modal-backdrop.show{
  opacity:.72 !important;
}

/* RESPONSIVE */
@media (max-width: 1199.98px){
  .zahnkosten-premium-page .zkp-split,
  .zahnkosten-premium-page .zkp-next-head{
    grid-template-columns:1fr;
  }
}

@media (max-width: 991.98px){
  .zahnkosten-premium-page .zkp-stage-media,
  .zahnkosten-premium-page .zkp-stage-poster{
    min-height:560px;
  }

  .zahnkosten-premium-page .zkp-stage-overlay{
    padding:2rem;
    align-items:flex-end;
    background:
      linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,.68) 50%, rgba(255,255,255,.92) 100%);
  }

  .zahnkosten-premium-page .zkp-stage-copy{
    max-width:100%;
  }

  .zahnkosten-premium-page .zkp-stage-copy h3{
    max-width:100%;
    line-height:.98;
  }

  .zahnkosten-premium-page .zkp-stage-play{
    width:74px;
    height:74px;
    right:1.3rem;
    bottom:1.3rem;
  }

  .zahnkosten-premium-page .zkp-compare-grid,
  .zahnkosten-premium-page .zkp-check-grid,
  .zahnkosten-premium-page .zkp-next-grid{
    grid-template-columns:1fr;
  }

  .zahnkosten-premium-page .zkp-video-modal .modal-dialog{
    padding:16px;
  }

  .zahnkosten-premium-page .zkp-video-frame{
    padding:14px;
    border-radius:24px;
  }

  .zahnkosten-premium-page .zkp-video-stage{
    border-radius:18px;
  }

  .zahnkosten-premium-page .zkp-video-close{
    top:-8px;
    right:-8px;
    width:46px;
    height:46px;
  }
}

@media (max-width: 767.98px){
  .zahnkosten-premium-page .zkp-hero{
    padding:108px 0 68px;
  }

  .zahnkosten-premium-page .zkp-hero h1{
    font-size:clamp(2.2rem, 10vw, 3.5rem);
  }

  .zahnkosten-premium-page .zkp-hero p{
    font-size:.98rem;
    line-height:1.68;
  }

  .zahnkosten-premium-page .zkp-stage-section,
  .zahnkosten-premium-page .zkp-section{
    padding-bottom:58px;
  }

  .zahnkosten-premium-page .zkp-stage-media,
  .zahnkosten-premium-page .zkp-stage-poster{
    min-height:500px;
    border-radius:24px;
  }

  .zahnkosten-premium-page .zkp-stage-overlay{
    padding:1.35rem;
  }

  .zahnkosten-premium-page .zkp-stage-label{
    min-height:36px;
    padding:0 14px;
    font-size:.76rem;
  }

  .zahnkosten-premium-page .zkp-stage-copy h3{
    font-size:clamp(1.9rem, 9vw, 2.8rem);
    line-height:1;
  }

  .zahnkosten-premium-page .zkp-stage-copy p{
    font-size:.95rem;
    line-height:1.58;
  }

  .zahnkosten-premium-page .zkp-stage-actions{
    flex-direction:column;
  }

  .zahnkosten-premium-page .zkp-stage-actions .btn{
    width:100%;
  }

  .zahnkosten-premium-page .zkp-stage-play{
    width:64px;
    height:64px;
    right:1rem;
    bottom:1rem;
  }

  .zahnkosten-premium-page .zkp-stage-play iconify-icon{
    font-size:1.7rem;
  }

  .zahnkosten-premium-page .zkp-stage-shell,
  .zahnkosten-premium-page .zkp-seo-shell,
  .zahnkosten-premium-page .zkp-next-shell,
  .zahnkosten-premium-page .zkp-compare,
  .zahnkosten-premium-page .zkp-faq-top,
  .zahnkosten-premium-page .zkp-faq-inner{
    padding-left:20px;
    padding-right:20px;
  }

  .zahnkosten-premium-page .zkp-split-card,
  .zahnkosten-premium-page .zkp-mini-card,
  .zahnkosten-premium-page .zkp-check-card,
  .zahnkosten-premium-page .zkp-seo-shell,
  .zahnkosten-premium-page .zkp-next-shell,
  .zahnkosten-premium-page .zkp-compare,
  .zahnkosten-premium-page .zkp-table-wrap{
    padding:22px;
  }

  .zahnkosten-premium-page .zkp-table thead th,
  .zahnkosten-premium-page .zkp-table tbody td{
    padding:.85rem .8rem;
    font-size:.95rem;
  }
}

@media (max-width: 479.98px){
  .zahnkosten-premium-page .zkp-stage-media,
  .zahnkosten-premium-page .zkp-stage-poster{
    min-height:430px;
  }

  .zahnkosten-premium-page .zkp-video-modal .modal-dialog{
    padding:10px;
  }

  .zahnkosten-premium-page .zkp-video-frame{
    padding:10px;
    border-radius:18px;
  }

  .zahnkosten-premium-page .zkp-video-stage{
    border-radius:14px;
  }
}
/* =========================================================
   PKV KOSTEN – PREMIUM VIDEO PAGE
   safe namespace: .pkvkosten-premium-page + .pkp-*
========================================================= */

.pkvkosten-premium-page{
  background:
    radial-gradient(circle at 12% 0%, rgba(217,242,85,.08), transparent 22%),
    radial-gradient(circle at 88% 10%, rgba(59,130,246,.06), transparent 22%),
    #f5f3ee;
  color:#0f172a;
}

/* HERO */
.pkvkosten-premium-page .pkp-hero{
  position:relative;
  overflow:hidden;
  padding:122px 0 82px;
  background:
    radial-gradient(circle at 18% 18%, rgba(217,242,85,.10), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.10), transparent 24%),
    linear-gradient(180deg, #09111f 0%, #101a2d 100%);
  color:#fff;
}

.pkvkosten-premium-page .pkp-hero::before{
  content:"";
  position:absolute;
  right:-140px;
  bottom:-170px;
  width:430px;
  height:430px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(217,242,85,.12), transparent 66%);
  pointer-events:none;
}

.pkvkosten-premium-page .pkp-hero__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  font-weight:700;
  margin-bottom:22px;
  color:#fff;
}

.pkvkosten-premium-page .pkp-hero h1{
  font-size:clamp(2.8rem, 6vw, 5.9rem);
  line-height:.94;
  letter-spacing:-.055em;
  margin-bottom:18px;
  color:#fff;
}

.pkvkosten-premium-page .pkp-hero p{
  max-width:860px;
  margin:0 auto;
  color:rgba(255,255,255,.80);
  font-size:1.05rem;
  line-height:1.82;
}

.pkvkosten-premium-page .pkp-hero__chips{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.pkvkosten-premium-page .pkp-hero__chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-weight:600;
}

/* SECTION BASICS */
.pkvkosten-premium-page .pkp-section{
  padding:74px 0;
}

.pkvkosten-premium-page .pkp-section-tight{
  padding-top:0;
}

.pkvkosten-premium-page .pkp-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.pkvkosten-premium-page .pkp-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:#eef3d5;
  color:#2d3519;
  border:1px solid rgba(15,23,42,.08);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.pkvkosten-premium-page .pkp-pill--dark{
  background:rgba(255,255,255,.10);
  color:#fff;
  border-color:rgba(255,255,255,.14);
}

/* VIDEO STAGE */
.pkvkosten-premium-page .pkp-stage-section{
  margin-top:-34px;
  position:relative;
  z-index:3;
  padding-bottom:72px;
}

.pkvkosten-premium-page .pkp-stage-head{
  max-width:960px;
  margin:0 auto 22px;
}

.pkvkosten-premium-page .pkp-stage-head h2{
  font-size:clamp(2.1rem, 4.2vw, 4.2rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.pkvkosten-premium-page .pkp-stage-head p{
  margin:0 auto;
  max-width:820px;
  color:#667085;
  line-height:1.84;
}

.pkvkosten-premium-page .pkp-stage-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 30px 90px rgba(15,23,42,.12);
  padding:20px;
}

.pkvkosten-premium-page .pkp-stage-media{
  position:relative;
  overflow:hidden;
  min-height:680px;
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(135deg, #e5e7eb 0%, #f8fafc 38%, #d59a63 100%);
  box-shadow:0 26px 60px rgba(15,23,42,.10);
}

.pkvkosten-premium-page .pkp-stage-poster{
  width:100%;
  height:100%;
  min-height:680px;
  object-fit:cover;
  display:block;
}

.pkvkosten-premium-page .pkp-stage-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  padding:3rem;
  background:
    linear-gradient(90deg, rgba(255,255,255,.90) 0%, rgba(255,255,255,.76) 28%, rgba(255,255,255,.20) 58%, rgba(15,23,42,.06) 100%);
  z-index:2;
}

.pkvkosten-premium-page .pkp-stage-copy{
  max-width:560px;
}

.pkvkosten-premium-page .pkp-stage-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 10px 24px rgba(15,23,42,.08);
  font-size:.86rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin-bottom:1rem;
}

.pkvkosten-premium-page .pkp-stage-copy h3{
  font-size:clamp(2.3rem, 4.8vw, 5rem);
  line-height:.92;
  letter-spacing:-.05em;
  margin-bottom:1rem;
  max-width:10ch;
  color:#0f172a;
}

.pkvkosten-premium-page .pkp-stage-copy p{
  font-size:1.05rem;
  line-height:1.75;
  color:#334155;
  max-width:54ch;
  margin-bottom:1.35rem;
}

.pkvkosten-premium-page .pkp-stage-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
}

.pkvkosten-premium-page .pkp-stage-actions .btn{
  min-height:54px;
  padding-inline:1.35rem;
  border-radius:999px;
  font-weight:700;
}

.pkvkosten-premium-page .pkp-stage-play{
  position:absolute;
  right:2rem;
  bottom:2rem;
  width:92px;
  height:92px;
  border-radius:50%;
  border:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.86);
  color:#fff;
  text-decoration:none;
  box-shadow:0 22px 44px rgba(15,23,42,.28);
  z-index:3;
  transition:transform .25s ease, box-shadow .25s ease;
}

.pkvkosten-premium-page .pkp-stage-play:hover{
  color:#fff;
  transform:scale(1.04);
  box-shadow:0 28px 50px rgba(15,23,42,.34);
}

.pkvkosten-premium-page .pkp-stage-play iconify-icon{
  font-size:2.2rem;
  margin-left:.15rem;
}

.pkvkosten-premium-page .pkp-stage-bottom{
  margin-top:1.2rem;
}

.pkvkosten-premium-page .pkp-mini-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  padding:24px;
  box-shadow:0 14px 36px rgba(15,23,42,.05);
  height:100%;
  transition:transform .24s ease, box-shadow .24s ease;
}

.pkvkosten-premium-page .pkp-mini-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 38px rgba(15,23,42,.08);
}

.pkvkosten-premium-page .pkp-mini-card h3{
  font-size:1.45rem;
  letter-spacing:-.03em;
  color:#0f172a;
  margin-bottom:12px;
}

.pkvkosten-premium-page .pkp-mini-card p{
  margin:0;
  color:#667085;
  line-height:1.76;
}

/* SPLIT */
.pkvkosten-premium-page .pkp-split{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:20px;
  align-items:stretch;
}

.pkvkosten-premium-page .pkp-split-card{
  border-radius:30px;
  padding:28px;
  height:100%;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.pkvkosten-premium-page .pkp-split-card h2{
  font-size:clamp(1.9rem, 3.4vw, 3.2rem);
  line-height:.98;
  letter-spacing:-.04em;
  margin-bottom:14px;
}

.pkvkosten-premium-page .pkp-split-card p,
.pkvkosten-premium-page .pkp-split-card li{
  line-height:1.8;
}

.pkvkosten-premium-page .pkp-split-card--soft{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
}

.pkvkosten-premium-page .pkp-split-card--soft p,
.pkvkosten-premium-page .pkp-split-card--soft li{
  color:#667085;
}

.pkvkosten-premium-page .pkp-split-card--soft ul{
  margin:0;
  padding-left:18px;
}

.pkvkosten-premium-page .pkp-split-card--dark{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
}

.pkvkosten-premium-page .pkp-split-card--dark h2{
  color:#fff;
}

.pkvkosten-premium-page .pkp-split-card--dark p{
  color:rgba(255,255,255,.80);
}

.pkvkosten-premium-page .pkp-checklist{
  display:grid;
  gap:12px;
  margin-top:18px;
}

.pkvkosten-premium-page .pkp-checkline{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.08);
}

.pkvkosten-premium-page .pkp-checkline:first-child{
  border-top:0;
  padding-top:0;
}

.pkvkosten-premium-page .pkp-checkline span{
  color:rgba(255,255,255,.80);
}

.pkvkosten-premium-page .pkp-checkline strong{
  color:#c9ff72;
  flex-shrink:0;
  letter-spacing:-.02em;
}

/* TABLE */
.pkvkosten-premium-page .pkp-table-shell{
  border-radius:32px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 28px 70px rgba(15,23,42,.10);
  overflow:hidden;
}

.pkvkosten-premium-page .pkp-table-top{
  padding:1.45rem 1.5rem 1.1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.06), rgba(13,110,253,.02));
}

.pkvkosten-premium-page .pkp-table-top h2{
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin:14px 0 12px;
}

.pkvkosten-premium-page .pkp-table-top p{
  margin:0;
  max-width:920px;
  color:#667085;
  line-height:1.78;
}

.pkvkosten-premium-page .pkp-table-wrap{
  padding:1.15rem 1.15rem 1.35rem;
}

.pkvkosten-premium-page .pkp-table{
  margin-bottom:0;
  border-radius:22px;
  overflow:hidden;
}

.pkvkosten-premium-page .pkp-table thead th{
  vertical-align:middle;
  font-weight:800;
  font-size:1.02rem;
  letter-spacing:-.03em;
  background:#edf4ff;
  color:#0f172a;
  border-color:rgba(15,23,42,.08);
  padding:1rem;
}

.pkvkosten-premium-page .pkp-table tbody td{
  vertical-align:middle;
  padding:1rem;
  border-color:rgba(15,23,42,.08);
  background:#fff;
}

.pkvkosten-premium-page .pkp-table tbody tr:nth-child(even) td{
  background:#fbfcff;
}

.pkvkosten-premium-page .pkp-col-case{
  font-weight:700;
  letter-spacing:-.02em;
  color:#0f172a;
}

.pkvkosten-premium-page .pkp-col-cost{
  font-weight:800;
  color:#0f172a;
  white-space:nowrap;
}

.pkvkosten-premium-page .pkp-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(13,110,253,.08), rgba(13,110,253,.03));
  border:1px solid rgba(13,110,253,.10);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.02em;
  color:#1d4ed8;
}

.pkvkosten-premium-page .pkp-table-note{
  margin-top:1rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  background:#0f172a;
  color:#fff;
  font-weight:700;
  letter-spacing:-.02em;
}

/* COMPARE */
.pkvkosten-premium-page .pkp-compare{
  background:
    radial-gradient(circle at 10% 15%, rgba(217,242,85,.14), transparent 22%),
    linear-gradient(180deg, #0b1322 0%, #111d31 100%);
  border-radius:38px;
  padding:34px;
  box-shadow:0 34px 86px rgba(15,23,42,.18);
  color:#fff;
}

.pkvkosten-premium-page .pkp-compare-head h2{
  color:#fff;
  font-size:clamp(2rem, 3.8vw, 3.6rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin-bottom:14px;
}

.pkvkosten-premium-page .pkp-compare-head p{
  color:rgba(255,255,255,.80);
  line-height:1.8;
  max-width:880px;
  margin:0 0 24px;
}

.pkvkosten-premium-page .pkp-compare-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:20px;
}

.pkvkosten-premium-page .pkp-compare-card{
  border-radius:28px;
  padding:24px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(10px);
  height:100%;
}

.pkvkosten-premium-page .pkp-compare-card .mini-label{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  margin-bottom:14px;
  font-size:.9rem;
  font-weight:700;
}

.pkvkosten-premium-page .pkp-compare-card.is-negative .mini-label{
  background:rgba(255,77,77,0.14);
  color:#ff8f8f;
}

.pkvkosten-premium-page .pkp-compare-card.is-positive .mini-label{
  background:rgba(173,255,47,0.14);
  color:#c9ff72;
}

.pkvkosten-premium-page .pkp-compare-card h3{
  color:#fff;
  margin-bottom:12px;
  letter-spacing:-.03em;
  font-size:1.5rem;
}

.pkvkosten-premium-page .pkp-compare-card p{
  color:rgba(255,255,255,0.78);
  line-height:1.75;
  margin-bottom:16px;
}

.pkvkosten-premium-page .pkp-compare-list{
  display:grid;
  gap:12px;
}

.pkvkosten-premium-page .pkp-compare-line{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,0.08);
}

.pkvkosten-premium-page .pkp-compare-line:first-child{
  border-top:0;
  padding-top:0;
}

.pkvkosten-premium-page .pkp-compare-line span{
  color:rgba(255,255,255,0.78);
}

.pkvkosten-premium-page .pkp-compare-line strong{
  flex-shrink:0;
  letter-spacing:-.02em;
}

.pkvkosten-premium-page .pkp-compare-card.is-negative strong{
  color:#ff8f8f;
}

.pkvkosten-premium-page .pkp-compare-card.is-positive strong{
  color:#c9ff72;
}

/* MINI CHECK */
.pkvkosten-premium-page .pkp-check-head{
  max-width:920px;
  margin-bottom:28px;
}

.pkvkosten-premium-page .pkp-check-head h2{
  font-size:clamp(2rem, 3.8vw, 3.5rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 12px;
  color:#0f172a;
}

.pkvkosten-premium-page .pkp-check-head p{
  margin:0;
  color:#667085;
  line-height:1.82;
}

.pkvkosten-premium-page .pkp-check-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.pkvkosten-premium-page .pkp-check-card{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:28px;
  padding:24px;
  box-shadow:0 16px 40px rgba(15,23,42,.06);
  transition:transform .24s ease, box-shadow .24s ease;
}

.pkvkosten-premium-page .pkp-check-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 42px rgba(15,23,42,.08);
}

.pkvkosten-premium-page .pkp-check-card h3{
  margin-bottom:12px;
  color:#0f172a;
  letter-spacing:-.03em;
  font-size:1.42rem;
}

.pkvkosten-premium-page .pkp-check-card p{
  color:#667085;
  line-height:1.76;
  margin-bottom:0;
}

.pkvkosten-premium-page .pkp-check-card .btn{
  border-radius:999px;
  padding:13px 18px;
  font-weight:700;
}

/* SEO CONTENT */
.pkvkosten-premium-page .pkp-seo-shell{
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:32px;
  padding:32px;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.pkvkosten-premium-page .pkp-seo-shell h2{
  font-size:clamp(2rem, 4vw, 4rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#0f172a;
  margin-bottom:16px;
}

.pkvkosten-premium-page .pkp-seo-shell h3{
  font-size:1.5rem;
  line-height:1.2;
  color:#0f172a;
  letter-spacing:-.03em;
  margin-top:28px;
  margin-bottom:12px;
}

.pkvkosten-premium-page .pkp-seo-shell p,
.pkvkosten-premium-page .pkp-seo-shell li{
  color:#667085;
  line-height:1.9;
  font-size:1.02rem;
}

.pkvkosten-premium-page .pkp-highlight-box{
  margin-top:26px;
  margin-bottom:26px;
  background:linear-gradient(180deg,#0b1322,#111d31);
  border-radius:26px;
  padding:26px;
  box-shadow:0 24px 60px rgba(15,23,42,0.18);
}

.pkvkosten-premium-page .pkp-highlight-box h4{
  color:#fff;
  font-size:1.5rem;
  margin-bottom:14px;
  letter-spacing:-.03em;
}

.pkvkosten-premium-page .pkp-highlight-box ul{
  padding-left:20px;
  margin-bottom:14px;
}

.pkvkosten-premium-page .pkp-highlight-box li{
  color:rgba(255,255,255,0.82);
}

.pkvkosten-premium-page .pkp-highlight-note{
  color:#c9ff72;
  margin-bottom:0;
  font-weight:700;
}

.pkvkosten-premium-page .pkp-cta-box{
  margin-top:26px;
  margin-bottom:8px;
  background:linear-gradient(180deg,#faf9f5,#f7f4ed);
  border:1px solid rgba(15,23,42,0.08);
  border-radius:26px;
  padding:24px;
}

.pkvkosten-premium-page .pkp-cta-box h4{
  color:#0f172a;
  font-size:1.45rem;
  margin-bottom:10px;
  letter-spacing:-.03em;
}

.pkvkosten-premium-page .pkp-cta-box p{
  margin-bottom:16px;
}

.pkvkosten-premium-page .pkp-cta-box .btn{
  border-radius:999px;
  padding:13px 20px;
  font-weight:700;
}

/* NEXT LINKS */
.pkvkosten-premium-page .pkp-next-shell{
  background:rgba(255,255,255,.80);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.44);
  border-radius:34px;
  box-shadow:0 26px 70px rgba(15,23,42,.10);
  padding:24px;
}

.pkvkosten-premium-page .pkp-next-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:22px;
  align-items:start;
  margin-bottom:18px;
}

.pkvkosten-premium-page .pkp-next-head h2{
  font-size:clamp(2rem, 3.7vw, 3.4rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 0;
  color:#0f172a;
}

.pkvkosten-premium-page .pkp-next-head p{
  color:#667085;
  line-height:1.76;
  margin:0;
}

.pkvkosten-premium-page .pkp-next-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}

.pkvkosten-premium-page .pkp-next-link{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:220px;
  text-decoration:none;
  color:#0f172a;
  background:
    radial-gradient(circle at top right, rgba(217,242,85,.16), transparent 22%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border:1px solid rgba(15,23,42,.08);
  border-radius:26px;
  padding:22px;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
  box-shadow:0 18px 40px rgba(15,23,42,.05);
}

.pkvkosten-premium-page .pkp-next-link:hover{
  transform:translateY(-4px);
  color:#0f172a;
  box-shadow:0 26px 46px rgba(15,23,42,.10);
  border-color:rgba(15,23,42,.12);
}

.pkvkosten-premium-page .pkp-next-link strong{
  display:block;
  max-width:88%;
  margin-bottom:10px;
  letter-spacing:-.03em;
  font-size:1.4rem;
  line-height:1.14;
  color:#0f172a;
}

.pkvkosten-premium-page .pkp-next-link span{
  display:block;
  color:#667085;
  font-size:.98rem;
  line-height:1.64;
}

.pkvkosten-premium-page .pkp-next-link-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(15,23,42,.08);
}

.pkvkosten-premium-page .pkp-next-link-cta{
  font-size:.95rem;
  font-weight:700;
  color:#0f172a;
}

/* FAQ */
.pkvkosten-premium-page .pkp-faq-shell{
  border-radius:30px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fafbfc 100%);
  box-shadow:0 24px 60px rgba(15,23,42,.08);
  overflow:hidden;
}

.pkvkosten-premium-page .pkp-faq-top{
  padding:1.65rem 1.5rem 1rem;
  border-bottom:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg, rgba(13,110,253,.05), rgba(13,110,253,.015));
}

.pkvkosten-premium-page .pkp-faq-top h2{
  font-size:clamp(2rem, 3.6vw, 3.3rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:14px 0 10px;
  color:#0f172a;
}

.pkvkosten-premium-page .pkp-faq-top p{
  margin:0;
  color:#667085;
  line-height:1.74;
}

.pkvkosten-premium-page .pkp-faq-inner{
  padding:1rem;
}

.pkvkosten-premium-page .pkp-faq-shell .accordion-item{
  border:1px solid rgba(15,23,42,.08) !important;
  border-radius:20px !important;
  overflow:hidden;
  margin-bottom:.9rem;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.pkvkosten-premium-page .pkp-faq-shell .accordion-button{
  padding:1.15rem 1.2rem;
  font-weight:800 !important;
  letter-spacing:-.03em;
  color:#0f172a;
  background:#fff;
}

.pkvkosten-premium-page .pkp-faq-shell .accordion-button:not(.collapsed){
  color:#163166;
  background:#edf4ff;
  box-shadow:none;
}

.pkvkosten-premium-page .pkp-faq-shell .accordion-body{
  color:#475569;
  line-height:1.7;
  background:#fff;
}

/* MODAL */
.pkvkosten-premium-page .pkp-video-modal .modal-dialog{
  max-width:1280px;
  padding:28px;
}

.pkvkosten-premium-page .pkp-video-modal .modal-content{
  background:transparent;
  border:0;
  box-shadow:none;
  position:relative;
}

.pkvkosten-premium-page .pkp-video-frame{
  position:relative;
  background:#f5f5f7;
  border-radius:34px;
  padding:28px;
  box-shadow:
    0 30px 80px rgba(15,23,42,.10),
    0 8px 24px rgba(15,23,42,.06);
}

.pkvkosten-premium-page .pkp-video-stage{
  overflow:hidden;
  border-radius:28px;
  background:#dfe3ea;
}

.pkvkosten-premium-page .pkp-video-stage video{
  width:100%;
  display:block;
  max-height:78vh;
  object-fit:contain;
  background:#dfe3ea;
}

.pkvkosten-premium-page .pkp-video-close{
  position:absolute;
  top:-12px;
  right:-12px;
  width:52px;
  height:52px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.92);
  color:#0f172a;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 14px 30px rgba(15,23,42,.14);
  z-index:30;
}

.pkvkosten-premium-page .pkp-video-close iconify-icon{
  font-size:1.35rem;
}

.pkvkosten-premium-page .modal-backdrop.show{
  opacity:.72 !important;
}

/* RESPONSIVE */
@media (max-width: 1199.98px){
  .pkvkosten-premium-page .pkp-split,
  .pkvkosten-premium-page .pkp-next-head{
    grid-template-columns:1fr;
  }
}

@media (max-width: 991.98px){
  .pkvkosten-premium-page .pkp-stage-media,
  .pkvkosten-premium-page .pkp-stage-poster{
    min-height:560px;
  }

  .pkvkosten-premium-page .pkp-stage-overlay{
    padding:2rem;
    align-items:flex-end;
    background:
      linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,.68) 50%, rgba(255,255,255,.92) 100%);
  }

  .pkvkosten-premium-page .pkp-stage-copy{
    max-width:100%;
  }

  .pkvkosten-premium-page .pkp-stage-copy h3{
    max-width:100%;
    line-height:.98;
  }

  .pkvkosten-premium-page .pkp-stage-play{
    width:74px;
    height:74px;
    right:1.3rem;
    bottom:1.3rem;
  }

  .pkvkosten-premium-page .pkp-compare-grid,
  .pkvkosten-premium-page .pkp-check-grid,
  .pkvkosten-premium-page .pkp-next-grid{
    grid-template-columns:1fr;
  }

  .pkvkosten-premium-page .pkp-video-modal .modal-dialog{
    padding:16px;
  }

  .pkvkosten-premium-page .pkp-video-frame{
    padding:14px;
    border-radius:24px;
  }

  .pkvkosten-premium-page .pkp-video-stage{
    border-radius:18px;
  }

  .pkvkosten-premium-page .pkp-video-close{
    top:-8px;
    right:-8px;
    width:46px;
    height:46px;
  }
}

@media (max-width: 767.98px){
  .pkvkosten-premium-page .pkp-hero{
    padding:108px 0 68px;
  }

  .pkvkosten-premium-page .pkp-hero h1{
    font-size:clamp(2.2rem, 10vw, 3.5rem);
  }

  .pkvkosten-premium-page .pkp-hero p{
    font-size:.98rem;
    line-height:1.68;
  }

  .pkvkosten-premium-page .pkp-stage-section,
  .pkvkosten-premium-page .pkp-section{
    padding-bottom:58px;
  }

  .pkvkosten-premium-page .pkp-stage-media,
  .pkvkosten-premium-page .pkp-stage-poster{
    min-height:500px;
    border-radius:24px;
  }

  .pkvkosten-premium-page .pkp-stage-overlay{
    padding:1.35rem;
  }

  .pkvkosten-premium-page .pkp-stage-label{
    min-height:36px;
    padding:0 14px;
    font-size:.76rem;
  }

  .pkvkosten-premium-page .pkp-stage-copy h3{
    font-size:clamp(1.9rem, 9vw, 2.8rem);
    line-height:1;
  }

  .pkvkosten-premium-page .pkp-stage-copy p{
    font-size:.95rem;
    line-height:1.58;
  }

  .pkvkosten-premium-page .pkp-stage-actions{
    flex-direction:column;
  }

  .pkvkosten-premium-page .pkp-stage-actions .btn{
    width:100%;
  }

  .pkvkosten-premium-page .pkp-stage-play{
    width:64px;
    height:64px;
    right:1rem;
    bottom:1rem;
  }

  .pkvkosten-premium-page .pkp-stage-play iconify-icon{
    font-size:1.7rem;
  }

  .pkvkosten-premium-page .pkp-stage-shell,
  .pkvkosten-premium-page .pkp-seo-shell,
  .pkvkosten-premium-page .pkp-next-shell,
  .pkvkosten-premium-page .pkp-compare,
  .pkvkosten-premium-page .pkp-faq-top,
  .pkvkosten-premium-page .pkp-faq-inner{
    padding-left:20px;
    padding-right:20px;
  }

  .pkvkosten-premium-page .pkp-split-card,
  .pkvkosten-premium-page .pkp-mini-card,
  .pkvkosten-premium-page .pkp-check-card,
  .pkvkosten-premium-page .pkp-seo-shell,
  .pkvkosten-premium-page .pkp-next-shell,
  .pkvkosten-premium-page .pkp-compare,
  .pkvkosten-premium-page .pkp-table-wrap{
    padding:22px;
  }

  .pkvkosten-premium-page .pkp-table thead th,
  .pkvkosten-premium-page .pkp-table tbody td{
    padding:.85rem .8rem;
    font-size:.95rem;
  }
}

@media (max-width: 479.98px){
  .pkvkosten-premium-page .pkp-stage-media,
  .pkvkosten-premium-page .pkp-stage-poster{
    min-height:430px;
  }

  .pkvkosten-premium-page .pkp-video-modal .modal-dialog{
    padding:10px;
  }

  .pkvkosten-premium-page .pkp-video-frame{
    padding:10px;
    border-radius:18px;
  }

  .pkvkosten-premium-page .pkp-video-stage{
    border-radius:14px;
  }
}
/* =========================================================
   GLOBAL CINEMA / VIDEO SECTION
   Einheitlicher Standard für alle Unterseiten
   basiert auf dem Köln-Referenzblock
========================================================= */

.koeln-cinema-block {
  margin-top: 1.5rem;
}

.koeln-cinema-media {
  position: relative;
  overflow: hidden;
  min-height: 680px;
  border-radius: 38px;
  background: linear-gradient(135deg, #e5e7eb 0%, #f8fafc 38%, #d59a63 100%);
  box-shadow: 0 34px 90px rgba(15, 23, 42, 0.14);
  border: 1px solid rgba(15, 23, 42, 0.08);
  isolation: isolate;
}

.koeln-cinema-video {
  width: 100%;
  height: 100%;
  min-height: 680px;
  object-fit: cover;
  display: block;
}

.koeln-cinema-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  padding: 3rem;
  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.90) 0%,
      rgba(255, 255, 255, 0.74) 28%,
      rgba(255, 255, 255, 0.20) 56%,
      rgba(15, 23, 42, 0.06) 100%
    );
  z-index: 2;
}

.koeln-cinema-copy {
  max-width: 560px;
}

.koeln-cinema-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  font-size: 0.86rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin-bottom: 1rem;
}

.koeln-cinema-copy h2 {
  font-size: clamp(2.4rem, 4.6vw, 5rem);
  line-height: 0.92;
  margin-bottom: 1rem;
  max-width: 10ch;
  color: #0f172a;
}

.koeln-cinema-copy p {
  font-size: 1.08rem;
  line-height: 1.75;
  color: #334155;
  max-width: 52ch;
  margin-bottom: 1.35rem;
}

.koeln-cinema-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.koeln-cinema-actions .btn {
  min-height: 54px;
  padding-inline: 1.4rem;
}

.koeln-cinema-play {
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(15, 23, 42, 0.86);
  color: #fff;
  text-decoration: none;
  box-shadow: 0 22px 44px rgba(15, 23, 42, 0.28);
  z-index: 3;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.koeln-cinema-play:hover {
  color: #fff;
  transform: scale(1.04);
  box-shadow: 0 28px 50px rgba(15, 23, 42, 0.34);
}

.koeln-cinema-play iconify-icon {
  font-size: 2.2rem;
  margin-left: 0.15rem;
}

.koeln-cinema-bottom {
  margin-top: 1.2rem;
}

/* Optional: wenn darunter Standard-Karten stehen */
.koeln-cinema-bottom .kosten-card,
.koeln-cinema-bottom .pkp-mini-card,
.koeln-cinema-bottom .pkosten-mini-card,
.koeln-cinema-bottom .vkp-mini-card,
.koeln-cinema-bottom .zkp-mini-card,
.koeln-cinema-bottom .fkp-mini-card {
  height: 100%;
}

/* =========================
   GLOBAL VIDEO MODAL
========================= */

.video-modal .modal-dialog {
  max-width: 1280px;
  padding: 28px;
}

.video-modal .modal-content {
  background: transparent;
  border: 0;
  box-shadow: none;
  position: relative;
}

.video-modal .modal-body {
  padding: 0;
}

.video-modal-frame {
  position: relative;
  background: #f5f5f7;
  border-radius: 34px;
  padding: 28px;
  box-shadow:
    0 30px 80px rgba(15, 23, 42, 0.10),
    0 8px 24px rgba(15, 23, 42, 0.06);
}

.video-modal-stage {
  overflow: hidden;
  border-radius: 28px;
  background: #dfe3ea;
}

.video-modal-stage video {
  width: 100%;
  display: block;
  max-height: 78vh;
  object-fit: contain;
  background: #dfe3ea;
}

.video-modal-close {
  position: absolute;
  top: -12px;
  right: -12px;
  width: 52px;
  height: 52px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  color: #0f172a;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.14);
  z-index: 30;
}

.video-modal-close iconify-icon {
  font-size: 1.35rem;
}

.modal-backdrop.show {
  opacity: 0.72 !important;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1199.98px) {
  .koeln-cinema-copy h2 {
    font-size: clamp(2.2rem, 4vw, 4.1rem);
    max-width: 12ch;
  }

  .koeln-cinema-copy p {
    font-size: 1rem;
    max-width: 44ch;
  }
}

@media (max-width: 991.98px) {
  .koeln-cinema-media,
  .koeln-cinema-video {
    min-height: 520px;
  }

  .koeln-cinema-overlay {
    align-items: flex-end;
    padding: 2rem 1.5rem;
    background:
      linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.12) 0%,
        rgba(255, 255, 255, 0.68) 50%,
        rgba(255, 255, 255, 0.92) 100%
      );
  }

  .koeln-cinema-copy {
    max-width: 100%;
  }

  .koeln-cinema-copy h2 {
    font-size: clamp(2rem, 6vw, 3.3rem);
    max-width: 100%;
    line-height: 0.98;
  }

  .koeln-cinema-copy p {
    max-width: 100%;
    font-size: 0.98rem;
    line-height: 1.6;
  }

  .koeln-cinema-actions {
    width: 100%;
  }

  .koeln-cinema-actions .btn {
    min-height: 50px;
  }

  .koeln-cinema-play {
    width: 74px;
    height: 74px;
    right: 1.25rem;
    bottom: 1.25rem;
  }

  .video-modal .modal-dialog {
    padding: 16px;
  }

  .video-modal-frame {
    padding: 14px;
    border-radius: 24px;
  }

  .video-modal-stage {
    border-radius: 18px;
  }

  .video-modal-close {
    top: -8px;
    right: -8px;
    width: 46px;
    height: 46px;
  }
}

@media (max-width: 767.98px) {
  .koeln-cinema-media,
  .koeln-cinema-video {
    min-height: 460px;
    border-radius: 24px;
  }

  .koeln-cinema-overlay {
    padding: 1.25rem;
    background:
      linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.08) 0%,
        rgba(255, 255, 255, 0.62) 48%,
        rgba(255, 255, 255, 0.92) 100%
      );
  }

  .koeln-cinema-kicker {
    min-height: 36px;
    padding: 0 14px;
    font-size: 0.76rem;
  }

  .koeln-cinema-copy h2 {
    font-size: clamp(1.8rem, 9vw, 2.7rem);
    line-height: 1;
    margin-bottom: 0.75rem;
  }

  .koeln-cinema-copy p {
    font-size: 0.95rem;
    line-height: 1.55;
    margin-bottom: 1rem;
  }

  .koeln-cinema-actions {
    flex-direction: column;
  }

  .koeln-cinema-actions .btn {
    width: 100%;
  }

  .koeln-cinema-play {
    width: 64px;
    height: 64px;
    right: 1rem;
    bottom: 1rem;
  }

  .koeln-cinema-play iconify-icon {
    font-size: 1.7rem;
  }
}

@media (max-width: 479.98px) {
  .koeln-cinema-media,
  .koeln-cinema-video {
    min-height: 420px;
  }

  .video-modal .modal-dialog {
    padding: 10px;
  }

  .video-modal-frame {
    padding: 10px;
    border-radius: 18px;
  }

  .video-modal-stage {
    border-radius: 14px;
  }
}