/* Meeting-led program refinement, scoped to the four service pages. */
.jp-phrase { display: inline-block; white-space: nowrap; }
.strategy-section { padding: 88px 0; color: #132238; background: #fffdf8; }
.strategy-section + .strategy-section { border-top: 1px solid #d9d4ca; }
.strategy-section h2,.strategy-section h3 { word-break: normal; line-break: strict; overflow-wrap: normal; }
.strategy-heading { max-width: 850px; margin-bottom: 36px; }
.strategy-heading h2 { margin: 12px 0 20px; font-family: 'Shippori Mincho',serif; font-size: clamp(26px,3.1vw,42px); line-height: 1.55; font-weight: 600; letter-spacing: .025em; text-wrap: balance; }
.strategy-heading > p:not(.section-kicker) { max-width: 760px; font-size: 17px; line-height: 1.9; }
.strategy-section .section-kicker { color: #8a3a20; }
.strategy-section p { line-height: 1.85; }
.strategy-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.strategy-cards article { padding: 30px 26px; border-top: 3px solid #a64a2b; background: #f7f2e8; }
.strategy-label { display: block; font-size: 14px; line-height: 1.8; letter-spacing: .045em; color: #774028; font-weight: 700; }
.strategy-cards h3 { margin: 18px 0 14px; font-size: 22px; line-height: 1.65; text-wrap: balance; }
.strategy-cards p { margin: 0; font-size: 16px; }
.strategy-note { margin: 24px 0; max-width: 900px; font-size: 15px; color: #4d5660; }
.strategy-section--dark { color: #fffdf8; background: #132238; }
.strategy-section--dark .section-kicker { color: #ebc99c; }
.strategy-section--dark .strategy-cards article { background: #203149; border-color: #deb583; }
.strategy-section--dark .strategy-label { color: #f1cca0; }
.strategy-section--dark .strategy-note { color: #e1e5e9; }
.strategy-editorial { display:grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items:start; }
.strategy-editorial > p { margin:0; font-size:17px; }
.strategy-editorial blockquote { margin:0; padding:24px 0 24px 28px; border-left:3px solid #a64a2b; font-family:'Shippori Mincho',serif; font-size:clamp(22px,2.4vw,30px); line-height:1.8; }
.strategy-band { display:grid; grid-template-columns:1fr 2fr; gap:32px; align-items:start; margin-top:32px; padding:32px; background:#132238; color:#fffdf8; }
.strategy-band h3 { margin:0; font-size:26px; line-height:1.6; }
.strategy-band p { margin:0; font-size:16px; }
.strategy-deliverables { margin:0; }
.strategy-deliverables > div { display:grid; grid-template-columns:180px 1fr; gap:28px; padding:26px 0; border-bottom:1px solid #d9d4ca; }
.strategy-deliverables dt { font-size:22px; font-weight:700; }
.strategy-deliverables dd { margin:0; font-size:17px; line-height:1.85; }
.strategy-platforms { margin:28px 0 0; font-size:16px; font-weight:700; color:#774028; }
.strategy-actions { display:flex; gap:24px; flex-wrap:wrap; align-items:center; margin-top:32px; }
.strategy-steps { list-style:none; counter-reset:steps; padding:0; margin:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; }
.strategy-steps li { counter-increment:steps; border-top:2px solid #a64a2b; padding-top:20px; }
.strategy-steps li::before { content:counter(steps,decimal-leading-zero); display:block; color:#8a3a20; font-family:'Space Grotesk',sans-serif; font-size:32px; margin-bottom:12px; }
.strategy-steps b { display:block; font-size:19px; line-height:1.7; }
.strategy-steps p { font-size:16px; margin:12px 0 0; }
.strategy-fee { margin-top:36px; padding:30px; border:1px solid #ad9b82; background:#f7f2e8; }
.strategy-fee h3 { font-size:22px; margin:0; }
.strategy-price { font-size:32px; font-weight:700; margin:12px 0; }
.strategy-fee > p:last-child { max-width:850px; margin:0; font-size:16px; }
.strategy-dashboard { display:grid; grid-template-columns:1.2fr 1fr; gap:48px; padding:36px; background:#eef1ed; }
.strategy-dashboard h3 { margin:18px 0 14px; font-size:24px; }
.strategy-dashboard p { font-size:16px; }
.strategy-dashboard ul { align-self:center; margin:0; padding-left:22px; font-size:17px; line-height:2.2; }
.strategy-faq { max-width:940px; }
.strategy-faq details { border-bottom:1px solid #b9b7af; }
.strategy-faq summary { padding:23px 28px 23px 0; font-size:18px; font-weight:700; line-height:1.85; cursor:pointer; }
.strategy-faq details p { margin:0 0 24px; font-size:16px; }
.strategy-section .site-button,.strategy-section .site-button:visited { background:#a53c1b; color:#fffdf8; min-height:48px; }
.strategy-section .site-button:hover { background:#812b13; color:#fff; }
.strategy-section .site-button:focus-visible,.strategy-faq summary:focus-visible { outline:3px solid #ae572b; outline-offset:5px; }
.strategy-section a.site-text-link,.strategy-section a.site-text-link:visited { color:#132238; }
.strategy-section--dark a.site-text-link { color:#fffdf8; }
.page-home .hub-hero__title { font-size:clamp(36px,4.3vw,62px); }
.page-about .subpage-hero__copy h1 { font-size:clamp(30px,3.7vw,50px); }
@media(max-width:1050px){
 .strategy-cards { gap:18px; }
 .strategy-cards article { padding:26px 20px; }
 .strategy-cards h3 { font-size:20px; }
 .strategy-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .strategy-editorial { gap:32px; }
}
@media(max-width:760px){
 .strategy-section { padding:56px 0; }
 .strategy-cards,.strategy-editorial,.strategy-band,.strategy-dashboard { grid-template-columns:1fr; }
 .strategy-cards { gap:20px; }
 .strategy-cards article { padding:26px; }
 .strategy-heading { margin-bottom:28px; }
 .strategy-heading h2 { font-size:26px; }
 .strategy-cards h3 { font-size:22px; }
 .strategy-editorial blockquote { font-size:24px; }
 .strategy-band,.strategy-dashboard { gap:20px; padding:26px; }
 .strategy-deliverables > div { grid-template-columns:1fr; gap:10px; }
 .strategy-steps { grid-template-columns:1fr; gap:24px; }
 .strategy-steps li { display:grid; grid-template-columns:42px 1fr; gap:0 16px; }
 .strategy-steps li::before { grid-row:1 / 3; font-size:28px; }
 .strategy-steps p { grid-column:2; }
 .strategy-fee { padding:24px; }
 .strategy-fee h3 { font-size:20px; }
 .strategy-price { font-size:28px; }
 .strategy-faq summary { font-size:17px; }
 .strategy-actions { align-items:stretch; flex-direction:column; gap:20px; }
 .page-home .hub-hero__title { font-size:clamp(34px,8.8vw,56px); }
}
/* Readability refinements identified in the existing layouts. */
body.site-shell .visually-hidden { white-space:normal !important; }
body.site-shell .global-header { background-color:#091421; }
body.site-shell .global-header::before { backdrop-filter:none; -webkit-backdrop-filter:none; background:#091421; }
body.site-shell .footer-bottom,body.site-shell .footer-bottom a,body.site-shell .footer-brand small,body.site-shell .footer-profile p,body.site-shell .footer-profile span { color:#c7cbd0; }
body.site-shell .generated-explainer figcaption,body.site-shell .about-role p { color:#475263; }
body.site-shell .generated-explainer--dark figcaption { color:#d7dce2; }
body.site-shell .subpage-hero .section-kicker { color:#ebbd8b; }
body.site-shell .breadcrumb span { color:#505d6c; }
body.site-shell .lp-portrait { backdrop-filter:none; background-color:#132238; }
body.site-shell .lp-portrait figcaption span,body.site-shell .lp-portrait figcaption small { color:#d3d8df; }
body.site-shell .lp-caption,body.site-shell .lp-case__before small { color:#4c5664; }
body.site-shell .lp-case__pivot span { color:#8c3219; }
body.site-shell .analytics__privacy,body.site-shell .community-fit__not p { color:#dce2e6; }
body.site-shell .lp-voice-grid blockquote:first-child cite { color:#efbe89; }
body.site-shell .lp-voice-grid blockquote:not(:first-child) cite { color:#823417; }
body.site-shell .community-hero h1 { font-size:clamp(32px,3.5vw,46px); line-height:1.5; }
body.site-shell h2 { text-wrap:balance; }
body.site-shell .lp-section-head h2,body.site-shell .lp-final h2,body.site-shell .site-final-cta h2 { font-size:clamp(26px,3vw,42px); }
body.site-shell .strategy-steps li::before { content:none; }
.strategy-step-number { display:block; color:#8a3a20; font-family:'Space Grotesk',sans-serif; font-size:32px; margin-bottom:12px; }
.strategy-faq summary { text-wrap:balance; }
@media(max-width:760px){
 .strategy-step-number { grid-row:1 / 3; font-size:28px; }
 body.site-shell .lp-section-head h2,body.site-shell .lp-final h2,body.site-shell .site-final-cta h2 { font-size:26px; }
}
/* Keep service information readable immediately, including anchor arrivals. */
.js body.site-shell .reveal { opacity:1; transform:none; transition:none; }
body.site-shell .strategy-cards { gap:20px; }
body.site-shell .strategy-cards article { padding-inline:26px; }
@media(min-width:761px) and (max-width:1050px){body.site-shell .strategy-cards {grid-template-columns:1fr;} }
body.site-shell main h2 { font-size:clamp(24px,2.65vw,36px) !important; line-height:1.6; }
body.site-shell .hub-problem .hub-section-heading h2,body.site-shell .community-team__heading h2 { font-size:clamp(24px,2.3vw,32px) !important; }
body.site-shell .site-final-cta__action .site-button { padding-inline:18px; font-size:14px; gap:14px; }
body.site-shell .site-final-cta__action .site-button > span { white-space:nowrap; }
body.site-shell .lp-case header h3 { font-size:22px; }
body.site-shell .hub-hero__lead,body.site-shell .community-hero__lead,body.site-shell .lp-hero__lead { text-wrap:pretty; }
body.site-shell .about-role p.about-role__title { color:#fffdf8; }
body.site-shell .hub-hero,body.site-shell .community-hero,body.site-shell .lp-hero,body.site-shell .lp-system,body.site-shell .lp-final,body.site-shell .site-final-cta,body.page-session .site-breadcrumb { background-color:#091421; }
body.site-shell .community-hero__note,body.site-shell .hub-hero__note,body.site-shell .lp-hero__note,body.site-shell .site-final-cta__action p,body.site-shell .community-hero__points dd,body.site-shell .lp-system__diagram figcaption { color:#cbd3dc; }
body.site-shell .community-hero .eyebrow { color:#edbd90; }
body.site-shell .community-fit__copy li { color:#253247; background-color:#f7f2e8; }
