/* Ten Skills · Marketing-Website (Überblick + Details)
   Grundlage: fuehrung-kompakt-seminar.netlify.app (Deck, Punkt-Navigation, Signatur-Elemente aus design-rb01).
   Beide Seiten nutzen diese Datei; seiteneigene Teile stehen jeweils im <style> der Seite. */

:root{
  --paper:#FAF8F4;
  --paper-2:#F2EEE7;
  --ink:#1A1917;
  --forest:#2D5549;
  --forest-deep:#21413a;
  --gold:#C19A6B;
  --gold-soft:#d4b083;
  --gold-text:#8A6A3F;
  --pop:#6B3A5B;
  --pop-light:#8F5480;
  --red:#C0392B;
  --muted:#6E726C;
  --line:rgba(26,25,23,.12);
  --display:'Jost',sans-serif;
  --body:'Mulish',sans-serif;
  --shadow-sm:0 1px 3px rgba(26,25,23,.06),0 1px 2px rgba(26,25,23,.04);
  --shadow-md:0 4px 12px rgba(26,25,23,.10),0 2px 4px rgba(26,25,23,.05);
  --shadow-lg:0 12px 32px rgba(26,25,23,.16),0 4px 8px rgba(26,25,23,.07);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overflow:hidden}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:60;opacity:.5;
  background-image:radial-gradient(rgba(0,0,0,.022) 1px,transparent 1px);background-size:3px 3px}
::selection{background:var(--pop);color:#fff}
#progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--gold);z-index:70;transition:width .1s linear}
.brand{position:fixed;top:clamp(18px,3vh,30px);left:clamp(22px,6vw,64px);z-index:50;
  font-family:var(--display);font-weight:400;letter-spacing:.02em;font-size:1rem;color:var(--forest);transition:color .3s;text-decoration:none}
.brand.on-dark{color:var(--paper)}
/* Am Handy liegt der feste Schriftzug sonst über dem Text – nach dem Einstieg blendet er sich aus. */
.brand.weg{opacity:0;pointer-events:none}
.brand{transition:color .3s,opacity .3s}
.brand b{font-weight:500}

.deck{scroll-snap-type:y proximity;height:100vh;height:100dvh;overflow-y:scroll;scrollbar-width:none}
.deck::-webkit-scrollbar{display:none}
section{scroll-snap-align:start;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;
  justify-content:center;padding:14vh clamp(24px,7vw,150px) 10vh;position:relative;overflow:hidden}
section > :not(.snum):not(.mono){position:relative;z-index:1}
/* Auf dem Handy kämpfen lange Abschnitte gegen das Einrasten – dort frei scrollen lassen. */
@media(max-width:760px){
  .deck{scroll-snap-type:none}
  section{min-height:auto;padding:9vh clamp(22px,6vw,40px) 8vh}
}

.eyebrow{font-family:var(--body);font-weight:700;font-size:clamp(.92rem,1.4vw,1.08rem);letter-spacing:.2em;
  text-transform:uppercase;color:var(--gold);margin-bottom:1.7rem;display:flex;align-items:center;gap:.8rem}
.eyebrow.red{color:var(--red)}
h2{font-family:var(--display);font-weight:300;letter-spacing:-.01em;line-height:1.06;
  font-size:clamp(1.9rem,4.6vw,3.2rem);color:var(--forest);max-width:22ch}
.dark h2{color:var(--paper);font-weight:200}
mark{background:none;color:var(--pop);font-weight:600}
.intro{margin-top:1.2rem;max-width:56ch;font-weight:300;font-size:1.06rem;line-height:1.6;color:var(--ink)}
.dark .intro{color:rgba(250,248,244,.84)}
.dark .eyebrow{color:var(--gold-soft)}
.note{margin-top:2rem;padding-top:1.3rem;border-top:1px solid var(--line);
  max-width:60ch;font-weight:300;font-size:.97rem;line-height:1.6;color:var(--muted)}
.dark .note{border-top-color:rgba(250,248,244,.22);color:rgba(250,248,244,.8)}
.weiterlink{display:inline-block;margin-top:1.6rem;font-weight:700;font-size:.98rem;color:var(--forest);
  text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px;transition:color .2s,border-color .2s}
.weiterlink:hover{color:var(--pop);border-color:var(--pop)}
.dark .weiterlink{color:var(--gold-soft);border-color:rgba(212,176,131,.6)}
.dark .weiterlink:hover{color:var(--pop-light);border-color:var(--pop-light)}
.band{margin-top:2.4rem;border-left:3px solid var(--gold);padding:.2rem 0 .2rem 1.4rem;
  max-width:62ch;font-weight:300;line-height:1.65;color:var(--ink)}
.band b{font-weight:700;color:var(--forest)}

/* ── Signatur: Outline-Ziffer ── */
.snum{position:absolute;top:clamp(4vh,6vh,8vh);right:clamp(20px,6vw,120px);z-index:0;
  font-family:var(--display);font-weight:200;line-height:.78;letter-spacing:-.03em;
  font-size:clamp(6rem,15vw,13rem);color:transparent;
  -webkit-text-stroke:1.5px rgba(107,58,91,.28);pointer-events:none;user-select:none}
.dark .snum{-webkit-text-stroke-color:rgba(250,248,244,.18)}
@media(max-width:760px){.snum{font-size:clamp(4.5rem,22vw,7rem);top:4vh;right:14px;-webkit-text-stroke-width:1.2px}}

/* ── Signatur: Marker-Strich ── */
.mk{position:relative;display:inline-block;white-space:nowrap}
.mk svg{position:absolute;left:-1.5%;bottom:-.16em;width:103%;height:.38em;overflow:visible;pointer-events:none}
.mk path{fill:none;stroke:var(--gold);stroke-width:5;stroke-linecap:round;vector-effect:non-scaling-stroke;
  stroke-dasharray:340;stroke-dashoffset:340;animation:draw 1s ease forwards .4s}
@keyframes draw{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.mk path{animation:none;stroke-dashoffset:0}}

/* ── Signatur: Monogramm ── */
.mono{position:absolute;right:clamp(16px,5vw,110px);bottom:4vh;z-index:0;
  font-family:var(--display);font-weight:200;font-size:clamp(8rem,20vw,16rem);line-height:.72;
  letter-spacing:-.06em;pointer-events:none;user-select:none}
.mono .r{color:rgba(250,248,244,.075)}
.mono .b{color:rgba(193,154,107,.10)}

/* ── Signatur: Buttons ── */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:1.05rem 2.1rem;border-radius:2px;
  font-family:var(--body);font-weight:700;font-size:.95rem;text-decoration:none;cursor:pointer;
  box-shadow:var(--shadow-md);transition:transform .22s ease,box-shadow .22s ease,background .22s ease,color .22s ease,border-color .22s ease}
