/* Shared editorial template for PACTOR Technical Library articles. */
.article-hero{
  background:linear-gradient(135deg,#07243a,#0b5689);
  color:#fff;
  padding:62px 0 52px;
}
.article-eyebrow{
  margin:0 0 16px;
  color:#71d4f5;
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.article-hero h1{
  max-width:860px;
  margin:0;
  color:#fff;
  font:600 clamp(2.35rem,4vw,3.7rem)/1.06 "Roboto Condensed",sans-serif;
  letter-spacing:-.025em;
}
.article-deck{
  max-width:760px;
  margin:20px 0 0;
  color:#d5e5ed;
  font-size:18px;
  line-height:1.58;
}
.article-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 24px;
  margin-top:24px;
  color:#aecdde;
  font-size:12px;
}
.article-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 260px;
  gap:56px;
  padding:60px 0 88px;
}
.article-layout.article-layout-single{
  display:block;
}
.article-layout-single .article-body{
  max-width:860px;
}
.article-body{
  min-width:0;
  font-family:"Inter",sans-serif;
}
.article-body h2{
  margin:46px 0 14px;
  color:#12334f;
  font:600 clamp(1.8rem,2.7vw,2.15rem)/1.15 "Roboto Condensed",sans-serif;
  letter-spacing:-.015em;
}
.article-body h2:first-child{
  margin-top:0;
}
.article-body h3{
  margin:28px 0 9px;
  color:#174767;
  font:600 1.5rem/1.2 "Roboto Condensed",sans-serif;
}
.article-body p{
  margin:0 0 18px;
  line-height:1.72;
}
.article-body ul,
.article-body ol{
  margin:0 0 24px;
  padding-left:24px;
}
.article-body li{
  margin-bottom:10px;
}
.article-body strong{
  color:#133b57;
}
.article-callout{
  margin:32px 0;
  padding:24px 27px;
  border-left:4px solid var(--cyan);
  background:#eef8fc;
}
.article-callout p:last-child{
  margin-bottom:0;
}
.checklist{
  display:grid;
  gap:12px;
  padding:0!important;
  list-style:none;
}
.checklist li{
  position:relative;
  margin:0;
  padding:15px 18px 15px 48px;
  border:1px solid var(--line);
  background:var(--soft);
}
.checklist li:before{
  content:"✓";
  position:absolute;
  top:14px;
  left:18px;
  color:var(--blue);
  font-weight:800;
}
.article-table{
  width:100%;
  margin:25px 0 30px;
  border-collapse:collapse;
}
.article-table th,
.article-table td{
  padding:14px 16px;
  border:1px solid var(--line);
  text-align:left;
  vertical-align:top;
}
.article-table th{
  background:#eaf3f8;
  color:#174767;
}
.article-cta a{
  display:inline-block;
  padding:11px 15px;
  background:var(--blue);
  color:#fff;
  font-size:14px;
  font-weight:700;
}
.source-list{
  margin:0;
  padding-left:18px;
}
.source-list li{
  margin-bottom:9px;
  font-size:13px;
}
.source-list a{
  color:var(--blue);
  text-decoration:underline;
}
.validation-note{
  margin-top:46px;
  padding-top:21px;
  border-top:1px solid var(--line);
  color:#728592;
  font-size:13px;
}
.article-cta{
  margin-top:44px;
  padding:32px;
  background:var(--navy);
  color:#fff;
}
.article-cta h2{
  margin:0 0 11px;
  color:#fff;
}
.article-cta .article-cta-eyebrow{
  margin:0 0 12px;
  color:var(--cyan);
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.article-cta p{
  color:#bed0da;
}
@media(max-width:900px){
  .article-hero{
    padding:52px 0 45px;
  }
  .article-layout{
    grid-template-columns:1fr;
    gap:34px;
    padding:52px 0 76px;
  }
}
@media(max-width:600px){
  .article-hero{
    padding:44px 0 38px;
  }
  .article-hero .wrap,
  .article-layout.article-layout-single{
    width:calc(100% - 30px);
  }
  .article-hero h1{
    font-size:clamp(2.15rem,10.5vw,2.75rem);
    line-height:1.08;
  }
  .article-deck{
    margin-top:17px;
    font-size:16.5px;
    line-height:1.55;
  }
  .article-meta{
    margin-top:20px;
    gap:7px 16px;
  }
  .article-layout{
    padding-top:44px;
  }
  .article-body h2{
    margin-top:39px;
    font-size:1.8rem;
  }
  .article-body h3{
    font-size:1.35rem;
  }
  .article-table{
    display:block;
    overflow-x:auto;
    font-size:14px;
  }
  .article-table th,
  .article-table td{
    padding:10px;
  }
  .article-callout,
  .article-cta{
    padding:23px;
  }
}
