.zb-legal-page,
.zb-legal-page *,
.zb-legal-page *::before,
.zb-legal-page *::after{
  box-sizing:border-box;
}

.zb-legal-page{
  --zb-legal-navy:#192654;
  --zb-legal-blue:#274f9e;
  --zb-legal-ink:#3c3c3b;
  --zb-legal-muted:#66708f;
  --zb-legal-line:rgba(25,38,84,.12);
  --zb-legal-soft:#eef3fb;
  --zb-legal-soft-2:#f7f9fc;
  --zb-legal-max:1240px;
  --zb-legal-pad:20px;
  background:#fff;
  color:var(--zb-legal-ink);
  font-family:"HK Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  overflow-x:clip;
}

.zb-legal-page main{
  display:block;
}

html:has(.zb-legal-page),
body.zb-legal-page{
  max-width:100%;
  overflow-x:clip;
}

.zb-legal-page .zb-header,
.zb-legal-page .zb-footer3{
  max-width:100%;
  overflow-x:clip;
}

.zb-legal-shell{
  width:100%;
  max-width:var(--zb-legal-max);
  margin:0 auto;
  padding-left:var(--zb-legal-pad);
  padding-right:var(--zb-legal-pad);
}

.zb-legal-hero{
  position:relative;
  padding:148px 0 44px;
  background:
    radial-gradient(circle at 12% 16%, rgba(53,95,179,.14), rgba(53,95,179,0) 34%),
    linear-gradient(180deg, #f7f9fc 0%, #ffffff 100%);
}

.zb-legal-breadcrumb{
  margin:0 0 18px;
  color:var(--zb-legal-muted);
  font-size:14px;
  line-height:1.5;
}

.zb-legal-breadcrumb a{
  color:var(--zb-legal-blue);
  text-decoration:none;
  font-weight:700;
}

.zb-legal-breadcrumb a:hover{
  text-decoration:underline;
}

.zb-legal-title{
  margin:0 0 16px;
  color:var(--zb-legal-navy);
  font-family:"HK Grotesk Wide","HK Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-size:clamp(40px, 5vw, 64px);
  line-height:.98;
  letter-spacing:-.04em;
  font-weight:600;
}

.zb-legal-lead{
  margin:0;
  max-width:64ch;
  font-size:18px;
  line-height:1.72;
  color:var(--zb-legal-ink);
}

.zb-legal-meta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}

.zb-legal-pill{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(39,79,158,.12);
  background:#fff;
  color:var(--zb-legal-blue);
  font-size:13px;
  font-weight:700;
  line-height:1;
}

.zb-legal-main{
  padding:18px 0 86px;
}

.zb-legal-grid{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(280px,.22fr);
  gap:28px;
  align-items:start;
}

.zb-legal-content{
  display:grid;
  gap:22px;
}

.zb-legal-card{
  padding:30px 32px;
  border:1px solid var(--zb-legal-line);
  border-radius:28px;
  background:#fff;
  box-shadow:0 18px 34px rgba(16,25,54,.04);
}

.zb-legal-card--soft{
  background:var(--zb-legal-soft-2);
}

.zb-legal-card h2,
.zb-legal-card h3{
  margin:0 0 16px;
  color:var(--zb-legal-navy);
  font-family:"HK Grotesk Wide","HK Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  letter-spacing:-.03em;
  line-height:1.04;
}

.zb-legal-card h2{
  font-size:clamp(28px, 3vw, 38px);
}

.zb-legal-card h3{
  font-size:clamp(21px, 2vw, 28px);
}

.zb-legal-card p{
  margin:0;
  font-size:17px;
  line-height:1.76;
}

.zb-legal-card p + p,
.zb-legal-card ul + p,
.zb-legal-card ol + p,
.zb-legal-card table + p,
.zb-legal-card h3 + p,
.zb-legal-card h3 + ul,
.zb-legal-card h3 + table{
  margin-top:14px;
}

.zb-legal-list{
  margin:16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}