.btn-primary{background:var(--gold);color:#241d11;border:1px solid var(--gold)}
.btn-primary:hover{background:var(--pop);border-color:var(--pop);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.btn-outline{background:transparent;border:1px solid var(--forest);color:var(--forest);box-shadow:none}
.btn-outline:hover{border-color:var(--pop);color:var(--pop);transform:translateY(-2px)}
.btn-ghost{border:1px solid rgba(250,248,244,.4);color:var(--paper);box-shadow:none;background:transparent}
.btn-ghost:hover{border-color:var(--pop-light);color:var(--pop-light);transform:translateY(-2px)}
.btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}
.btns{margin-top:1.9rem;display:flex;flex-wrap:wrap;gap:.9rem;align-items:center}

/* ── Hero ── */
.hero{background:var(--paper);padding-top:12vh;padding-bottom:8vh}
.hero h1{font-family:var(--display);font-weight:200;font-size:clamp(2.6rem,7vw,5.4rem);
  line-height:1.02;color:var(--forest);letter-spacing:-.015em;max-width:15ch}
.hero .sub{margin-top:1.5rem;max-width:46ch;font-weight:300;font-size:clamp(1.02rem,2vw,1.24rem);
  line-height:1.55;color:var(--ink)}
.fakten{margin-top:2rem;display:inline-flex;flex-wrap:wrap;align-items:center;gap:.4rem .95rem;
  border-top:2px solid var(--gold);border-bottom:1px solid var(--line);padding:.85rem 0;max-width:100%}
.fakten .p{font-family:var(--display);font-weight:400;font-size:clamp(1.4rem,3.2vw,1.9rem);
  color:var(--forest);line-height:1;letter-spacing:-.01em}
.fakten .d{font-weight:300;font-size:.97rem;color:var(--muted);line-height:1.45}
.hero .by{margin-top:2.2rem;font-size:.86rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
@media(max-width:760px){
  .hero{padding-top:13vh}
  .hero .sub{font-size:1.02rem}
  .fakten{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}
}

/* ── Karten für Nutzen und Wirkung ── */
.nwrap{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem;margin-top:2.6rem;max-width:1040px}
.ncard h4{font-family:var(--body);font-weight:700;font-size:.76rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold-text);margin-bottom:.8rem}
.ncard p{font-weight:300;font-size:.97rem;line-height:1.58;color:var(--ink)}
.ncard a{color:var(--forest);font-weight:700;text-decoration:none;border-bottom:1px solid var(--gold)}
.ncard a:hover{color:var(--pop);border-color:var(--pop)}
@media(max-width:760px){.nwrap{grid-template-columns:1fr;gap:1.4rem}}

/* ── Drei Formate ── */
.fcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;margin-top:2.4rem;max-width:1080px}
.fcard{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:3px;
  padding:1.3rem 1.35rem 1.4rem;box-shadow:var(--shadow-sm)}
