/* Anovish — shared styles for the legal pages.
   Tokens, base, header, footer and motion are copied verbatim from index.php
   so the two stay visually identical. Edit tokens in one place: :root below. */

/* Self-hosted fonts — no CDN dependency; load instantly, identical on every page */
@font-face{font-family:"Anek Devanagari";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/anek-devanagari-700-latin.woff2) format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin.woff2) format("woff2")}
/* ==========================================================================
   ANOVISH — DESIGN TOKENS
   ========================================================================== */
:root{
  /* Brand: deep navy ink + confident blue + amber used sparingly */
  --navy-900:#071129;
  --navy-800:#0B1C3D;
  --navy-700:#122C5B;
  --primary:#3E6BFF;
  --primary-600:#2F57E6;
  --primary-400:#5B85FF;
  --primary-050:#EEF1FF;
  --violet:#7C5CFC;
  --violet-600:#6A45F0;
  --grad-cta:linear-gradient(120deg,#4f7bff 0%,#7c5cfc 100%);
  --grad-cta-hover:linear-gradient(120deg,#3f6bff 0%,#6a45f0 100%);
  --accent:#F5A524;
  --accent-050:#FFF6E6;
  --success:#7CC242;
  --success-050:#EEF8E6;

  /* Surfaces & text */
  --bg:#FFFFFF;
  --surface:#F5F8FD;
  --surface-2:#EAF0FA;
  --text:#0E1F3D;
  --muted:#54678A;
  --border:#E1E8F5;
  --border-strong:#CBD8ED;
  --on-dark:#FFFFFF;
  --on-dark-muted:#A9BDDF;

  /* Radii */
  --r-xs:8px; --r-sm:12px; --r-md:16px; --r-lg:22px; --r-xl:30px; --r-pill:999px;

  /* Elevation — soft, never heavy */
  --sh-xs:0 1px 2px rgba(11,28,61,.06);
  --sh-sm:0 2px 8px rgba(11,28,61,.06), 0 1px 2px rgba(11,28,61,.04);
  --sh-md:0 8px 24px rgba(11,28,61,.08), 0 2px 6px rgba(11,28,61,.04);
  --sh-lg:0 24px 60px rgba(11,28,61,.12), 0 6px 16px rgba(11,28,61,.06);
  --sh-glow:0 18px 46px rgba(124,92,252,.28);

  /* Spacing scale */
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:20px; --s-6:24px;
  --s-7:32px; --s-8:40px; --s-9:48px; --s-10:64px; --s-11:80px; --s-12:104px;

  /* Layout */
  --container:1200px;
  --gutter:clamp(1rem, 4vw, 2.5rem);
  --header-h:72px;
  --section-y:clamp(3.5rem, 8vw, 7rem);

  /* Type */
  --font:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
  --fs-display:clamp(2.05rem, 4.2vw, 3.25rem);
  --fs-h2:clamp(1.65rem, 3.4vw, 2.7rem);
  --fs-h3:clamp(1.15rem, 1.6vw, 1.35rem);
  --fs-lead:clamp(1.02rem, 1.5vw, 1.2rem);
  --fs-body:1rem;
  --fs-sm:.9375rem;
  --fs-xs:.8125rem;

  --ease:cubic-bezier(.22,.61,.36,1);
  --dur:240ms;
}

/* ==========================================================================
   BASE
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html:focus-within{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font);
  font-size:var(--fs-body);
  line-height:1.65;
  color:var(--text);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img,svg{max-width:100%;display:block}
img{height:auto}
h1,h2,h3,h4{margin:0;line-height:1.15;letter-spacing:-.022em;font-weight:800;color:var(--navy-800)}
h1{font-size:var(--fs-display);letter-spacing:-.032em}
h2{font-size:var(--fs-h2);letter-spacing:-.028em}
h3{font-size:var(--fs-h3);letter-spacing:-.015em;font-weight:700}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
a{color:var(--primary);text-decoration:none}
a:hover{color:var(--primary-600)}
button{font:inherit;color:inherit;cursor:pointer}
strong{font-weight:700}
::selection{background:var(--primary);color:#fff}

:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{
  outline:3px solid var(--primary-400);
  outline-offset:2px;
  border-radius:6px;
}

.skip-link{
  position:absolute;left:var(--s-4);top:-100px;z-index:200;
  background:var(--navy-800);color:#fff;padding:.75rem 1.25rem;border-radius:var(--r-xs);
  font-weight:600;transition:top var(--dur) var(--ease);
}
.skip-link:focus{top:var(--s-4);color:#fff}
.visually-hidden{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

/* ==========================================================================
   LAYOUT PRIMITIVES
   ========================================================================== */
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
@media (min-width:1600px){ :root{--container:1320px} }

.section{padding-block:var(--section-y);position:relative}
.section--surface{background:var(--surface)}
.section--dark{background:var(--navy-800);color:var(--on-dark-muted)}
.section--dark h2,.section--dark h3{color:#fff}

.section-head{max-width:44rem;margin-inline:auto;text-align:center;margin-bottom:clamp(2rem,4vw,3.25rem)}
.section-head--left{margin-inline:0;text-align:left}
.section-head p{color:var(--muted);font-size:var(--fs-lead);margin-top:var(--s-4)}
.section--dark .section-head p{color:var(--on-dark-muted)}

/* Eyebrow — uppercase mono label, the page's utility face */
.eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--font-mono);font-size:.6875rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--violet-600);
  background:#fff;border:1px solid var(--border-strong);
  padding:.42rem .8rem;border-radius:var(--r-pill);box-shadow:var(--sh-xs);
  margin-bottom:var(--s-4);
}
.eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--success);flex:none}
.section-head:not(.section-head--left) .eyebrow{justify-content:center}
.section--dark .eyebrow{color:var(--violet-600)}

