/* =============================================================================
   legal-v7.css — tema întunecată pentru paginile de conținut (contact, termeni,
   politica de confidențialitate, politica de cookies).
   -----------------------------------------------------------------------------
   Paginile astea nu au un design livrat în pachet — stăteau pe tema veche
   `front-office` (fundal alb, foundation grid). Aici le aducem în limbajul vizual
   v7 (întunecat, fonturile landing, accentul gradient), REFOLOSIND markup-ul de
   conținut existent: nu rescriem cele ~470 de rânduri de text legal, ci
   re-desenăm. Tokenii (--panel, --card-bd, --accent-text, --muted…) vin din
   chat-v7.css, încărcat înaintea acestui fișier. Chrome-ul (`.legal-*`) e definit
   integral aici — paginile nu poartă sidebar-ul de chat.
   ============================================================================= */

/* ---- chrome: header + container + footer ---- */
.legal { min-height: 100svh; display: flex; flex-direction: column; }
.legal-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 0.875rem clamp(1rem, 4vw, 2.75rem); border-bottom: 0.0625rem solid var(--hairline); }
.legal-top .brand svg { height: 1.875rem; width: auto; display: block; }
.legal-back { display: inline-flex; align-items: center; gap: 0.4375rem; min-height: 2.75rem; padding: 0.5rem 0.75rem; border-radius: 0.625rem; font-size: 0.84375rem; font-weight: 600; color: var(--muted); text-decoration: none; transition: color var(--dur-fast), background var(--dur-fast); }
.legal-back:hover { color: #fff; background: rgba(255, 255, 255, .05); }
.legal-back svg { width: 0.9375rem; height: 0.9375rem; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.legal-main { flex: 1; padding: clamp(1.75rem, 6vw, 4rem) 1rem; }
.legal-wrap { width: 100%; max-width: 51.25rem; margin: 0 auto; }
.legal-foot { border-top: 0.0625rem solid var(--hairline); padding: 1.375rem 1rem; text-align: center; font-size: 0.8125rem; color: var(--dim); display: flex; align-items: center; justify-content: center; gap: 0.625rem; flex-wrap: wrap; }
.legal-foot .ico { width: 0.9375rem; height: 0.9375rem; stroke: currentColor; fill: none; stroke-width: 2; }

/* ---- neutralizarea containerelor foundation (fără tema veche rămân doar div-uri) ---- */
.legal .section, .legal .grid-container, .legal .grid-x, .legal .cell { display: block; width: auto; margin: 0; padding: 0; max-width: none; }
.legal .grid-x.align-justify, .legal .grid-x.x-center { display: block; }

/* ritmul vertical al utilitarelor `.margin-children-*` (tema veche le dădea gap) */
.legal .margin-children-16 > * + * { margin-top: 1rem; }
.legal .margin-children-32 > * + * { margin-top: 2rem; }
.legal .large-margin-children-64 > * + *, .legal .small-margin-children-32 > * + * { margin-top: 2rem; }
.legal .large-margin-children-100 > * + *, .legal .small-margin-children-64 > * + * { margin-top: 2.5rem; }
.legal .privacy-section + .privacy-section, .legal .terms-section + .terms-section { margin-top: 2.125rem; }

/* ---- tipografie (prose) ---- */
.legal-wrap h1, .legal .h1 { font-family: var(--font-display); font-weight: 800; letter-spacing: -.03em; font-size: clamp(1.75rem, 5vw, 2.5rem); line-height: 1.1; color: #fff; margin: 0 0 0.5rem; }
.legal-wrap h2 { font-family: var(--font-display); font-weight: 700; letter-spacing: -.02em; font-size: 1.375rem; line-height: 1.25; color: #fff; margin: 1.875rem 0 0.75rem; }
.legal-wrap h3 { font-family: var(--font-display); font-weight: 700; font-size: 1.0625rem; color: #fff; margin: 1.25rem 0 0.5rem; }
.legal-wrap p { margin: 0 0 0.75rem; font-size: 0.9375rem; line-height: 1.65; color: var(--fg-body); }
.legal-wrap p:last-child { margin-bottom: 0; }
.legal-wrap ul, .legal-wrap ol { margin: 0 0 0.75rem; padding-left: 1.375rem; }
.legal-wrap li { font-size: 0.9375rem; line-height: 1.6; color: var(--fg-body); margin-bottom: 0.375rem; }
.legal-wrap b, .legal-wrap strong { color: #fff; font-weight: 700; }
.legal-wrap a { color: var(--accent-text); text-decoration: underline; text-underline-offset: 0.1875rem; text-decoration-color: rgba(var(--accent-rgb), .5); transition: text-decoration-color var(--dur-fast); }
.legal-wrap a:hover { text-decoration-color: var(--accent-text); }
.legal-wrap a.hover-underline { text-decoration: none; }
.legal-wrap a.hover-underline:hover { text-decoration: underline; }

/* ---- carduri: albul din tema veche devine panou întunecat; gradientul rămâne ---- */
.legal .padding-25 { padding: 1.375rem; }
.legal .border-radius { border-radius: var(--r-lg); }
.legal .background-white { background: var(--panel); border: 0.0625rem solid var(--card-bd); box-shadow: var(--sh-1), var(--inset-hi); }
.legal .background-white p, .legal .background-white li { color: var(--fg-body); }
.legal .background-gradient { background: var(--grad); }
.legal .background-gradient.color-white, .legal .background-gradient.color-white * { color: #fff; }

/* ---- contact: metode + formular ---- */
.legal .contact-method { display: inline-flex; align-items: center; gap: 0.75rem; text-decoration: none; color: var(--fg); font-weight: 600; }
.legal .contact-method svg { width: 2.5rem; height: 2.5rem; flex: 0 0 auto; }
.legal .contact-method .hover-underline { color: var(--fg); }
.legal .contact-method:hover .hover-underline { color: var(--accent-text); text-decoration: underline; }
.legal .inline-flex { display: inline-flex; } .legal .y-center { align-items: center; } .legal .gap-10 { gap: 0.625rem; }

.legal .form { display: grid; grid-template-columns: 1fr 1fr; gap: 0.875rem; }
.legal .form > .cell[style*="12"] { grid-column: 1 / -1; }
@media (max-width: 560px) { .legal .form { grid-template-columns: 1fr; } .legal .form > .cell { grid-column: 1 / -1; } }
.legal .form input[type="text"], .legal .form input[type="email"], .legal .form textarea {
  width: 100%; min-height: 3.25rem; background: var(--bg-elev); border: 0.0625rem solid var(--card-bd);
  border-radius: var(--r-sm); padding: 0.9375rem 0.875rem; color: #fff; font: inherit; font-size: 0.9375rem;
  box-shadow: inset 0 0.0625rem 0.125rem rgba(0, 0, 0, .3); transition: border-color var(--dur-fast), box-shadow var(--dur-fast);
}
.legal .form textarea { min-height: 7.5rem; resize: vertical; }
.legal .form input::placeholder, .legal .form textarea::placeholder { color: var(--dim); }
.legal .form input:focus-visible, .legal .form textarea:focus-visible {
  outline: none; border-color: rgba(var(--accent-rgb), .6);
  box-shadow: inset 0 0.0625rem 0.125rem rgba(0, 0, 0, .3), 0 0 0 0.1875rem rgba(var(--accent-rgb), .18);
}
.legal .form input:-webkit-autofill, .legal .form textarea:-webkit-autofill {
  -webkit-text-fill-color: #fff; caret-color: #fff;
  -webkit-box-shadow: 0 0 0 62.5rem var(--bg-elev) inset; transition: background-color 9999s ease-out 0s;
}
.legal .form [data-field-invalid] { border-color: rgba(var(--danger-rgb), .65) !important; box-shadow: inset 0 0.0625rem 0.125rem rgba(0,0,0,.3), 0 0 0 0.1875rem rgba(var(--danger-rgb), .14) !important; }
/* label plutitor injectat de framework (data-form-label-virtual) */
.legal .form .label-virtual-cnt { position: relative; }
.legal .form .label-virtual-cnt .label-virtual { position: absolute; left: 0.875rem; top: 1rem; font-size: 0.9375rem; color: var(--dim); pointer-events: none; opacity: 0; transition: opacity var(--dur-fast), transform var(--dur-base) var(--ease-out); }
.legal .form .label-virtual-cnt[data-active] .label-virtual { opacity: 1; transform: translateY(-1.625rem) scale(.8); color: var(--accent-text); font-weight: 700; }
.legal .form .label-virtual-cnt[data-active] input::placeholder, .legal .form .label-virtual-cnt[data-active] textarea::placeholder { color: transparent; }

/* checkbox de acord (checkbox-virtual din framework) */
.legal .checkbox-virtual { display: flex; align-items: flex-start; gap: 0.625rem; cursor: pointer; font-size: 0.84375rem; line-height: 1.5; color: var(--muted); }
.legal .checkbox-virtual input { position: absolute; opacity: 0; pointer-events: none; }
.legal .checkbox-virtual__checkbox { flex: 0 0 auto; width: 1.3125rem; height: 1.3125rem; border-radius: 0.375rem; border: 0.09375rem solid var(--hairline-strong); background: var(--bg-elev); display: inline-flex; align-items: center; justify-content: center; margin-top: 0.0625rem; transition: background var(--dur-fast), border-color var(--dur-fast); }
.legal .checkbox-virtual__checkbox svg { width: 0.6875rem; height: 0.6875rem; fill: #fff; opacity: 0; transition: opacity var(--dur-fast); }
.legal .checkbox-virtual input:checked + .checkbox-virtual__checkbox { background: var(--accent); border-color: transparent; }
.legal .checkbox-virtual input:checked + .checkbox-virtual__checkbox svg { opacity: 1; }
.legal .checkbox-virtual__text { color: var(--muted); }
.legal .form .cta { margin-top: 0.125rem; }

.legal .font-14 { font-size: 0.84375rem; } .legal .text-left { text-align: left; }

/* Modalele newsletter/feedback vin din layout-ul plan-v5 (necesare pe chat). Pe
   paginile de conținut nu au niciun declanșator — sunt inofensive (ascunse prin
   opacity/transform), dar le scoatem de tot ca să nu poată apărea la vreo tranziție. */
body.legal-page .popup-custom { display: none !important; }

/* ---------------------------------------------------------------------------
   14 sept 2026: paginile legale generate din .docx (gen_politici.py) - clauze
   numerotate (1.2. / a. / (i)), liste cu bullet si tabele (cele din Politica de
   confidentialitate au 3 coloane; tabelul derulează orizontal pe mobil, pagina nu). */
.legal-wrap .lg-doc h3 { margin: 1.25rem 0 0.5rem; }
.legal-wrap .lg-cl { display: flex; gap: 0.625rem; margin: 0 0 0.625rem; font-size: 0.9375rem; line-height: 1.65; color: var(--fg-body); }
.legal-wrap .lg-cl .lg-n { flex: 0 0 auto; min-width: 2.5rem; color: #fff; font-weight: 700; }
.legal-wrap .lg-cl .lg-t { flex: 1 1 auto; min-width: 0; }
.legal-wrap .lg-cl--2 { padding-left: 2.5rem; }
.legal-wrap .lg-cl--2 .lg-n { min-width: 3.25rem; }
.legal-wrap .lg-cl--sub { padding-left: 2.5rem; }
.legal-wrap .lg-cl--sub .lg-n { min-width: 1.75rem; font-weight: 600; color: var(--fg-body); }
.legal-wrap ul.lg-b { margin: 0 0 0.75rem; padding-left: 3.75rem; list-style: disc; }
.legal-wrap ul.lg-b--1, .legal-wrap ul.lg-b--2 { padding-left: 5rem; }
.legal-wrap .lg-table { overflow-x: auto; margin: 0.5rem 0 1.25rem; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 0.625rem; -webkit-overflow-scrolling: touch; }
.legal-wrap table { border-collapse: collapse; width: 100%; min-width: 40rem; font-size: 0.875rem; line-height: 1.55; }
.legal-wrap th, .legal-wrap td { padding: 0.625rem 0.75rem; border-bottom: 1px solid rgba(255, 255, 255, 0.08); border-right: 1px solid rgba(255, 255, 255, 0.06); vertical-align: top; text-align: left; color: var(--fg-body); }
.legal-wrap th:last-child, .legal-wrap td:last-child { border-right: 0; }
.legal-wrap tbody tr:last-child td { border-bottom: 0; }
.legal-wrap th { color: #fff; font-weight: 700; background: rgba(255, 255, 255, 0.04); }
@media (max-width: 759.98px) {
  .legal-wrap .lg-cl--2, .legal-wrap .lg-cl--sub { padding-left: 1.25rem; }
  .legal-wrap ul.lg-b { padding-left: 2.5rem; }
  .legal-wrap ul.lg-b--1, .legal-wrap ul.lg-b--2 { padding-left: 3.5rem; }
}

/* 14 sept: anexa cu registrul prelucrarilor (8 coloane) - tabel lat, deruleaza in rama lui */
.legal-wrap .lg-table--rop table { min-width: 88rem; font-size: 0.8125rem; }
.legal-wrap .lg-table--rop td:first-child { text-align: center; white-space: nowrap; }

/* ═══ Dennis Patch 5-10-26 · FAQ: întrebările frecvente (routes/faq.html.twig), în tema paginilor de conținut ═══
   Coloana de citit (46rem), trei grupuri, acordeon pe <details>: cardul de sticlă se deschide lin, semnul „+"
   se rotește în „×" pe un cerc în gradientul mărcii. La final, drumul spre Andu și spre contact. */
.faq8 { max-width: 46rem; }
.faq8-k { margin: 0 0 0.625rem; font: 700 0.75rem/1.2 "Inter", sans-serif; letter-spacing: 0.12em; text-transform: uppercase; background: linear-gradient(90deg, #5ee7ff, #a78bfa); -webkit-background-clip: text; background-clip: text; color: transparent; }
.legal-wrap .faq8-lede { max-width: 32rem; margin: 0.5rem 0 0; font-size: 1rem; line-height: 1.6; color: var(--muted); }
.faq8-g { margin-top: 2.5rem; }
.legal-wrap .faq8-g h2 { margin: 0 0 0.875rem; font-size: 0.8125rem; font-family: "Inter", sans-serif; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--dim); }
.faq8-q { margin: 0 0 0.625rem; border-radius: 1.125rem; background: rgba(255, 255, 255, 0.035); box-shadow: inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.07); transition: background 0.25s, box-shadow 0.25s; }
.faq8-q[open] { background: rgba(255, 255, 255, 0.05); box-shadow: inset 0 0 0 0.0625rem rgba(167, 139, 250, 0.32), 0 1rem 2.5rem -1.5rem rgba(124, 92, 252, 0.6); }
.faq8-q summary { display: flex; align-items: center; gap: 1rem; min-height: 3.75rem; padding: 0.875rem 1.125rem 0.875rem 1.25rem; cursor: pointer; list-style: none; font: 700 1.0625rem/1.35 var(--font-display, "Sora"), sans-serif; letter-spacing: -0.015em; color: #fff; -webkit-tap-highlight-color: transparent; }
.faq8-q summary::-webkit-details-marker { display: none; }
.faq8-q summary span { flex: 1 1 auto; min-width: 0; }
.faq8-q summary i { position: relative; flex: 0 0 auto; width: 1.75rem; height: 1.75rem; border-radius: 50%; background: linear-gradient(135deg, #00c2ff, #b521e9); box-shadow: 0 0.375rem 1rem -0.375rem rgba(124, 92, 252, 0.8); transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1); }
.faq8-q summary i::before, .faq8-q summary i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 0.75rem; height: 0.125rem; margin: -0.0625rem 0 0 -0.375rem; border-radius: 0.125rem; background: #fff; }
.faq8-q summary i::after { transform: rotate(90deg); }
.faq8-q[open] summary i { transform: rotate(135deg); }
.faq8-q summary:focus-visible { outline: 0.125rem solid rgba(0, 194, 255, 0.85); outline-offset: 0.125rem; border-radius: 1.125rem; }
.faq8-a { padding: 0 1.25rem 1.125rem; }
.legal-wrap .faq8-a p { font-size: 0.96875rem; line-height: 1.65; color: var(--fg-body); }
.faq8-q[open] .faq8-a { animation: faq8In 0.35s cubic-bezier(0.22, 1, 0.36, 1); }
@keyframes faq8In { from { opacity: 0; transform: translateY(-0.375rem); } to { opacity: 1; transform: none; } }
@media (hover: hover) and (pointer: fine) {
  .faq8-q:not([open]):hover { background: rgba(255, 255, 255, 0.05); box-shadow: inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.12); }
}
.faq8-end { margin-top: 2.75rem; padding: 1.5rem 1.375rem; border-radius: 1.25rem; text-align: center; background: radial-gradient(120% 90% at 50% 0%, rgba(124, 92, 252, 0.16), transparent 65%), rgba(255, 255, 255, 0.035); box-shadow: inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.07); }
.legal-wrap .faq8-end p { margin: 0 0 1rem; color: var(--fg-body); }
.faq8-end-b { display: flex; align-items: center; justify-content: center; gap: 0.75rem; flex-wrap: wrap; }
.faq8-end-b .cta { min-width: 13rem; font-weight: 800; }
.legal-wrap .faq8-alt { display: inline-flex; align-items: center; min-height: 3rem; padding: 0 1.25rem; border-radius: 62.4375rem; color: #fff; font-weight: 700; text-decoration: none; box-shadow: inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.16); transition: background 0.2s, box-shadow 0.2s; }
.legal-wrap .faq8-alt:hover { background: rgba(255, 255, 255, 0.05); box-shadow: inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.28); }
@media (max-width: 559.98px) {
  .faq8-g { margin-top: 2rem; }
  .faq8-q summary { min-height: 3.5rem; padding: 0.8125rem 0.875rem 0.8125rem 1rem; font-size: 1rem; }
  .faq8-a { padding: 0 1rem 1rem; }
  .faq8-end-b { flex-direction: column; align-items: stretch; }
  .faq8-end-b .cta, .legal-wrap .faq8-alt { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .faq8-q summary i { transition: none; }
  .faq8-q[open] .faq8-a { animation: none; }
}

/* Dennis Patch 5-10-26 · SCARA: fonts.css pune site-ul la 75% între 1100 și 1535px (85% până la 1899), iar pe un laptop
   textul paginilor de conținut (întrebări frecvente, contact, termeni, politici) ieșea la ~11px. Sunt pagini de citit:
   rămân la 100%, ca ecranele de cont (cont-v8.css) și paginile cu meniu (acx-meniu.css). */
@media (min-width: 1100px) and (max-width: 1899.98px) {
  html:has(> body.legal-page) {
    font-size: 100% !important;
  }
}

/* ═══ Dennis Patch 5-10-26 · CONTACT (routes/contact.html.twig): introducerea cu trei drumuri rapide, apoi formularul.
   Telefon și 1/2 desktop: una sub alta. De la 900px: două coloane (stânga cine ești și drumurile, dreapta formularul). */
.legal-wrap:has(> .ct8) { max-width: 66rem; }
.ct8 { display: grid; gap: 2.25rem; }
.ct8 h1 { margin-bottom: 0.25rem; }
.legal-wrap .ct8-lede { max-width: 28rem; margin: 0.5rem 0 1.5rem; font-size: 1rem; line-height: 1.6; color: var(--muted); }
.ct8-ways { display: grid; gap: 0.625rem; }
.legal-wrap .ct8-way { display: flex; align-items: center; gap: 0.875rem; min-height: 4rem; padding: 0.75rem 1rem; border-radius: 1rem; text-decoration: none; background: rgba(255, 255, 255, 0.035); box-shadow: inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.07); transition: background 0.2s, box-shadow 0.2s, transform 0.2s; }
.legal-wrap .ct8-way b { display: block; color: #fff; font-size: 0.96875rem; overflow-wrap: anywhere; }
.legal-wrap .ct8-way small { display: block; margin-top: 0.125rem; font-size: 0.8125rem; color: var(--muted); }
.ct8-ic { flex: 0 0 auto; display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 0.875rem; background: linear-gradient(135deg, rgba(0, 194, 255, 0.18), rgba(181, 33, 233, 0.18)); box-shadow: inset 0 0 0 0.0625rem rgba(167, 139, 250, 0.28); }
.ct8-ic svg { width: 1.25rem; height: 1.25rem; fill: none; stroke: #cfc3ff; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.legal-wrap .ct8-way:active { transform: scale(0.99); }
@media (hover: hover) and (pointer: fine) {
  .legal-wrap .ct8-way:hover { background: rgba(255, 255, 255, 0.055); box-shadow: inset 0 0 0 0.0625rem rgba(167, 139, 250, 0.4); }
}
.legal-wrap .ct8-way:focus-visible { outline: 0.125rem solid rgba(0, 194, 255, 0.85); outline-offset: 0.125rem; }
.ct8-form { padding: 1.375rem; border-radius: 1.375rem; background: radial-gradient(120% 60% at 50% 0%, rgba(124, 92, 252, 0.12), transparent 62%), rgba(255, 255, 255, 0.03); box-shadow: inset 0 0 0 0.0625rem rgba(255, 255, 255, 0.07); }
.ct8-form .form .cta { width: 100%; }
@media (min-width: 900px) {
  .ct8 { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: 3rem; align-items: start; }
  .ct8-form { padding: 1.75rem; }
}
@media (max-width: 559.98px) {
  .ct8-form { margin: 0 -0.25rem; padding: 1.125rem; }
}
.ct8-form .form > .cell:has(> .cta) { grid-column: 1 / -1; }
/* subsolul paginilor de conținut: lacătul stă pe rândul textului „SSL · GDPR", nu deasupra lui */
.legal-foot .ssl { display: inline-flex; align-items: center; gap: 0.375rem; }
/* sigla din capul paginilor de conținut: țintă de atingere de 44px (desenul rămâne de 30px) */
.legal-top .brand { display: inline-flex; align-items: center; min-height: 2.75rem; }
/* rânduri echilibrate: fără un cuvânt singur pe ultimul rând (întrebări, răspunsuri, drumurile din contact) */
.faq8-q summary span { text-wrap: balance; }
.legal-wrap .faq8-a p, .legal-wrap .ct8-way small, .legal-wrap .faq8-lede, .legal-wrap .ct8-lede { text-wrap: pretty; }

/* ═══ Rafinări 1-11-26 · C19: etichetele plutitoare ale formularului de contact pornesc toate din aceeași margine.
   `scale(.8)` cu originea implicită (centrul) muta etichetele lungi mai la dreapta decât pe cele scurte. ═══ */
.legal .form .label-virtual-cnt .label-virtual { transform-origin: left center; }

/* ═══ Rafinări 1-11-26 · C10: tabelul cookie-urilor (cookies-policy.html.twig, .lg-table--stack). Pe telefon, fiecare rând
   devine un card (numele sus, apoi „La ce folosește" și „Cât durează"), ca să nu se ascundă coloana duratei în derularea
   orizontală. De la 760px rămâne tabelul obișnuit al paginilor legale. ═══ */
@media (max-width: 759.98px) {
  .legal-wrap .lg-table--stack { overflow: visible; border: 0; }
  .legal-wrap .lg-table--stack table { min-width: 0; }
  .legal-wrap .lg-table--stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .legal-wrap .lg-table--stack tr { display: block; margin: 0 0 0.75rem; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 0.625rem; }
  .legal-wrap .lg-table--stack td { display: block; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.06); }
  .legal-wrap .lg-table--stack tbody tr td:last-child { border-bottom: 0; }
  .legal-wrap .lg-table--stack td:first-child { color: #fff; font-weight: 700; overflow-wrap: anywhere; background: rgba(255, 255, 255, 0.04); }
  .legal-wrap .lg-table--stack td[data-label]::before { content: attr(data-label); display: block; margin-bottom: 0.125rem; font-size: 0.75rem; font-weight: 600; color: var(--dim); }
}