.fcard.hl{border-top-color:var(--forest)}
.fcard .fk{font-weight:700;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text)}
.fcard h3{font-family:var(--display);font-weight:400;font-size:1.6rem;color:var(--forest);margin:.25rem 0 .2rem}
.fcard .fd{font-family:var(--display);font-weight:400;font-size:1rem;color:var(--ink)}
.fcard p{margin-top:.75rem;font-weight:300;font-size:.95rem;line-height:1.55;color:var(--ink)}
@media(max-width:860px){.fcards{grid-template-columns:1fr}}

/* ── 05 Rudi ── */
.rgrid{display:grid;grid-template-columns:.76fr 1.2fr .88fr;gap:clamp(1.4rem,3vw,2.8rem);
  margin-top:2.2rem;max-width:1180px;align-items:start}
.portrait{border-radius:4px;overflow:hidden;box-shadow:var(--shadow-lg);background:var(--paper-2)}
.portrait img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 12%}
.rgrid p{font-weight:300;line-height:1.65;color:var(--ink);margin-bottom:1rem;max-width:52ch}
.rgrid p:last-child{margin-bottom:0}
.rfacts{border-left:3px solid var(--gold);padding-left:1.4rem;display:flex;flex-direction:column;gap:1.1rem}
.rfact .rf{font-family:var(--display);font-weight:300;font-size:1.5rem;color:var(--forest);line-height:1.1}
.rfact .rl{font-size:.88rem;color:var(--muted);line-height:1.4;margin-top:.2rem}
@media(max-width:1000px){.rgrid{grid-template-columns:.7fr 1.3fr;gap:1.6rem 2rem}.rfacts{grid-column:1/-1}}
@media(max-width:760px){.rgrid{grid-template-columns:1fr;gap:1.4rem}.portrait{max-width:200px}.rfacts{display:none}}

/* ── Häufige Fragen ── */
.faqs{margin-top:2.2rem;max-width:820px;border-top:1px solid var(--line)}
.faqs details{border-bottom:1px solid var(--line)}
.faqs summary{list-style:none;cursor:pointer;padding:1.05rem 2.2rem 1.05rem 0;position:relative;
  font-family:var(--body);font-weight:700;font-size:1.02rem;color:var(--forest);transition:color .2s}
.faqs summary::-webkit-details-marker{display:none}
.faqs summary:hover{color:var(--pop)}
.faqs summary::after{content:"+";position:absolute;right:.2rem;top:50%;transform:translateY(-50%);
  font-family:var(--display);font-weight:300;font-size:1.5rem;color:var(--gold);transition:transform .25s}
.faqs details[open] summary::after{content:"–";transform:translateY(-50%)}
.faqs .a{padding:0 2.2rem 1.3rem 0;font-weight:300;line-height:1.65;color:var(--ink);max-width:62ch}

