/* ProfitMaps AI — legal pages
   Deliberately plain: one column of readable text, brand header, nothing else.
   Same structure as the Local Media Empire legal pages, in the ProfitMaps lime-on-map-black theme. */
:root {
    --ink: #0C150F;
    --body: #3B4840;
    --muted: #66746A;
    --line: #E1E8D9;
    --link: #2C6A0E;
    --lime: #C6F689;
    --night: #070B08;
    --paper: #FFFFFF;
    --shell: #F3F6EE;
    --display: "Archivo", "Geist", system-ui, sans-serif;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
    margin: 0;
    background: var(--shell);
    color: var(--body);
    font-family: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;
    font-size: 16.5px;
    line-height: 1.75;
    -webkit-font-smoothing: antialiased;
}

/* header: map-black band with a faint street grid and a lime hairline */
.lg-top {
    padding: 22px 0;
    background:
        linear-gradient(rgba(198, 246, 137, .05) 1px, transparent 1px) 0 0 / 44px 44px,
        linear-gradient(90deg, rgba(198, 246, 137, .05) 1px, transparent 1px) 0 0 / 44px 44px,
        var(--night);
    box-shadow: inset 0 -2px 0 var(--lime);
}
.lg-top .wrap { display: flex; align-items: center; justify-content: center; }
.lg-top a { display: block; }
.lg-logo { display: block; width: 210px; height: auto; }

/* page body */
.wrap { width: 100%; max-width: 860px; margin: 0 auto; padding: 0 20px; }
main { padding: 46px 0 64px; }
.lg-card { padding: 44px 48px 48px; border-radius: 18px; background: var(--paper); box-shadow: 0 18px 44px -32px rgba(7, 11, 8, .45), inset 0 0 0 1px var(--line); }

h1 { margin: 0; color: var(--ink); font-family: var(--display); font-size: clamp(30px, 4.8vw, 44px); font-weight: 900; font-stretch: 78%; line-height: 1.05; letter-spacing: -.01em; text-transform: uppercase; }

/* hairline with a short lime lead-in */
.lg-rule { position: relative; margin: 22px 0 30px; height: 1px; border: 0; background: var(--line); overflow: visible; }
.lg-rule::before { content: ""; position: absolute; left: 0; top: -1.5px; width: 56px; height: 4px; border-radius: 4px; background: #A6DC5F; }

h2 { margin: 34px 0 10px; color: var(--ink); font-family: var(--display); font-size: clamp(19px, 2.4vw, 23px); font-weight: 800; letter-spacing: -.015em; line-height: 1.3; }
p { margin: 0 0 14px; }
ul { margin: 0 0 16px; padding-left: 22px; }
li { margin-bottom: 8px; }
li::marker { color: #7FAF3F; }
strong, b { color: var(--ink); font-weight: 700; }
a { color: var(--link); text-decoration: underline; text-decoration-color: rgba(44, 106, 14, .4); text-underline-offset: 2px; }
a:hover { color: #1F4F08; text-decoration-color: currentColor; }

.lg-note { margin: 26px 0 0; padding: 16px 18px; border-radius: 12px; background: #F4F9EC; color: var(--ink); font-size: 15.5px; box-shadow: inset 3px 0 0 #9BD35A, inset 0 0 0 1px var(--line); }

/* footer */
.lg-foot { padding: 30px 0 46px; text-align: center; }
.lg-links { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 0; margin: 0 0 14px; }
.lg-links a { position: relative; padding: 0 16px; color: var(--ink); font-size: 14.5px; font-weight: 600; text-decoration: none; }
.lg-links a:hover { color: var(--link); text-decoration: underline; }
.lg-links a + a::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 13px; background: #CFD8C6; transform: translateY(-50%); }
.lg-links a[aria-current="page"] { color: var(--muted); }
.lg-copy { margin: 0; color: var(--muted); font-size: 13.5px; }

@media (max-width: 767.98px) {
    body { font-size: 16px; }
    .lg-card { padding: 28px 20px 32px; border-radius: 14px; }
    main { padding: 30px 0 40px; }
    .lg-logo { width: 176px; }
    .lg-links { gap: 0 4px; }
    .lg-links a { padding: 10px 11px; font-size: 13.5px; }
    .lg-links a + a::before { display: none; }
}
