/* kc-extra.css — gemeinsame Ergänzungen zur kc.css (kantige Kanten, poppende CTAs, // Marke,
   Website-Check-Eingabe, Über-mich-Block, FAQ). Auf allen Seiten nach kc.css + kc-anim.css einbinden. */

[hidden]{display:none!important}

/* ===== Kanten härten (KC ist kantig, nicht weichgespült) ===== */
:root{--r:6px;--r-lg:8px;--r-xl:12px}
.fcard,.proofpanel,.step-card,.mock,.stat-card,.svc-card,.dd-menu,.about-photo,.sl-card,.sl-card input,.sl-card textarea,.faq details,.page-hero,.portrait{border-radius:6px}
.btn{border-radius:6px}

/* ===== CTAs poppen ===== */
.btn-primary{font-weight:700;box-shadow:0 10px 26px -10px var(--accent),0 2px 0 rgba(0,0,0,.04);transition:transform .18s ease,box-shadow .18s ease}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px -10px var(--accent)}
.btn-primary .arr{transition:transform .18s ease}
.btn-primary:hover .arr{transform:translateX(4px)}
.hero .cta .btn-primary{padding:18px 34px;font-size:17px}

/* ===== Logo // Marke ===== */
.brand .m{color:var(--accent);font-weight:800;margin-right:7px;letter-spacing:-.05em}

/* ===== Hero Beweis-Karten ===== */
.fcard .fc-rttl{font-weight:700}

/* ===== Website-Check Eingabe ===== */
.sl-wrap{max-width:700px;margin:clamp(34px,5vw,52px) auto 0}
.sl-card{background:#fff;border:1px solid var(--card-bd);box-shadow:var(--shadow-soft);padding:clamp(22px,3.4vw,34px)}
.check-entry .ce-row{display:flex;align-items:stretch;gap:10px;border:1px solid var(--line);background:#fff;padding:8px 8px 8px 14px}
.check-entry .ce-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.check-entry .ce-globe{display:grid;place-items:center;flex:0 0 auto}
.check-entry .ce-globe svg{width:20px;height:20px;stroke:var(--muted);stroke-width:1.7;fill:none}
.check-entry input{flex:1 1 auto;min-width:0;border:none;outline:none;background:transparent;font:inherit;font-size:16px;color:var(--ink);padding:10px 4px}
.check-entry .btn{flex:0 0 auto;white-space:nowrap}
.check-entry .ce-note{margin-top:12px;text-align:center;font-size:12.5px;color:var(--muted)}
@media(max-width:560px){.check-entry .ce-row{flex-direction:column;padding:14px}.check-entry .ce-globe{display:none}.check-entry .btn{width:100%;justify-content:center}}

/* ===== Über mich (Teaser + Seite) ===== */
.about-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(28px,5vw,60px);align-items:center}
@media(max-width:820px){.about-grid{grid-template-columns:1fr;gap:26px;max-width:520px;margin-inline:auto}}
.about-photo{aspect-ratio:4/5;background:linear-gradient(160deg,#eef1f8,#f6f8fc);border:1px solid var(--card-bd);display:grid;place-items:center;text-align:center;overflow:hidden;position:relative}
.about-photo img{width:100%;height:100%;object-fit:cover;display:block}
.about-photo .ph-fallback{padding:24px;color:var(--muted);font-size:13px;line-height:1.5}
.about-photo .ph-fallback b{display:block;color:var(--ink);font-size:15px;margin-bottom:4px}
.about-body .s-title{margin-top:14px}
.about-sig{margin-top:22px;font-family:var(--font-display);font-weight:700;font-size:19px;color:var(--ink)}
.about-sig span{display:block;font-family:var(--font-body);font-weight:500;font-size:13.5px;color:var(--muted);margin-top:2px}

/* ===== FAQ (gut für Google + KI-Antworten) ===== */
.faq{max-width:780px;margin:clamp(34px,5vw,52px) auto 0;display:grid;gap:12px}
.faq details{background:#fff;border:1px solid var(--card-bd);box-shadow:var(--shadow-soft)}
.faq summary{cursor:pointer;list-style:none;padding:18px 22px;font-weight:600;font-size:16.5px;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:24px;line-height:1;color:var(--accent);font-weight:400;flex:0 0 auto}
.faq details[open] summary::after{content:"\2013"}
.faq .faq-body{padding:0 22px 20px;color:var(--body);line-height:1.66;max-width:66ch}

/* ===== Service-Seiten Kopf ===== */
.svc-hero h1{font-weight:800;font-size:clamp(38px,5.6vw,68px);line-height:1.03;letter-spacing:-.03em;max-width:15ch;margin-top:16px}
.svc-hero .svc-lead{margin-top:22px;font-size:clamp(17px,1.9vw,20px);line-height:1.65;color:var(--ink);max-width:52ch}
.svc-hero .cta{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}
.svc-back{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-size:14.5px;font-weight:600;color:var(--accent-ink)}
.svc-back svg{width:16px;height:16px;stroke:currentColor;stroke-width:2.2;fill:none}

/* ===== Hilfsklassen (Beweis-Reihe) ===== */
.mock .browser .shot{display:block;width:100%;height:calc(100% - 30px);object-fit:cover;object-position:top}
.mock a.browser-link{display:block}
.mock a.browser-link:hover .shot{opacity:.92}
.mlink{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:14.5px;font-weight:600;color:var(--accent-ink)}
.mlink svg{width:15px;height:15px;stroke:currentColor;stroke-width:2.4;fill:none}
.gatenote{margin-top:24px;text-align:center;font-size:13px;color:var(--muted)}
.foot-dsgvo{margin-top:10px;font-size:12.5px;color:var(--muted);max-width:60ch}
.proofrow3{grid-template-columns:repeat(3,1fr)}
.steps3.four{grid-template-columns:repeat(4,1fr)}
@media(max-width:1080px){.steps3.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.proofrow3{grid-template-columns:1fr;max-width:480px;margin-inline:auto}}
@media(max-width:560px){.steps3.four{grid-template-columns:1fr}}

/* ===== Hero auf dem Handy sauber halten ===== */
@media(max-width:640px){
  .hero .eyebrow{white-space:normal;max-width:100%;line-height:1.45;text-align:center}
  .hero-inner{max-width:100%;width:100%}
  .hero .sub{max-width:100%}
  .hero h1{max-width:100%;overflow-wrap:break-word}
  .hero .cta{width:100%}
  .hero .cta .btn{width:100%;justify-content:center}
}
