/* page-impressum: layout nuance only (tokens from theme.css, no new theme values) */

/* ten sections, separated by a hairline so the reader scans by heading; the TOC keeps the counter badges of the shared .toc */
.imp .prose h2{padding-top:1.5rem;border-top:1px solid var(--line)}
.imp .prose h2:first-of-type{border-top:0;padding-top:0;margin-top:1.2em}
.imp .toc a{font-weight:600;line-height:1.35}

/* mobile table of contents: native <details>, closed until opened; the brick's sticky aside takes over from 900px */
.imp .prose-layout__side{display:none}
.imp-toc-m{margin:0 0 .6rem}
.imp-toc-m summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:44px;cursor:pointer;list-style:none;font:800 1.05rem/1.2 var(--f-head);color:var(--ink)}
.imp-toc-m summary::-webkit-details-marker{display:none}
.imp-toc-m summary::after{content:"";flex:none;width:.6rem;height:.6rem;margin-right:.3rem;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg);transition:transform .25s var(--ease)}
.imp-toc-m[open] summary::after{transform:rotate(-135deg);margin-top:.35rem}
.imp-toc-m ol{margin:.6rem 0 0;padding:0}
.imp-toc-m li{margin:0;padding:0}

/* register facts (Anbieter, Kontakt, Register, Steuer): label/value rows in one bordered card */
.imp .imp-card{margin:0 0 1.4em;overflow:hidden;background:var(--soft);border:1px solid var(--line);border-left:5px solid var(--accent-600);border-radius:var(--r)}
.imp .imp-card>div{display:grid;gap:.1rem;padding:.8rem 1.1rem;border-top:1px solid var(--line)}
.imp .imp-card>div:first-child{border-top:0}
.imp .imp-card dt{font:800 .95rem/1.35 var(--f-head);color:var(--muted)}
.imp .imp-card dd{margin:0;min-width:0;font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.imp .imp-card a{display:inline-flex;align-items:center;min-height:44px;font-weight:800;color:var(--accent-700);text-decoration-thickness:2px;text-underline-offset:.2em}
.imp .imp-card--contact dd{font:800 1.2rem/1.35 var(--f-head)}
.imp .imp-card--contact a{overflow-wrap:anywhere}

/* explanation of an absence (EU platform), not a clause: info bar */
.imp .imp-note{margin:1.3em 0;padding:.95rem 1.1rem;background:var(--soft);border-left:5px solid var(--accent-600);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--ink)}

/* credit register: one bordered row per photo; source URLs are plain text and may be very long */
.imp .prose ul.imp-credits{list-style:none;display:grid;gap:.6rem;margin:0 0 1.6em;padding:0}
.imp .prose .imp-credits li{margin:0;padding:.7rem .95rem;background:var(--soft);border:1px solid var(--line);border-radius:var(--r-sm);font-size:.98rem;line-height:1.55}
.imp .prose .imp-credits code{font:inherit;background:none;padding:0;color:var(--text);overflow-wrap:anywhere;word-break:break-word;hyphens:none}

@media (min-width:640px){
	.imp .imp-card>div{grid-template-columns:15rem minmax(0,1fr);gap:1.25rem;align-items:center}
}
@media (min-width:900px){
	.imp-toc-m{display:none}
	.imp .prose h2:first-of-type{margin-top:0}
	.imp .prose-layout__side{display:grid}
	.imp .toc{max-height:calc(100vh - var(--hdr-h) - 48px);overflow-y:auto;overscroll-behavior:contain}
	.imp .toc a{min-height:44px;padding:.3rem .5rem;font-size:.98rem}
}
