/* Shared navigation and editorial solution pages. */
.nav-links a[aria-current="page"]{color:#0b513c;text-decoration:underline;text-underline-offset:7px}
.solutions-menu{position:relative;font-size:.875rem;font-weight:500}
.solutions-menu summary{display:flex;align-items:center;gap:9px;min-height:48px;cursor:pointer;list-style:none}
.solutions-menu summary::-webkit-details-marker{display:none}
.solutions-menu summary:after{content:"";width:6px;height:6px;border-bottom:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.solutions-menu[open] summary:after{transform:rotate(225deg);margin-top:4px}
.solutions-menu summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.solutions-dropdown{position:absolute;top:100%;left:-24px;width:320px;max-width:calc(100vw - 40px);padding:12px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.solutions-dropdown a{display:block;padding:11px 12px;white-space:normal;line-height:1.5}
.solutions-dropdown a:hover{background:var(--paper)}
.solutions-dropdown a:first-child{border-bottom:1px solid var(--line);margin-bottom:6px;padding-bottom:16px}
.footer-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr);gap:32px}
.solution-hero{background:var(--ink);color:#fff;padding:28px 0 76px}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:.875rem;color:rgba(255,255,255,.7);margin-bottom:64px;line-height:1.5}
.breadcrumbs a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.breadcrumbs [aria-current]{color:#fff}
.solution-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.25fr);align-items:center;gap:clamp(36px,7vw,100px)}
.solution-hero .eyebrow{color:var(--gold-2);font-size:.8125rem;letter-spacing:.11em}
.solution-hero h1{font-size:clamp(2.4rem,4.6vw,4.4rem);margin:0 0 28px;max-width:850px}
.solution-lead{font-size:1.125rem;max-width:750px;color:rgba(255,255,255,.8);margin:0 0 32px;line-height:1.8}
.solution-index{border-left:1px solid rgba(255,255,255,.25);padding-left:32px;color:var(--gold-2)}
.solution-index span{display:block;font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase}
.solution-index strong{display:block;font:400 clamp(4rem,7vw,7rem)/1.4 Sintony,Arial,sans-serif}
.solution-content{background:#fff;scroll-margin-top:24px}
.solution-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.55fr);gap:clamp(40px,7vw,100px);align-items:start}
.solution-sidebar{position:sticky;top:32px}
.solution-sidebar h2{font-size:clamp(1.7rem,2.6vw,2.4rem);margin:0 0 22px}
.solution-sidebar>p:not(.eyebrow),.audience p{color:var(--muted);font-size:1rem}
.audience{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}
.audience h3,.page-contents h3,.source-note h3,.mandate-note h3{font:600 .875rem/1.5 Inter,Arial,sans-serif;margin:0 0 10px}
.audience p{margin:0;line-height:1.8}
.page-contents{border-top:1px solid var(--line);margin-top:26px;padding-top:22px}
.page-contents a{display:block;font-size:.875rem;color:var(--muted);padding:7px 0;line-height:1.5}
.page-contents a:hover{color:#0b513c;text-decoration:underline;text-underline-offset:4px}
.capability{display:grid;grid-template-columns:28px minmax(0,1fr);gap:22px;padding:38px 0;border-top:1px solid var(--line);scroll-margin-top:28px}
.capability:first-child{padding-top:26px;border-top:2px solid var(--gold)}
.capability-number{color:#916b30;font-size:.875rem;padding-top:6px}
.capability h2{font-size:clamp(1.4rem,2vw,1.8rem);font-weight:400;line-height:1.4;margin:0 0 16px}
.capability p{color:var(--muted);margin:0 0 20px}
.capability ul{margin:0;padding-left:20px;display:grid;gap:9px}
.capability li{padding-left:5px;line-height:1.65}
.capability li::marker{color:var(--gold)}
.mandate-note{background:var(--paper);border-left:2px solid var(--gold);padding:24px 28px;margin-top:10px}
.mandate-note p,.source-note p{color:var(--muted);margin:0;font-size:.9375rem}
.source-note{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.source-note a{display:block;margin-top:14px;color:#0b513c;text-decoration:underline;text-underline-offset:4px;font-size:.875rem}
.source-note .source-date{margin-top:18px;font-size:.8125rem}
.related-solutions .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.related-solutions .service{min-height:330px}
.related-solutions .service h3{margin-top:24px}
.all-solutions-link{display:inline-block;margin-top:28px;border-bottom:1px solid var(--gold);font-size:.9375rem}
@media(max-width:1200px){
  .nav{min-height:90px}.menu{display:block}
  .nav-links{position:absolute;top:100%;left:var(--gutter);right:var(--gutter);background:#fff;border:1px solid var(--line);padding:18px;display:none;flex-direction:column;align-items:stretch;gap:4px;box-shadow:var(--shadow);max-height:calc(100dvh - 110px);overflow-y:auto}
  .nav-links.open{display:flex}.nav-links a{padding:12px;white-space:normal}.nav-cta{text-align:center}
  .solutions-menu summary{padding:12px;justify-content:space-between}
  .solutions-dropdown{position:static;width:auto;max-width:none;box-shadow:none;border:0;border-left:2px solid var(--gold);padding:0 0 0 10px;margin:4px 12px 12px}
  .solutions-dropdown a:first-child{padding-bottom:12px}
}
@media(max-width:900px){
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}
  .solution-layout{grid-template-columns:minmax(0,1fr);gap:40px}.solution-sidebar{position:static}
  .page-contents{display:none}.solution-sidebar>p:not(.eyebrow){max-width:720px}
  .solution-hero-grid{grid-template-columns:minmax(0,1fr)}.solution-index{display:none}
  .breadcrumbs{margin-bottom:48px}.solution-hero{padding-bottom:56px}
}
@media(max-width:620px){
  .nav{min-height:82px}.solution-hero h1{font-size:clamp(2.1rem,8.5vw,3rem)}
  .solution-lead{font-size:1rem}.breadcrumbs{font-size:.8125rem;margin-bottom:36px}
  .solution-hero .eyebrow{font-size:.75rem;letter-spacing:.07em}
  .capability{grid-template-columns:minmax(0,1fr);gap:10px;padding:28px 0}.capability-number{padding:0}
  .related-solutions .service-grid,.footer-grid{grid-template-columns:minmax(0,1fr)}.footer-brand{grid-column:auto}
  .related-solutions .service{min-height:0}.mandate-note{padding:22px}
}
