/*
 * Lead Axis — base, layout and chrome.
 * Reads tokens.css. Declares no literal colour of its own.
 */

/* ============================ Base ============================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--la-ground);color:var(--la-body);
  font-family:var(--la-sans);font-size:var(--la-base);line-height:1.62;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  overflow-x:clip;
}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
:focus-visible{outline:2px solid var(--la-accent);outline-offset:3px;border-radius:4px}
::selection{background:var(--la-accent);color:var(--la-on-accent)}

h1,h2,h3,h4{margin:0;color:var(--la-ink);font-weight:700;letter-spacing:var(--la-track-d);line-height:1.16;text-wrap:balance}
h1{font-size:var(--la-d1);line-height:1.08}
h2{font-size:var(--la-d2)}
h3{font-size:var(--la-d3);line-height:1.24}
h4{font-size:var(--la-h4);line-height:1.35}

.la-eyebrow,.la-label{
  display:inline-block;font-size:var(--la-label);font-weight:600;
  letter-spacing:var(--la-track-label);text-transform:uppercase;color:var(--la-accent);
}
.la-lede{font-size:clamp(1rem,1.15vw,1.125rem);line-height:1.68;color:var(--la-muted);max-width:56ch}
.la-mono{font-family:var(--la-mono);font-variant-numeric:tabular-nums}

.la-skip{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--la-ink);color:#fff;padding:var(--la-s3) var(--la-s5)}
.la-skip:focus{left:0}
.screen-reader-text{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ============================ Layout ============================ */
.la-wrap{width:100%;max-width:var(--la-container);margin-inline:auto;padding-inline:var(--la-gutter)}
.la-bay{padding-block:var(--la-bay)}
.la-ground--off{background:var(--la-off)}
.la-ground--dark{background:var(--la-dark);color:var(--la-on-dark)}
.la-ground--dark h1,.la-ground--dark h2,.la-ground--dark h3,.la-ground--dark h4{color:var(--la-on-dark-strong)}
.la-ground--dark .la-lede{color:var(--la-on-dark)}
.la-ground--dark .la-eyebrow,.la-ground--dark .la-label{color:var(--la-accent-300)}

/* Section opener */
.la-head{display:grid;gap:var(--la-s4);margin-bottom:var(--la-s10);max-width:70ch}
.la-head--split{
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:var(--la-s10);align-items:end;max-width:none;
}
.la-head--center{justify-items:center;text-align:center;margin-inline:auto}
.la-head--center .la-lede{margin-inline:auto}
@media (max-width:860px){.la-head--split{grid-template-columns:1fr;gap:var(--la-s5);align-items:start}}

/* ============================ Buttons ============================ */
.la-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--la-s2);
  font-family:var(--la-sans);font-size:var(--la-sm);font-weight:600;line-height:1;
  padding:1rem 1.6rem;border-radius:var(--la-r-pill);border:1px solid transparent;
  cursor:pointer;white-space:nowrap;
  transition:background var(--la-dur) var(--la-ease),color var(--la-dur) var(--la-ease),
             border-color var(--la-dur) var(--la-ease),box-shadow var(--la-dur) var(--la-ease);
}
.la-btn--primary{background:var(--la-accent);color:var(--la-on-accent);box-shadow:var(--la-shadow-sm)}
.la-btn--primary:hover{background:var(--la-accent-600);box-shadow:var(--la-shadow-md)}
.la-btn--outline{border-color:var(--la-line-2);color:var(--la-ink);background:var(--la-white)}
.la-btn--outline:hover{border-color:var(--la-accent);color:var(--la-accent)}
.la-btn--ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.28)}
.la-btn--ghost:hover{background:rgba(255,255,255,.2)}
.la-btn--lg{padding:1.15rem 2rem;font-size:var(--la-base)}
.la-btn--block{display:flex;width:100%}

.la-link{display:inline-flex;align-items:center;gap:var(--la-s2);font-size:var(--la-sm);font-weight:600;color:var(--la-accent)}
.la-link:hover{color:var(--la-accent-600)}

