/* ============================================================
   NEDA HUNDERTMARK — nedahundertmark.com
   Design-System „Editorial Dark" — dunkles Waldgrün, Creme, Amber
   Eine Datei für alle Seiten. Änderungen hier wirken überall.
   ============================================================ */

/* ---- Lokale Schriften (DSGVO-konform, kein Google-Server) ----
   Dateien nach /fonts/ hochladen: InstrumentSerif.woff2,
   InstrumentSerif-Italic.woff2, SpaceGrotesk.woff2
   Fehlen sie, greifen elegante Fallbacks — die Seite bleibt schön. */
@font-face{font-family:'Instrument Serif';src:url('fonts/InstrumentSerif.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('fonts/InstrumentSerif-Italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url('fonts/SpaceGrotesk.woff2') format('woff2');font-weight:300 700;font-style:normal;font-display:swap}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  /* Farben */
  --ink:#0D120E;            /* tiefes Nachtgrün — Basis dunkel */
  --ink-2:#141B15;
  --ink-3:#1B241D;
  --cream:#F5EFE3;          /* warmes Papier — Basis hell */
  --cream-2:#ECE4D2;
  --card:#FBF7EE;
  --white:#FFFDF8;
  --text-dark:#EDE7D8;      /* Text auf dunkel */
  --muted-dark:#9FAA9C;
  --text:#191E1A;           /* Text auf hell */
  --muted:#59615A;
  --amber:#DE9E4E;          /* warmes Amber — Akzent & CTA */
  --amber-deep:#B87A32;
  --amber-soft:rgba(222,158,78,.14);
  --sage:#A9C3A0;           /* helles Salbei auf dunkel */
  --pine:#31513E;           /* Tannengrün — Flächen */
  --pine-2:#274434;
  --line-dark:rgba(237,231,216,.13);
  --line:#DCD2BB;
  --shadow:0 24px 70px -30px rgba(10,14,10,.55);
  --r:20px;
  --serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --sans:'Space Grotesk','Segoe UI',system-ui,sans-serif;
}

html{scroll-behavior:smooth}
body{
  font-family:var(--sans);
  background:var(--ink);
  color:var(--text-dark);
  font-size:17px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
/* Feine Korn-Textur für den edlen Look */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");
}
main,header,section,footer,nav{position:relative;z-index:2}

h1,h2,h3,h4,.serif{font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:.005em}
img{max-width:100%;display:block}
a{color:inherit}
::selection{background:var(--amber);color:var(--ink)}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:6px}

.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.wrap-slim{max-width:840px;margin:0 auto;padding:0 28px}

/* ---- Eyebrow / Kapitel-Nummern ---- */
.eyebrow{
  display:inline-flex;align-items:center;gap:.6rem;
  font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;
  color:var(--amber);font-weight:500;margin-bottom:1.1rem;
}
.eyebrow::before{content:"";width:34px;height:1px;background:var(--amber);opacity:.7}
.on-light .eyebrow{color:var(--amber-deep)}
.on-light .eyebrow::before{background:var(--amber-deep)}

/* ---- Buttons ---- */
.btn{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:1rem 1.7rem;border-radius:100px;
  font-family:var(--sans);font-size:.95rem;font-weight:600;letter-spacing:.01em;
  text-decoration:none;cursor:pointer;border:1.5px solid transparent;white-space:nowrap;
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s;
}
.btn .ar{transition:transform .25s ease}
.btn:hover .ar{transform:translateX(5px)}
.btn-amber{background:var(--amber);color:#221606}
.btn-amber:hover{background:var(--white);color:var(--ink);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--text-dark);border-color:rgba(237,231,216,.4)}
.btn-ghost:hover{border-color:var(--text-dark);background:rgba(255,255,255,.06);transform:translateY(-2px)}
.btn-dark{background:var(--ink);color:var(--cream)}
.btn-dark:hover{background:var(--pine);transform:translateY(-2px)}
.btn-outline-dark{background:transparent;color:var(--text);border-color:var(--text)}
.btn-outline-dark:hover{background:var(--ink);color:var(--cream);transform:translateY(-2px)}
.btn-sm{padding:.65rem 1.15rem;font-size:.86rem}

