/*
 * Talentkontor Website, Design „Bühne“: Bausteine nur für Preise, Sicherheit, Über uns und die Rechtstexte
 * (AGB, AVV, Datenschutz, Nutzungsbedingungen). Lädt nach buehne.css und nutzt dessen Farben (--bg, --tx, --g400 …).
 * Inhalt: aktiver Menüpunkt, Tarifvergleich (.tk-compare), häufige Fragen (.faq), Sicherheitskacheln (.tk-tiles),
 * Punkte mit Symbol (.tk-points), Dokumente (.tk-docs), Geschichte und Grundsätze (Über uns), Rechtstexte (.legal)
 * mit Inhaltsverzeichnis und Druckfassung. Eigene Bewegung nur unter .fx.
 */

/* Aktiver Menüpunkt in Kopfzeile und Handymenü */
.hd-links a[aria-current="page"]{color:var(--tx);background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px var(--line)}
.mnav a.ml[aria-current="page"]{color:var(--g100)}
.mnav a.ml[aria-current="page"] .i{color:var(--g400)}

/* Weiches Springen zu Ankern (nur mit Bewegung), Anker nicht unter der Kopfzeile */
html.fx{scroll-behavior:smooth}
[id]{scroll-margin-top:96px}

/* Gemeinsam: Symbolfeld */
.tk-ico{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:14px;background:linear-gradient(180deg,rgba(45,122,92,.34),rgba(27,94,69,.12));box-shadow:inset 0 0 0 1px rgba(111,174,143,.36),0 0 36px -8px rgba(45,122,92,.55);color:var(--g100)}
.tk-ico .i{width:22px;height:22px}

/* ── Preise ─────────────────────────────────────────────────────────────────────────────────────────────────── */
.tk-price-hero{padding-bottom:0}
.tk-price-hero .page-h{max-width:none}
.tk-price-hero .bill{margin-top:36px}
.tk-plans-wrap{margin-top:clamp(44px,5vw,72px)}
.tk-plans-wrap .plans{margin-top:0}

