/* EddyBits legal styles — rules shared by every page in this group. Source of truth: edit here, then run  node _build/build.js */

*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }

@media (prefers-reduced-motion: no-preference) {
      .js .reveal { opacity: 0; transform: translateY(24px); }
    }

html { scroll-behavior:smooth; }

body { background:#0b0b14; color:rgba(255,255,255,.65); font-family:'Montserrat',sans-serif; font-size:.92rem; line-height:1.8; }

a { color:inherit; text-decoration:none; }

#eb-nav{position:sticky;top:0;z-index:300;height:72px;background:rgba(11,11,20,0.94);
      backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
      border-bottom:1px solid rgba(255,255,255,0.08);
      display:flex;align-items:center;justify-content:space-between;
      padding:0 4%;font-family:'Montserrat',sans-serif;overflow:hidden;}

.eb-logo{display:flex;align-items:center;gap:10px;text-decoration:none}

.eb-logo-wm{display:flex;flex-direction:column;line-height:1.1}

.eb-logo-brand{font-size:1.25rem;font-weight:800;color:#f0f0fa;letter-spacing:-0.02em}

.eb-logo-sub{font-size:0.72rem;font-weight:500;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:.06em}

.eb-nav-links{display:flex;align-items:center;gap:1.1rem;list-style:none;margin:0;padding:0;flex-shrink:1;min-width:0}

.eb-nav-links a{font-size:.82rem;font-weight:600;color:rgba(255,255,255,0.65);transition:color .2s}

.eb-nav-links a:hover,.eb-nav-links a.active{color:#f0f0fa}

.eb-nav-login{border:1.5px solid rgba(255,255,255,0.25);color:rgba(255,255,255,0.75)!important;
      padding:0.45rem 1rem;border-radius:8px;font-size:.82rem;font-weight:700;
      transition:border-color .2s,color .2s,background .2s;white-space:nowrap;flex-shrink:0}

.eb-nav-login:hover{border-color:rgba(255,255,255,0.5);color:#fff!important;background:rgba(255,255,255,0.07)!important}

.eb-nav-cta{background:#6DB244!important;color:#fff!important;
      padding:.55rem 1.25rem;border-radius:8px;font-size:.82rem;
      font-weight:700;white-space:nowrap;flex-shrink:0;transition:background .2s!important}

.eb-nav-cta:hover{background:#5a9738!important}

.eb-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}

.eb-hamburger span{display:block;width:22px;height:2px;background:rgba(255,255,255,.8);border-radius:2px;transition:.3s}

.eb-mobile-nav{display:none;position:fixed;inset:72px 0 0 0;background:#0f0f1a;z-index:290;
      padding:2rem 6%;flex-direction:column;gap:1.25rem;overflow-y:auto}

.eb-mobile-nav.open{display:flex}

.eb-mobile-nav a{font-size:1.1rem;font-weight:600;color:rgba(255,255,255,.75);padding:.5rem 0;
      border-bottom:1px solid rgba(255,255,255,.06)}

.eb-mobile-nav a:last-child{background:#6DB244;color:#fff!important;
      text-align:center;border-radius:10px;border:none;padding:.85rem;margin-top:.5rem}

@media(max-width:900px){.eb-nav-links{display:none}.eb-hamburger{display:flex}}

#eb-footer{background:#07070f;padding:3.5rem 6% 0;font-family:'Montserrat',sans-serif}

.eb-footer-inner{max-width:1140px;margin:0 auto}

.eb-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;
      padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.07)}

.eb-footer-brand p{font-size:.85rem;color:rgba(255,255,255,.45);line-height:1.7;max-width:280px;margin:.75rem 0 .5rem}

.eb-footer-brand small{font-size:.8rem;color:rgba(255,255,255,0.5)}

.eb-footer-col h4{font-size:.72rem;font-weight:700;text-transform:uppercase;
      letter-spacing:.1em;color:rgba(255,255,255,0.5);margin:0 0 1rem}

.eb-footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}

.eb-footer-col a{font-size:.85rem;color:rgba(255,255,255,.55);transition:color .2s}

