/* ==================================================================
   COSVION RATGEBER — Bausteine für /ratgeber/ und /ueber-uns
   Baut auf legal-assets/site.css auf (Tokens, Schriften, nav, foot).
   Erzeugt von werkzeuge/ratgeber_bauen.py, nicht von Hand pflegen.
   ================================================================== */

.r-main{max-width:760px;margin-inline:auto;padding:clamp(40px,6vw,88px) clamp(20px,5vw,40px) clamp(64px,8vw,112px);display:flex;flex-direction:column;gap:var(--s-6);}
.r-crumbs{font-size:var(--t-xs);color:var(--ink-3);display:flex;flex-wrap:wrap;gap:6px;}
.r-crumbs a{color:var(--ink-3);text-decoration:none;}
.r-crumbs a:hover{color:var(--accent-deep);text-decoration:underline;}
.r-kicker{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-deep);}
.r-head{display:flex;flex-direction:column;gap:var(--s-4);}
.r-head h1{font-size:clamp(2.1rem,4.6vw,3.3rem);letter-spacing:-.035em;line-height:1.04;}
.r-meta{font-size:var(--t-sm);color:var(--ink-3);display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;}
.r-meta img{width:36px;height:36px;border-radius:50%;object-fit:cover;}
.r-meta strong{color:var(--ink-2);font-weight:700;}

/* Kurz gesagt: die Antwort steht ganz oben (für Leserinnen, Google und KI-Suchen) */
.r-answer{background:var(--surface-2);border-radius:var(--r-lg);padding:var(--s-5) clamp(18px,3vw,28px);display:flex;flex-direction:column;gap:var(--s-3);}
.r-answer__label{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-deep);}
.r-answer p{font-size:var(--t-lead);color:var(--ink);line-height:1.55;}
.r-answer ul{list-style:none;display:flex;flex-direction:column;gap:8px;}
.r-answer li{position:relative;padding-left:22px;color:var(--ink-2);}
.r-answer li::before{content:"";position:absolute;left:2px;top:.62em;width:9px;height:9px;border-radius:50%;background:var(--accent);}

.r-toc{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-4) var(--s-5);}
.r-toc summary{cursor:pointer;font-weight:700;color:var(--ink-2);}
.r-toc ol{list-style:decimal;padding-left:1.4em;margin-top:var(--s-3);display:flex;flex-direction:column;gap:6px;}
.r-toc a{color:var(--accent-deep);text-decoration:none;}
.r-toc a:hover{text-decoration:underline;}

.r-body{display:flex;flex-direction:column;gap:var(--s-4);}
.r-body h2{font-size:clamp(1.45rem,2.6vw,1.95rem);letter-spacing:-.025em;margin-top:var(--s-6);scroll-margin-top:calc(var(--nav-h) + 16px);}
.r-body h3{font-size:1.15rem;margin-top:var(--s-3);}
.r-body p,.r-body li{color:var(--ink-2);font-size:1.04rem;line-height:1.7;}
.r-body p strong,.r-body li strong{color:var(--ink);}
.r-body a{color:var(--accent-deep);}
.r-body ul{list-style:disc;padding-left:1.3em;display:flex;flex-direction:column;gap:6px;}
.r-body ol{list-style:decimal;padding-left:1.4em;display:flex;flex-direction:column;gap:6px;}

/* Vorlage zum Kopieren */
.r-tpl{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-1);overflow:hidden;}
.r-tpl__h{display:flex;justify-content:space-between;align-items:center;gap:var(--s-3);padding:12px 16px;background:var(--surface-2);}
.r-tpl__label{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);}
.r-tpl__text{margin:0;padding:var(--s-4) var(--s-5);white-space:pre-wrap;font-family:var(--f-body);font-size:1.02rem;line-height:1.6;color:var(--ink);}
.r-tpl__text .r-ph{color:var(--accent-deep);font-weight:700;white-space:nowrap;}
.r-copy{font-family:var(--f-mono);font-size:var(--t-mono);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--accent);color:var(--accent-deep);background:transparent;border-radius:var(--r-pill);padding:7px 14px;cursor:pointer;min-height:36px;}
.r-copy:hover{background:var(--accent);color:var(--on-accent);}

