/* Shared section/container geometry from current home and Branding pages.
   Keep exact rem values; the root scale lives in homepage-typography.css. */
:root{
 --site-gutter:1.25rem;
 --site-section-space:5rem;
 --site-choose-top:6.25rem;
 --site-choose-bottom:5rem;
 --site-stats-top:1.5rem;
 --site-stats-bottom:5rem;
 /* Large content grids: Healthcare challenges/services and Branding services. */
 --site-content-space:5rem;
 /* Heading + lead: shared homepage CTA text stack. */
 --site-heading-lead-space:2rem;
 --site-lead-size:1.25rem;
 --site-card-gap:2rem;
 --site-card-padding:2.5rem;
 --site-card-text-space:1rem;
 /* Image/content and title/body: Projects cards. */
 --site-case-image-space:1.5rem;
 --site-case-text-space:.75rem;
}
@media(max-width:991px){:root{
 --site-gutter:2rem;
 --site-section-space:3.5rem;
 --site-choose-top:3.5rem;
 --site-choose-bottom:3.5rem;
 --site-stats-top:.5rem;
 --site-stats-bottom:3.5rem;
 --site-content-space:3.5rem;
 --site-heading-lead-space:1.125rem;
 --site-lead-size:1rem;
 --site-card-gap:1.5rem;
 --site-card-padding:1.5rem;
 --site-card-text-space:.75rem;
 --site-case-image-space:1.25rem;
 --site-case-text-space:.5rem;
}}
@media(max-width:767px){:root{
 --site-gutter:1rem;
 --site-section-space:2.5rem;
 --site-choose-top:1.5rem;
 --site-choose-bottom:2.5rem;
 --site-stats-top:2.5rem;
 --site-stats-bottom:1rem;
 --site-content-space:2.5rem;
 --site-heading-lead-space:.75rem;
 --site-card-gap:1rem;
 --site-case-image-space:1rem;
 --site-case-text-space:.25rem;
}}
@media(max-width:479px){:root{
 --site-choose-bottom:1rem;
 --site-lead-size:.75rem;
 --site-card-text-space:.5rem;
}}
/* The original body's forced right-padding reset must not affect this section. */
.intro-story #numbers{padding:var(--site-stats-top) var(--site-gutter) var(--site-stats-bottom)!important}
#numbers>.container{width:100%;max-width:82rem;margin-inline:auto;padding:0}
.brand-story{gap:0;padding-top:0}
.brand-story .site-principles #main-principles.section{padding:var(--site-choose-top) var(--site-gutter) var(--site-choose-bottom)}
.opening-story #teams.section,.opening-story #work.section,.brand-story #recognition.section{
 padding-block:var(--site-section-space);
 padding-inline:max(var(--site-gutter),calc((100% - 82rem)/2));
}
.brand-story #love-letters>.section{padding:var(--site-section-space) var(--site-gutter)}
.leadership-rail{--rail-gutter:max(var(--site-gutter),calc((100vw - 82rem)/2))}
.leadership-rail__viewport{scroll-padding-inline:var(--rail-gutter)}
/* Explicit roles prevent prototype margins and its 600px breakpoint leaking in.
   The custom letter rails keep their approved 80px gap and motion. */
#teams>h2,#work>h2{margin-block:0}
#teams>.lead,.hero .hero-copy>.lead{
 margin-top:var(--site-heading-lead-space);
 margin-bottom:0;
 font-size:var(--site-lead-size);
 font-weight:400;
 line-height:1.6;
 letter-spacing:normal;
}
#teams>.cards,#work>.cards{margin-top:var(--site-content-space);gap:var(--site-card-gap)}
#teams .card,#teams .card:nth-child(2){padding:var(--site-card-padding);height:auto}
#teams h3{margin-bottom:var(--site-card-text-space)}
#teams .card p{letter-spacing:normal}
#work .case-meta{padding-top:var(--site-case-image-space)}
#work .case-title{margin:0 0 var(--site-case-text-space)}
#work .case-tags{margin-top:var(--site-card-text-space)}
#work .case-tag{font-size:.875rem;min-height:2.125rem;padding:.5rem .75rem}
#recognition h2{margin:0 0 var(--site-content-space)}
#recognition .award p{line-height:1.6}
@media(max-width:991px){
 #teams .tag{font-size:.75rem}
 #teams .glass-unit-art{right:1rem}
 #work .case-tag{font-size:.75rem;min-height:1.75rem;padding:.375rem .625rem}
 #recognition .award:nth-child(n){padding:1.5rem 1rem;gap:.75rem}
}
/* Use the site's 767px mobile breakpoint for the paired team cards too.
   In-flow illustrations leave room for headings of different lengths. */
@media(max-width:767px){
 #teams .cards,#work .cards{grid-template-columns:1fr}
 #teams .card,#teams .card:nth-child(2){height:auto;min-height:0;padding:var(--site-card-padding)}
 #teams .glass-unit-art,#teams .card:nth-child(2) .glass-unit-art{position:relative;width:100%;height:14rem;top:auto;right:auto;margin:.5rem 0 1.5rem}
 #teams h3{max-width:100%}
 #teams .team-title-arrow{position:absolute;top:.12em;right:0;margin-left:0}
 #teams .card p{max-width:100%}
 #work>.cards{row-gap:2rem}
 #recognition .awards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #recognition .recognition-wreath{width:7.1875rem;margin-bottom:1.5rem}
 #recognition .award:nth-child(n){padding:1.25rem .75rem;min-height:9rem;gap:.5rem}
 #recognition .award p{font-size:.75rem}
}