/* ---- Topbar (Freebie-Hinweis) ---- */
.topbar{
  background:var(--amber);color:#221606;text-align:center;
  font-size:.85rem;font-weight:600;padding:.5rem 28px;letter-spacing:.01em;
}
.topbar a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* ---- Navigation ---- */
nav.mainnav{
  position:sticky;top:0;z-index:80;
  background:rgba(13,18,14,.75);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;transition:border-color .3s;
}
nav.mainnav.scrolled{border-color:var(--line-dark)}
.navin{max-width:1200px;margin:0 auto;padding:1rem 28px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{font-family:var(--serif);font-size:1.3rem;text-decoration:none;color:var(--text-dark);letter-spacing:.01em}
.brand em{font-style:italic;color:var(--amber)}
.navlinks{display:flex;align-items:center;gap:1.7rem}
.navlinks a{font-size:.9rem;font-weight:500;color:var(--muted-dark);text-decoration:none;transition:color .2s}
.navlinks a:hover,.navlinks a.active{color:var(--text-dark)}
.navlinks .btn{padding:.6rem 1.2rem;font-size:.86rem}
.burger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:6px}
.burger span{width:26px;height:2px;background:var(--text-dark);border-radius:2px;transition:.3s}

/* Sprach-Umschalter (oben rechts, per script.js eingefügt) */
.lang-switch{position:relative;margin-left:.4rem;flex-shrink:0}
.lang-btn{background:transparent;border:1px solid var(--line-dark);color:var(--text-dark);border-radius:100px;padding:.45rem .85rem;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:border-color .2s,color .2s}
.lang-btn:hover{border-color:var(--amber);color:var(--amber)}
.lang-menu{position:absolute;right:0;top:calc(100% + .55rem);background:var(--ink-2);border:1px solid var(--line-dark);border-radius:14px;min-width:160px;padding:.45rem;display:none;box-shadow:var(--shadow);z-index:95}
.lang-switch.open .lang-menu{display:block}
.lang-menu a{display:block;padding:.55rem .85rem;border-radius:9px;text-decoration:none;font-size:.9rem;color:var(--muted-dark);transition:background .2s,color .2s}
.lang-menu a:hover{background:rgba(255,255,255,.07);color:var(--text-dark)}
.lang-menu a.aktiv{color:var(--amber);font-weight:600}

/* ---- Hero ---- */
.hero{padding:5.5rem 0 5rem;position:relative;overflow:hidden}
.hero::after{
  content:"";position:absolute;inset:auto -20% -60% -20%;height:80%;
  background:radial-gradient(50% 60% at 50% 100%,rgba(49,81,62,.55),transparent 75%);
  pointer-events:none;
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center;position:relative;z-index:2}
.hero h1{font-size:clamp(3rem,7.4vw,6rem);color:var(--cream)}
.hero h1 em{font-style:italic;color:var(--amber)}
.hero .lede{font-size:1.22rem;color:var(--text-dark);margin:1.6rem 0 .5rem;max-width:44ch}
.hero .sub{font-size:1rem;color:var(--muted-dark);margin-bottom:2.2rem;max-width:52ch}
.hero .sub strong{color:var(--text-dark);font-weight:600}
.hero-cta{display:flex;flex-wrap:wrap;gap:.9rem;align-items:center}
.hero-note{font-size:.83rem;color:var(--muted-dark);margin-top:1rem}
.hero-note b{color:var(--amber)}

