/* ycon.ONE – Legal pages (Impressum, Datenschutz). Default WordPress pages, no Elementor.
   Append to Appearance → Customize → Additional CSS (below ycon-light.css). Everything is scoped to .yc-legal. */
.yc-legal{--n:var(--yc-navy,#2d2e83);--o:var(--yc-orange,#f39200);--ink:var(--yc-ink,#15163a);--body:var(--yc-body,#4a4e6a);--mute:var(--yc-mute2,#6b7090);--line:var(--yc-line,#e7e8f1);--tint:var(--yc-tint,#f6f7fb);
  font-family:'Geist',system-ui,sans-serif;color:var(--body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
.yc-legal *,.yc-legal *::before,.yc-legal *::after{box-sizing:border-box}
.yc-legal a{color:var(--n);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(45,46,131,.3);overflow-wrap:anywhere}
.yc-legal a:hover{color:#1b1c5a;text-decoration-color:var(--o)}

/* Head band */
.yc-legal__head{background:var(--tint);border-bottom:1px solid var(--line);padding:clamp(56px,7vw,96px) clamp(20px,5vw,64px) clamp(40px,5vw,64px)}
.yc-legal__head-in{max-width:1180px;margin:0 auto}
.yc-legal__eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 14px;font:500 12px/1.2 'Geist Mono',ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--n)}
.yc-legal__eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--o)}
.yc-legal h1{margin:0;font:700 clamp(36px,5vw,60px)/1.02 'Geist',sans-serif;letter-spacing:-.04em;color:var(--ink)}
.yc-legal__lead{margin:16px 0 0;max-width:680px;font-size:18px;color:var(--body)}
.yc-legal__meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.yc-legal__meta span{padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font:500 12.5px/1.2 'Geist Mono',monospace;color:var(--mute)}

