/* Layout: eine Spalte fürs Handy, ein Ziel (das Erstgespräch ganz unten, jeder Button springt dorthin). Dunkler Grund mit Tannengrün, Buch-Block in Buch-Rot, das Angebot auf hellem Sand. */
:root{
  --bg:#0d1115; --bg2:#151b21; --fg:#f2f4f5; --muted:#9aa5ad; --line:#263038;
  --accent:#7cb98c; --accent-ink:#ffffff; --accent-dark:#2e6b45; --fill:#2e6b45; --fill-hover:#255a3a; --book:#c62a1f;
  --sand:#f3ede2; --sand-ink:#1c1a16; --sand-muted:#6b655a; --sand-line:#d9d0c0;
  --display:'Anton',Impact,'Arial Narrow',sans-serif;
  --body:'Source Sans 3','Segoe UI',Helvetica,Arial,sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-size:17px;line-height:1.5;padding-bottom:72px}
a{color:inherit}
.wrap{max-width:680px;margin:0 auto;padding-block:0;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:.01em;text-wrap:balance;margin:0;line-height:1.05}
h2{font-size:clamp(30px,6vw,40px);text-transform:uppercase}
h3{font-size:22px;text-transform:uppercase;letter-spacing:.02em}
.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:8px}
section{padding-block:44px}
section.wrap{padding-block:44px}
p{margin:0}
.lead{color:var(--muted);max-width:58ch}
.btn{display:inline-block;padding:14px 22px;font-weight:700;text-decoration:none;border-radius:4px;font-size:17px;border:0;cursor:pointer;font-family:var(--body);line-height:1.3;text-align:center}
.btn.primary{background:var(--fill);color:#fff}
.btn.primary:hover{background:var(--fill-hover)}
.btn.ghost{border:1px solid var(--fg);color:var(--fg);background:transparent}
.btn.sm{padding:11px 16px;font-size:15px}
.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}

/* Hero */
.hero{padding-block:0;position:relative}
.hero-img{position:relative;aspect-ratio:4/5;max-height:620px;width:100%;overflow:hidden;background:#000}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;display:block;max-width:100%}
.hero-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,17,21,.08) 30%,rgba(13,17,21,.9) 82%,var(--bg) 100%)}
.langsw{position:absolute;z-index:3;top:calc(12px + env(safe-area-inset-top,0px));right:max(16px,env(safe-area-inset-right,0px));font-size:13px;font-weight:700;letter-spacing:.1em;text-decoration:none;padding:6px 10px;border:1px solid rgba(255,255,255,.45);border-radius:4px;background:rgba(13,17,21,.35)}
.hero-text{position:relative;margin-top:-170px;z-index:2;display:grid;gap:10px}
.hero h1{font-size:clamp(60px,15vw,104px);text-transform:uppercase;line-height:.92}
.hero h1 .hl{background:var(--fill);padding:0 .12em;display:inline-block;line-height:1}
.tag{font-size:20px;font-weight:600}
.sub{color:var(--muted);font-size:15px}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px;max-width:440px}
.stat{border-top:2px solid var(--accent);padding-top:8px}
.stat b{display:block;font-family:var(--display);font-size:clamp(30px,8vw,44px);font-variant-numeric:tabular-nums;line-height:1}
.stat span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.hero .btn{margin-top:12px;justify-self:start}

/* Angebot (hell) */
.help{background:var(--sand);color:var(--sand-ink)}
.help .eyebrow{color:var(--accent-dark)}
.help .lead{color:var(--sand-muted)}
.help .btn.ghost{border-color:var(--sand-ink);color:var(--sand-ink)}
.cards{display:grid;grid-template-columns:1fr;gap:12px;margin-top:22px}
@media(min-width:560px){.cards{grid-template-columns:1fr 1fr}}
.pcard{position:relative;display:grid;border-radius:4px;overflow:hidden;text-decoration:none;color:#fff;border-left:4px solid var(--fill);background:#0d1115;box-shadow:0 10px 30px rgba(28,26,22,.18)}
.pcard img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}

