.eyebrow--stack{ flex-wrap:wrap; justify-content:center; column-gap:10px; row-gap:8px; text-align:center; }

.eyebrow--stack .eb-l1, .eyebrow--stack .eb-l2{ display:inline-flex; align-items:center; gap:10px; }

@media (max-width:640px){ .eyebrow--stack .eb-l2{ flex-basis:100%; justify-content:center; } .eyebrow--stack .eb-l2 .eb-dot{ display:none; } }

/* ===================================================================
     LEGAL PAGES (Privacy Policy, Terms of Use)
     Plain reading layout: a contents list that stays in view on the left,
     numbered sections on the right. No decoration, nothing to distract
     from the words.
     =================================================================== */
  .lg-hero{ background:var(--c-100); padding-top:clamp(56px,8vw,112px); padding-bottom:clamp(36px,5vw,64px); }

.lg-eyebrow{ margin-bottom:26px; }

.lg-hero h1{ font-size:clamp(2.1rem, 2vw + 1.3rem, 3.25rem); line-height:1.15; letter-spacing:-.01em; }

.lg-meta{ margin-top:22px; font-size:1rem; color:var(--c-600); }

.lg-sec{ background:var(--c-100); padding-bottom:clamp(72px,9vw,128px); }

.lg-flow{ display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:clamp(40px,7vw,128px); align-items:start; }

.lg-toc{ position:sticky; top:112px; }

.lg-toc p{ font-size:.75rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--c-600); margin-bottom:14px; }

.lg-toc ol{ list-style:none; margin:0; padding:0; counter-reset:toc; border-top:1px solid var(--c-300); }

.lg-toc li{ list-style:none; counter-increment:toc; border-bottom:1px solid var(--c-300); }

.lg-toc a{ display:flex; gap:14px; padding:12px 2px; font-size:.9375rem; line-height:1.45; color:var(--c-950); transition:transform .4s var(--ease); }

.lg-toc a::before{ content:counter(toc) "."; color:var(--c-600); font-variant-numeric:tabular-nums; min-width:1.5em; }

.lg-toc a{ position:relative; color:var(--c-600); transition:transform .4s var(--ease), color .3s var(--ease); }

.lg-toc a::after{ content:''; position:absolute; left:-14px; top:50%; width:6px; height:6px; margin-top:-3px; background:url(../img/icon-mark-dark.png) center / contain no-repeat; opacity:0; transform:scale(.4) rotate(-45deg); transition:opacity .35s var(--ease), transform .45s var(--ease); }

.lg-toc a.is-current{ color:var(--c-950); font-weight:600; }

.lg-toc a.is-current::before{ color:var(--c-950); }

.lg-toc a.is-current::after{ opacity:1; transform:none; }

@media (hover:hover) and (pointer:fine){ .lg-toc a:hover{ transform:translateX(5px); color:var(--c-950); } }

.lg-article{ counter-reset:sec; max-width:760px; }

.lg-article section{ counter-increment:sec; scroll-margin-top:96px; padding-bottom:clamp(28px,3.5vw,44px); }

.lg-article section + section{ padding-top:clamp(28px,3.5vw,44px); border-top:1px solid var(--c-300); }

.lg-article h2{ font-size:clamp(1.375rem, .7vw + 1.15rem, 1.75rem); line-height:1.3; margin-bottom:16px; }

.lg-article h2::before{ content:counter(sec) "."; margin-right:.45em; font-family:var(--font-body); font-size:.8em; font-weight:500; color:var(--c-600); }

.lg-article p, .lg-article li{ font-size:1.0625rem; line-height:1.8; color:var(--c-600); }

.lg-article p + p, .lg-article p + ul, .lg-article ul + p{ margin-top:14px; }

.lg-article strong{ color:var(--c-950); font-weight:600; }

.lg-article ul{ list-style:none; margin-top:12px; padding:0; }

.lg-article li{ position:relative; padding-left:26px; margin-top:8px; }

.lg-article li::before{ content:''; position:absolute; left:2px; top:.72em; width:9px; height:9px; background:url(../img/icon-mark-dark.png) center / contain no-repeat; opacity:.45; }

.lg-article a{ color:var(--c-950); text-decoration:underline; text-decoration-color:var(--c-300); text-underline-offset:3px; transition:text-decoration-color .3s var(--ease); }

.lg-article a:hover{ text-decoration-color:var(--c-950); }

.ph{ color:var(--c-950); }

@media (max-width:960px){
    .lg-flow{ grid-template-columns:1fr; gap:36px; }
    .lg-toc{ position:static; }
  }

/* ===== responsive ===== */
  @media (max-width:960px){
    .primary-nav{ display:none; }
    .header-actions .btn{ display:none; }
    .nav-toggle{ display:inline-flex; }

    .mobile-nav{ position:fixed; inset:0; z-index:200; display:flex; align-items:flex-start; justify-content:center; padding:104px 20px 32px; opacity:0; visibility:hidden; transition:opacity .4s var(--ease), visibility 0s linear .4s; }
    .mobile-nav.is-open{ opacity:1; visibility:visible; transition:opacity .4s var(--ease), visibility 0s; }
    .mobile-nav-backdrop{ position:absolute; inset:0; background:rgba(37,48,40,.45); }
    .mobile-nav-panel{ position:relative; z-index:1; width:100%; max-width:420px; max-height:100%; overflow-y:auto; display:flex; flex-direction:column; background:var(--c-100); border-radius:var(--radius-lg); box-shadow:0 32px 64px -24px rgba(37,48,40,.5); padding:26px 26px 30px; transform:translateY(14px) scale(.98); transition:transform .45s var(--ease); }
    .mobile-nav.is-open .mobile-nav-panel{ transform:translateY(0) scale(1); }
    .mobile-nav-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:26px; }
    .mobile-nav-label{ margin:0; }
    .mobile-nav-close{ display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; flex:none; border:1px solid var(--c-300); background:none; color:var(--c-950); cursor:pointer; transition:background-color .35s var(--ease), border-color .35s var(--ease), color .35s var(--ease), transform .35s var(--ease); }
    .mobile-nav-close svg{ width:14px; height:14px; }
    .mobile-nav-close:hover{ background:var(--c-950); border-color:var(--c-950); color:var(--c-100); }
    .mobile-nav-close:active{ transform:scale(.92); }
    .mobile-nav-links{ display:flex; flex-direction:column; }
    .mobile-nav-links a{ padding:15px 2px; font-family:var(--font-body); font-size:1.3125rem; font-weight:500; color:var(--c-950); border-bottom:1px solid var(--c-300); }
    .mobile-nav-links a:first-child{ padding-top:2px; }
    .mobile-nav-links a:last-child{ border-bottom:none; }
    .mobile-nav-cta{ margin-top:26px; width:100%; }
    body.nav-open{ overflow:hidden; }

    .footer-top{ grid-template-columns:1fr 1fr; row-gap:40px; }
  }

@media (max-width:640px){
    .site-header .container{ height:76px; }
    .site-header .logo-img{ height:32px; }
    .mobile-nav{ padding-top:92px; }
    /* buttons hug their labels (both as wide as the longer one, centred) instead of stretching across the screen */
    .footer-top{ grid-template-columns:1fr; }
    .footer-bottom{ flex-direction:column; align-items:flex-start; }
  }
