/* ═══════════════════════════════════════════════
   SPRUCE UP — legal.css  v2.0
   Shared by: Privacy Policy, Terms, Cookie, Sitemap
   Prefix: lg-
═══════════════════════════════════════════════ */
:root {
    --lg-yellow:   #F5C800;
    --lg-charcoal: #1C1C1C;
    --lg-white:    #ffffff;
    --lg-gray:     #f5f5f3;
    --lg-border:   rgba(28,28,28,0.09);
    --lg-text-dim: #555555;
    --lg-font:     'Poppins', sans-serif;
    --lg-radius:   6px;
    --lg-inner:    1200px;
}

.lg-inner { max-width: var(--lg-inner); margin: 0 auto; padding: 0 48px; }

/* ── Breadcrumb ── */
.lg-breadcrumb { display:flex; align-items:center; gap:8px; font-family:var(--lg-font); font-size:11px; color:rgba(28,28,28,0.45); margin-bottom:32px; }
.lg-breadcrumb a { color:rgba(28,28,28,0.55); text-decoration:none; }
.lg-breadcrumb a:hover { color:var(--lg-charcoal); }

/* ── Hero band ── */
.lg-hero { background:var(--lg-charcoal); padding:56px 0 52px; }
.lg-hero__eyebrow { display:block; font-family:var(--lg-font); font-size:10px; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--lg-yellow); margin-bottom:14px; }
.lg-hero__title { font-family:var(--lg-font); font-size:42px; font-weight:800; color:var(--lg-white); margin:0 0 14px; line-height:1.1; letter-spacing:-0.02em; }
.lg-hero__meta { font-family:var(--lg-font); font-size:13px; color:rgba(255,255,255,0.4); margin:0; }
.lg-hero__meta strong { color:rgba(255,255,255,0.65); font-weight:500; }

/* ── 2-column body layout ── */
.lg-body { background:var(--lg-white); padding:64px 0 80px; }
.lg-body__grid { display:grid; grid-template-columns:240px 1fr; gap:56px; align-items:start; }

/* ── LEFT: Sticky TOC ── */
.lg-toc { position:sticky; top:88px; }
.lg-toc__title { font-family:var(--lg-font); font-size:10px; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:rgba(28,28,28,0.35); margin:0 0 16px; padding-bottom:12px; border-bottom:2px solid var(--lg-yellow); }
.lg-toc__list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px; }
.lg-toc__list li { display:flex; align-items:baseline; gap:10px; }
.lg-toc__list li span { font-size:10px; font-weight:700; color:var(--lg-yellow); min-width:22px; flex-shrink:0; }
.lg-toc__list a { font-family:var(--lg-font); font-size:13px; color:var(--lg-text-dim); text-decoration:none; padding:6px 0; display:block; border-left:2px solid transparent; padding-left:10px; margin-left:-10px; transition:color 0.2s, border-color 0.2s; line-height:1.4; }
.lg-toc__list a:hover { color:var(--lg-charcoal); border-left-color:var(--lg-yellow); }
.lg-toc__list a.lg-toc--active { color:var(--lg-charcoal); font-weight:600; border-left-color:var(--lg-yellow); }

/* ── RIGHT: Content ── */
.lg-content {}

/* Section blocks */
.lg-section { margin-bottom:52px; padding-bottom:52px; border-bottom:1px solid var(--lg-border); scroll-margin-top:100px; }
.lg-section:last-child { border-bottom:none; margin-bottom:0; padding-bottom:0; }
.lg-section__num { display:inline-block; font-family:var(--lg-font); font-size:10px; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--lg-yellow); margin-bottom:8px; }
.lg-section__title { font-family:var(--lg-font); font-size:24px; font-weight:800; color:var(--lg-charcoal); margin:0 0 20px; line-height:1.2; }
.lg-section p { font-family:var(--lg-font); font-size:15px; line-height:1.85; color:var(--lg-text-dim); margin:0 0 16px; }
.lg-section p:last-child { margin-bottom:0; }
.lg-section p strong { color:var(--lg-charcoal); font-weight:600; }
.lg-section ul, .lg-section ol { margin:16px 0; padding-left:0; list-style:none; display:flex; flex-direction:column; gap:10px; }
.lg-section ul li, .lg-section ol li { font-family:var(--lg-font); font-size:15px; line-height:1.7; color:var(--lg-text-dim); display:flex; gap:12px; align-items:flex-start; }
.lg-section ul li::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--lg-yellow); flex-shrink:0; margin-top:8px; }
.lg-section ol { counter-reset:lg-ol; }
.lg-section ol li::before { counter-increment:lg-ol; content:counter(lg-ol); font-size:11px; font-weight:700; color:var(--lg-yellow); min-width:20px; margin-top:3px; }
.lg-section a { color:var(--lg-charcoal); border-bottom:1px solid var(--lg-yellow); text-decoration:none; }
.lg-section a:hover { color:#a07800; }

/* Contact box */
.lg-contact-box { background:var(--lg-gray); border:1px solid var(--lg-border); border-left:4px solid var(--lg-yellow); border-radius:var(--lg-radius); padding:24px 28px; margin-top:24px; }
.lg-contact-box p { font-family:var(--lg-font); font-size:14px; line-height:1.75; color:var(--lg-text-dim); margin:0; }
.lg-contact-box strong { color:var(--lg-charcoal); }

/* ── Sitemap specific ── */
.lg-sitemap-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; }
.lg-sitemap-col__title { font-family:var(--lg-font); font-size:10px; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--lg-yellow); margin:0 0 16px; padding-bottom:12px; border-bottom:2px solid var(--lg-yellow); }
.lg-sitemap-col ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.lg-sitemap-col ul li::before { display:none; }
.lg-sitemap-col a { font-family:var(--lg-font); font-size:14px; color:var(--lg-charcoal); text-decoration:none; display:flex; align-items:center; gap:8px; border-bottom:none; }
.lg-sitemap-col a::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--lg-yellow); flex-shrink:0; }
.lg-sitemap-col a:hover { color:#a07800; }
.lg-sitemap-col a span { font-size:10px; background:var(--lg-yellow); color:var(--lg-charcoal); padding:2px 7px; border-radius:3px; font-weight:700; }

/* ── Active TOC scroll highlighting ── */
@keyframes lg-section-in { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }

/* ── Responsive ── */
@media (max-width: 1024px) {
    .lg-inner { padding:0 32px; }
    .lg-body__grid { grid-template-columns:200px 1fr; gap:40px; }
}
@media (max-width: 768px) {
    .lg-inner { padding:0 20px; }
    .lg-hero__title { font-size:30px; }
    .lg-body__grid { grid-template-columns:1fr; }
    .lg-toc { position:static; background:var(--lg-gray); border-radius:var(--lg-radius); padding:20px; margin-bottom:32px; }
    .lg-sitemap-grid { grid-template-columns:1fr; gap:24px; }
}

/* Active TOC scroll JS hook */