.pcard div{display:grid;gap:8px;justify-items:start;padding:0 18px 20px;margin-top:-18px;position:relative}
.pcard small{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--fill);font-weight:800;padding:6px 10px;border-radius:3px}
.pcard b{font-family:var(--display);font-weight:400;font-size:clamp(34px,9vw,44px);line-height:1;text-transform:uppercase;letter-spacing:.02em}
.pcard span{font-size:15px;line-height:1.45;color:#e8ecee;max-width:44ch}
.pcard i{font-style:normal;font-size:13px;color:#b9c2c8}
.pcard .tbtn{background:var(--fill);color:#fff}
.pcard:hover .tbtn,.pcard:focus-visible .tbtn{background:var(--fill-hover)}
.pcard:focus-visible{outline:2px solid var(--fill);outline-offset:3px}
@media(min-width:600px){.cards{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:no-preference){.pcard{transition:transform .15s}.pcard:hover{transform:translateY(-2px)}}
.card{background:#fff;border:1px solid var(--sand-line);border-top:4px solid var(--accent-dark);padding:20px 18px;border-radius:4px;display:grid;gap:8px;align-content:start}
.card b{font-family:var(--display);font-size:26px;letter-spacing:.02em;text-transform:uppercase;line-height:1}
.card span{font-size:15px;line-height:1.45;color:var(--sand-muted)}
.card ul{margin:4px 0 0;padding-left:18px;font-size:15px;line-height:1.5}
.card .btn{margin-top:10px;justify-self:start}
.card small{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);font-weight:700}
.card em{font-style:normal;font-size:13px;color:var(--sand-muted)}
.steps{display:grid;gap:12px;margin-top:16px}
@media(min-width:560px){.steps{grid-template-columns:repeat(3,1fr)}}
.step{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}
.step i{font-style:normal;font-family:var(--display);font-size:28px;color:var(--accent-dark);line-height:1;padding-top:2px}
.step b{display:block;font-size:17px}
.step span{font-size:15px;color:var(--sand-muted)}
.trust{margin-top:34px;background:var(--fill);color:#fff;border-radius:6px;padding:26px 20px 24px;display:grid;gap:12px;box-shadow:0 14px 34px rgba(28,26,22,.2)}
.tpics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:-4px 4px 12px}
.tpics img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;border:5px solid #fff;border-radius:3px;box-shadow:0 10px 22px rgba(0,0,0,.3)}
.tpics img:first-child{transform:rotate(-3deg)}
.tpics img:last-child{transform:rotate(2.5deg);margin-top:14px}
.trust small{justify-self:start;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#111;background:#fff;font-weight:800;padding:4px 8px;border-radius:2px}
.trust h3{font-size:clamp(26px,7vw,34px);line-height:1.05;text-transform:uppercase;letter-spacing:.01em}
.trust ul{list-style:none;margin:6px 0 4px;padding:0;display:grid;gap:14px}
.trust li{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:start}
.ti{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center}
.ti svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.trust li b{display:block;font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:.02em;text-transform:uppercase;line-height:1.1}
.trust li span{font-size:15px;color:rgba(255,255,255,.85);line-height:1.4}
.tcta{display:block;text-align:center;background:#fff;color:var(--fill);font-weight:800;font-size:17px;padding:15px 18px;border-radius:4px;text-decoration:none;margin-top:6px}
.tcta:hover,.tcta:focus-visible{background:var(--sand);outline:none}
.tnote{text-align:center;font-size:13px;color:rgba(255,255,255,.75)}
.proof{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}
.proof div{border-top:2px solid var(--accent-dark);padding-top:8px}
.proof b{display:block;font-family:var(--display);font-size:clamp(22px,6vw,30px);line-height:1}
.proof span{font-size:12px;color:var(--sand-muted);text-transform:uppercase;letter-spacing:.08em}
.pics{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:26px}
.pics img{width:100%;max-width:100%;aspect-ratio:1;object-fit:cover;display:block;border-radius:4px}
.pics img.big{grid-column:span 3;aspect-ratio:16/10;object-position:50% 60%}

/* Buch */
.bookcard{display:grid;grid-template-columns:130px 1fr;gap:18px;margin-top:18px;border:1px solid var(--line);background:var(--bg2);padding:18px;border-radius:4px;align-items:start}
.cover{aspect-ratio:3/4;background:linear-gradient(160deg,#1b2a30,#0b1417 60%);border:1px solid var(--line);border-left:6px solid var(--accent);border-radius:3px;padding:10px 8px;display:grid;align-content:space-between;gap:6px;overflow:hidden;min-width:0}
.cover span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:700}
.cover b{font-family:var(--display);font-weight:400;font-size:12px;line-height:1.1;text-transform:uppercase;letter-spacing:.02em;overflow-wrap:anywhere;hyphens:manual}
.cover i{font-style:normal;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.bookcard{border-left:4px solid var(--book)}
.bookcard .btn.primary{background:var(--book)}
.bookcard .btn.primary:hover{background:#a8231a}
#buch>.eyebrow{color:#e05a4f}
.bookimg img{width:100%;aspect-ratio:1656/2560;object-fit:cover;display:block;border-radius:3px;box-shadow:0 8px 24px rgba(0,0,0,.45)}
.bookcard .title{font-family:var(--display);font-size:clamp(22px,5.5vw,30px);text-transform:uppercase;letter-spacing:.02em;line-height:1.05}
.bookcard .meta{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:6px}
.bookcard .lead{margin-top:10px;font-size:15px}
.bookcard .btns{margin-top:14px}
.bookcard .btn{padding:12px 16px;font-size:15px}
@media(max-width:479px){.bookcard{grid-template-columns:108px 1fr;gap:14px}}

/* Kanäle */
.icons{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:16px}
@media(min-width:480px){.icons{grid-template-columns:repeat(4,1fr)}}
.icons a{display:grid;gap:3px;justify-items:center;padding:14px 8px;border:1px solid var(--line);background:var(--bg2);text-decoration:none;border-radius:4px;text-align:center;min-width:0}
.icons a:hover,.icons a:focus-visible{border-color:var(--accent);outline:none}
.icons .ic{position:relative;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;color:#fff;font-size:22px;overflow:hidden}
.icons .ic svg{width:24px;height:24px;fill:currentColor}
.icons .ic em{font-style:normal;font-family:var(--display);font-size:16px;position:absolute;inset:0;display:grid;place-items:center}
.icons .ic:has(svg) em{display:none}
.icons .ic.yt{background:#ff0000}
.icons .ic.ig{background:linear-gradient(45deg,#f9ce34,#ee2a7b 55%,#6228d7)}
.icons .ic.fb{background:#1877f2}
.icons .ic.tt{background:#000;border:1px solid var(--line)}
.icons .ic.sc{background:#fffc00;color:#fff}
.icons .ic.sc svg{stroke:#000;stroke-width:1.2px;paint-order:stroke}
.icons b{font-family:var(--display);font-size:22px;font-weight:400;letter-spacing:.02em;font-variant-numeric:tabular-nums;line-height:1;margin-top:4px}
.icons span{font-size:12px;color:var(--muted);overflow-wrap:anywhere}

/* Mehr von mir */
.tiles{display:grid;gap:12px;margin-top:14px}
@media(min-width:560px){.tiles{grid-template-columns:1fr 1fr}}
.tile{position:relative;display:block;min-height:340px;border-radius:4px;overflow:hidden;text-decoration:none;border:1px solid var(--line);border-left:4px solid var(--tc);background:var(--bg2);--tc:var(--fill)}
.t-mk{--tc:#d4a43c}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,17,21,0) 15%,rgba(13,17,21,.8) 50%,rgba(13,17,21,.97) 100%)}
.tile div{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:grid;gap:6px;justify-items:start}
.tile small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#111;background:#fff;font-weight:800;padding:4px 8px;border-radius:2px}
.tile b{font-family:var(--display);font-weight:400;font-size:clamp(34px,9vw,44px);line-height:1;text-transform:uppercase;letter-spacing:.02em}
.tile span{font-size:15px;color:var(--fg);max-width:42ch}
.tstats{display:flex;flex-wrap:wrap;gap:6px 18px}
.tstats i{font-style:normal;display:grid;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.tstats strong{font-family:var(--display);font-weight:400;font-size:22px;color:var(--fg);letter-spacing:.02em;text-transform:none}
.tbtn{font-style:normal;display:inline-block;margin-top:6px;padding:12px 16px;border-radius:4px;background:var(--tc);color:#fff;font-weight:700;font-size:15px}
.t-mk .tbtn{color:#1c1405}
.tile:hover,.tile:focus-visible{outline:none;border-color:var(--tc)}

/* Erstgespräch */
.cf{display:grid;gap:12px;margin-top:18px;max-width:560px}
.cf label{display:grid;gap:5px;font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.cf input,.cf select,.cf textarea{font:inherit;font-size:17px;padding:13px 14px;border:1px solid var(--line);border-radius:4px;background:var(--bg2);color:var(--fg);width:100%;min-width:0}
.cf input:focus,.cf select:focus,.cf textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}
.cf textarea{min-height:96px;resize:vertical}
.cf .row{display:grid;gap:12px}
@media(min-width:560px){.cf .row{grid-template-columns:1fr 1fr}}
.cf .btn{justify-self:start;margin-top:4px}
.note{font-size:13px;color:var(--muted);margin-top:8px}
.ok{margin-top:10px;padding:14px;background:var(--bg2);border-left:3px solid var(--accent);font-size:16px;max-width:560px}
#gespraech{scroll-margin-top:16px}

/* FAQ */
.faq{display:grid;gap:0;margin-top:18px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:14px 0;font-weight:700;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--accent);font-family:var(--display);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{padding:0 0 16px;color:var(--muted);font-size:16px}

footer{padding-block:28px 40px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
footer .links{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}

/* Sticky CTA */
.bar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:rgba(13,17,21,.92);border-top:1px solid var(--line);padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.bar .in{max-width:680px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px}
.bar span{font-size:14px;color:var(--muted);min-width:0}
.bar .btn{padding:11px 16px;font-size:15px;white-space:nowrap}
@media(prefers-reduced-motion:no-preference){.icons a,.tile{transition:transform .15s}.icons a:hover,.tile:hover{transform:translateY(-2px)}}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ok.err{border-left-color:#e05a4f}
.cf button[disabled]{opacity:.6;cursor:wait}
[hidden]{display:none!important}