/* Bogen-Bild (Arch) */
.arch{
  position:relative;aspect-ratio:4/5.1;max-width:430px;margin-left:auto;
  border-radius:260px 260px 26px 26px;overflow:hidden;
  background:linear-gradient(170deg,var(--pine),var(--ink-3) 75%);
  box-shadow:var(--shadow);border:1px solid var(--line-dark);
}
.arch .ph{
  position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;
  padding:1.8rem;color:rgba(245,239,227,.8);font-size:.8rem;letter-spacing:.05em;text-align:center;
}
.arch .ph b{font-family:var(--serif);font-weight:400;font-size:1.05rem;margin-bottom:.3rem}
.arch::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,14,10,.55),transparent 50%)}
.fillimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* ---- Laufband / Marquee ---- */
.marquee{
  border-block:1px solid var(--line-dark);padding:1.05rem 0;overflow:hidden;white-space:nowrap;
  background:var(--ink-2);
}
.marquee-track{display:inline-block;animation:marq 36s linear infinite}
.marquee span{
  font-family:var(--serif);font-size:1.15rem;color:var(--muted-dark);
  margin:0 1.6rem;letter-spacing:.04em;
}
.marquee span em{color:var(--amber);font-style:italic}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---- Sektionen ---- */
section{padding:5.5rem 0}
.sec-head{max-width:64ch;margin-bottom:2.8rem}
.sec-head h2{font-size:clamp(2.2rem,4.6vw,3.6rem);color:var(--cream)}
.sec-head h2 em{font-style:italic;color:var(--amber)}
.sec-head p{color:var(--muted-dark);margin-top:1.1rem;font-size:1.08rem;max-width:58ch}
.center{text-align:center}
.center .sec-head{margin-inline:auto}
.center .eyebrow::before{display:none}

/* Helle Sektionen */
.on-light{background:var(--cream);color:var(--text)}
.on-light .sec-head h2{color:var(--ink)}
.on-light .sec-head h2 em{color:var(--amber-deep)}
.on-light .sec-head p,.on-light p{color:var(--muted)}
.on-light h3{color:var(--ink)}

/* ---- Karten-Grids ---- */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}

.card{
  background:var(--ink-2);border:1px solid var(--line-dark);border-radius:var(--r);
  padding:1.9rem 1.7rem;text-decoration:none;color:inherit;display:flex;flex-direction:column;
  transition:transform .3s ease,border-color .3s,background .3s;
}
a.card:hover{transform:translateY(-6px);border-color:var(--amber);background:var(--ink-3)}
.card .num{font-family:var(--serif);font-style:italic;font-size:1rem;color:var(--amber);letter-spacing:.06em}
.card h3{font-size:1.5rem;color:var(--cream);margin:.8rem 0 .55rem}
.card p{font-size:.95rem;color:var(--muted-dark);flex:1}
.card .go{margin-top:1.3rem;font-size:.86rem;font-weight:600;color:var(--amber)}
.card .price-line{margin-top:1rem;font-size:.9rem;color:var(--sage)}
.card .price-line b{color:var(--cream);font-size:1.15rem;font-family:var(--serif)}

.on-light .card{background:var(--card);border-color:var(--line)}
.on-light a.card:hover{border-color:var(--amber-deep);background:var(--white)}
.on-light .card h3{color:var(--ink)}
.on-light .card p{color:var(--muted)}
.on-light .card .num,.on-light .card .go{color:var(--amber-deep)}