/* ============================ Cards ============================ */
.la-card{background:var(--la-white);border:1px solid var(--la-line);border-radius:var(--la-r-lg);padding:var(--la-s6)}
.la-card--raised{border-color:transparent;box-shadow:var(--la-shadow-sm)}
.la-ground--dark .la-card{background:var(--la-surface-dark);border-color:var(--la-line-dark)}

.la-chip{
  display:inline-flex;align-items:center;gap:var(--la-s2);
  font-size:var(--la-xs);font-weight:600;padding:.4rem .8rem;border-radius:var(--la-r-pill);
  background:var(--la-accent-50);color:var(--la-accent-700);
}
.la-chip--ok{background:var(--la-success-50);color:var(--la-success)}
.la-ground--dark .la-chip{background:rgba(255,255,255,.1);color:var(--la-on-dark-strong)}

/* ============================ Header ============================ */
.la-header{
  position:sticky;top:0;z-index:200;background:rgba(255,255,255,.94);
  border-bottom:1px solid transparent;transition:border-color var(--la-dur),box-shadow var(--la-dur);
}
.la-header.is-stuck{border-bottom-color:var(--la-line);box-shadow:0 6px 20px rgba(19,36,54,.05)}
.la-header__inner{display:flex;align-items:center;gap:var(--la-s6);min-height:76px}
.la-brand{display:block;flex:none}
.la-brand img{height:38px;width:auto}
.la-nav{margin-left:auto}
.la-nav ul{display:flex;align-items:center;gap:var(--la-s2)}
.la-nav a{
  display:block;padding:.55rem .75rem;border-radius:var(--la-r-sm);
  font-size:var(--la-sm);font-weight:500;color:var(--la-body);
  transition:color var(--la-dur),background var(--la-dur);
}
.la-nav a:hover,.la-nav .current-menu-item>a{color:var(--la-accent);background:var(--la-accent-50)}
.la-nav li.menu-item-has-children{position:relative}
.la-nav .la-submenu-toggle{
  display:flex;align-items:center;gap:.35rem;padding:.55rem .75rem;border:0;background:none;
  border-radius:var(--la-r-sm);font:inherit;font-size:var(--la-sm);font-weight:500;color:var(--la-body);cursor:pointer;
  transition:color var(--la-dur),background var(--la-dur);
}
.la-nav .la-submenu-toggle::after{
  content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);transition:transform var(--la-dur);
}
.la-nav li.menu-item-has-children:hover .la-submenu-toggle,
.la-nav li.menu-item-has-children:focus-within .la-submenu-toggle,
.la-nav .la-submenu-toggle:hover{color:var(--la-accent);background:var(--la-accent-50)}
.la-nav li.menu-item-has-children:hover .la-submenu-toggle::after,
.la-nav li.menu-item-has-children:focus-within .la-submenu-toggle::after{transform:rotate(225deg) translateY(-2px)}
.la-nav .sub-menu{
  position:absolute;top:100%;left:0;margin-top:.5rem;min-width:220px;padding:.5rem;
  background:var(--la-white);border:1px solid var(--la-line);border-radius:var(--la-r-md);
  box-shadow:0 18px 40px rgba(19,36,54,.12);display:grid;gap:2px;
  opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity var(--la-dur),transform var(--la-dur),visibility var(--la-dur);
}
.la-nav li.menu-item-has-children:hover .sub-menu,
.la-nav li.menu-item-has-children:focus-within .sub-menu{opacity:1;visibility:visible;transform:none}
.la-nav .sub-menu a{padding:.6rem .75rem;white-space:nowrap}
.la-header__cta{display:flex;align-items:center;gap:var(--la-s3);flex:none}
.la-burger{
  display:none;align-items:center;justify-content:center;width:44px;height:44px;
  border:1px solid var(--la-line-2);border-radius:var(--la-r-sm);background:none;
  color:var(--la-ink);cursor:pointer;
}
.la-burger__bars{display:grid;gap:4px;width:18px}
.la-burger__bars span{height:2px;background:currentColor;border-radius:2px;transition:transform var(--la-dur),opacity var(--la-dur)}
.la-burger[aria-expanded="true"] .la-burger__bars span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.la-burger[aria-expanded="true"] .la-burger__bars span:nth-child(2){opacity:0}
.la-burger[aria-expanded="true"] .la-burger__bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.la-overlay{position:fixed;inset:76px 0 0;z-index:190;background:var(--la-white);overflow-y:auto;padding:var(--la-s8) 0}
.la-overlay[hidden]{display:none}
.la-overlay ul{display:grid;gap:var(--la-s2);padding-inline:var(--la-gutter)}
.la-overlay a{display:block;padding:.9rem 0;font-size:1.25rem;font-weight:600;color:var(--la-ink);border-bottom:1px solid var(--la-line)}
.la-overlay .la-submenu-toggle{
  display:flex;align-items:center;justify-content:space-between;width:100%;padding:.9rem 0;
  border:0;border-bottom:1px solid var(--la-line);background:none;font:inherit;
  font-size:1.25rem;font-weight:600;color:var(--la-ink);cursor:pointer;
}
.la-overlay .la-submenu-toggle::after{
  content:"";width:9px;height:9px;flex:none;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg);transition:transform var(--la-dur);
}
.la-overlay li.is-open>.la-submenu-toggle::after{transform:rotate(225deg)}
.la-overlay .sub-menu{
  display:grid;gap:0;grid-template-rows:0fr;overflow:hidden;padding-inline:var(--la-gutter);
  margin-inline:calc(var(--la-gutter) * -1);transition:grid-template-rows var(--la-dur);
}
.la-overlay .sub-menu>*{min-height:0}
.la-overlay li.is-open>.sub-menu{grid-template-rows:1fr}
.la-overlay .sub-menu li{overflow:hidden}
.la-overlay .sub-menu a{padding-left:var(--la-s4);font-size:1.05rem;font-weight:500}
.la-overlay__meta{display:grid;gap:var(--la-s3);padding:var(--la-s8) var(--la-gutter) 0}
.la-overlay__meta a{font-size:var(--la-sm);color:var(--la-muted);border:0;padding:0}

