/* Relavendo — Legal pages shared styles (privacy / terms / accessibility) */
/* Metrics-matched sans-serif fallbacks (Arial-based) so the webfont swap causes no layout
   shift and the temporary font is never serif. Computed from the real Rubik/Assistant woff2. */
@font-face{font-family:'Rubik Fallback';font-weight:100 500;src:local('Arial'),local('Helvetica');size-adjust:115.8%;ascent-override:80.7%;descent-override:21.6%;line-gap-override:0%;}
@font-face{font-family:'Rubik Fallback';font-weight:501 900;src:local('Arial Bold'),local('Arial-BoldMT'),local('Helvetica Bold');size-adjust:106.9%;ascent-override:87.5%;descent-override:23.4%;line-gap-override:0%;}
@font-face{font-family:'Assistant Fallback';font-weight:100 500;src:local('Arial'),local('Helvetica');size-adjust:101.4%;ascent-override:100.7%;descent-override:28.3%;line-gap-override:0%;}
@font-face{font-family:'Assistant Fallback';font-weight:501 900;src:local('Arial Bold'),local('Arial-BoldMT'),local('Helvetica Bold');size-adjust:93.5%;ascent-override:109.1%;descent-override:30.7%;line-gap-override:0%;}
:root{
  --navy-950:#071B33; --navy-900:#0A2A4E; --navy-800:#0C3C6C;
  --cyan:#22E4E4; --teal:#0FA3A3; --aqua:#1BE0C4; --azure:#1499D6;
  --teal-ink:#0B7C7C; /* a11y: darker teal for TEXT/links/badges — >=4.5:1 on white & on #E7F7F7 (brand --teal stays for glow/gradients) */
  --paper:#F4F7FA; --ink:#0A2A4E; --muted:#5B7089; --muted-2:#63748A; /* --muted-2 darkened from #7C8FA6 (3.31:1) to ~4.6:1 */
  --hair:#D4DEE8; --hair-soft:#E8EEF4; --card:#ffffff;
  --shadow-sm:0 2px 10px -6px rgba(10,42,78,.28);
  --shadow-md:0 18px 44px -26px rgba(10,42,78,.42);
  --glow-cyan:0 0 0 1px rgba(34,228,228,.55),0 14px 44px -14px rgba(34,228,228,.4);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Assistant','Assistant Fallback',system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.75;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:rgba(34,228,228,.28);color:var(--navy-950)}
a{color:var(--teal-ink);font-weight:600;text-decoration:none}
a:hover{text-decoration:underline}
/* a11y: skip-to-content link — off-screen until keyboard-focused */
.rlv-skip{position:fixed;top:10px;inset-inline-start:10px;z-index:2147483647;background:var(--navy-900);color:#fff;padding:11px 18px;border-radius:10px;font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:15px;text-decoration:none;transform:translateY(-160%);transition:transform .15s var(--ease)}
.rlv-skip:focus{transform:translateY(0);outline:3px solid var(--cyan);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.rlv-skip{transition:none}}
[tabindex="-1"]:focus{outline:none}
.ltr{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}

/* reading progress */
.progress{position:fixed;top:0;inset-inline-start:0;height:3px;width:0;
  background:linear-gradient(90deg,var(--cyan),var(--aqua));z-index:80;transition:width .12s linear;box-shadow:0 0 12px rgba(34,228,228,.55)}

/* top nav */
.nav{position:sticky;top:0;z-index:70;background:rgba(7,27,51,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.09)}
.nav-in{max-width:1140px;margin:0 auto;padding:13px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo{display:inline-flex;align-items:center;gap:10px;font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:800;font-size:20px;color:#fff}
.logo:hover{text-decoration:none}
.logo img{width:28px;height:28px;object-fit:contain;display:block}
.nav-links{display:flex;gap:4px;align-items:center}
.nav-links a{font-weight:600;font-size:14px;color:#B7CBE0;padding:8px 12px;border-radius:8px;transition:.18s var(--ease)}
.nav-links a:hover{background:rgba(255,255,255,.08);color:#fff;text-decoration:none}
.nav-links a.current{color:#fff;background:rgba(34,228,228,.14)}
.nav-links a.home{color:var(--aqua);display:inline-flex;align-items:center;gap:6px}
.nav-links a.home svg{width:16px;height:16px}
@media(max-width:640px){.nav-links a:not(.home){display:none}}

/* hero */
.hero{position:relative;overflow:hidden;color:#fff;
  background:radial-gradient(120% 130% at 88% -20%,rgba(34,228,228,.16),transparent 52%),linear-gradient(155deg,var(--navy-900),var(--navy-950))}
.hero::after{content:"";position:absolute;inset-inline-end:-80px;top:-80px;width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(27,224,196,.18),transparent 70%);pointer-events:none}
.hero-in{position:relative;max-width:1140px;margin:0 auto;padding:56px 24px 92px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--aqua);font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:600;font-size:13px;letter-spacing:.6px;margin-bottom:14px}
.eyebrow svg{width:16px;height:16px}
.hero h1{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:800;font-size:clamp(30px,5vw,46px);letter-spacing:-1px;line-height:1.06;margin-bottom:16px}
.hero .lead{color:#C4D6EA;font-size:clamp(16px,2.2vw,18.5px);max-width:56ch;line-height:1.62}
.meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.chip{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:7px 14px;font-size:13px;color:#D6E5F3;font-weight:500}
.chip svg{width:15px;height:15px;color:var(--aqua);flex-shrink:0}
.chip .ltr{color:#fff;font-weight:600}

/* layout */
.layout{max-width:1140px;margin:0 auto;padding:0 24px 96px;display:grid;grid-template-columns:1fr 258px;gap:44px;align-items:start}
@media(max-width:960px){.layout{grid-template-columns:1fr;gap:0;padding-bottom:72px}}

/* table of contents — desktop sidebar */
.toc{position:sticky;top:78px;margin-top:-40px}
.toc-card{background:var(--card);border:1px solid var(--hair);border-radius:14px;box-shadow:var(--shadow-md);padding:16px 14px;max-height:calc(100vh - 104px);overflow:auto;overscroll-behavior:contain}
.toc-title{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:12px;letter-spacing:.8px;color:var(--muted-2);text-transform:uppercase;padding:2px 10px 10px;margin-bottom:2px;border-bottom:1px solid var(--hair-soft)}
.toc nav{display:flex;flex-direction:column;gap:1px;padding-top:8px}
.toc a{display:flex;gap:9px;align-items:baseline;font-size:13.5px;font-weight:500;color:var(--muted);padding:8px 10px;border-radius:8px;border-inline-start:2px solid transparent;line-height:1.35;transition:.15s var(--ease)}
.toc a:hover{color:var(--navy-900);background:#EFF4F9;text-decoration:none}
.toc a .n{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:11px;color:var(--muted-2);font-variant-numeric:tabular-nums;min-width:14px}
.toc a.active{color:var(--teal-ink);background:#E7F7F7;border-inline-start-color:var(--cyan);font-weight:600}
.toc a.active .n{color:var(--teal-ink)}
@media(max-width:960px){.toc{display:none}}

/* mobile TOC */
.toc-m{display:none}
@media(max-width:960px){
  .toc-m{display:block;position:sticky;top:56px;z-index:40;margin:-30px 0 26px}
  .toc-m details{background:var(--card);border:1px solid var(--hair);border-radius:12px;box-shadow:var(--shadow-md);overflow:hidden}
  .toc-m summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:14px;color:var(--navy-900)}
  .toc-m summary::-webkit-details-marker{display:none}
  .toc-m summary .chev{transition:transform .2s var(--ease);color:var(--teal-ink)}
  .toc-m details[open] summary .chev{transform:rotate(180deg)}
  .toc-m nav{display:flex;flex-direction:column;padding:4px 8px 10px;border-top:1px solid var(--hair-soft)}
  .toc-m nav a{font-size:14px;font-weight:500;color:var(--muted);padding:10px 10px;border-radius:8px;display:flex;gap:9px}
  .toc-m nav a:hover{background:#EFF4F9;text-decoration:none}
  .toc-m nav a .n{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:12px;color:var(--muted-2);min-width:16px}
}

/* content document */
.content{margin-top:-40px;min-width:0}
@media(max-width:960px){.content{margin-top:-30px}
  /* clear both the sticky nav (~54px) and the sticky mobile TOC bar (~50px) when jumping to a section */
  .sec{scroll-margin-top:118px}
  .sec:first-of-type{scroll-margin-top:118px}
}
.doc{background:var(--card);border:1px solid var(--hair);border-radius:18px;box-shadow:var(--shadow-md);padding:clamp(22px,4vw,48px)}
.intro{font-size:17px;color:var(--navy-800);line-height:1.7}
.intro strong{color:var(--navy-900)}

.sec{scroll-margin-top:78px;padding-top:30px;margin-top:30px;border-top:1px solid var(--hair-soft)}
.sec:first-of-type{border-top:none;margin-top:24px;padding-top:0}
.sec > h2{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:clamp(20px,2.6vw,24px);color:var(--navy-900);line-height:1.25;margin-bottom:14px;display:flex;gap:12px;align-items:baseline;letter-spacing:-.3px}
.sec > h2 .num{flex-shrink:0;font-size:13px;font-weight:800;color:var(--teal-ink);font-variant-numeric:tabular-nums;background:#E7F7F7;border-radius:7px;padding:3px 9px;line-height:1.3;transform:translateY(-2px)}
.sec h3{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:600;font-size:16.5px;color:var(--navy-800);margin:20px 0 8px}
.sec p{margin-bottom:13px;color:var(--ink)}
.sec p:last-child{margin-bottom:0}
.sec ul,.sec ol{margin:4px 0 15px;padding-inline-start:4px;list-style:none}
.sec li{position:relative;padding-inline-start:24px;margin-bottom:10px;line-height:1.65}
.sec ul li::before{content:"";position:absolute;inset-inline-start:6px;top:11px;width:6px;height:6px;border-radius:2px;background:linear-gradient(135deg,var(--cyan),var(--teal))}
.sec ol{counter-reset:oli}
.sec ol li{counter-increment:oli}
.sec ol li::before{content:counter(oli);position:absolute;inset-inline-start:0;top:1px;width:19px;height:19px;border-radius:6px;background:#E7F7F7;color:var(--teal-ink);font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}
.sec li strong{color:var(--navy-900)}

/* callouts */
.note,.contact-box{border-radius:12px;padding:16px 18px;margin:20px 0}
.note{background:#EAF3FA;border:1px solid #CFE3F2;border-inline-start:4px solid var(--azure)}
.note.cyan{background:linear-gradient(135deg,#E9FCFC,#EAF3FA);border-color:rgba(34,228,228,.4);border-inline-start-color:var(--cyan)}
.note p{margin:0;color:var(--navy-800);font-size:15px}
.contact-box{background:var(--navy-950);color:#fff;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.contact-box::after{content:"";position:absolute;inset-inline-end:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(34,228,228,.22),transparent 70%)}
.contact-box h3{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:700;font-size:18px;color:#fff;margin:0 0 4px}
.contact-box p{color:#C4D6EA;margin:0 0 12px;font-size:15px;position:relative}
.contact-box .rows{position:relative;display:flex;flex-direction:column;gap:8px}
.contact-box .row{display:flex;gap:10px;align-items:center;font-size:15px;color:#E4EEF7}
.contact-box .row svg{width:18px;height:18px;color:var(--aqua);flex-shrink:0}
.contact-box a{color:#fff;font-weight:600}

/* definitions table look */
.defs{display:flex;flex-direction:column;gap:0;margin:6px 0 15px;border:1px solid var(--hair-soft);border-radius:12px;overflow:hidden}
.defs .drow{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:13px 16px;border-top:1px solid var(--hair-soft)}
.defs .drow:first-child{border-top:none}
.defs .drow:nth-child(odd){background:#FaFcFe}
.defs .dt{font-family:'Rubik','Rubik Fallback',sans-serif;font-weight:600;color:var(--navy-900);font-size:15px}
.defs .dd{color:var(--ink);font-size:15px}
@media(max-width:520px){.defs .drow{grid-template-columns:1fr;gap:4px}}

/* footer */
.foot{background:var(--navy-950);color:#95AECB}
.foot-in{max-width:1140px;margin:0 auto;padding:40px 24px 44px;display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;justify-content:space-between}
.foot .logo{font-size:18px}
.foot-links{display:flex;flex-wrap:wrap;gap:6px 4px}
.foot-links a{color:#95AECB;font-weight:600;font-size:14px;padding:6px 10px;border-radius:8px}
.foot-links a:hover{color:#fff;background:rgba(255,255,255,.07);text-decoration:none}
.foot-meta{width:100%;border-top:1px solid rgba(255,255,255,.08);padding-top:18px;font-size:13px;color:#6C86A6;line-height:1.7}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}
