/* =============================================================================
   ZEMO'S — legal.css
   Paginile legale (Termeni, Confidențialitate, Cookies, GDPR) și 404.
   Aceeași structură ca la 82design: antet cu dată, cuprins lipicios în stânga,
   secțiuni numerotate, bloc de contact la final.
   ============================================================================= */

.lg-hero { padding: clamp(3.5rem, 8vw, 6rem) 0 clamp(2rem, 4vw, 3rem); border-bottom: 1px solid var(--rule); }
.lg-hero h1 { font-size: clamp(2.2rem, 5vw, 4rem); max-width: 18ch; }
.lg-date { margin-top: 1.4rem; }

.lg-layout { display: grid; gap: 3rem; grid-template-columns: minmax(0, 1fr); padding-block: clamp(2.5rem, 5vw, 4rem) var(--section); }
@media (min-width: 900px) { .lg-layout { grid-template-columns: 16rem minmax(0, 1fr); gap: clamp(3rem, 6vw, 6rem); } }

.lg-toc { align-self: start; }
@media (min-width: 900px) { .lg-toc { position: sticky; top: 90px; } }
.lg-toc-h { margin-bottom: 1rem; }
.lg-toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.lg-toc a { display: flex; gap: .8rem; align-items: baseline; font-size: .9rem; color: var(--ink-2); padding: .2rem 0; }
.lg-toc a .st-mono { font-size: .66rem; color: var(--ink-4); min-width: 1.6rem; }
.lg-toc a:hover { color: var(--ink); }

.lg-article { max-width: 72ch; }
.lg-intro { font-size: 1.1rem; color: var(--ink-2); padding-bottom: 1.5rem; border-bottom: 1px solid var(--rule); margin-bottom: 1rem; }
.lg-sec { padding: clamp(1.8rem, 3vw, 2.6rem) 0; border-bottom: 1px solid var(--rule); scroll-margin-top: 90px; }
.lg-meta { display: flex; gap: .8rem; align-items: baseline; margin-bottom: .6rem; }
.lg-meta span { color: var(--ink-4); }
.lg-h2 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); margin-bottom: 1rem; }
.lg-body { color: var(--ink-2); }
.lg-body ul { padding-left: 1.2rem; }
.lg-body li { margin-bottom: .5rem; }
.lg-body li strong { color: var(--ink); }
.lg-body a { text-decoration: underline; text-underline-offset: 3px; color: var(--ink); }
.lg-body a:hover { color: var(--accent); }
.lg-body h3 { font-size: 1.15rem; margin: 1.4rem 0 .6rem; color: var(--ink); }

/* cartelele de rezumat (cookies, GDPR) */
.lg-cards { display: grid; gap: 1rem; grid-template-columns: 1fr; margin: 1.5rem 0; }
@media (min-width: 640px) { .lg-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.lg-card { padding: 1.2rem; border: 1px solid var(--rule); background: var(--paper-2); }
.lg-card strong { display: block; margin-bottom: .3rem; color: var(--ink); font-weight: 500; }
.lg-card p { margin: 0; font-size: .92rem; color: var(--ink-2); }

/* tabelul de cookie-uri vine din consent.css (.cc-tabel) */

.lg-cta { margin-top: clamp(2.5rem, 5vw, 4rem); padding: clamp(2rem, 4vw, 3rem); border: 1px solid var(--rule); background: var(--paper-2); }
.lg-cta .st-quote { font-size: clamp(1.5rem, 2.6vw, 2.2rem); margin-bottom: .6rem; }
.lg-cta p { color: var(--ink-2); max-width: 56ch; }
.lg-cta .btn { margin-top: 1rem; }

/* 404 */
.nf { min-height: 70vh; display: grid; align-items: center; padding-block: var(--section); }
.nf h1 { font-size: clamp(2.4rem, 7vw, 6rem); }
.nf ol { list-style: none; padding: 0; margin: 2rem 0 0; display: grid; gap: .6rem; }
.nf ol a { display: flex; gap: 1rem; align-items: baseline; font-family: var(--font-display); font-size: 1.4rem; }
.nf ol a .st-mono { color: var(--ink-4); }
.nf ol a:hover { color: var(--accent); }

/* telefon: coloana nu se lărgește după tabele (tabelul se derulează în cadrul lui), etichetele mono rămân lizibile */
.lg-layout > * { min-width: 0; }
.cc-tabel-cadru { -webkit-overflow-scrolling: touch; }
@media (max-width: 600px) { .lg-toc a .st-mono, .lg-body .st-mono, .lg-hero .st-mono { font-size: 11px; } .cc-tabel { font-size: .82rem; } }
