/* Shared styles for the public evidence tools and guides.
   These pages were built one at a time with the same block of CSS inlined in
   each, which is how two pages that look identical stop being identical. One
   file, linked from every one of them, and page-specific rules stay in the page.
   The design language is the site's: 3px black rules, hard offset shadows,
   Montserrat 900 uppercase headings, pink for emphasis only. */
:root{--pink:#f62aa0;--green:#5eb229;--orange:#ff6701;--blue:#00a5e9;--black:#0a0a0a;--white:#fff;--off-white:#fafafa}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Montserrat',system-ui,sans-serif;font-weight:500;color:var(--black);background:var(--white);line-height:1.5;padding-top:68px}
a{text-decoration:none;color:inherit}

.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;font-weight:900;font-size:11px;
  letter-spacing:.18em;text-transform:uppercase;color:var(--pink)}
.eyebrow::before{content:'';width:10px;height:10px;background:var(--pink);border-radius:50%}
.btn-primary,.btn-secondary{display:inline-flex;align-items:center;gap:8px;font-weight:900;font-size:13px;
  letter-spacing:.06em;text-transform:uppercase;padding:16px 32px;border:3px solid var(--black);
  box-shadow:5px 5px 0 var(--black);transition:box-shadow .12s,transform .12s;cursor:pointer}
.btn-primary{background:var(--pink);color:#fff}
.btn-secondary{background:transparent;color:var(--black)}
.btn-primary:hover,.btn-secondary:hover{box-shadow:2px 2px 0 var(--black);transform:translate(3px,3px)}
.inner{max-width:1200px;margin:0 auto}
.crumb{padding:16px 60px;border-bottom:3px solid var(--black);font-weight:700;font-size:11px;
  letter-spacing:.1em;text-transform:uppercase;color:#777;background:var(--off-white)}
.crumb b{color:var(--black)}
.crumb .sep{color:var(--pink);margin:0 9px}

.hero{padding:76px 60px 66px;border-bottom:3px solid var(--black)}
.hero-headline{font-weight:900;font-size:clamp(40px,5.6vw,76px);line-height:.84;letter-spacing:-.066em;
  text-transform:uppercase;margin-bottom:30px;max-width:1000px}
.hero-headline em{font-style:normal;color:var(--pink)}
.answer{border-left:8px solid var(--pink);padding:6px 0 6px 26px;max-width:900px;margin-bottom:34px}
.answer p{font-weight:600;font-size:19px;line-height:1.6;color:#222}
.answer p+p{margin-top:14px}
.answer .cap{font-weight:900;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--pink);margin-bottom:10px}
.reviewed{font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#888;
  display:flex;gap:22px;flex-wrap:wrap}
.reviewed span{display:inline-flex;align-items:center;gap:8px}
.reviewed span::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--green)}

section.pad{padding:84px 60px;border-bottom:3px solid var(--black)}
h2.sh{font-weight:900;font-size:clamp(28px,3.6vw,46px);line-height:.87;letter-spacing:-.056em;
  text-transform:uppercase;margin-bottom:18px}
