/* Client journey: shared, additive, no remote fonts or tracking. */
:root{--client-blue:#32649a;--client-ink:#25364b;--client-muted:#546477;--client-line:#dce5ed;--client-pale:#f3f7fb}
.client-page,.client-finder,.client-guide{color:var(--client-ink);font-family:inherit;line-height:1.8}
.client-page{max-width:1120px;margin:0 auto;padding:22px 32px 48px}
.client-page *,.client-finder *,.client-guide *{box-sizing:border-box;min-width:0}
.client-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;margin-bottom:20px;color:var(--client-muted)}
.client-breadcrumb a,.client-other a{color:var(--client-blue);text-decoration:none}
.client-page-head{max-width:850px;margin-bottom:30px}
.client-page .client-page-head h1{font-size:32px!important;line-height:1.4!important;letter-spacing:0;margin:8px 0 14px;font-weight:650}
.client-page-head>p{font-size:16px;margin:0 0 16px;color:var(--client-muted)}
.client-kicker{font-size:12px!important;line-height:1.7;color:var(--client-blue)!important;letter-spacing:.025em;margin:0}
.client-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;font-size:14px}
.client-primary,.client-search button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;border:0;border-radius:5px;background:var(--client-blue);color:#fff!important;padding:9px 20px;text-decoration:none;font:inherit}
.client-finder{max-width:1184px;margin:0 auto;padding:32px 20px}
.client-section-top{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:20px}
.client-section-top>div>p{margin:7px 0 0;font-size:14px;color:var(--client-muted)}
.client-section-top>a{flex-shrink:0;font-size:14px;color:var(--client-blue)}
main .client-finder h2,main .client-guide h2,.client-page h2{font-size:23px!important;line-height:1.5!important;margin:0 0 12px;font-weight:600}
.client-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.client-service-card{display:flex;flex-direction:column;border:1px solid var(--client-line);border-radius:7px;padding:20px;background:white;color:var(--client-ink)!important;text-decoration:none!important;transition:border-color .15s,background .15s}
.client-service-card:hover{background:var(--client-pale);border-color:#7e9fc0}
main .client-service-card h3{font-size:17px!important;line-height:1.65!important;font-weight:600;margin:9px 0}
.client-service-card p{font-size:14px;line-height:1.8;color:var(--client-muted);margin:0 0 14px}
.client-card-link{font-size:13px;color:var(--client-blue);margin-top:auto}
.client-search{display:flex;gap:12px;align-items:center;margin-top:20px;padding:14px 18px;background:var(--client-pale);border-radius:6px;font-size:14px}
.client-search label{flex-shrink:0}.client-search input{background:#fff;border:1px solid #bccbda;min-width:0;flex:1;font:inherit;padding:10px 12px;border-radius:4px;min-height:44px}.client-search button{cursor:pointer;font-size:14px;flex-shrink:0}
.client-guide{max-width:1144px;margin:28px auto;padding:28px;border:1px solid var(--client-line);border-radius:7px;background:var(--client-pale)}
.client-steps{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:0;margin:20px 0}
.client-steps li{counter-increment:step}.client-steps strong{display:block;font-size:16px}.client-steps strong:before{content:'0' counter(step) '  ';color:var(--client-blue);font-weight:500}.client-steps p{font-size:14px;margin:8px 0 0;color:var(--client-muted)}
.client-faq{margin-top:20px}.client-faq details{border-top:1px solid #cfdae6;padding:13px 0}.client-faq summary{cursor:pointer;font-size:15px;font-weight:500;min-height:30px}.client-faq details p{font-size:14px;max-width:850px;color:var(--client-muted);margin:9px 0 2px}
.client-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;align-items:start}.client-section{margin:28px 0}.client-section p,.client-section li{font-size:16px;color:var(--client-muted)}.client-section ul{padding-left:22px}.client-section li{margin:9px 0}.client-page h3{font-size:18px;line-height:1.6;margin:20px 0 6px}.client-section h3+p{margin-top:0}
.client-reading{margin-top:28px;padding:20px;background:var(--client-pale);border-radius:6px}.client-reading h2{font-size:18px!important}.client-reading>a{display:block;padding:10px 0;font-size:14px;line-height:1.7;color:var(--client-blue);border-bottom:1px solid var(--client-line);text-decoration:none}.client-note{font-size:13px!important;color:var(--client-muted);line-height:1.85}.client-other{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px}.client-other a{padding:8px 0}
.client-mobile-contact{display:none}
.geo-home{--geo-accent:#32649a;--geo-ink:#25364b;--geo-muted:#546477;--geo-line:#dce5ed}
.geo-home .geo-hero{padding-top:30px;padding-bottom:34px;gap:48px;grid-template-columns:1.45fr .7fr}
main.geo-home .geo-hero h1{font-size:40px!important;letter-spacing:.01em!important}.geo-home .geo-subtitle{font-size:21px;margin:9px 0}.geo-home .geo-introduction{max-width:560px;margin:18px 0;font-size:16px}.geo-home .geo-portrait img{height:340px;object-position:center 26%}.geo-home .geo-hero-contact{margin-top:20px;padding-top:15px}.geo-home .geo-button{background:#32649a;border-radius:5px;min-height:44px}.geo-home .geo-text-link{border-color:#9cb4cd}.geo-home .geo-experience,.geo-home .geo-book,.geo-home .geo-writing,.geo-home .geo-media{padding-top:36px;padding-bottom:36px}.geo-home .geo-experience,.geo-home .geo-media{gap:44px}.geo-home .geo-book{gap:44px}.geo-home .geo-book-band{background:var(--client-pale)}
main.geo-home h2,main.geo-home .geo-book h2{font-size:25px!important;line-height:1.55!important}.geo-home .geo-section-heading{margin-bottom:22px}.geo-home .geo-eyebrow{margin-bottom:10px;letter-spacing:.06em}.geo-home .geo-contact-band{background:#edf4fb;color:#25364b}main.geo-home .geo-contact h2{color:#25364b}.geo-home .geo-contact .geo-eyebrow,.geo-home .geo-contact p:not(.geo-eyebrow),.geo-home .geo-contact-actions>a{color:#455c75}.geo-home .geo-contact-actions .geo-button{background:#32649a;color:#fff}.geo-home .geo-further{padding-block:22px}
.site-nav a:focus-visible,.client-page a:focus-visible,.client-finder a:focus-visible,.client-guide a:focus-visible,.client-guide summary:focus-visible,.client-search input:focus-visible,.client-search button:focus-visible{outline:3px solid #32649a;outline-offset:4px}
.site-header .site-nav{gap:18px}.site-header .site-nav>a{font-size:14px}.site-header .brand-copy strong{font-size:21px}
.honors-page{--honors-accent:#32649a;--honors-line:#dce5ed}.honors-image-link{background:#f3f7fb;border-color:#dce5ed}.honors-image-link:hover{background:#eaf2fa;border-color:#9cb4cd}.honors-page h1{font-size:32px}.honors-group-heading h2{font-size:23px}.honors-record h3{font-size:20px}
.en-main .en-hero{padding-top:28px;padding-bottom:28px}.en-main .en-hero h1{font-size:38px;line-height:1.25}.en-main .en-section{margin-top:32px}.en-main .client-guide{margin:32px 0}.en-main .client-guide h2{font-size:24px}.en-main .client-steps strong{font-size:15px}.en-main .en-intro h1{font-size:34px;line-height:1.3}
@media(max-width:900px){.client-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-detail-layout{grid-template-columns:1fr;gap:0}.client-reading{margin-top:0}.geo-home .geo-hero{gap:28px}.geo-home .geo-shell{padding-inline:28px}.client-guide{margin-inline:24px}.client-page .client-guide,.en-main .client-guide{margin-inline:0}}
@media(max-width:600px){.client-page{padding:18px 20px 32px}.client-page .client-page-head h1{font-size:27px!important}.client-finder{padding:24px 20px}.client-section-top{display:block}.client-section-top>a{display:inline-block;margin-top:8px}.client-service-grid{grid-template-columns:1fr;gap:10px}.client-service-card{padding:16px}.client-service-card p{margin-bottom:8px}.client-search{display:grid;grid-template-columns:1fr auto;padding:14px;gap:8px}.client-search label{grid-column:1/-1}.client-search input{font-size:16px;width:100%}.client-search button{padding-inline:12px}.client-guide{margin:22px 20px;padding:20px}.client-steps{grid-template-columns:1fr;gap:16px}.client-faq summary{font-size:15px}.client-finder h2,main .client-guide h2,.client-page h2{font-size:22px!important}.client-page-head>p,.client-section p,.client-section li{font-size:16px;line-height:1.85}.client-mobile-contact{display:grid;grid-template-columns:1fr 1.25fr;position:fixed;z-index:35;bottom:0;left:0;right:0;gap:9px;padding:9px 16px calc(9px + env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid #dce5ed;box-shadow:0 -3px 14px #25364b0b}.client-mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:42px;color:#32649a;background:#edf4fb;border-radius:5px;text-decoration:none;font-size:14px}.client-mobile-contact a:last-child{background:#32649a;color:#fff}body:has(.client-mobile-contact){padding-bottom:calc(72px + env(safe-area-inset-bottom))}.geo-home .geo-shell{padding-inline:20px}.geo-home .geo-hero{grid-template-columns:minmax(0,1fr) 92px;align-items:start;gap:14px;padding-top:22px;padding-bottom:18px}.geo-home .geo-hero-copy{display:contents}.geo-home .geo-hero-copy>p,.geo-home .geo-hero-actions,.geo-home .geo-hero-contact{grid-column:1/-1}.geo-home .geo-hero-copy>.geo-eyebrow{grid-column:1;grid-row:1;font-size:10px}.geo-home .geo-hero h1{grid-column:1;grid-row:2;font-size:30px!important;margin-top:-14px}.geo-home .geo-hero-copy>.geo-subtitle{grid-column:1;grid-row:3;font-size:18px;margin-top:-11px}.geo-home .geo-portrait{grid-column:2;grid-row:1/4;width:92px;align-self:start;border-radius:5px}.geo-home .geo-portrait img{height:122px;object-position:50% 20%}.geo-home .geo-portrait figcaption{display:none}.geo-home .geo-role{margin-top:0}.geo-home .geo-introduction{margin:0;font-size:15px;line-height:1.85}.geo-home .geo-hero-actions{gap:12px 20px}.geo-home .geo-hero-contact{margin-top:0;padding-top:12px;gap:12px 20px}.geo-home .geo-hero-contact strong{font-size:13px}.geo-home .geo-experience,.geo-home .geo-book,.geo-home .geo-media,.geo-home .geo-writing{padding-block:26px;gap:24px}main.geo-home h2,main.geo-home .geo-book h2{font-size:23px!important}.geo-home .geo-evidence-item{grid-template-columns:52px minmax(0,1fr);gap:12px}.geo-home .geo-evidence-item p{font-size:14px}.geo-home .geo-search input{font-size:16px}.en-main .en-hero h1{font-size:30px}.en-main .en-intro h1{font-size:29px}.client-actions{gap:12px 18px}}
@media(prefers-reduced-motion:reduce){.client-service-card{transition:none}}
@media(max-width:600px){main.geo-home .geo-hero h1{font-size:30px!important}}
@media print{.client-mobile-contact,.client-search,.client-actions{display:none}body:has(.client-mobile-contact){padding-bottom:0}.client-service-grid,.client-steps{display:block}.client-service-card{break-inside:avoid}.client-guide{background:white}}
