.seo-page .page-hero { padding:150px 0 72px; background:var(--off); }
.seo-page .breadcrumbs { display:flex; gap:10px; flex-wrap:wrap; list-style:none; padding:0; margin:0 0 32px; color:var(--text); font-size:12px; }
.seo-page .breadcrumbs a { text-decoration:underline; text-underline-offset:3px; }
.seo-page .page-hero h1 { max-width:900px; font-size:clamp(38px,4.7vw,64px); }
.seo-page .page-hero .lead { max-width:790px; font-size:20px; margin:26px 0 30px; }
.seo-page .page-hero .eyebrow { margin-bottom:18px; }
.seo-page .editorial { max-width:820px; margin:auto; }
.seo-page .reading-section { padding:66px 0; }
.seo-page .reading-section:nth-child(odd) { background:var(--off); }
.seo-page .reading-section h2 { font-size:clamp(28px,3vw,40px); line-height:1.2; letter-spacing:-.025em; margin:0 0 24px; }
.seo-page .reading-section h3 { font-size:21px; margin:26px 0 12px; }
.seo-page .reading-section p { line-height:1.85; }
.seo-page .reading-section a { text-decoration:underline; text-underline-offset:4px; color:var(--navy); }
.seo-page .reading-section li { margin-bottom:12px; }
.seo-page .service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:30px; }
.seo-page .service-box { padding:28px; border:1px solid var(--line); background:#fff; border-radius:10px; }
.seo-page .service-box h3 { margin-top:0; }
.seo-page .service-box p { font-size:15px; }
.seo-page .faq { max-width:820px; margin:auto; }
.seo-page .faq details { border-bottom:1px solid var(--line); padding:20px 0; }
.seo-page .faq summary { cursor:pointer; font-weight:600; color:var(--navy); }
.seo-page .faq details p { margin:16px 0 0; }
.seo-page .bio-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:64px; align-items:center; }
.seo-page .bio-photo { width:100%; max-width:370px; aspect-ratio:4/5; object-fit:cover; border-radius:12px; }
.seo-page .byline { font-size:13px; color:var(--text); }
.seo-page .review-notice { background:#fff1d7; padding:20px; border:1px solid #b88a3b; margin-bottom:28px; }
.seo-page .related { display:flex; gap:16px 28px; flex-wrap:wrap; margin-top:24px; }
@media(max-width:820px) {
 .seo-page .service-grid { grid-template-columns:1fr; }
 .seo-page .bio-layout { grid-template-columns:1fr; gap:32px; }
 .seo-page .bio-photo { max-height:420px; margin:auto; }
 .seo-page .page-hero { padding-top:112px; }
}
@media(max-width:560px) {
 .seo-page .page-hero .lead { font-size:17px; }
 .seo-page .reading-section { padding:48px 0; }
 .seo-page .page-hero h1 { font-size:36px; }
}