/* ── Kontakt (dunkel, ohne Formular) ── */
.kontakt-s{background:var(--forest-deep);padding-top:12vh;padding-bottom:8vh}
.ctagrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.4rem,3vw,3rem) clamp(2rem,5vw,4.5rem);
  max-width:1080px;align-items:start}
.ctamain{grid-column:1;grid-row:1}
.kcard{grid-column:2;grid-row:1/span 2}
.ctafoot{grid-column:1;grid-row:2}
.kontakt-s h2{font-weight:200;font-size:clamp(2.2rem,5vw,3.9rem);color:var(--paper);max-width:14ch}
.kontakt-s h2 em{font-style:normal;color:var(--gold-soft)}
.kontakt-s .lead{margin-top:1.2rem;max-width:40ch;font-weight:300;font-size:1.06rem;line-height:1.55;color:rgba(250,248,244,.82)}
.kontakt-s .kond{margin-top:1.4rem;padding-top:1.1rem;border-top:1px solid rgba(250,248,244,.22);
  font-weight:300;font-size:.98rem;line-height:1.55;color:rgba(250,248,244,.82);max-width:38ch}
.kontakt-s .kond b{font-family:var(--display);font-weight:400;font-size:1.2rem;color:var(--gold-soft)}
.signature{margin-top:2rem;padding-top:1.3rem;border-top:1px solid rgba(250,248,244,.22);display:flex;flex-direction:column;gap:.2rem}
.signature .sname{font-family:var(--display);font-weight:400;color:var(--paper);font-size:clamp(1.4rem,2.6vw,1.8rem);letter-spacing:.01em}
.signature .srole{font-weight:500;color:var(--gold-soft);font-size:.98rem;letter-spacing:.02em}
.legal{display:inline-block;margin-top:1.6rem;font-size:.85rem;color:rgba(250,248,244,.55);text-decoration:none;
  letter-spacing:.05em;width:fit-content;border-bottom:1px solid transparent;transition:.2s}
.legal:hover{color:var(--pop-light);border-bottom-color:var(--pop-light)}
.kcard{background:rgba(250,248,244,.055);border:1px solid rgba(250,248,244,.16);border-radius:4px;
  padding:clamp(1.4rem,2.6vw,2rem);box-shadow:var(--shadow-lg)}
.kcard .ct{font-family:var(--display);font-weight:400;font-size:1.3rem;color:var(--paper);margin-bottom:.3rem}
.kcard .cs{font-size:.9rem;color:rgba(250,248,244,.66);margin-bottom:1.2rem;line-height:1.5}
.kcard .btn{width:100%;justify-content:center;margin-bottom:.75rem}
.kcard .klein{margin-top:.6rem;font-size:.86rem;color:rgba(250,248,244,.62);line-height:1.5}
.kcard .klein a{color:var(--gold-soft);text-decoration:none;border-bottom:1px solid rgba(212,176,131,.45)}
.kcard .klein a:hover{color:var(--pop-light);border-color:var(--pop-light)}
@media(max-width:860px){
  .ctagrid{grid-template-columns:1fr;gap:1.8rem}
  .ctamain,.kcard,.ctafoot{grid-column:1;grid-row:auto}
  .signature{margin-top:0}
  .kontakt-s{padding-top:12vh;padding-bottom:10vh}
  .mono{display:none}
}

/* ── Punkt-Navigation ── */
.dots{position:fixed;right:clamp(14px,2.5vw,32px);top:50%;transform:translateY(-50%);
  display:flex;flex-direction:column;gap:11px;z-index:50}
.dots a{width:9px;height:9px;border-radius:50%;border:1px solid var(--forest);opacity:.4;transition:.25s;display:block;position:relative}
.dots a.active{opacity:1;transform:scale(1.3)}
.dots a span{position:absolute;right:18px;top:50%;transform:translateY(-50%);white-space:nowrap;
  font-size:.7rem;letter-spacing:.04em;color:var(--ink);background:var(--paper);padding:2px 8px;border-radius:3px;
  opacity:0;pointer-events:none;transition:.2s;box-shadow:var(--shadow-md)}
.dots a:hover span{opacity:1}
@media(max-width:900px){.dots{display:none}}
