@font-face{font-family:Inter;src:url('assets/inter-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter-medium.woff2') format('woff2');font-weight:500 800;font-display:swap}
:root{color-scheme:dark;--bg:#050706;--panel:#0b100d;--text:#f2f4f2;--muted:#aab3b2;--accent:#83d6c7;--line:#303833;--width:1280px}
html{scroll-behavior:smooth;scroll-padding-top:115px}
body.gg-unified{background:var(--bg)!important;color:var(--text)!important;font:400 17px/1.75 Inter,Arial,sans-serif!important;margin:0!important}
.gg-original-chrome{display:none!important}
.gg-chrome,.gg-chrome *{box-sizing:border-box;font-family:Inter,Arial,sans-serif}
.gg-chrome a{text-decoration:none;color:inherit}.gg-chrome a:hover{color:var(--accent)}
.gg-chrome button{font:inherit;cursor:pointer}.gg-chrome [hidden]{display:none!important}
.gg-chrome p{margin:0 0 24px}.gg-chrome h2{margin:0;font-weight:400}
.gg-chrome .site-header{position:fixed!important;background:#050706!important}
.gg-chrome .brand img{display:block}.gg-chrome footer{border-top:1px solid var(--line)}
.gg-chrome .footer-columns{max-width:1344px}.gg-chrome .footer-bottom{max-width:1280px}
.gg-menu-open{overflow:hidden!important}
body.gg-unified main{background:var(--bg)!important;color:var(--text)!important;padding-top:90px!important;padding-bottom:0!important;min-height:70vh}
body.gg-unified main :is(section,article,div){background-color:transparent!important}
body.gg-unified main :is(h1,h2,h3,h4,h5,h6,p,li,a,span,dt,dd,td,th,label,input,select,textarea,cite){font-family:Inter,Arial,sans-serif!important}
body.gg-unified main :is(h1,h2,h3,h4,h5,h6){color:var(--text)!important;font-weight:400!important;text-transform:none!important;letter-spacing:-.035em!important;text-align:left!important}
body.gg-unified main h1{font-size:clamp(38px,4.5vw,66px)!important;line-height:1.12!important}
body.gg-unified main h2{font-size:clamp(29px,3vw,42px)!important;line-height:1.2!important}
body.gg-unified main h3{font-size:25px!important;line-height:1.3!important}
body.gg-unified main :is(p,li,dd,td){color:var(--muted)!important;font-size:17px!important;line-height:1.8!important}
body.gg-unified main :is(a,strong,b,dt,label,th){color:var(--text)!important}
body.gg-unified main a:hover{color:var(--accent)!important}
body.gg-unified :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--accent)!important;outline-offset:4px}
body.gg-unified main :is(.section,.gg-sec,.gg-related,.gg-cta-band){padding-top:80px!important;padding-bottom:80px!important;border-color:var(--line)!important}
body.gg-unified main :is(.row,.gg-sec__inner,.gg-related__inner,.gg-cta-band__inner){max-width:1280px!important;margin-inline:auto!important}
body.gg-unified main>:is(p,h2,h3,blockquote,ul,ol){max-width:1100px;margin-left:auto!important;margin-right:auto!important;padding-inline:32px;box-sizing:border-box}
body.gg-unified main>p{margin-block:35px!important;font-size:23px!important;line-height:1.65!important}
body.gg-unified main :is(.gg-sec--paper,.gg-sec--soft,.gg-related--light,.gg-cta-band){border-top:1px solid var(--line)!important}
body.gg-unified main .banner-block{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:64px;max-width:1280px!important;margin:auto!important;padding:85px 32px 65px!important;min-height:0!important;height:auto!important;overflow:visible!important;background:none!important}
body.gg-unified main .banner-block:before,body.gg-unified main .banner-block:after{display:none!important}
body.gg-unified main .banner-block>img{position:relative!important;inset:auto!important;grid-column:2;grid-row:1;width:100%!important;height:350px!important;object-fit:cover;filter:grayscale(1);opacity:.72;border-radius:5px}
body.gg-unified main .banner-block__box{position:relative!important;inset:auto!important;grid-column:1;grid-row:1;transform:none!important;padding:0!important;width:auto!important;max-width:none!important}
body.gg-unified main .banner-block__box>.row{padding:0!important;width:100%!important}
body.gg-unified main .banner-block__box .h{margin-bottom:26px!important}
body.gg-unified main .banner-block__box p{font-size:20px!important;line-height:1.65!important}
body.gg-unified main .banner-block:not(:has(>img)){grid-template-columns:1fr;padding-block:85px 50px!important}
body.gg-unified main .banner-block:not(:has(>img)) .banner-block__box{max-width:950px!important}
body.gg-unified main [data-aos]{opacity:1!important;transform:none!important}
body.gg-unified main :is(.gg-card,.gg-related-card,.gg-case-summary,.gg-toc,.child-services-block__box){background:#0b100d!important;border:1px solid var(--line)!important;border-radius:5px!important;box-shadow:none!important}
body.gg-unified main .child-pages-block__box{border-bottom:1px solid var(--line)!important;padding-block:32px!important;gap:45px!important}
body.gg-unified main .child-pages-block__box img{filter:grayscale(1);border-radius:5px}
body.gg-unified main .child-services-block__box{padding:28px!important;height:100%;margin-bottom:24px}
body.gg-unified main .child-services-block__box h3{margin:0 0 20px!important}
body.gg-unified main .gg-insights-section{max-width:1280px!important;margin:auto!important;padding:25px 32px 80px!important}
body.gg-unified main .gg-insights-section>h2{margin-block:35px!important}
body.gg-unified main .gg-cs{max-width:1000px!important;padding:70px 32px 80px!important;margin:auto!important}
body.gg-unified main .gg-cs__section{margin-top:45px!important}
body.gg-unified main .gg-cs__section-title{font-size:30px!important;border-bottom:1px solid var(--line)!important;padding-bottom:18px!important}
body.gg-unified main :is(.gg-cs__meta,.gg-cs__meta-item,.gg-cs__divider,.gg-cs__disclaimer,td,th,hr){border-color:var(--line)!important}
body.gg-unified main .gg-cs__back{font-size:14px!important;letter-spacing:0!important;text-transform:none!important}
body.gg-unified main :is(.gg-kick,.gg-cs__label,.gg-cs__meta-label){color:var(--accent)!important;font-size:13px!important;letter-spacing:.025em!important;text-transform:none!important}
body.gg-unified main :is(.gg-btn,.gg-cs__cta,input[type=submit],button[type=submit]){background:#f2f4f2!important;color:#07100c!important;border:1px solid #f2f4f2!important;border-radius:3px!important;font:500 14px/1.5 Inter,Arial,sans-serif!important;text-transform:none!important;letter-spacing:0!important;padding:15px 22px!important}
body.gg-unified main :is(.gg-btn,.gg-cs__cta,input[type=submit],button[type=submit]):hover{background:var(--accent)!important;color:#050706!important}
body.gg-unified main :is(input:not([type=submit]):not([type=hidden]):not([type=checkbox]):not([type=radio]),textarea,select){background:#0b100d!important;color:var(--text)!important;border:1px solid #647269!important;border-radius:3px!important;font-size:16px!important;padding:14px!important;max-width:100%;box-sizing:border-box}
body.gg-unified main input::placeholder,body.gg-unified main textarea::placeholder{color:#aab3b2!important;opacity:1}
body.gg-unified main .wpcf7-not-valid-tip{color:#ffafa5!important}
body.gg-unified main .wpcf7-response-output{color:var(--text)!important}
body.gg-unified main .contact-block{padding-top:25px!important}
body.gg-unified main :is(blockquote,.wp-block-quote){border-left:1px solid #8eaa9d!important;background:transparent!important;padding-left:28px!important}
body.gg-unified main table{background:#0b100d!important;color:var(--text)!important;max-width:100%}
body.gg-unified main th{background:#18211b!important}
body.gg-unified main .about-hero{padding-top:85px}.gg-unified .wrap{max-width:1344px;padding-inline:32px;margin-inline:auto;box-sizing:border-box}
body.gg-unified main .about-intro p{font-size:26px!important}
body.gg-unified main .about-network .metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-top:35px;border-top:1px solid var(--line)}
body.gg-unified main .about-network .metrics dt{font-size:48px!important;line-height:1.2}
body.gg-unified main .about-network .metrics dd{font-size:14px!important;margin:15px 0 0}
body.gg-unified main .contact{display:grid;grid-template-columns:1.7fr 1fr;gap:60px;align-items:center;padding-block:80px}
body.gg-unified main .contact .button{display:inline-block;background:#f2f4f2!important;color:#050706!important;padding:15px 22px;border-radius:3px}
body.gg-unified main .contact-email{display:block;margin-top:20px;font-size:14px}
@media(max-width:950px){body.gg-unified main{padding-top:72px!important}body.gg-unified main .banner-block{gap:35px}body.gg-unified main .banner-block>img{height:280px!important}}
@media(max-width:600px){body.gg-unified main :is(.section,.gg-sec,.gg-related,.gg-cta-band){padding-block:50px!important}body.gg-unified main .banner-block{display:flex!important;flex-direction:column-reverse!important;align-items:stretch!important;padding:50px 24px 30px!important;gap:30px}body.gg-unified main .banner-block>img{height:220px!important}body.gg-unified main :is(p,li,dd,td){font-size:16px!important}body.gg-unified main>p{font-size:20px!important;padding-inline:24px}body.gg-unified main .gg-cs{padding:45px 24px 55px!important}body.gg-unified main h3{font-size:22px!important}body.gg-unified main .child-pages-block__box{gap:20px!important}body.gg-unified main .about-network .metrics{grid-template-columns:1fr 1fr}body.gg-unified main .contact{grid-template-columns:1fr;gap:25px}body.gg-unified .wrap{padding-inline:24px}body.gg-unified main .about-intro p{font-size:21px!important}body.gg-unified main .about-hero{padding-top:50px}body.gg-unified main .gg-insights-section{padding-inline:24px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared gentle entrances on phones, tablets, and desktop. */
@media screen and (prefers-reduced-motion:no-preference){
 main .scroll-reveal{transition:opacity 1.1s cubic-bezier(.25,.1,.25,1),transform 1.2s cubic-bezier(.16,1,.3,1)}
 main .scroll-reveal:not(.is-revealed):not(:focus-within){opacity:0;transform:translate3d(0,14px,0)}
 main .scroll-reveal.is-revealed{opacity:1;transform:none}
}
@media print{main .scroll-reveal{opacity:1!important;transform:none!important}}

/* Reset legacy full-bleed image sizing before placing banners in the new grid. */
body.gg-unified main .banner-block>img{
 min-width:0!important;min-height:0!important;max-width:100%!important;
 transform:none!important;z-index:0!important;display:block!important;
 object-position:center;flex:none;
}
/* Service links have an explicit layout at every width, independent of old theme breakpoints. */
body.gg-unified main .child-pages-block{padding-inline:0!important}
body.gg-unified main .child-pages-block>.row{width:100%!important;max-width:1280px!important;padding-inline:32px!important;box-sizing:border-box}
body.gg-unified main .child-pages-block__box{
 display:grid!important;grid-template-columns:minmax(160px,0.36fr) minmax(0,0.64fr);
 align-items:center;min-width:0;width:100%;margin:0!important;box-sizing:border-box;
 text-decoration:none!important;
}
body.gg-unified main .child-pages-block__box__left,
body.gg-unified main .child-pages-block__box__right{
 min-width:0;max-width:none!important;width:auto!important;flex:none!important;
 border:0!important;padding:0!important;min-height:0!important;
}
body.gg-unified main .child-pages-block__box__left img{
 display:block;width:100%!important;height:190px!important;object-fit:cover;
 transform:none!important;transition:none;max-width:100%;
}
body.gg-unified main .child-pages-block__box__right h3{margin:0 0 14px!important;overflow-wrap:normal}
body.gg-unified main .child-pages-block__box__right p{margin:0!important;line-height:1.65!important}
body.gg-unified main .child-pages-block__box__right .h--arrow::after{display:none}
@media(max-width:600px){
 body.gg-unified main .child-pages-block>.row{padding-inline:24px!important}
 body.gg-unified main .child-pages-block__box{grid-template-columns:100px minmax(0,1fr);align-items:start;gap:18px!important;padding-block:26px!important}
 body.gg-unified main .child-pages-block__box__left img{width:100px!important;height:100px!important}
 body.gg-unified main .child-pages-block__box__right h3{font-size:20px!important;line-height:1.25!important;margin-bottom:12px!important}
 body.gg-unified main .child-pages-block__box__right p{font-size:15px!important;line-height:1.65!important}
}
@media(max-width:360px){
 body.gg-unified main .child-pages-block__box{grid-template-columns:80px minmax(0,1fr);gap:14px!important}
 body.gg-unified main .child-pages-block__box__left img{width:80px!important;height:80px!important}
 body.gg-unified main .child-pages-block__box__right h3{font-size:18px!important}
}

/* Keep service-detail cards separated instead of inheriting negative row margins. */
body.gg-unified main .child-services-block>.row>.row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:100%!important;margin:0!important}
body.gg-unified main .child-services-block>.row>.row>.column{width:auto!important;max-width:none!important;min-width:0;flex:none!important;padding:0!important}
body.gg-unified main .child-services-block__box{height:100%;margin:0!important;box-sizing:border-box}
@media(max-width:950px){body.gg-unified main .child-services-block>.row>.row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.gg-unified main .child-services-block>.row>.row{grid-template-columns:1fr;gap:20px}}

/* Dark, compact engagement cards: anchors need the same treatment as panels. */
body.gg-unified main .gg-engines2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body.gg-unified main a.gg-sector{background:#0b100d!important;color:#f2f4f2!important;border:1px solid #303833!important;border-radius:5px;box-shadow:none!important}
body.gg-unified main a.gg-sector:hover,body.gg-unified main a.gg-sector:focus-visible{background:#111c16!important;border-color:#83d6c7!important}
body.gg-unified main .gg-engines2>a.gg-sector{display:flex;flex-direction:column;align-items:flex-start;padding:28px;min-height:0;height:auto;text-decoration:none}
body.gg-unified main .gg-engines2>a.gg-sector h3{font-size:24px!important;line-height:1.3!important;color:#f2f4f2!important;margin:0 0 14px!important}
body.gg-unified main .gg-engines2>a.gg-sector p{font-size:16px!important;line-height:1.65!important;color:#bec7c2!important;margin:0 0 24px!important;max-width:44ch}
body.gg-unified main .gg-engines2>a.gg-sector .m{font-size:14px!important;line-height:1.5!important;color:#83d6c7!important;text-transform:none!important;letter-spacing:0!important;margin-top:auto}
@media(max-width:600px){body.gg-unified main .gg-engines2{grid-template-columns:1fr;gap:20px}body.gg-unified main .gg-engines2>a.gg-sector{padding:22px}body.gg-unified main .gg-engines2>a.gg-sector h3{font-size:22px!important}}

/* A stable editorial palette: one distinct hue per case-study category. */
body.gg-unified main a.gg-card[data-gg-category]{--gg-card-bg:#252f3d;--gg-accent:#b5c5dc;background:linear-gradient(145deg,var(--gg-card-bg),color-mix(in srgb,var(--gg-card-bg) 72%,#050706))!important;border:1px solid color-mix(in srgb,var(--gg-accent) 25%,var(--gg-card-bg))!important;border-top:2px solid var(--gg-accent)!important;border-radius:6px!important;transition:transform .2s,border-color .2s!important}
body.gg-unified main a.gg-card[data-gg-category="model-validation"]{--gg-card-bg:#132844;--gg-accent:#9ec8ff!important}
body.gg-unified main a.gg-card[data-gg-category="talent-staffing"]{--gg-card-bg:#35203d;--gg-accent:#d8b3ea!important}
body.gg-unified main a.gg-card[data-gg-category="model-build"]{--gg-card-bg:#0d3638;--gg-accent:#81d2ca!important}
body.gg-unified main a.gg-card[data-gg-category="advisory"]{--gg-card-bg:#3b2c19;--gg-accent:#e8c28b!important}
body.gg-unified main a.gg-card[data-gg-category="thought-leadership"]{--gg-card-bg:#252f3d;--gg-accent:#b5c5dc!important}
body.gg-unified main a.gg-card[data-gg-category] .gg-chip{color:var(--gg-accent)!important;border:0!important;padding:0!important;font-size:13px!important;font-weight:500!important;letter-spacing:.01em!important;text-transform:none!important;margin-bottom:20px!important}
body.gg-unified main a.gg-card[data-gg-category] p{color:#d0d7df!important}
body.gg-unified main a.gg-card[data-gg-category]:hover,body.gg-unified main a.gg-card[data-gg-category]:focus-visible{border-color:var(--gg-accent)!important}
body.gg-unified main a.gg-card[data-gg-category]:focus-visible{outline-color:var(--gg-accent)!important}

/* One native page scroller, including Safari and restored history entries. */
html:has(body.gg-unified){overflow-x:clip!important;overflow-y:auto!important;overscroll-behavior-y:auto!important;height:auto!important;max-height:none!important;touch-action:pan-y pinch-zoom}
body.gg-unified{overflow:visible!important;overscroll-behavior-y:auto!important;height:auto!important;min-height:100%;max-height:none!important;touch-action:pan-y pinch-zoom}
body.gg-unified.gg-menu-open{overflow:hidden!important}

html:has(body.gg-unified.gg-menu-open){overflow:hidden!important;touch-action:none}