h2.sh em{font-style:normal;color:var(--pink)}
.lede{font-weight:500;font-size:16.5px;line-height:1.68;color:#555;max-width:760px;margin-bottom:44px}

.article{max-width:820px}
.article p{font-weight:500;font-size:16.5px;line-height:1.72;color:#333;margin-bottom:18px}
.article h3{font-weight:900;font-size:19px;letter-spacing:-.02em;text-transform:uppercase;margin:34px 0 12px}
.article a{color:var(--pink);font-weight:800}
.article ul,.article ol{margin:0 0 18px 24px}
.article li{font-weight:500;font-size:16.5px;line-height:1.7;color:#333;margin-bottom:12px}

/* headline stats */
.statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-bottom:44px}
.statcard{border:3px solid var(--black);background:#fff;box-shadow:6px 6px 0 var(--black);padding:22px 24px}
.statcard .num{font-weight:900;font-size:clamp(32px,4vw,44px);letter-spacing:-.04em;color:var(--pink);line-height:1}
.statcard .lbl{font-weight:800;text-transform:uppercase;font-size:11.5px;letter-spacing:.06em;margin-top:10px}
.statcard .note{font-size:12.5px;color:#666;font-weight:600;margin-top:6px;line-height:1.5}

/* callout */
.callout{border:3px solid var(--black);background:var(--off-white);padding:26px 30px;margin:30px 0;max-width:820px}
.callout .cap{font-weight:900;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--pink);margin-bottom:10px}
.callout p{font-weight:600;font-size:16px;line-height:1.65;color:#222;margin-bottom:12px}
.callout p:last-child{margin-bottom:0}

/* source map */
.srcmap{width:100%;border-collapse:collapse;font-size:14px;max-width:820px}
.srcmap th,.srcmap td{text-align:left;padding:11px 12px;border-bottom:1px solid #e6e6e6;vertical-align:top}
.srcmap th{font-weight:900;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;width:190px;color:#666}
.srcmap td{font-weight:500;color:#333;line-height:1.6}
.srcmap a{color:var(--pink);font-weight:800}

.faq details{border-bottom:1px solid #e0e0e0;padding:20px 0;max-width:820px}
.faq summary{font-weight:900;font-size:17px;letter-spacing:-.02em;cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--pink);font-weight:900;font-size:22px;line-height:1}
.faq details[open] summary::after{content:'\2212'}
.faq details p{font-weight:500;font-size:16px;line-height:1.7;color:#444;margin-top:14px}
.faq details a{color:var(--pink);font-weight:800}

.readnext{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;max-width:1000px}
.readnext a{border:3px solid var(--black);padding:22px 24px;display:block;transition:box-shadow .12s,transform .12s;background:#fff}
.readnext a:hover{box-shadow:6px 6px 0 var(--pink);transform:translate(-2px,-2px)}
.readnext .rn-lbl{font-weight:900;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--pink);margin-bottom:8px}
.readnext .rn-title{font-weight:900;font-size:16px;letter-spacing:-.02em;line-height:1.25;margin-bottom:8px}
.readnext .rn-desc{font-weight:500;font-size:13.5px;color:#666;line-height:1.55}

.author{display:flex;gap:26px;align-items:center;border:3px solid var(--black);padding:32px 36px;background:var(--off-white);max-width:820px}
.avatar{width:74px;height:74px;flex-shrink:0;background:var(--pink);color:#fff;font-weight:900;font-size:26px;
  display:inline-flex;align-items:center;justify-content:center}
.author h4{font-weight:900;font-size:15px;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:6px}
.author p{font-weight:500;font-size:13.3px;line-height:1.6;color:#555}
.author p+p{margin-top:8px}

.final-cta{background:var(--black);padding:104px 60px;text-align:center;border-bottom:3px solid var(--black)}
.final-headline{font-weight:900;font-size:clamp(36px,5.4vw,72px);line-height:.84;letter-spacing:-.066em;
  text-transform:uppercase;color:#fff;margin-bottom:26px}
.final-headline em{font-style:normal;color:var(--pink)}
.final-body{font-weight:500;font-size:16px;color:rgba(255,255,255,.6);max-width:640px;margin:0 auto 42px;line-height:1.65}
footer{background:var(--black);padding:44px 60px;border-top:3px solid var(--pink);text-align:center}
.footer-links{display:flex;gap:24px;justify-content:center;font-weight:800;font-size:11px;letter-spacing:.09em;
  text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:16px;flex-wrap:wrap}
.footer-legal{font-weight:400;font-size:10px;color:rgba(255,255,255,.28);line-height:1.6;max-width:760px;margin:0 auto}

@media(max-width:980px){
  .hero,section.pad,.crumb,.final-cta,footer{padding-left:22px;padding-right:22px}
  .hero{padding-top:52px;padding-bottom:46px}
  section.pad{padding-top:56px;padding-bottom:56px}
  .explorer{padding:18px}
  .dimtable tbody th{width:38%}
  .srcmap th{width:130px}
}
