/* ===================================================================
   LUMI – Der Gedanken-Kompass · lumi.body-mind-oase.at
   Gemeinsames Stylesheet. Keine externen Server, keine Cookies.
   =================================================================== */

@font-face{font-family:'Lora';src:url('fonts/lora.woff2') format('woff2');
  font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:'Lora';src:url('fonts/lora-italic.woff2') format('woff2');
  font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/poppins-400.woff2') format('woff2');
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/poppins-500.woff2') format('woff2');
  font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Poppins';src:url('fonts/poppins-700.woff2') format('woff2');
  font-weight:600 700;font-style:normal;font-display:swap}

:root{
  --teal:#0E3A44; --gold:#D9922B; --rust:#C05F2C;
  --cream:#FDF8EF; --ink:#20323A; --nacht:#0B2430;
  --papier:#FFFDF8;
  --serif:'Lora',Georgia,'Times New Roman',serif;
  --sans:'Poppins','Segoe UI',system-ui,-apple-system,sans-serif;
  --schatten:0 2px 10px rgba(14,58,68,.07),0 12px 34px rgba(14,58,68,.09);
}

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:var(--serif);font-size:18px;line-height:1.62;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--rust)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{
  outline:3px solid var(--gold);outline-offset:3px;border-radius:4px}

.wrap{width:min(100% - 2.4rem,64rem);margin-inline:auto}
.eng{width:min(100% - 2.4rem,44rem);margin-inline:auto}

/* --- Kopf ---------------------------------------------------------- */
.kopf{
  background:var(--nacht);color:#F6EFE2;
  background-image:
    radial-gradient(1px 1px at 12% 22%,rgba(255,225,170,.75),transparent),
    radial-gradient(1.4px 1.4px at 78% 16%,rgba(255,225,170,.55),transparent),
    radial-gradient(1px 1px at 63% 62%,rgba(255,225,170,.45),transparent),
    radial-gradient(1.2px 1.2px at 30% 78%,rgba(255,225,170,.5),transparent),
    radial-gradient(1px 1px at 90% 70%,rgba(255,225,170,.4),transparent),
    radial-gradient(110% 130% at 50% -10%,#14404C 0%,#0B2430 62%,#081A23 100%);
  padding:3.2rem 0 3.6rem;
}
.kopf .wrap{display:grid;gap:2.4rem;align-items:center}
@media(min-width:820px){
  .kopf{padding:4.4rem 0 4.6rem}
  .kopf .wrap{grid-template-columns:1fr 20rem;gap:3.4rem}
}
.marke{
  font-family:var(--sans);font-weight:600;font-size:.72rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--gold);
  margin:0 0 1rem;
}
.kopf h1{
  font-family:var(--sans);font-weight:700;line-height:1.1;
  font-size:clamp(2rem,6.2vw,3.05rem);color:#fff;margin:0 0 1rem;
  letter-spacing:-.015em;
}
.kopf .lead{font-size:clamp(1.06rem,2.6vw,1.22rem);color:#E4DACA;margin:0 0 1.6rem;max-width:34rem}
.kopf .lead strong{color:#fff;font-weight:600}
.buchbild{
  border-radius:14px;box-shadow:0 18px 46px rgba(0,0,0,.42);
  border:1px solid rgba(217,146,43,.35);
}
.springer{
  display:inline-flex;align-items:center;gap:.6rem;
  font-family:var(--sans);font-weight:600;font-size:1rem;
  background:var(--gold);color:#20130A;text-decoration:none;
  padding:.85rem 1.5rem;border-radius:999px;
  box-shadow:0 6px 18px rgba(217,146,43,.32);
  transition:transform .15s ease,box-shadow .15s ease;
}
.springer:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(217,146,43,.42)}

/* --- Abschnitte ---------------------------------------------------- */
section{padding:3.4rem 0}
section.hell{background:var(--papier)}
.kicker{
  font-family:var(--sans);font-weight:600;font-size:.7rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--gold);
  margin:0 0 .55rem;
}
h2{
  font-family:var(--sans);font-weight:700;letter-spacing:-.01em;
  font-size:clamp(1.55rem,4.4vw,2.1rem);line-height:1.2;
  color:var(--teal);margin:0 0 .9rem;
}
h3{font-family:var(--sans);font-weight:600;font-size:1.16rem;color:var(--teal);margin:0 0 .5rem}
.strich{width:3.6rem;height:4px;background:var(--gold);border-radius:2px;margin:0 0 1.5rem}
.intro{font-size:1.08rem;max-width:44rem;margin:0 0 2.2rem}

