/* Public design foundation: first applied to the homepage, then page by page. */
.public-home{--site-max:1480px;--section-space:clamp(48px,5vw,76px)}
.public-home .section-inner,.public-home .site-footer-inner{width:100%}
.public-home .section{padding-left:clamp(24px,3.5vw,64px);padding-right:clamp(24px,3.5vw,64px)}
.public-home .section-head{max-width:820px;margin-left:0;text-align:left}
.public-home .section-head p{margin-left:0}
.public-home .topnav{padding-left:clamp(24px,3.5vw,64px);padding-right:clamp(24px,3.5vw,64px)}
.public-home a:focus-visible,.public-home button:focus-visible,.public-home input:focus-visible{outline:3px solid #2e79b7;outline-offset:4px}
.public-home .home-opening{padding:52px clamp(24px,3.5vw,64px) 56px;text-align:left;overflow:visible}
.home-opening-inner{max-width:1480px;margin:auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.9fr);gap:clamp(32px,4vw,72px);align-items:center}
.home-opening-copy{min-width:0}
.public-home .home-opening h1{font-size:clamp(38px,4.1vw,62px);line-height:1.1;letter-spacing:-.04em;margin:0 0 20px;max-width:760px;text-wrap:balance}
.public-home .home-opening .lede{font-size:18px;line-height:1.65;margin:0 0 26px;max-width:690px}
.public-home .home-opening .search-card{max-width:none;margin:0;padding:22px;box-shadow:0 12px 36px #071c3026}
.public-home .home-opening #searchBtn{min-width:140px;white-space:nowrap}
.public-home .home-opening-note{font-size:13px;line-height:1.6;color:#c7dde7;margin:18px 0 0}
.home-report-example{background:#fff;color:#1d2935;border:1px solid #d8e3ea;border-radius:18px;padding:28px;box-shadow:0 18px 48px #071c3026;min-width:0}
.home-example-top{display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;color:#35616c;text-transform:uppercase;letter-spacing:.05em}
.home-example-tag{background:#edf5f5;border-radius:4px;padding:6px 8px;font-size:10px}
.home-report-example h2{font-size:30px;line-height:1.2;letter-spacing:-.03em;margin:22px 0 10px;color:#153653}
.home-example-intro{font-size:14px;color:#5f6f7f;margin:0 0 18px;line-height:1.6}
.home-example-hazards{display:flex;flex-wrap:wrap;gap:7px;padding-bottom:20px;border-bottom:1px solid #d8e3ea}
.home-example-hazards span{font-size:11px;font-weight:700;border:1px solid #d8e3ea;border-radius:5px;padding:6px 8px;color:#153653}
.home-example-steps{list-style:none;padding:0;margin:0}
.home-example-steps li{display:flex;gap:14px;margin:19px 0}
.home-example-steps li>span{font-size:12px;color:#158c8c;font-weight:700;padding-top:3px}
.home-example-steps h3{font-size:15px;margin:0 0 5px;color:#153653}
.home-example-steps p{font-size:13px;line-height:1.65;margin:0;color:#536777}
.home-example-limit{font-size:11px;line-height:1.65;margin:20px 0 0;padding-top:16px;border-top:1px solid #d8e3ea;color:#617485}
@media(min-width:1200px){.public-home .hazard-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.home-opening-inner{grid-template-columns:minmax(0,1fr)}.home-report-example{max-width:760px;width:100%}.public-home .home-opening h1{max-width:800px}.public-home .home-opening .lede{max-width:760px}}
@media(max-width:600px){.public-home .home-opening{padding:34px 20px 40px}.public-home .home-opening h1{font-size:36px}.public-home .home-opening .lede{font-size:16px}.public-home .home-opening .search-card{padding:18px}.home-opening .search-row{flex-direction:column}.home-opening #searchBtn{width:100%;min-height:46px}.home-report-example{padding:22px}.public-home .section{padding-left:20px;padding-right:20px}.home-example-top{flex-wrap:wrap}}

/* Homepage discovery and consumer next steps. */
.home-discovery{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:center}
.home-discovery h2{font-size:clamp(28px,3vw,42px);line-height:1.18;letter-spacing:-.03em;color:var(--navy);margin:0 0 18px}
.home-discovery p{font-size:16px;line-height:1.7;color:var(--muted);max-width:600px;margin:0 0 24px}
.home-discovery .btn{text-decoration:none}
.home-discovery-paths{display:grid;gap:22px}
.home-discovery-paths>div{display:flex;gap:20px;border-bottom:1px solid var(--border);padding-bottom:20px}
.home-discovery-paths>div:last-child{border:0;padding-bottom:0}
.home-discovery-paths>div>span{color:var(--teal);font-weight:700;font-size:14px;padding-top:3px}
.home-discovery-paths h3{margin:0 0 6px;color:var(--navy);font-size:20px}
.home-discovery-paths p{margin:0;font-size:15px}
.home-library-link{margin:24px 0 32px;font-weight:700}
.public-home .professional-details a,.home-library-link a{color:#176277;text-underline-offset:4px}
@media(max-width:800px){.home-discovery{grid-template-columns:1fr}}

.public-home .learn-feature-card h3,.public-home .learn-feature-card p,.public-home .source-showcase-copy p{max-width:none}
.public-home .learn-feature-card h3{font-size:26px;line-height:1.25}
.public-home .home-discovery .eyebrow{color:#176277}

/* Keep printed explanations with their labels; permit long categories to flow. */
@media print {
  .public-home .report-experience,
  .public-home .report-grid,
  .public-home .report-category-body { display: block; }
  .public-home .report-category { overflow: visible; margin: 0 0 16px; box-shadow: none; }
  .public-home .report-category-header { break-inside: avoid; break-after: avoid; page-break-after: avoid; }
  .public-home .report-category-body { padding-top: 12px; }
  .public-home .report-detail { break-inside: avoid; page-break-inside: avoid; margin-bottom: 12px; }
  .public-home .report-detail:last-child { margin-bottom: 0; }
  .public-home .report-detail strong { break-after: avoid; page-break-after: avoid; }
  .public-home .report-banner,
  .public-home .report-summary-card,
  .public-home .report-review-pill,
  .public-home .disclaimer { break-inside: avoid; }
  .public-home .report-toolbar,
  .public-home .report-banner,
  .public-home .report-summary { margin-bottom: 16px; }
  .public-home .report-detail { orphans: 3; widows: 3; }
}
