.breadcrumb { display: flex; flex-wrap: wrap; gap: 7px 12px; color: var(--muted); font-size: 12px; margin-bottom: clamp(35px,5vw,68px); }
.breadcrumb a:hover { color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.breadcrumb ol { display: flex; flex-wrap: wrap; gap: 7px 12px; padding: 0; list-style: none; }
.breadcrumb li + li::before { content: "/"; margin-right: 12px; color: #7f8993; }
.service-hero { padding-block: 30px clamp(64px,8vw,118px); }
.service-hero h1 { max-width: 1050px; margin-block: 22px 28px; font-size: clamp(3.1rem,6.5vw,6.7rem); text-wrap: balance; }
.service-lede { max-width: 780px; color: #c7cbd0; font-size: clamp(18px,1.65vw,22px); }
.service-audience { margin-top: 28px; color: var(--gold); font-size: 13px; }
.service-body { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(240px,.8fr); align-items: start; gap: clamp(42px,8vw,120px); }
.service-main { min-width: 0; max-width: 760px; }
.service-main h2 { margin: 46px 0 18px; font-size: clamp(2rem,3.1vw,3rem); line-height: 1.15; letter-spacing: -.03em; }
.service-main h2:first-child { margin-top: 0; }
.service-main h3 { margin: 30px 0 12px; font-size: 1.5rem; }
.service-main p { margin-block: 0 18px; color: #c7cbd0; }
.light .service-main p { color: #515257; }
.service-main ul, .service-main ol { padding-left: 22px; margin-bottom: 22px; color: #515257; }
.service-main li + li { margin-top: 9px; }
.service-main a, .service-aside a:not(.button), .service-related a { text-decoration: underline; text-underline-offset: 4px; }
.service-main a { color: var(--gold); }
.light .service-main a { color: #75542e; }
.service-main a:hover { color: #292b2e; }
.service-aside { padding-top: 24px; border-top: 1px solid #9b8669; }
.service-aside h2 { margin-block: 18px; font-size: 2.1rem; letter-spacing: -.025em; line-height: 1.15; }
.service-aside ul { padding-left: 18px; margin-bottom: 26px; color: #515257; font-size: 14px; }
.service-aside li { padding-bottom: 10px; }
.service-aside p:not(.eyebrow) { color: #c7cbd0; font-size: 14px; margin-block: 20px; }
.light .service-aside p:not(.eyebrow) { color: #515257; }
.service-aside .button { background: #17232f; color: var(--paper); }
.service-aside .button:hover { background: #2c3c4d; }
.service-related { padding-block: clamp(50px,6vw,90px); }
.service-related h2 { font-size: clamp(2.3rem,4vw,3.7rem); margin-bottom: 24px; }
.service-related ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px 36px; }
.service-related a { display: inline-block; color: var(--gold); }
.services-list { border-top: 1px solid #bcb3a2; }
.services-list article { display: grid; grid-template-columns: 45px minmax(0,1fr) minmax(0,.85fr); gap: 20px 40px; padding-block: clamp(30px,4vw,58px); border-bottom: 1px solid #bcb3a2; }
.services-list .service-number { color: #75542e; font-size: 12px; padding-top: 9px; }
.services-list h2 { font-size: clamp(2.1rem,3.8vw,3.5rem); line-height: 1.12; }
.services-list h2 a:hover { color: #795a3a; }
.services-list p { color: #515257; margin-bottom: 18px; }
.services-list .service-detail { color: #75542e; text-decoration: underline; text-underline-offset: 5px; font-size: 14px; font-weight: 700; }
.article-meta { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 28px; color: var(--muted); font-size: 12px; }
.article-meta a { text-decoration: underline; text-underline-offset: 4px; }
.formula { padding-block: 20px; border-block: 1px solid #bcb3a2; margin-block: 24px; font: 500 clamp(18px,2vw,23px)/1.5 var(--sans); }
.service-main .formula { color: #292b2e; }
.article-table { width: 100%; border-collapse: collapse; margin-block: 24px; color: #515257; font-size: 14px; }
.article-table caption { text-align: left; font-weight: 700; color: #292b2e; padding-bottom: 12px; }
.article-table th, .article-table td { text-align: right; padding: 13px 8px; border-bottom: 1px solid #bcb3a2; }
.article-table th { color: #292b2e; }
.article-table th:first-child, .article-table td:first-child { text-align: left; padding-left: 0; }
.article-table th:last-child, .article-table td:last-child { padding-right: 0; }
.service-main .article-note { font-size: 13px; }
.article-sources { border-top: 1px solid #bcb3a2; padding-top: 24px; margin-top: 42px; }
.article-sources h2 { font-size: 1.7rem; }
@media (max-width: 760px) {
  .service-body { grid-template-columns: minmax(0,1fr); gap: 38px; }
  .service-hero h1 { font-size: clamp(2.8rem,10vw,4.5rem); }
  .service-aside { max-width: 550px; }
  .services-list article { grid-template-columns: 24px minmax(0,1fr); gap: 10px 18px; }
  .services-list article > div:last-child { grid-column: 2; }
  .service-related ul { grid-template-columns: 1fr; gap: 16px; }
}