.eb-footer-col a:hover{color:#f0f0fa}

.eb-footer-bottom{padding:1.5rem 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}

.eb-footer-copy{font-size:.78rem;color:rgba(255,255,255,0.5)}

.eb-footer-socials{display:flex;gap:.6rem}

.eb-social-btn{width:36px;height:36px;background:rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.1);border-radius:8px;
      display:flex;align-items:center;justify-content:center;
      color:rgba(255,255,255,.45);transition:background .2s,color .2s,border-color .2s}

.eb-social-btn:hover{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.2)}

.eb-footer-recognition{
      padding:1.5rem 0 1rem;
      border-bottom:1px solid rgba(255,255,255,.07);
      margin-bottom:0;
    }

.eb-recog-label{
      font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
      color:rgba(255,255,255,0.5);margin-bottom:1rem;font-family:'Montserrat',sans-serif;
    }

.eb-recog-badges{
      display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;
    }

.eb-recog-badge{
      display:flex;align-items:center;gap:8px;
      background:rgba(255,255,255,.04);
      border:1px solid rgba(255,255,255,.09);
      border-radius:8px;padding:.55rem 1rem;
      text-decoration:none;
      transition:background .2s,border-color .2s;
    }

.eb-recog-badge:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);}

.eb-recog-badge-text{display:flex;flex-direction:column;line-height:1.25;}

