:root {
      --bg: hsl(0,0%,100%); --fg: hsl(220,20%,10%);
      --primary: hsl(197,78%,61%); --muted-fg: hsl(220,10%,45%);
      --accent: hsl(197,78%,95%); --accent-fg: hsl(197,78%,30%);
      --border: hsl(220,13%,91%); --muted: hsl(210,20%,97%);
    }
    *, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
    html { scroll-behavior:smooth; }
    body { font-family:"Lato",sans-serif; background:var(--bg); color:var(--fg); -webkit-font-smoothing:antialiased; }
    a { text-decoration:none; color:var(--primary); }
    a:hover { text-decoration:underline; }

    /* NAV */
    nav { background:rgba(255,255,255,.96); backdrop-filter:blur(20px); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:50; }
    .nav-inner { max-width:1200px; margin:0 auto; padding:0 2rem; height:72px; display:flex; align-items:center; justify-content:space-between; }
    .nav-logo img { height:36px; width:auto; }
    .nav-home { font-size:.8rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; color:var(--primary); display:inline-flex; align-items:center; gap:.5rem; padding:.5rem 1.1rem; border:1px solid var(--primary); border-radius:8px; transition:background .2s,color .2s; }
    .nav-home:hover { background:var(--primary); color:white; text-decoration:none; }

    /* HERO BAND */
    .page-hero { background:hsl(220,25%,8%); padding:5rem 2rem 4rem; position:relative; overflow:hidden; }
    .page-hero-grid { position:absolute; inset:0; opacity:.03; background-image:linear-gradient(hsl(197,78%,61%) 1px,transparent 1px),linear-gradient(90deg,hsl(197,78%,61%) 1px,transparent 1px); background-size:60px 60px; }
    .page-hero-orb { position:absolute; top:-4rem; right:-4rem; width:20rem; height:20rem; border-radius:50%; background:hsla(197,78%,61%,.07); filter:blur(48px); }
    .page-hero-inner { position:relative; z-index:10; max-width:860px; margin:0 auto; }
    .page-tag { font-size:.75rem; font-weight:900; color:var(--primary); letter-spacing:.18em; text-transform:uppercase; margin-bottom:.75rem; }
    .page-title { font-size:clamp(2rem,5vw,3.25rem); font-weight:900; letter-spacing:-.03em; color:white; margin-bottom:1rem; }
    .page-meta { font-size:.875rem; color:rgba(255,255,255,.45); }

    /* CONTENT */
    .content-wrap { max-width:860px; margin:0 auto; padding:4rem 2rem 6rem; }
    .toc { background:var(--muted); border:1px solid var(--border); border-radius:16px; padding:1.75rem 2rem; margin-bottom:3rem; }
    .toc h3 { font-size:.75rem; font-weight:900; color:var(--primary); letter-spacing:.15em; text-transform:uppercase; margin-bottom:1rem; }
    .toc ol { padding-left:1.25rem; display:flex; flex-direction:column; gap:.5rem; }
    .toc li { font-size:.875rem; font-weight:700; color:var(--muted-fg); }
    .toc a { color:var(--fg); font-weight:700; }
    .toc a:hover { color:var(--primary); }
    .policy-section { margin-bottom:3rem; scroll-margin-top:90px; }
    .section-num { font-size:.7rem; font-weight:900; color:var(--primary); letter-spacing:.15em; text-transform:uppercase; margin-bottom:.5rem; }
    .policy-section h2 { font-size:1.5rem; font-weight:900; margin-bottom:1.25rem; padding-bottom:.75rem; border-bottom:2px solid var(--border); }
    .policy-section p { font-size:.95rem; color:var(--muted-fg); line-height:1.8; margin-bottom:1rem; }
    .policy-section p:last-child { margin-bottom:0; }
    .policy-section ul { padding-left:1.5rem; display:flex; flex-direction:column; gap:.6rem; margin-bottom:1rem; }
    .policy-section ul li { font-size:.95rem; color:var(--muted-fg); line-height:1.7; }
    .highlight-box { background:var(--accent); border:1px solid hsla(197,78%,61%,.2); border-radius:12px; padding:1.25rem 1.5rem; margin:1.5rem 0; }
    .highlight-box p { color:var(--accent-fg); font-weight:700; margin:0; }
    .contact-box { background:hsl(220,25%,8%); border-radius:16px; padding:2.5rem; text-align:center; margin-top:4rem; }
    .contact-box h3 { font-size:1.25rem; font-weight:900; color:white; margin-bottom:.75rem; }
    .contact-box p { font-size:.9rem; color:rgba(255,255,255,.55); margin-bottom:1.5rem; }
    .btn-primary { display:inline-flex; align-items:center; gap:.6rem; padding:.85rem 1.75rem; background:var(--primary); color:white; font-size:.9rem; font-weight:900; border-radius:10px; transition:background .2s; }
    .btn-primary:hover { background:hsl(197,78%,50%); text-decoration:none; }

    /* FOOTER */
    footer { background:var(--bg); border-top:1px solid var(--border); padding:1.5rem 2rem; text-align:center; }
    footer p { font-size:.75rem; color:var(--muted-fg); }

    @media(max-width:600px) { .content-wrap { padding:2.5rem 1.25rem 4rem; } .toc { padding:1.25rem; } }