@media (max-width:1080px){
  .la-nav{display:none}
  .la-burger{display:inline-flex;margin-left:auto}
  .la-header__cta .la-btn--outline{display:none}
}
@media (max-width:560px){.la-header__cta .la-btn{display:none}.la-brand img{height:32px}}

/* ============================ Footer ============================ */
.la-footer{background:var(--la-dark);color:var(--la-on-dark);padding-block:var(--la-s16) var(--la-s8)}
.la-footer a{color:var(--la-on-dark)}
.la-footer a:hover{color:var(--la-on-dark-strong)}
.la-footer__cols{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:var(--la-s10);padding-bottom:var(--la-s12)}
.la-footer h3{font-size:var(--la-xs);font-weight:700;letter-spacing:var(--la-track-label);text-transform:uppercase;color:var(--la-accent-300);margin-bottom:var(--la-s5)}
.la-footer ul{display:grid;gap:var(--la-s3)}
.la-footer ul a{font-size:var(--la-sm)}
.la-footer__blurb{max-width:38ch;font-size:var(--la-sm);color:var(--la-on-dark)}
.la-footer__contact{display:grid;gap:var(--la-s4)}
.la-footer__contact div{display:flex;gap:var(--la-s3);align-items:flex-start;font-size:var(--la-sm)}
.la-footer__contact i{color:var(--la-accent-300);width:16px;flex:none;margin-top:5px;font-size:14px;text-align:center}
.la-footer__bottom{
  display:flex;flex-wrap:wrap;gap:var(--la-s4) var(--la-s8);align-items:center;
  justify-content:space-between;padding-top:var(--la-s6);border-top:1px solid var(--la-line-dark);
}
.la-footer__bottom p,.la-footer__bottom a{font-size:var(--la-xs);color:var(--la-on-dark-faint)}
.la-footer__legal{display:flex;flex-wrap:wrap;gap:var(--la-s6)}
@media (max-width:900px){.la-footer__cols{grid-template-columns:1fr 1fr;gap:var(--la-s8)}}
@media (max-width:560px){.la-footer__cols{grid-template-columns:1fr}}