.grid{display:grid;gap:clamp(1rem,2vw,1.5rem)}

/* ==========================================================================
   BUTTONS
   ========================================================================== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  min-height:48px;padding:.8rem 1.5rem;border-radius:var(--r-pill);
  font-weight:700;font-size:var(--fs-sm);letter-spacing:-.01em;
  border:1px solid transparent;text-align:center;
  transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease),
             background-color var(--dur) var(--ease), color var(--dur) var(--ease),
             border-color var(--dur) var(--ease);
}
.btn svg{width:18px;height:18px;flex:none}
.btn--primary{background:var(--grad-cta);color:#fff;box-shadow:var(--sh-glow)}
.btn--primary:hover{background:var(--grad-cta-hover);color:#fff;transform:translateY(-2px);box-shadow:0 22px 52px rgba(124,92,252,.34)}
.btn--ghost{background:#fff;color:var(--navy-800);border-color:var(--border-strong);box-shadow:var(--sh-xs)}
.btn--ghost:hover{color:var(--navy-800);border-color:var(--primary-400);transform:translateY(-2px);box-shadow:var(--sh-sm)}
.btn--onDark{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.22)}
.btn--onDark:hover{background:rgba(255,255,255,.16);color:#fff;transform:translateY(-2px)}
.btn--light{background:#fff;color:var(--navy-800);box-shadow:var(--sh-md)}
.btn--light:hover{color:var(--primary-600);transform:translateY(-2px)}
.btn--sm{min-height:42px;padding:.5rem 1.15rem;font-size:var(--fs-xs)}
.btn--block{width:100%}
.btn:active{transform:translateY(0)}

.btn-row{display:flex;flex-wrap:wrap;gap:var(--s-3)}

/* ==========================================================================
   HEADER + NAV
   ========================================================================== */
.header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.82);
  backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid transparent;
  transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), background-color var(--dur) var(--ease);
}
.header.is-scrolled{border-bottom-color:var(--border);box-shadow:0 4px 20px rgba(11,28,61,.06);background:rgba(255,255,255,.94)}
.header__inner{display:flex;align-items:center;gap:var(--s-6);min-height:var(--header-h)}

