.elementor-kit-7{--e-global-color-primary:#B21F26;--e-global-color-secondary:#221E19;--e-global-color-text:#544C42;--e-global-color-accent:#F9E7E7;--e-global-color-f205017:#FBF9F6;--e-global-color-fa55c31:#FFFFFF;--e-global-color-c695baa:#8F181E;--e-global-color-c1698f9:#7F161C;--e-global-color-aafb758:#EFCDCD;--e-global-color-2cb4073:#EAE4DB;--e-global-color-bcdcf26:#6B6259;--e-global-color-6bec4bd:#3D362E;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-weight:800;--e-global-typography-text-font-family:"Instrument Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Instrument Sans";--e-global-typography-accent-font-weight:600;color:var( --e-global-color-text );font-family:"Instrument Sans", Sans-serif;font-size:17px;font-weight:400;line-height:1.65em;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-primary );}.elementor-kit-7 a:hover{color:var( --e-global-color-c1698f9 );}.elementor-kit-7 h1{font-family:"Bricolage Grotesque", Sans-serif;font-size:59px;font-weight:700;line-height:1.06em;letter-spacing:-0.02em;}.elementor-kit-7 h2{font-family:"Bricolage Grotesque", Sans-serif;font-size:42px;font-weight:700;line-height:1.1em;letter-spacing:-0.015em;}.elementor-kit-7 h3{font-family:"Instrument Sans", Sans-serif;font-size:19px;font-weight:700;line-height:1.35em;}.elementor-kit-7 h4{font-family:"Instrument Sans", Sans-serif;font-size:16px;font-weight:700;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-kit-7{font-size:17px;line-height:1.65em;}.elementor-kit-7 h1{font-size:46px;line-height:1.06em;letter-spacing:-0.02em;}.elementor-kit-7 h2{font-size:34px;line-height:1.1em;letter-spacing:-0.015em;}.elementor-kit-7 h3{font-size:19px;line-height:1.35em;}.elementor-kit-7 h4{font-size:16px;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{font-size:16px;line-height:1.65em;}.elementor-kit-7 h1{font-size:36px;line-height:1.06em;}.elementor-kit-7 h2{font-size:28px;line-height:1.1em;letter-spacing:-0.015em;}.elementor-kit-7 h3{font-size:18px;line-height:1.35em;}.elementor-kit-7 h4{font-size:15px;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================================
   DIGITALER HUNDECLUB · Fundament
   ============================================================ */

/* ---- 0 · Variablen ---- */
.elementor-element{
  --dhc-creme:      #FBF9F6;
  --dhc-white:      #FFFFFF;
  --dhc-dark:       #221E19;
  --dhc-red:        #B21F26;
  --dhc-red-hover:  #8F181E;
  --dhc-red-deep:   #7F161C;
  --dhc-rose:       #F9E7E7;
  --dhc-rose-line:  #EFCDCD;
  --dhc-line:       #EAE4DB;
  --dhc-line-soft:  #F1EBE2;
  --dhc-body:       #544C42;
  --dhc-muted:      #6B6259;
  --dhc-list:       #3D362E;
  --dhc-ease:       cubic-bezier(0.23,1,0.32,1);
}

/* ---- 1 · Basis ---- */
body{ text-rendering:optimizeLegibility; }
h1,h2,h3{ text-wrap:balance; }
p{ text-wrap:pretty; }

/* Sektionscontainer: Basis für absolut positionierte Deko */
.dhc-section{ position:relative; overflow:hidden; }

/* ---- 2 · Kicker (Uppercase-Label über Headlines) ---- */
.dhc-kicker,
.dhc-kicker p,
.dhc-kicker .elementor-heading-title{
  font-family:"Instrument Sans",sans-serif;
  font-size:14px; font-weight:700;
  letter-spacing:0.08em; text-transform:uppercase;
  color:var(--dhc-red); line-height:1.4; margin:0;
}
.dhc-on-dark .dhc-kicker,
.dhc-on-dark .dhc-kicker p,
.dhc-on-dark .dhc-kicker .elementor-heading-title{ color:var(--dhc-rose-line); }

/* ---- 3 · Aktions-Badge mit Pulspunkt ---- */
.dhc-badge{
  display:inline-flex; align-items:center; gap:10px;
  background:var(--dhc-rose); color:var(--dhc-red-deep);
  border:1px solid var(--dhc-rose-line); border-radius:999px;
  padding:8px 16px; font-family:"Instrument Sans",sans-serif;
  font-size:14px; font-weight:600; line-height:1;
}
.dhc-badge::before{
  content:""; width:8px; height:8px; border-radius:50%;
  background:var(--dhc-red); flex:none;
  animation:dhcPulse 2.4s ease-in-out infinite;
}
@keyframes dhcPulse{
  0%,100%{ transform:scale(1); opacity:1; }
  50%    { transform:scale(1.7); opacity:0.5; }
}

/* ---- 4 · Buttons ---- */
.dhc-btn .elementor-button{
  background:var(--dhc-red); color:#fff;
  font-family:"Instrument Sans",sans-serif;
  font-size:18px; font-weight:700; line-height:1;
  padding:17px 38px; border-radius:999px; border:none;
  box-shadow:0 6px 16px rgba(178,31,38,0.28);
  transition:transform .18s var(--dhc-ease),
             box-shadow .18s ease, background .18s ease;
}
.dhc-btn .elementor-button:hover{
  background:var(--dhc-red-hover); color:#fff;
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(178,31,38,0.38);
}
.dhc-btn .elementor-button:active{ transform:scale(0.98); }

/* Kleinerer Button im Header */
.dhc-btn-sm .elementor-button{
  font-size:15px; font-weight:600; padding:11px 24px;
  box-shadow:none;
}
.dhc-btn-sm .elementor-button:hover{
  box-shadow:0 12px 28px rgba(178,31,38,0.38);
}

/* Vollbreiter Button in der Preiskarte */
.dhc-btn-full .elementor-button{ width:100%; justify-content:center; }

/* ---- 5 · Trust-Zeile unter Buttons ---- */
.dhc-trust,
.dhc-trust p{
  font-family:"Instrument Sans",sans-serif;
  font-size:14px; color:var(--dhc-muted); line-height:1.5; margin:0;
}
.dhc-on-dark .dhc-trust,
.dhc-on-dark .dhc-trust p{ color:rgba(249,231,231,0.72); }

/* ---- 6 · Häkchen-Listen ---- */
.dhc-checks ul{ list-style:none; margin:0; padding:0;
  display:flex; flex-direction:column; gap:12px; }
.dhc-checks li{
  display:flex; gap:10px; align-items:flex-start;
  font-family:"Instrument Sans",sans-serif;
  font-size:16px; line-height:1.55; color:var(--dhc-body);
}
.dhc-checks li::before{
  content:"✓"; color:var(--dhc-red); font-weight:700;
  flex:none; line-height:1.55;
}
.dhc-on-dark .dhc-checks li{ color:rgba(249,231,231,0.86); }
.dhc-on-dark .dhc-checks li::before{ color:var(--dhc-rose-line); }

/* Inline-Variante (Hero-Benefits, nebeneinander) */
.dhc-checks-inline ul{ flex-direction:row; flex-wrap:wrap; gap:12px 22px; }
.dhc-checks-inline li{ font-size:15px; font-weight:500; }

/* ---- 7 · Deko-Elemente (absolut positioniert) ---- */
.dhc-deco{ pointer-events:none; z-index:0; }
.dhc-deco svg{ display:block; }
.dhc-float-y  { animation:dhcFloatY 8s  ease-in-out infinite; }
.dhc-float-y-s{ animation:dhcFloatY 11s ease-in-out infinite; }
.dhc-float-x  { animation:dhcFloatX 13s ease-in-out infinite; }
.dhc-drift    { animation:dhcDrift 15s ease-in-out infinite; }
@keyframes dhcFloatY{ 0%,100%{transform:translateY(0)} 50%{transform:translateY(-18px)} }
@keyframes dhcFloatX{ 0%,100%{transform:translate(0,0)} 50%{transform:translate(24px,-12px)} }
@keyframes dhcDrift{
  0%  {transform:translate(0,0) scale(1)}
  33% {transform:translate(-18px,14px) scale(1.06)}
  66% {transform:translate(14px,-10px) scale(0.97)}
  100%{transform:translate(0,0) scale(1)}
}

/* ---- 8 · Wellen-Divider ---- */
.dhc-divider{ line-height:0; margin-bottom:-1px; }
.dhc-divider svg{ display:block; width:100%; height:54px; }
@media (max-width:767px){ .dhc-divider svg{ height:34px; } }

/* ---- 9 · Laufband ---- */
.dhc-marquee{
  overflow:hidden; display:flex; white-space:nowrap;
  padding:16px 0; background:#fff;
  border-bottom:1px solid var(--dhc-line-soft);
}
.dhc-marquee-row{
  display:flex; gap:44px; align-items:center; flex:none;
  padding-right:44px; animation:dhcMarquee 30s linear infinite;
}
.dhc-marquee-row span{
  font-family:"Bricolage Grotesque",sans-serif;
  font-weight:700; font-size:19px; letter-spacing:0.08em;
  text-transform:uppercase; color:var(--dhc-red);
}
@keyframes dhcMarquee{ from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* ---- 10 · Bildformen ---- */
.dhc-img-arch img { border-radius:280px 280px 32px 32px; }
.dhc-img-arch2 img{ border-radius:260px 260px 30px 30px; }
.dhc-img-blob img { border-radius:58% 42% 55% 45% / 48% 52% 45% 55%; }
.dhc-img-soft img { border-radius:16px; }
.dhc-img-round img{ border-radius:50%; }
.dhc-img-cover img{ width:100%; height:100%; object-fit:cover; display:block; }

/* ---- 11 · Preis-Kreis im Hero ---- */
.dhc-price-circle{
  width:118px; height:118px; border-radius:50%;
  background:var(--dhc-red); color:var(--dhc-creme);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:2px; transform:rotate(9deg);
  box-shadow:0 12px 28px rgba(127,22,28,0.35);
  animation:dhcFloatY 8s ease-in-out infinite;
}
.dhc-price-circle .dhc-pc-big{
  font-family:"Bricolage Grotesque",sans-serif;
  font-weight:800; font-size:26px; line-height:1;
}
.dhc-price-circle .dhc-pc-small{
  font-family:"Instrument Sans",sans-serif;
  font-size:12px; font-weight:600; letter-spacing:0.04em;
}

/* ---- 12 · Schwebende Mockup-Karte ---- */
.dhc-float-card{
  background:#fff; border:1px solid var(--dhc-line);
  border-radius:16px; padding:10px;
  box-shadow:0 12px 32px rgba(34,30,25,0.12);
  animation:dhcFloatY 7s ease-in-out infinite;
}

/* ---- 13 · Karten mit Hover-Lift ---- */
.dhc-card{
  background:#fff; border:1px solid var(--dhc-line);
  border-radius:20px; overflow:hidden;
  transition:transform .25s var(--dhc-ease), box-shadow .25s ease;
}
.dhc-card:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 44px rgba(34,30,25,0.10);
}

/* ---- 14 · Sticky CTA Mobil ---- */
.dhc-sticky-cta{ display:none !important; }
@media (max-width:767px){
  .dhc-sticky-cta{
    display:flex !important;
    position:fixed; left:0; right:0; bottom:0; z-index:998;
    background:#fff; border-top:1px solid var(--dhc-line);
    padding:12px 16px calc(12px + env(safe-area-inset-bottom));
    box-shadow:0 -14px 34px -20px rgba(0,0,0,0.3);
  }
  body{ padding-bottom:86px; }
}

/* ---- 15 · Bewegung respektieren ---- */
@media (prefers-reduced-motion: reduce){
  .dhc-deco, .dhc-price-circle, .dhc-float-card,
  .dhc-marquee-row, .dhc-badge::before{
    animation:none !important;
  }
  .dhc-btn .elementor-button, .dhc-card{ transition:none; }
}
/* ============================================================
   DIGITALER HUNDECLUB · Bausteine Sektion 02 bis Footer
   ============================================================ */

/* ---- A · Nummerierte Liste (S02 Problem) ---- */
.dhc-numlist ol{
  list-style:none; margin:0; padding:0; counter-reset:dhc;
  display:flex; flex-direction:column; gap:14px;
}
.dhc-numlist li{
  counter-increment:dhc; display:flex; gap:14px; align-items:flex-start;
  font-family:"Instrument Sans",sans-serif;
  font-size:17px; line-height:1.55; color:var(--dhc-list);
}
.dhc-numlist li::before{
  content:counter(dhc);
  flex:none; width:26px; height:26px; border-radius:50%;
  background:var(--dhc-rose); color:var(--dhc-red);
  display:grid; place-items:center;
  font-weight:700; font-size:14px; margin-top:2px;
}
@media (max-width:767px){ .dhc-numlist li{ font-size:16px; } }

/* ---- B · Merksatz in Rot (S03, S10, S13) ---- */
.dhc-claim,
.dhc-claim p{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:20px; font-weight:700; line-height:1.4;
  color:var(--dhc-red); margin:0;
}

/* ---- C · Schritt-Nummer im Kreis (S04) ---- */
.dhc-stepnum{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:20px; font-weight:800; color:#fff;
  background:var(--dhc-red);
  width:42px; height:42px; border-radius:50%;
  display:grid; place-items:center; flex:none;
}
.dhc-stepnum.r1{ transform:rotate(-7deg); }
.dhc-stepnum.r2{ transform:rotate(5deg); }
.dhc-stepnum.r3{ transform:rotate(-5deg); }

/* ---- D · Kurskarte (S05) ---- */
.dhc-course{
  background:#fff; border:1px solid var(--dhc-line);
  border-radius:20px; overflow:hidden; height:100%;
  transition:transform .25s var(--dhc-ease), box-shadow .25s ease;
}
.dhc-course:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 44px rgba(34,30,25,0.10);
}
.dhc-course-img{ aspect-ratio:16/10; overflow:hidden; }
.dhc-course-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.dhc-duration{
  display:inline-block; font-family:"Instrument Sans",sans-serif;
  font-size:13px; font-weight:600; color:var(--dhc-red-deep);
  background:var(--dhc-rose); border-radius:999px;
  padding:5px 12px; flex:none; white-space:nowrap;
}
.dhc-lead,
.dhc-lead p{
  font-family:"Instrument Sans",sans-serif;
  font-size:15px; font-weight:600; color:var(--dhc-red);
  line-height:1.5; margin:0;
}