/* ============================ Content pages ============================ */
.la-entry{padding-block:var(--la-s16)}
.la-prose{max-width:70ch;color:var(--la-body)}
.la-prose>*+*{margin-top:var(--la-s5)}
.la-prose h2{margin-top:var(--la-s10)}
.la-prose h3{margin-top:var(--la-s8)}
.la-prose ul{list-style:disc;padding-left:1.25em}
.la-prose ol{list-style:decimal;padding-left:1.25em}
.la-prose li+li{margin-top:var(--la-s2)}
.la-prose a{color:var(--la-accent);text-decoration:underline}
.la-legal-note{
  padding:var(--la-s5);border-radius:var(--la-r-md);background:var(--la-accent-50);
  border:1px solid var(--la-accent-100);font-size:var(--la-sm);color:var(--la-ink);
}

/* ============================ Motion ============================ */
.la-rise{opacity:0;transform:translateY(20px);transition:opacity .7s var(--la-ease-out),transform .7s var(--la-ease-out)}
.la-rise.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  .la-rise{opacity:1;transform:none}
}


/* ==================== v6 chrome corrections ==================== */

/* Header: brand left, navigation centred, one action right. */
.la-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--la-s6);min-height:72px}
.la-nav{margin-left:0;justify-self:center}
.la-nav ul{gap:var(--la-s1)}
.la-nav a{padding:.5rem .85rem;font-size:var(--la-sm);font-weight:500}
.la-header__right{gap:var(--la-s4)}
.la-header__tel{font-weight:600;color:var(--la-ink)}
.la-header__tel:hover{color:var(--la-accent)}
.la-burger__label{display:none}
@media (max-width:1080px){
  .la-header__inner{grid-template-columns:auto 1fr}
  .la-header__right{justify-self:end}
  .la-header__tel{display:none}
}

