/* =====================================================
   Legal pages — Terms, Disclaimer, Privacy Policy
   Long-form reading: narrow measure, clear hierarchy,
   sticky contents rail on wide screens.
   ===================================================== */
.lg-hero {
    background: linear-gradient(135deg, #0f172a 0%, #134e4a 55%, var(--primary, #059669) 100%);
    color: #fff;
    padding: 2.75rem 0 2.25rem;
}
.lg-hero h1 { font-size: 2rem; font-weight: 800; color: #fff; margin: .35rem 0 .4rem; }
.lg-standfirst { color: rgba(255, 255, 255, .85); font-size: .95rem; margin-bottom: 0; }
/* The shared breadcrumb partial is built for light backgrounds: it carries its
   own pale pill, which reads as a grey slab on this dark hero. */
.lg-hero .breadcrumb { background: transparent; padding: 0; margin-bottom: .25rem; }
.lg-hero .breadcrumb,
.lg-hero .breadcrumb a,
.lg-hero .breadcrumb .breadcrumb-item,
.lg-hero .breadcrumb .breadcrumb-item + .breadcrumb-item::before { color: rgba(255, 255, 255, .8); }
.lg-hero .breadcrumb a:hover { color: #fff; }

.lg-body { padding: 2.75rem 0 3.5rem; background: #fff; }
.lg-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 3rem; align-items: start; }

.lg-toc {
    position: sticky;
    top: 90px;
    border-left: 3px solid var(--gray-200, #e5e7eb);
    padding-left: 1rem;
}
.lg-toc-title {
    font-size: .68rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase;
    color: var(--gray-500, #6b7280); margin-bottom: .6rem;
}
.lg-toc ol { list-style: decimal; padding-left: 1.1rem; margin: 0; }
.lg-toc li { margin-bottom: .35rem; }
.lg-toc a { font-size: .82rem; color: var(--gray-600, #4b5563); text-decoration: none; line-height: 1.4; }
.lg-toc a:hover { color: var(--primary, #059669); text-decoration: underline; }

.lg-article { max-width: 46rem; }              /* readable measure */
.lg-section { margin-bottom: 1.9rem; scroll-margin-top: 90px; }
.lg-section h2 {
    font-size: 1.08rem; font-weight: 800; color: var(--dark, #0f172a);
    margin-bottom: .55rem; line-height: 1.35;
}
.lg-num { color: var(--primary, #059669); margin-right: .3rem; }
.lg-section p { font-size: .9rem; line-height: 1.85; color: var(--gray-600, #4b5563); margin-bottom: .7rem; }
.lg-section ul { padding-left: 1.15rem; margin-bottom: .7rem; }
.lg-section li { font-size: .9rem; line-height: 1.8; color: var(--gray-600, #4b5563); margin-bottom: .3rem; }
.lg-section a { color: var(--primary, #059669); }

/* Aside inside a section — e.g. the DPDP Act framework note. */
.lg-note {
    background: var(--gray-50, #f8fafc);
    border-left: 3px solid var(--primary, #059669);
    border-radius: 0 6px 6px 0;
    padding: .8rem 1rem;
    margin-top: .8rem;
}

.lg-meta { border-top: 1px solid var(--gray-200, #e5e7eb); padding-top: 1.6rem; margin-top: 2.4rem; }
.lg-meta-list { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: .35rem 1rem; margin: .9rem 0 0; }
.lg-meta-list dt { font-size: .8rem; font-weight: 700; color: var(--gray-500, #6b7280); }
.lg-meta-list dd { font-size: .88rem; color: var(--gray-700, #374151); margin: 0; }

/* Marks a business detail that has not been filled in yet. */
.lg-todo {
    background: #fef3c7; color: #92400e;
    font-size: .78rem; font-weight: 600;
    padding: .1rem .45rem; border-radius: 4px;
}

@media (max-width: 991.98px) {
    .lg-layout { grid-template-columns: 1fr; gap: 1.75rem; }
    .lg-toc { position: static; border-left: 0; border-top: 1px solid var(--gray-200, #e5e7eb); padding: 1rem 0 0; }
}
@media (max-width: 575.98px) {
    .lg-hero h1 { font-size: 1.55rem; }
    .lg-meta-list { grid-template-columns: 1fr; gap: .1rem .5rem; }
    .lg-meta-list dd { margin-bottom: .6rem; }
}