/* ---- Angebots-Panels (groß, abwechselnd) ---- */
.panel{
  display:grid;grid-template-columns:1.05fr .95fr;gap:0;margin-top:2.2rem;
  background:var(--card);color:var(--text);border-radius:26px;overflow:hidden;box-shadow:var(--shadow);
}
.panel.rev .panel-body{order:2}
.panel-body{padding:3rem;display:flex;flex-direction:column;justify-content:center}
.panel-body .tag{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--amber-deep);font-weight:600;margin-bottom:1rem}
.panel-body h3{font-size:clamp(1.8rem,3.4vw,2.6rem);color:var(--ink);margin-bottom:.7rem}
.panel-body h3 em{font-style:italic;color:var(--amber-deep)}
.panel-body p{color:var(--muted);margin-bottom:1rem}
.feat{list-style:none;margin:.5rem 0 1.5rem}
.feat li{position:relative;padding-left:1.6rem;margin-bottom:.55rem;font-size:.96rem;color:var(--muted)}
.feat li b{color:var(--text)}
.feat li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--amber)}
.price{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;margin-bottom:.4rem}
.price .now{font-family:var(--serif);font-size:2.3rem;color:var(--ink)}
.price .was{font-size:1.05rem;color:var(--muted);text-decoration:line-through;opacity:.75}
.price .lab{font-size:.78rem;background:var(--amber);color:#221606;font-weight:700;padding:.25rem .65rem;border-radius:7px;letter-spacing:.02em}
.price-note{font-size:.87rem;color:var(--muted);margin-bottom:1.5rem}
.panel-vis{
  position:relative;min-height:380px;background:linear-gradient(165deg,var(--pine),var(--pine-2) 80%);
  display:flex;align-items:flex-end;padding:2.2rem;color:var(--cream);
}
.panel-vis::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,16,11,.72),rgba(10,16,11,.1) 55%);z-index:1}
.panel-vis .q{position:relative;z-index:2;font-family:var(--serif);font-style:italic;font-size:1.35rem;line-height:1.4}
.panel-vis .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(245,239,227,.5);font-size:.78rem;letter-spacing:.06em;text-align:center;padding:1.5rem}

/* ---- Produkttreppe ---- */
.stairs{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;align-items:end;margin-top:3rem}
.stair{
  background:var(--ink-2);border:1px solid var(--line-dark);border-radius:16px;
  padding:1.5rem 1.3rem;display:flex;flex-direction:column;text-decoration:none;color:inherit;
  transition:transform .3s,border-color .3s;
}
.stair:hover{transform:translateY(-6px);border-color:var(--amber)}
.stair .lvl{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);font-weight:600}
.stair h3{font-size:1.15rem;color:var(--cream);margin:.6rem 0 .4rem;line-height:1.25}
.stair p{font-size:.84rem;color:var(--muted-dark);flex:1}
.stair .p{margin-top:.9rem;font-family:var(--serif);font-size:1.05rem;color:var(--sage)}
.stair:nth-child(1){min-height:240px}
.stair:nth-child(2){min-height:280px}
.stair:nth-child(3){min-height:320px}
.stair:nth-child(4){min-height:360px}
.stair:nth-child(5){min-height:400px}

/* ---- Methoden / Formate ---- */
.formate{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;margin-top:2.4rem}
.format{
  border-radius:var(--r);padding:2.1rem 1.9rem;border:1px solid var(--line-dark);
  background:var(--ink-2);text-decoration:none;color:inherit;transition:transform .3s,border-color .3s;
  display:flex;flex-direction:column;
}
a.format:hover{transform:translateY(-5px);border-color:var(--amber)}
.format .word{font-family:var(--serif);font-size:2rem;letter-spacing:.14em;color:var(--cream)}
.format .word em{color:var(--amber);font-style:normal}
.format .claim{font-family:var(--serif);font-style:italic;color:var(--sage);margin:.4rem 0 .8rem;font-size:1.05rem}
.format p{font-size:.93rem;color:var(--muted-dark);flex:1}
.format .go{margin-top:1.1rem;font-size:.85rem;font-weight:600;color:var(--amber)}