/* Footer: four columns, wordmark at the base. */
.la-footer__cols{grid-template-columns:1.5fr 1fr 1.2fr 1fr}
.la-footer__brand img{height:34px;width:auto;margin-bottom:var(--la-s5)}
.la-footer__social{display:grid;gap:var(--la-s3)}
.la-footer__social a{display:flex;align-items:center;justify-content:space-between;gap:var(--la-s4);font-size:var(--la-sm)}
.la-footer__social i{
  width:32px;height:32px;flex:none;border-radius:var(--la-r-sm);display:grid;place-items:center;
  background:rgba(255,255,255,.08);color:var(--la-on-dark-strong);font-size:14px;
  transition:background var(--la-dur),color var(--la-dur);
}
.la-footer__social a:hover i{background:var(--la-accent);color:#fff}
.la-footer__wordmark{
  display:block;width:100%;margin-top:var(--la-s10);
  font-size:clamp(3.5rem,16vw,13rem);line-height:.82;font-weight:800;letter-spacing:-.04em;
  color:rgba(255,255,255,.10);text-align:center;user-select:none;
}
@media (max-width:900px){.la-footer__cols{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.la-footer__cols{grid-template-columns:1fr}}

/* ==================== v7: chrome ==================== */

.la-header{background:rgba(255,255,255,.92);backdrop-filter:saturate(150%) blur(10px)}
.la-header__inner{min-height:70px;gap:var(--la-s4)}
.la-brand img{height:34px}
.la-nav ul{gap:2px}
.la-nav a{padding:.5rem .8rem;color:var(--la-ink);font-weight:500}
.la-header__right .la-btn{padding:.6rem 1.35rem;font-size:var(--la-sm)}
.la-overlay{inset:70px 0 0}

/* The hero carries its own top space, so the header must not add any. */
.la-main{padding-top:0}
.la-main > .elementor > .e-con:first-child,
.la-main > .elementor .elementor-element:first-child > .e-con{margin-top:0}

/* ---------- Footer ---------- */
.la-footer{padding-block:var(--la-s20) var(--la-s6);overflow:hidden}
.la-footer__cols{grid-template-columns:1.6fr 1fr 1.25fr 1fr;gap:var(--la-s10);padding-bottom:var(--la-s10)}
.la-footer__brand{display:block;margin-bottom:var(--la-s5)}
.la-footer__brand img{height:36px;width:auto;display:block}
.la-footer__wordmark{
  display:block;width:100%;margin-top:var(--la-s8);padding-top:var(--la-s8);
  border-top:1px solid var(--la-line-dark);
  font-size:clamp(3rem,15.5vw,12.5rem);line-height:.86;font-weight:800;
  letter-spacing:-.045em;text-align:center;user-select:none;
  background:linear-gradient(180deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,.03) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.la-footer__bottom{border-top:0;padding-top:var(--la-s6)}
@media (max-width:900px){.la-footer__cols{grid-template-columns:1fr 1fr;gap:var(--la-s8)}}
@media (max-width:560px){.la-footer__cols{grid-template-columns:1fr}}

/* Footer columns */
.la-footer .la-brand{display:block;margin-bottom:var(--la-s5)}
.la-footer .la-brand img{height:36px;width:auto;display:block}
.la-footer__col--menus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--la-s6)}
.la-footer__social-off{
  display:flex;align-items:center;justify-content:space-between;gap:var(--la-s4);
  font-size:var(--la-sm);color:var(--la-on-dark-faint);cursor:default;
}
.la-footer__social-off i{
  width:32px;height:32px;flex:none;border-radius:var(--la-r-sm);display:grid;place-items:center;
  background:rgba(255,255,255,.06);color:var(--la-on-dark-faint);font-size:14px;
}
@media (max-width:900px){.la-footer__col--menus{grid-column:span 2}}
@media (max-width:560px){.la-footer__col--menus{grid-column:auto}}


/* Footer proportions: the menu pair needs the width the socials do not. */
.la-footer__cols{grid-template-columns:1.7fr 1.5fr 1.35fr .95fr}
.la-footer__col--menus{gap:var(--la-s8)}
.la-footer__bottom .la-label{color:var(--la-on-dark-faint)}
.la-footer__bottom a.la-label:hover{color:var(--la-on-dark-strong)}
@media (max-width:900px){
  .la-footer__cols{grid-template-columns:1fr 1fr}
  .la-footer__col--menus{grid-column:span 2}
}
@media (max-width:560px){
  .la-footer__cols{grid-template-columns:1fr}
  .la-footer__col--menus{grid-column:auto}
}

/* Header on small screens: brand, one action and the trigger stay on one line. */
@media (max-width:1080px){
  .la-header__right{flex-wrap:nowrap;gap:var(--la-s3)}
  .la-burger{display:inline-flex;margin-left:0}
}
@media (max-width:560px){
  .la-header__inner{gap:var(--la-s3);min-height:62px}
  .la-brand img{height:28px}
  .la-header__right .la-btn{padding:.5rem 1rem;font-size:var(--la-xs)}
  .la-burger{width:40px;height:40px}
  .la-overlay{inset:62px 0 0}
}

/* ==================== v10: footer detail ==================== */

.la-footer__social a,.la-footer__social-off{
  padding:.35rem 0;border-radius:var(--la-r-sm);
  transition:color var(--la-dur),transform var(--la-dur) var(--la-ease);
}
.la-footer__handle{font-size:var(--la-sm)}
.la-footer__social a:hover{color:var(--la-on-dark-strong);transform:translateX(2px)}
.la-footer__social a:hover i{background:var(--la-accent);color:#fff}
.la-footer__social-off{color:var(--la-on-dark-faint);cursor:default}

/* The wordmark is the sign-off, so it has to be legible, not a ghost. */
.la-footer__wordmark{
  background:linear-gradient(180deg,rgba(255,255,255,.72) 0%,rgba(255,255,255,.34) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

/* Bottom row: a single centred stack once the two halves stop fitting. */
.la-footer__bottom{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:var(--la-s4) var(--la-s6);
}
@media (max-width:720px){
  .la-footer__bottom{flex-direction:column;justify-content:center;text-align:center}
  .la-footer__legal{justify-content:center;gap:var(--la-s3) var(--la-s5)}
}

/* One menu column instead of two: rebalance the four tracks. */
.la-footer__cols{grid-template-columns:1.9fr 1.05fr 1.5fr 1.05fr}
@media (max-width:900px){.la-footer__cols{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.la-footer__cols{grid-template-columns:1fr}}

/* ==================== v12: overlay menu ==================== */

.la-overlay{
  opacity:0;transform:translateY(-10px);
  transition:opacity .22s var(--la-ease),transform .22s var(--la-ease);
}
.la-overlay.is-open{opacity:1;transform:none}
.la-overlay a{transition:color var(--la-dur)}
.la-overlay a:hover{color:var(--la-accent)}
.la-overlay__cta{
  display:flex;flex-wrap:wrap;gap:var(--la-s3);
  padding:var(--la-s8) var(--la-gutter) 0;
}
.la-overlay__cta .la-btn{flex:1 1 12rem}

/* The header action belongs to the drawer on a phone, not the bar. */
@media (max-width:767px){
  .la-header__right .la-btn{display:none}
}
@media (prefers-reduced-motion:reduce){
  .la-overlay{transition:none}
}

/* ==================== Legal documents ==================== */

.la-legal{display:block}

.la-legal__open{
  position:relative;isolation:isolate;overflow:hidden;
  padding-block:clamp(3.5rem,7vw,6rem);background:var(--la-ink-2);
}
.la-legal__open::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background:var(--la-bg-soft) no-repeat center/cover;
}
.la-legal__open::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(100deg,rgba(6,18,38,.94) 0%,rgba(6,18,38,.78) 45%,rgba(6,18,38,.42) 100%);
}
.la-legal__title{
  margin-top:var(--la-s4);
  font-size:var(--la-d1);font-weight:700;line-height:1.08;
  letter-spacing:var(--la-track-d);color:var(--la-on-dark-strong);
  max-width:22ch;text-wrap:balance;
}
.la-legal__meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:var(--la-s3) var(--la-s4);
  margin-top:var(--la-s6);font-size:var(--la-sm);color:var(--la-on-dark);
}
.la-legal__meta span{display:inline-flex;align-items:center;gap:var(--la-s2)}
.la-legal__meta i{color:var(--la-accent-300);font-size:13px;line-height:1}
.la-legal__dot{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.35)}

/* ---------- The document ---------- */
.la-legal__doc{
  max-width:52rem;margin:clamp(2.5rem,5vw,4.5rem) auto clamp(3rem,6vw,5rem);
  background:var(--la-white);border:1px solid var(--la-line);border-radius:var(--la-r-xl);
  padding:clamp(1.75rem,4vw,3.5rem);box-shadow:var(--la-shadow-sm);
}
.la-legal__doc .la-prose{max-width:none}
.la-legal__doc .la-prose > * + *{margin-top:var(--la-s5)}
.la-legal__doc .la-prose h2{
  margin-top:var(--la-s12);padding-top:var(--la-s8);
  border-top:1px solid var(--la-line);
  font-size:var(--la-d3);color:var(--la-ink);letter-spacing:-.01em;
}
.la-legal__doc .la-prose h2 + p{margin-top:var(--la-s5)}
.la-legal__doc .la-prose > *:first-child{margin-top:0}
/* The lede already closes with a rule; the first heading must not add a second. */
.la-legal__doc .la-prose .la-legal-lede + h2{margin-top:var(--la-s10);padding-top:0;border-top:0}
.la-legal__doc .la-prose p{color:var(--la-body);line-height:1.78}
.la-legal__doc .la-prose ul{
  display:grid;gap:var(--la-s3);list-style:none;padding:0;margin-top:var(--la-s5);
}
.la-legal__doc .la-prose li{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--la-s4);align-items:start;
  color:var(--la-body);line-height:1.7;margin:0;
}
.la-legal__doc .la-prose li::before{
  content:"";width:7px;height:7px;margin-top:.62em;border-radius:50%;
  background:var(--la-accent);flex:none;
}