.eb-recog-badge-title{font-size:.72rem;font-weight:800;color:#f0f0fa;letter-spacing:.01em;}

.eb-recog-badge-sub{font-size:.62rem;font-weight:500;color:rgba(255,255,255,0.5);margin-top:1px;}

@media(max-width:900px){.eb-footer-grid{grid-template-columns:1fr 1fr}}

@media(max-width:560px){.eb-footer-grid{grid-template-columns:1fr}
      .eb-footer-bottom{flex-direction:column;align-items:flex-start}}

.eb-wa-float{position:fixed;bottom:20px;right:20px;z-index:999;
      display:flex;align-items:center;gap:7px;background:#25D366;color:white;text-decoration:none;
      padding:0 14px 0 10px;height:44px;border-radius:22px;
      box-shadow:0 4px 20px rgba(37,211,102,.4);transition:box-shadow .25s,transform .25s;
      font-size:.78rem;font-weight:700;font-family:'Montserrat',sans-serif;white-space:nowrap;}

.eb-wa-float:hover{box-shadow:0 6px 28px rgba(37,211,102,.55);transform:translateY(-2px)}

@media(max-width:480px){.eb-wa-float{padding:0;width:44px;justify-content:center;border-radius:50%}
      .eb-wa-float .eb-wa-label{display:none}}

html { scroll-padding-top: 88px; }

.policy-hero {
      background: linear-gradient(135deg, #0f0f1e 0%, #13131f 100%);
      border-bottom: 1px solid rgba(255,255,255,0.07);
      padding: 56px 4% 48px;
    }

.policy-hero-inner {
      max-width: 1140px; margin: 0 auto;
    }

.policy-hero-back {
      display:inline-flex;align-items:center;gap:6px;
      font-size:.82rem;font-weight:600;color:rgba(255,255,255,.45);
      text-decoration:none;margin-bottom:1.5rem;
      transition:color .2s;
    }

.policy-hero-back:hover { color:#0497DA; }

.policy-hero-back svg { flex-shrink:0; }

.policy-hero h1 {
      font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;color:#f0f0fa;
      letter-spacing:-0.03em;line-height:1.15;margin-bottom:.75rem;
    }

.policy-hero-sub {
      font-size:.95rem;color:rgba(255,255,255,.45);max-width:560px;
    }

.policy-hero-meta {
      display:flex;align-items:center;gap:1.5rem;margin-top:1.5rem;flex-wrap:wrap;
    }

.policy-hero-meta span {
      font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
      color:rgba(255,255,255,0.5);
    }

.policy-hero-meta strong { color:#6DB244; }

.policy-body {
      max-width: 1140px;
      margin: 0 auto;
      padding: 56px 4% 96px;
      display: grid;
      grid-template-columns: 220px 1fr;
      gap: 4rem;
      align-items: start;
    }

.policy-toc {
      position: sticky;
      top: 88px; /* nav height + buffer */
      max-height: calc(100vh - 108px);
      overflow-y: auto;
      padding-right: 1rem;
      scrollbar-width: thin;
      scrollbar-color: rgba(255,255,255,.1) transparent;
    }

.policy-toc::-webkit-scrollbar { width:4px; }

.policy-toc::-webkit-scrollbar-track { background:transparent; }

.policy-toc::-webkit-scrollbar-thumb { background:rgba(255,255,255,.1);border-radius:4px; }

.toc-label {
      font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;
      color:rgba(255,255,255,0.5);margin-bottom:1rem;
    }

.toc-list { list-style:none;margin:0;padding:0; }

.toc-list li { margin-bottom:.4rem; }

.toc-list a {
      font-size:.78rem;font-weight:500;color:rgba(255,255,255,0.5);
      text-decoration:none;display:block;padding:.3rem .6rem;
      border-left:2px solid rgba(255,255,255,.08);
      border-radius:0 4px 4px 0;
      transition:color .2s,border-color .2s,background .2s;
      line-height:1.4;
    }

.toc-list a:hover { color:#f0f0fa;border-left-color:#0497DA;background:rgba(4,151,218,.07); }

.toc-list a.active { color:#0497DA;border-left-color:#0497DA;background:rgba(4,151,218,.08); }

.policy-content { min-width:0; }

.policy-content section {
      margin-bottom:3rem;
      padding-top:.5rem;
    }

.policy-content .page-header { margin-bottom:2.5rem; display:none; }

.policy-content h2 {
      font-size:1.05rem;font-weight:800;color:#f0f0fa;
      margin-bottom:1rem;padding-bottom:.5rem;
      border-bottom:1px solid rgba(255,255,255,.07);
      line-height:1.4;
    }

.policy-content .section-number {
      color:#6DB244;margin-right:.35rem;
    }

.policy-content h3 {
      font-size:.95rem;font-weight:700;color:rgba(255,255,255,.85);
      margin:1.25rem 0 .6rem;
    }

.policy-content p {
      font-size:.9rem;color:rgba(255,255,255,.6);line-height:1.85;margin-bottom:1rem;
    }

.policy-content ul, .policy-content ol {
      margin:.5rem 0 1rem 1.25rem;padding:0;
    }

.policy-content li {
      font-size:.9rem;color:rgba(255,255,255,.6);line-height:1.85;margin-bottom:.4rem;
    }

.policy-content a { color:#0497DA;text-decoration:none; }

.policy-content a:hover { text-decoration:underline; }

.policy-content strong { color:rgba(255,255,255,.8); }

.policy-content table {
      width:100%;border-collapse:collapse;margin:1rem 0;font-size:.85rem;
    }

.policy-content th {
      background:rgba(255,255,255,.07);color:rgba(255,255,255,.8);
      font-weight:700;padding:.6rem 1rem;text-align:left;
      border-bottom:1px solid rgba(255,255,255,.1);
    }

.policy-content td {
      padding:.6rem 1rem;color:rgba(255,255,255,.55);
      border-bottom:1px solid rgba(255,255,255,.05);
    }

.policy-content tr:last-child td { border-bottom:none; }

.policy-crosslinks {
      display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
      margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.07);
    }

.policy-crosslinks span { font-size:.8rem;color:rgba(255,255,255,0.5); }

.policy-crosslinks a {
      font-size:.82rem;font-weight:600;color:#0497DA;text-decoration:none;
      padding:.3rem .75rem;border:1px solid rgba(4,151,218,.25);border-radius:6px;
      transition:background .2s,border-color .2s;
    }

.policy-crosslinks a:hover { background:rgba(4,151,218,.1);border-color:rgba(4,151,218,.5); }

.policy-crosslinks a.current { color:rgba(255,255,255,0.5);border-color:rgba(255,255,255,.1);cursor:default; pointer-events:none; }

@media(max-width:860px){
      .policy-body { grid-template-columns:1fr; gap:2rem; }
      .policy-toc { position:static;max-height:none;border:1px solid rgba(255,255,255,.07);
        border-radius:10px;padding:1.25rem;background:rgba(255,255,255,.03); }
    }

@media(max-width:560px){
      .policy-hero { padding:40px 5% 36px; }
      .policy-body { padding:40px 5% 64px; }
    }
