/* Complete KOUNI privacy policy: 25 numbered sections, source dated 05.10.2026. */
.legal-page { padding-top:0 !important; }
.legal-hero { min-height: 270px !important; padding:48px 0 46px !important; align-items:center !important; }
.legal-hero h1 { margin:16px 0 0 !important; font-size:clamp(34px,4.4vw,60px) !important; letter-spacing:0 !important; line-height:1.35 !important; }
.legal-back-link { margin-bottom:14px !important; color:var(--muted) !important; }
.legal-eyebrow { color:var(--muted) !important; }
.legal-hero-meta { margin-top:13px !important; color:var(--muted) !important; gap:14px !important; font-size:12px !important; }
.legal-body { padding:42px 0 90px !important; }
.legal-layout { display:grid !important; grid-template-columns:minmax(220px, .32fr) minmax(0,1fr) !important; gap:clamp(24px,3.2vw,54px) !important; align-items:start !important; }
.legal-sidebar { position:sticky !important; top:22px !important; max-height:calc(100vh - 40px); overflow-y:auto; background:var(--background); border-top:1px solid var(--line) !important; }
.privacy-toc summary { padding:18px 6px; color:var(--text); font-size:14px; font-weight:600; cursor:pointer; }
.privacy-toc nav { display:flex !important; flex-direction:column !important; gap:0 !important; }
.legal-sidebar .privacy-toc a { padding:9px 6px !important; font-size:12px !important; line-height:1.5; color:var(--secondary) !important; display:flex; gap:11px; align-items:baseline; text-decoration:none; }
.legal-sidebar a:hover,.legal-sidebar a:focus-visible { color:var(--text) !important; padding-inline-start:10px !important; }
.toc-index { display:inline-block; width:2em; flex-shrink:0; direction:ltr; text-align:left; font-family:Georgia,serif; font-size:12px; color:var(--muted); }
.legal-content { width:100%; max-width:950px !important; min-width:0; }
.legal-intro { padding:0 0 26px !important; margin:0 0 6px; }
.legal-intro p { font-size:clamp(15px,1.3vw,18px) !important; line-height:1.95 !important; color:var(--secondary) !important; }
.legal-section { scroll-margin-top:24px !important; padding:38px 0 32px !important; border-bottom:1px solid var(--line) !important; }
.legal-section-number { color:var(--muted) !important; font-size:13px !important; letter-spacing:.18em !important; text-align:right; margin:0 0 9px !important; }
.legal-section h2 { color:var(--text) !important; font-size:clamp(22px,2.15vw,29px) !important; font-weight:600 !important; line-height:1.5 !important; margin:0 0 19px !important; }
.legal-section .policy-paragraph { color:var(--secondary) !important; font-size:clamp(14px,1.1vw,16px) !important; line-height:2.05 !important; margin:0 0 14px !important; text-align:start; }
.policy-subnumber { direction:ltr; display:inline-block; margin-inline-end:9px; color:var(--muted); font-size:12px; font-variant-numeric:tabular-nums; }
.legal-list { margin:0 0 19px !important; padding:0 !important; list-style:none; gap:3px !important; }
.legal-list li { color:var(--secondary) !important; font-size:clamp(14px,1.1vw,16px) !important; line-height:1.9 !important; padding:0 20px 0 0 !important; }
.legal-list li::before { top:15px !important; width:4px !important; height:4px !important; border-radius:0 !important; background:var(--text) !important; }
.legal-contact { border-radius:0 !important; margin-top:40px !important; padding:30px !important; background:var(--surface) !important; color:var(--text) !important; }
.legal-contact::before { display:none !important; }
.legal-contact h2 { color:var(--text) !important; font-size:26px !important; }
.legal-contact p { color:var(--secondary) !important; }
.legal-contact a { color:var(--text) !important; }
.legal-section a { color:var(--text); text-decoration:underline; text-underline-offset:3px; }
@media (max-width:900px) {
 .legal-layout { grid-template-columns:minmax(0,1fr) !important; gap:20px !important; }
 .legal-sidebar { position:relative !important; top:auto !important; max-height:none !important; overflow:visible !important; }
 .privacy-toc nav { max-height:310px; overflow:auto; }
 .legal-content { max-width:none !important; }
 .legal-hero { min-height:215px !important; padding:35px 0 !important; }
 .legal-body { padding-top:22px !important; }
}
@media (max-width:600px) {
 .legal-hero h1 { font-size:32px !important; }
 .legal-hero-meta { font-size:11px !important; }
 .legal-section { padding:29px 0 25px !important; }
 .legal-contact { padding:26px 20px !important; }
}

/* Sidebar and internal legal section anchors stay below the sticky masthead. */
@media (min-width: 901px) {
  .legal-sidebar { top: 156px !important; max-height: calc(100dvh - 172px) !important; }
}
.legal-section { scroll-margin-top: 153px !important; }
@media (max-width: 900px) {
  .legal-section { scroll-margin-top: 90px !important; }
}
