/* Service specialties and planning guides share the established site typography. */
.topic-discovery{padding-block:44px 50px;border-top:1px solid var(--line)}
.topic-discovery>h2{font-size:38px;max-width:800px;margin-bottom:28px}
.topic-discovery>.eyebrow{margin-bottom:15px}
.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}
.discovery-grid>a{display:block;min-width:0;border-top:1px solid var(--line);padding:24px 0 26px}
.discovery-grid h3{font-size:29px;line-height:1.2;color:var(--navy)}
.discovery-grid p{font-size:15px;line-height:1.8;color:var(--muted);margin-top:13px}
.discovery-action{display:inline-block;font-size:13px;color:var(--navy);margin-top:17px;text-decoration:underline;text-underline-offset:5px}
.discovery-grid>a:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.discovery-grid:has(>a:only-child){grid-template-columns:minmax(0,1fr);max-width:720px}
.commercial-page .topic-discovery{color:var(--ink)}
.expansion-page .page-intro{max-width:1100px;padding-bottom:39px}
.expansion-page .page-intro h1{max-width:1020px}
.expansion-page .page-lead{max-width:820px}
.expansion-hero img{width:100%;height:auto;max-height:520px;object-fit:contain;background:var(--linen)}
.expansion-hero figcaption{max-width:900px;font-size:13px;line-height:1.75;color:var(--muted);padding-top:13px}
.topic-jump-links{display:flex;flex-wrap:wrap;gap:10px 27px;border-block:1px solid var(--line);padding-block:23px;margin-top:35px}
.topic-jump-links a{min-width:0;max-width:100%;font-size:13px;line-height:1.65;text-decoration:underline;text-underline-offset:4px;color:var(--navy);padding-block:3px;overflow-wrap:anywhere}
.expansion-layout{grid-template-columns:minmax(0,1.9fr) minmax(230px,.8fr);gap:7%;align-items:start;padding-top:40px}
.expansion-layout>article,.expansion-layout>aside{min-width:0}
.expansion-layout .content-section:first-child{border-top:0;padding-top:0}
.expansion-layout .content-section h2{font-size:36px;line-height:1.2}
.expansion-layout .content-section{scroll-margin-top:20px}
.expansion-aside{position:sticky;top:24px}
.expansion-aside h2{font-size:31px;line-height:1.2;margin-bottom:23px}
.expansion-aside nav{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.expansion-aside nav a{font-size:14px;max-width:100%;overflow-wrap:anywhere}
.aside-contact{border-top:1px solid var(--line);margin-top:30px;padding-top:23px}
.aside-contact p{font-size:13px;line-height:1.8}
.aside-contact>a{display:inline-block;font-family:var(--serif);font-size:28px;color:var(--navy);margin-top:13px}
.planning-table{width:100%;max-width:100%;border-collapse:collapse;table-layout:fixed;margin-block:25px 9px;font-size:14px;line-height:1.75}
.planning-table caption{text-align:left;font-weight:500;color:var(--navy);margin-bottom:13px}
.planning-table th,.planning-table td{text-align:left;vertical-align:top;padding:16px 14px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.planning-table thead th{background:var(--linen);font-weight:500;color:var(--navy)}
.planning-table tbody th{font-weight:500;color:var(--ink)}
.planning-table td{color:#5e574e}
.expansion-layout .editorial-quote{padding-block:22px 12px}
.expansion-layout .editorial-quote blockquote{font-size:28px}
@media(max-width:1000px){
  .discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px}
  .expansion-layout{grid-template-columns:minmax(0,1.5fr) minmax(210px,1fr);gap:5%}
  .expansion-aside{padding:24px}
  .expansion-aside h2{font-size:28px}
  .expansion-layout .content-section h2{font-size:33px}
}
@media(max-width:800px){
  .expansion-layout{display:block}
  .expansion-aside{position:static;margin-top:30px}
}
@media(max-width:650px){
  .topic-discovery{padding-block:33px 31px}
  .topic-discovery>h2{font-size:33px;margin-bottom:23px}
  .discovery-grid{grid-template-columns:minmax(0,1fr)}
  .discovery-grid>a{padding-block:23px}
  .discovery-grid h3{font-size:28px}
  .expansion-page .page-intro{padding-bottom:28px}
  .expansion-page .page-intro h1{font-size:40px;line-height:1.1}
  .expansion-hero figcaption{font-size:12px}
  .topic-jump-links{gap:8px 18px;margin-top:25px;padding-block:17px}
  .topic-jump-links a{font-size:12px}
  .expansion-layout{padding-top:29px}
  .expansion-layout .content-section h2{font-size:31px}
  .planning-table{font-size:13px;line-height:1.65}
  .planning-table th,.planning-table td{padding:12px 8px}
  .expansion-layout .editorial-quote blockquote{font-size:25px}
}