.brand{display:inline-flex;align-items:center;gap:.6rem;flex:none;color:var(--navy-800)}
.brand:hover{color:var(--navy-800)}
.brand__mark{width:36px;height:36px;flex:none;display:block}
.brand__mark--full{width:auto;height:40px}
.header .brand__mark--full{height:34px}
.brand__name{font-family:"Anek Devanagari",system-ui,sans-serif;font-weight:700;font-size:1.32rem;line-height:1;letter-spacing:.005em;color:#022B5B;transform:translateY(2px)}
.brand__name span{color:#7CC242}

.nav{display:none;margin-inline:auto}
.nav__list{display:flex;align-items:center;gap:clamp(.25rem,1.4vw,1.1rem)}
.nav__link{
  display:block;padding:.55rem .6rem;border-radius:var(--r-xs);
  color:var(--muted);font-size:var(--fs-sm);font-weight:600;
  transition:color var(--dur) var(--ease), background-color var(--dur) var(--ease);
}
.nav__link:hover,.nav__link.is-active{color:var(--navy-800);background:var(--surface-2)}

.header__actions{display:none;align-items:center;gap:var(--s-3);flex:none}
.header__login{color:var(--navy-800);font-weight:700;font-size:var(--fs-sm);padding:.55rem .5rem}
.header__login:hover{color:var(--primary)}

.burger{
  display:inline-flex;align-items:center;justify-content:center;
  width:46px;height:46px;margin-left:auto;flex:none;
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);
}
.burger span{position:relative;display:block;width:19px;height:2px;border-radius:2px;background:var(--navy-800);transition:transform var(--dur) var(--ease), opacity 120ms linear}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:19px;height:2px;border-radius:2px;background:var(--navy-800);transition:transform var(--dur) var(--ease)}
.burger span::before{top:-6px}
.burger span::after{top:6px}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}

/* Mobile drawer */
.drawer{
  position:fixed;inset:var(--header-h) 0 0;z-index:99;
  background:#fff;padding:var(--s-6) 0 max(var(--s-8), env(safe-area-inset-bottom));
  overflow-y:auto;overscroll-behavior:contain;
  transform:translateY(-8px);opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity 200ms var(--ease), transform 200ms var(--ease), visibility 200ms;
}
.drawer.is-open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}
.drawer__list{display:grid;gap:var(--s-1);margin-bottom:var(--s-6)}
.drawer__link{
  display:flex;align-items:center;justify-content:space-between;
  padding:.95rem .25rem;border-bottom:1px solid var(--border);
  color:var(--navy-800);font-weight:700;font-size:1.05rem;
}
.drawer__link:hover{color:var(--primary)}
.drawer__link svg{width:16px;height:16px;color:var(--border-strong)}
.drawer__actions{display:grid;gap:var(--s-3)}
body.is-locked{overflow:hidden}

/* The full nav (7 links + login + CTA) only fits from ~1080px. Below that the
   hamburger is the honest answer rather than a cramped, overflowing bar. */