/* --- Download-Karten ----------------------------------------------- */
.karten{display:grid;gap:1.6rem;grid-template-columns:1fr}
@media(min-width:720px){.karten{grid-template-columns:repeat(3,1fr);gap:1.5rem}}
.karte{
  background:#fff;border:1px solid rgba(217,146,43,.34);border-radius:16px;
  box-shadow:var(--schatten);overflow:hidden;display:flex;flex-direction:column;
}
.karte .bild{background:#F3EADA;padding:1.1rem 1.1rem 0;display:flex;justify-content:center}
.karte .bild img{
  border-radius:6px;box-shadow:0 3px 12px rgba(14,58,68,.18);
  max-height:14.5rem;width:auto;
}
.karte .txt{padding:1.25rem 1.35rem 1.5rem;display:flex;flex-direction:column;flex:1}
.karte h3{margin-bottom:.35rem}
.karte .meta{
  font-family:var(--sans);font-size:.74rem;font-weight:500;letter-spacing:.06em;
  text-transform:uppercase;color:var(--rust);margin:0 0 .7rem;
}
.karte p{margin:0 0 1.25rem;font-size:.97rem;line-height:1.58}
.karte .knopf{margin-top:auto}
.knopf{
  display:block;text-align:center;font-family:var(--sans);font-weight:600;
  font-size:.98rem;background:var(--teal);color:#fff;text-decoration:none;
  padding:.82rem 1.1rem;border-radius:10px;
  transition:background .15s ease,transform .15s ease;
}
.knopf:hover{background:#155263;transform:translateY(-1px)}
.knopf.gold{background:var(--gold);color:#20130A}
.knopf.gold:hover{background:#E7A241}

.drucktipp{
  margin-top:1.9rem;background:#FFF6E6;border:1px solid rgba(217,146,43,.4);
  border-left:5px solid var(--gold);border-radius:12px;padding:1.15rem 1.35rem;
  font-size:.98rem;
}
.drucktipp b{font-family:var(--sans);font-weight:600;color:var(--teal)}
.drucktipp ul{margin:.6rem 0 0;padding-left:1.15rem}
.drucktipp li{margin:.3rem 0}

/* --- Gruppen-Kasten ------------------------------------------------ */
.gruppe{
  background:var(--teal);color:#EDE4D5;border-radius:18px;
  padding:2rem 1.6rem;box-shadow:var(--schatten);
}
@media(min-width:720px){.gruppe{padding:2.4rem 2.6rem}}
.gruppe .kicker{color:var(--gold)}
.gruppe h2{color:#fff;font-size:clamp(1.35rem,3.6vw,1.75rem)}
.gruppe .strich{background:var(--gold)}
.gruppe p{margin:0 0 1rem}
.gruppe strong{color:#fff}
.gruppe .erlaubnis{
  margin-top:1.4rem;background:rgba(255,255,255,.08);
  border:1px solid rgba(217,146,43,.4);border-radius:12px;
  padding:1.1rem 1.25rem;font-size:.99rem;
}

/* --- Band 2 / Anmeldung -------------------------------------------- */
.band2{
  background:#fff;border:1px solid rgba(217,146,43,.34);border-radius:18px;
  box-shadow:var(--schatten);padding:2rem 1.6rem;
}
@media(min-width:720px){.band2{padding:2.6rem 2.8rem}}
.band2 .titel2{
  font-family:var(--serif);font-style:italic;font-size:1.22rem;
  color:var(--rust);margin:.2rem 0 1.1rem;
}
.feldreihe{display:grid;gap:.75rem;margin:1.4rem 0 .9rem}
@media(min-width:600px){.feldreihe{grid-template-columns:1fr auto}}
input[type=email],input[type=text]{
  font-family:var(--sans);font-size:1rem;padding:.85rem 1rem;
  border:1.5px solid rgba(14,58,68,.28);border-radius:10px;
  background:var(--papier);color:var(--ink);width:100%;
}
input[type=email]::placeholder{color:#8A9AA1}
button.knopf{border:0;cursor:pointer;width:100%}
@media(min-width:600px){button.knopf{width:auto;padding-inline:1.9rem}}
.zustimmung{display:flex;gap:.7rem;align-items:flex-start;font-size:.9rem;line-height:1.5;margin:0}
.zustimmung input{margin-top:.28rem;width:1.05rem;height:1.05rem;flex:0 0 auto;accent-color:var(--gold)}
.kleingedruckt{font-size:.85rem;color:#5C6B72;margin:1rem 0 0;line-height:1.55}
.meldung{
  margin-top:1.1rem;padding:.95rem 1.15rem;border-radius:10px;font-size:.97rem;
  display:none;
}
.meldung.gut{display:block;background:#EAF5EC;border:1px solid #A9CDB2;color:#265B33}
.meldung.schlecht{display:block;background:#FDECE7;border:1px solid #E4A992;color:#8A3A1C}

/* --- Bitte / Rezension --------------------------------------------- */
.bitte{
  border-left:5px solid var(--rust);background:#FFF6F1;
  border-radius:12px;padding:1.4rem 1.5rem;
}
.bitte h3{color:var(--rust)}

/* --- Autor --------------------------------------------------------- */
.autor{display:grid;gap:1.2rem;align-items:center;margin-top:2.4rem}
@media(min-width:620px){.autor{grid-template-columns:auto 1fr;gap:1.6rem}}
.autor .t p{margin:.4rem 0 0;font-size:.99rem}

/* --- Fuß ----------------------------------------------------------- */
.fuss{background:var(--nacht);color:#B9C6CB;padding:2.6rem 0 3rem;font-size:.92rem}
.fuss a{color:#E8C282;text-decoration:none;border-bottom:1px solid rgba(232,194,130,.35)}
.fuss a:hover{color:#F3D6A4}
.fuss .zeile{display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;margin-bottom:1.1rem;
  font-family:var(--sans);font-weight:500}
.fuss .fein{color:#7E8F96;line-height:1.6;margin:0}

/* --- Rechtstexte --------------------------------------------------- */
.recht{padding:2.8rem 0 4rem}
.recht h1{font-family:var(--sans);font-weight:700;font-size:clamp(1.7rem,5vw,2.3rem);
  color:var(--teal);margin:0 0 .4rem;letter-spacing:-.01em}
.recht h2{font-size:1.24rem;margin:2.2rem 0 .6rem}
.recht h3{font-size:1.05rem;margin:1.5rem 0 .35rem}
.recht p,.recht li{font-size:1rem;line-height:1.65}
.recht ul{padding-left:1.2rem}
.recht li{margin:.35rem 0}
.zurueck{
  display:inline-block;font-family:var(--sans);font-weight:600;font-size:.92rem;
  color:var(--rust);text-decoration:none;margin-bottom:1.6rem;
}

/* --- Platzhalter-Warnung (verschwindet nach dem Ausfüllen) ---------- */
.todo{
  background:#FFE9E4;border:2px dashed #C0492C;color:#8A2E14;
  border-radius:10px;padding:.7rem .95rem;margin:.6rem 0;
  font-family:var(--sans);font-size:.88rem;font-weight:500;
}
.todo b{color:#6E2410}
