.doc-hero{
  position:relative;
  padding-top:72px;
  padding-bottom:72px;
  overflow-x:clip;
  background:
    linear-gradient(180deg,rgba(var(--color-accent-rgb),.05),rgba(var(--color-pair-rgb),.07));
}
.doc-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    repeating-linear-gradient(90deg,transparent 0 31px,var(--grid-line) 31px 32px);
  opacity:.7;
}
.doc-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:72px;
  align-items:center;
}
.doc-hero-copy{min-width:0}
.doc-title{
  margin-top:20px;
  font-size:clamp(52px,5.2vw,68px);
  line-height:1.1;
  font-weight:850;
  letter-spacing:-.02em;
}
.doc-summary{
  max-width:680px;
  margin-top:24px;
  color:var(--color-muted);
  font-size:19px;
  line-height:1.75;
}
.doc-intro-links{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:30px;
}
.doc-scope{
  position:relative;
  padding:30px;
  overflow:hidden;
}
.doc-scope::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:44%;
  height:7px;
  background:linear-gradient(90deg,var(--color-accent),var(--color-accent-pair));
  border-radius:0 0 0 var(--radius-pill);
}
.doc-scope h3{
  margin-top:18px;
  font-size:24px;
}
.doc-scope ul{
  display:grid;
  gap:0;
  margin-top:22px;
  list-style:none;
}
.doc-scope li{
  display:grid;
  grid-template-columns:minmax(72px,.5fr) minmax(0,1.5fr);
  gap:18px;
  padding-top:14px;
  padding-bottom:14px;
  border-bottom:1px solid var(--color-border);
}
.doc-scope li:last-child{border-bottom:0}
.doc-scope li span{
  color:var(--color-soft);
  font-size:13px;
}
.doc-scope li strong{
  color:var(--color-ink);
  font-size:14px;
  font-weight:680;
}
.doc-opening a{
  color:var(--color-accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
.doc-article{
  padding-bottom:var(--section-space);
}
.doc-article > .toc-tabs{
  margin-inline:auto;
}
.doc-section{
  width:100%;
  max-width:var(--reading-width);
  margin-inline:auto;
  padding-top:72px;
  padding-bottom:32px;
  border-bottom:1px solid var(--color-border);
}
.doc-section:last-child{border-bottom:0}
.doc-section > .kicker{
  margin-bottom:14px;
}
.doc-section > h2{
  margin-top:0;
  margin-bottom:30px;
}
.doc-section h3{
  margin-top:36px;
  font-size:24px;
}
.doc-section p{
  line-height:1.92;
  text-align:justify;
}
.doc-section .callout{
  margin-top:28px;
  line-height:1.8;
}
.doc-section .table-scroll{
  margin-top:30px;
  margin-bottom:30px;
}
.doc-section th{
  white-space:nowrap;
  word-break:keep-all;
}
.doc-section td{
  word-break:keep-all;
}
.route-decision{
  margin-top:30px;
  padding:26px;
}
.route-decision h3{
  margin-top:0;
  font-size:21px;
}
.route-decision ol{
  display:grid;
  gap:12px;
  margin-top:18px;
  padding-left:1.4em;
}
.route-decision li{
  padding-left:6px;
  color:var(--color-muted);
}
.route-decision strong{color:var(--color-ink)}
.doc-section pre{
  margin-top:24px;
}
@media (max-width:960px){
  .doc-hero-inner{
    grid-template-columns:1fr;
    gap:36px;
  }
  .doc-scope{
    max-width:680px;
  }
}
@media (max-width:768px){
  .doc-hero{
    padding-top:56px;
    padding-bottom:56px;
  }
  .doc-title{
    font-size:clamp(32px,9.8vw,40px);
  }
  .doc-summary{
    font-size:17px;
  }
  .doc-section{
    padding-top:60px;
  }
  .doc-section p{
    text-align:left;
  }
}
@media (max-width:640px){
  .doc-hero{
    padding-top:42px;
    padding-bottom:48px;
  }
  .doc-hero-inner{
    gap:28px;
  }
  .doc-intro-links{
    align-items:stretch;
    flex-direction:column;
  }
  .doc-intro-links .btn-primary,
  .doc-intro-links .btn-secondary{
    width:100%;
    white-space:nowrap;
  }
  .doc-scope{
    padding:22px;
  }
  .doc-scope li{
    grid-template-columns:1fr;
    gap:4px;
  }
  .doc-section{
    padding-top:52px;
    padding-bottom:24px;
  }
  .doc-section h3{
    margin-top:30px;
    font-size:21px;
  }
  .route-decision{
    padding:20px;
  }
}