/* ==========================================================
   ErdMädchen – Die Tierdetektive · Child-Template cassiopeia_erdmaedchen
   user.css – wird von Cassiopeia automatisch geladen
   ========================================================== */

/* ---------- Schriften (lokal, DSGVO) ---------- */
@font-face{font-family:'Nunito';font-style:normal;font-weight:200 1000;font-display:swap;src:url('../fonts/nunito.woff2') format('woff2');}
@font-face{font-family:'Nunito';font-style:italic;font-weight:200 1000;font-display:swap;src:url('../fonts/nunito-italic.woff2') format('woff2');}
@font-face{font-family:'Caveat';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/caveat-bold.woff2') format('woff2');}

/* ---------- Farben & Grundwerte ---------- */
:root{
  --em-indigo-900:#120f5c;
  --em-indigo-800:#161368;
  --em-indigo-700:#1f1a7e;
  --em-indigo-600:#2a2490;
  --em-indigo-500:#3529bc;
  --em-red:#e30613;
  --em-red-dark:#b8000c;
  --em-lavender:#efeafd;
  --em-lavender-2:#ddd3fb;
  --em-white:#fff;
  --em-max:1320px;
  --em-gutter:clamp(1rem,4vw,2.5rem);

  --cassiopeia-color-primary:var(--em-indigo-800);
  --cassiopeia-color-link:var(--em-indigo-600);
  --cassiopeia-color-hover:var(--em-red);
  --cassiopeia-font-family-body:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --cassiopeia-font-family-headings:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --cassiopeia-font-weight-headings:800;
  --body-font-family:var(--cassiopeia-font-family-body);
  --link-color:var(--em-indigo-600);
  --link-hover-color:var(--em-red);
}

body.site{font-family:var(--cassiopeia-font-family-body);color:#1d1b3a;background:var(--em-white);}
h1,h2,h3,h4,h5,h6{font-family:var(--cassiopeia-font-family-headings);color:var(--em-indigo-800);}
a{color:var(--em-indigo-600);}
a:hover,a:focus{color:var(--em-red);}

/* ==========================================================
   HEADER
   ========================================================== */
.container-header{
  position:relative;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 2rem;
  padding:.85rem max(var(--em-gutter),calc((100% - var(--em-max))/2));
  background-color:var(--em-indigo-800);
  background-image:linear-gradient(90deg,var(--em-indigo-900) 0%,var(--em-indigo-700) 55%,var(--em-indigo-600) 100%);
  box-shadow:0 2px 18px rgba(18,15,92,.35);
}
.container-header>.grid-child{width:auto;max-width:none;margin:0;padding:0;flex:0 1 auto;}
.container-header>.container-nav{flex:1 1 auto;display:flex;justify-content:flex-end;align-items:center;}

/* Sprachauswahl (Position topbar) klein oben rechts */
.container-header>.container-topbar{
  position:absolute;top:.3rem;right:max(var(--em-gutter),calc((100% - var(--em-max))/2));
  padding:0;margin:0;background:none;font-size:.8rem;z-index:2;
}
.container-topbar .mod-languages__list{margin:0;}
.container-topbar .mod-languages a{color:rgba(255,255,255,.75);font-weight:700;text-decoration:none;padding:.05rem .35rem;border-radius:.4rem;}
.container-topbar .mod-languages .lang-active a,.container-topbar .mod-languages a:hover{color:#fff;background:rgba(255,255,255,.15);}
.container-topbar .mod-languages img{vertical-align:baseline;}
div.mod-languages ul li.lang-active,.container-topbar .mod-languages li{background-color:transparent;background:none;}

/* Marke: Icon + Name + Slogan */
.container-header .navbar-brand{display:flex;flex-direction:column;align-items:flex-start;padding:0;margin:0;white-space:normal;}
.container-header .brand-logo{
  position:relative;display:inline-flex;align-items:center;min-height:56px;padding-left:68px;
  font-family:'Nunito',sans-serif;font-style:italic;font-weight:900;font-size:clamp(1.3rem,2.4vw,2rem);line-height:1.05;
  color:#fff;text-decoration:none;letter-spacing:-.01em;
}
.container-header .brand-logo::before{
  content:"";position:absolute;left:0;top:50%;width:58px;height:58px;transform:translateY(-38%);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='37' cy='27' r='19' fill='none' stroke='white' stroke-width='5'/%3E%3Cpath d='M23 41 9 55' stroke='white' stroke-width='7' stroke-linecap='round'/%3E%3Cg fill='white'%3E%3Cpath d='M37 28c-4.6 0-9 4.6-9 8.2 0 2.6 2.3 3.6 4.6 3.1 1.6-.4 3-.9 4.4-.9s2.8.5 4.4.9c2.3.5 4.6-.5 4.6-3.1 0-3.6-4.4-8.2-9-8.2z'/%3E%3Cellipse cx='28.2' cy='24.5' rx='3' ry='3.9' transform='rotate(-20 28.2 24.5)'/%3E%3Cellipse cx='33.4' cy='18.6' rx='3' ry='4'/%3E%3Cellipse cx='40.6' cy='18.6' rx='3' ry='4'/%3E%3Cellipse cx='45.8' cy='24.5' rx='3' ry='3.9' transform='rotate(20 45.8 24.5)'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.container-header .brand-logo span{color:#fff;}
.container-header .brand-logo img{display:none;}
.container-header .site-description{
  margin:.1rem 0 0 68px;color:rgba(255,255,255,.92);font-style:italic;font-weight:800;font-size:clamp(.85rem,1.3vw,1.05rem);
}

/* Hauptmenü */
.container-header .container-nav .mod-menu{display:flex;flex-wrap:wrap;gap:.35rem 1.4rem;margin:0;padding:0;align-items:center;}
.container-header .container-nav .mod-menu>li{margin:0;}
.container-header .container-nav .mod-menu>li>a,
.container-header .container-nav .mod-menu>li>span{
  display:inline-block;padding:.45rem 1rem;border-radius:999px;
  color:#fff;font-weight:700;font-size:1.08rem;text-decoration:none;transition:background .2s,color .2s;
}
.container-header .container-nav .mod-menu>li>a:hover,
.container-header .container-nav .mod-menu>li>a:focus{background:rgba(255,255,255,.14);color:#fff;}
.container-header .container-nav .mod-menu>li.active>a,
.container-header .container-nav .mod-menu>li.current>a{
  background:linear-gradient(180deg,#ff2a33 0%,var(--em-red) 60%,var(--em-red-dark) 100%);
  box-shadow:0 3px 10px rgba(227,6,19,.45),inset 0 1px 0 rgba(255,255,255,.35);color:#fff;
}
@media (min-width:768px){.container-header .container-nav .mod-menu{flex-direction:row;}}
/* Mobile Menü (Collapse) */
.container-header .navbar-toggler{border-color:rgba(255,255,255,.6);color:#fff;}
.container-header .navbar-toggler .icon-menu{color:#fff;}

/* ==========================================================
   HINWEIS-BANNER (Laufband, Position below-top) – fiktives Szenario
   ========================================================== */
:root{--em-ticker-h:38px;}
.container-header{padding-top:calc(.85rem + var(--em-ticker-h));}
.container-header>.grid-child.container-below-top{position:absolute;top:0;left:0;right:0;width:auto;max-width:none!important;margin:0;padding:0;z-index:5;display:block;}
.container-header>.container-topbar{top:calc(var(--em-ticker-h) + .3rem);}
.em-ticker{position:relative;overflow:hidden;height:var(--em-ticker-h);display:flex;align-items:center;
  background:#ffd400;color:#161368;border-bottom:3px solid #161368;
  font-family:'Nunito',sans-serif;font-weight:700;font-size:1rem;white-space:nowrap;}
.em-ticker::before,.em-ticker::after{content:"";position:absolute;top:0;bottom:0;width:22px;z-index:2;
  background:repeating-linear-gradient(-45deg,#161368 0 7px,#ffd400 7px 14px);}
.em-ticker::before{left:0;}.em-ticker::after{right:0;}
.em-ticker__track{display:flex;width:max-content;animation:emTicker 45s linear infinite;}
.em-ticker:hover .em-ticker__track{animation-play-state:paused;}
.em-ticker__group{display:flex;flex-shrink:0;}
.em-ticker__item{padding:0 3rem;}
.em-ticker__item .fa-triangle-exclamation{color:var(--em-red);margin-right:.35rem;}
.em-ticker strong{font-weight:900;text-transform:uppercase;letter-spacing:.03em;}
@keyframes emTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .em-ticker__track{animation:none;width:100%;}
  .em-ticker__group{width:100%;justify-content:center;}
  .em-ticker__group[aria-hidden],.em-ticker__item+.em-ticker__item{display:none;}
  .em-ticker__item{white-space:normal;text-align:center;padding:0 2rem;}
}

/* ==========================================================
   ALLGEMEIN: Seitenraster
   ========================================================== */
.site-grid{grid-gap:0 2em;}
.container-banner{margin:0;padding:0;}
.container-component{padding-top:2.5rem;padding-bottom:3rem;}
.container-component h1,.page-header h1,.page-header h2{font-weight:900;font-style:italic;color:var(--em-indigo-800);}
.is-home .container-component{display:none;}
.is-home .site-grid{grid-gap:0;}

/* Buttons */
.em-btn{
  display:inline-flex;align-items:center;gap:.7rem;padding:.9rem 1.7rem;border-radius:999px;
  background:linear-gradient(180deg,#ff2a33 0%,var(--em-red) 55%,var(--em-red-dark) 100%);
  color:#fff!important;font-weight:800;font-size:clamp(1rem,1.6vw,1.3rem);text-decoration:none;
  box-shadow:0 8px 22px rgba(227,6,19,.45),inset 0 1px 0 rgba(255,255,255,.4);transition:transform .15s,box-shadow .15s;
}
.em-btn:hover,.em-btn:focus{transform:translateY(-2px);box-shadow:0 12px 26px rgba(227,6,19,.55);color:#fff;}
.em-btn .fa-envelope{font-size:1.2em;}

/* ==========================================================
   HERO (Position banner)
   ========================================================== */
.em-hero{
  position:relative;overflow:hidden;color:#fff;
  min-height:clamp(380px,34vw,500px);
  background:
    linear-gradient(100deg,var(--em-indigo-800) 0%,var(--em-indigo-700) 28%,rgba(31,26,126,.6) 36%,rgba(31,26,126,0) 46%),
    url('/images/erdmaedchen/hero.webp') right top/auto 100% no-repeat,
    var(--em-indigo-700);
}
.em-hero__inner{
  position:relative;z-index:1;max-width:var(--em-max);margin:0 auto;
  padding:clamp(1.75rem,3.6vw,3.25rem) var(--em-gutter) clamp(4.5rem,8vw,7rem);
}
.em-hero__text{max-width:min(600px,46%);}
.em-hero__title{
  margin:0 0 1.1rem;color:#fff;font-family:'Nunito',sans-serif;font-style:italic;font-weight:900;
  font-size:clamp(2.3rem,4.6vw,4.4rem);line-height:1.02;letter-spacing:-.015em;text-shadow:0 3px 14px rgba(10,8,60,.45);
}
.em-hero__lead{margin:0 0 1.8rem;font-size:clamp(1.1rem,2vw,1.75rem);font-weight:700;line-height:1.25;max-width:30ch;text-shadow:0 2px 8px rgba(10,8,60,.4);}
.em-wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:clamp(50px,8vw,110px);display:block;z-index:1;}

/* ==========================================================
   LEISTUNGEN (Position banner, 2. Modul)
   ========================================================== */
.em-services{
  position:relative;overflow:hidden;
  background:
    linear-gradient(180deg,var(--em-lavender) 0%,#e9e2fc 55%,var(--em-lavender-2) 100%);
  margin-top:-1px;
  padding:clamp(1.5rem,3vw,2.5rem) var(--em-gutter) clamp(2.5rem,5vw,4rem);
}
.em-services::after{ /* dezente Pfoten-Deko rechts */
  content:"\f1b0\00a0\00a0\f1b0";font-family:'Font Awesome 6 Free';font-weight:900;
  position:absolute;right:4%;top:12%;font-size:clamp(2rem,4vw,3.5rem);color:rgba(255,255,255,.75);transform:rotate(-15deg);pointer-events:none;
}
.em-services__inner{
  position:relative;z-index:1;max-width:var(--em-max);margin:0 auto;
  display:grid;grid-template-columns:minmax(0,3.6fr) minmax(0,7.4fr) minmax(0,2.6fr);gap:1.5rem 2rem;align-items:center;
}
.em-services__main{text-align:center;}
.em-section-title{
  display:flex;align-items:center;justify-content:center;gap:1rem;margin:0 0 .3rem;
  font-weight:900;font-size:clamp(1.8rem,3.2vw,3rem);color:var(--em-indigo-800);line-height:1.1;white-space:nowrap;
}
.em-section-title::before,.em-section-title::after{content:"";flex:0 1 110px;height:4px;border-radius:4px;background:linear-gradient(90deg,transparent,var(--em-red));}
.em-section-title::after{background:linear-gradient(90deg,var(--em-red),transparent);}
.em-section-title .fa-paw{color:var(--em-red);font-size:.55em;}
.em-section-sub{margin:0 0 2rem;color:var(--em-indigo-800);font-weight:700;font-size:clamp(1.05rem,1.8vw,1.55rem);}

.em-features{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem;}
.em-features li{display:flex;flex-direction:column;align-items:center;gap:.8rem;color:var(--em-indigo-800);font-weight:700;font-size:clamp(.95rem,1.25vw,1.15rem);line-height:1.25;}
.em-features__icon{
  display:grid;place-items:center;width:clamp(72px,7.5vw,104px);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#4b3fe0 0%,var(--em-indigo-600) 55%,var(--em-indigo-800) 100%);
  box-shadow:0 8px 20px rgba(31,26,126,.35),inset 0 2px 0 rgba(255,255,255,.25);
  color:#fff;font-size:clamp(1.8rem,3vw,2.6rem);
}

.em-services__photos{position:relative;min-height:clamp(200px,20vw,300px);}
.em-polaroid{
  position:absolute;margin:0;background:#fff;padding:10px 10px 14px;
  box-shadow:0 10px 24px rgba(31,26,126,.28);border-radius:3px;
}
.em-polaroid img{display:block;width:100%;height:auto;}
.em-polaroid--dog{left:0;top:0;width:62%;transform:rotate(-5deg);z-index:1;}
.em-polaroid--cat{right:0;top:12%;width:48%;transform:rotate(5deg);}

.em-slogan{
  margin:0;font-family:'Caveat',cursive;font-weight:700;color:var(--em-indigo-800);
  font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.05;transform:rotate(-8deg);text-align:center;
}
.em-slogan::after{
  content:"";display:block;width:70%;height:6px;margin:.35rem auto 0;border-radius:6px;
  background:linear-gradient(90deg,var(--em-red),#ff4d55);transform:rotate(-2deg);
}
.em-slogan .fa-paw{display:block;margin-top:.4rem;font-size:.8em;color:var(--em-indigo-700);}

/* ==========================================================
   FOOTER
   ========================================================== */
.container-footer{
  background:var(--em-indigo-800);
  background-image:linear-gradient(90deg,var(--em-indigo-900),var(--em-indigo-700));
  color:#fff;margin-top:0;
}
.container-footer .grid-child{
  max-width:var(--em-max);margin:0 auto;padding:1.4rem var(--em-gutter);
  display:flex;align-items:center;justify-content:center;position:relative;
}
.container-footer .grid-child::after{
  content:"\f1b0";font-family:'Font Awesome 6 Free';font-weight:900;font-size:1.6rem;color:#fff;
  position:absolute;right:var(--em-gutter);top:50%;transform:translateY(-50%);
}
.container-footer .mod-menu{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;justify-content:center;margin:0;padding:0;list-style:none;}
.container-footer .mod-menu>li{display:block;width:auto;margin:0;padding:0 1.6rem;line-height:1.3;border-left:2px solid rgba(255,255,255,.55);}
.container-footer .mod-menu>li:first-child{border-left:0;}
.container-footer .mod-menu a{color:#fff;font-weight:600;font-size:1.05rem;text-decoration:none;}
.container-footer .mod-menu a:hover,.container-footer .mod-menu .active>a{color:#fff;text-decoration:underline;text-decoration-color:var(--em-red);text-underline-offset:.3em;text-decoration-thickness:3px;}

/* Inhaltsseiten */
.em-page-lead{font-size:1.2rem;font-weight:600;color:var(--em-indigo-700);}
.em-placeholder{padding:1rem 1.25rem;border-left:5px solid var(--em-red);background:var(--em-lavender);border-radius:.4rem;}

/* ==========================================================
   TABS (Leistungen) – aktiv erst mit JS (.is-ready), sonst alle Inhalte sichtbar
   ========================================================== */
.em-tabs{margin:1.5rem 0 2rem;scroll-margin-top:110px;}
.em-tabs__list{display:flex;flex-wrap:wrap;gap:.75rem;margin:0 0 1.25rem;padding:0;list-style:none;}
.em-tabs__list li{margin:0;flex:1 1 200px;}
.em-tabs__tab{
  display:flex;align-items:center;gap:.75rem;height:100%;padding:.7rem 1rem;border-radius:16px;
  background:#fff;border:2px solid var(--em-lavender-2);color:var(--em-indigo-800);
  font-weight:800;font-size:1.02rem;line-height:1.2;text-decoration:none;transition:background .2s,border-color .2s,transform .15s;
}
.em-tabs__tab:hover,.em-tabs__tab:focus-visible{border-color:var(--em-indigo-500);color:var(--em-indigo-800);transform:translateY(-2px);}
.em-tabs__tab:focus-visible{outline:3px solid var(--em-red);outline-offset:2px;}
.em-tabs__icon{flex:0 0 auto;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#4b3fe0 0%,var(--em-indigo-600) 55%,var(--em-indigo-800) 100%);color:#fff;font-size:1.2rem;}
.em-tabs.is-ready .em-tabs__tab.is-active{background:linear-gradient(180deg,#ff2a33 0%,var(--em-red) 60%,var(--em-red-dark) 100%);border-color:var(--em-red);color:#fff;box-shadow:0 8px 20px rgba(227,6,19,.35);}
.em-tabs.is-ready .em-tabs__tab.is-active .em-tabs__icon{background:#fff;color:var(--em-red);}
.em-tabs__panel{background:linear-gradient(180deg,var(--em-lavender) 0%,#f7f4ff 100%);border-radius:20px;padding:clamp(1.25rem,3vw,2.25rem);margin:0 0 1rem;border:2px solid var(--em-lavender-2);}
.em-tabs.is-ready .em-tabs__panel{animation:emFade .25s ease;}
.em-tabs__panel h2{margin-top:0;font-weight:900;font-style:italic;font-size:clamp(1.5rem,2.6vw,2.1rem);}
.em-tabs__panel ul{padding-left:0;list-style:none;}
.em-tabs__panel ul li{position:relative;padding-left:1.9rem;margin:.45rem 0;}
.em-tabs__panel ul li::before{content:"\f1b0";font-family:'Font Awesome 6 Free';font-weight:900;position:absolute;left:0;top:.1rem;color:var(--em-red);}
.em-tabs__cta{margin-top:1.5rem;}
@keyframes emFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
/* Startseite: Leistungen als Links */
.em-features a{display:flex;flex-direction:column;align-items:center;gap:.8rem;color:inherit;text-decoration:none;}
.em-features a:hover .em-features__icon,.em-features a:focus-visible .em-features__icon{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 26px rgba(31,26,126,.45);}
.em-features a:hover span:last-child,.em-features a:focus-visible span:last-child{color:var(--em-red);}
.em-features__icon{transition:transform .2s,box-shadow .2s;}

/* ==========================================================
   PREISE
   ========================================================== */
.em-pricing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem;align-items:stretch;margin:2rem 0 1.5rem;}
.em-price{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:22px;border:2px solid var(--em-lavender-2);box-shadow:0 10px 26px rgba(31,26,126,.12);overflow:hidden;}
.em-price__head{text-align:center;padding:1.8rem 1.25rem 1.4rem;background:linear-gradient(180deg,var(--em-lavender) 0%,#fff 100%);}
.em-price__icon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;margin-bottom:.6rem;color:#fff;font-size:1.6rem;
  background:radial-gradient(circle at 35% 30%,#4b3fe0 0%,var(--em-indigo-600) 55%,var(--em-indigo-800) 100%);box-shadow:0 6px 16px rgba(31,26,126,.3);}
.em-price__name{margin:0;font-weight:900;font-style:italic;font-size:2rem;color:var(--em-indigo-800);}
.em-price__tag{margin:.15rem 0 .9rem;font-weight:800;color:var(--em-red);}
.em-price__amount{margin:0;font-weight:900;font-size:clamp(2.4rem,4vw,3.2rem);line-height:1;color:var(--em-indigo-800);}
.em-price__note{margin:.3rem 0 0;font-size:.9rem;color:#6a6690;}
.em-price__list{list-style:none;margin:0;padding:1.3rem 1.5rem .5rem;flex:1 1 auto;}
.em-price__list li{position:relative;padding-left:1.8rem;margin:.55rem 0;line-height:1.35;}
.em-price__list li::before{content:"\f00c";font-family:'Font Awesome 6 Free';font-weight:900;position:absolute;left:0;top:.05rem;color:var(--em-indigo-500);}
.em-price__list li.em-price__plus{font-weight:800;color:var(--em-indigo-800);}
.em-price__list li.em-price__plus::before{content:"\2b";color:var(--em-red);}
.em-price__cta{text-align:center;margin:0;padding:.5rem 1.25rem 1.6rem;}
.em-price__cta .em-btn{font-size:1.05rem;padding:.75rem 1.5rem;}
.em-price--featured{border-color:var(--em-red);box-shadow:0 18px 40px rgba(227,6,19,.22);transform:translateY(-10px);}
.em-price--featured .em-price__head{background:linear-gradient(180deg,#ffe3e5 0%,#fff 100%);}
.em-price__badge{position:absolute;top:16px;right:-38px;transform:rotate(35deg);background:var(--em-red);color:#fff;font-weight:800;font-size:.85rem;padding:.3rem 2.8rem;box-shadow:0 3px 8px rgba(0,0,0,.2);}
.em-price-foot{max-width:900px;margin:1.5rem auto 0;text-align:center;color:#4a4670;font-size:.95rem;}
.em-price-foot .fa-circle-info{color:var(--em-indigo-500);margin-right:.3rem;}
@media (max-width:991.98px){.em-pricing{grid-template-columns:minmax(0,1fr);max-width:480px;margin-inline:auto;}.em-price--featured{transform:none;}}

/* ==========================================================
   TEAM
   ========================================================== */
.em-team__heading{display:flex;align-items:center;gap:.6rem;margin:2.2rem 0 1.2rem;font-weight:900;font-style:italic;font-size:clamp(1.6rem,2.6vw,2.2rem);color:var(--em-indigo-800);}
.em-team__heading .fa-solid{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--em-red);color:#fff;font-size:1.05rem;font-style:normal;}
.em-team__heading--spuer{margin-top:3.5rem;padding-top:2rem;border-top:3px dashed var(--em-lavender-2);}
.em-team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.6rem;margin:0 0 1rem;}
.em-team--spuer{grid-template-columns:repeat(4,minmax(0,1fr));}
.em-member{background:#fff;border-radius:18px;padding:1rem 1rem 1.3rem;text-align:center;box-shadow:0 10px 26px rgba(31,26,126,.14);border:2px solid var(--em-lavender);transition:transform .2s,box-shadow .2s;}
.em-member:nth-child(odd){transform:rotate(-1.2deg);}
.em-member:nth-child(even){transform:rotate(1.2deg);}
.em-member:hover{transform:rotate(0) translateY(-4px);box-shadow:0 16px 32px rgba(31,26,126,.22);}
.em-member img{display:block;width:100%;height:auto;border-radius:12px;margin:0 0 .9rem;}
.em-member h3{margin:0 0 .2rem;font-weight:900;font-style:italic;font-size:1.5rem;color:var(--em-indigo-800);}
.em-member__role{margin:0 0 .5rem;font-weight:800;font-size:.95rem;color:var(--em-red);}
.em-member__bio{margin:0;color:#4a4670;font-size:.95rem;}
.em-team--spuer .em-member{border-color:#ffd2a8;}
@media (max-width:991.98px){.em-team,.em-team--spuer{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:479.98px){.em-team,.em-team--spuer{grid-template-columns:minmax(0,1fr);max-width:320px;margin-inline:auto;}}

/* ==========================================================
   KATZENJAGD (Startseite, Position bottom-a) – füllt den Leerraum über dem Footer
   ========================================================== */
.is-home .site-grid{flex:1 0 auto;align-content:space-between;}
.container-bottom-a:has(.em-chase){grid-column:full-start/full-end!important;width:100%;max-width:none;margin:0;padding:0;}
.container-bottom-a:has(.em-chase)>*{margin:0;padding:0;border:0;box-shadow:none;background:none;}
.em-chase{position:relative;height:170px;overflow:hidden;background:#fff;}
.em-chase__scene{position:absolute;left:0;bottom:0;height:170px;transform-origin:0 100%;}
.em-chase__ground{position:absolute;left:0;right:0;bottom:14px;border-bottom:2px dashed #111;opacity:.3;}
.em-actor{position:absolute;left:0;bottom:16px;will-change:transform;}
.em-actor[data-actor="cat"]{z-index:3;}
.em-actor svg{display:block;overflow:visible;}
.em-chase svg *{vector-effect:non-scaling-stroke;}
.em-bubble{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%) scale(.6);opacity:0;background:#fff;border:2px solid #111;border-radius:12px;padding:3px 9px;white-space:nowrap;font:700 13px/1.2 'Nunito',system-ui,sans-serif;color:#111;transition:opacity .2s,transform .2s;pointer-events:none;}
.em-bubble::after{content:"";position:absolute;left:50%;top:100%;margin-left:-6px;border:6px solid transparent;border-top-color:#111;}
.em-bubble.is-on{opacity:1;transform:translateX(-50%) scale(1);}
[data-actor="omi"] .em-bubble{left:2px;transform:scale(.6);transform-origin:20px 100%;}
[data-actor="omi"] .em-bubble.is-on{transform:scale(1);}
[data-actor="omi"] .em-bubble::after{left:22px;}
.em-actor .leg{transform-box:fill-box;transform-origin:50% 0;}
.em-actor.is-walk .leg{animation:emLeg .36s ease-in-out infinite alternate;}
.em-actor.is-walk .leg.b{animation-direction:alternate-reverse;}
.em-actor.is-walk .bob{animation:emBob .36s ease-in-out infinite alternate;}
.em-actor.is-run .leg{animation:emLeg .2s ease-in-out infinite alternate;}
.em-actor.is-run .leg.b{animation-direction:alternate-reverse;}
.em-actor.is-run .bob{animation:emBob .2s ease-in-out infinite alternate;}
.em-actor.is-hop .bob{animation:emHop .35s ease-in-out infinite alternate;}
@keyframes emLeg{from{transform:rotate(28deg)}to{transform:rotate(-28deg)}}
@keyframes emBob{from{transform:translateY(0)}to{transform:translateY(-3px)}}
@keyframes emHop{from{transform:translateY(0)}to{transform:translateY(-9px)}}
.em-actor .arm-hold,.em-actor .arm-wave,.em-actor .arm-pet{display:none;}
.em-actor.is-hold .arm-main,.em-actor.is-wave .arm-main,.em-actor.is-pet .arm-main{display:none;}
.em-actor.is-hold .arm-hold,.em-actor.is-wave .arm-wave,.em-actor.is-pet .arm-pet{display:inline;}
.em-actor .arm-wave{transform-box:fill-box;transform-origin:100% 100%;animation:emWave .45s ease-in-out infinite alternate;}
.em-actor .arm-pet{transform-box:fill-box;transform-origin:100% 100%;animation:emPet .5s ease-in-out infinite alternate;}
@keyframes emWave{from{transform:rotate(-22deg)}to{transform:rotate(18deg)}}
@keyframes emPet{from{transform:rotate(0)}to{transform:rotate(14deg)}}
.em-actor .tail{transform-box:fill-box;transform-origin:0 100%;animation:emTail .6s ease-in-out infinite alternate;}
.em-actor.is-run .tail{animation-duration:.25s;}
@keyframes emTail{from{transform:rotate(-12deg)}to{transform:rotate(14deg)}}
.em-actor .dust{opacity:0;}
.em-actor.is-run .dust{opacity:.5;}
.em-actor.is-run .dust circle{animation:emDust .6s ease-out infinite;transform-box:fill-box;transform-origin:center;}
.em-actor .dust circle:nth-child(2){animation-delay:.2s}.em-actor .dust circle:nth-child(3){animation-delay:.4s}
@keyframes emDust{from{opacity:.7;transform:scale(.4)}to{opacity:0;transform:scale(1.5) translateX(8px)}}
.em-hearts{position:absolute;left:50%;bottom:100%;width:0;height:0;pointer-events:none;}
.em-hearts span{position:absolute;left:0;bottom:0;opacity:0;font-size:16px;color:#111;}
.em-actor.is-love .em-hearts span{animation:emHeart 1.4s ease-out infinite;}
.em-hearts span:nth-child(1){left:-18px}.em-hearts span:nth-child(2){left:0;animation-delay:.45s!important}.em-hearts span:nth-child(3){left:16px;animation-delay:.9s!important}
@keyframes emHeart{0%{opacity:0;transform:translateY(0) scale(.6)}20%{opacity:1}100%{opacity:0;transform:translateY(-34px) scale(1.15)}}
.em-chase.is-paused *{animation-play-state:paused!important;}
[data-actor="olli"] .em-bubble{left:auto;right:0;transform:scale(.6);transform-origin:calc(100% - 22px) 100%;}
[data-actor="olli"] .em-bubble.is-on{transform:scale(1);}
[data-actor="olli"] .em-bubble::after{left:auto;right:16px;margin-left:0;}
.em-chase__play{position:absolute;top:10px;right:10px;z-index:5;border:2px solid #111;background:#fff;color:#111;border-radius:999px;padding:.35rem .9rem;font:700 .9rem 'Nunito',system-ui,sans-serif;cursor:pointer;}
.em-chase__play:hover,.em-chase__play:focus-visible{background:#111;color:#fff;}
/* Slogan-Unterstrich bei mittleren Breiten begrenzen */
@media (max-width:1199.98px){.em-slogan{max-width:340px;justify-self:center;margin-top:.5rem;}}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media (max-width:1199.98px){
  .em-services__inner{grid-template-columns:minmax(0,1fr) minmax(0,2fr);}
  .em-slogan{grid-column:1/-1;}
}
@media (max-width:991.98px){
  .em-hero__text{max-width:640px;}
  .em-section-title{white-space:normal;}
  .container-header{padding-top:calc(1.7rem + var(--em-ticker-h));gap:.5rem .75rem;}
  .container-header>.grid-child:not(.container-nav){max-width:calc(100% - 70px);}
  .container-header>.container-nav{flex:1 1 auto;justify-content:flex-end;flex-wrap:wrap;}
  .container-header .container-nav .mod-menu{gap:.3rem .5rem;}
}
@media (max-width:767.98px){
  .container-header>.container-nav{position:static;}
  .container-header>.container-nav .navbar{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-end;padding:0;}
  .container-header .container-nav .navbar-toggler{margin-left:auto;}
  .container-header .container-nav .navbar-collapse{flex-basis:100%;}
  .container-header .container-nav .mod-menu{flex-direction:column;align-items:flex-end;gap:.3rem;padding:.75rem 0 .25rem;}
  .em-hero{
    background:
      linear-gradient(180deg,rgba(22,19,104,.92) 0%,rgba(31,26,126,.78) 55%,rgba(31,26,126,.35) 100%),
      url('/images/erdmaedchen/hero.webp') center/cover no-repeat,
      var(--em-indigo-700);
  }
  .em-services__inner{grid-template-columns:1fr;}
  .em-services__photos{order:3;max-width:420px;width:100%;margin:0 auto;}
  .em-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem 1rem;}
}
@media (max-width:575.98px){
  .container-header .brand-logo{padding-left:54px;min-height:46px;}
  .container-header .brand-logo::before{width:46px;height:46px;}
  .container-header .site-description{margin-left:54px;}
  .container-header .container-nav .mod-menu>li>a{padding:.35rem .75rem;font-size:1rem;}
  .em-section-title::before,.em-section-title::after{display:none;}
  .container-footer .grid-child{flex-direction:column;gap:1rem;}
  .container-footer .grid-child::after{position:static;transform:none;}
  .container-footer .mod-menu>li{padding:.25rem .9rem;}
}