.tk-compare-sec{padding-top:clamp(96px,11vw,152px)}
.tk-compare-box{position:relative;margin-top:clamp(36px,4vw,56px)}
.tk-compare-glow{position:absolute;left:10%;right:10%;top:-12%;height:60%;z-index:-1;pointer-events:none;background:radial-gradient(50% 50% at 50% 30%,rgba(45,122,92,.16),transparent 72%)}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.tk-compare{border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#141617,#0f1111)}
.tk-compare table{width:100%;border-collapse:separate;border-spacing:0;font-size:15.5px;line-height:1.45}
.tk-compare th,.tk-compare td{padding:18px 24px;text-align:center;vertical-align:middle;border-bottom:1px solid var(--line)}
.tk-compare th:first-child,.tk-compare td:first-child{text-align:left;width:37%}
.tk-compare thead th{padding-block:24px 20px;font:650 18px/1.2 Manrope,sans-serif;letter-spacing:-.02em;color:var(--tx);background:rgba(255,255,255,.02)}
.tk-compare thead th:first-child{font:500 13.5px/1.2 Inter,sans-serif;letter-spacing:.01em;color:var(--tx3)}
.tk-compare thead th:nth-child(3){color:#fff;box-shadow:inset 0 2px 0 rgba(111,174,143,.75)}
.tk-compare th:nth-child(3),.tk-compare td:nth-child(3){background-color:rgba(45,122,92,.075)}
.tk-compare tbody tr:last-child td{border-bottom:0}
.tk-compare td{color:var(--tx2)}
.tk-compare td:first-child{color:var(--tx);font-weight:500}
.tk-compare tbody tr:nth-child(-n+4) td+td{font:600 17px/1.2 Manrope,sans-serif;letter-spacing:-.015em;color:var(--tx);font-variant-numeric:tabular-nums}
.tk-compare tbody tr:hover td{background-color:rgba(255,255,255,.02)}
.tk-compare tbody tr:hover td:nth-child(3){background-color:rgba(45,122,92,.1)}
/* Enthalten / Nicht enthalten als Zeichen; der Text bleibt für Screenreader und Übersetzung im Dokument */
.tk-compare .y span,.tk-compare .n span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.tk-compare .y::before{content:"";display:inline-block;width:18px;height:18px;vertical-align:middle;background:var(--g400);-webkit-mask:url(haken.svg) center/contain no-repeat;mask:url(haken.svg) center/contain no-repeat}
.tk-compare .n::before{content:"";display:inline-block;width:12px;height:1.5px;vertical-align:middle;border-radius:2px;background:rgba(242,243,242,.28)}
.tk-compare .s span{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12.5px;font-weight:500;line-height:1.3;color:var(--g100);background:rgba(45,122,92,.16);box-shadow:inset 0 0 0 1px rgba(111,174,143,.3);white-space:nowrap}
.tk-scroll-hint{display:none}
.tk-compare-note{display:block;margin-top:22px}
@media (max-width:767px){
  .tk-compare{border-radius:18px}
  .tk-compare table{min-width:600px;font-size:14.5px}
  .tk-compare th,.tk-compare td{padding:14px 14px}
  .tk-compare th:first-child,.tk-compare td:first-child{position:sticky;left:0;z-index:1;width:160px;min-width:160px;background:#121414;box-shadow:1px 0 0 var(--line2)}
  .tk-compare thead th:first-child{background:#141616}
  .tk-compare tbody tr:nth-child(-n+4) td+td{font-size:16px}
  .tk-scroll-hint{display:flex;align-items:center;gap:8px;margin-top:22px;font-size:13.5px;color:var(--tx3)}
  .tk-scroll-hint .i{width:16px;height:16px;color:var(--g400)}
  .tk-compare-box{margin-top:14px}
}

/* Häufige Fragen */
.tk-faq{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.tk-faq .sh{position:sticky;top:112px}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 2px;cursor:pointer;list-style:none;font:600 clamp(17px,1.5vw,19px)/1.35 Manrope,sans-serif;letter-spacing:-.015em;color:var(--tx)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::marker{content:""}
.faq summary .i{width:18px;height:18px;stroke-width:1.8;color:var(--tx3)}
.faq summary:hover .i{color:var(--tx)}
.faq details[open] summary .i{transform:rotate(45deg);color:var(--g400)}
.fx .faq summary .i{transition:transform .45s var(--ease),color .3s var(--ease)}
.faq details p{padding:0 48px 28px 2px;max-width:62ch;font-size:16px;line-height:1.7;color:var(--tx2)}
.fx .faq details[open] p{animation:tkFaq .5s var(--ease)}
@keyframes tkFaq{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* ── Sicherheit ─────────────────────────────────────────────────────────────────────────────────────────────── */
.tk-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(52px,6vw,88px)}
.tk-tiles .tile{grid-column:auto;min-height:0}
.tk-tiles:hover .tile::after{opacity:1}
.tk-tiles .tile .tx{padding:30px 30px 34px}
.tk-tiles .tile h2{margin-top:24px;font:650 clamp(20px,1.8vw,23px)/1.2 Manrope,sans-serif;letter-spacing:-.025em}
.tk-tiles .tile p{margin-top:10px}

.tk-produkt{padding-top:clamp(88px,10vw,144px)}
.tk-split{align-items:center;margin-top:clamp(40px,5vw,64px)}
.tk-points{display:grid;gap:30px}
.tk-points>li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:18px;align-items:start}
.tk-points .tk-ico{width:40px;height:40px;border-radius:12px}
.tk-points .tk-ico .i{width:19px;height:19px}
.tk-points h3{padding-top:8px;font:650 19px/1.3 Manrope,sans-serif;letter-spacing:-.02em}
.tk-points p{margin-top:6px;max-width:52ch;font-size:15.5px;line-height:1.6;color:var(--tx2)}
.tk-points .rights{margin-top:14px}
.tk-shot{position:relative}
.tk-shot-glow{position:absolute;inset:-20% -14%;z-index:-1;pointer-events:none;background:radial-gradient(48% 48% at 50% 50%,rgba(45,122,92,.34),transparent 72%)}

.tk-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:clamp(36px,4vw,56px)}
.tk-docs a{display:flex;align-items:center;gap:18px;height:100%;padding:22px 24px;border-radius:20px;background:rgba(255,255,255,.025);box-shadow:inset 0 0 0 1px var(--line)}
.tk-docs a:hover{background:rgba(255,255,255,.045);box-shadow:inset 0 0 0 1px var(--line2)}
.tk-docs .tk-ico{width:44px;height:44px;border-radius:13px}
.tk-docs .tk-ico .i{width:20px;height:20px}
.tk-docs strong{flex:1;min-width:0;font:600 17px/1.35 Manrope,sans-serif;letter-spacing:-.015em}
.tk-docs .go{width:18px;height:18px;stroke-width:2;color:var(--g400)}
.fx .tk-docs a{transition:background-color .35s var(--ease),box-shadow .35s var(--ease)}
.fx .tk-docs .go{transition:transform .4s var(--ease)}
.fx .tk-docs a:hover .go{transform:translateX(3px)}

/* ── Über uns ───────────────────────────────────────────────────────────────────────────────────────────────── */
.tk-about-hero .page-h{max-width:none;font-size:clamp(36px,5.3vw,76px)}
.tk-story{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.tk-story-head{position:sticky;top:112px}
.tk-story-head .h2{font-size:clamp(34px,3.7vw,54px);line-height:1.04}
.tk-story-body p{max-width:62ch;font-size:clamp(17px,1.35vw,19px);line-height:1.72;color:var(--tx2)}
.tk-story-body p+p{margin-top:1.35em}
.tk-story-body p:first-child{font:500 clamp(20px,1.9vw,25px)/1.5 Manrope,sans-serif;letter-spacing:-.018em;color:var(--tx)}
.tk-story-body .tk-kontor{margin-top:2em;padding:4px 0 4px 24px;border-left:1px solid rgba(111,174,143,.55);color:var(--tx)}
.tk-principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:clamp(36px,4vw,56px)}
.tk-principles li{display:flex;flex-direction:column;padding:28px 26px 30px;border-radius:22px;background:linear-gradient(180deg,#141617,#0f1111);box-shadow:inset 0 0 0 1px var(--line)}
.tk-principles .num{font:600 13px/1 Inter,sans-serif;letter-spacing:.04em;color:var(--g400);font-variant-numeric:tabular-nums}
.tk-principles h3{margin-top:44px;font:650 clamp(19px,1.6vw,21px)/1.25 Manrope,sans-serif;letter-spacing:-.022em}
.tk-principles p{margin-top:10px;font-size:15px;line-height:1.6;color:var(--tx2)}

/* ── Rechtstexte ────────────────────────────────────────────────────────────────────────────────────────────── */
.legal-hero{--toc:236px;--lgap:clamp(48px,6vw,96px);padding-bottom:clamp(40px,5vw,72px)}
.legal-hero .hero-beam{opacity:.75}
.legal-hero .page-h{max-width:22ch;hyphens:manual;font-size:clamp(34px,4.6vw,64px);line-height:1.04}
.legal-meta{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font-size:15px;color:var(--tx2)}
.legal-meta .i{width:17px;height:17px;color:var(--g400)}
.legal{--toc:236px;--lgap:clamp(48px,6vw,96px);display:grid;grid-template-columns:var(--toc) minmax(0,1fr);gap:var(--lgap);align-items:start;padding-bottom:clamp(96px,10vw,152px)}
.legal-toc{position:sticky;top:100px;max-height:calc(100vh - 140px);overflow-y:auto;padding-top:6px;counter-reset:toc}
.legal-toc p{font:600 13px/1 Inter,sans-serif;letter-spacing:.02em;color:var(--tx3);margin-bottom:14px}
.legal-toc ol{border-left:1px solid var(--line)}
.legal-toc li{counter-increment:toc}
.legal-toc a{display:flex;gap:10px;margin-left:-1px;padding:7px 0 7px 16px;border-left:1px solid transparent;font-size:14px;line-height:1.4;color:var(--tx3)}
.legal-toc a::before{content:counter(toc,decimal-leading-zero);flex:none;font-variant-numeric:tabular-nums;color:rgba(242,243,242,.3)}
.legal-toc a:hover{color:var(--tx);border-left-color:var(--line2)}
.legal-toc a:hover::before{color:var(--g400)}
.legal-body{max-width:70ch;counter-reset:sec}
.legal-body section{counter-increment:sec;padding-block:36px;border-top:1px solid var(--line)}
.legal-body section:first-child{padding-top:0;border-top:0}
.legal-body h2{font:650 clamp(21px,2vw,25px)/1.25 Manrope,sans-serif;letter-spacing:-.022em;color:var(--tx)}
.legal-body h2::before{content:counter(sec,decimal-leading-zero);display:block;margin-bottom:12px;font:600 13px/1 Inter,sans-serif;letter-spacing:.04em;color:var(--g400);font-variant-numeric:tabular-nums}
.legal-body p{margin-top:14px;font-size:17px;line-height:1.75;color:rgba(242,243,242,.78);overflow-wrap:break-word}
.legal-body a{color:var(--tx);text-decoration:underline;text-decoration-color:rgba(111,174,143,.6);text-decoration-thickness:1px;text-underline-offset:3px}
.legal-body a:hover{text-decoration-color:var(--g400)}
.legal-body .source-note{margin-top:8px;padding-top:28px;border-top:1px solid var(--line);font-size:14px;line-height:1.6;color:var(--tx3)}
@media (min-width:1025px){.legal-hero .hero-copy{padding-left:calc(var(--toc) + var(--lgap))}}

/* ── Breiten ────────────────────────────────────────────────────────────────────────────────────────────────── */
@media (max-width:1080px){
  .tk-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tk-principles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1024px){
  .legal{grid-template-columns:minmax(0,1fr)}
  .legal-toc{display:none}
  .legal-body{margin-inline:auto}
  .legal-hero .hero-copy{max-width:calc(70ch + 0px)}
}
@media (max-width:860px){
  .tk-faq,.tk-story{grid-template-columns:minmax(0,1fr)}
  .tk-faq .sh,.tk-story-head{position:static}
  .tk-docs{grid-template-columns:minmax(0,1fr)}
  .tk-shot{margin-top:8px}
  .tk-split{gap:44px}
}
@media (max-width:700px){
  .tk-tiles{grid-template-columns:minmax(0,1fr)}
  .tk-tiles .tile .tx{padding:24px 22px 28px}
  .faq details p{padding-right:8px}
  .legal-body section{padding-block:30px}
  .legal-body p{font-size:16.5px;line-height:1.72}
}
@media (max-width:560px){
  .tk-principles{grid-template-columns:minmax(0,1fr)}
  .tk-principles h3{margin-top:26px}
  .tk-docs a{padding:18px 18px;gap:14px}
}

/* Druck (Rechtstexte „Als PDF sichern“): schwarz auf weiß, ohne Kopfzeile, Menü und Inhaltsverzeichnis */
@media print{
  html,body{background:#fff!important;color:#000!important}
  body::before,.skip,.hd,footer,.hero-bg,.pill,.legal-toc,.final{display:none!important}
  .fx .up,.fx [data-r]{opacity:1!important;transform:none!important;animation:none!important}
  .page-hero{padding:0 0 16px}
  .legal-hero .hero-copy{padding-left:0}
  .page-h,.legal-body h2{color:#000!important}
  .legal-meta,.legal-body p,.legal-body .source-note{color:#222!important}
  .legal-body a{color:#000!important}
  .legal{display:block;padding-bottom:0}
  .legal-body{max-width:none}
  .legal-body section{break-inside:avoid;border-color:#ddd}
}

/* Tarifvergleich: Zwischenüberschriften je Gruppe (Umfang, In jedem Tarif, Zusammenarbeit, Finanzen) */
.tk-compare tr.grp th{padding:30px 24px 12px;text-align:left;width:auto;font:600 12.5px/1.2 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--g400);background:transparent;border-bottom:1px solid var(--line2);box-shadow:none}
.tk-compare tbody tr.grp:first-child th{padding-top:22px}
@media (max-width:767px){.tk-compare tr.grp th{position:sticky;left:0;padding:24px 14px 10px;background:#121414}}