/* ---- Bücher ---- */
.bookshelf{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin-top:2.6rem}
.book{
  position:relative;border-radius:14px;padding:1.8rem 1.4rem;min-height:330px;
  display:flex;flex-direction:column;color:var(--cream);text-decoration:none;
  border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow);
  transition:transform .3s;overflow:hidden;
}
.book:hover{transform:translateY(-7px) rotate(-.5deg)}
.book::before{content:"";position:absolute;left:12px;top:0;bottom:0;width:1px;background:rgba(255,255,255,.25)}
.book .bnum{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;opacity:.75}
.book .btitle{font-family:var(--serif);font-size:2rem;letter-spacing:.1em;margin:.7rem 0 .5rem}
.book .bclaim{font-family:var(--serif);font-style:italic;font-size:1rem;opacity:.92;line-height:1.4;flex:1}
.book .bstate{margin-top:1.2rem;font-size:.76rem;font-weight:700;letter-spacing:.06em;background:rgba(0,0,0,.28);padding:.35rem .7rem;border-radius:100px;align-self:flex-start}
.bk-handeln{background:linear-gradient(165deg,#31513E,#1E3527)}
.bk-zukunft{background:linear-gradient(165deg,#B87A32,#8C5620)}
.bk-raum{background:linear-gradient(165deg,#42604F,#2B4437)}
.bk-wurzel{background:linear-gradient(165deg,#5C4A2F,#3E3120)}

/* ---- Freebie-Band ---- */
.freeband{background:linear-gradient(170deg,var(--pine),var(--pine-2));color:var(--cream)}
.freeband .sec-head h2{color:var(--cream)}
.freeband .sec-head h2 em{color:var(--amber)}
.freeband .sec-head p{color:rgba(245,239,227,.85)}
.free-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.free-list{list-style:none;margin-top:1.4rem}
.free-list li{
  display:flex;gap:.9rem;align-items:baseline;padding:.85rem 0;
  border-bottom:1px solid rgba(245,239,227,.16);font-size:1rem;color:rgba(245,239,227,.92);
}
.free-list li:last-child{border-bottom:none}
.free-list .fnum{font-family:var(--serif);font-style:italic;color:var(--amber);min-width:1.4rem}
.free-list b{color:var(--cream);font-weight:600}

/* ---- Formulare ---- */
.formbox{background:var(--white);border-radius:var(--r);padding:2rem;box-shadow:var(--shadow);color:var(--text)}
.formbox h3{font-size:1.5rem;color:var(--ink);margin-bottom:.3rem}
.formbox .fh{font-size:.9rem;color:var(--muted);margin-bottom:1rem}
.formbox label{font-size:.82rem;font-weight:600;color:var(--text);display:block;margin:.9rem 0 .3rem}
.formbox input,.formbox select,.formbox textarea{
  width:100%;padding:.85rem 1rem;border:1.5px solid var(--line);border-radius:11px;
  font-family:var(--sans);font-size:.95rem;color:var(--text);background:#fff;
}
.formbox input:focus,.formbox select:focus,.formbox textarea:focus{border-color:var(--amber-deep);outline:none}
.formbox textarea{min-height:130px;resize:vertical}
.formbox .btn{width:100%;justify-content:center;margin-top:1.2rem}
.consent{display:flex;gap:.6rem;align-items:flex-start;margin-top:1rem;font-size:.8rem;color:var(--muted)}
.consent input{width:auto;margin-top:.25rem}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.form-hinweis{font-size:.8rem;color:var(--muted);margin-top:.8rem}

/* ---- Zitat-Band ---- */
.quoteband{background:var(--ink-2);border-block:1px solid var(--line-dark);text-align:center}
.quoteband blockquote{
  font-family:var(--serif);font-style:italic;font-size:clamp(1.7rem,4vw,2.9rem);
  line-height:1.3;color:var(--cream);max-width:24ch;margin:0 auto 1.6rem;
}
.quoteband blockquote em{color:var(--amber)}
.quoteband .qsrc{font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-dark)}

/* ---- Story / Über mich ---- */
.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:3.5rem;align-items:center}
.turns{margin:1.8rem 0;border-left:2px solid var(--amber);padding-left:1.6rem;display:flex;flex-direction:column;gap:1.4rem}
.turn .age{font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--amber);margin-bottom:.2rem}
.turn p{color:var(--muted-dark);font-size:1rem}
.on-light .turn p{color:var(--muted)}
.turn p strong{color:var(--cream)}
.on-light .turn p strong{color:var(--ink)}
.credo{font-family:var(--serif);font-size:1.6rem;line-height:1.4;margin:1.6rem 0;color:var(--cream)}
.credo em{font-style:italic;color:var(--amber)}
.on-light .credo{color:var(--ink)}
.on-light .credo em{color:var(--amber-deep)}
.vita{font-size:.92rem;color:var(--muted-dark);background:var(--ink-2);border:1px solid var(--line-dark);border-radius:14px;padding:1.3rem 1.5rem}
.vita b{color:var(--cream)}
.on-light .vita{background:var(--card);border-color:var(--line);color:var(--muted)}
.on-light .vita b{color:var(--ink)}

/* ---- Stats ---- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.5rem;text-align:center}
.stat{padding:1.6rem 1rem;border:1px solid var(--line-dark);border-radius:var(--r);background:var(--ink-2)}
.stat .n{font-family:var(--serif);font-size:2.3rem;color:var(--amber)}
.stat .l{font-size:.82rem;color:var(--muted-dark);letter-spacing:.04em;margin-top:.3rem}

/* ---- Wissen / Artikel ---- */
.artikel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:2.4rem}
.artikel-karte{
  background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  padding:1.8rem 1.6rem;text-decoration:none;color:var(--text);display:flex;flex-direction:column;
  transition:transform .3s,border-color .3s;
}
.artikel-karte:hover{transform:translateY(-6px);border-color:var(--amber-deep)}
.artikel-karte .kat{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber-deep);font-weight:600}
.artikel-karte h3{font-size:1.32rem;margin:.7rem 0 .5rem;color:var(--ink);line-height:1.25}
.artikel-karte p{font-size:.92rem;color:var(--muted);flex:1}
.artikel-karte .lesen{margin-top:1.1rem;font-size:.85rem;font-weight:600;color:var(--amber-deep)}

/* Artikel-Seite */
.artikel{background:var(--cream);color:var(--text)}
.artikel-head{padding:4.5rem 0 2.5rem}
.artikel-head h1{font-size:clamp(2.3rem,5vw,3.8rem);color:var(--ink);max-width:22ch}
.artikel-head h1 em{font-style:italic;color:var(--amber-deep)}
.artikel-head .meta{font-size:.85rem;color:var(--muted);margin-top:1.2rem;letter-spacing:.04em}
.artikel-body{padding:0 0 4rem}
.artikel-body h2{font-size:clamp(1.6rem,3vw,2.2rem);color:var(--ink);margin:2.6rem 0 1rem}
.artikel-body h3{font-size:1.3rem;color:var(--ink);margin:2rem 0 .7rem}
.artikel-body p{color:#3A423B;margin-bottom:1.1rem;font-size:1.03rem}
.artikel-body ul,.artikel-body ol{margin:0 0 1.2rem 1.4rem;color:#3A423B}
.artikel-body li{margin-bottom:.5rem}
.artikel-body strong{color:var(--ink)}
.artikel-body blockquote{
  border-left:3px solid var(--amber);padding:.4rem 0 .4rem 1.4rem;margin:1.8rem 0;
  font-family:var(--serif);font-style:italic;font-size:1.3rem;color:var(--ink);
}
.merksatz{
  background:var(--amber-soft);border:1px solid rgba(222,158,78,.4);border-radius:14px;
  padding:1.3rem 1.5rem;margin:1.8rem 0;font-size:.98rem;color:var(--text);
}
.merksatz b{color:var(--amber-deep)}
.breadcrumb{font-size:.8rem;color:var(--muted);padding-top:2rem}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--amber-deep)}

/* ---- FAQ Accordion ---- */
.faq{max-width:840px;margin:2.4rem auto 0}
.faq details{
  border-bottom:1px solid var(--line-dark);padding:1.2rem 0;
}
.on-light .faq details{border-color:var(--line)}
.faq summary{
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;
  font-family:var(--serif);font-size:1.25rem;color:var(--cream);
}
.on-light .faq summary{color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.5rem;color:var(--amber);transition:transform .3s;flex-shrink:0}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin-top:.8rem;color:var(--muted-dark);font-size:.98rem;max-width:65ch}
.on-light .faq details p{color:var(--muted)}

/* ---- Testimonials ---- */
.testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem;margin-top:2.4rem}
.testi-card{background:var(--ink-2);border:1px solid var(--line-dark);border-radius:var(--r);padding:2rem}
.testi-card .qm{font-family:var(--serif);font-size:2.6rem;color:var(--amber);line-height:.5}
.testi-card p{margin-top:1rem;font-size:1.05rem;color:var(--text-dark)}
.testi-card .who{font-family:var(--serif);font-style:italic;color:var(--sage);margin-top:1rem;font-size:.95rem}

/* ---- Finale CTA ---- */
.final{
  text-align:center;padding:7rem 0;position:relative;overflow:hidden;
  background:radial-gradient(60% 80% at 50% 110%,rgba(49,81,62,.6),transparent 70%),var(--ink);
}
.final h2{font-size:clamp(2.4rem,5.6vw,4.4rem);color:var(--cream);max-width:20ch;margin:0 auto}
.final h2 em{font-style:italic;color:var(--amber)}
.final p{color:var(--muted-dark);margin:1.4rem auto 2.4rem;font-size:1.12rem;max-width:44ch}

/* ---- Footer ---- */
footer{background:var(--ink);border-top:1px solid var(--line-dark);padding:4rem 0 2rem;color:var(--muted-dark);font-size:.92rem}
.foot-mark{
  font-family:var(--serif);font-size:clamp(2.6rem,8vw,6rem);color:var(--cream);line-height:1;
  letter-spacing:.02em;margin-bottom:2.6rem;
}
.foot-mark em{font-style:italic;color:var(--amber)}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:2rem;align-items:start}
footer h4{color:var(--cream);font-family:var(--sans);font-weight:600;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1rem}
footer a{color:var(--muted-dark);text-decoration:none;display:block;margin-bottom:.55rem;transition:color .2s}
footer a:hover{color:var(--amber)}
.foot-about p{margin-bottom:1rem;max-width:34ch}
.foot-contact span{display:block;margin-bottom:.4rem}
.socials{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}
.socials a{
  display:inline-flex;margin:0;padding:.45rem 1rem;border:1px solid var(--line-dark);border-radius:100px;
  font-size:.83rem;font-weight:600;color:var(--text-dark);
}
.socials a:hover{border-color:var(--amber);color:var(--amber)}
.foot-bot{border-top:1px solid var(--line-dark);margin-top:3rem;padding-top:1.4rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;font-size:.8rem}
.foot-bot a{display:inline;margin:0}

/* ---- Scroll-Reveal ---- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}

/* ---- Responsive ---- */
@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:2.5rem}
  .arch{margin:0 auto;max-width:340px}
  .grid-3,.artikel-grid{grid-template-columns:1fr 1fr}
  .grid-4,.bookshelf,.stats{grid-template-columns:1fr 1fr}
  .stairs{grid-template-columns:1fr 1fr}
  .stair{min-height:0!important}
  .panel,.panel.rev{grid-template-columns:1fr}
  .panel.rev .panel-body{order:0}
  .panel-vis{min-height:240px}
  .formate,.free-grid,.story-grid,.testi-grid,.grid-2{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .navlinks{display:none}
  .navlinks.open{
    display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;
    background:var(--ink-2);padding:1.5rem 28px;gap:1.1rem;border-bottom:1px solid var(--line-dark);
  }
  .burger{display:flex}
}
@media(max-width:560px){
  body{font-size:16px}
  section{padding:3.8rem 0}
  .grid-3,.grid-4,.artikel-grid,.bookshelf,.stairs,.stats,.foot-grid{grid-template-columns:1fr}
  .panel-body{padding:2.1rem 1.6rem}
  .hero{padding:3.5rem 0}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}
