
/* November layout revision */
.site-footer{background:#f0efeb;color:#171717;padding:68px 0 26px;border-top:1px solid #d9d8d2}.site-footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1fr 1.15fr;gap:38px;padding-bottom:50px}.site-footer-grid h2{font:600 12px Inter,sans-serif;text-transform:uppercase;letter-spacing:.1em;margin:0 0 22px}.site-footer-grid nav:not(.footer-social-links),.site-footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.site-footer-grid a:not(.brand-logo){font-size:13px;line-height:1.65}.site-footer-grid a:hover{text-decoration:underline;text-underline-offset:4px}.site-footer-brand p{font-size:13px;line-height:1.8;color:#666}.site-footer-brand .footer-logo{width:108px;height:108px;display:block;margin:-20px 0 5px}.site-footer-contact>a{overflow-wrap:anywhere}.footer-social-links{display:flex;flex-wrap:wrap;gap:10px 18px;padding-top:12px}.site-footer-bottom{display:flex;flex-wrap:wrap;gap:16px 30px;border-top:1px solid #d9d8d2;padding-top:24px;font-size:11px;color:#666}.site-footer-bottom span{margin-right:auto}
.about-story{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}.about-story .about-chapter{display:flex;flex-direction:column;align-items:stretch;gap:30px;margin:0;padding:0;border:0}.about-story .about-chapter figure{margin:0;aspect-ratio:1/1;overflow:hidden}.about-story .about-chapter img{width:100%;height:100%;object-fit:cover}.about-story .about-chapter>div{width:100%}.about-story .about-chapter h2{font-size:clamp(36px,4vw,58px)}.about-section-head{max-width:680px;margin-bottom:48px}.about-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.about-principles article{border-top:1px solid #bcbcb5;padding-top:24px}.about-principles article>span{font-size:10px;color:#777;letter-spacing:.08em}.about-principles h3{font:500 23px/1.3 Inter,sans-serif;letter-spacing:-.04em;margin:30px 0 18px}.about-principles p{font-size:14px;line-height:1.8;color:#666}.about-toolkit{background:#efeee8}.about-toolkit>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about-skills a{display:flex;gap:20px;border-top:1px solid #cecdc6;padding:21px 0;font-size:16px}.about-skills a span{font-size:10px;color:#888}.about-skills a:hover{color:var(--red)}.about-collaborate{display:grid;grid-template-columns:1fr 1fr;gap:20px 80px}.about-collaborate>.eyebrow{grid-column:1/-1}.about-collaborate h2{margin-top:0}.about-collaborate .button{margin-top:20px}
.contact-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;padding-bottom:0}.contact-hero .contact-hero-copy{padding-bottom:55px}.contact-hero h1{font-size:clamp(62px,7.2vw,108px)}.contact-portrait{margin:0;background:#e9e8e2;align-self:stretch;display:flex;align-items:flex-end;overflow:hidden;border-radius:3px}.contact-portrait img{width:100%;height:auto;display:block}
.locations-map{margin-block:15px 70px;padding:40px;background:#f5f4ef;border:1px solid #deddd7}.map-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 30px}.map-heading>.eyebrow{width:100%;margin:0}.map-heading h2{font-size:46px;margin:10px 0}.map-heading p{font-size:13px;color:#777}.world-map{width:100%;padding:25px 0}.world-map svg{width:100%;height:auto;display:block}.world-map a:hover circle{fill:#171717}.map-regions{display:flex;flex-wrap:wrap;gap:10px}.map-regions a{font-size:11px;border:1px solid #ccc;padding:9px 14px;border-radius:30px}.map-regions a:hover{background:#171717;color:#fff}.map-note{font-size:10px;color:#777;line-height:1.7;margin-top:20px}.location-group{scroll-margin-top:110px}
@media(max-width:1000px){.site-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.contact-hero{gap:30px}.about-story{gap:28px}.about-toolkit>.wrap,.about-collaborate{gap:30px}}
@media(max-width:640px){.site-footer{padding-top:45px}.site-footer-grid{gap:32px 20px}.site-footer-brand,.site-footer-contact{grid-column:1/-1}.site-footer-bottom span{width:100%}.about-story{gap:16px}.about-story .about-chapter{gap:20px}.about-story .about-chapter h2{font-size:30px;line-height:1.1}.about-story .about-chapter p{font-size:12px;line-height:1.8}.about-principles,.about-toolkit>.wrap,.about-collaborate{grid-template-columns:1fr}.about-principles{gap:30px}.about-principles h3{margin-top:20px}.contact-hero{grid-template-columns:1fr;gap:0}.contact-hero .contact-hero-copy{padding-bottom:28px}.contact-portrait{width:75%;max-width:330px;justify-self:end}.contact-hero h1{font-size:64px}.locations-map{padding:22px 18px}.map-heading h2{font-size:36px}.map-regions{gap:7px}.map-regions a{padding:8px 10px;font-size:10px}}
/* Keep shared header rules out of footer and map navigation. */
body:has(.badge-home) footer.site-footer{background:#f0efeb;color:#171717;padding:68px 0 26px}.site-footer nav{position:static;inset:auto;margin:0;padding:0;max-height:none;overflow:visible;background:transparent;border:0;transform:none;opacity:1;visibility:visible}.site-footer nav>a{padding:0;border:0;border-radius:0;white-space:normal;text-transform:none;font-weight:400;letter-spacing:0;background:transparent;color:#333}.site-footer-grid nav:not(.footer-social-links){display:flex;align-items:flex-start;gap:11px}.site-footer-grid h2{color:#171717}.footer-social-links{display:flex;align-items:flex-start;justify-content:flex-start}.site-footer .footer-social-links{padding-top:12px;gap:10px 18px}.map-regions{position:static;inset:auto;margin:0;max-height:none;overflow:visible;background:transparent;transform:none;opacity:1;visibility:visible;display:flex;padding:0;border:0;align-items:center}.map-regions>a{white-space:normal;font-weight:400;text-transform:none;letter-spacing:0}
@media(max-width:640px){body:has(.badge-home) footer.site-footer{padding-top:45px}}

/* Let the original transparent portrait blend into the page. */
.hero-portrait,.contact-portrait{background:transparent}
/* Related articles follow the same reading column as the article above. */
.n-related{display:grid;grid-template-columns:180px minmax(0,1fr);column-gap:60px}.n-related>h2,.n-related>.n-grid{grid-column:2;width:100%;max-width:740px;margin-left:0;margin-right:0}.n-related>.n-grid{align-items:start}
@media(max-width:1050px){.n-related{grid-template-columns:150px minmax(0,1fr);column-gap:35px}}
@media(max-width:760px){.n-related{display:block}.n-related>h2,.n-related>.n-grid{max-width:740px;margin-left:auto;margin-right:auto}}
/* Soft portrait edges and a consistent centered position. */
.badge-home.remix-home .bh-hero .hero-portrait,.contact-hero .contact-portrait{justify-self:center;align-self:center;margin-inline:auto;display:flex;justify-content:center;align-items:center;background:transparent}
.hero-portrait img,.contact-portrait img{display:block;margin-inline:auto;object-position:center;mask-image:linear-gradient(to bottom,#000 0%,#000 55%,rgba(0,0,0,.85) 68%,rgba(0,0,0,.4) 82%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 55%,rgba(0,0,0,.85) 68%,rgba(0,0,0,.4) 82%,transparent 100%);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-size:100% 100%;-webkit-mask-size:100% 100%}
/* Black footer with readable menu, contact and legal links. */
footer.site-footer,body:has(.badge-home) footer.site-footer{background:#000;color:#fff;border-top-color:#252525}
.site-footer .site-footer-grid h2{color:#fff}.site-footer nav>a,.site-footer .site-footer-contact>a{color:#ccc}.site-footer .site-footer-brand p,.site-footer .site-footer-bottom{color:#aaa}.site-footer .site-footer-bottom{border-top-color:#2b2b2b}.site-footer a:hover{color:#fff}.site-footer nav>a:hover{background:transparent;color:#fff}
/* Project stories and useful, readable location pages. */
.breadcrumbs{position:static;inset:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;margin:0 0 30px;padding:0;gap:9px;background:transparent;border:0;max-height:none;overflow:visible;color:#777;font-size:11px}.breadcrumbs>a{font-size:11px;letter-spacing:0;text-transform:none;font-weight:400;white-space:normal;border:0;padding:0;border-radius:0}.case-hero h1{font-size:clamp(64px,8vw,112px)}.case-overview,.case-details,.local-brief,.local-example{display:grid;grid-template-columns:1fr 1.2fr;gap:65px;align-items:start}.case-overview p,.case-details p,.local-brief p,.local-example p{font-size:16px;line-height:1.85;color:#666}.case-overview .lead,.local-brief .lead{font-size:21px;color:#333}.case-gallery{display:grid;gap:36px}.case-gallery figure{margin:0}.case-gallery img{display:block;width:100%;height:auto;background:#f3f2ef;border-radius:4px}.case-gallery figcaption{font-size:11px;color:#777;margin-top:12px}.case-details ul{list-style:none;padding:0;margin:0 0 28px}.case-details li{font-size:17px;border-bottom:1px solid #ddd;padding:17px 0}.case-next{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid #ddd}.case-next h2{font-size:54px}.work-tile-image img{object-fit:cover}.local-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 45px;margin-top:40px}.local-service{border-top:1px solid #ddd;padding-top:23px}.local-service h3{font-family:Inter,sans-serif;font-size:22px;line-height:1.35;font-weight:500;letter-spacing:-.04em;margin:20px 0}.local-service p{font-size:14px;line-height:1.85;color:#666}.local-service .text-link{font-size:12px}.local-example{align-items:center;background:#f4f3ef;padding:45px}.local-example img{width:100%;height:auto}.local-process ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 50px;counter-reset:steps;padding:0;list-style:none;margin-top:40px}.local-process li{border-top:1px solid #ddd;padding-top:20px;font-size:15px;line-height:1.85;color:#666}.local-process li strong{color:#171717}.location-hero .button{margin-top:24px}.case-details .text-link{font-size:14px}
@media(max-width:760px){.case-overview,.case-details,.local-brief,.local-example,.case-next{grid-template-columns:1fr;gap:25px}.local-example{padding:25px}.local-services,.local-process ol{grid-template-columns:1fr}.case-hero h1{font-size:64px}.case-gallery{gap:25px}.case-next h2{font-size:44px}.local-service h3{font-size:22px}.case-overview .lead,.local-brief .lead{font-size:18px}}
/* Provider logos: certification context, separate from client work. */
.certifications-section{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:55px;padding-block:42px;border-top:1px solid #ddd;border-bottom:1px solid #ddd;margin-block:15px 50px}.certifications-heading .eyebrow{font-size:10px;letter-spacing:.08em;color:#777}.certifications-heading h2,.badge-home .certifications-heading h2{font-size:43px;line-height:1.08;margin:14px 0 0}.certifications-content>p{font-size:13px;color:#777;margin:0 0 25px}.certification-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px}.certification-provider{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}.certification-provider img{display:block;object-fit:contain;width:38px;height:38px}.certification-provider span{font-size:12px;color:#333;letter-spacing:-.025em}
.location-hero{display:grid;grid-template-columns:1.35fr .65fr;gap:40px;align-items:center}.location-hero .location-hero-copy{min-width:0}.location-hero h1{font-size:clamp(64px,7.5vw,106px)}.location-portrait{margin:0;justify-self:center;align-self:center;width:100%;max-width:350px;background:transparent}.location-portrait img{display:block;width:100%;height:auto;mask-image:linear-gradient(to bottom,#000 55%,rgba(0,0,0,.85) 68%,rgba(0,0,0,.4) 82%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 55%,rgba(0,0,0,.85) 68%,rgba(0,0,0,.4) 82%,transparent 100%)}
@media(max-width:900px){.certifications-section{grid-template-columns:1fr;gap:25px}.certifications-heading h2,.badge-home .certifications-heading h2{font-size:40px}.certifications-heading h2 br{display:none}.certifications-content>p{margin-bottom:26px}.location-hero{grid-template-columns:1.3fr .7fr;gap:20px}.location-hero h1{font-size:72px}}
@media(max-width:640px){.certifications-section{padding-block:30px;margin-bottom:30px}.certification-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 15px}.certification-provider img{width:32px;height:32px}.certification-provider span{font-size:11px}.location-hero{grid-template-columns:1fr;gap:30px}.location-hero h1{font-size:clamp(60px,14vw,85px)}.location-portrait{width:72%;max-width:300px;justify-self:center}}
@media(prefers-reduced-motion:reduce){}
/* Brand directory from the supplied portfolio, separate from learning providers. */
.client-brands-section{padding-block:40px 60px;border-bottom:1px solid #ddd;margin-bottom:45px}.client-brands-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:35px}.client-brands-heading h2,.badge-home .client-brands-heading h2{font-size:clamp(45px,5vw,68px);line-height:1.05;margin:17px 0 0}.client-brands-heading>p{font-size:13px;line-height:1.8;color:#777;max-width:300px}.client-brand-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}.client-brand{position:relative;display:flex;align-items:center;justify-content:center;min-height:104px;padding:20px 15px;background:white;border:1px solid #e8e7e2;border-radius:4px;transition:border-color .2s}.client-brand img{display:block;max-width:100%;width:145px;height:58px;object-fit:contain}.client-brand strong{font:600 15px/1.4 Inter,sans-serif;text-align:center;letter-spacing:-.04em}.client-brand>span{position:absolute;bottom:7px;right:9px;font-size:10px;color:#aaa}.client-brand[href]:hover{border-color:#171717}.client-brand[href]:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.brand-website-link{display:inline-flex;font-size:13px;border-bottom:1px solid #999;padding-bottom:4px;margin:3px 0 20px;color:#555}.case-originals{display:grid;gap:35px;padding-top:40px}.case-capture{margin:0}.case-capture-scroll{max-height:760px;overflow:auto;overscroll-behavior:contain;border:1px solid #ddd;background:#f5f4ef;border-radius:4px}.case-capture-scroll img{display:block;width:100%;height:auto}.case-capture figcaption{display:flex;justify-content:space-between;gap:20px;font-size:11px;line-height:1.5;color:#777;margin-top:12px}.case-capture figcaption a{border-bottom:1px solid #aaa;flex:none}.case-capture-scroll:focus-visible{outline:2px solid var(--red);outline-offset:3px}.social-brand-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px;align-items:start;padding-bottom:70px}.social-brand-gallery figure{margin:0}.social-brand-gallery img{width:100%;height:auto;display:block;background:#f5f4ef}.social-brand-gallery figcaption{display:flex;justify-content:space-between;font-size:10px;color:#777;margin-top:12px}.work-tile[data-category="Social media"] .work-tile-image img{object-fit:contain;background:#f5f4ef}
@media(max-width:1050px){.client-brand-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.client-brand{padding-inline:12px}.social-brand-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.client-brands-section{padding-block:25px 40px;margin-bottom:30px}.client-brands-heading{display:block}.client-brands-heading h2,.badge-home .client-brands-heading h2{font-size:47px}.client-brands-heading>p{margin-top:22px}.client-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.client-brand{min-height:88px;padding:14px 9px}.client-brand img{height:45px}.client-brand strong{font-size:11px}.social-brand-gallery{grid-template-columns:1fr;gap:28px;max-width:520px;margin-inline:auto}.case-capture-scroll{max-height:520px}.case-capture figcaption{font-size:9px;gap:12px}.case-originals{padding-top:25px}}
@media(prefers-reduced-motion:reduce){.client-brand{transition:none}}
/* Editorial refinements: calm logo strip, single certification heading and photo-led notes. */
.client-brand{border:0;border-radius:0;background:transparent;min-height:92px;padding:15px 12px}.client-brand[href]:hover{border-color:transparent}.client-brand>span{display:none}.client-brand img.site-brand-logo{filter:brightness(0);height:58px;width:145px}.certifications-section{grid-template-columns:1.1fr 1.9fr;gap:55px}.certifications-heading h2,.badge-home .certifications-heading h2{font-size:clamp(34px,3.5vw,48px);line-height:1.15;margin:0}.local-services-editorial .local-service h3{text-transform:none}.n-cover.n-photo{background:#eeede7}.n-cover.n-photo img,.n-cover.n-illustration img{display:block;width:100%;height:100%;object-fit:cover;padding:0;mix-blend-mode:normal;filter:grayscale(1)}.n-cover.n-photo-portrait img{object-fit:contain;object-position:center top}.insight-photo{margin:0 0 38px;aspect-ratio:16/9;background:#eeede7;overflow:hidden}.insight-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.insight-photo-portrait img{object-fit:contain;object-position:center top}
@media(max-width:999px){}
@media(max-width:640px){}
@media(max-width:900px){.certifications-section{grid-template-columns:1fr;gap:30px}.certifications-heading h2,.badge-home .certifications-heading h2{max-width:600px;font-size:38px}}
@media(max-width:640px){.certifications-heading h2,.badge-home .certifications-heading h2{font-size:34px}.client-brand{min-height:78px;padding:10px 7px}.client-brand img.site-brand-logo{width:100%;height:45px}}

.feedback-track>.feedback-card:only-child{flex-basis:100%;min-height:300px}

/* Service-led location copy and related reading. */
.location-insights-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:35px}.location-insights-heading h2{margin-bottom:0}.location-insights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.location-insight-card a{display:block}.location-insight-card figure{margin:0 0 25px;aspect-ratio:16/10;overflow:hidden;background:#efeee8}.location-insight-card img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.location-insight-card h3{font:400 32px/1.2 ThunderLC,sans-serif;letter-spacing:.015em;margin:15px 0}.location-insight-card p:not(.eyebrow){font-size:14px;line-height:1.8;color:#666;margin-bottom:22px}.location-insight-card .text-link{font-size:12px}.location-insight-card a:hover h3{color:var(--red)}.location-insight-card a:focus-visible{outline:2px solid var(--red);outline-offset:5px}.graphic-design-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:45px}.graphic-design-item{border-top:1px solid #ccc;padding-top:25px;scroll-margin-top:120px}.graphic-design-item h3{font:400 36px/1.15 ThunderLC,sans-serif;margin:20px 0}.graphic-design-item p{font-size:15px;line-height:1.8;color:#666;margin-bottom:25px}.graphic-design-item .text-link{font-size:13px}.graphic-design-services>.lead{max-width:800px}
@media(max-width:760px){.location-insights-heading{display:block}.location-insights-heading>.text-link{display:inline-block;margin-top:25px}.location-insights-grid{grid-template-columns:1fr;gap:40px}.graphic-design-grid{grid-template-columns:1fr;gap:30px}.location-insight-card h3{font-size:34px}}

/* Three homepage feedback cards with honest pending-content slots. */
.bh-feedback .feedback-three-cards .feedback-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;overflow:visible;cursor:default;user-select:text;touch-action:auto}.bh-feedback .feedback-three-cards .feedback-card{min-width:0;min-height:360px;padding:28px;background:#f8f8f4;border:1px solid #d8d8d2}.bh-feedback .feedback-three-cards .feedback-card h3{font-size:36px}.bh-feedback .feedback-three-cards .feedback-card blockquote{font-size:19px;line-height:1.7}.bh-feedback .feedback-three-cards .feedback-pending{background:#f2f1ec}.feedback-pending>.eyebrow{font-size:9px;letter-spacing:.07em;color:#777;margin-bottom:22px}.feedback-placeholder{font-size:15px;line-height:1.8;color:#777;margin:0 0 35px}.feedback-three-cards .feedback-person{margin-top:auto}.feedback-three-cards .feedback-person strong{overflow-wrap:anywhere}
@media(max-width:760px){.bh-feedback .feedback-three-cards .feedback-track{grid-template-columns:1fr}.bh-feedback .feedback-three-cards .feedback-card{min-height:300px}}

.review-draft-label{display:block;font-size:10px;letter-spacing:.03em;margin-bottom:10px;color:#777}.feedback-three-cards .feedback-placeholder{font-size:16px;color:#555}