/* ---- E · Themen-Pills (S05 Wochenthema) ---- */
.dhc-pills{ display:flex; flex-wrap:wrap; gap:8px; }
.dhc-pills span{
  display:inline-block; font-family:"Instrument Sans",sans-serif;
  font-size:14px; font-weight:500; color:var(--dhc-list);
  background:var(--dhc-rose); border:1px solid var(--dhc-rose-line);
  border-radius:999px; padding:6px 14px; line-height:1.3;
}

/* ---- F · Gesamtpaket-Box (S05) ---- */
.dhc-package{
  background:var(--dhc-rose); border:1px solid var(--dhc-rose-line);
  border-radius:20px;
}
.dhc-package-grid ul{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(2,1fr); gap:10px 28px;
}
.dhc-package-grid li{
  display:flex; gap:10px; align-items:flex-start;
  font-family:"Instrument Sans",sans-serif;
  font-size:16px; line-height:1.5; color:var(--dhc-list);
}
.dhc-package-grid li::before{
  content:"✓"; color:var(--dhc-red); font-weight:700; flex:none;
}
@media (max-width:767px){
  .dhc-package-grid ul{ grid-template-columns:1fr; }
}

/* ---- G · Testimonial-Karte (S07) ---- */
.dhc-testimonial{
  background:#fff; border:1px dashed #D9CFC2;
  border-radius:20px; height:100%;
}
.dhc-stars{ color:var(--dhc-red); font-size:15px; letter-spacing:2px; }
.dhc-quote,
.dhc-quote p{
  font-family:"Instrument Sans",sans-serif;
  font-size:16px; line-height:1.6; color:#96897A;
  font-style:italic; margin:0;
}
.dhc-author-name{ font-size:15px; font-weight:600; color:#96897A; }
.dhc-author-meta{ font-size:14px; color:#B3A689; }
.dhc-avatar{
  width:44px; height:44px; flex:none;
  background:var(--dhc-rose); border-radius:50%; overflow:hidden;
}
.dhc-avatar img{ width:44px; height:44px; object-fit:cover; }

/* ---- H · Kennzahlen (S07) ---- */
.dhc-stat-num{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:34px; font-weight:800; color:var(--dhc-red); line-height:1;
}
.dhc-stat-lbl{
  font-family:"Instrument Sans",sans-serif;
  font-size:15px; color:var(--dhc-body); line-height:1.5;
}

/* ---- I · Dunkle Angebot-Sektion (S09) ---- */
.dhc-dark-sec{ background:#221E19; }
.dhc-dark-sec h2,
.dhc-dark-sec .elementor-heading-title{ color:#FBF9F6; }
.dhc-dark-sec p{ color:#C9C0B4; }
.dhc-kicker-rose,
.dhc-kicker-rose p{
  font-family:"Instrument Sans",sans-serif;
  font-size:14px; font-weight:700; letter-spacing:0.08em;
  text-transform:uppercase; color:#E8898E; margin:0;
}

/* Vergleichszeilen */
.dhc-compare{ display:flex; flex-direction:column; gap:14px; }
.dhc-compare .row{
  display:flex; justify-content:space-between; gap:16px;
  border-bottom:1px solid rgba(251,249,246,0.15); padding-bottom:14px;
  font-family:"Instrument Sans",sans-serif; font-size:17px;
}
.dhc-compare .row:last-child{ border-bottom:none; padding-bottom:0; }
.dhc-compare .lbl{ color:#C9C0B4; }
.dhc-compare .val{ font-weight:600; color:#FBF9F6; white-space:nowrap; }
.dhc-compare .row.win .val{ color:#E8898E; }

/* Infobox auf dunkel */
.dhc-infobox{ display:flex; flex-direction:column; gap:8px; }
.dhc-infobox .t{
  font-family:"Instrument Sans",sans-serif;
  font-size:16px; font-weight:700; color:#FBF9F6;
}
.dhc-infobox p{ font-size:15px; line-height:1.6; color:#96897A; margin:0; }

/* ---- J · Preiskarte (S09) ---- */
.dhc-pricecard{
  position:relative; background:var(--dhc-creme);
  border-radius:24px; box-shadow:0 24px 64px rgba(0,0,0,0.35);
}
.dhc-discount{
  position:absolute; top:-26px; right:-14px;
  width:88px; height:88px; border-radius:50%;
  background:var(--dhc-red); color:var(--dhc-creme);
  display:grid; place-items:center; transform:rotate(10deg);
  font-family:"Bricolage Grotesque",sans-serif;
  font-weight:800; font-size:24px;
  box-shadow:0 10px 24px rgba(0,0,0,0.3);
  z-index:3;
}
.dhc-price-row{ display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.dhc-price-old{
  font-family:"Instrument Sans",sans-serif;
  font-size:22px; color:#96897A; text-decoration:line-through;
}
.dhc-price-new{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:46px; font-weight:800; color:#221E19; line-height:1;
}
.dhc-price-note{ font-size:15px; font-weight:600; color:var(--dhc-muted); }
.dhc-save-pill{
  display:inline-flex; align-self:flex-start;
  background:var(--dhc-rose); color:var(--dhc-red-deep);
  border-radius:999px; padding:6px 14px;
  font-family:"Instrument Sans",sans-serif;
  font-size:14px; font-weight:700;
}
@media (max-width:767px){
  .dhc-price-new{ font-size:38px; }
  .dhc-discount{ width:72px; height:72px; font-size:20px; top:-20px; right:-6px; }
}

/* ---- K · Garantie-Kreis (S10) ---- */
.dhc-guarantee{
  flex:none; width:140px; height:140px; border-radius:50%;
  background:var(--dhc-rose); border:2px solid var(--dhc-rose-line);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:2px; text-align:center;
  animation:dhcFloatY 6s ease-in-out infinite;
}
.dhc-guarantee .g-num{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:32px; font-weight:800; color:var(--dhc-red); line-height:1;
}
.dhc-guarantee .g-txt{
  font-family:"Instrument Sans",sans-serif;
  font-size:12px; font-weight:700; letter-spacing:0.06em;
  text-transform:uppercase; color:var(--dhc-red-deep); line-height:1.3;
}

/* ---- L · FAQ Nested Accordion (S11) ---- */
.dhc-faq .e-n-accordion-item{
  border-bottom:1px solid var(--dhc-line);
  border-radius:0; background:transparent;
}
.dhc-faq .e-n-accordion-item-title{
  padding:20px 0;
  font-family:"Instrument Sans",sans-serif;
  font-size:18px; font-weight:600; color:#221E19;
}
.dhc-faq .e-n-accordion-item[open] .e-n-accordion-item-title{
  color:var(--dhc-red);
}
.dhc-faq .e-n-accordion-item-title-icon{
  color:var(--dhc-red); font-size:24px;
  transition:transform .2s ease-out;
}
.dhc-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon{
  transform:rotate(45deg);
}
.dhc-faq .e-con-inner p{
  font-family:"Instrument Sans",sans-serif;
  font-size:16px; line-height:1.65; color:var(--dhc-body);
  margin:0 0 20px; max-width:60ch;
}
@media (max-width:767px){
  .dhc-faq .e-n-accordion-item-title{ font-size:16px; }
}

/* ---- M · Dringlichkeitsbox (S12) ---- */
.dhc-urgency{
  background:
    radial-gradient(480px 400px at 96% 0%, rgba(178,31,38,0.10), rgba(178,31,38,0) 62%),
    radial-gradient(460px 380px at 2% 100%, rgba(255,255,255,0.55), rgba(255,255,255,0) 60%),
    var(--dhc-rose);
  border:1px solid var(--dhc-rose-line);
  border-radius:24px; position:relative; overflow:hidden;
}
.dhc-cd-label{
  font-family:"Instrument Sans",sans-serif;
  font-size:15px; font-weight:700; color:var(--dhc-red-deep);
  letter-spacing:0.04em; text-transform:uppercase;
}
/* Elementor Countdown im Kachel-Look */
.dhc-countdown .elementor-countdown-item{
  background:#fff; border:1px solid var(--dhc-rose-line);
  border-radius:14px; padding:16px 22px; min-width:86px;
}
.dhc-countdown .elementor-countdown-digits{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:36px; font-weight:800; color:#221E19;
  line-height:1; font-variant-numeric:tabular-nums;
}
.dhc-countdown .elementor-countdown-label{
  font-family:"Instrument Sans",sans-serif;
  font-size:13px; font-weight:600; color:var(--dhc-red-deep);
  margin-top:6px; letter-spacing:0.05em; text-transform:uppercase;
}
@media (max-width:767px){
  .dhc-countdown .elementor-countdown-item{ padding:12px 10px; min-width:0; }
  .dhc-countdown .elementor-countdown-digits{ font-size:26px; }
  .dhc-countdown .elementor-countdown-label{ font-size:11px; }
}

/* ---- N · Finaler Preisblock (S13) ---- */
.dhc-final-price{ display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.dhc-final-price .lbl{ font-size:15px; color:var(--dhc-muted); }
.dhc-final-price .old{ font-size:20px; color:#96897A; text-decoration:line-through; }
.dhc-final-price .new{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:44px; font-weight:800; color:#221E19; line-height:1;
}
@media (max-width:767px){ .dhc-final-price .new{ font-size:36px; } }

/* ---- O · Footer ---- */
.dhc-footer{ background:#221E19; }
.dhc-footer .copy{ color:#96897A; font-size:14px; }
.dhc-footer a{ color:#C9C0B4; font-size:14px; }
.dhc-footer a:hover{ color:#fff; }

/* ---- P · Autor-Signatur (S08) ---- */
.dhc-sig-name{
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:19px; font-weight:700; color:#221E19;
}
.dhc-sig-role{ font-size:15px; color:var(--dhc-muted); }

/* ---- Q · Bildformen Nachtrag ---- */
.dhc-img-blob2{ aspect-ratio:4/5; overflow:hidden;
  border-radius:45% 55% 48% 52% / 55% 45% 52% 48%; }
.dhc-img-blob2 img{ width:100%; height:100%; object-fit:cover; }
.dhc-img-arch2{ aspect-ratio:4/5; overflow:hidden;
  border-radius:260px 260px 30px 30px; }
.dhc-img-arch2 img{ width:100%; height:100%; object-fit:cover; }
.dhc-img-blob{ aspect-ratio:4/5; overflow:hidden;
  border-radius:58% 42% 55% 45% / 48% 52% 45% 55%; }
.dhc-img-blob img{ width:100%; height:100%; object-fit:cover; }
.dhc-img-54{ aspect-ratio:5/4; overflow:hidden; border-radius:20px; }
.dhc-img-54 img{ width:100%; height:100%; object-fit:cover; }
.dhc-img-169{ aspect-ratio:16/9; overflow:hidden; border-radius:14px; }
.dhc-img-169 img{ width:100%; height:100%; object-fit:cover; }
.dhc-img-1610{ aspect-ratio:16/10; overflow:hidden; border-radius:16px; }
.dhc-img-1610 img{ width:100%; height:100%; object-fit:cover; }
.dhc-img-12{ aspect-ratio:16/9; overflow:hidden; border-radius:12px; }
.dhc-img-12 img{ width:100%; height:100%; object-fit:cover; }
/* ============================================================
   DIGITALER HUNDECLUB · Responsive-Feinschliff
   ============================================================ */

/* ---- Deko: auf Tablet + Mobil komplett raus ---- */
@media (max-width:1024px){
  .dhc-deco{ display:none !important; }
}

/* ---- TABLET (bis 1024px) ---- */
@media (max-width:1024px){
  .dhc-marquee-row span{ font-size:17px; }
  .dhc-marquee-row{ gap:32px; padding-right:32px; }
  .dhc-price-new{ font-size:40px; }
  .dhc-final-price .new{ font-size:38px; }
}

/* ---- MOBIL (bis 767px) ---- */
@media (max-width:767px){

  /* Bilder in Bild-Text-Sektionen zentrieren und begrenzen */
  .dhc-img-arch, .dhc-img-arch2, .dhc-img-portrait,
  .dhc-img-blob, .dhc-img-blob2, .dhc-img-54{
    max-width:380px;
    margin-left:auto;
    margin-right:auto;
  }

  /* Hero: schwebender Preis-Kreis kleiner und im Bild halten */
  .dhc-price-circle{ width:96px; height:96px; }
  .dhc-price-circle .dhc-pc-big{ font-size:22px; }

  /* Hero: Mockup-Karte kleiner und vom Rand weg */
  .dhc-float-card{ width:140px !important; }

  /* Preiskarte: Rabattkreis kleiner */
  .dhc-discount{ width:66px; height:66px; font-size:18px; top:-18px; right:-4px; }

  /* Große Zahlen runter */
  .dhc-price-new{ font-size:36px; }
  .dhc-final-price .new{ font-size:34px; }
  .dhc-stat-num{ font-size:30px; }

  /* Marquee kompakter */
  .dhc-marquee-row span{ font-size:16px; }
  .dhc-marquee-row{ gap:26px; padding-right:26px; }

  /* FAQ-Fragen kompakter */
  .dhc-faq summary{ font-size:16px; }

  /* Angebot-Sektion: dunkle Preiskarte bekommt etwas Abstand nach oben */
  .dhc-pricecard{ margin-top:8px; }
}
/* Theme-Footer von Hello Elementor ausblenden */
#site-footer.site-footer{
  display:none !important;
}
/* ---- Spar-Hinweis: nur auf Mobil zum Kästchen machen ---- */
@media (max-width:767px){
  .dhc-save-pill{
    display:block;
    width:100%;
    border-radius:12px;
    padding:12px 16px;
    line-height:1.5;
    text-align:left;
  }
}
@media (max-width:767px){
  .dhc-save-pill{
    display:block;
    width:100%;
    border-radius:12px;
    padding:12px 16px;
    line-height:1.5;
    text-align:left;
    font-size:13px;
  }
}
/* ---- Angebot-Gradient nur in der Mitte, Kanten sauber dunkel ---- */
.dhc-dark-sec{
  background:
    radial-gradient(760px 620px at 6% 30%, rgba(178,31,38,0.20), rgba(178,31,38,0) 66%),
    radial-gradient(680px 560px at 96% 70%, rgba(249,231,231,0.08), rgba(249,231,231,0) 64%),
    #221E19 !important;
  background-repeat:no-repeat !important;
}
/* ---- Angebot-Sektion: Fläche überall sauber dunkel ---- */
.dhc-dark-sec{
  background:#221E19 !important;
  position:relative;
  overflow:hidden;
}
.dhc-dark-sec::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(760px 620px at 6% 35%, rgba(178,31,38,0.20), rgba(178,31,38,0) 60%),
    radial-gradient(680px 560px at 96% 65%, rgba(249,231,231,0.08), rgba(249,231,231,0) 58%);
}
.dhc-dark-sec > .e-con-inner{
  position:relative;
  z-index:2;
}
.dhc-final-glow{
  position:relative;
  overflow:hidden;
}
.dhc-final-glow::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:radial-gradient(700px 600px at 92% 45%, rgba(249,231,231,0.85), rgba(249,231,231,0) 60%);
}
.dhc-final-glow > .e-con-inner{
  position:relative;
  z-index:2;
}
/* ---- Sticky CTA: wirklich fixieren, kein weißer Block im Fluss ---- */
@media (max-width:767px){
  .dhc-sticky-cta{
    position:fixed !important;
    left:0;
    right:0;
    bottom:0;
    z-index:998;
  }
}
/* Bild-Container auf Mobil: Höhe erzwingen, falls aspect-ratio nicht greift */
@media (max-width:767px){
  .dhc-img-1610,
  .dhc-img-169,
  .dhc-img-12,
  .dhc-course-img{
    aspect-ratio:auto;
    min-height:200px;
  }
  .dhc-img-1610 img,
  .dhc-img-169 img,
  .dhc-img-12 img,
  .dhc-course-img img{
    position:static;
    width:100%;
    height:auto;
    display:block;
  }
}
html, body{
  background-color:#221E19 !important;
}/* End custom CSS */