.zb-legal-list li{
  position:relative;
  padding-left:20px;
  font-size:17px;
  line-height:1.72;
}

.zb-legal-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.7em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--zb-legal-blue);
}

.zb-legal-tableWrap{
  margin-top:18px;
  overflow:auto;
}

.zb-legal-table{
  width:100%;
  min-width:620px;
  border-collapse:collapse;
  border:1px solid var(--zb-legal-line);
  background:#fff;
}

.zb-legal-table th,
.zb-legal-table td{
  padding:14px 16px;
  border-bottom:1px solid var(--zb-legal-line);
  text-align:left;
  vertical-align:top;
  font-size:15px;
  line-height:1.64;
}

.zb-legal-table th{
  color:var(--zb-legal-navy);
  background:var(--zb-legal-soft);
  font-weight:700;
}

.zb-legal-table tr:last-child td{
  border-bottom:0;
}

.zb-legal-aside{
  position:sticky;
  top:118px;
  display:grid;
  gap:18px;
}

.zb-legal-note{
  padding:24px;
  border-radius:24px;
  background:var(--zb-legal-navy);
  color:#fff;
}

.zb-legal-note h3{
  margin:0 0 14px;
  color:#fff;
  font-size:24px;
}

.zb-legal-note p{
  margin:0;
  font-size:15px;
  line-height:1.72;
  color:rgba(255,255,255,.88);
}

.zb-legal-note a{
  color:#fff;
  font-weight:700;
}

.zb-legal-box{
  padding:22px 24px;
  border:1px solid var(--zb-legal-line);
  border-radius:24px;
  background:#fff;
}

.zb-legal-box h3{
  margin:0 0 14px;
  color:var(--zb-legal-navy);
  font-size:22px;
}

.zb-legal-box p,
.zb-legal-box li{
  font-size:15px;
  line-height:1.68;
}

.zb-legal-box ul{
  margin:0;
  padding-left:18px;
}

.zb-legal-box li + li{
  margin-top:8px;
}

.zb-legal-inlineLink{
  color:var(--zb-legal-blue);
  font-weight:700;
  text-decoration:none;
}

.zb-legal-inlineLink:hover{
  text-decoration:underline;
}

@media (max-width:980px){
  .zb-legal-grid{
    grid-template-columns:1fr;
  }

  .zb-legal-aside{
    position:static;
  }
}

@media (max-width:640px){
  .zb-legal-page{
    --zb-legal-pad:16px;
  }

  .zb-legal-hero{
    padding:128px 0 34px;
  }

  .zb-legal-title{
    font-size:clamp(34px, 10vw, 48px);
  }

  .zb-legal-lead{
    font-size:16px;
  }

  .zb-legal-main{
    padding:10px 0 64px;
  }

  .zb-legal-card{
    padding:24px 20px;
    border-radius:24px;
  }

  .zb-legal-breadcrumb,
  .zb-legal-lead,
  .zb-legal-card p,
  .zb-legal-list li,
  .zb-legal-note p,
  .zb-legal-box p,
  .zb-legal-box li{
    overflow-wrap:anywhere;
    word-break:break-word;
  }

  .zb-legal-card p,
  .zb-legal-list li{
    font-size:16px;
  }

  .zb-legal-table{
    min-width:0;
    table-layout:fixed;
  }

  .zb-legal-table th,
  .zb-legal-table td{
    padding:12px 10px;
    font-size:13px;
    overflow-wrap:anywhere;
    word-break:break-word;
  }

  .zb-legal-page .zb-footer3__bottomLinks{
    width:100%;
    gap:12px;
  }

  .zb-legal-page .zb-footer3__bottomLinks a,
  .zb-legal-page .zb-footer3__credit{
    font-size:13px;
    line-height:1.45;
  }

  .zb-legal-page .zb-footer3__credit{
    max-width:100%;
    overflow-wrap:anywhere;
    word-break:break-word;
  }

  .zb-legal-note,
  .zb-legal-box{
    padding:20px;
    border-radius:22px;
  }
}
