:root,:root[data-palette=blue]{--brand:#005eb9;--brand-deep:#034686;--brand-sky:#2daffb;--panel-a:#006ac6;--panel-b:#52646e;--panel-c:#234d70;--dark-panel:#153c60;--wash:#f1f7fc;--soft-panel:#e1effa;--text-main:#102f4b;--text-sub:#435c70;--hero-tint:rgba(4,31,58,.9);--hero-text:#9cd9ff}
:root[data-palette=sage]{--brand:#007c70;--brand-deep:#00594f;--brand-sky:#6bd5b8;--panel-a:#007c70;--panel-b:#52646e;--panel-c:#26786b;--dark-panel:#263f3a;--wash:#f0f7f4;--soft-panel:#d9eee6;--text-main:#203e36;--text-sub:#4b6159;--hero-tint:rgba(3,48,39,.9);--hero-text:#a9efda}
:root[data-palette=plum]{--brand:#176c53;--brand-deep:#254139;--brand-sky:#54d8a7;--panel-a:#54d8a7;--panel-b:#36434b;--panel-c:#26795f;--dark-panel:#283e37;--wash:#f0f8f4;--soft-panel:#d8f3e7;--text-main:#203e33;--text-sub:#486256;--hero-tint:rgba(6,43,31,.9);--hero-text:#b0f1d7}
:root[data-palette]{--blue:var(--brand);--blue-dark:var(--brand-deep);--sky:var(--brand-sky);--accent:var(--brand-sky);--pale:var(--wash);--ink:var(--text-main);--muted:var(--text-sub)}
.palette-toolbar{display:flex;align-items:center;justify-content:center;gap:9px;padding:10px 20px;background:#fff;color:#35485a;font-size:12px}.palette-toolbar>span:first-child{font-weight:600;margin-right:7px}.palette-toolbar button{display:inline-flex;align-items:center;gap:7px;border:1px solid #c9d3da;border-radius:5px;background:white;color:#35485a;padding:8px 12px;min-height:36px;font-size:12px;line-height:1.1;font-weight:500}.palette-toolbar button[aria-pressed=true]{border-color:var(--brand);background:var(--wash);color:var(--brand);box-shadow:inset 0 -2px 0 var(--brand)}.palette-toolbar i{width:12px;height:12px;border-radius:50%;display:inline-block}.swatch-blue{background:linear-gradient(135deg,#005eb9 50%,#52646e 50%)}.swatch-sage{background:#007c70}.swatch-plum{background:#54d8a7}
html[data-palette] body{color:var(--text-main)}html[data-palette] h2,html[data-palette] h3,html[data-palette] h4{color:var(--brand)}html[data-palette] .section-heading h2,html[data-palette] .body-copy h2,html[data-palette] .faq-layout h2,html[data-palette] .capability-panel h3{color:var(--brand)}html[data-palette] .section-heading p,html[data-palette] .body-copy p,html[data-palette] .lead{color:var(--text-sub)}html[data-palette] .section-pale,html[data-palette] #capabilities,html[data-palette] #in-practice,html[data-palette] .clients-section,html[data-palette] .ai-promo,html[data-palette] .site-footer{background:var(--wash)}html[data-palette] .eyebrow{color:var(--brand)}html[data-palette] .prototype-strip{background:var(--wash);color:var(--brand)}html[data-palette] .status-dot{background:var(--brand)}html[data-palette] .site-header .logo-symbol,html[data-palette] .footer-identity .logo-symbol{background:var(--brand)!important}html[data-palette] .wordmark,html[data-palette] .main-nav>a,html[data-palette] .services-dropdown>summary{color:var(--text-main)}html[data-palette] .main-nav>a[aria-current=page],html[data-palette] .services-menu a[aria-current=page],html[data-palette] .services-dropdown.current-service>summary{color:var(--brand)}html[data-palette] .services-menu{border-color:var(--brand)}html[data-palette] .services-menu a:hover,html[data-palette] .services-menu a[aria-current=page]{background:var(--wash);color:var(--brand)}html[data-palette] .button{background:var(--brand);border-color:var(--brand);color:white}html[data-palette] .button:hover{background:var(--brand-deep);border-color:var(--brand-deep)}html[data-palette] .button-outline,html[data-palette] #main .text-link{background:white;border-color:var(--brand);color:var(--brand)}html[data-palette] .button-outline:hover,html[data-palette] #main .text-link:hover{background:var(--brand);color:white}html[data-palette] .photo-hero h1{color:white}html[data-palette] .photo-hero h1 .blue{color:var(--hero-text)}html[data-palette] .photo-hero .eyebrow{color:var(--hero-text)}html[data-palette] .photo-hero .lead{color:white}html[data-palette] .photo-hero-shade{background:linear-gradient(90deg,var(--hero-tint) 0%,var(--hero-tint) 30%,transparent 100%)}html[data-palette] .photo-hero .button{background:#fff;border-color:#fff;color:var(--brand)}html[data-palette] .photo-hero .button-outline{background:var(--brand);border-color:var(--brand-sky);color:white}html[data-palette] .photo-hero .button:hover{background:var(--soft-panel);color:var(--brand-deep)}
html[data-palette] #services .service-card{background:var(--panel-a);border:0;box-shadow:none}html[data-palette] #services .service-card:nth-child(2){background:var(--panel-b)}html[data-palette] #services .service-card:nth-child(3){background:var(--panel-c)}html[data-palette] #services .service-card h3,html[data-palette] #services .service-card p,html[data-palette] #services .service-card .number,html[data-palette] #services .service-card .number svg{color:white}html[data-palette] #main #services .service-card .text-link{color:var(--brand);background:white;border-color:white}html[data-palette] #main #services .service-card .text-link:hover{background:var(--soft-panel);color:var(--brand-deep)}
html[data-palette] .use-card,html[data-palette] .service-examples .use-card,html[data-palette] .principles-grid article{background:var(--panel-b);border:0;color:white}html[data-palette] .use-card:nth-child(3n+2),html[data-palette] .principles-grid article:nth-child(3n+2){background:var(--panel-c)}html[data-palette] .use-card:nth-child(3n),html[data-palette] .principles-grid article:nth-child(3n){background:var(--panel-a)}html[data-palette] .use-card h3,html[data-palette] .use-card p,html[data-palette] .service-examples .use-card p,html[data-palette] .principles-grid h3,html[data-palette] .principles-grid p,html[data-palette] .principles-grid .step-number{color:white}html[data-palette] .use-card svg{background:#ffffff24;color:white}html[data-palette] .person-card{background:var(--dark-panel);color:white}html[data-palette] .person-card h3,html[data-palette] .person-card p{color:white}html[data-palette] .person-initials{background:#ffffff20;color:white}html[data-palette] #main .person-card .text-link,html[data-palette] .person-card .button{background:white;color:var(--brand);border-color:white}html[data-palette] .role-tag{background:var(--brand);color:white}html[data-palette] .role-list{background:none;border:0}html[data-palette] .pill[aria-selected=true],html[data-palette] .pill[aria-pressed=true],html[data-palette] .pill.selected{background:var(--brand);border-color:var(--brand);color:white}html[data-palette] .pill:not([aria-selected=true]):not([aria-pressed=true]){color:var(--brand)}html[data-palette] .finder-banner,html[data-palette] .engagement-note,html[data-palette] .model-panel,html[data-palette] .faq-list details,html[data-palette] .vacancy-card{background:var(--wash)}html[data-palette] .cta-band{background:var(--brand-deep)}html[data-palette] .cta-band h2,html[data-palette] .cta-band p{color:white}html[data-palette] .cta-band .eyebrow{color:var(--hero-text)}html[data-palette] .cta-band .button-white{background:white;color:var(--brand);border-color:white}html[data-palette] .cta-band .button-ghost{background:transparent;color:white;border-color:#ffffff90}html[data-palette] .linkedin-link{color:var(--brand)!important}html[data-palette] .linkedin-icon{background:var(--brand)}html[data-palette] .footer-top h2{color:var(--brand)}html[data-palette] .footer-top p,html[data-palette] .footer-top a:not(.footer-brand){color:var(--text-sub)}html[data-palette] .case-modal-art,html[data-palette] .case-modal-section+.case-modal-section{background:var(--wash);color:var(--brand)}html[data-palette] .case-modal-section h3{color:var(--brand)}html[data-palette] .vacancy-type{color:var(--brand);background:var(--soft-panel)}html[data-palette] .vacancy-details summary{border-color:var(--brand);color:var(--brand)}html[data-palette] .vacancy-card h3{color:var(--brand)}
/* Prominent desktop proof strip; deliberately omitted on mobile. */
html[data-palette] .proof-strip{background:var(--dark-panel);color:white;padding:0;border:0}.proof-inner{padding:25px 0;gap:22px;grid-template-columns:repeat(3,1fr)}.proof-item{font-size:18px;font-weight:600;line-height:1.3;gap:15px;justify-content:center}.proof-item+.proof-item{border:0}.proof-item svg{width:29px;height:29px;color:white!important}.proof-item{color:white}
/* Seven case titles in one compact list, with no filtering or internal scroll. */
#in-practice{padding:43px 0}#in-practice .section-heading{margin-bottom:22px}#in-practice .section-heading h2{font-size:38px}#in-practice .section-heading .eyebrow{display:none}#in-practice .section-heading p{font-size:16px;margin-top:11px}#in-practice .filters{display:none}.case-grid{display:grid;grid-template-columns:1fr;gap:0;background:white;border-radius:5px;overflow:hidden}.case-card.compact-case{border-radius:0;box-shadow:none;background:transparent}.compact-case:nth-child(2n){background:var(--wash)}.case-trigger{display:grid;grid-template-columns:28px minmax(0,1fr) 245px 120px;gap:16px;align-items:center;min-height:55px;padding:11px 18px;height:auto;background:transparent}.case-copy{display:contents}.case-icon{width:28px;height:28px;background:none;color:var(--brand);grid-column:1;grid-row:1}.case-icon svg{height:22px;width:22px}.case-title{grid-column:2;grid-row:1;font-size:20px;line-height:1.16;color:var(--brand)}.compact-case .case-label{grid-column:3;grid-row:1;font-size:11px;text-transform:none;letter-spacing:0;color:var(--text-sub);margin:0}.case-prompt{grid-column:4;grid-row:1;font-size:12px;color:var(--brand);gap:8px;justify-content:end}.case-trigger:hover{background:var(--soft-panel)}.case-trigger:focus-visible{outline-color:var(--brand)}
@media(max-width:1050px){.case-grid{grid-template-columns:1fr}.case-trigger{grid-template-columns:26px minmax(0,1fr) 205px 24px;gap:13px;min-height:56px}.case-prompt{font-size:0}.case-prompt>span{font-size:22px}.case-title{font-size:19px}.proof-item{font-size:16px;gap:10px}.proof-item svg{width:25px;height:25px}}
@media(max-width:680px){html[data-palette] .proof-strip{display:none}.palette-toolbar{padding:8px 10px;gap:6px;flex-wrap:wrap;font-size:11px}.palette-toolbar>span:first-child{font-size:11px;margin-right:3px}.palette-toolbar button{font-size:11px;min-height:34px;padding:8px 9px;gap:6px}.palette-toolbar i{width:10px;height:10px}.case-grid{grid-template-columns:1fr}.case-trigger{grid-template-columns:24px minmax(0,1fr) 20px;column-gap:12px;row-gap:4px;padding:12px 15px;min-height:63px}.case-icon{grid-column:1;grid-row:1/3;width:24px;height:24px}.case-title{grid-column:2;grid-row:1;font-size:18px;line-height:1.2}.compact-case .case-label{grid-column:2;grid-row:2;font-size:10px}.case-prompt{grid-column:3;grid-row:1/3;font-size:0}.case-prompt>span{font-size:21px}#in-practice{padding:35px 0}#in-practice .section-heading h2{font-size:34px}#in-practice .section-heading p{font-size:15px;line-height:1.4}html[data-palette] .photo-hero-shade{background:linear-gradient(0deg,var(--hero-tint) 0%,var(--hero-tint) 50%,transparent 100%)}html[data-palette] .photo-hero .button-outline{background:var(--brand);border-color:var(--brand-sky);color:white}}
/* User-supplied mint swatch with readable dark text on bright surfaces. */
html[data-palette=plum] #services .service-card:first-child h3,html[data-palette=plum] #services .service-card:first-child p,html[data-palette=plum] #services .service-card:first-child .number,html[data-palette=plum] #services .service-card:first-child .number svg{color:#173c2f}html[data-palette=plum] .use-card:nth-child(3n) h3,html[data-palette=plum] .use-card:nth-child(3n) p,html[data-palette=plum] .service-examples .use-card:nth-child(3n) p,html[data-palette=plum] .principles-grid article:nth-child(3n) h3,html[data-palette=plum] .principles-grid article:nth-child(3n) p,html[data-palette=plum] .principles-grid article:nth-child(3n) .step-number{color:#173c2f}html[data-palette=plum] .use-card:nth-child(3n) svg{background:#ffffff66;color:#173c2f}html[data-palette=plum] .site-header .logo-symbol,html[data-palette=plum] .footer-identity .logo-symbol{background:#54d8a7!important;color:#173c2f!important}html[data-palette=plum] .palette-toolbar button[aria-pressed=true]{background:#d8f3e7;border-color:#176c53}html[data-palette=plum] .proof-item svg{color:#54d8a7!important}
/* A collapsed browser keeps the section compact as the library grows. */
#in-practice{padding:43px 0}#in-practice .section-heading{margin-bottom:24px}.case-browser{border:0;border-radius:5px 22px 5px 5px;background:white;overflow:hidden}.case-browser>summary{display:flex;align-items:center;gap:22px;min-height:62px;padding:19px 23px;background:var(--brand);color:white;font:500 22px/1.2 Outfit,Arial,sans-serif;list-style:none;cursor:pointer}.case-browser>summary::-webkit-details-marker{display:none}.case-browser>summary:hover{background:var(--brand-deep)}.case-browser-hint{margin-left:auto;font:400 13px/1.3 Inter,Arial,sans-serif;color:#fff}.case-browser-arrow{display:block;width:10px;height:10px;border-right:2px solid white;border-bottom:2px solid white;transform:rotate(45deg);margin-top:-5px;flex-shrink:0}.case-browser[open] .case-browser-arrow{transform:rotate(225deg);margin-top:5px}.case-browser-content{padding:23px}#in-practice .case-browser .filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:19px}.case-browser-intro{font-size:14px;color:var(--text-sub);margin:0 0 14px}.case-browser .case-grid{display:grid;grid-template-columns:1fr;gap:7px;background:none;border-radius:0;overflow:visible}.case-card.case-accordion{border:0;box-shadow:none;border-radius:4px;display:block;padding:0;background:var(--wash);overflow:hidden}.case-accordion>summary{display:grid;grid-template-columns:24px minmax(0,1fr) 250px 20px;align-items:center;column-gap:15px;min-height:54px;padding:13px 17px;cursor:pointer;list-style:none;border:0;border-radius:0;font-size:16px;font-weight:400;background:transparent;color:var(--brand)}.case-accordion>summary::-webkit-details-marker{display:none}.case-accordion>summary:after{display:none}.case-accordion>summary:hover{background:var(--soft-panel)}.case-accordion-icon{display:flex;align-items:center;color:var(--brand)}.case-accordion-icon svg{width:21px;height:21px}.case-accordion-title{font:500 20px/1.2 Outfit,Arial,sans-serif;color:var(--brand)}.case-accordion-label{font-size:11px;line-height:1.35;color:var(--text-sub)}.case-accordion-plus{font-size:23px;line-height:1;font-weight:400;justify-self:end}.case-accordion[open]>summary{background:var(--soft-panel)}.case-accordion[open] .case-accordion-plus{transform:rotate(45deg)}.case-accordion-body{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px;padding:26px;background:white}.case-accordion-body h3{font-size:22px;color:var(--brand);margin:0 0 12px}.case-accordion-body p{font-size:16px;line-height:1.55;color:var(--text-sub);margin:0}.case-accordion-body .button-row{grid-column:1/-1;margin-top:0;margin-bottom:0}.case-accordion-body .button{font-size:14px;min-height:43px;padding:11px 16px}.case-browser>summary:focus-visible,.case-accordion>summary:focus-visible{outline:3px solid var(--brand-sky);outline-offset:-3px}
@media(max-width:1000px){.case-accordion>summary{grid-template-columns:23px minmax(0,1fr) 200px 20px;gap:13px}.case-accordion-title{font-size:19px}.case-accordion-body{gap:20px 25px;padding:24px}}
@media(max-width:680px){#in-practice{padding:35px 0}.case-browser>summary{font-size:21px;padding:18px 20px;min-height:61px;gap:16px}.case-browser-hint{display:none}.case-browser-arrow{margin-left:auto}.case-browser-content{padding:18px}#in-practice .case-browser .filters{gap:7px;margin-bottom:17px}.case-browser .filters .pill{font-size:12px;padding:8px 11px;min-height:39px}.case-browser-intro{font-size:13px;margin-bottom:15px}.case-accordion>summary{grid-template-columns:21px minmax(0,1fr) 17px;gap:5px 11px;padding:14px;min-height:63px}.case-accordion-icon{grid-column:1;grid-row:1/3}.case-accordion-title{grid-column:2;grid-row:1;font-size:18px}.case-accordion-label{grid-column:2;grid-row:2;font-size:10px}.case-accordion-plus{grid-column:3;grid-row:1/3}.case-accordion-body{grid-template-columns:1fr;padding:21px;gap:22px}.case-accordion-body h3{font-size:21px;margin-bottom:10px}.case-accordion-body p{font-size:15px}.case-accordion-body .button-row{grid-column:auto}.case-accordion-body .button{font-size:13px;padding:11px 14px}}

.person-linkedin{display:flex;align-items:center;gap:8px;width:fit-content;margin-top:16px;color:white!important;font:500 14px Inter,Arial,sans-serif;text-decoration:none;min-height:36px}.person-linkedin:hover{text-decoration:underline}.person-linkedin-icon{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;border-radius:3px;background:white;color:#0a66c2;font:bold 17px Arial,sans-serif}.person-linkedin:focus-visible{outline:2px solid white;outline-offset:4px}