/* The opening paragraph carries the summary, so it is set a step larger. */
.la-legal-lede{
  font-size:clamp(1.0625rem,1.3vw,1.1875rem);line-height:1.7;
  color:var(--la-ink) !important;font-weight:500;
  padding-bottom:var(--la-s8);border-bottom:1px solid var(--la-line);
}

.la-legal__foot{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:var(--la-s4);margin-top:var(--la-s12);padding-top:var(--la-s8);
  border-top:1px solid var(--la-line);
}
.la-legal__foot p{font-size:var(--la-sm);font-weight:600;color:var(--la-ink)}

/* ---------- Other policies ---------- */
.la-legal__more{
  padding-block:clamp(3rem,6vw,5rem);
  background:linear-gradient(180deg,#F5F9FE 0%,#E9F1FD 100%);
}
.la-legal__more h2{font-size:var(--la-d3);color:var(--la-ink);margin-bottom:var(--la-s8)}
.la-legal__grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
  gap:var(--la-s5);list-style:none;padding:0;align-items:stretch;
}
.la-legal__grid li{display:grid}
.la-legal__grid a{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--la-s4);align-items:center;
  padding:var(--la-s5) var(--la-s6);border-radius:var(--la-r-lg);height:100%;
  background:var(--la-white);border:1px solid var(--la-line);box-shadow:var(--la-shadow-sm);
  transition:transform var(--la-dur) var(--la-ease),box-shadow var(--la-dur),border-color var(--la-dur);
}
.la-legal__grid a:hover{transform:translateY(-4px);box-shadow:var(--la-shadow-md);border-color:var(--la-accent-200)}
.la-legal__icon{
  display:grid;place-items:center;width:42px;height:42px;border-radius:var(--la-r-md);
  background:var(--la-accent-50);color:var(--la-accent);font-size:16px;
}
.la-legal__icon i{line-height:1}
.la-legal__name{font-size:var(--la-sm);font-weight:700;color:var(--la-ink)}
.la-legal__go{color:var(--la-accent-300);font-size:13px;transition:transform var(--la-dur) var(--la-ease)}
.la-legal__grid a:hover .la-legal__go{transform:translateX(3px);color:var(--la-accent)}