@media (min-width:1080px){
  .nav{display:block}
  .header__actions{display:flex}
  .burger{display:none}
  .drawer{display:none}
}
@media (min-width:1080px) and (max-width:1279px){
  .header__inner{gap:var(--s-3)}
  .nav__list{gap:.1rem}
  .nav__link{padding:.5rem .45rem;font-size:.875rem}
  .header__login{padding:.5rem .35rem}
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.footer{background:var(--navy-900);color:var(--on-dark-muted);padding-block:clamp(3rem,6vw,4.5rem) var(--s-7)}
.footer__top{display:grid;gap:clamp(2rem,4vw,3rem)}
@media (min-width:768px){.footer__top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.footer__top{grid-template-columns:1.5fr repeat(4,minmax(0,1fr))}}
.footer .brand{color:#fff}
.social-icons{display:flex;align-items:center;gap:10px;margin-top:18px;flex-wrap:wrap}
.social-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background-color:#0b1935;border:1px solid #2674d9;border-radius:50%;text-decoration:none;transition:color .3s,background-color .3s,border-color .3s,transform .3s,box-shadow .3s}
.social-icon svg{width:18px;height:18px;fill:currentColor;display:block}
.social-icon:hover{color:#fff;transform:translateY(-3px);box-shadow:0 6px 16px rgba(37,116,217,.35)}
.social-icon.facebook:hover{background-color:#1877f2;border-color:#1877f2}
.social-icon.instagram:hover{background:linear-gradient(135deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5);border-color:#d62976}
.social-icon.twitter-x:hover{background-color:#000;border-color:#fff}
.social-icon.youtube:hover{background-color:#ff0000;border-color:#ff0000}
.social-icon.whatsapp:hover{background-color:#25d366;border-color:#25d366}
@media (max-width:576px){.social-icons{gap:8px}.social-icon{width:35px;height:35px}.social-icon svg{width:16px;height:16px}}
.fab-stack{position:fixed;right:18px;bottom:20px;z-index:900;display:flex;flex-direction:column;gap:12px}
.fab{width:52px;height:52px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.22);transition:transform .25s ease,box-shadow .25s ease}
.fab svg{width:26px;height:26px;fill:currentColor}
.fab:hover{transform:scale(1.08);box-shadow:0 10px 24px rgba(0,0,0,.28)}
.fab--call{background:#2aa65a}
.fab--wa{background:#25d366}
@media (max-width:576px){.fab-stack{right:14px;bottom:16px}.fab{width:48px;height:48px}.fab svg{width:24px;height:24px}}
.footer .brand:hover{color:#fff}
.footer__about p{font-size:var(--fs-sm);color:var(--on-dark-muted);margin-top:var(--s-4);max-width:32ch}
.footer__contact{display:grid;gap:.5rem;margin-top:var(--s-5)}
.footer__contact a{display:inline-flex;align-items:center;gap:.5rem;color:#fff;font-size:var(--fs-sm);font-weight:600}
.footer__contact a:hover{color:var(--primary-400)}
.footer__contact svg{width:16px;height:16px;color:var(--primary-400);flex:none}
.footer__col h3{font-size:var(--fs-xs);color:#fff;text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-mono);font-weight:600;margin-bottom:var(--s-4)}
.footer__col li + li{margin-top:.55rem}
.footer__col a{font-size:var(--fs-sm);color:var(--on-dark-muted)}
.footer__col a:hover{color:#fff}
/* Locations holds ~30 links — render it as a full-width multi-column band at the
   end of the footer instead of one very tall single column. */
.footer__col[aria-labelledby="f-locations"]{order:10;grid-column:1 / -1;padding-top:clamp(1.5rem,3vw,2.25rem);border-top:1px solid rgba(255,255,255,.1)}
.footer__col[aria-labelledby="f-locations"] > ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:.55rem .75rem}
.footer__col[aria-labelledby="f-locations"] li + li{margin-top:0}
.footer__addresses{
  display:grid;gap:var(--s-5);margin-top:clamp(2rem,4vw,3rem);padding-top:var(--s-7);
  border-top:1px solid rgba(255,255,255,.1);
}
@media (min-width:768px){.footer__addresses{grid-template-columns:repeat(2,minmax(0,1fr))}}
.footer__addr b{display:block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--primary-400);margin-bottom:.35rem}
.footer__addr address{font-style:normal;font-size:var(--fs-sm);color:var(--on-dark-muted);line-height:1.6}
.footer__bottom{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-4);
  margin-top:var(--s-7);padding-top:var(--s-6);border-top:1px solid rgba(255,255,255,.1);
  font-size:var(--fs-xs);
}
.footer__legal{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.footer__legal a{color:var(--on-dark-muted)}
.footer__legal a:hover{color:#fff}

/* ==========================================================================
   MOTION
   ========================================================================== */
.reveal{opacity:0;transform:translateY(16px);transition:opacity 500ms var(--ease), transform 500ms var(--ease)}
.reveal.is-in{opacity:1;transform:none}
.reveal[data-delay="1"]{transition-delay:70ms}
.reveal[data-delay="2"]{transition-delay:140ms}
.reveal[data-delay="3"]{transition-delay:210ms}

@media (prefers-reduced-motion:reduce){
  html:focus-within{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important;
  }
  .reveal{opacity:1;transform:none}
  .float--a,.float--b{animation:none}
}

@media print{
  .header,.drawer,.mobile-cta,.hero::after{display:none!important}
  body{padding-bottom:0}
}

/* ==========================================================================
   LEGAL PAGE — hero
   ========================================================================== */
.page-hero{
  background:linear-gradient(135deg,var(--navy-900) 0%,var(--navy-800) 60%,var(--navy-700) 130%);
  color:var(--on-dark-muted);padding-block:clamp(2.5rem,6vw,4.25rem);position:relative;overflow:hidden;
}
.page-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;
  background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(75% 80% at 30% 0%,#000,transparent 80%);
  mask-image:radial-gradient(75% 80% at 30% 0%,#000,transparent 80%);
}
.page-hero > *{position:relative;z-index:1}
.page-hero h1{color:#fff;font-size:clamp(1.85rem,4vw,2.9rem);max-width:20ch}
.page-hero p{color:var(--on-dark-muted);font-size:var(--fs-lead);margin-top:var(--s-4);max-width:56ch}
.page-hero .eyebrow{color:var(--violet-600)}

.crumbs{display:flex;flex-wrap:wrap;gap:.4rem;font-size:var(--fs-xs);margin-bottom:var(--s-5)}
.crumbs li{display:flex;align-items:center;gap:.4rem;color:var(--on-dark-muted)}
.crumbs li + li::before{content:"/";color:rgba(255,255,255,.3)}
.crumbs a{color:var(--on-dark-muted)}
.crumbs a:hover{color:#fff}
.crumbs [aria-current]{color:#fff;font-weight:600}

.page-meta{
  display:inline-flex;align-items:center;gap:.5rem;margin-top:var(--s-6);
  padding:.4rem .85rem;border-radius:var(--r-pill);
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);
  font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;
}

/* ==========================================================================
   LEGAL PAGE — layout, table of contents, prose
   ========================================================================== */
.section--legal{padding-top:clamp(2rem,4vw,3rem)}
.legal__grid{display:grid;gap:clamp(2rem,4vw,3rem)}
@media (min-width:1000px){
  .legal__grid{grid-template-columns:250px minmax(0,1fr);gap:clamp(2.5rem,5vw,4.5rem);align-items:start}
  .toc{position:sticky;top:calc(var(--header-h) + 20px)}
}
.toc{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);
  padding:1.1rem 1.15rem;
}
.toc h2{
  font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);margin-bottom:var(--s-4);
}
.toc ol{counter-reset:toc;display:grid;gap:.1rem}
.toc li{counter-increment:toc}
.toc a{
  display:flex;gap:.55rem;padding:.42rem .5rem;border-radius:var(--r-xs);
  font-size:var(--fs-xs);font-weight:600;color:var(--muted);line-height:1.45;
  transition:color var(--dur) var(--ease), background-color var(--dur) var(--ease);
}
.toc a::before{content:counter(toc);font-family:var(--font-mono);color:var(--border-strong);flex:none}
.toc a:hover{color:var(--navy-800);background:var(--surface-2)}
.toc a.is-active{color:var(--primary-600);background:var(--primary-050)}
.toc a.is-active::before{color:var(--primary)}

.legal__body{max-width:70ch}
.legal__body section{scroll-margin-top:calc(var(--header-h) + 24px)}
.legal__body section + section{margin-top:clamp(2.25rem,4vw,3rem)}
.legal__body h2{font-size:clamp(1.2rem,2.2vw,1.5rem);margin-bottom:var(--s-4)}
.legal__body h3{font-size:1rem;margin-top:var(--s-6);margin-bottom:var(--s-2)}
.legal__body p{color:var(--muted);font-size:var(--fs-sm);margin-bottom:var(--s-4)}
.legal__body p:last-child{margin-bottom:0}
.legal__body a{font-weight:600;text-decoration:underline;text-underline-offset:2px}
.legal__body ul,.legal__body ol.numbered{
  list-style:disc;padding-left:1.2rem;display:grid;gap:.5rem;margin-bottom:var(--s-4);
}
.legal__body ol.numbered{list-style:decimal}
.legal__body li{color:var(--muted);font-size:var(--fs-sm);line-height:1.65}
.legal__body li::marker{color:var(--border-strong)}
.legal__body strong{color:var(--navy-800)}

/* Definition rows */
.deflist{display:grid;gap:.75rem;margin-bottom:var(--s-4)}
.deflist div{display:grid;gap:.15rem;padding-left:.9rem;border-left:2px solid var(--border)}
.deflist dt{font-size:var(--fs-sm);font-weight:700;color:var(--navy-800)}
.deflist dd{margin:0;font-size:var(--fs-sm);color:var(--muted)}

/* Legal — data tables (retention, rights-request timelines) */
.legal__body .tablewrap{overflow-x:auto;margin-bottom:var(--s-4)}
.legal__body table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);min-width:32ch}
.legal__body th,.legal__body td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--border);vertical-align:top;color:var(--muted);line-height:1.6}
.legal__body th{background:var(--surface-2);color:var(--navy-800);font-weight:700}

/* Legal — callout / note box */
.legal__body .note{background:var(--primary-050);border-left:3px solid var(--primary);border-radius:10px;padding:.85rem 1rem;margin-bottom:var(--s-4);font-size:var(--fs-sm);color:var(--muted)}
.legal__body .note strong,.legal__body .note b{color:var(--navy-800)}

/* Values the business still has to decide */
.fill{
  background:var(--accent-050);color:#8A5A00;border-bottom:1px dashed #D9A441;
  padding:.05em .3em;border-radius:4px;font-weight:600;
}


/* Contact card that closes every legal page */
.legal-contact{
  margin-top:clamp(2.5rem,5vw,3.5rem);background:var(--surface);
  border:1px solid var(--border);border-radius:var(--r-md);padding:clamp(1.25rem,2.5vw,1.75rem);
}
.legal-contact h2{margin-bottom:var(--s-3)}
.legal-contact__rows{display:grid;gap:.75rem;margin-top:var(--s-5)}
.legal-contact__rows div{display:flex;gap:.7rem;align-items:flex-start}
.legal-contact__rows svg{width:18px;height:18px;flex:none;color:var(--primary);margin-top:.15rem}
.legal-contact__rows b{display:block;font-size:var(--fs-xs);color:var(--navy-800);font-weight:700}
.legal-contact__rows span,.legal-contact__rows a{font-size:var(--fs-sm);color:var(--muted)}
.legal-contact__rows a:hover{color:var(--primary)}
.legal-contact address{font-style:normal;font-size:var(--fs-sm);color:var(--muted);line-height:1.6}

/* Cross-links to the other three policies */
.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:.75rem;margin-top:var(--s-7)}
.related a{
  display:flex;align-items:center;justify-content:space-between;gap:.5rem;
  padding:.85rem 1rem;background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);
  font-size:var(--fs-sm);font-weight:700;color:var(--navy-800);text-decoration:none;
  transition:border-color var(--dur) var(--ease), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.related a:hover{border-color:var(--primary-400);transform:translateY(-2px);box-shadow:var(--sh-sm);color:var(--primary-600)}
.related svg{width:15px;height:15px;flex:none;color:var(--border-strong)}
.related a:hover svg{color:var(--primary)}

/* ==========================================================================
   FEATURE LANDING PAGES  (lp-)  -- reusable across keyword pages
   ========================================================================== */
.lp-intro{max-width:56rem}
.lp-intro p{color:var(--muted);font-size:var(--fs-lead);margin-top:var(--s-4)}

.lp-grid{display:grid;gap:clamp(1rem,2vw,1.5rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));margin-top:var(--s-7)}
.lp-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:1.5rem;transition:border-color var(--dur) var(--ease),transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.lp-card:hover{border-color:var(--primary-400);transform:translateY(-3px);box-shadow:var(--sh-sm)}
.lp-card__ico{width:44px;height:44px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;background:var(--primary-050);color:var(--primary);margin-bottom:var(--s-4)}
.lp-card__ico svg{width:22px;height:22px}
.lp-card h3{font-size:var(--fs-lead);color:var(--navy-800)}
.lp-card p{margin-top:var(--s-2);font-size:var(--fs-sm);color:var(--muted);line-height:1.65}

.lp-benefits{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));margin-top:var(--s-6);list-style:none;padding:0}
.lp-benefits li{display:flex;gap:.7rem;align-items:flex-start;font-size:var(--fs-sm);color:var(--muted);line-height:1.6}
.lp-benefits li b{color:var(--navy-800)}
.lp-benefits svg{width:22px;height:22px;flex:none;color:var(--success);margin-top:.05rem}

.lp-steps{display:grid;gap:var(--s-6);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));margin-top:var(--s-7);counter-reset:step}
.lp-step{position:relative;padding-top:calc(38px + var(--s-4))}
.lp-step::before{counter-increment:step;content:counter(step);position:absolute;top:0;left:0;width:38px;height:38px;border-radius:var(--r-pill);background:var(--navy-800);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:var(--fs-sm)}
.lp-step h3{font-size:var(--fs-lead);color:var(--navy-800)}
.lp-step p{margin-top:var(--s-2);font-size:var(--fs-sm);color:var(--muted);line-height:1.65}

.lp-cta{background:var(--navy-800);border-radius:var(--r-lg);padding:clamp(1.75rem,4vw,3rem);text-align:center}
.lp-cta h2{color:#fff;font-size:clamp(1.5rem,3vw,2.1rem)}
.lp-cta p{color:var(--on-dark-muted);margin-top:var(--s-3);max-width:48ch;margin-inline:auto;font-size:var(--fs-lead)}
.lp-cta .btn-row{justify-content:center;margin-top:var(--s-6)}

.lp-faq{max-width:52rem;margin-top:var(--s-6)}
.lp-faq .deflist dt{font-size:var(--fs-lead)}
.lp-faq .deflist dd{font-size:var(--fs-body)}
