/* Freche Maus – Design System */
:root{
  --primary:#FF7A59;
  --primary-dark:#E85F3D;
  --secondary:#FFD166;
  --accent:#4ECDC4;
  --bg:#FFFFFF;
  --soft:#FFF6F2;
  --soft-2:#F2FBFA;
  --text:#222222;
  --muted:#5D6067;
  --line:#EFE6E1;
  --radius:20px;
  --radius-lg:32px;
  --shadow:0 8px 24px rgba(34,34,34,.08);
  --shadow-lg:0 16px 40px rgba(255,122,89,.18);
  --wrap:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:"Nunito","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary-dark);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.2;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2rem,5vw,3.2rem)}
h2{font-size:clamp(1.4rem,3vw,2rem)}
h3{font-size:1.1rem}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
section.wrap,.wrap>.grid{margin-bottom:56px}
section{margin-bottom:56px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-9999px;background:var(--primary);color:#fff;padding:12px 18px;border-radius:0 0 12px 0;z-index:100}
.skip-link:focus{left:0;top:0}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:2px solid var(--line)}
.header-inner{display:flex;align-items:center;gap:16px;padding-top:10px;padding-bottom:10px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.25rem;color:var(--text)}
.logo:hover{text-decoration:none}
.logo img{border-radius:50%}
.main-nav{display:flex;align-items:center;gap:18px;margin-left:auto}
.main-nav ul{display:flex;gap:6px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.main-nav a{color:var(--text);font-weight:700;padding:8px 12px;border-radius:999px;font-size:.95rem}
.main-nav a:hover{background:var(--soft);text-decoration:none}
.main-nav a[aria-current="page"]{background:var(--primary);color:#fff}
.search{display:flex;align-items:center;background:var(--soft);border-radius:999px;padding:4px 6px 4px 14px}
.search input{border:0;background:transparent;font:inherit;font-size:.95rem;padding:6px 0;width:150px;color:var(--text)}
.search input:focus{outline:none}
.search button{border:0;background:var(--primary);color:#fff;border-radius:999px;width:34px;height:34px;cursor:pointer;font-size:.9rem}
.burger{display:none;margin-left:auto;background:var(--soft);border:0;border-radius:14px;width:46px;height:46px;cursor:pointer;padding:12px}
.burger span{display:block;height:3px;background:var(--text);border-radius:2px;margin:3px 0}

@media(max-width:900px){
  .burger{display:block}
  .main-nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:10px;padding-bottom:14px}
  .main-nav.open{display:flex}
  .main-nav ul{flex-direction:column}
  .search input{width:100%}
  .search{flex:1}
}

/* Breadcrumbs */
.breadcrumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:.88rem;color:var(--muted);padding-top:14px;padding-bottom:4px}
.breadcrumbs a{color:var(--muted)}

/* Hero */
.hero{background:linear-gradient(160deg,var(--soft) 0%,#FFFBF0 55%,var(--soft-2) 100%);padding:48px 0 56px;margin-bottom:56px;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}
.hero-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:center}
.kicker{text-transform:uppercase;letter-spacing:.09em;font-size:.78rem;font-weight:800;color:var(--primary-dark);margin:0 0 8px}
.lead{font-size:1.15rem;color:var(--muted);margin-top:0}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 18px}
.hero-facts{list-style:none;padding:0;margin:0;display:flex;gap:18px;flex-wrap:wrap;font-weight:700;color:var(--muted);font-size:.92rem}
.hero-img img{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
@media(max-width:860px){.hero-inner{grid-template-columns:1fr}.hero-img{order:-1}}

/* Buttons */
.btn{display:inline-block;padding:13px 24px;border-radius:999px;font-weight:800;border:0;cursor:pointer;font-size:1rem;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease}
.btn:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow)}
.btn-primary{background:var(--primary);color:#fff}
.btn-secondary{background:var(--secondary);color:#4a3200}
.btn-accent{background:var(--accent);color:#06403c}

/* Chips */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}
.chip{background:var(--soft);border:2px solid var(--line);border-radius:999px;padding:9px 16px;font-weight:700;color:var(--text);font-size:.95rem}
.chip span{color:var(--muted);font-weight:600;font-size:.85em}
.chip:hover{background:var(--secondary);border-color:var(--secondary);text-decoration:none}

/* Grid & cards */
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}
.more{font-weight:800}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px}
.card{background:#fff;border:2px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .16s ease,box-shadow .16s ease}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.card a{color:inherit;display:block}
.card a:hover{text-decoration:none}
.card-img{position:relative;aspect-ratio:4/3;background:var(--soft)}
.card-img img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:10px;top:10px;background:var(--primary);color:#fff;border-radius:999px;font-size:.72rem;font-weight:800;padding:4px 10px}
.badge-geschichten{background:var(--accent);color:#06403c}
.badge-basteln{background:var(--secondary);color:#4a3200}
.badge-raetsel{background:#8E7DFF}
.badge-druckvorlagen{background:#3FA796}
.badge-jahreszeiten{background:#F26D6D}
.card-body{padding:14px 16px 18px}
.card-body h3{margin:0 0 6px;font-size:1.02rem}
.card-body p{margin:0;color:var(--muted);font-size:.9rem}

/* Bänder */
.band{padding:48px 0;margin-bottom:56px}
.band-season{background:var(--soft-2);border-radius:var(--radius-lg)}

/* Featured */
.featured{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;background:var(--soft);border-radius:var(--radius-lg);padding:32px}
.featured img{border-radius:var(--radius)}
.featured .meta{color:var(--muted);font-weight:700;font-size:.9rem}
@media(max-width:800px){.featured{grid-template-columns:1fr}}

/* Charaktere */
.chars{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-bottom:24px}
.chars figure{margin:0;text-align:center}
.chars img{border-radius:50%;margin:0 auto 10px;background:var(--soft)}
.chars figcaption{display:flex;flex-direction:column;font-size:.9rem;color:var(--muted)}
.char-list{display:grid;gap:26px}
.char-row{display:grid;grid-template-columns:240px 1fr;gap:26px;align-items:center;background:var(--soft);border-radius:var(--radius-lg);padding:22px}
.char-row img{border-radius:50%;background:#fff}
@media(max-width:700px){.char-row{grid-template-columns:1fr;text-align:center}.char-row img{margin:0 auto}}

/* Seitenkopf / Listen */
.page-head{background:var(--soft);padding:36px 0;border-radius:0 0 var(--radius-lg) var(--radius-lg);margin-bottom:40px}
.count{color:var(--muted);font-weight:700;font-size:.9rem}
.empty{background:var(--soft);padding:24px;border-radius:var(--radius)}
.pagination{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:34px 0 56px}
.pagination a,.pagination .current{padding:9px 15px;border-radius:12px;font-weight:800;border:2px solid var(--line)}
.pagination .current{background:var(--primary);color:#fff;border-color:var(--primary)}
.search-big{max-width:520px;margin:18px 0}
.search-big input{width:100%}
.search-big button{width:auto;padding:0 18px;height:38px}

/* Detail */
.detail{max-width:820px}
.detail-head .lead{font-size:1.1rem}
.meta-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:14px 0 24px;font-size:.86rem}
.meta-list li{background:var(--soft);border-radius:999px;padding:5px 14px;color:var(--muted);font-weight:700}
.detail-img{margin:0 0 22px}
.detail-img img{border:2px solid var(--line);border-radius:var(--radius);width:100%;background:#fff}
.detail-img figcaption{color:var(--muted);font-size:.85rem;margin-top:8px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}
.materials{background:var(--soft-2);border-radius:var(--radius);padding:20px 24px;margin-bottom:26px}
.materials h2{font-size:1.15rem}
.prose{font-size:1.05rem}
.prose-narrow{max-width:760px}
.prose h2{margin-top:1.6em;font-size:1.4rem}
.prose h3{margin-top:1.4em;font-size:1.15rem}
.prose blockquote{border-left:5px solid var(--secondary);margin:1.2em 0;padding:.2em 1em;color:var(--muted)}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.tag{background:var(--soft);border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:700;color:var(--muted)}

/* Newsletter */
.newsletter{background:linear-gradient(135deg,var(--secondary),#FFE7A8);padding:40px 0;margin:0 0 0}
.newsletter-inner{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.newsletter h2{margin-bottom:6px}
.newsletter p{margin:0 0 12px;color:#4a3200}
.newsletter-form{display:flex;gap:10px;flex-wrap:wrap}
.newsletter-form input{border:2px solid #fff;background:#fff;border-radius:999px;padding:12px 18px;font:inherit;min-width:240px}
.newsletter-form button{border:0;background:var(--primary);color:#fff;border-radius:999px;padding:12px 24px;font-weight:800;cursor:pointer;font-family:inherit}
.newsletter .small{font-size:.8rem}

/* Footer */
.site-footer{background:#2A2523;color:#F6EFEA;padding:48px 0 24px;margin-top:0}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px}
.site-footer h3{color:var(--secondary);font-size:1rem}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin-bottom:6px}
.site-footer a{color:#F6EFEA}
.copyright{text-align:center;color:#B9AFA9;font-size:.85rem;margin:32px 0 0}

.notfound{text-align:center;padding:40px 0}
.notfound img{margin:0 auto 20px}

@media print{
  .site-header,.site-footer,.newsletter,.breadcrumbs,.no-print,.actions,.pagination{display:none !important}
  body{font-size:12pt}
  .detail{max-width:100%}
  a[href]:after{content:""}
}
/* Runde 3 */
.hero-photo{position:relative;overflow:hidden;min-height:520px;display:flex;align-items:center;padding:64px 0}
.hero-photo .hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.75) 45%,rgba(255,255,255,0) 75%);z-index:1}
.hero-photo .hero-inner{position:relative;z-index:2;grid-template-columns:minmax(0,560px)}
@media(max-width:860px){.hero-photo{min-height:auto;padding:220px 0 32px}.hero-photo::after{background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.85) 40%,#fff 70%)}}
.bereiche{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.bereich{display:block;border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow);text-decoration:none;color:var(--text);transition:transform .15s}
.bereich:hover{transform:translateY(-3px)}
.bereich img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.bereich span{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;font-weight:800}
.bereich small{background:var(--soft-2);border-radius:999px;padding:2px 8px;font-size:.75rem}
.namebox{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:24px 0}
.namebox div{background:var(--soft);border-radius:var(--radius);padding:14px 16px}
.namebox dt{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.namebox dd{margin:4px 0 0;font-weight:700}
.prose blockquote.copyable{cursor:pointer;position:relative}
.prose blockquote.copied::after{content:"Kopiert ✓";position:absolute;right:12px;top:8px;font-size:.8rem;font-weight:800;color:var(--accent,#4ECDC4)}
.btn-pin{background:#E60023;color:#fff}
.audio audio{width:100%;margin:8px 0 16px}
.amazon{margin:32px auto}
.amazon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.amazon-card{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--radius);border:2px solid var(--soft-2);text-decoration:none;color:var(--text);background:#fff}
.amazon-card em{color:var(--primary,#FF7A59);font-style:normal;font-weight:800;margin-top:auto}
.ad-slot{margin:28px 0;min-height:100px}
.chips.abc .chip{min-width:44px;justify-content:center}
.hero-photo .hero-inner{justify-content:start;width:100%}
@media(max-width:860px){.hero-photo{display:block;padding:0 0 32px}.hero-photo .hero-bg{position:static;height:260px;object-position:70% 30%}.hero-photo::after{display:none}.hero-photo .hero-inner{padding-top:20px}}

/* Einwilligungs-Banner */
.consent{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:100;max-width:640px;margin:0 auto;background:#fff;color:#222;border-radius:24px;box-shadow:0 10px 40px rgba(0,0,0,.18);padding:1.2rem 1.4rem;border:3px solid #FFD166}
.consent[hidden]{display:none}
.consent p{margin:0 0 .8rem}
.consent-btns{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}
.btn-ghost{background:#fff;color:#222;border:2px solid #ddd}
.name-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.chip.active{background:var(--primary,#FF7A59);border-color:var(--primary,#FF7A59);color:#fff}

.detail-img.ausmal img{aspect-ratio:1/1;object-fit:contain;background:#fff}
@media print{.detail h1~*:not(.detail-img){display:none!important}.detail-img.ausmal img{width:100%;max-height:25cm;object-fit:contain}.detail-img figcaption{display:none}@page{margin:1cm}}
@media print{.detail:has(.detail-img.ausmal) > :not(h1):not(.detail-img):not(.eyebrow){display:none!important}}