/* ==================== Legal documents: wider measure ==================== */

/*
 * Policy pages run at 85% of the viewport rather than the 1220px site
 * container, capped so an ultrawide screen does not stretch a paragraph past
 * reading. Opener, document and footer all share the rail, so the left edge
 * stays true down the whole page.
 */
.la-legal .la-wrap{
  width:min(85%,88rem);max-width:none;
  margin-inline:auto;padding-inline:0;
}
.la-legal__doc{max-width:none}
.la-legal__doc .la-prose p,
.la-legal__doc .la-prose li{font-size:1.0625rem;line-height:1.8}

@media (max-width:1024px){
  .la-legal .la-wrap{width:100%;padding-inline:var(--la-gutter)}
  .la-legal__doc .la-prose p,
  .la-legal__doc .la-prose li{font-size:var(--la-base);line-height:1.75}
}

/* ---------- Legal prose: opening line, lists, tables ---------- */
.la-legal-lede{
  font-size:1.1875rem;line-height:1.7;color:var(--la-ink);font-weight:500;
  padding-bottom:var(--la-s8);border-bottom:1px solid var(--la-line);
}
.la-legal__doc .la-prose h3{
  margin-top:var(--la-s8);font-size:var(--la-h4);color:var(--la-ink);
}
.la-legal__doc .la-prose ol{list-style:decimal;padding-left:1.3em}
.la-legal__doc .la-prose ul{list-style:none;padding-left:0}
.la-legal__doc .la-prose ul li{position:relative;padding-left:1.6em}
.la-legal__doc .la-prose ul li::before{
  content:"";position:absolute;left:.35em;top:.72em;
  width:6px;height:6px;border-radius:50%;background:var(--la-accent);
}
.la-legal__doc .la-prose li + li{margin-top:var(--la-s3)}
.la-legal__doc .la-prose table{
  width:100%;border-collapse:collapse;margin-top:var(--la-s5);
  font-size:var(--la-sm);display:block;overflow-x:auto;
}
.la-legal__doc .la-prose th,
.la-legal__doc .la-prose td{
  padding:var(--la-s3) var(--la-s4);text-align:left;
  border-bottom:1px solid var(--la-line);vertical-align:top;
}
.la-legal__doc .la-prose thead th{
  background:var(--la-accent-50);color:var(--la-ink);font-weight:700;
  font-size:var(--la-xs);letter-spacing:var(--la-track-label);text-transform:uppercase;
}
.la-legal__doc .la-prose tbody td:first-child{font-weight:600;color:var(--la-ink)}
