*,*::before,*::after{box-sizing:border-box}
*{margin:0}
:root{
  --cp-ink:#10233a;--cp-blue:#1c5d99;--cp-sky:#dfeffc;--cp-gold:#f3b33d;
  --cp-paper:#f8f5ef;--cp-white:#fff;--cp-muted:#647283;--cp-line:#d8dee4;
  --cp-serif:"Source Serif 4",Georgia,serif;--cp-sans:"Manrope",sans-serif
}
html{scroll-behavior:smooth}
body{font:16px/1.75 var(--cp-sans);color:var(--cp-ink);background:var(--cp-white);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.cp-header{
  max-width:1200px;height:78px;margin:auto;padding:0 30px;
  display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--cp-line)
}
.cp-logo{display:flex;align-items:center;gap:11px}
.cp-logo-mark{width:38px;height:38px;display:grid;place-items:center;background:var(--cp-ink);color:#fff;font-weight:800}
.cp-logo b,.cp-logo small{display:block;line-height:1.2}
.cp-logo b{font-size:.98rem}
.cp-logo small{color:var(--cp-muted);font-size:.66rem}
.cp-header-link{font-size:.82rem;font-weight:800;color:var(--cp-blue)}
.cp-header-link span{color:var(--cp-gold);margin-left:4px}
.cp-hero{max-width:1200px;margin:auto;padding:70px 30px 0;display:grid;grid-template-columns:1fr .9fr;gap:62px;align-items:end}
.cp-hero-copy{padding-bottom:58px}
.cp-rubric{margin-bottom:21px;color:var(--cp-blue);font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.cp-hero h1{font:700 clamp(2.8rem,6vw,5.7rem)/.98 var(--cp-serif);letter-spacing:-.045em}
.cp-hero h1 em{color:var(--cp-blue);font-style:normal}
.cp-deck{max-width:650px;margin-top:25px;color:var(--cp-muted);font-size:1.08rem}
.cp-meta{display:flex;gap:9px 22px;flex-wrap:wrap;margin-top:28px;color:#8793a0;font-size:.65rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.cp-hero-image{background:var(--cp-sky);padding:15px 15px 0}
.cp-hero-image img{width:100%;aspect-ratio:4/3;object-fit:cover}
.cp-hero-image figcaption{padding:11px 0 13px;color:var(--cp-muted);font-size:.7rem}
.cp-layout{max-width:1040px;margin:0 auto;padding:66px 30px 110px;display:grid;grid-template-columns:175px minmax(0,720px);gap:65px}
.cp-contents{align-self:start;position:sticky;top:25px}
.cp-contents>span{display:block;margin-bottom:12px;color:var(--cp-blue);font-size:.65rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.cp-contents a{display:block;padding:9px 0;border-top:1px solid var(--cp-line);color:var(--cp-muted);font-size:.72rem;line-height:1.4}
.cp-contents a:hover{color:var(--cp-blue)}
.cp-body>p{margin-bottom:19px;color:#43546a;font-size:1rem}
.cp-body .cp-lead{color:var(--cp-ink);font:500 1.25rem/1.65 var(--cp-serif)}
.cp-disclosure{padding:17px 19px;border-left:4px solid var(--cp-gold);background:#fff8e9;color:#5f5746!important;font-size:.78rem!important;line-height:1.65}
.cp-disclosure a{text-decoration:underline;font-weight:700}
.cp-body section{scroll-margin-top:30px}
.cp-section-no{margin-top:55px;color:var(--cp-gold);font-size:.68rem;font-weight:800;letter-spacing:.14em}
.cp-body h2{margin:8px 0 17px;font:700 clamp(1.8rem,4vw,2.7rem)/1.15 var(--cp-serif);letter-spacing:-.02em}
.cp-body h3{font-size:1rem}
.cp-body section>p{margin-bottom:18px;color:#43546a}
.cp-body blockquote{margin:30px 0;padding:24px 0;border-top:2px solid var(--cp-ink);border-bottom:1px solid var(--cp-line);font:700 1.28rem/1.55 var(--cp-serif)}
.cp-audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:25px 0}
.cp-audience-grid>div{padding:20px;background:var(--cp-paper);border-top:3px solid var(--cp-blue)}
.cp-audience-grid b{font-size:.88rem}
.cp-audience-grid p{margin-top:6px;color:var(--cp-muted);font-size:.78rem;line-height:1.55}
.cp-wide-figure{margin:48px 0}
.cp-wide-figure img{width:100%;max-height:470px;object-fit:cover}
.cp-wide-figure figcaption{margin-top:9px;color:var(--cp-muted);font-size:.72rem}
.cp-format-list{list-style:none;padding:0;margin:25px 0;border-top:1px solid var(--cp-line)}
.cp-format-list li{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid var(--cp-line)}
.cp-format-list li>span{color:var(--cp-blue);font-size:.7rem;font-weight:800}
.cp-format-list b{font-size:.9rem}
.cp-format-list p{margin-top:3px;color:var(--cp-muted);font-size:.8rem}
.cp-checklist{margin:25px 0;padding:25px;background:var(--cp-sky)}
.cp-checklist h3{margin-bottom:12px}
.cp-checklist p{margin:7px 0;color:#43546a;font-size:.84rem}
.cp-checklist span{margin-right:8px;color:var(--cp-blue);font-weight:800}
.cp-provider{margin-top:58px;padding:34px;background:var(--cp-ink);color:#fff}
.cp-provider-top{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
.cp-provider-label{color:var(--cp-gold);font-size:.65rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.cp-provider-domain{color:#9eb4cb;font-size:.72rem}
.cp-provider h2{color:#fff;margin-top:17px}
.cp-provider>p{color:#c4d0dc!important}
.cp-provider ul{margin:22px 0 24px;padding-left:19px}
.cp-provider li{margin:7px 0;color:#e3eaf0;font-size:.84rem}
.cp-provider-note{font-size:.72rem!important}
.cp-primary{display:inline-flex;align-items:center;gap:8px;margin-top:7px;padding:14px 18px;background:var(--cp-gold);color:var(--cp-ink);font-size:.8rem;font-weight:800}
.cp-primary:hover{background:#ffca61}
.cp-final{margin-top:35px!important;padding:34px;background:var(--cp-paper)}
.cp-final>span{color:var(--cp-blue);font-size:.65rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.cp-final h2{margin-top:12px}
.cp-final a{display:inline-block;margin-top:5px;color:var(--cp-blue);font-weight:800}
.cp-footer{padding:45px max(30px,calc((100vw - 1140px)/2));display:flex;justify-content:space-between;gap:35px;background:#091827;color:#93a4b5;font-size:.72rem}
.cp-footer b{display:block;color:#fff;font-size:.9rem}
.cp-footer p{max-width:430px;margin-top:5px}
.cp-footer a{color:#dce5ed;text-decoration:underline}
@media(max-width:850px){
  .cp-hero{grid-template-columns:1fr;gap:0}.cp-hero-copy{padding-bottom:42px}.cp-hero-image{max-width:700px}
  .cp-layout{grid-template-columns:1fr}.cp-contents{display:none}
}
@media(max-width:650px){
  .cp-header{height:70px;padding:0 18px}.cp-logo small{display:none}.cp-header-link{font-size:.74rem}
  .cp-hero{padding:50px 20px 0}.cp-hero h1{font-size:clamp(2.5rem,14vw,4.2rem)}
  .cp-layout{padding:42px 20px 72px}.cp-audience-grid{grid-template-columns:1fr}
  .cp-provider,.cp-final{padding:25px 21px}.cp-footer{padding:38px 20px;display:block}.cp-footer>div+div{margin-top:24px}
}