/* Body: TOC + content */
.yc-legal__body{max-width:1180px;margin:0 auto;padding:clamp(40px,5vw,72px) clamp(20px,5vw,64px) clamp(72px,8vw,120px);display:grid;gap:48px}
@media (min-width:1000px){.yc-legal__body--toc{grid-template-columns:260px minmax(0,1fr);gap:72px}}
.yc-legal__toc{align-self:start}
@media (min-width:1000px){.yc-legal__toc{position:sticky;top:110px;max-height:calc(100vh - 140px);overflow:auto}}
.yc-legal__toc p{margin:0 0 12px;font:500 12px/1.2 'Geist Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.yc-legal__toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--line);counter-reset:t}
.yc-legal__toc li{counter-increment:t;margin:0}
.yc-legal__toc a{display:flex;gap:10px;padding:6px 0 6px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:14px;line-height:1.4;color:var(--body);text-decoration:none}
.yc-legal__toc a::before{content:counter(t,decimal-leading-zero);flex:0 0 24px;min-width:24px;white-space:nowrap;font:500 11.5px/1.6 'Geist Mono',monospace;color:#9a9eb5}
.yc-legal__toc a:hover{color:var(--n);border-left-color:var(--o)}
@media (max-width:999px){.yc-legal__toc{padding:20px 22px;border-radius:16px;background:var(--tint)}.yc-legal__toc ol{border:0;columns:2 220px;column-gap:24px}.yc-legal__toc a{padding-left:0;border:0}}

/* Typography */
.yc-legal__content{max-width:760px;min-width:0}
.yc-legal__content>section{padding-top:8px;margin-top:48px;scroll-margin-top:110px}
.yc-legal__content>section:first-child{margin-top:0}
.yc-legal h2{margin:0 0 16px;padding-top:24px;border-top:1px solid var(--line);font:600 clamp(22px,2.2vw,28px)/1.25 'Geist',sans-serif;letter-spacing:-.025em;color:var(--ink)}
.yc-legal section:first-child>h2{border-top:0;padding-top:0}
.yc-legal h3{margin:32px 0 10px;font:600 18px/1.35 'Geist',sans-serif;color:var(--ink)}
.yc-legal p{margin:0 0 16px}
.yc-legal strong{color:var(--ink);font-weight:600}
.yc-legal ul{margin:0 0 20px;padding:0;list-style:none}
.yc-legal ul li{position:relative;padding-left:22px;margin:0 0 10px}
.yc-legal ul li::before{content:"";position:absolute;left:4px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--n)}

/* Fact box (Verarbeitete Datenarten, Betroffene Personen …) */
.yc-legal ul.yc-legal__facts{padding:20px 22px;border-radius:14px;background:var(--tint);margin:24px 0}
.yc-legal ul.yc-legal__facts li{padding-left:0;margin:0;padding-block:10px;border-bottom:1px solid var(--line);font-size:15px}
.yc-legal ul.yc-legal__facts li:first-child{padding-top:0}
.yc-legal ul.yc-legal__facts li:last-child{border-bottom:0;padding-bottom:0}
.yc-legal ul.yc-legal__facts li::before{display:none}
.yc-legal ul.yc-legal__facts strong{display:block;font:500 12px/1.4 'Geist Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--n);margin-bottom:2px}

/* Service providers */
.yc-legal ul.yc-legal__services li{padding:18px 20px;margin:0 0 12px;border:1px solid var(--line);border-radius:14px;font-size:15px}
.yc-legal ul.yc-legal__services li::before{display:none}
.yc-legal ul.yc-legal__services strong{display:block;font-size:16px;margin-bottom:4px}

/* Note / callout */
.yc-legal__note{padding:18px 20px;border-radius:14px;background:#fff6e8;color:#6b4300;font-size:15px;margin:0 0 20px}
.yc-legal__note strong{color:#6b4300}

/* Impressum cards */
.yc-legal__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px;margin:0 0 8px}
.yc-legal__card{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff}
.yc-legal__card h2{border:0;padding:0;margin:0 0 4px;font-size:22px}
.yc-legal__card .yc-legal__tag{display:inline-block;margin:0 0 18px;padding:5px 10px;border-radius:999px;background:#e9eaf8;color:var(--n);font:500 11.5px/1.2 'Geist Mono',monospace;letter-spacing:.04em}
.yc-legal dl{margin:0;display:grid;grid-template-columns:minmax(0,130px) minmax(0,1fr);gap:10px 16px;font-size:15px;line-height:1.55}
.yc-legal dt{font:500 12px/1.6 'Geist Mono',monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--mute);padding-top:2px}
.yc-legal dd{margin:0;color:var(--ink)}
@media (max-width:480px){.yc-legal dl{grid-template-columns:1fr;gap:2px}.yc-legal dd{margin-bottom:10px}}

/* WordPress / Jupiter X wrappers: let the page go full width */
.yc-legal-page .entry-content,.yc-legal-page .jupiterx-main-content .container{max-width:none!important;padding:0!important}
body:has(.yc-legal) .jupiterx-main-content{padding:0!important}
body:has(.yc-legal) .jupiterx-main-content>.container{max-width:none;padding:0}
body:has(.yc-legal) .jupiterx-post-header,body:has(.yc-legal) .jupiterx-main-header{display:none}

/* Impressum cards – roomier layout (v2) */
.yc-legal__cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))!important;gap:24px!important}
.yc-legal__card{padding:clamp(28px,3.4vw,44px)!important;border-radius:24px!important}
.yc-legal__card h2{font-size:clamp(22px,2vw,26px)!important;margin-bottom:8px!important}
.yc-legal__card .yc-legal__tag{margin-bottom:28px!important}
.yc-legal dl{grid-template-columns:1fr!important;gap:0!important}
.yc-legal dt{padding:18px 0 4px!important;border-top:1px solid var(--line)}
.yc-legal dt:first-of-type{border-top:0;padding-top:0!important}
.yc-legal dd{padding-bottom:18px;font-size:16px;line-height:1.6}
.yc-legal dd:last-of-type{padding-bottom:0}
.yc-legal dt+dd{border:0}
