
/* Futterplanet Website-Theme – freundlich, elegant, modern (App-Dateien bleiben unberührt) */
:root{
  --bg-light:#151515;
  --text-main:#f5f5f2;
  --text-soft:#e2e6de;
  --muted:#c9d2c8;
  --accent-green:#40e85a;
  --accent-green-dark:#28c846;
  --accent-green-soft:rgba(64,232,90,.13);
  --accent-button:#40e85a;
  --accent-button-dark:#28b943;
  --accent-tongue:#e86a6d;
  --header-bg:rgba(18,18,18,.94);
  --header-menu-bg:rgba(18,18,18,.98);
  --border-soft:rgba(255,255,255,.18);
  --card-bg:rgba(31,33,30,.90);
  --card-bg-strong:rgba(24,26,23,.96);
  --shadow-soft:0 18px 44px rgba(0,0,0,.30);
}
*{box-sizing:border-box}
html,body{background:#151515!important;color:var(--text-main)!important;scroll-behavior:smooth}
body{
  min-height:100vh;
  background-image:
    linear-gradient(115deg,rgba(10,12,10,.82),rgba(10,12,10,.70) 48%,rgba(10,12,10,.86)),
    url("hintergrund.jpg")!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
body::before{content:none!important}
.page,main,section,footer{background:transparent!important;color:var(--text-main)!important}
.container{max-width:1120px;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}
a{color:inherit}
img{max-width:100%;height:auto}
header{
  background:var(--header-bg)!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  backdrop-filter:blur(12px);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
header,header a,nav a{color:#fff!important;text-shadow:none!important}
.logo-img{max-height:64px;width:auto;object-fit:contain}
nav ul{gap:.85rem!important}
nav a{
  border-radius:999px!important;
  padding:.35rem .72rem!important;
  transition:background .2s ease,color .2s ease,transform .2s ease!important;
}
nav a:hover,.nav-submenu a:hover{
  color:#111!important;
  background:var(--accent-green)!important;
  text-shadow:none!important;
}
.nav-submenu,header nav ul{
  background:var(--header-menu-bg)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.34)!important;
}
.hero{color:#fff!important;min-height:min(100vh,820px)!important}
.hero::before{
  background-image:url("hintergrund.jpg")!important;
  filter:brightness(.62) contrast(1.04)!important;
}
.hero::after{
  background:
    linear-gradient(90deg,rgba(9,12,9,.88) 0%,rgba(9,12,9,.62) 56%,rgba(9,12,9,.30) 100%),
    linear-gradient(180deg,rgba(9,12,9,.14),rgba(9,12,9,.52))!important;
}
.hero-content,.content-box,.card,.teaser-card,.price-card,.list-table,.highlight-box,.info-box,.step-card,.book-shell,.book-note,form,.opening-hours,.pill,.box,article,aside{
  background:var(--card-bg)!important;
  border:1px solid var(--border-soft)!important;
  color:var(--text-main)!important;
  box-shadow:var(--shadow-soft)!important;
  backdrop-filter:blur(10px);
}
.hero-content{border-radius:28px!important;background:rgba(20,24,19,.62)!important}
.hero-content::before,.teaser-label::before{
  background:linear-gradient(90deg,var(--accent-green),rgba(64,232,90,0))!important;
}
h1,h2,h3,h4,.section-title,.book-title,.teaser-label,.hero-eyebrow,.book-kicker{
  color:#76f286!important;
  text-shadow:none!important;
  letter-spacing:-.015em;
}
p,li,td,th,label,legend,span,small,div,dd,dt{
  color:inherit;
  text-shadow:none!important;
}
p,li,td,dd,.lead-small,.tagline,.hint,.small-text,.note,.book-subtitle,.book-meta,.muted{
  color:var(--text-soft)!important;
}
a:not(.btn):not(.btn-primary):not(.btn-secondary):not(.btn-ghost):not(.logo){
  color:#78f28a!important;
  text-underline-offset:3px;
}
a:not(.btn):not(.btn-primary):not(.btn-secondary):not(.btn-ghost):not(.logo):hover{color:#a2ffad!important}
.btn,.btn-primary,.btn-secondary,.btn-ghost,button,input[type="submit"],button[type="submit"]{
  border-radius:999px!important;
  border:2px solid var(--accent-green)!important;
  font-weight:700!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease!important;
}
.btn:hover,.btn-primary:hover,.btn-secondary:hover,.btn-ghost:hover,button:hover{transform:translateY(-1px)}
.btn-primary,.btn.btn-primary,button,input[type="submit"],button[type="submit"]{
  background:var(--accent-green)!important;
  color:#101410!important;
  box-shadow:0 12px 28px rgba(64,232,90,.22)!important;
}
.btn-secondary,.btn-ghost{
  background:rgba(64,232,90,.09)!important;
  color:#86f594!important;
}
input,textarea,select{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:14px!important;
}
input::placeholder,textarea::placeholder{color:rgba(245,245,245,.58)!important}
table{border-color:rgba(255,255,255,.18)!important}
.teaser-section{border-top:1px solid rgba(255,255,255,.12)!important;padding-top:3.4rem!important;padding-bottom:3.4rem!important}
.teaser-grid{gap:1.4rem!important}
.teaser-card{border-radius:24px!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important}
.teaser-card:hover{transform:translateY(-3px);border-color:rgba(64,232,90,.55)!important}
/* Deko-Symbole, Emojis und Kreise entfernen */
.hero-mark,.hero-icons,.hero-chip,.teaser-icon,.card-paw,.paw-trail,.hero-paw-trail,.friendly-badge,.badge-dot,.line-icon,svg.line-icon,.emoji,.decor,.decor-circle{display:none!important}
.teaser-section::before,.teaser-card::before,.hero-content::after,.content-box::before,.card::before,.price-card::before,.highlight-box::before,.info-box::before,.step-card::before{content:none!important;display:none!important}
footer{
  border-top:1px solid rgba(255,255,255,.14)!important;
  background:rgba(17,18,16,.86)!important;
  color:#dfe6dc!important;
}
.footer-brand,footer div,footer span,footer a{color:#dfe6dc!important}
@media(max-width:720px){
  body{background-attachment:scroll!important}
  .container{padding-left:1rem;padding-right:1rem}
  header nav ul{background:var(--header-menu-bg)!important}
  nav a{border-radius:12px!important}
  .hero{padding-top:5rem!important;min-height:auto!important}
  .hero-content{border-radius:22px!important;padding:1.35rem!important}
}


/* Startseite: oben Bild original, unterer Bereich dunkler */

.hero::before {
  filter: none !important;
}

.hero::after {
  background: transparent !important;
}

.teaser-section {
  background: rgba(10, 10, 10, 0.72) !important;
}

footer {
  background: rgba(10, 10, 10, 0.80) !important;
}