/* Approved editorial rhythm A: current PN brand and assets, lighter reading hierarchy. */
.kb-editorial-index .kb-editorial-hero { gap:40px; margin:28px 0 36px; }
.kb-editorial-index .kb-editorial-intro { padding:0; }
.kb-editorial-index .kb-editorial-intro>.eyebrow { margin-bottom:16px; }
.kb-editorial-index .kb-editorial-intro h1 { font-size:clamp(36px,3.5vw,49px); margin-bottom:16px; }
.kb-editorial-index .kb-editorial-intro>p { line-height:1.7; }
.kb-editorial-index .kb-editorial-actions { margin-top:20px; }
.kb-editorial-index .kb-editorial-signature { margin-top:23px; padding-top:16px; }
.kb-editorial-index .kb-editorial-visual { height:330px; border-radius:14px; }
.kb-editorial-index .kb-feature { margin-bottom:44px; }
.kb-editorial-index .kb-grid { gap:44px 32px; }
.kb-editorial-index .kb-card { border:0; border-bottom:1px solid #dce5df; border-radius:0; padding-bottom:24px; box-shadow:none; overflow:visible; }
.kb-editorial-index .kb-card:hover { transform:none; box-shadow:none; }
.kb-editorial-index .kb-card .kb-image { width:100%; min-width:0; min-height:0; height:auto; aspect-ratio:2.05; border-radius:10px; }
.kb-editorial-index .kb-card .kb-image img { display:block; width:100%; height:100%; object-fit:cover; }
.kb-editorial-index .kb-card-body { padding:18px 0 0; }
.kb-editorial-index .kb-card .kb-meta { margin:0 0 11px; font-size:12px; }
.kb-editorial-index .kb-card .kb-zone,.kb-editorial-index .kb-card .kb-self-promo { margin-bottom:12px; }
.kb-editorial-index .kb-card h3 { font-size:22px; line-height:1.35; overflow-wrap:anywhere; }
.kb-editorial-index .kb-card-body>p { font-size:15px; line-height:1.7; -webkit-line-clamp:2; }
.kb-editorial-index .kb-card .kb-byline { margin-top:20px; padding-top:0; border:0; font-size:12px; font-weight:500; }
.kb-editorial-index .kb-card .kb-byline small { font-size:11px; }
.kb-editorial-index .kb-sponsor { font-size:12px; line-height:1.7; }
.kb-editorial-index .kb-card a:focus-visible { outline:3px solid var(--green-dark); outline-offset:4px; border-radius:3px; }
/* Help already has search, role and topic controls; give those priority. */
#pn-help .pn-help-breadcrumbs { margin-bottom:22px; }
#pn-help .pn-help-hero { align-items:flex-start; margin-bottom:22px; }
#pn-help .pn-help-eyebrow { margin-bottom:12px; }
#pn-help h1 { font-size:clamp(30px,3.2vw,42px); margin-bottom:14px; }
#pn-help .pn-help-total { gap:6px; padding-left:0; border:0; margin-top:28px; color:var(--help-muted); }
#pn-help .pn-help-total strong { font-size:16px; letter-spacing:0; }
#pn-help .pn-help-total span { max-width:110px; font-size:12px; }
/* Keep conditions visible and calculator explanations next to the calculator. */
.pn-project-pricing .cp-navigation { margin-bottom:22px; }
.pn-project-pricing .pricing-head { max-width:840px; margin-bottom:24px; }
.pn-project-pricing .pricing-head h1 { font-size:clamp(30px,3vw,38px); }
.pn-project-pricing .pricing-head .badge { margin-bottom:12px; }
.pn-project-pricing .pricing-head p { margin-top:14px; line-height:1.65; }
.pn-project-pricing .trial-card { margin-bottom:30px; padding:20px 24px; }
.pn-project-pricing .cp-heading { margin-bottom:28px; }
.pn-project-pricing .cp-heading h1 { font-size:clamp(30px,3.3vw,42px); margin-bottom:15px; }
@media(max-width:1150px){
 .kb-editorial-index .kb-grid { gap:40px 26px; }
 .kb-editorial-index .kb-editorial-hero { gap:28px; }
 .kb-editorial-index .kb-card h3 { font-size:21px; }
}
@media(max-width:800px){
 .kb-editorial-index .kb-editorial-hero { grid-template-columns:1fr; gap:24px; }
 .kb-editorial-index .kb-editorial-visual { height:240px; }
}
@media(max-width:650px){
 .kb-editorial-index .kb-grid { gap:34px; }
 .kb-editorial-index .kb-card h3 { font-size:22px; }
 .kb-editorial-index .kb-card-body { padding-top:16px; }
 .kb-editorial-index .kb-editorial-intro h1 { font-size:36px; }
 .kb-editorial-index .kb-editorial-visual { display:none; }
 .kb-editorial-index .kb-feature { margin-bottom:34px; }
 .kb-editorial-index .kb-feature-image .kb-image { height:auto; min-height:0; aspect-ratio:1.75; }
 .kb-editorial-index .kb-feature-image .kb-image img { display:block; position:absolute; inset:0; }
 .pn-project-pricing .trial-card { padding:19px; }
}