/* Hinweise */
.r-box{border-radius:var(--r-md);padding:var(--s-4) var(--s-5);display:flex;flex-direction:column;gap:6px;}
.r-box__t{font-weight:700;}
.r-box p{font-size:.98rem;}
.r-box--consent{background:var(--warn-bg);color:var(--warn);}
.r-box--consent .r-box__t,.r-box--consent p{color:var(--warn);}
.r-box--info{background:var(--surface-2);}
.r-box--info .r-box__t{color:var(--ink);}
.r-box--warn{background:var(--alert-bg);}
.r-box--warn .r-box__t,.r-box--warn p{color:var(--alert);}

/* Tabelle */
.r-table{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-md);}
.r-table table{border-collapse:collapse;width:100%;min-width:0;font-size:.96rem;}
@media (max-width:560px){.r-table th,.r-table td{padding:8px 10px;font-size:.9rem;}}
.r-table th,.r-table td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-2);}
.r-table th{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:600;background:var(--surface-2);}
.r-table tr:last-child td{border-bottom:0;}

/* Produkthinweis: genau einmal pro Artikel */
.r-product{background:var(--stage);color:var(--stage-ink-2);border-radius:var(--r-lg);padding:var(--s-5) clamp(18px,3vw,28px);display:flex;flex-direction:column;gap:var(--s-3);}
.r-product .r-box__t{color:var(--stage-ink);font-family:var(--f-display);font-size:1.25rem;letter-spacing:-.015em;}
.r-product p{color:var(--stage-ink-2);}
.r-product a{color:var(--stage-accent-2);font-weight:700;}

/* FAQ */
.r-faq{display:flex;flex-direction:column;gap:var(--s-3);}
.r-faq details{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);background:var(--surface-1);}
.r-faq summary{cursor:pointer;font-weight:700;color:var(--ink);}
.r-faq details p{margin-top:var(--s-2);color:var(--ink-2);}

/* Autor, Quellen, verwandte Artikel */
.r-author{display:flex;gap:var(--s-4);align-items:flex-start;border-top:1px solid var(--line);padding-top:var(--s-5);}
.r-author img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:none;}
.r-author p{font-size:.95rem;color:var(--ink-2);}
.r-author strong{color:var(--ink);}
.r-sources{font-size:.9rem;color:var(--ink-3);}
.r-sources ol{list-style:decimal;padding-left:1.4em;display:flex;flex-direction:column;gap:4px;margin-top:6px;}
.r-sources a{color:var(--ink-3);word-break:break-word;}
.r-related{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--s-3);}
.r-card{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-4);text-decoration:none;background:var(--surface-1);transition:border-color var(--d-micro);}
.r-card:hover{border-color:var(--accent);}
.r-card__k{font-family:var(--f-mono);font-size:var(--t-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-deep);font-weight:600;}
.r-card__t{font-family:var(--f-display);font-weight:800;font-size:1.12rem;letter-spacing:-.015em;color:var(--ink);line-height:1.2;}
.r-card__d{font-size:.92rem;color:var(--ink-3);}
.r-hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--s-4);}
.r-hub .r-card{padding:var(--s-5);}
.r-hub .r-card__t{font-size:1.3rem;}

/* Kopfzeile mit Ratgeber-Link */
.nav__links{display:flex;align-items:center;gap:var(--s-4);}
.nav__links a:not(.btn){text-decoration:none;font-weight:600;font-size:.92rem;color:var(--ink-2);}
.nav__links a:not(.btn):hover{color:var(--accent-deep);}
.nav__links a{white-space:nowrap;}
@media (max-width:560px){.nav__links{gap:var(--s-3);}.nav__links .btn{display:none;}}
@media (max-width:359px){.nav__links{gap:var(--s-2);}.nav__links a:not(.btn){font-size:.85rem;}.nav__links a[href="/ueber-uns"]{display:none;}.brand__word--light{display:none;}} /* Über uns steht im Fuß; auf 320 px reicht "Cosvion" neben dem Zeichen */
@media (max-width:400px){.nav__links a[href="/ueber-uns"]{display:none;}}

/* Fuß mit Ratgeber-Navigation */
.r-foot{background:var(--stage);color:var(--stage-ink-2);padding-block:var(--s-7);}
.r-foot__in{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px,5vw,40px);display:flex;flex-direction:column;gap:var(--s-4);font-size:.92rem;}
.r-foot nav{display:flex;flex-wrap:wrap;gap:6px 18px;}
.r-foot a{color:var(--stage-ink-2);text-decoration:none;}
.r-foot a:hover{color:var(--stage-ink);text-decoration:underline;}
.r-foot p{color:var(--stage-ink-3);}
