/* ===== SOURCE: design-tokens.css ===== */
:root{
  /* Aurum Institute Brand Guide: primary palette */
  --aurum-red:#CD2026;--aurum-gold:#E0AC26;
  /* Brand Guide: bright secondary palette */
  --aurum-orange:#DC602E;--aurum-light-blue:#B6E2E9;--aurum-teal:#077187;--aurum-green:#74A57F;
  /* Brand Guide: neutrals */
  --aurum-slate:#6F8695;--aurum-cream:#F7F5EB;--aurum-mid-grey:#B7B6C2;--aurum-smoke:#D1D5DE;--aurum-ink:#191613;
  --aurum-line:rgba(25,22,19,.18);--aurum-line-light:rgba(247,245,235,.24);
  /* Aurum's licensed brand faces (Neue Haas Grotesk primary, Averta Italic
     secondary — see the Corporate Identity Manual, p.22-23) aren't
     available as web fonts, so free stand-ins carry the same roles until
     the client's agency can supply real @font-face files: Archivo for
     Neue Haas Grotesk (both loaded via Google Fonts, see functions.php),
     Plus Jakarta Sans Italic for Averta's italic-only accent role. The
     licensed names stay first in each stack so real @font-face files would
     take over automatically the moment they're added, with no CSS changes
     needed here. This is the one place these two variables are defined —
     every page loads this file first, so fixing it here fixes every page;
     it previously fell through straight to bare Arial on every page except
     the homepage (which had a homepage-only override), which was the
     biggest single cause of the site reading stale. */
  --font-primary:"Neue Haas Grotesk","Archivo",Arial,sans-serif;
  --font-secondary:"Averta","Plus Jakarta Sans",Arial,sans-serif;
  --font-size-label:clamp(9px,.7vw,11px);--font-size-body:clamp(16px,1.2vw,19px);--leading-body:1.62;
  --radius-card:7px;--radius-control:3px;--shadow-editorial:0 28px 70px rgba(25,22,19,.14);--ease-editorial:cubic-bezier(.16,1,.3,1)
}
html{font-family:var(--font-primary);background:#fff}body{color:var(--aurum-ink)}a,button{font-family:inherit}a,a:visited{color:inherit;text-decoration:none}button{cursor:pointer}:focus-visible{outline:2px solid var(--aurum-gold);outline-offset:4px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.data-table{width:100%;border-collapse:collapse;border-top:2px solid var(--aurum-gold);font-size:15px;background:#fff}.data-table th,.data-table td{padding:16px 18px;border-bottom:1px solid var(--aurum-line);text-align:left;vertical-align:top}.data-table th{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--aurum-red);font-weight:700}.data-table td:last-child,.data-table th:last-child{text-align:right}.data-table tr:hover td{background:#fff7df}.status{display:inline-block;padding:5px 8px;border-radius:var(--radius-control);font-size:10px;text-transform:uppercase;letter-spacing:.1em;background:var(--aurum-light-blue);color:var(--aurum-teal)}
@media(max-width:600px){.data-table{font-size:13px;display:block;overflow-x:auto;white-space:normal}.data-table th,.data-table td{padding:13px 12px;min-width:145px}.data-table th:first-child,.data-table td:first-child{min-width:170px}}
/* 2026-08-17: site-wide replacement for the raw →/›/↗ characters — see
   aurum_arrow_icon() in functions.php. Sized in em so it scales with
   whatever text size/color context it's dropped into. */
.aurum-arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;flex:none}
.aurum-arrow-icon--diagonal{transform:rotate(-45deg)}
.aurum-arrow-icon--down{transform:rotate(90deg)}
.aurum-arrow-icon--left{transform:scaleX(-1)}
.aurum-arrow-icon--up{transform:rotate(-90deg)}
.aurum-chevron-icon-wrap{display:inline-flex}
.aurum-chevron-icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;transition:transform .2s ease}
.health-work-toggle[aria-expanded="true"] .aurum-chevron-icon{transform:rotate(180deg)}

/* ===== SOURCE: subpage.css ===== */
@import url("design-tokens.css");@import url("subpage-phase2.css");
:root{--red:#CD2026;--gold:#E0AC26;--cream:#F7F5EB;--ink:#191613;--teal:#077187;--line:rgba(25,22,19,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--font-primary)}.site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:28px;padding:18px clamp(22px,6vw,90px);background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.brand{width:128px}.brand img{width:100%}.site-header nav{display:flex;gap:clamp(14px,2.5vw,34px);margin-left:auto}.site-header nav a,.header-link{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.site-header nav a:hover,.header-link:hover{color:var(--red)}.header-link{border-left:1px solid var(--line);padding-left:24px;color:var(--red)}.mobile-nav{display:none}.page-hero{padding:clamp(90px,13vw,190px) clamp(22px,9vw,150px) 80px;background:var(--red);color:#fff}.eyebrow,.kicker{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}h1{font-size:clamp(64px,10vw,150px);line-height:.84;letter-spacing:-.075em;margin:28px 0 0;max-width:1000px}h1 em,h2 em{font-style:italic;color:var(--gold)}.page-section{padding:clamp(75px,10vw,145px) clamp(22px,9vw,150px);border-bottom:1px solid var(--line)}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:54px}h2{font-size:clamp(42px,6vw,86px);line-height:.9;letter-spacing:-.065em;margin:0}.lead{font-size:18px;line-height:1.6;color:#665f57;max-width:560px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{min-height:230px;padding:24px;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:7px;background:#fff;transition:transform .4s ease,background .4s ease}.card:hover{transform:translateY(-8px);background:#fff2d1}.card b{color:var(--red);font-size:11px}.card h3{font-size:32px;letter-spacing:-.05em;margin:70px 0 12px}.card p{font-size:14px;line-height:1.45;color:#665f57}.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.panel{padding:34px;border-radius:7px;background:var(--teal);color:#fff;min-height:260px}.panel.gold{background:var(--gold);color:var(--ink)}.panel h3{font-size:42px;letter-spacing:-.06em;margin:45px 0 0}.panel p{line-height:1.55}.site-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:30px clamp(22px,6vw,90px);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.site-footer img{width:110px}.site-footer a{color:var(--red)}@media(max-width:850px){.site-header{padding:16px 22px}.site-header nav,.header-link{display:none}.mobile-nav{display:none;flex-direction:column;gap:20px;padding:28px 22px;background:var(--red);color:#fff}.mobile-nav a{font-size:25px}.section-head,.split{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr}.site-footer{flex-wrap:wrap}}
.skip-link{position:fixed;z-index:40;left:18px;top:12px;transform:translateY(-170%);background:var(--aurum-red);color:#fff;padding:12px 16px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;transition:transform .25s var(--ease-editorial)}.skip-link:focus{transform:none}.shell-menu{display:none;margin-left:auto;border:1px solid var(--aurum-red);background:transparent;color:var(--aurum-red);padding:10px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.mobile-nav[aria-label="Mobile navigation"] a[aria-current="page"]{color:var(--aurum-gold)}
/* header.php's .menu-toggle button (shared with the homepage) needs its own
   desktop-hide rule here — styles.css supplies this on the homepage, but
   subpage.css never did, which is what let it render unstyled and overlap
   the desktop nav/Contact link on every subpage. modern-refresh.css already
   supplies the max-width:850px override that shows it again on mobile. */
.menu-toggle{display:none}
@media(max-width:850px){.shell-menu{display:block}.mobile-nav.is-open{display:flex;position:fixed;z-index:4;inset:74px 0 auto 0;max-height:calc(100svh - 74px);overflow:auto;transform:none}.mobile-nav.is-open a{font-size:25px}}
@media(prefers-reduced-motion:reduce){.skip-link{transition:none}}
.site-header nav{gap:7px;align-items:center}.site-header nav a{position:relative;display:inline-flex;align-items:center;color:var(--aurum-ink);padding:10px 12px;border:1px solid transparent;border-radius:var(--radius-control);text-decoration:none;transition:color .25s var(--ease-editorial),background .25s var(--ease-editorial),border-color .25s var(--ease-editorial),transform .25s var(--ease-editorial)}.site-header nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--aurum-gold);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease-editorial)}.site-header nav a:hover{color:var(--aurum-red);background:rgba(224,172,38,.12);border-color:rgba(224,172,38,.55);transform:translateY(-1px)}.site-header nav a:hover::after,.site-header nav a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}.site-header nav a[aria-current="page"]{color:var(--aurum-red);background:rgba(205,32,38,.055);border-color:rgba(205,32,38,.34)}.site-header nav a[aria-current="page"]::before{content:"";width:5px;height:5px;margin-right:7px;border-radius:50%;background:var(--aurum-gold)}.site-header .header-link{color:var(--aurum-red);text-decoration:none}.site-header .header-link:hover{color:var(--aurum-ink)}
@media(max-width:850px){.site-header nav a{padding:0;border:0;border-radius:0;background:none}.site-header nav a::after,.site-header nav a::before{display:none}}
@media(prefers-reduced-motion:reduce){.site-header nav a{transition:none}}

/* ===== SOURCE: about-phase3.css ===== */
/* Phase 3: About, history and leadership composition. */
.about-hero{background:var(--aurum-red);color:#fff;position:relative;overflow:hidden}.about-hero::after{content:"A";position:absolute;right:4vw;bottom:-.25em;font-size:45vw;line-height:.7;color:rgba(255,255,255,.08);font-weight:700;pointer-events:none}.about-hero h1{position:relative;z-index:1}.about-hero .lead{position:relative;z-index:1;color:rgba(255,255,255,.86);margin-top:36px;max-width:680px}.about-hero .lead em{color:var(--aurum-gold);font-family:var(--font-secondary);font-style:italic}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.proof-card{padding:28px;min-height:270px;border-radius:var(--radius-card);border-top:3px solid var(--aurum-gold);background:#fff}.proof-card:nth-child(2){background:var(--aurum-light-blue);border-top-color:var(--aurum-teal)}.proof-card:nth-child(3){background:var(--aurum-orange);color:#fff;border-top-color:var(--aurum-red)}.proof-card b{font-size:11px;color:var(--aurum-red);letter-spacing:.12em}.proof-card:nth-child(3) b{color:#fff}.proof-card h3{font-size:clamp(27px,3vw,45px);line-height:.92;letter-spacing:-.06em;margin:68px 0 14px}.proof-card p{font-size:15px;line-height:1.5;margin:0}.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.purpose-card{min-height:260px;border-radius:var(--radius-card);padding:34px;background:var(--aurum-gold)}.purpose-card.red{background:var(--aurum-red);color:#fff}.purpose-card .kicker{color:var(--aurum-red)}.purpose-card.red .kicker{color:var(--aurum-gold)}.purpose-card h3{font-size:clamp(33px,4vw,58px);line-height:.9;letter-spacing:-.06em;margin:50px 0 0}.history{background:var(--aurum-ink)}.timeline{position:relative;display:grid;gap:0}.timeline::before{content:"";position:absolute;left:94px;top:0;bottom:0;width:2px;background:var(--aurum-gold)}.timeline-item{position:relative;display:grid;grid-template-columns:150px 1fr;gap:36px;padding:0 0 56px}.timeline-year{font-size:13px;letter-spacing:.12em;color:var(--aurum-red);font-weight:700;text-align:right;padding-top:5px}.timeline-dot{position:absolute;left:87px;top:4px;width:16px;height:16px;background:var(--aurum-red);border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--aurum-red)}.timeline-copy{max-width:740px}.timeline-copy h3{font-size:clamp(27px,3vw,45px);letter-spacing:-.06em;line-height:.92;margin:0 0 14px}.timeline-copy p{font-size:16px;line-height:1.6;color:#665f57;margin:0}.leadership{background:var(--aurum-teal);color:#fff}.leadership .section-head .lead{color:rgba(255,255,255,.78)}.leadership .section-index{color:var(--aurum-gold)}.leadership-group{margin-top:74px}.leadership-group>h3{font-size:clamp(30px,4vw,58px);letter-spacing:-.06em;margin:0 0 28px;color:#fff}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.profile{background:#fff;color:var(--aurum-ink);border-radius:var(--radius-card);overflow:hidden;box-shadow:0 12px 32px rgba(25,22,19,.08);content-visibility:auto;contain-intrinsic-size:1px 340px}.profile summary{list-style:none;cursor:pointer;padding:0}.profile summary::-webkit-details-marker{display:none}.portrait-placeholder{position:relative;height:190px;display:grid;place-items:center;background:linear-gradient(145deg,var(--aurum-smoke),var(--aurum-light-blue));color:var(--aurum-teal);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
/* 2026-08-11: this used to only be set inside modern-refresh.css/density-review.css's
   desktop-only (min-width:851px) media query, so below that width the <img> had no
   sizing rule at all and just sat at its natural size — badly cropped/misaligned
   portraits on mobile. Making it unscoped so every breakpoint gets the same
   fill-the-frame treatment; the desktop !important rules still apply on top of this
   without conflict. */
.portrait-placeholder img{position:absolute;inset:0;z-index:3;width:100%;height:100%;object-fit:cover;object-position:center 18%}
.portrait-placeholder:has(img)::before,.portrait-placeholder:has(img)::after{display:none}.profile:nth-child(3n+2) .portrait-placeholder{background:linear-gradient(145deg,var(--aurum-gold),#f4d982)}.profile:nth-child(3n+3) .portrait-placeholder{background:linear-gradient(145deg,var(--aurum-orange),var(--aurum-red));color:#fff}.profile-meta{padding:20px}.profile-role{display:block;color:var(--aurum-red);font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px}.profile-name{font-size:27px;line-height:.95;letter-spacing:-.05em;margin:0}.profile-action{display:block;color:var(--aurum-red);font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:22px}.profile[open] .profile-action::after{content:""}.profile-bio{padding:0 20px 24px;border-top:1px solid var(--aurum-line);margin-top:0;padding-top:18px;font-size:14px;line-height:1.55;color:#665f57}.profile-bio p{margin:0 0 14px}.experts-note{border:1px solid rgba(255,255,255,.42);padding:24px;border-radius:var(--radius-card);font-size:16px;line-height:1.55;color:rgba(255,255,255,.86)}
@media(max-width:850px){.proof-grid,.purpose-grid,.profile-grid{grid-template-columns:1fr}.timeline::before{left:13px}.timeline-item{grid-template-columns:1fr;gap:8px;padding-left:42px}.timeline-year{text-align:left}.timeline-dot{left:6px}.portrait-placeholder{height:220px}.profile-meta{padding:14px 16px}.profile-name{font-size:21px}.profile-role{margin-bottom:6px}.profile-action{margin-top:12px}}

/* ===== SOURCE: media-phase8.css ===== */
/* Phase 8: approved client media, editorial crops and honest placeholder states. */
.phase8-photo-band{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:14px;margin:clamp(48px,7vw,92px) 0 0;align-items:stretch}.phase8-photo-band figure{margin:0;min-height:360px;position:relative;overflow:hidden;background:var(--aurum-ink);border-radius:var(--radius-card)}.phase8-photo-band figure:nth-child(2){min-height:260px;align-self:end}.phase8-photo-band img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-editorial);filter:saturate(.92)}.phase8-photo-band figure:hover img{transform:scale(1.035)}.phase8-photo-band figcaption{position:absolute;left:16px;right:16px;bottom:14px;color:#fff;font-size:10px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 16px rgba(0,0,0,.45)}.phase8-photo-band figcaption span{display:block;color:var(--aurum-gold);margin-bottom:5px}.phase8-media-section{padding:clamp(74px,9vw,130px) clamp(22px,9vw,150px);background:#fff;border-bottom:1px solid var(--aurum-line)}.phase8-media-section .section-head{margin-bottom:42px}.phase8-media-section .section-head .lead{max-width:700px}.phase8-media-rail{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:14px;align-items:stretch}.phase8-media-rail figure{margin:0;min-height:300px;position:relative;overflow:hidden;border-radius:var(--radius-card);background:var(--aurum-ink)}.phase8-media-rail figure:first-child{min-height:410px}.phase8-media-rail img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .9s var(--ease-editorial);filter:saturate(.92)}.phase8-media-rail figure:hover img{transform:scale(1.04)}.phase8-media-rail figcaption{position:absolute;left:15px;right:15px;bottom:13px;color:#fff;font-size:10px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 16px rgba(0,0,0,.5)}.phase8-media-rail figcaption span{display:block;color:var(--aurum-gold);margin-bottom:5px}.project-hero.has-media .project-hero-media{position:absolute;z-index:1;right:clamp(22px,8vw,140px);top:clamp(96px,13vw,170px);width:min(28vw,380px);height:min(34vw,440px);margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-card);background:var(--aurum-ink);box-shadow:0 24px 80px rgba(0,0,0,.18)}.project-hero-media img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9)}.project-hero-media figcaption{position:absolute;left:13px;right:13px;bottom:11px;color:#fff;font-size:9px;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 14px rgba(0,0,0,.45)}.project-hero-media figcaption span{display:block;color:var(--aurum-gold);margin-bottom:4px}.project-hero.has-media h1,.project-hero.has-media>.lead,.project-hero.has-media .project-meta{max-width:calc(100% - min(32vw,450px));margin-right:min(32vw,450px)}.office-visual{margin:0;min-height:280px;overflow:hidden;border-radius:var(--radius-card);background:var(--aurum-ink);position:relative}.office-visual img{width:100%;height:100%;min-height:280px;display:block;object-fit:cover;filter:saturate(.9)}.office-visual figcaption{position:absolute;left:16px;right:16px;bottom:14px;color:#fff;font-size:10px;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 16px rgba(0,0,0,.45)}
.phase8-history-image{display:block;min-height:clamp(340px,42vw,560px);margin:clamp(48px,7vw,92px) 0 0;position:relative;overflow:hidden;background:var(--aurum-ink);border-radius:var(--radius-card)}.phase8-history-image img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.9)}.phase8-history-image figcaption{position:absolute;left:20px;bottom:18px;max-width:320px;color:#fff;font-size:10px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 16px rgba(0,0,0,.45)}.phase8-history-image figcaption span{display:block;color:var(--aurum-gold);margin-bottom:5px}
@media(max-width:850px){.phase8-photo-band,.phase8-media-rail{grid-template-columns:1fr}.phase8-photo-band figure,.phase8-photo-band figure:nth-child(2),.phase8-media-rail figure,.phase8-media-rail figure:first-child{min-height:300px}.project-hero.has-media .project-hero-media{position:relative;top:auto;right:auto;width:100%;height:min(78vw,420px);margin:34px 0 0;z-index:1}.project-hero.has-media h1,.project-hero.has-media>.lead,.project-hero.has-media .project-meta{max-width:none;margin-right:0}.project-hero.has-media{padding-bottom:60px}}

.contact-main{background-image:linear-gradient(90deg,rgba(25,22,19,.97) 0%,rgba(25,22,19,.78) 56%,rgba(25,22,19,.58)),url('../photos/client/root/community-mother-child.jpg');background-size:cover;background-position:center 42%}

/* 2026-08-17: DriveDx4TB TOO page build.
   - .project-hero-logo: small programme-logo badge above the H1, same
     "logo as masthead" treatment used on the SUPREME-SECURE story.
   - .project-partners-line: the new partner-credit paragraph needs the
     same width squeeze as h1/.lead/.project-meta get from .has-media, or
     it runs full-width behind the floating hero photo.
   - .project-section.teal.has-texture: layers the DriveDx4TB TOO network
     graphic under the section's own teal gradient (semi-transparent so it
     reads as texture, not a competing full-strength image) rather than
     replacing the flat teal fill outright. */
/* 2026-08-17: full-bleed hero photo variant — "width to width like the
   hero images on the home page" (.hero-slide .hero-image), not the small
   corner-box .project-hero-media treatment other projects use. Image
   fills the whole hero section behind the text; the decorative red/gold
   ::before gradient (designed to sit on the flat --aurum-ink background)
   is switched off in favour of a plain dark bottom-weighted scrim so a
   real photo stays legible under white text, matching .hero-shade's own
   gradient direction on the homepage slider. */
.project-hero.has-full-media{overflow:hidden}
/* .page-hero::before (modern-refresh.css, a gold radial blob) is designed
   to sit tastefully on the flat dark .page-hero background other pages
   use — over a real photo it reads as stray colour, so it's switched off.
   .page-hero::after (a decorative ring: fixed 260x260 circle, border-radius
   50%, box-shadow rings) shares its ::after slot with the dark scrim below
   — the scrim rule didn't originally reset ::after's width/height/
   border-radius/box-shadow/border, so the ring's shape leaked through
   underneath the gradient, showing up as a stray circle behind the hero
   copy. Reset explicitly here instead of relying on the scrim rule to
   silently override every property. */
.project-hero.has-full-media::before{display:none}
.project-hero.has-full-media .project-hero-media{position:absolute;inset:0;z-index:0;width:100%;height:100%;margin:0;border:0;border-radius:0;box-shadow:none;background:none}
.project-hero.has-full-media .project-hero-media img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92)}
.project-hero.has-full-media::after{content:"";position:absolute;inset:0;z-index:1;width:auto;height:auto;border:0;border-radius:0;box-shadow:none;background:linear-gradient(0deg,rgba(15,13,11,.92),rgba(15,13,11,.62) 45%,rgba(15,13,11,.32));pointer-events:none}
.project-hero.has-full-media>*:not(.project-hero-media){position:relative;z-index:2}
.project-hero-logo{display:block;width:150px;height:auto;margin:0 0 22px}
/* 2026-08-17: client wants the DriveDx4TB TOO logo to BE the big heading
   (not a small badge above plain text) — sized like the h1 it replaces
   visually; the real <h1> stays in the DOM as .screen-reader-text so the
   page still has a real heading for accessibility/SEO. .screen-reader-text
   is the standard WP-core sr-only pattern; this theme didn't define it
   yet because nothing needed it until now. */
.project-hero-logo--heading{width:clamp(240px,26vw,380px);margin-bottom:28px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.project-hero.has-media .project-partners-line{max-width:calc(100% - min(32vw,450px));margin-right:min(32vw,450px)}
.project-section.teal.has-texture{
  background-image:linear-gradient(125deg,rgba(7,87,102,.88),rgba(19,120,138,.84)),var(--texture-url);
  background-size:auto,cover;
  background-position:left top,center;
  background-repeat:repeat,no-repeat;
}
@media(max-width:850px){
  .project-hero-logo{width:120px;margin-bottom:18px}
  .project-hero.has-media .project-partners-line{max-width:none;margin-right:0}
}

/* 2026-08-17: client rejected the standalone 3-photo strip that sat
   between sections with no text around it ("random looking, out of
   place... add them in blocks with some of the written content") —
   photos now live inside the context/context2 prose sections as a
   text+image split, replacing the isolated .phase8-media-rail band. */
.project-context-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.62fr);gap:clamp(28px,5vw,56px);align-items:center;margin-top:14px}
.project-context-split .lead{margin:0}
.project-context-media{margin:0;min-height:280px;position:relative;overflow:hidden;border-radius:var(--radius-card);background:var(--aurum-ink)}
.project-context-media img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.92)}
@media(max-width:850px){
  .project-context-split{grid-template-columns:1fr}
  .project-context-media{min-height:240px}
}

/* 2026-08-17: client asked to drop the photo from "Closing the TB
   Diagnostics Gap" too and just let the 4 existing paragraphs fill the
   section instead of sitting in one narrow column with empty space
   beside it ("spread the content out nicely... no waste space"). Text
   only, same words, balanced into two columns across the section's full
   width rather than widening the paragraph column itself (which would
   make lines uncomfortably long). */
.lead.project-context-wide{max-width:none;column-count:2;column-gap:clamp(40px,5vw,70px);margin-top:14px}
.lead.project-context-wide p{break-inside:avoid;margin:0 0 26px}
.lead.project-context-wide p:last-child{margin-bottom:0}
@media(max-width:850px){
  .lead.project-context-wide{column-count:1}
}

/* 2026-08-17: "Shaping the Future of TB Diagnosis" editorial redesign —
   exact wording/images/Back button untouched per the client's brief; this
   is layout/spacing/type only. Title up top, two images stacked left,
   the same two existing paragraphs right, no new headings/labels/cards. */
.project-editorial{padding:clamp(60px,8vw,110px) clamp(24px,7vw,110px)}
.project-editorial-inner{max-width:1240px;margin:0 auto}
.project-editorial-title{margin:0 0 clamp(40px,4vw,55px);font-size:clamp(48px,5vw,72px);font-weight:700;line-height:1;letter-spacing:-.03em;max-width:680px;color:var(--aurum-ink)}
.project-editorial-title em{color:var(--aurum-red);font-style:normal}
.project-editorial-grid{display:grid;grid-template-columns:minmax(0,.47fr) minmax(0,.53fr);grid-auto-rows:auto;column-gap:clamp(70px,6vw,100px);row-gap:16px;align-items:center}
.project-editorial-figure{margin:0;border-radius:14px;overflow:hidden;background:var(--aurum-ink)}
.project-editorial-figure img{display:block;width:100%;height:auto;aspect-ratio:1.32;object-fit:cover;filter:saturate(.94)}
.project-editorial-p{margin:0;font-size:clamp(17px,1.1vw,19px);line-height:1.65;max-width:530px;color:#211d1a}
.project-editorial-p:first-of-type{padding-bottom:18px;border-bottom:1px solid rgba(33,29,26,.14)}
@media(max-width:1100px) and (min-width:851px){
  .project-editorial-grid{column-gap:clamp(40px,4vw,64px)}
  .project-editorial-title{font-size:clamp(42px,4.6vw,58px)}
}
@media(max-width:850px){
  .project-editorial-grid{grid-template-columns:1fr;row-gap:16px}
  .project-editorial-p{margin-top:0}
  .project-editorial-p:first-of-type{margin-bottom:32px}
  .project-editorial-title{font-size:clamp(36px,9vw,48px);max-width:none}
}

/* 2026-08-18 mobile performance: same Contact hero treatment, smaller
   source file on phones so the background appears sooner on Wi-Fi. */
@media(max-width:850px){
  .contact-main{
    background-image:
      linear-gradient(90deg,rgba(25,22,19,.97) 0%,rgba(25,22,19,.78) 56%,rgba(25,22,19,.58)),
      url('../responsive/photos/client/root/community-mother-child-768.jpg');
  }
}

/* ===== SOURCE: modern-refresh.css ===== */
/*
   Aurum visual refresh
   A contemporary, confident layer for every route. Content and approved
   brand colours stay intact; the presentation moves away from paper rules,
   hairline grids and archival editorial styling.
*/
:root{
  --modern-bg:#fff;
  --modern-panel:#fff;
  --modern-ink:#171514;
  --modern-muted:#6d6961;
  --modern-radius:18px;
  --modern-shadow:0 22px 60px rgba(25,22,19,.13);
  --modern-shadow-soft:0 12px 32px rgba(25,22,19,.09);
}

html{background:var(--modern-bg)}
body{background:var(--modern-bg);color:var(--modern-ink)}

/* A cleaner, product-like navigation surface. */
/* backdrop-filter removed 2026-08-11: position:fixed + backdrop-filter is
   the classic scroll-jank combo — every scroll frame the browser has to
   re-blur whatever content just moved behind the header. Bumped opacity
   from .92 to .97 to keep it reading as solid/premium without the blur
   doing the work. */
.site-header{height:82px;padding:0 clamp(18px,5vw,72px);background:rgba(255,255,255,.97);border-bottom:1px solid rgba(25,22,19,.09);box-shadow:0 8px 30px rgba(25,22,19,.06)}
.site-header .brand{width:94px;height:72px;display:flex;align-items:center;overflow:visible}
.site-header .brand img{width:94px;height:72px;object-fit:contain}
.site-header nav{gap:5px}
.site-header nav a{border-radius:999px!important;padding:10px 14px!important;font-size:10px!important;letter-spacing:.12em;transition:background .28s var(--ease-editorial),color .28s var(--ease-editorial),transform .28s var(--ease-editorial)!important}
.site-header nav a:hover{background:rgba(224,172,38,.16)!important;border-color:transparent!important;transform:translateY(-2px)!important}
.site-header nav a[aria-current="page"]{background:var(--aurum-red)!important;color:#fff!important;border-color:transparent!important}
.site-header nav a[aria-current="page"]::before{background:var(--aurum-gold)!important}
.site-header nav a::after,.site-header nav a[aria-current="page"]::after{display:none!important}
.site-header .header-link{border-left:0;padding:11px 0 11px 22px;color:var(--aurum-red)}
.site-header nav a:visited,.site-header .header-link:visited{color:inherit}

/* Search toggle, added to the nav bar 2026-08-04. */
.nav-search{position:relative;display:flex;align-items:center;justify-content:center}
.nav-search-toggle{width:38px;height:38px;border-radius:50%;border:1px solid rgba(25,22,19,.18);background:transparent;display:grid;place-items:center;color:var(--aurum-ink);padding:0;transition:background .25s var(--ease-editorial),color .25s var(--ease-editorial),border-color .25s var(--ease-editorial)}
.nav-search-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}
.nav-search-toggle:hover,.nav-search-toggle[aria-expanded="true"]{background:var(--aurum-red);border-color:transparent;color:#fff}
.nav-search-panel{position:absolute;top:calc(100% + 12px);right:0;z-index:30;display:flex;flex-direction:column;min-width:240px;max-width:min(90vw,340px);padding:6px;background:#fff;border:1px solid rgba(25,22,19,.12);border-radius:11px;box-shadow:0 20px 46px rgba(25,22,19,.16)}
.nav-search-panel[hidden]{display:none}
.nav-search-form{display:flex;align-items:center;gap:6px;padding:2px 6px 2px 8px}
.nav-search-form input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:13px;padding:8px 0}
.nav-search-form button[type="submit"]{border:0;background:rgba(224,172,38,.16);color:var(--aurum-red);width:30px;height:30px;border-radius:50%;font-size:14px;display:grid;place-items:center;flex:none}
.nav-search-results{display:flex;flex-direction:column}
.nav-search-results[hidden]{display:none}
.nav-search-results a{display:block;padding:10px 12px;border-radius:7px;border-top:1px solid rgba(25,22,19,.08);font-size:13px;line-height:1.35;color:var(--aurum-ink);transition:background .2s var(--ease-editorial),color .2s var(--ease-editorial)}
.nav-search-results a:first-child{border-top:1px solid rgba(25,22,19,.08);margin-top:4px}
.nav-search-results a:hover,.nav-search-results a:focus-visible{background:rgba(224,172,38,.16);color:var(--aurum-red)}
.nav-search-empty{margin:4px 0 0;padding:12px;border-top:1px solid rgba(25,22,19,.08);font-size:13px;color:rgba(25,22,19,.55)}
@media(max-width:850px){.nav-search-panel{right:0;left:auto;min-width:min(78vw,300px)}}
@media(max-width:850px){
  .nav-search-toggle{width:38px;height:38px;border-color:var(--aurum-red)}
  .nav-search-form{right:0;left:auto;min-width:min(78vw,300px)}
}

/* Replace the ruled-paper treatment with calm surfaces and breathing space. */
.ruled{background-image:none!important}
.page-section{margin:16px clamp(12px,2.2vw,30px);padding:clamp(72px,9vw,132px) clamp(22px,7vw,116px);border:0;border-radius:var(--modern-radius);background:var(--modern-panel);box-shadow:var(--modern-shadow-soft)}
.section-head{gap:clamp(28px,6vw,100px);margin-bottom:52px}
.section-head h2,.display{font-weight:600;letter-spacing:-.07em}
.lead,.body-copy{color:var(--modern-muted)}
.section-index{border-top:0;padding-top:0;margin-bottom:44px;color:var(--aurum-red)}
.section-index::before{content:"";display:inline-block;width:30px;height:3px;margin:0 12px 3px 0;border-radius:3px;background:var(--aurum-gold)}
.page-hero{position:relative;min-height:500px;margin:0 14px;padding:clamp(130px,16vw,210px) clamp(22px,7vw,116px) clamp(72px,9vw,120px);border-radius:0 0 var(--modern-radius) var(--modern-radius);display:flex;flex-direction:column;justify-content:flex-end;background:var(--modern-ink);color:#fff;box-shadow:var(--modern-shadow);overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:auto -10% -40% 38%;height:90%;background:radial-gradient(circle,rgba(224,172,38,.34),transparent 68%);pointer-events:none}
.page-hero::after{content:"";position:absolute;right:7%;bottom:-8%;width:260px;height:260px;border:1px solid rgba(247,245,235,.25);border-radius:50%;box-shadow:0 0 0 28px rgba(247,245,235,.04),0 0 0 58px rgba(247,245,235,.035);pointer-events:none}
.page-hero>*{position:relative;z-index:1}
.page-hero h1{font-size:clamp(54px,7.5vw,116px);line-height:.88;letter-spacing:-.085em;max-width:900px}
.page-hero h1 em{font-style:normal;color:var(--aurum-gold)}
.page-hero .lead{color:rgba(255,255,255,.78);max-width:680px;margin-top:30px}
.about-hero,.contact-hero{background:linear-gradient(125deg,#8f1318 0%,var(--aurum-red) 56%,#e04b37 100%)!important}
.work-hero,.project-hero,.story-hero{background:var(--aurum-ink)!important}
.footprint-hero,.resources-hero{background:linear-gradient(125deg,#064b59 0%,var(--aurum-teal) 62%,#0b8790 100%)!important}
.involve-hero{background:linear-gradient(125deg,#e0a81d 0%,var(--aurum-gold) 62%,#f3ca59 100%)!important;color:var(--modern-ink)}
.involve-hero .lead{color:rgba(25,22,19,.72)}

/* Home: replace long paper bands with floating product-like modules. */
.statement,.values,.work-section,.people,.closing{margin:16px;border-radius:var(--modern-radius);overflow:hidden}
.statement{position:relative;padding-top:clamp(64px,7vw,104px);padding-bottom:clamp(64px,7vw,104px);background:var(--aurum-ink)!important;color:#fff}
.statement::after{content:"";position:absolute;right:6%;bottom:-18%;width:320px;height:320px;border:1px solid rgba(224,172,38,.26);border-radius:50%;box-shadow:0 0 0 34px rgba(224,172,38,.05),0 0 0 72px rgba(224,172,38,.035);pointer-events:none}
.statement .section-index{color:var(--aurum-gold)}
.statement .section-index::before{background:var(--aurum-red)}
.statement .section-index{margin-bottom:32px}
.statement .statement-grid{grid-template-columns:minmax(0,1.06fr) minmax(300px,.82fr) minmax(250px,.72fr);gap:clamp(24px,3.2vw,54px);align-items:center}
.statement .display{position:relative;padding-left:24px;font-size:clamp(48px,5.8vw,88px);line-height:.86;color:#fff}
.statement .display::before{content:"";position:absolute;left:0;top:.1em;bottom:.06em;width:5px;border-radius:4px;background:var(--aurum-red)}
.statement .body-copy{color:rgba(255,255,255,.7)}
.statement .body-copy{max-width:390px;font-size:15px;line-height:1.5}
.statement .body-copy p{margin-bottom:16px}
.statement-proof{position:relative;z-index:1;display:grid;gap:0;min-height:300px;margin:0;padding:24px;overflow:hidden;border:1px solid rgba(224,172,38,.48);border-radius:22px;background:linear-gradient(145deg,rgba(224,172,38,.18),rgba(205,32,38,.14) 100%);box-shadow:0 26px 60px rgba(0,0,0,.2)}
.statement-proof::before{content:"A";position:absolute;right:-.05em;bottom:-.28em;color:rgba(255,255,255,.06);font-size:17rem;font-weight:700;line-height:.7;pointer-events:none}
.statement-proof div{position:relative;z-index:1;display:grid;align-content:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.2)}
.statement-proof div:last-child{border-bottom:0}
.statement-proof dt{margin-bottom:7px;color:var(--aurum-gold);font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.statement-proof dd{margin:0;color:#fff;font-size:clamp(17px,1.65vw,25px);line-height:1.04;letter-spacing:-.04em}
.purpose{margin:16px;border-radius:var(--modern-radius);overflow:hidden;box-shadow:var(--modern-shadow)}
.purpose-panel{padding:clamp(72px,9vw,132px) clamp(22px,7vw,116px)}
.purpose-art{background:linear-gradient(140deg,var(--aurum-gold),#f1d16d 55%,var(--aurum-orange))}
.purpose-art{position:relative;isolation:isolate}
.purpose-art-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;filter:saturate(.78) contrast(.94);z-index:0}
.purpose-art::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(224,172,38,.86),rgba(240,198,83,.58) 54%,rgba(222,103,57,.74));mix-blend-mode:color;pointer-events:none}
.purpose-art::before{z-index:2}
.purpose-art span,.purpose-art i{z-index:3}
.values{background:var(--modern-ink);color:#fff}
.values .section-index{color:var(--aurum-gold)}
.values .display{color:#fff}
.values .body-copy{color:rgba(255,255,255,.7)}
.values-grid{grid-template-columns:repeat(5,1fr);gap:14px;border:0}
.values-grid article{min-height:300px;padding:24px;border:0;border-radius:var(--modern-radius);background:var(--aurum-ink);color:#fff;box-shadow:none;display:flex;flex-direction:column;transition:transform .42s var(--ease-editorial),background .42s var(--ease-editorial),box-shadow .42s var(--ease-editorial)}
.values-grid article:nth-child(2){background:var(--aurum-red)}
.values-grid article:nth-child(3){background:var(--aurum-teal)}
.values-grid article:nth-child(4){background:var(--aurum-orange)}
.values-grid article:nth-child(5){background:var(--aurum-gold);color:var(--modern-ink)}
.values-grid article:hover{transform:translateY(-10px) rotate(-1deg);background:var(--aurum-slate);box-shadow:var(--modern-shadow)}
.values-grid article:nth-child(2):hover{background:#e0393d}.values-grid article:nth-child(3):hover{background:#08889a}.values-grid article:nth-child(4):hover{background:#e77443}.values-grid article:nth-child(5):hover{background:#f0c451}
.values-grid b{color:var(--aurum-gold)}.values-grid article:nth-child(5) b{color:var(--aurum-red)}
.values-grid h3{font-size:clamp(28px,2.8vw,44px);margin:auto 0 14px;letter-spacing:-.07em}
.values-grid p{color:inherit;opacity:.75}
.work-section{background:var(--modern-panel)}
.work-section .section-index,.people .section-index{color:var(--aurum-red)}
.work-rail{gap:14px}
.work-card{min-height:360px;border:0!important;border-radius:var(--modern-radius)!important;box-shadow:var(--modern-shadow-soft)}
.work-card:nth-child(1){background:var(--aurum-red)}.work-card:nth-child(2){background:var(--aurum-teal)}.work-card:nth-child(3){background:var(--aurum-gold);color:var(--modern-ink)}
.work-card>p,.work-card:nth-child(3)>p{color:rgba(255,255,255,.8)}.work-card:nth-child(3)>p{color:rgba(25,22,19,.72)}
.work-card{min-width:0}
.work-card h3{max-width:100%;min-width:0;font-size:clamp(32px,3.35vw,52px);overflow-wrap:anywhere;text-wrap:balance}
.people{background:linear-gradient(125deg,#075766,var(--aurum-teal));color:#fff}
.people .section-index{color:var(--aurum-gold)}
.people-note{border-left:1px solid rgba(255,255,255,.42)}
.people{position:relative;isolation:isolate;background:linear-gradient(125deg,#075766,var(--aurum-teal));color:#fff}
.people::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(7,87,102,.98) 0%,rgba(7,87,102,.86) 48%,rgba(7,87,102,.48) 100%);pointer-events:none}
.people-layout,.people>.section-index{position:relative;z-index:2}
.people-media{position:absolute!important;z-index:1!important;right:7%;top:16%;width:min(430px,34%);height:68%;margin:0;overflow:hidden;border-radius:var(--modern-radius);box-shadow:0 24px 60px rgba(8,33,38,.28);background:var(--modern-ink)}
.people-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.82);transition:transform 1s var(--ease-editorial),filter 1s var(--ease-editorial)}
.people-media::after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(7,87,102,.5),rgba(7,87,102,.12) 55%,rgba(224,172,38,.28));mix-blend-mode:color;pointer-events:none}
.people-media figcaption{position:absolute;z-index:1;left:18px;bottom:16px;color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.people-media:hover img{transform:scale(1.04);filter:saturate(1)}
.work-card-media{position:relative;height:112px;margin:0 0 18px;overflow:hidden;border-radius:12px;background:var(--modern-ink)}
.work-card-media img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.72);transition:transform 1s var(--ease-editorial),filter 1s var(--ease-editorial)}
.work-card-media::after{content:"";position:absolute;inset:0;pointer-events:none}
.work-card:nth-child(1) .work-card-media::after{background:linear-gradient(120deg,rgba(205,32,38,.78),rgba(205,32,38,.12))}
.work-card:nth-child(2) .work-card-media::after{background:linear-gradient(120deg,rgba(7,113,135,.82),rgba(7,113,135,.12))}
.work-card:nth-child(3) .work-card-media::after{background:linear-gradient(120deg,rgba(224,172,38,.82),rgba(224,172,38,.12))}
.work-card:hover .work-card-media img{transform:scale(1.045);filter:saturate(.98)}
.profile-search{align-self:end;min-width:min(100%,320px);padding:18px 20px;border-radius:14px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.profile-search label{display:block;margin-bottom:9px;color:var(--aurum-gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.profile-search-control{display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,.58)}
.profile-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#fff;font:inherit;font-size:15px;padding:4px 0 10px}
.profile-search input::placeholder{color:rgba(255,255,255,.68)}
.profile-search-control span{color:var(--aurum-gold);font-size:25px;line-height:1}
.profile-search-status{margin:10px 0 0;color:rgba(255,255,255,.72);font-size:12px;line-height:1.35}
.leadership .profile[hidden],.leadership-group.is-filtered-empty{display:none}
.closing{background:linear-gradient(125deg,var(--aurum-gold),#efc654 55%,var(--aurum-orange));box-shadow:var(--modern-shadow)}

/* Inner-page modules: colour blocks, depth and clear hierarchy. */
.proof-card,.purpose-card,.card,.focus-card,.feature-card,.process-card,.office-card,.invite-card,.profile,.evidence-card,.module-card,.story-card{border:0!important;border-radius:var(--modern-radius)!important;box-shadow:var(--modern-shadow-soft)}
.proof-card h3,.card h3,.focus-card h3,.feature-card h3,.process-card h3,.office-card h3{letter-spacing:-.07em}
.proof-card,.card,.focus-card,.process-card,.office-card,.evidence-card{background:#fff}
.purpose-grid,.proof-grid,.card-grid,.focus-list,.feature-grid,.office-grid,.invite-grid,.process-grid,.evidence-grid,.module-grid,.story-grid{gap:16px}
.history{background:var(--modern-ink)!important;color:#fff}.history .section-head .lead,.history .timeline-copy p{color:rgba(255,255,255,.68)}
.history .section-index{color:var(--aurum-gold)}.history .timeline::before{background:rgba(224,172,38,.5)}.history .timeline-dot{border-color:var(--modern-ink)}.history .timeline-year{color:var(--aurum-gold)}
.timeline-item{padding:26px 24px;border-radius:14px;background:var(--aurum-ink);margin-bottom:12px;grid-template-columns:150px 1fr;gap:28px}.timeline-copy h3{color:#fff}
.leadership{margin:16px;border-radius:var(--modern-radius);box-shadow:var(--modern-shadow);background:linear-gradient(125deg,#075766,var(--aurum-teal))!important}.profile{box-shadow:0 12px 28px rgba(0,0,0,.14)}
.discipline,.project-section,.area-section,.phase8-media-section{margin:16px clamp(12px,2.2vw,30px);border-radius:var(--modern-radius);border:0!important;box-shadow:var(--modern-shadow-soft);overflow:hidden}
.discipline.red{background:linear-gradient(125deg,#9d171d,var(--aurum-red))}.discipline.teal{background:linear-gradient(125deg,#075766,var(--aurum-teal))}.discipline.gold{background:linear-gradient(125deg,#d99f18,var(--aurum-gold))}
.infra-grid{gap:12px;border:0}.infra-card{border:0;border-radius:14px;background:rgba(255,255,255,.13);padding:22px;min-height:238px}.infra-card:hover{background:rgba(255,255,255,.25);transform:translateY(-6px)}
.health-index{background:var(--modern-panel)!important}.health-list{grid-template-columns:repeat(2,1fr);gap:12px;border:0}.health-link,.health-link:nth-child(odd),.health-link:nth-child(even){padding:24px;border:0;border-radius:14px;background:#fff;box-shadow:var(--modern-shadow-soft)}.health-link:hover{background:var(--aurum-red);padding:24px 28px;color:#fff}.health-link:hover .health-number,.health-link:hover span:last-child{color:var(--aurum-gold)}
.project-section.dark{background:var(--aurum-ink)}.project-section.red{background:linear-gradient(125deg,#9d171d,var(--aurum-red))}.project-section.gold{background:linear-gradient(125deg,#d99f18,var(--aurum-gold))}.project-section.blue{background:linear-gradient(125deg,#94d9e3,var(--aurum-light-blue))}.project-section.teal{background:linear-gradient(125deg,#075766,var(--aurum-teal))}
.project-table,.rfp-table,.data-table{border:0;border-radius:14px;overflow:hidden;box-shadow:var(--modern-shadow-soft)}.project-table th,.project-table td,.rfp-table th,.rfp-table td,.data-table th,.data-table td{border-color:rgba(25,22,19,.09)}
.resource-link,.resource-link:visited{display:inline-flex;gap:14px;align-items:center;color:var(--aurum-red)!important;font-size:10px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--aurum-red);padding-bottom:10px}
.resource-link span{font-size:14px}
.rfp-table .rfp-title-story-link{display:flex;width:max-content;margin-top:6px}
.map-panel{box-shadow:var(--modern-shadow)}.map-art{background-image:none;background:radial-gradient(circle at 54% 44%,rgba(224,172,38,.35),transparent 38%),linear-gradient(145deg,#fff,#d9eef0)}.map-art::before{border:0;border-radius:50%;background:rgba(7,113,135,.12);width:58%;height:58%;color:var(--aurum-teal);font-weight:700}
.resource-feature,.resource-aside,.contact-main,.contact-route{border-radius:var(--modern-radius);box-shadow:var(--modern-shadow)}
.empty-state,.rfp-empty{border:0;border-radius:14px;background:#fff;box-shadow:var(--modern-shadow-soft)}
.story-hero{margin:0 14px;border-radius:0 0 var(--modern-radius) var(--modern-radius)}
.story-content{background:var(--modern-bg)}.story-body{background:var(--modern-panel);padding:clamp(26px,4vw,56px);border-radius:var(--modern-radius);box-shadow:var(--modern-shadow-soft)}
.story-aside{border-top:0;background:var(--aurum-ink);color:#fff;padding:18px;border-radius:14px}.story-aside dt{color:var(--aurum-gold)}.story-aside dd{color:#fff}
.story-next{margin:16px;border-radius:var(--modern-radius);box-shadow:var(--modern-shadow);background:linear-gradient(125deg,var(--aurum-gold),#f0c653,var(--aurum-orange))}
.site-footer,footer{margin:16px;padding:30px clamp(22px,5vw,72px);border:0;border-radius:var(--modern-radius);background:var(--modern-ink);color:#fff;box-shadow:var(--modern-shadow)}
.site-footer img,footer img{width:94px;height:72px;object-fit:contain}.site-footer a,footer a{color:var(--aurum-gold)}.footer-nav a{color:rgba(255,255,255,.78)}

/* Desktop navigation: the wordmark is the centre anchor, with the primary
   links balanced around it. The mobile menu remains the existing drawer. */
@media(min-width:851px){
  .site-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:0}
  .site-header .brand{grid-column:2;grid-row:1;position:relative;left:auto;justify-self:center;width:88px;height:70px;z-index:3}
  .site-header .brand img{width:88px;height:70px}
  .site-header nav{grid-column:1/4;grid-row:1;display:grid;grid-template-columns:max-content max-content max-content clamp(220px,16vw,240px) max-content max-content max-content;justify-content:center;align-items:center;width:100%;margin:0!important;padding:0;column-gap:clamp(10px,1.1vw,16px);row-gap:0;z-index:1}
  .site-header nav a{justify-self:stretch;text-align:center;white-space:nowrap;font-size:9px!important;letter-spacing:.07em!important;padding:8px 5px!important}
  .site-header nav a:nth-child(1){grid-column:1}.site-header nav a:nth-child(2){grid-column:2}.site-header nav a:nth-child(3){grid-column:3}.site-header nav a:nth-child(4){grid-column:5}.site-header nav a:nth-child(5){grid-column:6}.site-header nav a:nth-child(6){grid-column:7}
  .site-header .header-link{grid-column:3;grid-row:1;justify-self:end;z-index:4;margin:0;transform:translateX(8px);padding:11px 0 11px 14px;background:rgba(255,255,255,.94);font-size:10px!important;letter-spacing:.09em!important}
}

@media(max-width:850px){
  .site-header .brand{width:78px;height:58px}.site-header .brand img{width:78px;height:58px}
  .site-header{height:72px}
  .mobile-nav{padding:102px 24px 28px;background:var(--aurum-ink);color:var(--modern-panel);gap:0;counter-reset:mobile-nav;}
  .mobile-nav::before{content:"PRIMARY NAVIGATION";display:block;margin:0 0 16px;color:var(--aurum-gold);font-size:10px;line-height:1;letter-spacing:.16em}
  .mobile-nav a,.mobile-nav a:visited{display:flex;align-items:baseline;gap:15px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:clamp(28px,7.8vw,42px);line-height:1;letter-spacing:-.055em;counter-increment:mobile-nav;color:var(--modern-panel)!important;text-decoration:none;transition:color .25s var(--ease-editorial),padding-left .25s var(--ease-editorial)}
  .mobile-nav a::before{content:counter(mobile-nav,decimal-leading-zero);flex:0 0 27px;color:var(--aurum-gold);font-size:10px;line-height:1;letter-spacing:.12em}
  .mobile-nav a:hover,.mobile-nav a:focus-visible,.mobile-nav a[aria-current="page"]{color:var(--aurum-gold)!important;padding-left:8px}
  .mobile-nav a:last-child{border-bottom:0}
  .menu-toggle{display:grid;place-items:center;align-content:center;gap:4px;width:52px;height:44px;border:1px solid var(--aurum-red);background:rgba(255,255,255,.35)}
  .menu-toggle span{width:22px;height:2px;margin:0;background:var(--aurum-red)}
  .people-media{position:relative!important;right:auto;top:auto;width:100%;height:210px;margin:28px 0 0}
  .work-card-media{height:102px}
  .profile-search{align-self:stretch;margin-top:20px}
  .page-hero{margin:0 8px;border-radius:0 0 14px 14px;min-height:440px;padding-top:110px}
  .page-hero h1{font-size:clamp(48px,12vw,82px)}
  .statement .statement-grid{grid-template-columns:1fr;gap:30px}
  .statement-proof{min-height:auto;padding:12px 20px;border-radius:14px}
  .statement-proof div{padding:16px 0}
  .page-section,.discipline,.project-section,.area-section,.phase8-media-section{margin:10px 8px;border-radius:14px}
  .values-grid{grid-template-columns:1fr 1fr}.health-list{grid-template-columns:1fr}
  .timeline-item{grid-template-columns:1fr;gap:7px;padding-left:22px}.timeline::before{left:6px}.timeline-dot{left:-1px}
  .site-footer,footer{margin:10px;border-radius:14px}
}

@media(max-width:520px){
  .values-grid{grid-template-columns:1fr}.values-grid article{min-height:240px}
  .page-hero h1{font-size:clamp(44px,14vw,70px)}
}

/* What We Do: image-led pacing and contextual media breaks. */
.page-hero.has-work-media{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:clamp(30px,7vw,100px);align-items:center;min-height:620px;padding-top:clamp(120px,13vw,170px);padding-bottom:clamp(70px,8vw,110px)}
.has-work-media .work-hero-copy{max-width:720px}
.has-work-media .work-hero-media{position:relative;inset:auto;width:100%;height:clamp(380px,42vw,560px);margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:var(--modern-radius);background:var(--modern-ink);box-shadow:0 28px 90px rgba(0,0,0,.28);z-index:1}
.has-work-media .work-hero-media img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:62% center;filter:saturate(.9);transition:transform 1.2s var(--ease-editorial),filter 1.2s var(--ease-editorial)}
.has-work-media .work-hero-media:hover img{transform:scale(1.035);filter:saturate(1.02)}
.work-hero-media figcaption{position:absolute;left:18px;right:18px;bottom:18px;color:#fff;font-size:10px;line-height:1.35;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 1px 18px rgba(0,0,0,.55)}
.work-hero-media figcaption span{display:block;color:var(--aurum-gold);margin-bottom:5px}
.work-image-band{display:grid;grid-template-columns:minmax(0,.84fr) minmax(320px,1.16fr);gap:clamp(28px,7vw,110px);align-items:center;margin:16px clamp(12px,2.2vw,30px);padding:clamp(44px,7vw,100px) clamp(22px,9vw,150px);border-radius:var(--modern-radius);box-shadow:var(--modern-shadow);overflow:hidden}
.work-image-band.work-image-human{grid-template-columns:minmax(320px,1.16fr) minmax(0,.84fr)}
.work-image-band.work-image-human .work-image-band-copy{order:2}
.work-image-band-copy{max-width:500px}
.work-image-band-copy h2{margin:0 0 24px;font-size:clamp(50px,6.5vw,94px);line-height:.86;letter-spacing:-.08em}
.work-image-band-copy h2 em{font-style:italic;color:var(--aurum-gold)}
.work-image-band-copy>p:last-child{max-width:420px;margin:0;font-size:17px;line-height:1.6;opacity:.78}
.work-image-kicker{margin:0 0 22px;font-size:10px;line-height:1.2;text-transform:uppercase;letter-spacing:.14em;color:var(--aurum-gold)}
.work-image-band figure,.work-community-context figure{position:relative;min-height:clamp(320px,38vw,520px);margin:0;overflow:hidden;border-radius:var(--modern-radius);background:var(--modern-ink);box-shadow:var(--modern-shadow-soft)}
.work-image-band figure img,.work-community-context figure img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;transition:transform .95s var(--ease-editorial),filter .95s var(--ease-editorial);filter:saturate(.94)}
.work-image-band figure:hover img,.work-community-context figure:hover img{transform:scale(1.035);filter:saturate(1.04)}
.work-image-band figcaption,.work-community-context figcaption{position:absolute;left:17px;right:17px;bottom:16px;color:#fff;font-size:10px;line-height:1.35;letter-spacing:.09em;text-transform:uppercase;text-shadow:0 1px 18px rgba(0,0,0,.55)}
.work-image-band figcaption span,.work-community-context figcaption span{display:block;color:var(--aurum-gold);margin-bottom:5px}
.work-image-operations{background:var(--aurum-ink);color:#fff}
.work-image-operations .work-image-band-copy>p:last-child{color:rgba(255,255,255,.78)}
.work-image-human{background:var(--aurum-light-blue);color:var(--aurum-ink)}
.work-image-human .work-image-kicker{color:var(--aurum-teal)}
.work-image-access{background:linear-gradient(125deg,#d79c17,var(--aurum-gold));color:var(--aurum-ink)}
.work-image-access .work-image-kicker{color:var(--aurum-red)}
.work-image-access .work-image-band-copy h2 em{color:var(--aurum-red)}
.work-community-context{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(28px,7vw,110px);align-items:center;margin:16px clamp(12px,2.2vw,30px);padding:clamp(44px,7vw,100px) clamp(22px,9vw,150px);border-radius:var(--modern-radius);background:var(--modern-ink);color:#fff;box-shadow:var(--modern-shadow);overflow:hidden}
.work-community-context figure{min-height:clamp(360px,38vw,540px)}
.work-community-context h2{margin:0 0 24px;font-size:clamp(50px,6.5vw,94px);line-height:.86;letter-spacing:-.08em}
.work-community-context h2 em{font-style:italic;color:var(--aurum-gold)}
.work-community-context p:not(.work-image-kicker){max-width:420px;margin:0 0 22px;color:rgba(255,255,255,.78);font-size:17px;line-height:1.6}
.work-community-context small{display:block;max-width:360px;color:rgba(255,255,255,.48);font-size:11px;line-height:1.5}
.discipline .button{display:inline-flex;align-items:center;gap:14px;margin-top:6px;padding:15px 18px;background:var(--aurum-ink);color:#fff;border-radius:var(--radius-control);font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;transition:transform .3s var(--ease-editorial),background .3s var(--ease-editorial),color .3s var(--ease-editorial)}
.discipline .button:hover{transform:translateY(-3px);background:var(--aurum-gold);color:var(--aurum-ink)}
.discipline .button span{color:var(--aurum-gold);transition:color .3s var(--ease-editorial)}
.discipline .button:hover span{color:var(--aurum-red)}
.discipline.gold .button{background:var(--aurum-red);color:#fff}
@media(max-width:850px){
  .page-hero.has-work-media{grid-template-columns:1fr;min-height:720px;padding-top:110px;gap:34px}
  .has-work-media .work-hero-media{height:min(82vw,460px)}
  .work-image-band,.work-image-band.work-image-human,.work-community-context{grid-template-columns:1fr;gap:28px;padding:48px 24px}
  .work-image-band.work-image-human .work-image-band-copy{order:0}
  .work-image-band figure,.work-community-context figure{min-height:320px}
  .work-image-band-copy h2,.work-community-context h2{font-size:clamp(48px,13vw,76px)}
}

/* Desktop art direction: every supplied image gets its own composition.
   The mobile stacking above remains intentionally unchanged. */
@media(min-width:851px){
  .page-hero.has-work-media{grid-template-columns:minmax(0,.9fr) minmax(430px,.86fr);min-height:clamp(600px,63vw,740px);padding-top:clamp(88px,9vw,120px);padding-bottom:clamp(70px,8vw,104px);padding-right:clamp(58px,9vw,150px)}
  .has-work-media .work-hero-copy{align-self:start;padding-top:clamp(14px,1.8vw,24px)}
  .has-work-media .work-hero-media{height:clamp(500px,48vw,680px);transform:translateY(18px);box-shadow:0 34px 100px rgba(0,0,0,.32)}

  .work-image-band{position:relative;overflow:visible;min-height:clamp(580px,48vw,700px);padding:clamp(72px,8vw,122px) clamp(34px,9vw,150px)}
  .work-image-band::before{position:absolute;top:30px;left:clamp(34px,4vw,72px);font-size:10px;letter-spacing:.16em;color:var(--aurum-gold);opacity:.86}
  .work-image-band::after{content:"";position:absolute;top:36px;right:clamp(34px,4vw,72px);width:clamp(70px,10vw,150px);height:1px;background:currentColor;opacity:.22}
  .work-image-band-copy{max-width:500px;position:relative;z-index:2}
  .work-image-band figure{min-height:0;height:clamp(430px,39vw,590px);box-shadow:0 30px 70px rgba(25,22,19,.22)}
  .work-image-operations{grid-template-columns:minmax(270px,.7fr) minmax(500px,1.3fr);min-height:clamp(610px,48vw,720px);background:var(--aurum-ink)}
  .work-image-operations::before{content:"01 / SCIENTIFIC INFRASTRUCTURE"}
  .work-image-operations .work-image-band-copy{align-self:start;padding-top:clamp(20px,3vw,50px)}
  .work-image-operations figure{height:clamp(450px,39vw,600px);transform:translate(24px,26px) rotate(1.1deg);border-radius:6px 26px 6px 26px}
  .work-image-operations figure::before{content:"";position:absolute;inset:14px;z-index:1;border:1px solid rgba(224,172,38,.72);border-radius:3px 20px 3px 20px;pointer-events:none}
  .work-image-operations figure::after{content:"LAB / 01";position:absolute;top:22px;right:23px;z-index:2;padding:7px 9px;background:var(--aurum-gold);color:var(--aurum-ink);font-size:9px;letter-spacing:.14em}
  .work-image-operations figure img{object-position:56% center}

  .work-image-human{grid-template-columns:minmax(520px,1.3fr) minmax(300px,.7fr);min-height:clamp(620px,49vw,730px);padding-left:clamp(28px,4vw,72px);background:linear-gradient(128deg,#a7dbe4 0%,var(--aurum-light-blue) 70%,#cceef1 100%)}
  .work-image-human::before{content:"02 / IMPLEMENTATION RESEARCH";left:auto;right:clamp(34px,4vw,72px);color:var(--aurum-teal)}
  .work-image-human::after{right:auto;left:clamp(34px,4vw,72px);background:var(--aurum-teal)}
  .work-image-human figure{height:clamp(470px,42vw,630px);transform:translate(-18px,-18px) rotate(-1.2deg);border-radius:34px 6px 34px 6px}
  .work-image-human figure::before{content:"FIELD NOTE";position:absolute;top:22px;left:22px;z-index:2;padding:8px 10px;background:rgba(255,255,255,.92);color:var(--aurum-teal);font-size:9px;letter-spacing:.14em}
  .work-image-human figure img{object-position:52% center}
  .work-image-human .work-image-band-copy{padding:34px 2vw 0 0;transform:translate(-26px,28px)}
  .work-image-human .work-image-band-copy h2{max-width:430px}

  .work-image-access{grid-template-columns:minmax(300px,.72fr) minmax(520px,1.28fr);min-height:clamp(580px,45vw,680px);background:linear-gradient(125deg,#c99419 0%,var(--aurum-gold) 62%,#efc84e 100%)}
  .work-image-access::before{content:"03 / HEALTH SYSTEMS";color:var(--aurum-red)}
  .work-image-access .work-image-band-copy{align-self:end;padding-bottom:clamp(10px,3vw,42px)}
  .work-image-access figure{height:clamp(420px,37vw,570px);transform:translate(24px,-18px) rotate(1.35deg);border-radius:4px 36px 4px 36px}
  .work-image-access figure::before{content:"ACCESS / 03";position:absolute;left:22px;top:22px;z-index:2;padding:8px 10px;background:var(--aurum-red);color:#fff;font-size:9px;letter-spacing:.14em}
  .work-image-access figure img{object-position:58% center}
  .work-image-access .work-image-band-copy{transform:translateY(10px)}

  .work-community-context{position:relative;grid-template-columns:1fr;min-height:clamp(640px,52vw,780px);padding:clamp(52px,7vw,100px);overflow:hidden}
  .work-community-context figure{position:absolute;inset:0;min-height:0;border-radius:0;box-shadow:none}
  .work-community-context figure img{object-position:center 48%;filter:saturate(.84) brightness(.78)}
  .work-community-context::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(25,22,19,.72) 0%,rgba(25,22,19,.28) 44%,rgba(25,22,19,.1) 72%,rgba(25,22,19,.48) 100%);pointer-events:none}
  .work-community-context::after{content:"04 / COMMUNITY CONTEXT";position:absolute;top:34px;left:clamp(34px,5vw,86px);z-index:2;color:var(--aurum-gold);font-size:10px;letter-spacing:.16em}
  .work-community-context>div{position:relative;z-index:2;align-self:end;justify-self:start;width:min(43vw,500px);max-width:500px;margin-left:clamp(28px,5vw,86px);padding:clamp(30px,4vw,48px);border-top:4px solid var(--aurum-gold);border-radius:14px;background:rgba(255,255,255,.96);color:var(--aurum-ink);box-shadow:0 24px 70px rgba(0,0,0,.24)}
  .work-community-context .work-image-kicker{color:var(--aurum-red)}
  .work-community-context h2 em{color:var(--aurum-red)}
  .work-community-context p:not(.work-image-kicker){color:rgba(25,22,19,.72)}
  .work-community-context small{color:rgba(25,22,19,.56)}
}
@media(min-width:1100px){
  .has-work-media .work-hero-copy h1{white-space:nowrap}
}

/* Health-area focus modules: compact, content-led desktop treatment. */
@media(min-width:851px){
  .area-hero + .area-section{padding:clamp(54px,6vw,88px) clamp(28px,7vw,116px)}
  .area-hero + .area-section .section-head{gap:clamp(28px,6vw,88px);margin-bottom:28px}
  .area-hero + .area-section .section-head h2{font-size:clamp(48px,5.4vw,78px)}
  .area-hero + .area-section .focus-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:24px}
  .area-hero + .area-section .focus-card{min-height:148px;padding:22px 24px}
  .area-hero + .area-section .focus-card h3{font-size:clamp(24px,2.7vw,40px);margin:28px 0 0}
  .area-hero + .area-section .focus-card p{font-size:14px;line-height:1.45;margin:14px 0 0}
  .area-hero + .area-section:has(.focus-list > :only-child) .section-head{grid-template-columns:1fr;margin-bottom:22px}
  .area-hero + .area-section:has(.focus-list > :only-child) .section-head .lead{display:none}
  .area-hero + .area-section:has(.focus-list > :only-child) .focus-list{grid-template-columns:1fr;margin-top:18px}
  .area-hero + .area-section:has(.focus-list > :only-child) .focus-card{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:24px;min-height:158px;padding:28px 34px;border-left:4px solid var(--aurum-teal);background:#fff;color:var(--aurum-ink);box-shadow:var(--modern-shadow-soft)}
  .area-hero + .area-section:has(.focus-list > :only-child) .focus-card b{color:var(--aurum-teal)}
  .area-hero + .area-section:has(.focus-list > :only-child) .focus-card h3{margin:0;max-width:780px;font-size:clamp(30px,3.8vw,56px);line-height:.92}
  .area-hero + .area-section:has(.focus-list > :only-child) .focus-card p{grid-column:2;color:var(--modern-muted);margin:0}
}

/* Global link states and directory interactions: browser visited colours are
   never allowed to override the Aurum palette. */
.health-link:visited,.health-link:visited h3,.health-link:visited span{color:var(--aurum-ink)!important}

/* The overview holds the immediate answer. A detail route remains optional. */
.health-index .section-head{margin-bottom:28px}.health-index .section-head .lead{max-width:480px;font-size:16px;line-height:1.45}
.health-list{position:relative!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;border-top:1px solid rgba(25,22,19,.24)!important}
.health-link,.health-link:nth-child(odd),.health-link:nth-child(even){min-height:112px!important;padding:20px 18px!important;border:0!important;border-bottom:1px solid rgba(25,22,19,.18)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--aurum-ink)!important;cursor:pointer}
.health-link:nth-child(3n+2){border-left:1px solid rgba(25,22,19,.18)!important;border-right:1px solid rgba(25,22,19,.18)!important}
.health-link h3{font-size:clamp(24px,2.45vw,38px)!important;line-height:.92!important;letter-spacing:-.07em!important;text-decoration:none!important;color:inherit!important}
.health-link:hover,.health-link[aria-expanded="true"]{background:rgba(224,172,38,.18)!important;color:var(--aurum-ink)!important;transform:none!important}.health-link[aria-expanded="true"]{border-bottom-color:var(--aurum-gold)!important}.health-link[aria-expanded="true"] span:last-child{transform:rotate(45deg);color:var(--aurum-red)!important}
.health-preview{grid-column:1/-1;display:grid;grid-template-columns:minmax(170px,.42fr) minmax(280px,1fr) auto;gap:22px;align-items:start;padding:25px 0 28px;border-bottom:1px solid rgba(25,22,19,.18);background:transparent;animation:health-preview-in .35s var(--ease-editorial)}
.health-preview-label{margin:0;color:var(--aurum-red);font-size:10px;letter-spacing:.14em;line-height:1.3;text-transform:uppercase}.health-preview-focus{max-width:620px;margin:0;font-size:clamp(22px,2.5vw,36px);line-height:1.03;letter-spacing:-.055em}.health-work-toggle,.health-full-link{display:inline-flex;align-items:center;gap:10px;justify-content:center;padding:11px 14px;border:1px solid var(--aurum-red);background:transparent;color:var(--aurum-red);font:inherit;font-size:10px;letter-spacing:.11em;text-transform:uppercase;text-decoration:none}.health-work-toggle:hover,.health-full-link:hover{background:var(--aurum-red);color:#fff}.health-work-list{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}.health-work-list a,.health-work-list span{padding:8px 10px;background:#fff;color:var(--aurum-ink);font-size:13px;line-height:1.2;box-shadow:0 6px 16px rgba(25,22,19,.08)}.health-work-list a:hover{background:var(--aurum-gold)}
@keyframes health-preview-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* Focus pages no longer use a large decorative shell for a single sentence. */
.area-hero + .area-section{padding:clamp(38px,5vw,68px) clamp(22px,7vw,116px)!important}.area-hero + .area-section .section-head{grid-template-columns:minmax(150px,.42fr) 1fr!important;gap:28px!important;align-items:baseline!important;margin-bottom:20px!important}.area-hero + .area-section .section-head h2{font-size:clamp(36px,4.3vw,62px)!important}.area-hero + .area-section .section-head .lead{display:none}.area-hero + .area-section .focus-list{display:block!important;margin:0!important}.area-hero + .area-section .focus-card,.area-hero + .area-section:has(.focus-list > :only-child) .focus-card{display:grid!important;grid-template-columns:130px minmax(0,1fr)!important;gap:26px!important;align-items:center!important;min-height:0!important;margin:0!important;padding:36px 40px!important;border-top:0!important;border-left:4px solid var(--aurum-teal)!important;border-radius:var(--modern-radius)!important;background:#fff!important;color:var(--aurum-ink)!important;box-shadow:var(--modern-shadow-soft)!important}.area-hero + .area-section .focus-card b,.area-hero + .area-section:has(.focus-list > :only-child) .focus-card b{color:var(--aurum-teal)!important;padding-top:0}.area-hero + .area-section .focus-card h3,.area-hero + .area-section:has(.focus-list > :only-child) .focus-card h3{max-width:860px;margin:0!important;font-size:clamp(24px,3.1vw,44px)!important;line-height:.98!important}.area-hero + .area-section .focus-card p,.area-hero + .area-section:has(.focus-list > :only-child) .focus-card p{grid-column:2;color:var(--modern-muted)!important;margin:5px 0 0!important;font-size:15px!important;line-height:1.5!important}

/* The footprint begins at the screen edge, as a full location field. */
.footprint-hero{margin:0!important;border-radius:0!important}

/* Do not publish an empty procurement table as though it were live content. */
.page-section:has(.rfp-empty){display:none!important}

/* Get involved: an invitation with real people and a purposeful gold accent,
   not a blank gold wall. */
.involve-hero{isolation:isolate;background-image:linear-gradient(90deg,rgba(25,22,19,.56) 0%,rgba(25,22,19,.36) 42%,rgba(205,32,38,.14) 70%,rgba(205,32,38,.04) 100%),url("../photos/client/what-we-do/community-consultation.jpg")!important;background-position:center,center 18%!important;background-size:cover!important;color:#fff!important}.involve-hero::before{background:linear-gradient(135deg,rgba(224,172,38,.22),transparent 46%)!important}.involve-hero h1 em{color:var(--aurum-gold)!important}.involve-hero .lead{color:rgba(255,255,255,.84)!important}.involve-hero .eyebrow{color:var(--aurum-gold)!important}

/* Photography is always documentary and full-colour. Brand colour lives in the structure around it. */
img{filter:none!important}
.purpose-art::after,.people-media::after,.work-card-media::after{display:none!important}
.purpose-art-image{opacity:1!important}
.work-card{padding:0!important;display:grid!important;grid-template-rows:168px auto 1fr auto;overflow:hidden}
.work-card-media{grid-row:1;height:168px!important;margin:0!important;border-radius:0!important;border-bottom:4px solid rgba(255,255,255,.9)}
.work-card-media img{filter:none!important}
.work-card>p{grid-row:2;margin:20px 26px 0!important}
.work-card h3{grid-row:3;margin:22px 26px!important}
.work-card>a{grid-row:4;align-self:end;margin:0 26px 24px!important;width:max-content}
.work-card .card-arrow{position:absolute;right:24px;top:136px;z-index:2;display:grid;place-items:center;width:32px;height:32px;border:1px solid currentColor;border-radius:50%;background:rgba(255,255,255,.9)}
@media(max-width:850px){.work-card{grid-template-rows:154px auto 1fr auto}.work-card-media{height:154px!important}.work-card>p{margin:18px 22px 0!important}.work-card h3{margin:20px 22px!important}.work-card>a{margin:0 22px 22px!important}.work-card .card-arrow{top:124px;right:20px}}

/* Content-density audit: restrained surfaces for brief content, not decorative colour walls. */
.people{background:var(--modern-panel)!important;color:var(--modern-ink)!important;border-top:5px solid var(--aurum-teal);isolation:isolate}
.people::before{display:none!important}
.people .section-index{color:var(--aurum-red)!important;border-top-color:var(--aurum-gold)}
.people .display{color:var(--modern-ink)}
.people-note{max-width:390px;padding:22px 0 22px 26px;border-left:3px solid var(--aurum-red)!important;color:var(--modern-ink)}
.people-note p{color:var(--modern-slate)!important}
.people-note a{color:var(--aurum-red)!important;border-bottom-color:var(--aurum-red)!important}
.people-mark{color:rgba(7,113,135,.12)!important}
.people-media{border:2px solid var(--aurum-gold);border-radius:var(--modern-radius)!important;box-shadow:14px 14px 0 var(--aurum-red),0 24px 60px rgba(25,22,19,.14)!important}
.people-media::after{display:none!important}
.people-layout{display:block!important;max-width:min(47%,620px);min-height:500px}
.people-note{min-height:0!important;margin-top:34px}
.closing{padding:clamp(72px,9vw,118px) 22px!important;background:var(--modern-panel)!important;color:var(--modern-ink)!important;border-top:5px solid var(--aurum-gold);box-shadow:none!important}
.closing h2{max-width:960px;margin:24px auto 30px!important}.closing>p:not(.eyebrow){color:var(--modern-slate)}
.area-cta,.project-cta,.story-next{padding:clamp(42px,6vw,72px) clamp(22px,9vw,150px)!important;background:var(--modern-panel)!important;color:var(--modern-ink)!important;border-top:5px solid var(--aurum-gold);box-shadow:none!important}
.area-cta h2,.project-cta h2,.story-next h2{margin-top:0!important}.area-cta .button,.project-cta .button,.story-next .button{margin-top:20px}
.footprint-note{padding:28px clamp(22px,6vw,95px)!important;background:var(--modern-panel)!important;color:var(--modern-ink)!important;border-top:5px solid var(--aurum-gold)}
@media(max-width:850px){.people{padding-bottom:clamp(360px,88vw,520px)!important}.people-layout{max-width:none;min-height:0}.people-media{left:22px;right:22px;top:auto;width:auto;height:300px;bottom:30px;box-shadow:10px 10px 0 var(--aurum-red),0 18px 44px rgba(25,22,19,.14)!important}.people-note{margin-top:34px}.closing{padding:68px 22px!important}}

/* One fixed desktop geometry gives every route exactly the same navigation rhythm. */
@media(min-width:851px){
  .site-header{grid-template-columns:1fr auto 1fr!important}
  .site-header nav{position:absolute!important;left:0!important;right:clamp(200px,17vw,230px)!important;width:auto!important;grid-template-columns:repeat(3,minmax(82px,1fr)) clamp(304px,24vw,340px) repeat(3,minmax(82px,1fr))!important;column-gap:0!important}
  .site-header nav a{width:100%;justify-content:center!important}
  .site-header .header-link{right:clamp(18px,5vw,72px);position:absolute;justify-self:auto!important;transform:none!important;padding-left:16px!important}
}
@media(max-width:850px){
  .health-list{grid-template-columns:1fr!important}.health-link:nth-child(3n+2){border-left:0!important;border-right:0!important}.health-preview{grid-template-columns:1fr;gap:14px;padding:20px 0}.health-work-list{grid-column:auto}.area-hero + .area-section .section-head{grid-template-columns:1fr!important;gap:10px!important}.area-hero + .area-section .focus-card,.area-hero + .area-section:has(.focus-list > :only-child) .focus-card{grid-template-columns:1fr!important}.area-hero + .area-section .focus-card p,.area-hero + .area-section:has(.focus-list > :only-child) .focus-card p{grid-column:auto}.health-work-toggle,.health-full-link{justify-self:start}
}

/* Emergency polish pass: brand-accurate colour, tighter architecture, no
   decorative bloat when content is thin. */
a,
a:visited,
.health-link,
.health-link:visited,
.health-link h3,
.health-link:visited h3,
.mobile-nav a,
.mobile-nav a:visited{
  color:inherit!important;
  text-decoration:none!important;
}

.profile[hidden],
.leadership-group.is-filtered-empty{
  display:none!important;
}

img{
  filter:none!important;
}

.purpose-art-image,
.work-card-media img,
.work-image-band figure img,
.work-community-context figure img,
.people-media img,
.story-media img,
.phase8-photo-band img,
.phase8-media-rail img{
  filter:none!important;
  mix-blend-mode:normal!important;
}

.purpose-art::after,
.work-card-media::after,
.work-image-band figure::after,
.work-community-context figure::after,
.people-media::after{
  mix-blend-mode:normal;
}

@media(min-width:851px){
  .site-header{
    height:88px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 118px minmax(0,1fr)!important;
    align-items:center!important;
    padding:0 clamp(28px,5vw,72px)!important;
  }
  .site-header .brand{
    grid-column:2!important;
    justify-self:center!important;
    width:92px!important;
    height:68px!important;
    position:relative!important;
    z-index:3!important;
  }
  .site-header .brand img{
    width:92px!important;
    height:68px!important;
    object-fit:contain!important;
  }
  .site-header nav[aria-label="Primary navigation"]{
    position:absolute!important;
    inset:0 clamp(176px,12vw,210px) 0 clamp(28px,5vw,72px)!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(86px,118px)) minmax(132px,178px) repeat(3,minmax(86px,136px))!important;
    justify-content:center!important;
    align-items:center!important;
    column-gap:clamp(6px,.9vw,14px)!important;
    width:auto!important;
    max-width:none!important;
  }
  .site-header nav[aria-label="Primary navigation"] a{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    white-space:nowrap!important;
    color:var(--aurum-ink)!important;
  }
  .site-header nav[aria-label="Primary navigation"] a:nth-child(4){
    grid-column:5!important;
  }
  .site-header .header-link{
    position:absolute!important;
    right:clamp(22px,4.5vw,72px)!important;
    justify-self:auto!important;
    transform:none!important;
    white-space:nowrap!important;
    color:var(--aurum-red)!important;
  }

  .page-section,
  .area-section,
  .project-section,
  .discipline{
    min-height:0!important;
    padding:clamp(42px,5.5vw,82px) clamp(28px,7vw,116px)!important;
  }

  .discipline .section-head{
    margin-bottom:clamp(24px,3vw,42px)!important;
  }
  .discipline .section-head h2{
    font-size:clamp(44px,5.2vw,76px)!important;
  }
  .discipline-grid{
    grid-template-columns:minmax(250px,.76fr) minmax(360px,1fr)!important;
    gap:clamp(28px,5vw,78px)!important;
  }
  .discipline-statement{
    font-size:clamp(34px,4.1vw,60px)!important;
    line-height:.94!important;
    max-width:560px!important;
  }
  .discipline-note{
    max-width:690px!important;
    columns:2 260px;
    column-gap:34px;
  }

  .work-image-band,
  .work-community-context{
    min-height:0!important;
    margin:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    padding:clamp(46px,5.6vw,76px) clamp(40px,8vw,128px)!important;
  }
  .work-image-band{
    grid-template-columns:minmax(300px,.82fr) minmax(430px,1fr)!important;
    gap:clamp(34px,6vw,90px)!important;
  }
  .work-image-band-copy h2,
  .work-community-context h2{
    font-size:clamp(44px,5vw,74px)!important;
    max-width:520px!important;
  }
  .work-image-band-copy>p:last-child,
  .work-community-context p:not(.work-image-kicker){
    font-size:16px!important;
    line-height:1.5!important;
    max-width:410px!important;
  }
  .work-image-band figure{
    height:clamp(350px,32vw,480px)!important;
    min-height:0!important;
    border-radius:16px!important;
    transform:none!important;
    border:1px solid rgba(224,172,38,.55)!important;
    box-shadow:0 24px 62px rgba(25,22,19,.16)!important;
  }
  .work-image-band figure::before{
    inset:12px!important;
    border-radius:12px!important;
    border-color:rgba(224,172,38,.7)!important;
  }
  .work-image-human{
    background:linear-gradient(90deg,var(--modern-panel) 0 50%,var(--aurum-light-blue) 50% 100%)!important;
  }
  .work-image-human .work-image-band-copy{
    transform:none!important;
    padding:0!important;
    align-self:center!important;
  }
  .work-image-human figure{
    order:2!important;
  }
  .work-image-operations{
    background:var(--aurum-ink)!important;
  }
  .work-image-access{
    background:linear-gradient(90deg,var(--modern-panel) 0 50%,rgba(224,172,38,.22) 50% 100%)!important;
    color:var(--aurum-ink)!important;
  }

  .work-community-context{
    display:grid!important;
    grid-template-columns:minmax(430px,1.1fr) minmax(320px,.9fr)!important;
    background:var(--modern-panel)!important;
    color:var(--aurum-ink)!important;
    gap:clamp(34px,6vw,90px)!important;
  }
  .work-community-context figure{
    position:relative!important;
    inset:auto!important;
    min-height:0!important;
    height:clamp(360px,34vw,500px)!important;
    border-radius:18px!important;
    overflow:hidden!important;
    box-shadow:0 24px 62px rgba(25,22,19,.16)!important;
  }
  .work-community-context::before{
    display:none!important;
  }
  .work-community-context>div{
    position:relative!important;
    z-index:2!important;
    width:auto!important;
    max-width:520px!important;
    margin:0!important;
    padding:clamp(26px,3vw,42px)!important;
    align-self:center!important;
    justify-self:start!important;
    border-top:4px solid var(--aurum-red)!important;
    border-radius:16px!important;
    background:#fff!important;
    color:var(--aurum-ink)!important;
  }

  .work-section{
    padding-top:clamp(56px,6vw,88px)!important;
  }
  .work-rail{
    gap:14px!important;
  }
  .work-card{
    min-height:360px!important;
    padding:18px 22px 24px!important;
    grid-template-rows:136px auto 1fr auto!important;
    border-radius:16px!important;
  }
  .work-card-media{
    height:136px!important;
    margin:0 0 18px!important;
    border-radius:12px!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.28)!important;
  }
  .work-card-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .people{
    display:grid!important;
    grid-template-columns:minmax(380px,1fr) minmax(330px,440px)!important;
    align-items:center!important;
    gap:clamp(40px,7vw,110px)!important;
    min-height:0!important;
    padding:clamp(64px,8vw,110px) clamp(40px,8vw,128px)!important;
    background:var(--modern-panel)!important;
    color:var(--aurum-ink)!important;
    border-top:5px solid var(--aurum-gold)!important;
  }
  .people .section-index{
    grid-column:1/-1!important;
  }
  .people-layout{
    max-width:none!important;
    min-height:0!important;
    display:block!important;
  }
  .people-media{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:clamp(330px,34vw,460px)!important;
    border-radius:18px!important;
    border:1px solid rgba(205,32,38,.28)!important;
    box-shadow:12px 12px 0 var(--aurum-gold),0 24px 62px rgba(25,22,19,.14)!important;
    overflow:hidden!important;
  }

  .purpose{
    grid-template-columns:minmax(440px,1fr) minmax(320px,.82fr)!important;
    min-height:0!important;
    padding:clamp(54px,7vw,100px) clamp(40px,8vw,128px)!important;
  }
  .purpose-art{
    min-height:360px!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background:var(--aurum-red)!important;
  }
  .purpose-art-image{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    opacity:1!important;
  }
  .purpose-art span,
  .purpose-art i{
    display:none!important;
  }

  .involve-hero,
  .footprint-hero{
    margin:0!important;
    border-radius:0!important;
    min-height:clamp(430px,45vw,560px)!important;
  }
  .involve-hero{
    background-image:
      linear-gradient(90deg,rgba(25,22,19,.82),rgba(25,22,19,.34)),
      url("../photos/client/what-we-do/community-consultation.jpg")!important;
    background-size:cover!important;
    background-position:center!important;
    color:#fff!important;
  }
  .involve-hero h1,
  .involve-hero .lead{
    color:#fff!important;
  }
}
/* Supplied About hero photograph and centred closing action. */
.about-hero{position:relative!important;isolation:isolate;background:var(--aurum-ink)!important;color:#fff!important}
.about-hero-image{position:absolute!important;z-index:0!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:62% center!important;filter:none!important}
/* 2026-08-17: .about-hero-image's 62%/center crop is shared across three
   unrelated photos (About/History/Leadership) with three different subject
   positions in their source images — About and History both have generous
   headroom so the shared value happens to work for them, but Leadership's
   photo (clinical-discussion.jpg) has its subject's head only ~17% down
   from the top, leaving just ~3% margin after a vertical-center crop —
   the one real risk flagged in this site's pre-launch hero-image audit.
   Scoped override (matches the existing about-detail-* body-class
   pattern already used elsewhere in this file) shifts the vertical bias
   toward the top third instead of touching the shared value everyone
   else relies on. */
.about-detail-leadership .about-hero-image{object-position:62% 25%!important}
.about-hero::before{
  content:""!important;position:absolute!important;z-index:1!important;inset:0!important;
  background:linear-gradient(90deg,rgba(25,22,19,.82) 0%,rgba(25,22,19,.7) 30%,rgba(25,22,19,.28) 48%,rgba(25,22,19,.06) 62%,transparent 76%)!important;
  pointer-events:none
}
.about-hero::after{display:none!important}
.about-hero>.eyebrow,.about-hero>h1,.about-hero>.lead{position:relative!important;z-index:2!important}
.about-hero .lead{color:rgba(255,255,255,.9)!important;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.closing .button{
  display:flex!important;width:max-content!important;min-width:226px!important;
  margin-left:auto!important;margin-right:auto!important;
  justify-content:center!important;text-align:center!important
}
.closing .button span{color:#fff!important;margin-left:4px!important}
@media(max-width:850px){
  .about-hero-image{object-position:62% center!important}
  .about-detail-leadership .about-hero-image{object-position:62% 25%!important}
  .about-hero::before{background:linear-gradient(90deg,rgba(25,22,19,.9),rgba(25,22,19,.54) 68%,rgba(25,22,19,.24))!important}
}


@media(max-width:850px){
  .mobile-nav{
    background:var(--aurum-ink)!important;
    padding:92px 22px 28px!important;
  }
  .mobile-nav a,
  .mobile-nav a:visited{
    font-size:clamp(24px,7vw,34px)!important;
    line-height:1.02!important;
    padding:12px 0!important;
    color:var(--modern-panel)!important;
  }
  .mobile-nav a[aria-current="page"],
  .mobile-nav a:hover{
    color:var(--aurum-gold)!important;
  }
  .footprint-hero,
  .involve-hero{
    margin:0!important;
    border-radius:0!important;
    width:100%!important;
  }
  .work-card-media img,
  .purpose-art-image,
  .people-media img{
    filter:none!important;
  }
}

/* Deep-clean layer: restore the brand guide's disciplined geometry and make
   the shared shell behave consistently across every route. */
:root{
  --modern-radius:7px;
  --modern-shadow:0 18px 44px rgba(25,22,19,.12);
  --modern-shadow-soft:0 9px 24px rgba(25,22,19,.08);
}
html,body{max-width:100%;overflow-x:clip}
img,svg{max-width:100%}
main,section,article,aside,div,details{min-width:0}
.page-section,.statement,.values,.work-section,.people,.closing,.purpose,
.leadership,.discipline,.project-section,.area-section,.phase8-media-section,
.story-next,.site-footer,footer{border-radius:var(--modern-radius)!important}
.proof-card,.purpose-card,.card,.focus-card,.feature-card,.process-card,
.office-card,.invite-card,.profile,.evidence-card,.module-card,.story-card,
.infra-card,.health-link,.resource-feature,.resource-aside,.contact-main,
.contact-route,.empty-state,.rfp-empty,.timeline-item,.story-body,.story-aside{
  border-radius:var(--modern-radius)!important;
}
.values-grid article:hover{transform:translateY(-7px)}
.work-card:hover,.infra-card:hover{transform:translateY(-6px)}
.portrait-placeholder{
  display:grid!important;
  place-items:center;
  overflow:hidden;
  color:transparent!important;
  font-size:0!important;
  background:
    linear-gradient(145deg,rgba(205,32,38,.92),rgba(127,16,21,.98))!important;
}
.portrait-placeholder::before{
  content:"A";
  color:rgba(255,255,255,.92);
  font-size:clamp(54px,7vw,96px);
  font-weight:700;
  line-height:1;
}
.experts-note,.leadership-group:not(:has(.profile)){display:none!important}
.invite-card:has([aria-disabled="true"]){display:none!important}
.invite-grid{grid-template-columns:1fr!important}
.profile,.profile summary,.profile-meta,.profile-bio{max-width:100%;overflow-wrap:anywhere}

@media(min-width:851px){
  .site-header{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr) auto!important;
    gap:clamp(22px,3vw,48px)!important;
    height:84px!important;
    padding:0 clamp(24px,4vw,64px)!important;
  }
  .site-header .brand{
    grid-column:1!important;
    grid-row:1!important;
    justify-self:start!important;
    width:96px!important;
    height:72px!important;
    z-index:3;
  }
  .site-header .brand img{width:96px!important;height:72px!important}
  .site-header nav{
    grid-column:2!important;
    grid-row:1!important;
    display:flex!important;
    justify-content:center!important;
    width:auto!important;
    margin:0!important;
    gap:clamp(3px,.55vw,9px)!important;
  }
  .site-header nav a{
    display:inline-flex!important;
    grid-column:auto!important;
    padding:9px clamp(7px,.8vw,12px)!important;
    border-radius:3px!important;
    font-size:clamp(8px,.62vw,10px)!important;
    letter-spacing:.075em!important;
  }
  .site-header nav a[aria-current="page"]::before{display:none!important}
  .site-header .header-link{
    grid-column:3!important;
    grid-row:1!important;
    justify-self:end!important;
    transform:none!important;
    padding:12px 14px!important;
    border:1px solid rgba(205,32,38,.24)!important;
    border-radius:3px!important;
    background:transparent!important;
    white-space:nowrap;
  }
}

@media(max-width:850px){
  .invite-grid{grid-template-columns:1fr!important}
  .site-header{
    position:sticky!important;
    top:0;
    z-index:20;
    display:flex!important;
    height:72px!important;
    padding:7px 18px!important;
    border-radius:0!important;
  }
  .site-header .brand{margin-right:auto}
  .mobile-nav.is-open,.mobile-nav.open{
    inset:72px 0 0!important;
    max-height:calc(100svh - 72px)!important;
    overflow:auto!important;
  }
  .page-section,.statement,.values,.work-section,.people,.closing,.purpose,
  .leadership,.discipline,.project-section,.area-section,.phase8-media-section,
  .story-next,.site-footer,footer{margin-left:8px!important;margin-right:8px!important}
  .timeline,.timeline-item,.leadership,.profile-grid,.office-grid{max-width:100%}
}

/* Reconciliation layer
   Preserve the approved pre-clean compositions. The additions below are
   limited to the requested About composition, robust card containment,
   accessible global footer, and safe mobile behaviour. */
html,
body {
  overflow-x: hidden;
}

.about-introduction {
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.about-introduction-grid {
  position: relative;
  display: grid;
  min-height: clamp(680px, 56vw, 790px);
  align-items: end;
  overflow: hidden;
  border-radius: var(--modern-radius);
  background: var(--aurum-ink);
  isolation: isolate;
}

.about-introduction-grid::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(16, 16, 16, 0.92) 0%,
    rgba(16, 16, 16, 0.78) 36%,
    rgba(16, 16, 16, 0.28) 68%,
    rgba(16, 16, 16, 0.08) 100%
  );
  pointer-events: none;
}

.about-introduction-media {
  position: absolute;
  z-index: 0;
  inset: 0;
  margin: 0;
  overflow: hidden;
}

.about-introduction-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 32%;
  filter: saturate(0.76) brightness(0.84) !important;
}

.about-introduction-media figcaption {
  position: absolute;
  z-index: 3;
  right: 18px;
  bottom: 16px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.about-introduction-copy {
  position: relative;
  z-index: 2;
  width: min(52%, 620px);
  padding: clamp(38px, 5vw, 72px);
  color: #fff;
}

.about-introduction-copy h2 {
  margin: 0 0 28px;
  color: #fff;
  font-size: clamp(64px, 8vw, 118px);
  line-height: 0.82;
  letter-spacing: -0.075em;
}

.about-introduction-copy h2 em { color: var(--aurum-gold); }
.about-introduction-copy .lead {
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(15px, 1.25vw, 18px);
  line-height: 1.52;
}
.about-introduction-copy .lead p:last-child { margin-bottom: 0; }
.about-introduction .proof-grid { margin-top: 14px; }

.infra-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.infra-card {
  min-width: 0;
  min-height: 290px;
  overflow: hidden;
  border-radius: var(--modern-radius) !important;
}

.infra-card h3 {
  max-width: 100%;
  font-size: clamp(27px, 2.35vw, 38px) !important;
  line-height: 0.94 !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
  hyphens: auto;
}

.infra-card p { overflow-wrap: break-word; }

[data-resource-record][hidden],
[data-resource-empty][hidden] {
  display: none !important;
}

.site-footer,
footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 14px;
  padding: 30px clamp(22px, 5vw, 72px);
  border: 1px solid var(--aurum-line);
  border-radius: var(--modern-radius) !important;
  color: var(--aurum-ink);
  background: #fff;
  box-shadow: none;
}

.site-footer img,
footer img {
  display: block;
  width: 104px;
  height: 72px;
  object-fit: contain;
}

.site-footer a,
footer a { color: var(--aurum-red) !important; }
.footer-nav a { color: var(--aurum-ink) !important; }

/* 2026-08-05: footer copy was sitting at 9-10px — bump it up for readability. */
.site-footer p,
footer p,
.site-footer span,
footer span,
.site-footer > a,
footer > a,
.footer-nav a {
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
}
@media(max-width:850px){
  .site-footer p,
  footer p,
  .site-footer span,
  footer span,
  .site-footer > a,
  footer > a,
  .footer-nav a {
    font-size: 12px !important;
  }
}

.whistleblowing-strip {
  margin: 14px;
  overflow: hidden;
  border: 1px solid var(--aurum-line);
  border-radius: var(--modern-radius);
  background: #fff;
}

.whistleblowing-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 13px 18px;
  border-bottom: 1px solid var(--aurum-line);
}

.whistleblowing-heading p,
.whistleblowing-heading span {
  margin: 0;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.whistleblowing-heading p {
  color: var(--aurum-red);
  font-weight: 700;
}

.whistleblowing-heading span { color: var(--aurum-slate); }
.whistleblowing-artwork {
  overflow-x: auto;
  overflow-y: hidden;
  background: #d6d6d6;
  scrollbar-color: var(--aurum-gold) transparent;
  scrollbar-width: thin;
}

.whistleblowing-artwork img {
  display: block;
  width: 100%;
  min-width: 960px;
  height: auto;
  object-fit: contain;
}

.whistleblowing-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--aurum-line);
}

.whistleblowing-actions a {
  display: grid;
  gap: 4px;
  min-height: 64px;
  align-content: center;
  padding: 12px 18px;
  border-right: 1px solid var(--aurum-line);
  color: var(--aurum-ink) !important;
  background: #fff;
  font-size: 14px;
  line-height: 1.25;
}

.whistleblowing-actions a:last-child { border-right: 0; }
.whistleblowing-actions a:hover,
.whistleblowing-actions a:focus-visible {
  color: #fff !important;
  background: var(--aurum-red);
}

.whistleblowing-actions span {
  color: var(--aurum-red);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.whistleblowing-actions a:hover span,
.whistleblowing-actions a:focus-visible span { color: var(--aurum-gold); }

.social-links {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

.social-links a {
  display: inline-flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(205, 32, 38, 0.3);
  border-radius: 3px;
  color: var(--aurum-red) !important;
  background: #fff;
}

.social-links a:hover,
.social-links a:focus-visible {
  color: #fff !important;
  background: var(--aurum-red);
}

.social-links svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.social-links a:nth-child(2) svg,
.social-links a:nth-child(3) svg {
  fill: currentColor;
  stroke: none;
}

@media(max-width:1120px) and (min-width:851px) {
  .infra-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media(max-width:850px) {
  .about-introduction-grid { min-height: 980px; }
  .about-introduction-grid::after {
    background: linear-gradient(
      180deg,
      rgba(16, 16, 16, 0.04) 0%,
      rgba(16, 16, 16, 0.18) 28%,
      rgba(16, 16, 16, 0.92) 53%,
      var(--aurum-ink) 100%
    );
  }
  .about-introduction-media img {
    height: 54%;
    object-position: center top;
  }
  .about-introduction-copy {
    width: 100%;
    padding: 390px 24px 38px;
  }
  .about-introduction-copy h2 { font-size: clamp(58px, 18vw, 84px); }
  .about-introduction-media figcaption {
    top: 16px;
    bottom: auto;
  }
  .infra-grid { grid-template-columns: 1fr !important; }
  .project-table,
  .data-table,
  .rfp-table {
    display: block;
    width: 100%;
    min-width: 0;
    overflow-x: auto;
  }
  .whistleblowing-strip { margin: 8px; }
  .whistleblowing-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }
  .whistleblowing-artwork::after {
    content: "Swipe to view the full banner";
    position: sticky;
    left: 14px;
    display: inline-block;
    margin: 8px 14px 11px;
    padding: 6px 8px;
    border-radius: 3px;
    color: #fff;
    background: rgba(25, 22, 19, 0.86);
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .whistleblowing-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .whistleblowing-actions a {
    border-bottom: 1px solid var(--aurum-line);
  }
}

/* ==========================================================================
   QUIET CONFIDENCE — FINAL TYPOGRAPHY AND NAVIGATION CASCADE
   The structure, approved colour system, media and interactions remain intact.
   ========================================================================== */
:root {
  --type-hero: clamp(48px, 4.8vw, 68px);
  --type-section: clamp(34px, 3.5vw, 46px);
  --type-editorial: clamp(28px, 2.9vw, 38px);
  --type-card: clamp(22px, 2vw, 28px);
  --type-body: clamp(16px, 1.15vw, 18px);
  --tracking-display: -.038em;
  --tracking-heading: -.025em;
}

.hero h1:not(.hero-heading--composed),
.hero--story h1:not(.hero-heading--composed),
.page-hero h1,
.story-hero-copy h1,
.footprint-intro h1 {
  max-width: 780px !important;
  font-size: var(--type-hero) !important;
  line-height: 1 !important;
  letter-spacing: var(--tracking-display) !important;
  text-wrap: balance;
}

.hero h1:not(.hero-heading--composed) {
  margin-top: 18px !important;
  margin-bottom: 28px !important;
}

.hero--story h1:not(.hero-heading--composed) { max-width: 680px !important; }

.display,
.section-head h2,
.intro h2,
.work-heading h2,
.footprint h2,
.purpose-panel h2,
.closing h2,
.people-story-heading h2,
.pillars-heading h2,
.work-image-band-copy h2,
.work-community-context h2,
.footprint-heading h2,
.footprint-stage h2,
.stage-heading h2,
.discipline .section-head h2,
.about-introduction-copy h2,
.area-hero + .area-section .section-head h2,
.resource-feature h2,
.contact-main h2,
.area-cta h2,
.project-cta h2,
.story-next h2 {
  font-size: var(--type-section) !important;
  line-height: 1.06 !important;
  letter-spacing: var(--tracking-heading) !important;
  text-wrap: balance;
}

.statement .display {
  font-size: var(--type-section) !important;
  line-height: 1.06 !important;
}

.discipline-statement,
.health-preview-focus,
.footprint-note strong,
.story-body blockquote,
.story-body .story-intro,
.resource-aside h3,
.contact-route h3,
.leadership-group > h3,
.purpose-card h3 {
  font-size: var(--type-editorial) !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  text-wrap: balance;
}

.values-grid h3,
.work-card h3,
.through-card h3,
.proof-card h3,
.card h3,
.focus-card h3,
.feature-card h3,
.process-card h3,
.office-card h3,
.invite-card h3,
.infra-card h3,
.health-link h3,
.module-card h3,
.story-card h3,
.profile-name,
.timeline-copy h3 {
  font-size: var(--type-card) !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-wrap: balance;
}
/* 2026-08-17: .place-name (the Where We Work country-list row label) got
   swept into the shared card-heading rule above at some point even though
   it isn't a card title — it's a compact list row — which forced it to
   var(--type-card)'s large heading size !important, silently overriding
   the dedicated, deliberately smaller .place-name rule in
   footprint-phase6.css (confirmed live: computed size was 27.5px against
   an intended 14px). Split out with its own non-!important rule so the
   footprint-phase6.css value governs normally. */
.place-name {
  line-height: 1.12;
  letter-spacing: -.02em;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: balance;
}

.place-detail h3 {
  font-size: clamp(28px, 2.8vw, 38px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
}

.evidence-card strong,
.stat strong {
  font-size: clamp(32px, 3.8vw, 48px) !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}

.lead {
  font-size: var(--type-body) !important;
  line-height: 1.62 !important;
}

.hero-deck,
.hero-intro,
.body-copy,
.discipline-note,
.contact-main p,
.footprint-heading p,
.resource-aside p {
  font-size: clamp(16px, 1.1vw, 18px) !important;
  line-height: 1.62 !important;
}

/* Three links, centred wordmark, three links, then Contact. */
@media(min-width:851px) {
  .site-header {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 118px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 0 !important;
    height: 88px !important;
    padding: 0 clamp(28px, 5vw, 72px) !important;
  }

  .site-header .brand {
    position: relative !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    width: 92px !important;
    height: 68px !important;
    z-index: 3 !important;
  }

  .site-header .brand img {
    width: 92px !important;
    height: 68px !important;
    object-fit: contain !important;
  }

  .site-header nav[aria-label="Primary navigation"] {
    position: absolute !important;
    inset: 0 clamp(176px, 12vw, 210px) 0 clamp(28px, 5vw, 72px) !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(86px, 118px)) minmax(132px, 178px) repeat(3, minmax(86px, 136px)) !important;
    justify-content: center !important;
    align-items: center !important;
    column-gap: clamp(6px, .9vw, 14px) !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .site-header nav[aria-label="Primary navigation"] a {
    width: 100% !important;
    min-width: 0 !important;
    grid-column: auto !important;
    justify-content: center !important;
    white-space: nowrap !important;
    color: var(--aurum-ink) !important;
  }

  .site-header nav[aria-label="Primary navigation"] a:nth-child(1) { grid-column: 1 !important; }
  .site-header nav[aria-label="Primary navigation"] a:nth-child(2) { grid-column: 2 !important; }
  .site-header nav[aria-label="Primary navigation"] a:nth-child(3) { grid-column: 3 !important; }
  .site-header nav[aria-label="Primary navigation"] a:nth-child(4) { grid-column: 5 !important; }
  .site-header nav[aria-label="Primary navigation"] a:nth-child(5) { grid-column: 6 !important; }
  .site-header nav[aria-label="Primary navigation"] a:nth-child(6) { grid-column: 7 !important; }

  .site-header .header-link {
    position: absolute !important;
    right: clamp(22px, 4.5vw, 72px) !important;
    grid-column: auto !important;
    justify-self: auto !important;
    transform: none !important;
    white-space: nowrap !important;
    color: var(--aurum-red) !important;
  }
}

/* Desktop balance pass: restore presence without returning to oversized type. */
@media(min-width:851px) {
  :root {
    --type-hero: clamp(54px, 5.15vw, 74px);
    --type-section: clamp(38px, 3.75vw, 52px);
    --type-editorial: clamp(30px, 3.05vw, 42px);
    --type-card: clamp(24px, 2.15vw, 30px);
    --type-body: clamp(17px, 1.2vw, 19px);
  }

  .hero-deck,
  .hero-intro,
  .body-copy,
  .discipline-note,
  .contact-main p,
  .footprint-heading p,
  .resource-aside p {
    font-size: clamp(17px, 1.15vw, 19px) !important;
  }

  .hero--story .hero-content {
    padding-bottom: clamp(78px, 9vh, 108px) !important;
  }

  .hero--story .hero-image img {
    width: 104% !important;
    max-width: none !important;
    object-position: center center !important;
  }
}

/* Leadership portrait system: individual, brand-led and photograph-ready. */
.portrait-placeholder {
  position: relative !important;
  isolation: isolate;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  color: transparent !important;
  font-size: 0 !important;
  border-bottom: 1px solid rgba(25, 22, 19, .12);
  background: linear-gradient(145deg, var(--aurum-light-blue), #d8edf0) !important;
}

.portrait-placeholder::before {
  content: attr(data-initials) !important;
  position: relative;
  z-index: 2;
  color: var(--aurum-teal) !important;
  font-size: clamp(42px, 4.8vw, 68px) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: -.045em;
}

.portrait-placeholder::after {
  content: "";
  position: absolute;
  z-index: 1;
  right: -48px;
  bottom: -72px;
  width: 190px;
  height: 190px;
  border: 1px solid currentColor;
  border-radius: 50%;
  opacity: .18;
  box-shadow: 0 0 0 30px currentColor, 0 0 0 62px currentColor;
}

.profile:nth-child(6n + 1) .portrait-placeholder {
  color: var(--aurum-teal) !important;
  background: linear-gradient(145deg, var(--aurum-light-blue), #e5f3f4) !important;
}
.profile:nth-child(6n + 1) .portrait-placeholder::before { color: var(--aurum-teal) !important; }

.profile:nth-child(6n + 2) .portrait-placeholder {
  color: var(--aurum-red) !important;
  background: linear-gradient(145deg, var(--aurum-gold), #f4d982) !important;
}
.profile:nth-child(6n + 2) .portrait-placeholder::before { color: var(--aurum-ink) !important; }

.profile:nth-child(6n + 3) .portrait-placeholder {
  color: #fff !important;
  background: linear-gradient(145deg, var(--aurum-orange), var(--aurum-red)) !important;
}
.profile:nth-child(6n + 3) .portrait-placeholder::before { color: #fff !important; }

.profile:nth-child(6n + 4) .portrait-placeholder {
  color: var(--aurum-gold) !important;
  background: linear-gradient(145deg, var(--aurum-ink), var(--aurum-slate)) !important;
}
.profile:nth-child(6n + 4) .portrait-placeholder::before { color: var(--aurum-gold) !important; }

.profile:nth-child(6n + 5) .portrait-placeholder {
  color: #fff !important;
  background: linear-gradient(145deg, #075766, var(--aurum-teal)) !important;
}
.profile:nth-child(6n + 5) .portrait-placeholder::before { color: #fff !important; }

.profile:nth-child(6n + 6) .portrait-placeholder {
  color: var(--aurum-orange) !important;
  background: linear-gradient(145deg, #f7efe3, #f0d9c7) !important;
}
.profile:nth-child(6n + 6) .portrait-placeholder::before { color: var(--aurum-orange) !important; }

/* 2026-08-11: the six alternating colours above were built for the
   placeholder state (no photo yet, just initials on a coloured tile).
   Now that every card has a real photo, that colour cycling just makes
   otherwise-identical cards look inconsistent with each other for no
   reason — client feedback was "all the blocks need to look the same".
   Neutralising it on mobile, where cards stack in a single column and
   the inconsistency is most visible. :nth-child(n) matches every card,
   so this ties the specificity of the rules above and — being later in
   this same file — wins the cascade. */
@media(max-width:850px){
  .profile:nth-child(n) .portrait-placeholder{background:var(--aurum-smoke) !important;color:var(--aurum-teal) !important}
}

@media(min-width:851px) {
  .leadership .profile-grid {
    gap: clamp(16px, 1.5vw, 22px) !important;
  }

  .leadership .profile {
    border: 1px solid rgba(255, 255, 255, .16) !important;
    box-shadow: 0 18px 44px rgba(4, 45, 53, .2) !important;
    transition: transform .32s var(--ease-editorial), box-shadow .32s var(--ease-editorial);
  }

  .leadership .profile:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 56px rgba(4, 45, 53, .27) !important;
  }

  .leadership .portrait-placeholder {
    height: 220px !important;
  }

  .leadership .profile-meta {
    padding: 22px 22px 24px !important;
  }

  .leadership .profile-action {
    margin-top: 18px !important;
  }
}

@media(max-width:850px) {
  :root {
    --type-hero: clamp(38px, 10.8vw, 46px);
    --type-section: clamp(30px, 8.6vw, 36px);
    --type-editorial: clamp(26px, 7.4vw, 32px);
    --type-card: clamp(21px, 6.3vw, 26px);
  }

  .mobile-nav a,
  .mobile-nav a:visited,
  .mobile-nav.is-open a {
    font-size: clamp(24px, 6.7vw, 30px) !important;
    line-height: 1.12 !important;
    letter-spacing: -.025em !important;
  }

  .hero h1:not(.hero-heading--composed),
  .hero--story h1:not(.hero-heading--composed),
  .page-hero h1,
  .story-hero-copy h1,
  .footprint-intro h1 {
    font-size: var(--type-hero) !important;
    line-height: 1.04 !important;
  }

  .work-image-band-copy h2,
  .work-community-context h2,
  .area-hero + .area-section .section-head h2,
  .about-introduction-copy h2 {
    font-size: var(--type-section) !important;
    line-height: 1.08 !important;
  }

  .area-hero + .area-section .focus-card h3,
  .area-hero + .area-section:has(.focus-list > :only-child) .focus-card h3 {
    font-size: var(--type-card) !important;
    line-height: 1.12 !important;
  }

  .story-body .story-intro,
  .story-body blockquote {
    font-size: clamp(24px, 6.8vw, 29px) !important;
    line-height: 1.18 !important;
  }
}

@media(max-width:500px) {
  .hero h1:not(.hero-heading--composed) { margin-bottom: 22px !important; }
  .lead,
  .hero-deck,
  .hero-intro,
  .body-copy,
  .discipline-note { font-size: 16px !important; }
}

/* Final desktop header geometry.
   2026-08-09: rebuilt from a fixed-column grid to flexbox. The grid
   required predicting an exact pixel width for every nav item ahead of
   time — three rounds of fixes that day (search vs. Contact, then
   Get Involved vs. Contact) were all the same root problem: some box
   needed more room than its column had, so it bled into its neighbour.
   Flex items size to their own content and a real `gap` always sits
   between neighbours, so two items can't touch no matter how the text or
   font-size changes. This is the last .site-header rule in the cascade,
   so it is the one that renders. */
@media(min-width:851px) {
  .site-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: clamp(12px, 2vw, 28px) !important;
  }

  /* 2026-08-06: swapped in the official landscape lockup (wide wordmark,
     ~3.3:1 aspect ratio) — this replaces the old stacked/square mark in
     the header, so it's sized by height with width following naturally
     instead of being forced into a near-square box (which was squashing
     it). File: assets/brand/aurum-logo-landscape.jpg. */
  .site-header .brand {
    flex: 0 0 auto !important;
    width: auto !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    /* An older desktop-only rule sets position:relative + z-index:3 here,
       which creates an isolated stacking context and stops the img's
       mix-blend-mode from seeing the header background behind it (the
       white JPG backdrop stayed solid instead of blending out). Reset
       both so it composites against the real header background again. */
    position: static !important;
    z-index: auto !important;
  }

  .site-header .brand img {
    width: auto !important;
    height: 100% !important;
    max-width: 148px !important;
    object-fit: contain !important;
    object-position: left center !important;
    /* Source file is a JPG with a white background — multiply blend
       drops the white against the header's light tint so it reads as
       a clean logo instead of a sticker on a box. True fix is a
       transparent PNG/SVG from the brand team; swap in when available. */
    mix-blend-mode: multiply !important;
  }

  .site-header nav[aria-label="Primary navigation"] {
    position: static !important;
    inset: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
    gap: clamp(6px, 1.7vw, 26px) !important;
  }

  /* 2026-08-06: nav text was reading as far too small (max 10px) —
     client feedback was that the header needed more presence. Bumped
     to a clamp that floors at 12px instead of 8px. Left at this size on
     2026-08-09 — the flex gap above is what actually keeps items apart
     now, not a tight column, so there's room to size this up later
     without the collisions the grid version had. */
  /* Two leftovers from the old grid version of this header were both
     still active and both had to go: justify-self:stretch (a grid-item
     property Chrome partially honours in flex too), and a much older
     width:100% from a rule further up this file. flex-basis:auto falls
     back to the width property when nothing else sets it, so that
     width:100% was quietly making every plain nav link claim the full
     width of the nav container — confirmed directly via
     getComputedStyle, it matched the nav's own width to the pixel. flex
     alone doesn't override a separately-set width property, which is
     why the first attempt at this fix wasn't enough on its own. */
  .site-header nav[aria-label="Primary navigation"] a {
    flex: 0 0 auto !important;
    width: auto !important;
    justify-self: auto !important;
    white-space: nowrap !important;
    padding: 9px 4px !important;
    font-size: clamp(12px, .95vw, 15px) !important;
    letter-spacing: .03em !important;
  }

  /* nav-dropdown.js wraps About Us, What We Do and Get Involved in a
     .nav-drop div (trigger link + dropdown menu). No column math needed
     any more — it's just another flex item sized to its own content. */
  .site-header nav[aria-label="Primary navigation"] .nav-drop {
    flex: 0 0 auto !important;
    justify-self: auto !important;
    position: relative !important;
  }
  .site-header nav[aria-label="Primary navigation"] .nav-drop > a {
    justify-self: auto !important;
    white-space: nowrap !important;
  }

  /* order swaps these two round the DOM order (nav-search comes before
     header-link in the markup). Contact needs to read before the search
     icon, with the icon last in the header's own right-edge padding —
     same reasoning as the earlier grid version, just re-expressed for
     flex since `order` isn't a grid-column number any more. */
  .site-header .nav-search {
    flex: 0 0 auto !important;
    order: 2 !important;
  }

  .site-header .header-link {
    position: static !important;
    flex: 0 0 auto !important;
    order: 1 !important;
    white-space: nowrap !important;
    padding: 12px 18px !important;
    font-size: clamp(12px, .95vw, 15px) !important;
    letter-spacing: .03em !important;
  }

  .nav-search-panel {
    right: 0 !important;
  }
}

/* ---- About Us dropdown (Executive Team / History) ----
   Built by nav-dropdown.js. Opens on hover and on keyboard focus, so it is
   not mouse-only. The padded bridge above the panel stops the menu closing
   when the pointer crosses the gap between link and panel. */
.nav-drop{position:relative;display:flex;align-items:center;justify-content:center}
.nav-drop > a{width:100%}
.nav-drop-menu{
  position:absolute;top:100%;left:50%;z-index:40;
  transform:translate(-50%,6px);
  display:flex;flex-direction:column;
  min-width:190px;padding:8px;margin-top:10px;
  background:#fff;
  border:1px solid rgba(25,22,19,.1);
  border-radius:12px;
  box-shadow:0 22px 48px rgba(25,22,19,.16);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s var(--ease-editorial),transform .22s var(--ease-editorial),visibility .22s;
}
.nav-drop-menu::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.nav-drop:hover .nav-drop-menu,
.nav-drop.is-open .nav-drop-menu,
.nav-drop:focus-within .nav-drop-menu{
  opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);
}
.nav-drop-menu a{
  display:block;padding:10px 12px;border-radius:8px;
  font-size:13px;letter-spacing:.01em;text-transform:none;
  color:var(--aurum-ink);white-space:nowrap;
  transition:background .2s var(--ease-editorial),color .2s var(--ease-editorial);
}
.nav-drop-menu a::after{display:none!important}
.nav-drop-menu a:hover,
.nav-drop-menu a:focus-visible,
.nav-drop-menu a[aria-current="page"]{background:rgba(224,172,38,.16);color:var(--aurum-red)}

/* ---- What We Do mega-menu ----
   2026-08-11: rebuilt to match the audit's actual Proposed Navigation (p.8):
   4 labelled columns — Clinical Research, Implementation Research,
   Health Implementation, Health Systems Strengthening. Each column has its
   own clickable heading (.nav-drop-col-heading); the "mess" the client
   flagged in the original 4-column build was unlabelled equal-weight
   columns, not the 4-group structure itself — labels + tight column widths
   fix that without abandoning the real content grouping. */
.nav-drop-menu--mega{
  flex-direction:row;
  align-items:flex-start;
  min-width:680px;
  padding:18px;
  gap:22px;
}
.nav-drop-col{display:flex;flex-direction:column;min-width:150px}
.nav-drop-col:nth-child(3),
.nav-drop-col:nth-child(4){min-width:190px}
.nav-drop-col-heading{
  display:block;
  margin-bottom:8px;
  padding:6px 12px;
  font-size:11px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
  color:var(--aurum-slate);
  border-bottom:1px solid rgba(25,22,19,.08);
}
.nav-drop-menu a.nav-drop-col-heading:hover,
.nav-drop-menu a.nav-drop-col-heading:focus-visible,
.nav-drop-menu a.nav-drop-col-heading[aria-current="page"]{color:var(--aurum-red);background:transparent}
.nav-drop-col .nav-drop-col-heading + a{margin-top:2px}

/* 2026-08-17: "What We Do" row inside the About Us dropdown — opens its
   mega menu as a flyout, rather than navigating anywhere itself.
   2026-08-17c: .nav-drop-flyout is now appended straight to <body> by
   nav-dropdown.js (a DOM "portal"), not nested under .nav-drop-item--flyout
   — the About Us panel it used to live inside carries its own CSS
   transform while open (translateX(-50%), to center under its trigger),
   and per spec ANY ancestor transform becomes the containing block for a
   position:fixed descendant too, not just the viewport. That silently
   broke the JS-computed viewport-relative left/top (confirmed live:
   getBoundingClientRect() disagreed with the computed left/top by exactly
   the panel's translate offset), so the flyout kept overflowing the real
   viewport regardless of the math. Living outside that subtree fixes it
   at the root instead of patching around it — and means visibility is now
   driven purely by the .is-open class (added/removed by JS on both the
   row and the detached flyout together), not any :hover/:focus-within
   descendant-selector trick, since the two are siblings-by-body now, not
   parent/child. */
.nav-drop-item--flyout{position:relative}
.nav-drop-item--flyout > a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-radius:8px;
  font-size:13px;
  letter-spacing:.01em;
  color:var(--aurum-ink);
  white-space:nowrap;
  transition:background .2s var(--ease-editorial),color .2s var(--ease-editorial);
}
.nav-drop-item--flyout > a .aurum-arrow-icon{width:11px;height:11px;flex:none;opacity:.55}
.nav-drop-item--flyout:hover > a,
.nav-drop-item--flyout.is-open > a{background:rgba(224,172,38,.16);color:var(--aurum-red)}
/* Lives directly under <body> now (see nav-dropdown.js) — position:fixed
   here is guaranteed to mean the real viewport, since <body> itself is
   never transformed. left/top are set inline by JS on every open (the
   viewport-relative math only makes sense computed at open time); this
   just owns the base showing/hiding, keyed off .is-open (added to this
   element directly by JS, not inferred from any ancestor state). */
.nav-drop-flyout{
  position:fixed;
  top:0;
  left:0;
  margin:0;
  transform:none;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s var(--ease-editorial),visibility .22s;
}
.nav-drop-flyout.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.mobile-nav-subhead--nested{padding-left:44px;font-size:11px}

/* 2026-08-11: .hero-image--portrait's contain-fit treatment for the
   Ratevosian headshot now lives in home-rebuild.css as part of the full
   hero redesign (light two-column layout, matching var(--aurum-cream)
   background instead of a one-off hex value) — see "Hero: light editorial
   two-column redesign" there. Removed the duplicate rule that used to live
   here to avoid two colour values drifting apart. */

/* Indented children in the mobile drawer, where there is no hover.
   2026-08-11: these used to only get a smaller font-size — everything else
   (the sequential 01/02/03... counter, the full-strength row divider) was
   still inherited from the plain top-level ".mobile-nav a" rule, so a
   child link like "Who We Are" carried on the SAME numbered sequence as
   top-level items like "About Us" and "What We Do". Read top to bottom it
   looked like one flat 15-item list instead of six sections each with
   their own children (client feedback: no clear distinction between
   headers and sub-headers). Fixed here: children stop incrementing/
   showing the counter, get a plain gold tick instead, a quieter divider,
   tighter line spacing, and a left rule that visually ties them back to
   the parent heading above. */
.mobile-nav a.mobile-nav-sub{
  padding:9px 0 9px 26px;
  border-bottom:1px solid rgba(255,255,255,.08);
  border-left:2px solid rgba(224,172,38,.4);
  margin-left:13px;
  font-size:clamp(16px,4vw,19px)!important;
  font-weight:400;
  letter-spacing:-.02em;
  counter-increment:none;
  opacity:.82;
}
.mobile-nav a.mobile-nav-sub::before{
  content:"—";
  flex:0 0 16px;
  color:var(--aurum-gold);
  font-size:13px;
}
/* :last-of-type would only match the single last <a> in the whole drawer
   (it ignores class, only tag), not "last child of each group" — the
   groups are plain siblings in the DOM, not wrapped in their own
   container. :has() on the next sibling correctly finds the last
   .mobile-nav-sub of each run (already relied on elsewhere in this file,
   e.g. .page-section:has(.rfp-empty), so it's a safe pattern here). */
.mobile-nav a.mobile-nav-sub:not(:has(+ a.mobile-nav-sub)){border-bottom:0}
.mobile-nav span.mobile-nav-subhead{
  display:block;
  padding:14px 26px 2px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--aurum-slate);
  opacity:.8;
}
@media(max-width:850px){
  .nav-drop-menu{display:none}
}

/* Search icon gets its own consistent home at every width: grid column 8
   on desktop (between the nav links and Contact), grouped tight against
   the menu button on mobile — one predictable place, not buried. */
@media(max-width:850px) {
  .site-header { display: flex !important; align-items: center !important; }
  .site-header .brand { order: 1 !important; width: auto !important; height: 30px !important; display: flex !important; align-items: center !important; }
  .site-header .brand img { width: auto !important; height: 100% !important; max-width: 118px !important; object-fit: contain !important; object-position: left center !important; mix-blend-mode: multiply !important; }
  .site-header .nav-search { order: 2 !important; margin-left: auto !important; margin-right: 12px !important; }
  .site-header .menu-toggle { order: 3 !important; margin-left: 0 !important; }
  /* Subpages don't use .menu-toggle — subpage.js injects a .shell-menu
     button instead. Without an explicit order it defaulted to 0 and sorted
     ahead of the logo (order 1), putting the menu on the left and the
     wordmark on the right. margin-left:auto holds it to the right edge on
     the subpages, which have no .nav-search to do that job. */
  .site-header .shell-menu { order: 3 !important; margin-left: auto !important; }
}

/* 2026-08-05: nav hover/active state was a solid red pill ("big red
   squares") — replace with a red underline that draws in, plus a subtle
   scale-up, on both hover and the current page. Wins sitewide since this
   file loads after subpage.css/story.css on every route. */
.site-header nav a {
  position: relative;
  background: transparent !important;
}
.site-header nav a::after {
  content: "";
  display: block !important;
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 2px;
  height: 2px;
  background: var(--aurum-red);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .3s var(--ease-editorial);
}
.site-header nav a:hover {
  background: transparent !important;
  color: var(--aurum-red) !important;
  transform: scale(1.08) !important;
}
.site-header nav a:hover::after { transform: scaleX(1); }
.site-header nav a[aria-current="page"] {
  background: transparent !important;
  color: var(--aurum-red) !important;
}
.site-header nav a[aria-current="page"]::after { transform: scaleX(1); }
.site-header nav a[aria-current="page"]::before { display: none !important; }

/* ==========================================================================
   DESKTOP COMPOSITION SYSTEM
   One editorial grid, integrated photography, and deliberate copy overlays.
   Mobile is intentionally left untouched.
   ========================================================================== */
@media(min-width:851px) {
  :root {
    --desktop-gutter: clamp(54px, 7vw, 112px);
    --desktop-section-y: clamp(70px, 7.2vw, 104px);
    --desktop-copy-card: rgba(247, 245, 235, .95);
  }

  .purpose {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    min-height: clamp(580px, 48vw, 690px) !important;
    margin: 16px !important;
    padding: var(--desktop-section-y) var(--desktop-gutter) !important;
    overflow: hidden !important;
    background: var(--aurum-ink) !important;
    isolation: isolate;
  }
  .purpose::after {
    content: "" !important;
    position: absolute !important;
    z-index: 1 !important;
    inset: 0 !important;
    display: block !important;
    background: linear-gradient(90deg,rgba(25,22,19,.12),rgba(25,22,19,.02) 48%,rgba(25,22,19,.42)) !important;
    pointer-events: none;
  }
  .purpose-art {
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 !important;
    min-height: 0 !important;
    border-radius: 0 !important;
    background: var(--aurum-ink) !important;
  }
  .purpose-art::before { display: none !important; }
  .purpose-art-image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 52% center !important;
  }
  .purpose-panel {
    position: relative !important;
    z-index: 2 !important;
    width: min(44vw, 520px) !important;
    margin-left: auto !important;
    padding: clamp(36px, 4vw, 54px) !important;
    align-self: center !important;
    border-top: 4px solid var(--aurum-gold) !important;
    border-radius: var(--modern-radius) !important;
    background: rgba(184,25,31,.94) !important;
    box-shadow: 0 28px 74px rgba(0,0,0,.24) !important;
    backdrop-filter: blur(5px);
  }
  .purpose-panel h2 { margin: 22px 0 28px !important; }
  .purpose-panel > p:last-child {
    max-width: 430px !important;
    margin: 0 !important;
    font-size: 17px !important;
    line-height: 1.58 !important;
  }

  .values,
  .work-section,
  .people {
    padding: var(--desktop-section-y) var(--desktop-gutter) !important;
  }
  .work-section .section-index,
  .people .section-index {
    margin-bottom: clamp(34px,3.5vw,50px) !important;
  }
  .work-intro {
    grid-template-columns: minmax(320px,.9fr) minmax(360px,1.1fr) !important;
    align-items: center !important;
    gap: clamp(48px,8vw,128px) !important;
    margin-bottom: clamp(42px,4.2vw,58px) !important;
  }
  .work-intro .body-copy {
    max-width: 520px !important;
    margin: 0 !important;
  }
  .work-rail { gap: 14px !important; }
  .work-card { min-height: 348px !important; }
  .people {
    grid-template-columns: minmax(360px,.9fr) minmax(420px,1.1fr) !important;
    min-height: clamp(560px,46vw,650px) !important;
    align-content: center !important;
  }
  .people-layout { align-self: center !important; }
  .people-note { margin-top: 28px !important; }
  .people-media { height: clamp(350px,34vw,470px) !important; }

  .page-hero.has-work-media {
    grid-template-columns: minmax(430px,1fr) minmax(390px,.82fr) !important;
    min-height: clamp(600px,52vw,700px) !important;
    gap: clamp(56px,7vw,110px) !important;
    padding: clamp(82px,8vw,112px) var(--desktop-gutter) !important;
    align-items: center !important;
  }
  .has-work-media .work-hero-copy {
    align-self: center !important;
    max-width: 680px !important;
    padding-top: 0 !important;
  }
  .has-work-media .work-hero-media {
    width: 100% !important;
    height: clamp(440px,39vw,560px) !important;
    transform: none !important;
    border-radius: var(--modern-radius) !important;
  }
  .has-work-media .work-hero-copy h1 { white-space: normal !important; }

  .discipline {
    padding: var(--desktop-section-y) var(--desktop-gutter) !important;
  }
  .discipline .section-head,
  .discipline-grid {
    grid-template-columns: minmax(300px,.82fr) minmax(420px,1.18fr) !important;
    align-items: start !important;
    gap: clamp(58px,8vw,126px) !important;
  }
  .discipline .section-head {
    margin-bottom: clamp(50px,5vw,70px) !important;
  }
  .discipline .section-head[style] {
    margin-top: clamp(64px,7vw,92px) !important;
  }
  .discipline .section-head .lead,
  .discipline-note {
    max-width: 620px !important;
    margin: 0 !important;
  }
  .discipline-note {
    columns: 2 230px !important;
    column-gap: clamp(26px,3vw,42px) !important;
  }
  .infra-grid { margin-top: 12px !important; }

  .work-image-band,
  .work-community-context {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    min-height: clamp(610px,50vw,720px) !important;
    margin: 16px clamp(12px,2.2vw,30px) !important;
    padding: clamp(72px,7vw,100px) var(--desktop-gutter) !important;
    overflow: hidden !important;
    border-radius: var(--modern-radius) !important;
    background: var(--aurum-ink) !important;
    box-shadow: var(--modern-shadow) !important;
    isolation: isolate;
  }
  .work-image-band::before,
  .work-image-band::after,
  .work-community-context::before,
  .work-community-context::after {
    display: none !important;
  }
  .work-image-band figure,
  .work-community-context figure {
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: none !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  .work-image-band figure::before,
  .work-image-band figure::after,
  .work-community-context figure::before,
  .work-community-context figure::after {
    display: none !important;
  }
  .work-image-band figure img,
  .work-community-context figure img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    filter: none !important;
    transform: none !important;
  }
  .work-image-band figcaption,
  .work-community-context figcaption {
    z-index: 3 !important;
    left: auto !important;
    right: 28px !important;
    bottom: 24px !important;
    width: auto !important;
    max-width: 300px;
    text-align: right;
  }
  .work-image-band-copy,
  .work-community-context > div {
    position: relative !important;
    z-index: 2 !important;
    width: min(40vw,500px) !important;
    max-width: 500px !important;
    margin: 0 !important;
    padding: clamp(36px,4vw,52px) !important;
    transform: none !important;
    align-self: center !important;
    border-top: 4px solid var(--aurum-red) !important;
    border-radius: var(--modern-radius) !important;
    background: var(--desktop-copy-card) !important;
    color: var(--aurum-ink) !important;
    box-shadow: 0 28px 74px rgba(0,0,0,.24) !important;
    backdrop-filter: blur(6px);
  }
  .work-image-band-copy h2,
  .work-community-context h2 {
    margin: 20px 0 24px !important;
    color: var(--aurum-ink) !important;
  }
  .work-image-band-copy > p:last-child,
  .work-community-context p:not(.work-image-kicker) {
    max-width: 390px !important;
    margin: 0 !important;
    color: rgba(25,22,19,.72) !important;
    opacity: 1 !important;
  }

  .work-image-operations,
  .work-image-access { justify-content: flex-end !important; }
  .work-image-human,
  .work-community-context { justify-content: flex-start !important; }
  .work-image-human .work-image-band-copy { width: min(37vw,460px) !important; }
  .work-image-human figure { order: initial !important; }
  .work-image-operations figure img,
  .work-image-human figure img,
  .work-image-access figure img { object-position: center center !important; }
  .work-community-context figure img { object-position: center 48% !important; }
  .work-image-operations .work-image-band-copy,
  .work-community-context > div {
    padding: clamp(36px,4vw,52px) !important;
    border-top-color: var(--aurum-gold) !important;
  }
  .work-community-context .work-image-kicker { color: var(--aurum-red) !important; }
  .work-community-context h2 em { color: var(--aurum-red) !important; }
}

/* ==========================================================================
   AUDIT-COMPLETE EDITORIAL PASS
   Selective scale, operational content states and protected image focal points.
   ========================================================================== */
/* .about-explore (the Our History/Leadership/Annual Reports/Careers card
   row) was removed from about.html on 2026-08-11 at the client's request —
   rules deleted with it rather than left as dead CSS. */

.global-reach{background:var(--modern-panel)}
.country-cloud{display:flex;flex-wrap:wrap;gap:9px;margin-top:36px}
.country-cloud span{padding:10px 13px;border:1px solid rgba(7,113,135,.35);border-radius:999px;background:rgba(182,226,233,.28);font-size:12px}
.reach-feature{max-width:980px;margin-top:40px;padding:clamp(28px,4vw,48px);border-top:4px solid var(--aurum-gold);border-radius:var(--modern-radius);background:var(--aurum-teal);color:#fff}
.reach-feature h3{max-width:760px;margin:22px 0;font-size:clamp(32px,4vw,54px);line-height:1;letter-spacing:-.035em}
.reach-feature>p:not(.eyebrow){max-width:760px;font-size:16px;line-height:1.65;color:rgba(255,255,255,.84)}
.reach-feature .button{margin-top:20px}

.rfp-contact{margin-top:40px;padding:clamp(28px,4vw,44px);border-radius:var(--modern-radius);background:var(--aurum-ink);color:#fff}
.rfp-contact h3{margin:18px 0 12px;font-size:clamp(28px,3vw,42px)}
.rfp-contact p:not(.eyebrow){max-width:660px;color:rgba(255,255,255,.78)}
.rfp-contact .button{margin-top:16px}
.rfp-empty strong{color:var(--aurum-red)}

.feature-card{scroll-margin-top:100px}
.feature-card-link{display:inline-flex;align-items:center;gap:10px;margin-top:auto;padding-top:22px;color:var(--aurum-red);font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.feature-card-link span{font-size:15px}
.health-link-pending{cursor:default!important;opacity:.72}
.health-link-pending>span:last-child{font-size:9px;line-height:1.2;text-transform:uppercase;letter-spacing:.1em;color:var(--aurum-red)}

.story-card--text{min-height:210px;border-top:3px solid var(--aurum-gold);display:flex}
.story-card--text>div{display:flex;flex-direction:column;justify-content:flex-end;width:100%;padding:24px!important}
.story-card--text .kicker{margin-bottom:auto;color:var(--aurum-red)}
/* 2026-08-16: video-carrying story cards (currently just DriveDx4TB TOO's
   "TB Diagnostics Have a Face" series). The offline-safe build uses a
   normal outbound video link rather than a third-party embed. */
.story-card--video{display:flex;flex-direction:column}
.story-card--video .story-video{position:relative;aspect-ratio:16/9;background:var(--aurum-ink)}
.story-card--video .story-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.story-card--video .story-video--external{display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,var(--aurum-teal),var(--aurum-ink))}
.story-card--video .story-video--external a{color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800}
.story-card--video>div:last-child{padding:20px!important}
.story-card--video .kicker{color:var(--aurum-red)}
.story-card--video h3{font-size:22px!important}
.content-status{grid-column:1/-1;padding:28px;border:1px solid rgba(7,113,135,.35);border-radius:var(--modern-radius);background:rgba(182,226,233,.22)}
.content-status strong,.content-status span{display:block}
.content-status strong{font-size:23px;margin-bottom:8px}
.content-status span{color:var(--modern-slate);font-size:14px}
.project-support{background:var(--aurum-gold)}
.project-actions,.project-cta-actions{display:flex;flex-wrap:wrap;gap:10px}
.project-actions{margin-top:24px}
.project-actions .button,.project-cta-actions .button{width:auto}
.project-cta-actions{justify-content:center;margin-top:22px}
[id]{scroll-margin-top:96px}

@media(min-width:851px){
  .discipline>.section-head h2,
  .project-section>.section-head h2,
  .page-section>.section-head h2,
  .resource-feature h2{
    font-size:clamp(40px,4.1vw,54px)!important;
    line-height:1.01!important
  }
  .purpose-panel{
    width:min(36vw,500px)!important;
    margin-left:0!important;
    margin-right:auto!important;
    padding:clamp(36px,3.7vw,50px)!important
  }
  .purpose-panel h2{font-size:clamp(40px,4vw,54px)!important}
  .purpose::after{background:linear-gradient(90deg,rgba(25,22,19,.5),rgba(25,22,19,.04) 40%,rgba(25,22,19,.04))!important}
  .purpose-art-image{object-position:center center!important}
  .people{grid-template-columns:minmax(440px,1fr) minmax(440px,1.05fr)!important}
  .people-layout .display{font-size:clamp(46px,5vw,68px)!important;line-height:.98!important;max-width:620px}
  .people-note{max-width:470px!important}
  .people-note p{max-width:430px!important;font-size:18px!important}
}
@media(max-width:850px){
  .about-explore{grid-template-columns:1fr 1fr}
  .reach-feature{padding:28px 22px}
}
@media(max-width:520px){
  .about-explore{grid-template-columns:1fr}
}
/* Final proportional pass: content-sized values and a true split What We Do hero. */
.values-grid article{min-height:238px!important;padding:22px!important}
.values-grid h3{font-size:clamp(27px,2.35vw,36px)!important;margin:auto 0 12px!important}
.values-grid p{font-size:15px!important;line-height:1.45!important;margin:0!important}
.feature-card.is-linked-target{outline:3px solid var(--aurum-gold);outline-offset:6px;scroll-margin-top:120px}
@media(min-width:851px){
  .values{padding-top:clamp(64px,6.5vw,88px)!important;padding-bottom:clamp(64px,6.5vw,88px)!important}
  .values-head{margin-bottom:clamp(34px,4vw,52px)!important}
  .page-hero.work-hero.has-work-media{
    position:relative!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;
    min-height:clamp(650px,56vw,760px)!important;padding:0 0 0 var(--desktop-gutter)!important;
    align-items:stretch!important;overflow:hidden!important
  }
  .work-hero.has-work-media::before{
    content:"";position:absolute;z-index:2;inset:0;pointer-events:none;
    background:linear-gradient(90deg,transparent 0 43%,rgba(25,22,19,.96) 49%,rgba(25,22,19,.44) 56%,transparent 66%)
  }
  .work-hero.has-work-media::after{display:none!important}
  .work-hero .work-hero-copy{
    position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;
    align-self:stretch!important;max-width:none!important;padding:0 clamp(42px,6vw,88px) 0 0!important
  }
  .work-hero .work-hero-copy h1{font-size:clamp(68px,6.7vw,96px)!important;line-height:.88!important}
  .work-hero .work-hero-media{
    position:relative!important;inset:auto!important;width:100%!important;height:100%!important;
    min-height:inherit!important;margin:0!important;transform:none!important;border:0!important;
    border-radius:0!important;box-shadow:none!important
  }
  .work-hero .work-hero-media img{object-position:62% center!important}
  .work-image-human .work-image-band-copy{
    width:min(42vw,540px)!important;max-width:540px!important;
    padding:clamp(38px,4vw,54px)!important;overflow:visible!important
  }
  .work-image-human .work-image-band-copy h2{font-size:clamp(42px,4.7vw,66px)!important;line-height:.94!important}
}
@media(max-width:850px){
  .values-grid article{min-height:210px!important}
}
@media(min-width:851px){
  .hero--story .hero-image img{
    position:absolute!important;
    top:0!important;
    bottom:0!important;
    left:-6%!important;
    width:112%!important;
    max-width:none!important;
    transform:translateX(4%)!important;
    object-position:center 39%!important
  }
}
/* Six-point client review pass. */
.purpose-art span,
.purpose-art i{display:none!important}
.work-card .card-arrow,
.work-card:nth-child(1) .card-arrow,
.work-card:nth-child(2) .card-arrow,
.work-card:nth-child(3) .card-arrow{
  width:32px!important;height:32px!important;display:grid!important;place-items:center!important;
  border:1px solid var(--aurum-red)!important;border-radius:50%!important;
  background:#fff!important;color:var(--aurum-red)!important;opacity:1!important;
  font-size:22px!important;line-height:1!important
}
@media(min-width:851px){
  .people{grid-template-columns:minmax(520px,1.12fr) minmax(420px,.88fr)!important}
  .people-layout .display{max-width:720px!important;font-size:clamp(58px,5.5vw,78px)!important;line-height:.94!important}
  .people-note{max-width:540px!important}
  .people-note p{max-width:520px!important;font-size:19px!important;line-height:1.52!important}
  .page-section>.section-head:has(+ .purpose-grid){grid-template-columns:minmax(470px,1.05fr) minmax(480px,.95fr)!important;align-items:center!important}
  .page-section>.section-head:has(+ .purpose-grid) h2{max-width:none!important;white-space:nowrap}
  .work-hero.has-work-media::before{display:none!important}
  .work-hero .work-hero-media::before{
    content:"";position:absolute;z-index:2;inset:0 auto 0 0;width:24%;display:block!important;
    background:linear-gradient(90deg,var(--modern-ink) 0%,rgba(25,22,19,.72) 28%,rgba(25,22,19,.24) 68%,transparent 100%);
    pointer-events:none
  }
  .work-hero .work-hero-media figcaption{z-index:3}
  .work-hero .work-hero-media img{object-position:82% 12%!important}
  .work-image-human .work-image-band-copy{
    width:min(34vw,460px)!important;max-width:460px!important;
    margin-left:clamp(55px,6vw,90px)!important
  }
}

/* Persistent history navigation: returns visitors to their prior scroll position. */
.page-back-control{
  position:fixed;
  z-index:9000;
  left:clamp(14px,2vw,28px);
  bottom:clamp(14px,2vw,26px);
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:44px;
  padding:0 17px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:999px;
  background:var(--aurum-red);
  box-shadow:0 12px 32px rgba(205,32,38,.32);
  color:#fff;
  font:700 11px/1 Arial,sans-serif;
  letter-spacing:.09em;
  text-transform:uppercase;
  cursor:pointer;
  /* backdrop-filter removed 2026-08-11: this sits on a fully opaque
     var(--aurum-red) background, so blurring what's behind it was
     invisible — pure cost, no benefit. Combined with the header's own
     backdrop-filter below, these two fixed, always-on-screen blurred
     layers were forcing the browser to resample a blur on every single
     scroll frame, which is what was making scrolling feel slow. */
  transition:transform .2s ease,background .2s ease;
}
.page-back-control span:first-child{font-size:18px;line-height:1;color:var(--aurum-gold)}
.page-back-control:hover{transform:translateY(-2px);background:var(--aurum-ink)}
.page-back-control:focus-visible{outline:3px solid var(--aurum-gold);outline-offset:3px}
@media(max-width:640px){
  .page-back-control{left:12px;bottom:12px;padding:0 14px;min-height:42px}
}

/* Clean, edge-to-edge photographic compositions without card shadows. */
.page-hero.about-hero{
  margin-left:0!important;
  margin-right:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.about-hero .lead{text-shadow:none!important}
.page-hero.work-hero.has-work-media{
  margin-left:0!important;
  margin-right:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.work-hero .work-hero-media{box-shadow:none!important}
.work-hero .work-hero-media img{filter:none!important}
.discipline.gold .section-head h2 em{color:var(--aurum-red)!important;opacity:1!important}
@media(min-width:851px){
  .work-hero .work-hero-media::before{
    width:18%!important;
    background:linear-gradient(90deg,rgba(25,22,19,.68) 0%,rgba(25,22,19,.34) 38%,rgba(25,22,19,.1) 72%,transparent 100%)!important
  }
}

/* Story-page layout now lives entirely in story.css (single clean reading
   column). This file used to carry a competing 12-column !important grid
   for the same selectors, which is what caused the broken/overlapping
   story pages — removed rather than patched over. */

/* Mobile continuity fixes: full-height About overlay and content-sized People section. */
.page-hero.about-hero::before{
  inset:0!important;
  width:auto!important;
  height:auto!important;
  min-height:100%!important;
}
@media(max-width:850px){
  .people{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    padding:46px 20px 24px!important;
    overflow:hidden!important;
  }
  .people .section-index{order:1!important;margin-bottom:28px!important}
  .people-layout{order:2!important;width:100%!important;max-width:none!important;min-height:0!important}
  .people-media{
    position:relative!important;
    order:3!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1.38!important;
    margin:30px 0 0!important;
    bottom:auto!important;
    box-shadow:none!important;
  }
  .people-media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
  .closing{margin-top:10px!important}
}

/* IMPAACT4HIV uses the entire section as its colour field. */
.page-section.global-reach{
  padding:clamp(56px,7vw,96px) clamp(28px,8vw,124px)!important;
  border-top:5px solid var(--aurum-gold)!important;
  background:var(--aurum-teal)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.global-reach .reach-feature{
  max-width:1100px!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.global-reach .reach-feature h3{max-width:900px!important}
.global-reach .reach-feature>p:not(.eyebrow){max-width:900px!important}
@media(max-width:850px){
  .page-section.global-reach{padding:48px 22px!important}
}

/* Keep the Contact action clickable above the navigation hit area.
   2026-08-04: the old centre-nav offset hacks (nav a:nth-child(6) left
   shift, header-link translateX) were relics of the centred-logo layout
   and are removed now that the header uses a plain left-to-right grid. */
.site-header .header-link{
  position:relative!important;
  z-index:20!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
/* 2026-08-09: this used to force a min-width that fought whatever fixed
   grid track Contact happened to be sitting in that week, overflowing
   into whichever neighbour was closest. The header is flexbox now (see
   the "Final desktop header geometry" block above), so Contact just
   sizes to its own padding + text — nothing left here to override. */
@media(min-width:851px){
  .site-header .header-link{
    justify-content:center!important;
  }
}

/* 2026-08-09: client wants Cabinet Grotesk (Fontshare) on all headings and
   on the nav tab buttons specifically — a different face from the
   Neue Haas Grotesk stand-in used for body copy elsewhere. Loaded via
   @import at the top of this file so every page that already includes
   modern-refresh.css picks it up with no per-page <link> changes needed. */
h1,h2,h3,h4,h5,h6{
  font-family:"Cabinet Grotesk",var(--font-primary),Arial,sans-serif!important;
}
/* 2026-08-17: homepage-only — client wants headings here "more
   sophisticated and less bulky" than Cabinet Grotesk (a deliberately bold/
   expressive display face, approved sitewide 2026-08-09 — see the comment
   above). Scoped to body.home only, same reasoning and treatment already
   applied to the Where We Work country list: the site's own lighter body
   grotesk at a refined weight reads calmer without touching the
   already-approved sitewide heading face on every other page. */
body.home h1,body.home h2,body.home h3,body.home h4,body.home h5,body.home h6{
  font-family:var(--font-primary),Arial,sans-serif!important;
  font-weight:600!important;
}
.site-header nav[aria-label="Primary navigation"] a,
.site-header .header-link,
.site-header .nav-drop-menu a,
.mobile-nav a,
.menu-toggle b{
  font-family:"Cabinet Grotesk",var(--font-primary),Arial,sans-serif!important;
}

/* ==========================================================================
   Eyebrow / section-label system — 2026-08-11
   Client feedback: the small uppercase labels that sit above section
   headings (WHAT WE DO, WHERE WE WORK, RESOURCES & INSIGHTS, GET INVOLVED
   and every equivalent — .eyebrow, .kicker, .section-index,
   .work-image-kicker, .impact-hero-eyebrow) were rendering at 10px with no
   explicit font-weight, so they read as tiny afterthoughts rather than
   editorial section intros. One shared rule instead of per-file tweaks, so
   every instance site-wide gets the same treatment. Placed at the very end
   of this file (which already loads after every other stylesheet on every
   page) so it wins the cascade over the older 10px declarations scattered
   through the phase files, with no !important needed and no change to the
   colour/margin overrides each section already sets for itself.
   Deliberately typography-only: no layout, colour, spacing or content
   changes beyond the label text itself. ========================== */
.eyebrow,
.kicker,
.section-index,
.work-image-kicker,
.impact-hero-eyebrow{
  font-size:clamp(13px,1.05vw,16px);
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  line-height:1.3;
}
/* Scale the accent dash that already sits beside .section-index to stay
   proportionate to the larger label — same line, just wider. */
.section-index::before{
  width:34px;
}

/* ==========================================================================
   Interactive hover buttons — 2026-08-15
   Applies to every .button sitewide (structure built at runtime by
   assets/js/button-hover.js, since every template currently only has plain
   label text). Each button keeps whatever background colour it already had
   (red by default, ink on .discipline, etc. — untouched here) and gets a
   new hover mechanic layered on top: the label slides out and fades, a
   duplicate label+arrow slides in from the same direction, and a small gold
   dot expands from inside the button to fully cover it, giving the revealed
   text somewhere legible to sit. Pill shape (border-radius:999px) replaces
   the old subtle corner rounding — the growing-circle fill needs a pill to
   read as a clean wipe rather than leaving the old square corners exposed.
   Old hover-lift (`.button:hover{transform:translateY(-4px)}` in styles.css)
   is neutralised below so it doesn't fight this in-place fill/slide effect.

   Also fixes a real pre-existing gap found while building this: .button's
   base display/padding/background/colour was only ever defined in
   styles.css, which is enqueued homepage-only — every subpage use of
   .button (get-involved, single-project, single-health_area,
   page-where-we-work, single-story, page-implementation-research) has been
   rendering as unstyled inline text this whole time, not a button, unless
   it also happened to sit inside one of the contextual modifiers below
   (.discipline .button, .closing .button, etc.). Restated here so it's
   correct everywhere; styles.css's copy is now a harmless duplicate on the
   homepage specifically. */
.button{
  display:inline-flex;
  align-items:center;
  /* .button sits inside several flex/grid containers around the site
     (.invite-card, .project-actions, etc.) that don't set an explicit
     align-items, defaulting to stretch — without these, .button would
     stretch to fill the full cross-axis width of whichever container it's
     in instead of sizing to its own text, which is exactly what surfaced
     once .button actually had a working `display` on subpages (see the
     note above; it never did before this fix, so this stretching was
     always latent, just never visible). */
  align-self:flex-start;
  justify-self:start;
  gap:18px;
  background:var(--aurum-red);
  color:#fff;
  padding:18px 23px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
  position:relative;
  overflow:hidden;
  border-radius:999px;
  isolation:isolate;
}
.button:hover{
  transform:none!important;
}

/* 2026-08-16: gives the nav "Contact" link (.header-link) the exact same
   gold-fill hover mechanics as .button, without giving it the .button
   CLASS — see the comment in button-hover.js's enhanceButtons() for why.
   Only the 3 properties the dot-fill effect actually needs are added here;
   everything else about .header-link's box (background, padding, all its
   breakpoint-specific positioning) is untouched. */
.header-link{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  /* 2026-08-16: the box's own width turned out to be driven entirely by
     .button-label's in-flow content (confirmed by testing — making the
     label position:absolute collapsed the whole box to ~38px, padding
     only). That explains the earlier 9px left/right imbalance too: with
     an auto/content-driven width, text-align:center has nothing stable to
     center within once the hover-label and dot (both already absolute)
     are factored in. min-width fixes the box at its natural rendered size
     (measured 107.86px) so it's no longer ambiguous. */
  min-width:108px;
}
/* 2026-08-16: two other approaches (text-align:center, then positioning
   .button-label the same absolute+inset:0 way .button-label-hover does)
   both failed to actually center the visible text. Root cause found via
   grep: several breakpoint-specific rules elsewhere in this same file
   (e.g. ".site-header .header-link{padding-left:16px!important}" at
   min-width:851px, ".site-header .header-link{padding:12px 14px!important}"
   in a narrower tablet range) all use the higher-specificity descendant
   selector ".site-header .header-link" with !important — a plain
   ".header-link{padding-left:22px!important}" (fewer classes = lower
   specificity) can never beat them regardless of !important or file order.
   Repeating the class matches/exceeds every one of those unconditionally,
   so it wins at every breakpoint without having to chase each one down. */
.site-header .header-link.header-link{
  padding-left:22px!important;
  padding-right:22px!important;
}
/* 2026-08-16: .header-link has ~10 breakpoint-specific rules scattered
   across older CSS passes (styles.css, subpage.css, story.css,
   modern-refresh.css itself) — one of them wins the cascade on the dot's
   transform specifically and was leaving it visible at rest (scale(0) from
   .button-dot got overridden back to none). This selector is specific
   enough to win regardless of file order. */
.header-link .button-dot{
  transform:scale(0);
}
.header-link:hover .button-dot{
  transform:scale(1.6);
}
/* 2026-08-16: found the actual centering culprit — styles.css has a legacy
   ".header-link span{margin-left:9px}" rule from when the dot sat inline
   beside the text. button-hover.js's generated .button-label span still
   matches that old selector, so the (now purely decorative, absolutely
   positioned) dot's spacing was still shoving the visible text 9px off
   centre even with padding balanced. Zeroing it here is what actually
   fixes the imbalance. */
.header-link .button-label{
  margin-left:0;
}
.button-label,
.button-label-hover{
  display:inline-flex;
  align-items:center;
  gap:8px;
  transition:transform .35s var(--ease-editorial,ease),opacity .3s var(--ease-editorial,ease);
}
.button-label{
  transform:translateX(0);
}
/* 2026-08-16: the actual "missing text" bug — styles.css has a legacy
   ".button span{color:var(--red)}" rule from before .button-label existed
   (meant for a small icon span). button-hover.js's generated .button-label
   span matches it too, forcing red text regardless of variant. On
   .button-invert (white bg) that accidentally looked right, which is why
   it went unnoticed; on plain .button (red bg, e.g. the hero "Read the
   full story" buttons) it's red text on a red background — invisible.
   .button-label was always meant to just inherit color from its parent
   (#fff from .button, var(--aurum-red) from .button-invert); pinning it
   explicitly here beats the legacy rule's specificity. */
.button .button-label{
  color:#fff;
}
.button-invert .button-label{
  color:var(--aurum-red);
}
.button:hover .button-label,
.header-link:hover .button-label{
  transform:translateX(16px);
  opacity:0;
}
.button-label-hover{
  position:absolute;
  inset:0;
  justify-content:center;
  transform:translateX(16px);
  opacity:0;
  color:var(--aurum-ink);
  pointer-events:none;
}
.button:hover .button-label-hover,
.header-link:hover .button-label-hover{
  transform:translateX(0);
  opacity:1;
}
.button-icon{
  width:15px;
  height:15px;
  flex:none;
}
.button-dot{
  position:absolute;
  left:20%;
  top:40%;
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--aurum-gold);
  /* 2026-08-16: this was scale(1) at rest — a permanently-visible small
     gold speck on every .button sitewide, easy to miss on the red base
     buttons but glaring on the white .button-invert ones. Starts hidden
     now and only appears as part of the hover/tap/peek fill-in. */
  transform:scale(0);
  transition:all .4s var(--ease-editorial,ease);
  z-index:-1;
  pointer-events:none;
}
.button:hover .button-dot,
.header-link:hover .button-dot{
  left:0;
  top:0;
  width:100%;
  height:100%;
  transform:scale(1.6);
}
.header-link:hover .button-label-hover{color:var(--aurum-ink)}

/* 2026-08-16: for a .button sitting on a background that's already red
   (the footer's donate band, and anywhere else a CTA needs to read against
   a colored section rather than the usual white/cream page background) —
   only the resting state changes here. The hover mechanics (.button-dot
   filling gold, .button-label-hover in dark ink) are unchanged and still
   work correctly on top of these different resting colors. */
.button-invert{
  background:#fff;
  color:var(--aurum-red);
}
.button-invert .button-label-hover{
  color:var(--aurum-ink);
}

/* 2026-08-16: :hover doesn't exist on touch devices, so the fill effect
   above was invisible on mobile until a tap happened to land and stick
   (and even then, only the OS's synthetic "sticky hover" — inconsistent
   and not something to rely on). @media(hover:none) is the real signal for
   "this device's primary input has no hover concept", not a viewport width
   guess. Two touch-specific treatments, both gated behind it:
   1) :active swaps instantly on touch-down, faster than the desktop
      transition, so a tap gets real feedback the moment a finger lands.
   2) A one-time "peek" (see aurumEnhanceButtons' IntersectionObserver in
      button-hover.js) briefly grows the dot as each button first scrolls
      into view, then settles back — teaching that it's tappable without
      requiring the tap, which is the mobile equivalent of what hover
      discovery does for free on desktop. */
@media (hover:none){
  .button:active .button-dot,
  .header-link:active .button-dot{
    left:0;top:0;width:100%;height:100%;
    transform:scale(1.6);
    transition:all .15s var(--ease-editorial,ease);
  }
  .button:active .button-label,
  .header-link:active .button-label{transform:translateX(16px);opacity:0}
  .button:active .button-label-hover,
  .header-link:active .button-label-hover{transform:translateX(0);opacity:1;color:var(--aurum-ink)}

  @keyframes aurum-button-peek-dot{
    0%,100%{transform:scale(0)}
    50%{transform:scale(3.4)}
  }
  @keyframes aurum-button-peek-label{
    0%,100%{transform:translateX(0);opacity:1}
    50%{transform:translateX(5px);opacity:.4}
  }
  .button.is-peeking .button-dot,
  .header-link.is-peeking .button-dot{animation:aurum-button-peek-dot 1s var(--ease-editorial,ease)}
  .button.is-peeking .button-label,
  .header-link.is-peeking .button-label{animation:aurum-button-peek-label 1s var(--ease-editorial,ease)}
}
@media (hover:none) and (prefers-reduced-motion:reduce){
  .button.is-peeking .button-dot,.button.is-peeking .button-label{animation:none}
}
@media(prefers-reduced-motion:reduce){
  .button-label,.button-label-hover,.button-dot{transition:none}
}


/* 2026-08-18 mobile performance: the Get Involved hero keeps the exact
   same crop/overlay, but phones download the 768px derivative instead of
   the 1600px source image. Desktop remains untouched for maximum quality. */
@media(max-width:850px){
  .involve-hero{
    background-image:
      linear-gradient(90deg,rgba(25,22,19,.82),rgba(25,22,19,.34)),
      url("../responsive/photos/client/what-we-do/community-consultation-768.jpg")!important;
  }
}


.section-head--single > h2::before,
.latest-stories-head > h2::before{
  content:""!important;
  display:block!important;
  flex:0 0 5px!important;
  width:5px!important;
  height:.88em!important;
  min-height:34px!important;
  border-radius:4px!important;
  background:var(--aurum-red)!important;
}
@media(max-width:850px){
  .section-head--single > h2,
  .latest-stories-head > h2{gap:13px!important;}
  .section-head--single > h2::before,
  .latest-stories-head > h2::before{
    flex-basis:4px!important;
    width:4px!important;
    min-height:28px!important;
  }
}


/* =====================================================================
   2026-09-03 — SITEWIDE OPTION-2 SECTION HEADINGS
   Mirrors the approved DriveDx treatment exactly.
   ===================================================================== */
.section-head--single > h2,
.latest-stories-head > h2{
  position:relative!important;
  display:block!important;
  width:fit-content!important;
  max-width:100%!important;
  margin:0!important;
  padding-left:20px!important;
  border-left:5px solid var(--aurum-red)!important;
  font-size:clamp(32px,3vw,46px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  font-weight:800!important;
}
.section-head--single > h2::before,
.latest-stories-head > h2::before{
  content:none!important;
  display:none!important;
}
@media(max-width:700px){
  .section-head--single > h2,
  .latest-stories-head > h2{
    padding-left:14px!important;
    border-left-width:4px!important;
    font-size:clamp(28px,8.2vw,35px)!important;
  }
}

/* ===== SOURCE: density-review.css ===== */
/* Marlize review: desktop-only editorial density.
   Content, imagery, order and mobile compositions remain unchanged. */
@media (min-width:851px){
  :root{--density-y:clamp(48px,5.2vw,76px);--density-x:clamp(44px,7vw,112px);--density-gap:clamp(22px,3.5vw,52px)}
  main>section{scroll-margin-top:104px}
  .hero,.page-hero,.page-hero.has-work-media,.area-hero,.project-hero,.story-hero{min-height:clamp(520px,61vh,690px)!important}
  .hero.hero--story{height:min(760px,calc(100vh - 88px))!important;min-height:620px!important}
  .page-hero,.area-hero,.project-hero,.story-hero{padding-top:clamp(92px,9vw,126px)!important;padding-bottom:clamp(54px,6vw,84px)!important}
  .page-hero.has-work-media{padding-right:var(--density-x)!important;gap:clamp(26px,4vw,60px)!important}
  .has-work-media .work-hero-media{height:clamp(390px,38vw,520px)!important;transform:none!important}
  .page-section,.area-section,.project-section,.discipline,.values,.work-section,.leadership,.phase8-media-section{min-height:0!important;padding:var(--density-y) var(--density-x)!important}
  .section-head,.work-intro,.values-head{gap:var(--density-gap)!important;margin-bottom:clamp(26px,3vw,44px)!important}
  .section-head .lead,.body-copy,.lead{max-width:720px}
  .purpose{padding:var(--density-y) var(--density-x)!important;min-height:0!important;gap:clamp(30px,5vw,76px)!important}
  .purpose-art{min-height:300px!important}
  .values{padding-bottom:clamp(46px,5vw,72px)!important}
  .values-grid{gap:12px!important}
  .values-grid article{min-height:230px!important;padding:24px 20px!important}
  .work-card{min-height:348px!important}
  .people{padding:var(--density-y) var(--density-x)!important;gap:clamp(34px,5vw,78px)!important}
  .closing{padding:clamp(54px,6vw,86px) var(--density-x)!important}
  .about-introduction .about-introduction-grid{
    height:auto!important;
    min-height:clamp(680px,56vw,790px)!important;
  }
  .page-section.about-introduction{
    margin:0!important;
    padding:0 0 var(--density-y)!important;
    border-radius:0!important;
  }
  .about-introduction .about-introduction-grid{border-radius:0!important}
  .page-hero.about-hero{
    margin:0!important;
    border-radius:0!important;
  }
  .about-introduction-copy{padding:clamp(34px,4.4vw,60px)!important}
  .about-introduction-copy h2{margin-bottom:20px!important;font-size:clamp(58px,7vw,96px)!important}
  .about-introduction .proof-grid{
    margin:10px var(--density-x) 0!important;
    gap:10px!important;
  }
  /* .about-explore rules removed 2026-08-11 with the section itself. */
  .proof-card,.purpose-card{min-height:0!important;padding:clamp(24px,2.5vw,34px)!important}
  .proof-card h3{margin:34px 0 14px!important}
  .purpose-grid .purpose-card h3{margin-top:28px!important;font-size:clamp(32px,3vw,44px)!important;line-height:1!important}
  .timeline{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  .timeline::before,.timeline-dot{display:none!important}
  .timeline-item{display:block!important;min-height:0!important;padding:clamp(20px,2vw,28px)!important;margin:0!important}
  .timeline-year{text-align:left!important}
  .timeline-copy h3{font-size:clamp(24px,2.1vw,32px)!important;line-height:1!important;margin:14px 0 12px!important}
  .timeline-copy p{font-size:14px!important;line-height:1.48!important}
  .history .section-head,.leadership .section-head{margin-bottom:24px!important}
  .history .phase8-history-image{
    height:auto!important;
    min-height:0!important;
    margin-top:24px!important;
    background:transparent!important;
  }
  .history .phase8-history-image img{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }
  .leadership .leadership-group{margin-top:clamp(24px,2.5vw,36px)!important}
  .leadership .leadership-group>h3{margin-bottom:16px!important;font-size:clamp(26px,2.7vw,40px)!important}
  .leadership .profile-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important}
  /* Keep the leadership grid compact without sacrificing the future portraits. */
  .leadership .portrait-placeholder{height:clamp(184px,17vw,226px)!important;background:#eee9dd!important}
  .leadership .portrait-placeholder img{
    position:absolute!important;
    inset:0!important;
    z-index:3!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 18%!important;
  }
  .leadership .portrait-placeholder:has(img)::before,
  .leadership .portrait-placeholder:has(img)::after{display:none!important}
  .leadership .profile-meta{padding:14px!important}
  .leadership .profile-name{font-size:clamp(19px,1.55vw,24px)!important;line-height:1!important}
  .leadership .profile-action{margin-top:10px!important}
  .discipline .section-head{margin-bottom:clamp(22px,2.7vw,38px)!important}
  .discipline .section-head[style]{margin-top:clamp(42px,5vw,72px)!important}
  .discipline-grid{gap:clamp(26px,4vw,60px)!important}
  .infra-grid{gap:10px!important}
  .infra-card{min-height:250px!important;padding:22px!important}
  .work-image-band,.work-community-context{min-height:clamp(540px,45vw,620px)!important;padding:clamp(34px,4vw,56px) var(--density-x)!important;gap:clamp(30px,4.8vw,72px)!important}
  .work-image-band figure,.work-community-context figure{height:100%!important;min-height:0!important}
  .work-image-operations figure img{object-position:56% 38%!important}
  .work-image-human figure img{object-position:52% 44%!important}
  .work-image-band-copy h2,.work-community-context h2{margin-bottom:16px!important;font-size:clamp(42px,4.6vw,68px)!important}
  .health-link,.health-link:nth-child(odd),.health-link:nth-child(even){min-height:92px!important;padding:16px 14px!important}
  .story-content,.project-content,.area-content{padding-top:clamp(40px,5vw,68px)!important;padding-bottom:clamp(48px,6vw,82px)!important}
  .story-body{max-width:1120px!important;padding:clamp(30px,3.4vw,50px)!important}
  .story-body>p,.story-body blockquote{max-width:780px}
  .story-body figure{max-width:920px;margin-top:clamp(28px,3.5vw,48px)!important;margin-bottom:clamp(28px,3.5vw,48px)!important}
  .story-next,.area-cta,.project-cta,.footprint-note{padding:clamp(38px,4.8vw,64px) var(--density-x)!important}
  .site-footer,footer{padding-top:22px!important;padding-bottom:22px!important}
}
@media (min-width:1180px){
  .history .timeline{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .history .timeline-item{padding:18px!important}
  .history .timeline-copy h3{font-size:clamp(21px,1.7vw,27px)!important}
  .history .timeline-copy p{font-size:13px!important;line-height:1.42!important}
  .leadership .profile-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .leadership .portrait-placeholder{height:184px!important}
  .leadership .profile-meta{padding:12px!important}
  .leadership .profile-name{font-size:clamp(18px,1.35vw,21px)!important}
  .infra-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .infra-card{min-height:270px!important;padding:20px 18px!important}
  .infra-card h3{font-size:clamp(22px,1.75vw,28px)!important;line-height:.98!important}
  .infra-card p{font-size:13px!important;line-height:1.42!important}
}

/* About-page photographic handoff: crisp white divider with restrained gold accents. */
.about-hero::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:1!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:auto!important;
  height:8px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:linear-gradient(90deg,#fff 0 11%,var(--aurum-gold) 11% 17%,#fff 17% 83%,var(--aurum-gold) 83% 89%,#fff 89% 100%)!important;
  pointer-events:none!important;
}
.about-introduction-media::before{
  display:none!important;
}
@media(max-width:850px){
  .about-hero::after{height:6px!important}
}

/* About overview gateways and dedicated detail routes. */
.about-gateways{background:#fff!important}
.about-purpose{display:grid!important;grid-template-columns:minmax(300px,.78fr) minmax(460px,1.22fr)!important;gap:clamp(44px,7vw,110px)!important;align-items:stretch!important;background:#fff!important}
.about-purpose .section-head{display:flex!important;height:100%!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;margin:0!important}
.about-purpose .section-index{margin:0 0 28px!important}
.about-purpose .section-head h2{max-width:560px!important;font-size:clamp(58px,6.7vw,94px)!important;line-height:.86!important}
.about-purpose .section-head h2 em{color:var(--aurum-red)!important}
.about-purpose .section-head .lead{max-width:560px!important;margin:clamp(42px,5vw,66px) 0 0!important;padding:0!important;font-size:clamp(21px,1.7vw,25px)!important;line-height:1.56!important}
.about-purpose .purpose-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
.about-purpose .purpose-card{display:flex!important;min-height:230px!important;flex-direction:column!important;justify-content:space-between!important;padding:clamp(28px,3.2vw,44px)!important}
.about-purpose .purpose-card h3{max-width:680px!important;margin:38px 0 0!important;font-size:clamp(28px,3.2vw,46px)!important;line-height:1!important}
.gateway-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gateway-card{display:flex;min-height:250px;flex-direction:column;padding:clamp(26px,3.2vw,44px);border-radius:var(--modern-radius);color:#fff;text-decoration:none;overflow:hidden;transition:transform .28s ease}
.gateway-card:hover{transform:translateY(-4px)}
.gateway-history{background:var(--aurum-ink)}
.gateway-leadership{background:var(--aurum-teal)}
.gateway-reports{background:var(--aurum-red)}
.gateway-careers{background:var(--aurum-slate)}
.gateway-card span{color:var(--aurum-gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.gateway-card h3{max-width:620px;margin:34px 0 14px;color:#fff;font-size:clamp(28px,3vw,42px);line-height:.98;letter-spacing:-.045em}
.gateway-card p{max-width:560px;margin:0 0 22px;font-size:15px;line-height:1.5;color:rgba(255,255,255,.84)}
.gateway-card b{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--aurum-gold)}
.about-detail-history .about-hero,.about-detail-leadership .about-hero{min-height:clamp(380px,48vh,540px)!important}
@media(max-width:850px){.about-purpose{grid-template-columns:1fr!important;gap:34px!important}.about-purpose .purpose-card{min-height:210px!important}.gateway-grid{grid-template-columns:1fr}.gateway-card{min-height:230px}.about-gateways{padding:54px 22px!important}}

/* What We Do overview and dedicated discipline routes. */
.work-pathways{background:#fff!important}
.pathway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pathway-card{display:grid;grid-template-rows:190px 1fr;min-width:0;overflow:hidden;border-radius:var(--modern-radius);color:var(--aurum-ink);text-decoration:none;transition:transform .3s ease}
.pathway-card:hover{transform:translateY(-5px)}
.pathway-card figure{height:190px;margin:0;overflow:hidden;background:var(--aurum-ink)}
.pathway-card img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.pathway-card>div{display:flex;min-height:300px;flex-direction:column;padding:26px}
.pathway-clinical>div{background:var(--aurum-red);color:#fff}.pathway-implementation>div{background:var(--aurum-teal);color:#fff}.pathway-systems>div{background:var(--aurum-gold)}
.pathway-card span,.pathway-card b{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.pathway-card span{color:var(--aurum-gold)}.pathway-systems span{color:var(--aurum-red)}
.pathway-card h3{margin:32px 0 14px;font-size:clamp(28px,2.6vw,40px);line-height:.96;letter-spacing:-.05em}
.pathway-card p{margin:0 0 26px;font-size:14px;line-height:1.5;opacity:.85}
.pathway-card b{margin-top:auto;color:inherit}
.work-overview-infrastructure{background:var(--aurum-ink)!important;color:#fff}
.infrastructure-intro{display:grid;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);gap:clamp(38px,6vw,90px);align-items:center}
.infrastructure-intro figure{height:clamp(320px,32vw,460px);margin:0;overflow:hidden;border-radius:var(--modern-radius)}
.infrastructure-intro img{width:100%;height:100%;object-fit:cover;object-position:center 38%;display:block}
.infrastructure-intro .lead{color:rgba(255,255,255,.76)}
.infrastructure-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:38px}
.infrastructure-tiles article{min-height:140px;padding:20px;border:1px solid rgba(255,255,255,.22);border-top:3px solid var(--aurum-gold)}
.infrastructure-tiles b{font-size:10px;color:var(--aurum-gold)}
.infrastructure-tiles h3{margin:34px 0 0;font-size:clamp(17px,1.5vw,22px);line-height:1.02}
.overview-text-link{display:inline-flex;margin-top:26px;color:var(--aurum-gold);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.work-detail-clinical .work-hero,.work-detail-implementation .work-hero,.work-detail-systems .work-hero{min-height:clamp(420px,54vh,590px)!important}
@media(max-width:850px){.pathway-grid{grid-template-columns:1fr}.pathway-card{grid-template-rows:180px 1fr}.pathway-card>div{min-height:260px}.infrastructure-intro{grid-template-columns:1fr}.infrastructure-intro figure{height:auto}.infrastructure-intro img{height:auto;object-fit:contain}.infrastructure-tiles{grid-template-columns:1fr 1fr}.infrastructure-tiles article:last-child{grid-column:1/-1}}

/* Unique editorial media for selected health-area introductions. */
.area-hero-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}
.area-hero.has-area-media{padding:0!important}
.area-hero.has-area-media .area-hero-layout{grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);min-height:clamp(520px,62vh,680px)}
.area-hero.has-area-media .area-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(72px,8vw,124px) clamp(38px,7vw,116px)}
.area-hero-media{min-width:0;margin:0;overflow:hidden;background:var(--aurum-ink)}
.area-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
@media(max-width:850px){.area-hero.has-area-media .area-hero-layout{grid-template-columns:1fr;min-height:0}.area-hero.has-area-media .area-hero-copy{padding:56px 22px 38px}.area-hero-media{height:auto}.area-hero-media img{height:auto;max-height:none;object-fit:contain}}

/* 2026-08-04 visual correction: hero media should feel integrated, not split in half. */
@media(min-width:851px){
  .work-overview .page-hero.work-hero.has-work-media,
  .work-detail-clinical .page-hero.work-hero.has-work-media{
    display:block!important;
    min-height:clamp(620px,64vh,780px)!important;
    padding:0!important;
    background:var(--aurum-ink)!important;
    color:#fff!important;
  }
  .work-overview .work-hero-copy,
  .work-detail-clinical .work-hero-copy{
    position:relative!important;
    z-index:4!important;
    width:min(680px,52vw)!important;
    max-width:none!important;
    min-height:inherit!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:clamp(96px,9vw,132px) clamp(42px,7vw,116px)!important;
  }
  .work-overview .work-hero-copy h1,
  .work-detail-clinical .work-hero-copy h1{
    font-size:clamp(66px,6.4vw,104px)!important;
    line-height:.88!important;
  }
  .work-overview .work-hero-copy .lead,
  .work-detail-clinical .work-hero-copy .lead{
    color:rgba(255,255,255,.88)!important;
  }
  .work-overview .work-hero-media,
  .work-detail-clinical .work-hero-media{
    position:absolute!important;
    z-index:1!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    border:0!important;
    border-radius:0!important;
    background:var(--aurum-ink)!important;
  }
  .work-overview .work-hero-media img,
  .work-detail-clinical .work-hero-media img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    filter:saturate(1.06) contrast(1.03)!important;
  }
  .work-overview .work-hero-media img{
    object-position:55% 45%!important;
  }
  .work-detail-clinical .work-hero-media img{
    object-position:63% 45%!important;
  }
  .work-overview .work-hero-media::before,
  .work-detail-clinical .work-hero-media::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:2!important;
    inset:0!important;
    width:auto!important;
    background:
      linear-gradient(90deg,rgba(25,22,19,.92) 0%,rgba(25,22,19,.78) 30%,rgba(205,32,38,.22) 52%,rgba(25,22,19,.08) 100%),
      linear-gradient(0deg,rgba(25,22,19,.68),transparent 48%)!important;
    pointer-events:none!important;
  }
  .work-overview .work-hero-media::after,
  .work-detail-clinical .work-hero-media::after{
    content:""!important;
    position:absolute!important;
    z-index:3!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:7px!important;
    background:linear-gradient(90deg,var(--aurum-red),var(--aurum-gold),var(--aurum-teal),var(--aurum-orange))!important;
  }
  .work-overview .work-hero-media figcaption,
  .work-detail-clinical .work-hero-media figcaption{
    left:auto!important;
    right:clamp(30px,5vw,72px)!important;
    bottom:clamp(28px,4vw,52px)!important;
    z-index:4!important;
    text-align:right!important;
  }
}
@media(max-width:850px){
  .work-overview .page-hero.work-hero.has-work-media,
  .work-detail-clinical .page-hero.work-hero.has-work-media{
    display:flex!important;
    min-height:640px!important;
    padding:0!important;
    align-items:flex-end!important;
    color:#fff!important;
    background:var(--aurum-ink)!important;
  }
  .work-overview .work-hero-copy,
  .work-detail-clinical .work-hero-copy{
    position:relative!important;
    z-index:4!important;
    padding:120px 22px 44px!important;
  }
  .work-overview .work-hero-media,
  .work-detail-clinical .work-hero-media{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    border:0!important;
    border-radius:0!important;
  }
  .work-overview .work-hero-media img,
  .work-detail-clinical .work-hero-media img{
    height:100%!important;
    width:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .work-overview .work-hero-media::before,
  .work-detail-clinical .work-hero-media::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:2!important;
    inset:0!important;
    width:auto!important;
    background:linear-gradient(0deg,rgba(25,22,19,.9) 0%,rgba(25,22,19,.5) 58%,rgba(25,22,19,.18) 100%)!important;
  }
  .work-overview .work-hero-media figcaption,
  .work-detail-clinical .work-hero-media figcaption{
    display:none!important;
  }
}

.work-overview-infrastructure{
  background:
    radial-gradient(circle at 12% 0%,rgba(205,32,38,.28),transparent 28%),
    radial-gradient(circle at 88% 8%,rgba(7,113,135,.34),transparent 31%),
    linear-gradient(135deg,#171310 0%,#1f1713 62%,#4b241c 100%)!important;
}
.work-overview-infrastructure .section-index{
  color:var(--aurum-red)!important;
}
.work-overview-infrastructure h2 em{
  color:var(--aurum-gold)!important;
}
.work-overview-infrastructure .infrastructure-intro figure{
  border:1px solid rgba(224,172,38,.58)!important;
  border-top:6px solid var(--aurum-gold)!important;
}
.infrastructure-tiles article:nth-child(1){border-top-color:var(--aurum-red)!important}
.infrastructure-tiles article:nth-child(2){border-top-color:var(--aurum-teal)!important}
.infrastructure-tiles article:nth-child(3){border-top-color:var(--aurum-gold)!important}
.infrastructure-tiles article:nth-child(4){border-top-color:var(--aurum-orange)!important}
.infrastructure-tiles article:nth-child(5){border-top-color:var(--aurum-light-blue)!important}
.infrastructure-tiles article{
  background:rgba(255,255,255,.045)!important;
}

/* TB health area: use the supplied lab-sign image as a full editorial hero. */
body[data-area="tb"] .area-hero.has-area-media{
  padding:0!important;
  background:var(--aurum-ink)!important;
  color:#fff!important;
}
@media(min-width:851px){
  body[data-area="tb"] .area-hero.has-area-media .area-hero-layout{
    display:block!important;
    min-height:clamp(560px,64vh,760px)!important;
  }
  body[data-area="tb"] .area-hero-copy{
    position:relative!important;
    z-index:4!important;
    width:min(720px,54vw)!important;
    min-height:inherit!important;
    justify-content:center!important;
    padding:clamp(92px,9vw,132px) clamp(42px,7vw,116px)!important;
  }
  body[data-area="tb"] .area-hero-media{
    position:absolute!important;
    z-index:1!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    border-radius:0!important;
  }
  body[data-area="tb"] .area-hero-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 46%!important;
    filter:saturate(1.08) contrast(1.02)!important;
  }
  body[data-area="tb"] .area-hero-media::after{
    content:""!important;
    position:absolute!important;
    z-index:2!important;
    inset:0!important;
    background:
      linear-gradient(90deg,rgba(25,22,19,.94) 0%,rgba(25,22,19,.78) 38%,rgba(205,32,38,.24) 58%,rgba(7,113,135,.1) 100%),
      linear-gradient(0deg,rgba(25,22,19,.62),transparent 50%)!important;
  }
}
@media(max-width:850px){
  body[data-area="tb"] .area-hero.has-area-media .area-hero-layout{
    min-height:640px!important;
    display:flex!important;
    align-items:flex-end!important;
  }
  body[data-area="tb"] .area-hero-copy{
    position:relative!important;
    z-index:4!important;
    padding:120px 22px 42px!important;
  }
  body[data-area="tb"] .area-hero-media{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }
  body[data-area="tb"] .area-hero-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
body[data-area="tb"] .area-hero-media::after{
    content:""!important;
    position:absolute!important;
    z-index:2!important;
    inset:0!important;
    background:linear-gradient(0deg,rgba(25,22,19,.92),rgba(25,22,19,.3) 78%)!important;
  }
}

/* 2026-08-04 focused fixes: clearer heroes, cleaner history, intentional About divider. */
.about-hero::after{
  z-index:5!important;
  height:8px!important;
  background:
    linear-gradient(90deg,var(--aurum-red) 0 28%,var(--aurum-gold) 28% 48%,var(--aurum-teal) 48% 78%,var(--aurum-orange) 78% 100%)!important;
}
.about-introduction{
  border-top:0!important;
}
.about-introduction .about-introduction-grid{
  border-top:0!important;
}
.about-introduction-media{
  border-top:0!important;
}

@media(min-width:851px){
  .work-overview .work-hero-media::before{
    background:
      linear-gradient(90deg,rgba(25,22,19,.93) 0%,rgba(25,22,19,.74) 28%,rgba(25,22,19,.42) 48%,rgba(25,22,19,.12) 74%,rgba(25,22,19,.18) 100%),
      linear-gradient(0deg,rgba(25,22,19,.66),transparent 52%)!important;
  }
  .work-detail-clinical .work-hero-media::before{
    background:
      linear-gradient(90deg,rgba(25,22,19,.94) 0%,rgba(25,22,19,.78) 36%,rgba(25,22,19,.28) 58%,rgba(25,22,19,.08) 100%),
      linear-gradient(0deg,rgba(25,22,19,.62),transparent 50%)!important;
  }
  .work-overview .work-hero-media img{
    object-position:58% 42%!important;
    filter:saturate(1.04) contrast(1.04)!important;
  }
  .work-detail-clinical .work-hero-media img{
    object-position:61% 44%!important;
    filter:saturate(1.04) contrast(1.03)!important;
  }
}

.work-image-operations figure img{
  object-position:center 44%!important;
}

@media(min-width:851px){
  .work-detail-implementation .page-hero.work-hero.has-work-media{
    position:relative!important;
    display:block!important;
    min-height:clamp(620px,72vh,760px)!important;
    overflow:hidden!important;
    background:#17120f!important;
  }
  .work-detail-implementation .work-hero-copy{
    position:relative!important;
    z-index:4!important;
    width:min(760px,54vw)!important;
    min-height:inherit!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:clamp(82px,8vw,118px) clamp(56px,7vw,110px)!important;
  }
  .work-detail-implementation .work-hero-copy h1{
    max-width:720px!important;
  }
  .work-detail-implementation .work-hero-media{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    border-radius:0!important;
    overflow:hidden!important;
  }
  .work-detail-implementation .work-hero-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:54% 50%!important;
    filter:saturate(1.08) contrast(1.05)!important;
  }
  .work-detail-implementation .work-hero-media::before{
    content:""!important;
    position:absolute!important;
    z-index:2!important;
    inset:0!important;
    background:
      linear-gradient(90deg,rgba(25,22,19,.97) 0%,rgba(25,22,19,.88) 32%,rgba(25,22,19,.52) 52%,rgba(25,22,19,.12) 76%,rgba(25,22,19,.2) 100%),
      radial-gradient(circle at 74% 76%,rgba(224,172,38,.18),transparent 38%),
      linear-gradient(0deg,rgba(25,22,19,.66),transparent 54%)!important;
  }
  .work-detail-implementation .work-hero-media::after{
    content:""!important;
    position:absolute!important;
    z-index:3!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:7px!important;
    background:linear-gradient(90deg,var(--aurum-red),var(--aurum-gold),var(--aurum-teal),var(--aurum-orange))!important;
  }
  .work-detail-implementation .work-hero-media figcaption{
    z-index:4!important;
    right:clamp(34px,4vw,58px)!important;
    bottom:clamp(28px,3vw,46px)!important;
  }

  .work-image-operations{
    position:relative!important;
    display:block!important;
    min-height:clamp(560px,48vw,700px)!important;
    padding:0!important;
    overflow:hidden!important;
    background:#17120f!important;
  }
  .work-image-operations figure{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    border-radius:0!important;
    overflow:hidden!important;
  }
  .work-image-operations figure img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:64% 48%!important;
    filter:saturate(1.04) contrast(1.04)!important;
  }
  .work-image-operations figure::after{
    content:""!important;
    position:absolute!important;
    z-index:2!important;
    inset:0!important;
    background:
      linear-gradient(90deg,rgba(25,22,19,.56) 0%,rgba(25,22,19,.22) 30%,rgba(25,22,19,.04) 58%,rgba(25,22,19,.32) 100%),
      linear-gradient(0deg,rgba(25,22,19,.82),transparent 48%)!important;
  }
  .work-image-operations .work-image-band-copy{
    position:absolute!important;
    z-index:3!important;
    left:clamp(42px,7vw,118px)!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:min(480px,36vw)!important;
    margin:0!important;
    padding:clamp(30px,3.2vw,46px)!important;
    border-top:5px solid var(--aurum-gold)!important;
    border-radius:var(--modern-radius)!important;
    background:rgba(255,255,255,.94)!important;
    box-shadow:0 28px 70px rgba(0,0,0,.22)!important;
  }
}

@media(max-width:850px){
  .work-detail-implementation .page-hero.work-hero.has-work-media{
    position:relative!important;
    display:block!important;
    min-height:620px!important;
    overflow:hidden!important;
    background:#17120f!important;
  }
  .work-detail-implementation .work-hero-media{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
  }
  .work-detail-implementation .work-hero-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:58% 50%!important;
  }
  .work-detail-implementation .work-hero-media::before{
    content:""!important;
    position:absolute!important;
    z-index:2!important;
    inset:0!important;
    background:
      linear-gradient(0deg,rgba(25,22,19,.92) 0%,rgba(25,22,19,.58) 52%,rgba(25,22,19,.22) 100%),
      linear-gradient(90deg,rgba(25,22,19,.72),rgba(25,22,19,.08))!important;
  }
  .work-detail-implementation .work-hero-copy{
    position:relative!important;
    z-index:4!important;
    min-height:620px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    padding:120px 24px 54px!important;
  }
  .work-image-operations .work-image-band-copy{
    margin:16px!important;
  }
}

/* 2026-08-07: the dark history band and its 4/5-column card grid were
   replaced by the light zigzag timeline. All of that section's styling now
   lives in history-timeline.css, which loads last on history.html — the
   old block was removed here rather than overridden so the two don't fight
   through !important. Scoped to .about-detail-history, so history.html was
   the only page affected. */
.about-detail-history .phase8-history-image{
  border:1px solid rgba(224,172,38,.42)!important;
  border-top:6px solid var(--aurum-gold)!important;
  border-radius:var(--modern-radius)!important;
  overflow:hidden!important;
}

@media(max-width:850px){
  .about-hero::after{height:7px!important}
  .about-detail-history .history .section-head{
    align-items:start!important;
  }
}

/* 2026-08-10: client wants the photo hero gone on every subpage except the
   6 primary-nav hub pages plus Leadership and History — those keep their
   hero as-is. The images have been pulled from clinical-research.html,
   implementation-research.html, health-systems.html, health-area.html,
   project.html and the 4 story pages, but the min-height/padding rules
   earlier in this file (lines 6, 8 and 194) still force a tall band on
   .page-hero/.area-hero/.project-hero/.work-hero regardless of whether a
   photo is present. This block, appended last so it wins on source order,
   collapses those hero sections down to a slim text-only header. */
.work-detail-clinical .page-hero.work-hero,
.work-detail-implementation .page-hero.work-hero,
.work-detail-systems .page-hero.work-hero,
.area-hero,
.project-hero{
  min-height:0!important;
  padding-top:clamp(96px,10vw,132px)!important;
  padding-bottom:clamp(40px,5vw,56px)!important;
}
/* The old split-layout copy box positioned/padded itself off the ancestor
   body class alone (.work-detail-clinical .work-hero-copy etc.), never
   checking whether .has-work-media was actually present on the hero — so
   removing that modifier class from the hero didn't stop this from firing.
   Reset it back to a normal static block here, both breakpoints, since the
   old rules it's competing with are also scoped to min-width:851px and
   max-width:850px. */
.work-detail-clinical .work-hero-copy,
.work-detail-implementation .work-hero-copy,
.work-detail-systems .work-hero-copy{
  position:static!important;
  z-index:auto!important;
  width:auto!important;
  max-width:760px!important;
  min-height:0!important;
  height:auto!important;
  display:block!important;
  padding:0!important;
}
@media(max-width:850px){
  .work-detail-clinical .page-hero.work-hero,
  .work-detail-implementation .page-hero.work-hero,
  .work-detail-systems .page-hero.work-hero,
  .area-hero,
  .project-hero{
    padding-top:92px!important;
    padding-bottom:36px!important;
  }
}

/* 2026-08-10b: removing the min-height/padding forcing above wasn't enough —
   these slim heroes still render huge because the h1/.lead inside them were
   inheriting the same 54-116px display type used on the six big hub-page
   heroes (and, for the clinical/implementation/systems trio, an even bigger
   66-104px override further up this file that only checked the ancestor
   body class, never .has-work-media). project.html is worse again since it
   stacks two .lead paragraphs plus a meta row plus action buttons under the
   headline. This block cuts the type scale down for a real text-only header
   and tightens the stacked spacing, without touching the hub pages,
   Leadership or History. */
.work-detail-clinical .work-hero-copy h1,
.work-detail-implementation .work-hero-copy h1,
.work-detail-systems .work-hero-copy h1,
.area-hero h1,
.project-hero h1{
  font-size:clamp(34px,4.2vw,54px)!important;
  line-height:.98!important;
  letter-spacing:-.03em!important;
  max-width:760px!important;
}
.work-detail-clinical .work-hero-copy .lead,
.work-detail-implementation .work-hero-copy .lead,
.work-detail-systems .work-hero-copy .lead,
.area-hero .lead,
.project-hero .lead{
  font-size:17px!important;
  line-height:1.5!important;
  max-width:640px!important;
  margin-top:14px!important;
}
.project-hero .lead + .lead{
  margin-top:8px!important;
}
.work-detail-clinical .work-hero-copy .eyebrow,
.work-detail-implementation .work-hero-copy .eyebrow,
.work-detail-systems .work-hero-copy .eyebrow,
.area-hero .eyebrow,
.project-hero .eyebrow{
  margin-bottom:14px!important;
}
.project-hero .project-meta{
  margin-top:18px!important;
}
.project-hero .project-actions{
  margin-top:18px!important;
}
@media(max-width:850px){
  .work-detail-clinical .work-hero-copy h1,
  .work-detail-implementation .work-hero-copy h1,
  .work-detail-systems .work-hero-copy h1,
  .area-hero h1,
  .project-hero h1{
    font-size:clamp(32px,8vw,44px)!important;
  }
}

/* 2026-08-10c: the TB health-area page has its own unscoped
   body[data-area="tb"] .area-hero-copy rule (lines ~381 and ~420) that,
   like the .work-hero-copy rules above, never checked .has-area-media —
   so it kept centering/padding the copy block as if the removed lab-sign
   photo were still there. Same leftover-trap pattern, same fix: reset it
   back to a normal static block so the type-scale rules above actually
   control the visible size. */
body[data-area="tb"] .area-hero-copy{
  position:static!important;
  z-index:auto!important;
  width:auto!important;
  min-height:0!important;
  justify-content:flex-start!important;
  padding:0!important;
}


/* =====================================================================
   2026-09-03 — LEADERSHIP CARD CONTENT ALIGNMENT
   Authoritative card geometry: equal content slots across every profile.
   ===================================================================== */
.leadership .profile--link {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.leadership .profile--link .profile-meta {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  align-items: stretch !important;
}

/* Reserve the same role/title zone on every card, including long Board roles. */
.leadership .profile--link .profile-role {
  display: block !important;
  min-height: 5.6em !important;
  margin: 0 !important;
}

/* Reserve an identical two-line name zone so names start/end consistently. */
.leadership .profile--link .profile-name {
  display: block !important;
  min-height: 2.1em !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Lock every CTA to the same bottom baseline regardless of text wrapping above. */
.leadership .profile--link .profile-action {
  display: block !important;
  margin-top: auto !important;
  padding-top: 14px !important;
}

@media (max-width: 850px) {
  /* Mobile remains compact but uses the same deterministic card structure. */
  .leadership .profile--link .profile-role {
    min-height: 0 !important;
  }
  .leadership .profile--link .profile-name {
    min-height: 0 !important;
  }
  .leadership .profile--link .profile-action {
    margin-top: 10px !important;
    padding-top: 0 !important;
  }
}


/* President Emeritus uses the same complete content stack as every other card. */
.leadership .leadership-group--first .profile--link .profile-name{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  color:var(--aurum-ink,#171514)!important;
  min-height:2.1em!important;
}
.leadership .leadership-group--first .profile--link .profile-meta{
  min-height:148px!important;
}
.leadership .leadership-group--first .profile--link .profile-action{
  margin-top:auto!important;
}

/* 2026-09-10 desktop recovery: the density pass made the leadership page too
   compressed at large widths. Keep it polished and readable instead. */
@media (min-width: 980px) {
  .leadership.leadership--people-first {
    padding-top: clamp(46px, 5vw, 72px) !important;
  }

  .leadership.leadership--people-first .profile-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(16px, 1.6vw, 24px) !important;
  }

  .leadership.leadership--people-first .portrait-placeholder {
    height: clamp(210px, 17vw, 246px) !important;
    background: #fff !important;
  }

  .leadership.leadership--people-first .profile-meta {
    min-height: 0 !important;
    padding: 16px 20px 18px !important;
  }

  .leadership.leadership--people-first .profile-role {
    min-height: 3.2em !important;
  }

  .leadership.leadership--people-first .profile-name {
    min-height: 0 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--aurum-ink, #171514) !important;
  }

  .leadership.leadership--people-first .profile-action {
    margin-top: 18px !important;
    padding-top: 0 !important;
  }
}

/* 2026-09-10 restore pass: do not let reserved metadata slots hide names or
   create long blank leadership cards. */
.leadership.leadership--people-first .profile--link {
  min-height: 0 !important;
}
.leadership.leadership--people-first .profile--link .profile-meta {
  flex: 0 0 auto !important;
}
.leadership.leadership--people-first .profile--link .profile-role,
.leadership.leadership--people-first .profile--link .profile-name {
  min-height: 0 !important;
}
.leadership.leadership--people-first .profile--link .profile-name {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: var(--aurum-ink, #171514) !important;
  font-size: clamp(19px, 1.45vw, 24px) !important;
  line-height: 1.04 !important;
}

/* ===== SOURCE: phase9.css ===== */
/* Phase 9: motion that explains hierarchy without hiding research content. */
.timeline{--timeline-progress:0;position:relative}
.timeline-progress{position:absolute;z-index:1;left:93px;top:0;width:2px;height:100%;background:var(--aurum-red);transform-origin:top;transform:scaleY(var(--timeline-progress));pointer-events:none;transition:transform .16s linear}
.timeline-item{will-change:opacity,transform}
.profile summary,.faq-list summary{transition:color .25s var(--ease-editorial)}
.profile summary:hover,.profile summary:focus-visible,.faq-list summary:hover,.faq-list summary:focus-visible{color:var(--aurum-red)}
.map-marker{cursor:pointer;outline:none}
.map-marker:focus-visible{outline:2px solid var(--aurum-gold);outline-offset:4px}
.place-button:focus-visible,.filter-chip:focus-visible,.button:focus-visible{outline:2px solid var(--aurum-gold);outline-offset:4px}
@media(max-width:850px){.timeline-progress{left:12px}}
@media(prefers-reduced-motion:reduce){.timeline-progress{transition:none!important}.profile summary,.faq-list summary{transition:none}}

/* ===== SOURCE: global-footer.css ===== */
/* ========================================================================
   Aurum global footer — 2026-08-09
   ======================================================================== */

.site-footer.aurum-footer,
body > footer.aurum-footer{
  position:relative;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:var(--aurum-cream,#F7F5EB)!important;
  color:var(--aurum-ink,#191613)!important;
  box-shadow:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}

.aurum-footer *{box-sizing:border-box}

/* 2026-08-16: top hairline glow + staggered blur/fade-up entrance —
   adapted from a shadcn "Footer" reference component the client liked, kept
   to Aurum's own white/red palette rather than the reference's dark theme.
   Content and layout are untouched; this is purely an entrance treatment
   layered on top. */
.aurum-footer-glow{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  width:33%;
  height:2px;
  border-radius:999px;
  background:var(--aurum-red,#CD2026);
  opacity:.4;
  filter:blur(6px);
  transform:translate(-50%,-50%);
  pointer-events:none;
}

.aurum-footer-reveal{
  opacity:1;
  transform:none;
  filter:none;
  transition:opacity .7s var(--ease-editorial,ease),transform .7s var(--ease-editorial,ease),filter .5s var(--ease-editorial,ease);
  transition-delay:var(--reveal-delay,0s);
}
.aurum-footer-enhanced .aurum-footer-reveal{
  opacity:0;
  transform:translateY(14px);
  filter:blur(4px);
}
.aurum-footer-enhanced .aurum-footer-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
}
@media(prefers-reduced-motion:reduce){
  .aurum-footer-reveal{transition:none;opacity:1;transform:none;filter:none}
}

.aurum-footer-summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:clamp(22px,3vw,32px) clamp(24px,6vw,96px);
  border-bottom:1px solid rgba(25,22,19,.1);
}
.aurum-footer-summary-brand{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.aurum-footer-summary .aurum-footer-logo{display:inline-flex;margin:0}
.aurum-footer-summary .aurum-footer-logo img{
  width:148px!important;
  height:auto!important;
  object-fit:contain!important;
}
.aurum-footer-summary-statement{
  margin:0;
  padding-left:18px;
  border-left:1px solid rgba(25,22,19,.14);
  color:rgba(25,22,19,.88);
  font-size:clamp(23px,2vw,30px)!important;
  font-weight:700;
  line-height:1.15;
  letter-spacing:0!important;
  text-transform:none!important;
}
.aurum-footer-summary-right{display:flex;align-items:center;gap:18px;flex-wrap:wrap}

.aurum-footer-toggle{
  display:none;
  align-items:center;
  gap:9px;
  padding:11px 20px 11px 22px;
  border:1px solid rgba(25,22,19,.16);
  border-radius:999px;
  background:#fff!important;
  color:var(--aurum-red,#CD2026)!important;
  font-size:12px!important;
  font-weight:700;
  letter-spacing:.03em!important;
  text-transform:none!important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}

.aurum-footer-enhanced .aurum-footer-toggle{display:inline-flex}

.aurum-footer-toggle:hover{background:var(--aurum-red,#CD2026);border-color:var(--aurum-red,#CD2026);color:#fff!important;transform:translateY(-1px)}
.aurum-footer-toggle-icon{width:13px;height:13px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--ease-editorial,ease)}
.aurum-footer-toggle[aria-expanded="true"] .aurum-footer-toggle-icon{transform:rotate(180deg)}

.aurum-footer-more{
  max-height:none;
  overflow:visible;
  visibility:visible;
}
.aurum-footer-enhanced .aurum-footer-more{
  max-height:0;
  overflow:hidden;
  visibility:hidden;
  transition:max-height .45s cubic-bezier(.16,1,.3,1),visibility 0s linear .45s;
}
.aurum-footer-enhanced .aurum-footer-more.is-open{
  max-height:2400px;
  visibility:visible;
  transition:max-height .55s cubic-bezier(.16,1,.3,1),visibility 0s linear 0s;
}

.aurum-footer-donate{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:clamp(26px,3vw,38px) clamp(24px,6vw,96px);
  background:var(--aurum-red,#CD2026);
  border-bottom:4px solid var(--aurum-gold,#E0AC26);
}
.aurum-footer-donate-copy{max-width:560px}
.aurum-footer-donate-copy p.aurum-footer-eyebrow{
  margin:0 0 6px;
  color:var(--aurum-gold,#E0AC26)!important;
  font-size:11px!important;
  font-weight:700;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}
.aurum-footer-donate-copy h2{
  margin:0 0 6px;
  color:#fff!important;
  font-size:clamp(20px,2.4vw,28px)!important;
  font-weight:700;
  line-height:1.15;
  letter-spacing:0!important;
  text-transform:none!important;
}
.aurum-footer-donate-copy p.aurum-footer-donate-lead{
  margin:0;
  color:rgba(255,255,255,.86)!important;
  font-size:14px!important;
  line-height:1.5;
  letter-spacing:0!important;
  text-transform:none!important;
}
/* 2026-08-16: was its own bespoke white/red hover-lift style, entirely
   separate from the sitewide .button hover-fill effect (see button-hover.js
   + .button/.button-invert in modern-refresh.css) — that's why it didn't
   "behave like the other buttons". Now uses class="button button-invert"
   in the markup below. Needs flex-shrink so it doesn't get squeezed by the
   copy column, and align-self:center to override .button's sitewide
   align-self:flex-start (added elsewhere to stop buttons stretching in
   flex containers) — without this override it pins to the TOP of the row
   instead of centering against the taller two-line copy block next to it,
   which is exactly what read as "stuck in the corner". */
.aurum-footer-donate-button.button{flex-shrink:0;align-self:center}

.aurum-footer-main{
  display:grid;
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:clamp(30px,3.2vw,56px);
  padding:clamp(42px,5vw,64px) clamp(24px,6vw,96px) clamp(42px,5vw,72px);
}

.aurum-footer-heading{
  margin:0 0 20px;
  color:var(--aurum-red,#CD2026);
  font-size:11px!important;
  font-weight:700;
  line-height:1;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}

.aurum-footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-width:0}
.aurum-footer-column>a,
.aurum-footer-contact address,
.aurum-footer-contact address span{
  font-size:13.5px!important;
  line-height:1.45;
  letter-spacing:0!important;
  text-transform:none!important;
}

.aurum-footer-column>a{
  position:relative;
  color:var(--aurum-ink,#191613)!important;
  transition:color .2s ease,transform .2s ease;
}
.aurum-footer-column>a:hover{color:var(--aurum-red,#CD2026)!important;transform:translateX(3px)}
.aurum-footer-compliance>a{padding-bottom:2px}
.aurum-footer-compliance>a span{color:var(--aurum-gold,#E0AC26)}

.aurum-footer-contact address{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:0 0 7px;
  color:var(--aurum-ink,#191613)!important;
  font-style:normal;
  font-family:var(--font-primary,Arial,sans-serif)!important;
  font-weight:500;
}

.aurum-footer-contact address span,
.aurum-footer-contact>a:not(.button){
  color:var(--aurum-ink,#191613)!important;
  font-family:var(--font-primary,Arial,sans-serif)!important;
  font-weight:500;
}

.aurum-footer-contact-link.button{
  margin-top:12px;
}

.aurum-bbee-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:15px;
  padding:8px 12px;
  border:1px solid rgba(25,22,19,.12);
  border-left:3px solid var(--aurum-gold,#E0AC26);
  border-radius:7px;
  background:#fff;
}
.aurum-bbee-badge span{
  color:rgba(25,22,19,.56);
  font-size:9px!important;
  font-weight:700;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.aurum-bbee-badge strong{color:var(--aurum-red,#CD2026);font-size:13px}

.aurum-footer-social{display:flex;gap:12px;align-items:center}
.aurum-footer-social a{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:0;
  border-radius:50%;
  background:var(--brand-color,var(--aurum-ink));
  color:#fff!important;
  box-shadow:0 6px 16px rgba(25,22,19,.14);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.aurum-footer-social a:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 22px rgba(25,22,19,.22);
  filter:brightness(1.08);
}
.aurum-footer-social svg{
  width:22px;
  height:22px;
  fill:currentColor;
  stroke:none;
}
.aurum-footer-social svg.is-outline{
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.aurum-footer-bottom{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;
  padding:16px clamp(24px,6vw,96px) 18px;
  border-top:1px solid rgba(25,22,19,.11);
  background:#fff;
}
.aurum-footer-bottom p,
.aurum-footer-bottom a{
  margin:0;
  color:rgba(25,22,19,.62)!important;
  font-size:11px!important;
  line-height:1.35;
  letter-spacing:.035em!important;
  text-transform:none!important;
}
.aurum-footer-bottom p:nth-child(2){justify-self:center}
.aurum-footer-bottom a{justify-self:end;color:var(--aurum-red,#CD2026)!important;font-weight:700}

@media(max-width:1320px){
  .aurum-footer-main{grid-template-columns:repeat(4,minmax(140px,1fr));gap:clamp(28px,3vw,48px)}
}

@media(max-width:1050px){
  .aurum-footer-main{grid-template-columns:repeat(2,1fr);gap:44px 60px}
  .aurum-footer-summary-statement{display:block}
  .aurum-footer-donate{justify-content:flex-start}
}

@media(max-width:650px){
  .aurum-footer-summary{padding:20px 22px}
  .aurum-footer-summary-right{width:100%;justify-content:space-between}
  .aurum-footer-main{grid-template-columns:1fr;gap:34px;padding:38px 22px}
  .aurum-footer-column{padding-top:24px;border-top:1px solid rgba(25,22,19,.1)}
  .aurum-footer-bottom{grid-template-columns:1fr;gap:8px;padding:16px 22px 20px}
  .aurum-footer-bottom p:nth-child(2),.aurum-footer-bottom a{justify-self:start}
  .aurum-footer-donate{padding:24px 22px;text-align:left}
  .aurum-footer-donate-button{width:100%;justify-content:center}
}

@media(prefers-reduced-motion:reduce){
  .aurum-footer-column>a,.aurum-footer-social a,.aurum-footer-toggle,.aurum-footer-toggle-icon,.aurum-footer-more{transition:none}
}


/* Homepage/footer revisions — 2026-08-24. */
.aurum-footer-toggle{display:none!important}
.aurum-footer-enhanced .aurum-footer-more,
.aurum-footer-more{
  max-height:none!important;
  overflow:visible!important;
  visibility:visible!important;
  transition:none!important;
}
@media(max-width:650px){
  .aurum-footer-summary-brand{align-items:flex-start}
  .aurum-footer-summary-statement{
    width:100%;
    padding-left:0;
    padding-top:12px;
    border-left:0;
    border-top:1px solid rgba(25,22,19,.14);
    font-size:22px!important;
    line-height:1.2;
  }
}

/* Footer brand statement prominence — 2026-08-24. */
.aurum-footer-summary-brand{
  flex:1 1 auto;
  flex-wrap:nowrap;
  gap:24px;
  min-width:0;
}
.aurum-footer-summary .aurum-footer-logo img{
  width:190px!important;
  max-width:none!important;
}
.aurum-footer-summary-statement{
  flex:1 1 auto;
  max-width:680px;
  font-size:clamp(28px,2.25vw,36px)!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
@media(max-width:1050px){
  .aurum-footer-summary-brand{flex-wrap:wrap}
  .aurum-footer-summary-statement{max-width:620px}
}
@media(max-width:650px){
  .aurum-footer-summary-brand{
    width:100%;
    gap:16px;
    flex-wrap:wrap;
  }
  .aurum-footer-summary .aurum-footer-logo img{
    width:158px!important;
  }
  .aurum-footer-summary-statement{
    width:100%;
    max-width:none;
    padding-top:16px;
    font-size:clamp(24px,7vw,30px)!important;
    line-height:1.08!important;
  }
}

/* ===== SOURCE: revision-20260824.css ===== */
/* Aurum client revision pass — 24 August 2026. Scoped overrides only. */

/* Global: remove legacy decorative section numbering from header-like treatments. */
.work-hero::after{display:none!important}
.work-image-operations::before{content:"SCIENTIFIC INFRASTRUCTURE"!important}
.work-image-human::before{content:"IMPLEMENTATION RESEARCH"!important}
.work-image-access::before{content:"HEALTH SYSTEMS"!important}
.work-community-context::after{content:"COMMUNITY CONTEXT"!important}
.nav-drop-col-heading--static{display:block;color:var(--aurum-ink);font:inherit;font-weight:800;cursor:default;text-decoration:none}

/* WHO WE ARE */
.about-purpose--mission-vision-only{padding-top:clamp(38px,5vw,72px)!important}
.about-purpose--mission-vision-only .purpose-grid{margin-top:0}
.about-gateways--clean .section-head{grid-template-columns:1fr!important;margin-bottom:clamp(28px,4vw,46px)!important}
.about-gateways--clean .section-head h2{max-width:none!important}
.about-gateways--clean .gateway-card>span{font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--aurum-red)}

/* HISTORY */
.about-detail-history .history>.section-head{grid-template-columns:1fr!important}
.htl-media--image-placeholder{min-height:220px;background:linear-gradient(135deg,rgba(224,172,38,.12),rgba(7,113,135,.14))!important;border:1px dashed rgba(255,255,255,.28)}
.htl-media--image-placeholder::before,.htl-media--image-placeholder::after{content:none!important}

/* LEADERSHIP */
.leadership--people-first{padding-top:clamp(42px,5vw,72px)!important}
.leadership--people-first .leadership-group--first{margin-top:0!important}
.profile--link{display:block;text-decoration:none!important;color:var(--aurum-ink)!important;transition:transform .28s ease,box-shadow .28s ease}
.profile--link:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(25,22,19,.17)}
.profile--link .portrait-placeholder{height:clamp(190px,18vw,250px)}
.profile--link .profile-meta{min-height:128px;display:flex;flex-direction:column}
.profile--link .profile-action{margin-top:auto;padding-top:18px}
.leadership-profile-page{background:#fff;padding:clamp(84px,10vw,140px) clamp(22px,9vw,150px)}
.leadership-profile-article{max-width:1080px;margin:0 auto}
.leadership-profile-header{border-bottom:1px solid var(--aurum-line);padding-bottom:clamp(26px,4vw,46px);margin-bottom:clamp(30px,4vw,52px)}
.leadership-profile-header .eyebrow{color:var(--aurum-red)!important}
.leadership-profile-header h1{font-size:clamp(48px,7vw,92px);line-height:.9;letter-spacing:-.055em;margin:14px 0 0}
.leadership-profile-copy{font-size:clamp(16px,1.35vw,20px);line-height:1.72;color:#403d39}
.leadership-profile-copy::after{content:"";display:block;clear:both}
.leadership-profile-copy p{margin:0 0 1.2em}
.leadership-profile-portrait{float:left;width:min(34vw,330px);margin:0 clamp(26px,4vw,52px) 24px 0;border-radius:14px;overflow:hidden;background:var(--aurum-smoke)}
.leadership-profile-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}

/* Shared placeholders: deliberately content-free until approved imagery arrives. */
.content-image-placeholder,.project-image-placeholder,.latest-story-image-placeholder{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(224,172,38,.12),rgba(7,113,135,.13));border:1px dashed rgba(23,21,20,.18)}
.content-image-placeholder::after,.project-image-placeholder::after,.latest-story-image-placeholder::after{content:"";position:absolute;inset:18%;border:1px solid rgba(23,21,20,.12);border-radius:50%;animation:aurumPlaceholderPulse 3.6s ease-in-out infinite}
@keyframes aurumPlaceholderPulse{0%,100%{transform:scale(.9);opacity:.28}50%{transform:scale(1.05);opacity:.65}}

/* CLINICAL RESEARCH — cleaner teal information architecture. */
.clinical-research-panel{padding-top:clamp(58px,7vw,92px)!important}
.clinical-overview-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:clamp(22px,4vw,56px);align-items:stretch;margin-bottom:28px}
.clinical-copy-block,.clinical-network-card,.clinical-infrastructure-head{padding:clamp(26px,3vw,42px);border:1px solid rgba(255,255,255,.28);border-radius:18px;background:rgba(255,255,255,.08)}
.clinical-copy-block h2,.clinical-network-card h2,.clinical-infrastructure-head h2{font-size:clamp(42px,5vw,72px)!important;line-height:.92;margin:0 0 24px;letter-spacing:-.055em}
.clinical-copy-block .lead,.clinical-network-card .lead,.clinical-infrastructure-head .lead{font-size:clamp(15px,1.2vw,18px)!important;line-height:1.62!important;margin:0!important}
.clinical-partnership-block{display:flex;flex-direction:column;justify-content:space-between}
.clinical-partnership-block .discipline-statement{font-size:clamp(34px,4vw,58px)!important;line-height:.95!important}
.clinical-partnership-block .discipline-note{border:0!important;padding:28px 0 0!important;margin:0!important;align-self:auto!important}
.clinical-network-card{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:32px;align-items:start;margin-bottom:28px}
.clinical-infrastructure-head{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:32px;align-items:start;margin-bottom:20px}
.infra-grid--with-images{border:0!important;gap:12px!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}
.infra-grid--with-images .infra-card{display:flex;flex-direction:column;min-height:390px!important;padding:14px 14px 20px!important;border:1px solid rgba(255,255,255,.3)!important;border-radius:14px;background:rgba(255,255,255,.07)}
.infra-grid--with-images .content-image-placeholder{height:128px;border-color:rgba(255,255,255,.26);border-radius:9px;margin-bottom:18px}
.infra-grid--with-images .infra-card b{margin-bottom:16px}
.infra-grid--with-images .infra-card h3{font-size:clamp(20px,1.9vw,29px)!important;line-height:1!important;margin:0 0 14px!important}
.infra-grid--with-images .infra-card p{margin-top:auto!important}
.credential-grid--animated{border:0!important;gap:12px!important;margin-top:42px!important}
.credential-grid--animated .credential-card{position:relative;min-height:230px!important;padding:24px!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:14px;background:rgba(255,255,255,.08);overflow:hidden;justify-content:flex-end!important}
.credential-grid--animated .credential-card b{font-size:clamp(28px,3vw,44px)!important}
.credential-grid--animated .credential-card--text b{font-size:clamp(20px,2vw,29px)!important;line-height:1.05!important}
.revision-icon{width:58px;height:58px;position:absolute;top:22px;right:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:var(--aurum-gold);opacity:.96;filter:drop-shadow(0 4px 12px rgba(0,0,0,.12));animation:aurumIconFloat 4.2s ease-in-out infinite}
.revision-icon path,.revision-icon circle,.revision-icon rect{stroke-dasharray:180;stroke-dashoffset:180;animation:aurumIconDraw 2.2s ease forwards}
@keyframes aurumIconDraw{to{stroke-dashoffset:0}}
@keyframes aurumIconFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(1.5deg)}}

/* Shared latest-story module. */
.latest-stories{background:#fff;padding:clamp(58px,7vw,96px) clamp(22px,7vw,116px)!important}
.latest-stories-head{margin-bottom:clamp(28px,4vw,46px)}
.latest-stories-head h2{font-size:clamp(38px,4.5vw,66px);line-height:.95;letter-spacing:-.05em;margin:0;max-width:920px}
.latest-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.latest-story-card{display:flex;flex-direction:column;min-height:340px;border:1px solid rgba(23,21,20,.1);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 14px 32px rgba(23,21,20,.06)}
.latest-story-card figure,.latest-story-image-placeholder{height:190px;margin:0}
.latest-story-card figure img{display:block;width:100%;height:100%;object-fit:cover}
.latest-story-card-copy{display:flex;flex-direction:column;flex:1;padding:22px}
.latest-story-card-copy h3{font-size:clamp(22px,2vw,30px);line-height:1.04;letter-spacing:-.035em;margin:0 0 24px}
.latest-story-card-copy a,.latest-story-link{margin-top:auto;display:inline-flex;align-items:center;color:var(--aurum-red);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
.latest-story-link--disabled{opacity:.48}
.latest-story-card--placeholder .latest-story-card-copy:empty{display:none}

/* IMPLEMENTATION RESEARCH */
.bammisho-panel{background:#ececeb!important;color:var(--aurum-ink)!important;padding:clamp(60px,8vw,108px) clamp(22px,9vw,150px)!important}
.bammisho-panel .section-head{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:42px;align-items:start;margin:0 0 30px!important}
.bammisho-panel .section-head h2{font-size:clamp(48px,6vw,86px)!important;color:var(--aurum-ink)!important;margin:0}
.bammisho-panel .section-head .lead{color:#4d4944!important;opacity:1!important;margin:0!important}
.bammisho-copy{max-width:820px;margin-left:auto;padding-top:28px;border-top:1px solid rgba(23,21,20,.16);font-size:17px;line-height:1.65}
.bammisho-copy .button{margin-top:20px}

/* HEALTH AREA / PROJECT-LANDING STRUCTURE */
.area-hero--revised .eyebrow{letter-spacing:.14em!important}
.area-work-section{background:var(--aurum-teal);color:#fff}
.area-work-section .section-head--single,.area-focus-icons .section-head--single,.market-access-work .section-head--single,.market-expertise .section-head--single{display:block!important;margin-bottom:34px!important}
.area-work-section .section-head--single h2,.area-focus-icons .section-head--single h2,.market-access-work .section-head--single h2,.market-expertise .section-head--single h2{font-size:clamp(42px,5vw,72px)!important;margin:0!important;max-width:none!important}
.feature-grid--aligned{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin-top:0!important}
.feature-card--revised{display:flex!important;flex-direction:column!important;min-height:430px!important;padding:14px 18px 22px!important;background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.3)!important;border-radius:14px!important}
.feature-card--revised .project-image-placeholder{height:150px;border-color:rgba(255,255,255,.28);border-radius:9px;margin-bottom:22px}
.feature-card--revised h3{font-size:clamp(27px,2.4vw,38px)!important;line-height:.95!important;margin:0 0 14px!important}
.feature-card--revised p{font-size:14px!important;line-height:1.55!important;margin:0 0 22px!important}
.feature-card--revised .feature-card-link{margin-top:auto!important;padding-top:18px!important;color:#fff!important;border-top:1px solid rgba(255,255,255,.22);font-size:11px!important;font-weight:700!important;letter-spacing:.1em!important;text-decoration:none!important}
.feature-card-link--disabled{opacity:.45}
.feature-card--placeholder{min-height:300px!important}
.area-focus-icons{background:#f7f7f5}
.focus-list--icons{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin:0!important}
.focus-card--icon{position:relative!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-height:260px!important;padding:28px!important;border:1px solid rgba(23,21,20,.1)!important;border-top:4px solid var(--aurum-red)!important;border-left:1px solid rgba(23,21,20,.1)!important;background:#fff!important;box-shadow:0 12px 28px rgba(23,21,20,.06)!important}
.focus-card--icon .revision-icon{position:static;width:68px;height:68px;color:var(--aurum-red);margin-bottom:38px}
.focus-card--icon:nth-child(3n+2) .revision-icon{color:var(--aurum-teal)}
.focus-card--icon:nth-child(3n+3) .revision-icon{color:var(--aurum-gold)}
.focus-card--icon h3{font-size:clamp(25px,2.3vw,36px)!important;line-height:1!important;margin:0!important}
.focus-card--icon p{grid-column:auto!important;color:#57534e!important;margin:16px 0 0!important;font-size:14px!important;line-height:1.55!important}

/* MARKET ACCESS */
.market-access-intro,.market-access-work,.market-expertise,.market-access-matters{padding:clamp(58px,7vw,96px) clamp(22px,7vw,116px)!important}
.market-access-opening{max-width:900px;font-size:clamp(21px,2.1vw,32px);line-height:1.35;letter-spacing:-.025em;margin-bottom:58px}
.market-access-what-grid,.market-expertise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.market-access-what-grid article,.market-expertise-grid article{padding:28px;border-top:4px solid var(--aurum-red);background:#fff;box-shadow:0 12px 30px rgba(23,21,20,.06);border-radius:12px}
.market-access-what-grid article:nth-child(2),.market-expertise-grid article:nth-child(2){border-top-color:var(--aurum-teal)}
.market-access-what-grid article:nth-child(3),.market-expertise-grid article:nth-child(3){border-top-color:var(--aurum-gold)}
.market-access-what-grid article:nth-child(4),.market-expertise-grid article:nth-child(4){border-top-color:var(--aurum-orange)}
.market-access-what-grid h3,.market-expertise-grid h3{font-size:clamp(23px,2vw,32px);line-height:1;margin:0 0 18px}
.market-access-what-grid p,.market-expertise-grid p{font-size:14px;line-height:1.55;margin:0;color:#5a5651}
.market-access-work{background:var(--aurum-teal);color:#fff}
.market-access-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.market-access-project-card{display:flex;flex-direction:column;min-height:450px;padding:14px 18px 22px;border:1px solid rgba(255,255,255,.3);border-radius:14px;background:rgba(255,255,255,.1)}
.market-access-project-card .project-image-placeholder{height:130px;border-color:rgba(255,255,255,.28);border-radius:8px;margin-bottom:20px}
.market-access-project-card h3{font-size:clamp(25px,2.2vw,34px);line-height:1;margin:0 0 10px}
.market-access-project-card h4{font-size:17px;line-height:1.3;margin:0 0 16px;color:var(--aurum-gold)}
.market-access-project-card p{font-size:14px;line-height:1.55;margin:0 0 24px;opacity:.88}
.market-access-project-card a,.market-card-link--disabled{margin-top:auto;color:#fff;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
.market-card-link--disabled{opacity:.45}
.market-access-matters{background:#f3f0e7}
.market-matters-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,78px)}
.market-matters-grid h2{font-size:clamp(36px,4vw,58px);line-height:.98;margin:0 0 24px}
.market-matters-grid h3{font-size:22px;line-height:1.2;margin:28px 0 12px}
.market-matters-grid p{font-size:16px;line-height:1.65;margin:0 0 18px}

/* Climate audit content. */
.climate-content{background:#fff}
.climate-copy{max-width:980px;margin:auto;font-size:17px;line-height:1.65}
.climate-copy>h2{font-size:clamp(38px,4vw,60px);margin:60px 0 12px}
.climate-copy>h3{font-size:clamp(22px,2.2vw,32px);line-height:1.2;margin:0 0 24px}
.climate-focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
.climate-focus-grid article{padding:24px;background:#f3f0e7;border-radius:12px}
.climate-focus-grid h3{margin:0 0 12px}

/* Responsive */
@media(max-width:1100px){
  .infra-grid--with-images{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .feature-grid--aligned,.market-access-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .market-access-what-grid,.market-expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
  .leadership-profile-page{padding-left:20px;padding-right:20px}
  .leadership-profile-portrait{float:none;width:min(78vw,320px);margin:0 0 30px}
  .clinical-overview-grid,.clinical-network-card,.clinical-infrastructure-head{grid-template-columns:1fr!important}
  .clinical-overview-grid{gap:14px}
  .infra-grid--with-images{grid-template-columns:1fr!important}
  .credential-grid--animated{grid-template-columns:1fr 1fr!important}
  .latest-story-grid,.feature-grid--aligned,.focus-list--icons,.market-access-project-grid,.climate-focus-grid{grid-template-columns:1fr!important}
  .market-access-what-grid,.market-expertise-grid,.market-matters-grid{grid-template-columns:1fr}
  .bammisho-panel .section-head{grid-template-columns:1fr;gap:18px}
  .bammisho-copy{margin-left:0}
  .feature-card--revised{min-height:390px!important}
}
@media(max-width:540px){
  .credential-grid--animated{grid-template-columns:1fr!important}
  .latest-stories{padding-left:18px!important;padding-right:18px!important}
  .latest-story-card figure,.latest-story-image-placeholder{height:170px}
  .leadership-profile-header h1{font-size:clamp(42px,13vw,62px)}
  .leadership-profile-copy{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  .revision-icon,.revision-icon path,.revision-icon circle,.revision-icon rect,.content-image-placeholder::after,.project-image-placeholder::after,.latest-story-image-placeholder::after{animation:none!important;stroke-dashoffset:0!important}
}
/* Legacy What We Do index: keep the two non-clickable grouping concepts separate. */
.health-index .health-index-subgroup{margin-top:clamp(54px,7vw,90px)}


/* Audit-priority finishing pass — batch 2. */
.leadership-section-head--moved{margin:clamp(46px,6vw,82px) 0 clamp(18px,3vw,34px)!important;grid-template-columns:1fr!important}
.leadership-section-head--moved h2{color:#fff!important;font-size:clamp(40px,5vw,72px)!important;line-height:.92!important;margin:0!important}

/* Image-ready hero scaffolds requested in the audit. No unapproved imagery is inserted. */
.area-hero--image-ready{padding:0!important;overflow:hidden}
.area-hero--image-ready .area-hero-layout{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr)!important;min-height:clamp(500px,58vh,660px)}
.area-hero--image-ready .area-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(64px,7vw,106px) clamp(32px,7vw,112px)!important}
.area-hero--image-ready .area-hero-media{margin:0!important;min-height:100%;border:0!important;border-left:1px solid rgba(255,255,255,.16)!important;border-radius:0!important;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(224,172,38,.2))!important}
.area-hero--image-ready .area-hero-media::after{border-color:rgba(255,255,255,.22)!important}

/* BAMMISHO: reserved logo slot from the audit, ready for the approved asset. */
.bammisho-logo-placeholder{width:min(320px,42vw);height:92px;margin:0 0 clamp(30px,4vw,48px) auto;border-style:dashed;background:rgba(255,255,255,.46)}

/* HIV audit asks for project imagery as the card background rather than a separate top strip. */
.feature-card--image-background{position:relative;isolation:isolate;overflow:hidden;padding:clamp(28px,3vw,40px)!important;min-height:430px!important;background:var(--aurum-teal)!important}
.feature-card--image-background>.project-image-placeholder{position:absolute!important;inset:0!important;z-index:-2!important;width:auto!important;height:auto!important;margin:0!important;border:0!important;border-radius:0!important;background:linear-gradient(145deg,rgba(7,113,135,.72),rgba(23,21,20,.58))!important}
.feature-card--image-background>.project-image-placeholder::after{inset:28%!important;border-color:rgba(255,255,255,.2)!important}
.feature-card--image-background::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,20,22,.12) 0%,rgba(10,20,22,.82) 82%)}
.feature-card--image-background h3{margin-top:auto!important;color:#fff!important}
.feature-card--image-background p{color:#fff!important;opacity:.9!important}

/* Audit asks for an additional supporting visual on AMR and QI; image arrives in the image pass. */
.focus-supporting-image{height:clamp(210px,25vw,340px);margin:0 0 24px;border-radius:14px}

/* Coming-soon story cards are intentionally explicit rather than empty boxes. */
.latest-story-card--placeholder .latest-story-card-copy{display:flex!important}
.latest-story-card--placeholder .latest-story-card-copy h3{color:#77716a}

/* Icons need to read as animated editorial devices, not tiny decorative glyphs. */
.focus-card--icon .revision-icon{width:78px;height:78px;padding:12px;border-radius:50%;background:rgba(205,32,38,.07);box-shadow:0 0 0 0 rgba(205,32,38,.18);animation:aurumIconFloat 3.3s ease-in-out infinite,aurumIconPulse 2.8s ease-in-out infinite}
.focus-card--icon:nth-child(3n+2) .revision-icon{background:rgba(7,113,135,.08);box-shadow:0 0 0 0 rgba(7,113,135,.18)}
.focus-card--icon:nth-child(3n+3) .revision-icon{background:rgba(224,172,38,.12);box-shadow:0 0 0 0 rgba(224,172,38,.22)}
@keyframes aurumIconPulse{0%,100%{box-shadow:0 0 0 0 currentColor}50%{box-shadow:0 0 0 10px transparent}}
.pathway-card--static{cursor:default}
.pathway-card--static:hover{transform:none!important}

@media(max-width:850px){
  .area-hero--image-ready .area-hero-layout{grid-template-columns:1fr!important;min-height:0}
  .area-hero--image-ready .area-hero-copy{padding:56px 22px 38px!important}
  .area-hero--image-ready .area-hero-media{min-height:240px;border-left:0!important;border-top:1px solid rgba(255,255,255,.16)!important}
  .bammisho-logo-placeholder{width:min(280px,74vw);margin-left:0}
  .leadership-section-head--moved{margin-top:42px!important}
}


/* 2026-08-29 leadership/search/nav/mobile correction pass. */
.leadership-search-anchor{margin:0 0 clamp(34px,4vw,54px)}
.leadership-search-anchor .profile-search{max-width:none;margin:0!important}
.leadership-search-anchor .profile-search label{display:block}
.leadership--people-first .leadership-section-head--moved{display:none!important}

/* What We Do: four intentional columns. Prevent the first two headings from
   colliding and keep parent headings visually separate from their children. */
.nav-drop--work .nav-drop-menu--mega{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  width:min(1180px,calc(100vw - 48px))!important;
  max-width:min(1180px,calc(100vw - 48px))!important;
  padding:24px 26px 26px!important;
  box-sizing:border-box!important;
}
.nav-drop--work .nav-drop-col{
  min-width:0!important;
  padding:0 24px!important;
  border-left:1px solid rgba(20,20,20,.10)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
}
.nav-drop--work .nav-drop-col:first-child{border-left:0!important;padding-left:0!important}
.nav-drop--work .nav-drop-col:last-child{padding-right:0!important}
.nav-drop--work .nav-drop-col-heading{
  display:block!important;
  font-size:16px!important;
  line-height:1.08!important;
  font-weight:800!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  margin:0 0 16px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid rgba(20,20,20,.12)!important;
}
.nav-drop--work .nav-drop-col>a:not(.nav-drop-col-heading){
  display:block!important;
  padding:8px 0!important;
  line-height:1.25!important;
  white-space:normal!important;
}

@media (max-width: 850px){
  /* Every leadership portrait is visually centered on narrow screens. */
  .leadership-profile-portrait{float:none!important;width:min(82vw,330px)!important;margin:0 auto 30px!important}
  .leadership-profile-portrait img{object-position:center top!important}
  .leadership .portrait-placeholder{display:flex!important;justify-content:center!important;align-items:flex-start!important}
  .leadership .portrait-placeholder img{display:block!important;margin-left:auto!important;margin-right:auto!important;object-position:center top!important}
  .leadership-search-anchor{margin-bottom:34px!important}
  .leadership-search-anchor .profile-search{width:100%!important}
}


/* 2026-08-29 polish: keep clinical metric cards visually centred and stop the
   base .credential-card span rule from shrinking animated counter values. */
.credential-grid--animated .credential-card{
  display:grid!important;
  grid-template-rows:64px minmax(56px,auto) auto;
  align-content:center!important;
  justify-items:center!important;
  justify-content:stretch!important;
  gap:14px!important;
  padding:28px 22px!important;
  text-align:center!important;
}
.credential-grid--animated .credential-card .revision-icon{
  position:static!important;
  width:52px!important;
  height:52px!important;
  margin:0 auto!important;
  align-self:center!important;
}
.credential-grid--animated .credential-card b{
  display:flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:.08em!important;
  width:100%!important;
  margin:0!important;
  font-size:clamp(32px,3vw,46px)!important;
  line-height:1!important;
  text-align:center!important;
}
.credential-grid--animated .credential-card b > span{
  font:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  opacity:1!important;
}
.credential-grid--animated .credential-card > span:not([data-aurum-count]){
  display:block!important;
  width:100%!important;
  max-width:230px!important;
  margin:0 auto!important;
  font-size:13px!important;
  line-height:1.42!important;
  text-align:center!important;
  opacity:.9!important;
}
.credential-grid--animated .credential-card--text b{
  align-self:center!important;
  max-width:230px!important;
  font-size:clamp(23px,2vw,31px)!important;
  line-height:1.05!important;
}

/* Latest-story CTAs use the same red button interaction as the homepage hero. */
.latest-story-card-copy .latest-story-button{
  margin-top:auto!important;
  align-self:flex-start!important;
  color:#fff!important;
  border:0!important;
  padding:14px 18px!important;
  font-size:10px!important;
  letter-spacing:.1em!important;
  text-decoration:none!important;
  border-radius:3px!important;
}
.latest-story-card-copy .latest-story-button span{
  display:inline-flex!important;
  align-items:center!important;
  color:#fff!important;
  margin-left:0!important;
}
.latest-story-card-copy .latest-story-button svg{width:15px;height:15px}

@media(max-width:850px){
  .credential-grid--animated .credential-card{
    min-height:220px!important;
    padding:26px 20px!important;
  }
}

/* 2026-08-31 Leadership portrait desktop/base contract. */
.leadership .profile--link .portrait-placeholder{
  overflow:hidden;
  background:#fff;
}
.leadership .profile--link .portrait-placeholder img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}

/* 2026-09-13 Leadership mobile cleanup.
   Generic card sizing/alignment now lives only in leadership-cards-20260912.css.
   Keep this file responsible solely for the per-person focal positions and
   individual profile-page portrait crops, preventing older mobile card rules
   from competing with the final Leadership card contract. */
@media (max-width:850px){
  /* Individually tuned card crops: head fully visible, frame ends just below shoulders. */
  .profile--prof-gavin-churchyard .portrait-placeholder img{object-position:center 14%!important}
  .profile--dr-jerry-gule .portrait-placeholder img{object-position:center 7%!important}
  .profile--prof-dave-clark .portrait-placeholder img{object-position:center 8%!important}
  .profile--ms-paula-fray .portrait-placeholder img{object-position:center 8%!important}
  .profile--prof-pontiano-kaleebu .portrait-placeholder img{object-position:center 9%!important}
  .profile--advocate-louisa-zondo .portrait-placeholder img{object-position:center 6%!important}
  .profile--mr-arshad-hassim .portrait-placeholder img{object-position:center 7%!important}
  .profile--ms-sarah-luthuli .portrait-placeholder img{object-position:center 7%!important}
  .profile--dr-angelica-salomao .portrait-placeholder img{object-position:center 7%!important}
  .profile--mr-alex-darko .portrait-placeholder img{object-position:center 8%!important}
  .profile--mr-gary-tamblyn .portrait-placeholder img{object-position:center 7%!important}
  .profile--mr-yaw-peprah .portrait-placeholder img{object-position:center 7%!important}
  .profile--prof-vinodh-edward .portrait-placeholder img{object-position:center 11%!important}
  .profile--prof-salome-charalambous .portrait-placeholder img{object-position:center 7%!important}
  .profile--prof-violet-chihota .portrait-placeholder img{object-position:center 8%!important}
  .profile--mr-michael-mcmillan .portrait-placeholder img{object-position:center 7%!important}

  /* Individual profile pages retain the approved shoulder-level crop. */
  .leadership-profile-portrait{
    width:100%!important;
    max-width:420px!important;
    height:auto!important;
    aspect-ratio:16 / 10!important;
    overflow:hidden!important;
    margin:0 auto 28px!important;
    background:#fff!important;
  }
  .leadership-profile-portrait img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 10%!important;
  }
  .leadership-profile-portrait--prof-gavin-churchyard img{object-position:center 14%!important}
  .leadership-profile-portrait--prof-vinodh-edward img{object-position:center 11%!important}
  .leadership-profile-portrait--dr-jerry-gule img{object-position:center 7%!important}
  .leadership-profile-portrait--prof-dave-clark img{object-position:center 8%!important}
  .leadership-profile-portrait--ms-paula-fray img{object-position:center 8%!important}
  .leadership-profile-portrait--prof-pontiano-kaleebu img{object-position:center 9%!important}
  .leadership-profile-portrait--advocate-louisa-zondo img{object-position:center 6%!important}
  .leadership-profile-portrait--mr-arshad-hassim img{object-position:center 7%!important}
  .leadership-profile-portrait--ms-sarah-luthuli img{object-position:center 7%!important}
  .leadership-profile-portrait--mr-alex-darko img{object-position:center 8%!important}
  .leadership-profile-portrait--mr-gary-tamblyn img{object-position:center 7%!important}
  .leadership-profile-portrait--mr-yaw-peprah img{object-position:center 7%!important}
  .leadership-profile-portrait--prof-salome-charalambous img{object-position:center 7%!important}
  .leadership-profile-portrait--prof-violet-chihota img{object-position:center 8%!important}
  .leadership-profile-portrait--mr-michael-mcmillan img{object-position:center 7%!important}
}


/* 2026-09-02 — Clinical Research heading contrast only.
   No copy or layout changes. */
.clinical-research-panel .clinical-copy-block h2,
.clinical-research-panel .clinical-network-card h2,
.clinical-research-panel .clinical-infrastructure-head h2 {
  color: #fff !important;
}


/* =====================================================================
   2026-09-03 — LATEST STORIES: one card-image contract with explicit focal
   points. The supplied originals are never transformed or regenerated.
   ===================================================================== */
.latest-story-card figure{background:#f4f2ef;overflow:hidden;}
.latest-story-card figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:var(--story-object-position,50% 50%)!important;
  transform:none!important;
}
.latest-story-card-copy h3{font-family:var(--font-primary)!important;}
@media(max-width:850px){
  .latest-story-card figure{height:210px;}
  .latest-story-card figure img{object-position:var(--story-object-position,50% 50%)!important;}
}


/* Real latest-story logo fallbacks are artwork, not empty placeholders. */
.latest-story-image-placeholder--logo{
  background:#fff!important;
  border-style:solid!important;
}
.latest-story-image-placeholder--logo::after{
  content:none!important;
  display:none!important;
}

/* ===== SOURCE: sitewide-section-headings-20260903.css ===== */

/* ==========================================================================
   AURUM SITE-WIDE SECTION HEADING SYSTEM — 2026-09-03
   Single authoritative treatment based on the approved DriveDx Option 2 style.

   RULES
   - Section headings only; page/hero H1s are intentionally excluded.
   - Same font, weight, size, line-height, tracking and red left rule everywhere.
   - Light/white surfaces: black heading text.
   - Teal/dark/coloured surfaces: white heading text.
   - Old italic/gold <em> styling inside section headings is neutralised so all
     section headings read as one system.
   ========================================================================== */

:root{
  --aurum-section-heading-size:clamp(32px,3vw,46px);
  --aurum-section-heading-size-mobile:clamp(28px,8.2vw,35px);
  --aurum-section-heading-line:5px;
  --aurum-section-heading-line-mobile:4px;
  --aurum-section-heading-inset:20px;
  --aurum-section-heading-inset-mobile:14px;
}

/* Decorative indices have no place in section headings, cards or navigation.
   Keep numerical evidence, dates, programme names and timeline years visible. */
.work-hero::after,
.mobile-nav a::before,
.work-image-operations figure::after,
.work-image-access figure::before{
  content:none!important;
  display:none!important;
}
.work-image-operations::before{content:"SCIENTIFIC INFRASTRUCTURE"!important}
.work-image-human::before{content:"IMPLEMENTATION RESEARCH"!important}
.work-image-access::before{content:"HEALTH SYSTEMS"!important}
.work-community-context::after{content:"COMMUNITY CONTEXT"!important}
.mobile-nav a{gap:0!important}
.infra-card h3{margin-top:20px!important}
.why-card h3{margin-top:20px!important}

/* ---------- CANONICAL HEADING GEOMETRY ---------- */
:where(
  .section-head > h2,
  .section-head--single > h2,
  .latest-stories-head > h2,
  .about-introduction-copy > h2,
  .infrastructure-intro h2,
  .work-image-band-copy h2,
  .leadership-group > h3,
  .clinical-copy-block > h2,
  .clinical-network-card > h2,
  .clinical-infrastructure-head > h2,
  .bammisho-editorial__content > h2,
  .market-matters-grid > div > h2,
  .climate-copy > h2,
  .astra-feature__copy > h2,
  .drivedx-section-head > h2,
  .drivedx-connected h2,
  .home-strap-head > h2,
  .aurum-focus-title
){
  box-sizing:border-box!important;
  position:relative!important;
  display:block!important;
  width:fit-content!important;
  max-width:100%!important;
  margin-top:0!important;
  padding-left:var(--aurum-section-heading-inset)!important;
  border-left:var(--aurum-section-heading-line) solid var(--aurum-red)!important;
  font-family:var(--font-primary,"Neue Haas Grotesk","Archivo",Arial,sans-serif)!important;
  font-size:var(--aurum-section-heading-size)!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
}

/* Neutralise previous oversized pseudo-line implementations. */
:where(
  .section-head > h2,
  .section-head--single > h2,
  .latest-stories-head > h2,
  .about-introduction-copy > h2,
  .infrastructure-intro h2,
  .work-image-band-copy h2,
  .leadership-group > h3,
  .clinical-copy-block > h2,
  .clinical-network-card > h2,
  .clinical-infrastructure-head > h2,
  .bammisho-editorial__content > h2,
  .market-matters-grid > div > h2,
  .climate-copy > h2,
  .astra-feature__copy > h2,
  .home-strap-head > h2,
  .aurum-focus-title
)::before{
  content:none!important;
  display:none!important;
}

/* DriveDx already uses border-left; make it share the exact token values. */
.drivedx-page :where(.drivedx-section-head > h2,.drivedx-connected h2){
  padding-left:var(--aurum-section-heading-inset)!important;
  border-left-width:var(--aurum-section-heading-line)!important;
  border-left-color:var(--aurum-red)!important;
}

/* Old subpage headings often wrapped the second line in <em>; section headers
   now use the same DriveDx typography instead of italic/gold fragments. */
:where(
  .section-head > h2,
  .section-head--single > h2,
  .about-introduction-copy > h2,
  .infrastructure-intro h2,
  .work-image-band-copy h2,
  .clinical-copy-block > h2,
  .clinical-network-card > h2,
  .clinical-infrastructure-head > h2
) em{
  color:inherit!important;
  font:inherit!important;
  font-style:normal!important;
}

/* ---------- DEFAULT: LIGHT / WHITE SURFACES ---------- */
:where(
  .section-head > h2,
  .section-head--single > h2,
  .latest-stories-head > h2,
  .about-introduction-copy > h2,
  .infrastructure-intro h2,
  .bammisho-editorial__content > h2,
  .market-matters-grid > div > h2,
  .climate-copy > h2,
  .astra-feature__copy > h2,
  .home-strap-head > h2,
  .aurum-focus-title,
  .drivedx-page .drivedx-section-head > h2,
  .drivedx-page .drivedx-connected h2
){
  color:var(--aurum-ink,#171514)!important;
}

/* ---------- COLOURED / DARK SURFACES ---------- */
/* Explicit contexts beat inherited legacy colours. */
:where(
  .leadership,
  .clinical-research-panel,
  .discipline.teal,
  .area-work-section,
  .area-work-section--market,
  .project-section.teal,
  .project-section.dark,
  .page-section.teal,
  .page-section.dark,
  .people,
  .purpose,
  .dark-section,
  .teal-section
) :where(
  .section-head > h2,
  .section-head--single > h2,
  .leadership-group > h3,
  .clinical-copy-block > h2,
  .clinical-network-card > h2,
  .clinical-infrastructure-head > h2
){
  color:#fff!important;
}

/* Leadership is a teal page but its groups use h3, not h2. */
.leadership .leadership-group > h3{
  color:#fff!important;
  margin-bottom:26px!important;
}

/* Health area "Our Work" blocks are teal in the current system. */
.area-work-section .section-head--single > h2{
  color:#fff!important;
}

/* Health-area Focus Areas / expertise panels use a white surface. */
.area-focus-icons .section-head--single > h2,
.area-focus-icons .section-head > h2{
  color:var(--aurum-ink,#171514)!important;
}

/* Clinical Research main block is teal. */
.clinical-research-panel :where(
  .clinical-copy-block > h2,
  .clinical-network-card > h2,
  .clinical-infrastructure-head > h2
){
  color:#fff!important;
}

/* History timeline is a white surface. */
.history .section-head > h2{
  color:var(--aurum-ink,#171514)!important;
}

/* ---------- PAGE-SPECIFIC ALIGNMENT WITHOUT CHANGING THE SYSTEM ---------- */
/* Keep the homepage Areas of Focus heading centred as previously approved. */
.aurum-focus-title{
  margin-left:0!important;
  margin-right:0!important;
}

/* A heading in a two-column section should not inherit old giant widths. */
.section-head{
  align-items:start!important;
}
.section-head > h2{
  max-width:min(100%,900px)!important;
}

/* Latest Stories uses same hierarchy, not a special giant headline. */
.latest-stories-head{
  margin-bottom:34px!important;
}
.latest-stories-head > h2{
  max-width:min(100%,980px)!important;
}

/* Clinical headings were explicitly set as high as 72px in revision CSS.
   This is the authoritative override back to the DriveDx scale. */
.clinical-copy-block > h2,
.clinical-network-card > h2,
.clinical-infrastructure-head > h2{
  margin-bottom:24px!important;
}

/* About "Who we are" should read as a proper section heading on white. */
.about-introduction-copy > h2{
  color:var(--aurum-ink,#171514)!important;
  margin-bottom:28px!important;
}

/* Leadership page section headings all follow the same scale. */
.leadership-group > h3{
  font-size:var(--aurum-section-heading-size)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  font-weight:800!important;
}

/* Market Access standalone section headings on white. */
.market-matters-grid > div > h2,
.climate-copy > h2,
.astra-feature__copy > h2{
  color:var(--aurum-ink,#171514)!important;
  margin-bottom:22px!important;
}

/* ---------- MOBILE ---------- */
@media(max-width:700px){
  .aurum-focus-title{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  :where(
    .section-head > h2,
    .section-head--single > h2,
    .latest-stories-head > h2,
    .about-introduction-copy > h2,
    .infrastructure-intro h2,
    .work-image-band-copy h2,
    .leadership-group > h3,
    .clinical-copy-block > h2,
    .clinical-network-card > h2,
    .clinical-infrastructure-head > h2,
    .bammisho-editorial__content > h2,
    .market-matters-grid > div > h2,
    .climate-copy > h2,
    .astra-feature__copy > h2,
    .drivedx-section-head > h2,
    .drivedx-connected h2,
    .home-strap-head > h2,
    .aurum-focus-title
  ){
    padding-left:var(--aurum-section-heading-inset-mobile)!important;
    border-left-width:var(--aurum-section-heading-line-mobile)!important;
    font-size:var(--aurum-section-heading-size-mobile)!important;
    line-height:1.05!important;
  }
}


/* =====================================================================
   2026-09-03 FINAL CONTEXT CORRECTIONS
   ===================================================================== */

/* About: the complete authored "Who We Are" heading is Aurum gold.
   The red section rule remains; only the text colour is special here. */
.about-introduction .about-introduction-copy > h2,
.about-introduction .about-introduction-copy > h2 em{
  color:var(--aurum-gold,#e0ac26)!important;
}

/* Clinical Research: give Scientific infrastructure safe breathing room
   from the red rule without increasing the heading itself. */
.clinical-infrastructure-head > h2{
  padding-left:30px!important;
  max-width:100%!important;
}

/* User-requested Market Access heading is intentionally a little smaller
   than other coloured-panel section headings. */
.area-work-section--market .section-head--single > h2{
  font-size:clamp(28px,2.65vw,40px)!important;
}
@media(max-width:700px){
  .clinical-infrastructure-head > h2{padding-left:20px!important;}
  .area-work-section--market .section-head--single > h2{
    font-size:clamp(26px,7.4vw,33px)!important;
  }
}

/* ===== SOURCE: sitewide-hero-integrity-20260902.css ===== */
/*
 * Aurum Institute — Site-wide Hero Integrity + Typography Pass
 * 2026-09-02
 * Scope: hero rendering, hero typography, responsive hero composition only.
 * Deliberately does NOT alter page content, navigation, project cards, footer,
 * leadership profiles, history timeline, or below-hero sections.
 */

/* ---------- Shared hero text hierarchy ---------- */
.page-hero .eyebrow,
.area-hero .eyebrow,
.tb-isolated-hero__eyebrow,
.hiv-photo-hero__eyebrow,
.implementation-feature-hero__eyebrow {
  font-size: clamp(.76rem, .72vw, .9rem) !important;
  line-height: 1.2 !important;
  letter-spacing: .16em !important;
  font-weight: 800 !important;
}

/* The image-backed hero titles were reading too much like section headings.
   Increase presence without allowing them to take over the photograph. */
.area-hero--image-ready .area-hero-copy h1,
.tb-isolated-hero__content h1,
.hiv-photo-hero__content h1,
.clinical-research-hero__content h1,
.implementation-feature-hero__content h1 {
  font-size: clamp(3.2rem, 5.2vw, 4.8rem) !important;
  line-height: .94 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
}

.area-hero--image-ready .area-hero-copy .lead,
.tb-isolated-hero__content > p:last-child,
.hiv-photo-hero__content > p:last-child,
.clinical-research-hero__content p,
.implementation-feature-hero__lead {
  font-size: clamp(1.04rem, 1.28vw, 1.22rem) !important;
  line-height: 1.52 !important;
}

/* About / History / Leadership are editorial heroes. They are already larger;
   only strengthen them slightly and preserve the existing gold emphasis. */
.page-hero.about-hero > h1 {
  font-size: clamp(4rem, 5.4vw, 5.45rem) !important;
  line-height: .9 !important;
  max-width: 10.5ch !important;
  letter-spacing: -.055em !important;
  text-wrap: balance;
}
.page-hero.about-hero > .lead {
  font-size: clamp(1.06rem, 1.28vw, 1.22rem) !important;
  line-height: 1.55 !important;
  max-width: 44rem !important;
}

/* Work overview split hero: stronger copy while keeping image dominant. */
.page-hero.work-hero.has-work-media .work-hero-copy h1 {
  font-size: clamp(4rem, 5.8vw, 5.8rem) !important;
  line-height: .9 !important;
}
.page-hero.work-hero.has-work-media .work-hero-copy .lead {
  font-size: clamp(1.05rem, 1.25vw, 1.2rem) !important;
  line-height: 1.55 !important;
}

/* ---------- Asset rendering guards ---------- */
.about-hero-image,
.area-hero-media--photo img,
.tb-isolated-hero__image,
.hiv-photo-hero__image,
.clinical-research-hero__media img,
.implementation-feature-hero__image,
.work-hero-media img {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* The About-family source photographs are absolute layers. Keep a real
   stacking context so text/overlay cannot accidentally paint underneath. */
.page-hero.about-hero {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background: #191613 !important;
}
.page-hero.about-hero .about-hero-image {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
}
.page-hero.about-hero::before {
  z-index: 1 !important;
}
.page-hero.about-hero > .eyebrow,
.page-hero.about-hero > h1,
.page-hero.about-hero > .lead {
  position: relative !important;
  z-index: 2 !important;
}

/* Page-specific focal points. These are deliberately separate instead of
   forcing one crop across three unrelated photographs. */
body.page-template-page-about .about-hero-image,
body.about-us .about-hero-image {
  object-position: 61% 46% !important;
}
body.page-template-page-history .about-hero-image,
body.about-detail-history .about-hero-image {
  object-position: 58% 43% !important;
}
body.page-template-page-leadership .about-hero-image,
body.about-detail-leadership .about-hero-image {
  object-position: 62% 28% !important;
}

/* Health-area photo heroes retain the source-specific focal vars already
   defined in single-health_area.php. This layer only guarantees the media
   fills the composition and the copy stays readable. */
.area-hero--image-ready .area-hero-media--photo {
  background: #191613 !important;
}
.area-hero--image-ready .area-hero-media--photo img {
  object-fit: cover !important;
  min-width: 100% !important;
}

/* TB/HIV dedicated heroes: protect full-bleed media from legacy rules. */
.tb-isolated-hero,
.hiv-photo-hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}
.tb-isolated-hero__image,
.hiv-photo-hero__image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* ---------- Mobile: intentionally separate composition ---------- */
@media (max-width: 900px) {
  /* Image-first readability: copy sits in lower third, photograph still has
     breathing room above it. */
  .area-hero--image-ready .area-hero-copy h1,
  .tb-isolated-hero__content h1,
  .hiv-photo-hero__content h1,
  .clinical-research-hero__content h1,
  .implementation-feature-hero__content h1 {
    font-size: clamp(2.55rem, 10.5vw, 3.65rem) !important;
    line-height: .96 !important;
    max-width: 12.5ch !important;
  }

  .area-hero--image-ready .area-hero-copy .lead,
  .tb-isolated-hero__content > p:last-child,
  .hiv-photo-hero__content > p:last-child,
  .clinical-research-hero__content p,
  .implementation-feature-hero__lead {
    font-size: clamp(.98rem, 4vw, 1.08rem) !important;
    line-height: 1.5 !important;
    max-width: 34ch !important;
  }

  .page-hero.about-hero {
    min-height: clamp(520px, 126vw, 650px) !important;
    padding: clamp(72px, 18vw, 104px) 22px clamp(40px, 10vw, 58px) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
  }
  .page-hero.about-hero > h1 {
    font-size: clamp(3rem, 12vw, 4rem) !important;
    line-height: .93 !important;
    max-width: 9.8ch !important;
  }
  .page-hero.about-hero > .lead {
    font-size: clamp(1rem, 4.1vw, 1.1rem) !important;
    line-height: 1.5 !important;
    max-width: 34ch !important;
    margin-top: 22px !important;
  }
  .page-hero.about-hero::before {
    background:
      linear-gradient(180deg, rgba(18,16,14,.08) 0%, rgba(18,16,14,.18) 32%, rgba(18,16,14,.66) 65%, rgba(18,16,14,.92) 100%) !important;
  }

  /* Mobile crops are not inherited blindly from desktop. */
  body.page-template-page-about .about-hero-image,
  body.about-us .about-hero-image {
    object-position: 63% 42% !important;
  }
  body.page-template-page-history .about-hero-image,
  body.about-detail-history .about-hero-image {
    object-position: 56% 42% !important;
  }
  body.page-template-page-leadership .about-hero-image,
  body.about-detail-leadership .about-hero-image {
    object-position: 60% 28% !important;
  }

  .page-hero.work-hero.has-work-media .work-hero-copy h1 {
    font-size: clamp(3rem, 11vw, 4rem) !important;
    line-height: .94 !important;
  }
  .page-hero.work-hero.has-work-media .work-hero-copy .lead {
    font-size: clamp(1rem, 4vw, 1.08rem) !important;
  }
}

/* Remove the generic right-side glow and concentric ring from page heroes.
   More-specific photo-hero readability overlays remain intact. */
.page-hero::before {
  background: none !important;
}
.page-hero::after {
  border: 0 !important;
  box-shadow: none !important;
  background: none;
}

@media (max-width: 560px) {
  /* Long health-area names need one smaller ceiling so they never blanket
     the photo on narrow phones. */
  .area-hero--amr .area-hero-copy h1,
  .area-hero--maternal .area-hero-copy h1,
  .area-hero--quality .area-hero-copy h1,
  .area-hero--climate .area-hero-copy h1 {
    font-size: clamp(2.28rem, 10.4vw, 3.05rem) !important;
    max-width: 12.8ch !important;
  }

  .page-hero.about-hero > h1 {
    font-size: clamp(2.85rem, 12vw, 3.55rem) !important;
  }
}

/* ---------- About-page content integrity ---------- */
/* Who We Are is intentionally preserved and kept visible. This is a guard
   against broad hero/layout rules accidentally hiding the section. */
.about-introduction,
.about-introduction-grid,
.about-introduction-copy {
  visibility: visible !important;
  opacity: 1 !important;
}
.about-introduction-copy h2 {
  display: block !important;
}
.about-introduction-copy h2 em {
  color: var(--aurum-gold, #e0ac26) !important;
}

/* ========================================================================
   2026-09-02 — MOBILE HERO COMPOSITION VERIFICATION PASS
   Reference behaviour: TB mobile hero. The image remains full-bleed behind
   the copy; mobile gets its own focal point; no desktop hero geometry moves.
   ======================================================================== */
@media (max-width: 900px) {
  /* About / History / Leadership: keep the photograph visible THROUGH the
     text zone rather than visually turning the lower half into a black panel. */
  .page-hero.about-hero {
    min-height: clamp(610px, 145vw, 760px) !important;
    height: auto !important;
    margin: 0 !important;
    padding: clamp(90px, 20vw, 118px) 22px clamp(38px, 9vw, 54px) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    background-color: #191613 !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
  }
  .page-hero.about-hero .about-hero-image {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }
  .page-hero.about-hero::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(180deg,
      rgba(18,16,14,.05) 0%,
      rgba(18,16,14,.08) 31%,
      rgba(18,16,14,.28) 55%,
      rgba(18,16,14,.62) 76%,
      rgba(18,16,14,.78) 100%) !important;
    pointer-events: none !important;
  }
  .page-hero.about-hero > .eyebrow,
  .page-hero.about-hero > h1,
  .page-hero.about-hero > .lead {
    position: relative !important;
    z-index: 2 !important;
    color: #fff !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.34) !important;
  }
  .page-hero.about-hero > .eyebrow { color: #e0ac26 !important; }
  .page-hero.about-hero > h1 {
    font-size: clamp(2.9rem, 11.7vw, 3.8rem) !important;
    line-height: .94 !important;
    max-width: 10.5ch !important;
    margin-bottom: 18px !important;
  }
  .page-hero.about-hero > .lead {
    margin-top: 0 !important;
    max-width: 34ch !important;
    font-size: clamp(.98rem, 4vw, 1.08rem) !important;
    line-height: 1.5 !important;
  }

  /* Real image fallbacks at the same exact approved source paths. These do
     not replace the <img>; they stop a legacy rule from leaving a black hero
     if the image element is temporarily suppressed during responsive layout. */
  body.page-template-page-about .page-hero.about-hero,
  body.about-overview .page-hero.about-hero {
    /* The real <img> is the LCP owner. Do not request the same photograph a
       second time as a CSS background on mobile: that duplicate transfer
       competed with the responsive LCP candidate on slow connections. */
    background-image: none !important;
    background-color: #191613 !important;
  }
  /* History owns one real <picture>. A CSS background here duplicated the
     image and delayed mobile LCP until this stylesheet had downloaded. */
  body.page-template-page-history .page-hero.about-hero,
  body.about-detail-history .page-hero.about-hero {
    background-image: none !important;
  }
  body.page-template-page-leadership .page-hero.about-hero,
  body.about-detail-leadership .page-hero.about-hero {
    background-image: none !important;
  }
  body.page-template-page-about .about-hero-image,
  body.about-overview .about-hero-image { object-position: 61% 43% !important; }
  body.page-template-page-history .about-hero-image,
  body.about-detail-history .about-hero-image { object-position: 55% 43% !important; }
  body.page-template-page-leadership .about-hero-image,
  body.about-detail-leadership .about-hero-image { object-position: 52% 25% !important; }

  /* Implementation Research: same full-bleed mobile behaviour as TB.
     The CSS background is a fallback only; the approved <img> remains first. */
  .implementation-feature-hero {
    position: relative !important;
    isolation: isolate !important;
    min-height: clamp(640px, 150vw, 790px) !important;
    height: auto !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background: #191613 url("../images/implementation-research-hero.jpg") 59% center / cover no-repeat !important;
  }
  .implementation-feature-hero__image {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 59% center !important;
    display: block !important;
  }
  .implementation-feature-hero__overlay {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(180deg,
      rgba(18,16,14,.04) 0%,
      rgba(18,16,14,.12) 36%,
      rgba(18,16,14,.47) 66%,
      rgba(18,16,14,.82) 100%) !important;
  }
  .implementation-feature-hero__content {
    position: absolute !important;
    z-index: 2 !important;
    left: 22px !important;
    right: 22px !important;
    top: auto !important;
    bottom: 36px !important;
    transform: none !important;
    width: auto !important;
    max-width: 620px !important;
    padding: 0 !important;
    color: #fff !important;
  }
  .implementation-feature-hero__content h1 {
    font-size: clamp(2.8rem, 11vw, 3.65rem) !important;
    line-height: .94 !important;
    max-width: 11.5ch !important;
    margin: 0 0 16px !important;
  }
  .implementation-feature-hero__lead {
    max-width: 34ch !important;
    font-size: clamp(.96rem, 3.9vw, 1.06rem) !important;
    line-height: 1.48 !important;
  }

  /* HIV: dedicated picture element gets the same full-bleed contract. The
     mobile-approved source remains in <picture>, with a fallback background. */
  .hiv-photo-hero.hiv-photo-hero--premium {
    position: relative !important;
    isolation: isolate !important;
    min-height: clamp(650px, 150vw, 800px) !important;
    height: auto !important;
    overflow: hidden !important;
    background: #191613 url("../responsive/images/hiv/hiv-hero-final-approved-20260831-1200.webp") 68% 50% / cover no-repeat !important;
  }
  .hiv-photo-hero--premium .hiv-photo-hero__picture {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
  }
  .hiv-photo-hero--premium .hiv-photo-hero__image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: 68% 50% !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .hiv-photo-hero--premium::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    width: auto !important;
    height: auto !important;
    background: linear-gradient(180deg,
      rgba(18,16,14,.02) 0%,
      rgba(18,16,14,.07) 34%,
      rgba(18,16,14,.35) 62%,
      rgba(18,16,14,.78) 100%) !important;
    pointer-events: none !important;
  }
  .hiv-photo-hero--premium .hiv-photo-hero__content {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    padding: 32px 22px 34px !important;
    color: #fff !important;
  }
  .hiv-photo-hero--premium .hiv-photo-hero__content > * {
    width: 100% !important;
    max-width: 34ch !important;
  }
  .hiv-photo-hero--premium h1 {
    font-size: clamp(3rem, 12vw, 3.8rem) !important;
    line-height: .94 !important;
    margin: 0 0 14px !important;
  }
  .hiv-photo-hero--premium .hiv-photo-hero__content > p:last-child {
    font-size: clamp(.96rem, 3.9vw, 1.05rem) !important;
    line-height: 1.48 !important;
  }

  /* Clinical Research uses a separate component; protect it as full-bleed
     on phones rather than allowing a split image/text composition. */
  .clinical-research-hero {
    position: relative !important;
    isolation: isolate !important;
    min-height: clamp(620px, 145vw, 760px) !important;
    height: auto !important;
    overflow: hidden !important;
    background: #191613 !important;
  }
  .clinical-research-hero__media {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
  }
  .clinical-research-hero__media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 59% 42% !important;
    display: block !important;
  }
  .clinical-research-hero::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(180deg,rgba(18,16,14,.03),rgba(18,16,14,.14) 40%,rgba(18,16,14,.78) 100%) !important;
  }
  .clinical-research-hero__content {
    position: absolute !important;
    z-index: 2 !important;
    left: 22px !important;
    right: 22px !important;
    top: auto !important;
    bottom: 36px !important;
    transform: none !important;
    width: auto !important;
    max-width: 620px !important;
    padding: 0 !important;
    color: #fff !important;
  }
  .clinical-research-hero__content h1 {
    font-size: clamp(2.9rem, 11.5vw, 3.75rem) !important;
    line-height: .94 !important;
    margin: 0 0 16px !important;
  }
  .clinical-research-hero__content p {
    max-width: 34ch !important;
    font-size: clamp(.96rem, 3.9vw, 1.05rem) !important;
    line-height: 1.48 !important;
  }

  /* Existing image-backed Health Areas already follow the correct AMR/TB
     model. Tighten the contract so no legacy responsive rule can make their
     media disappear. */
  .area-hero--image-ready {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
    min-height: clamp(610px, 145vw, 760px) !important;
  }
  .area-hero--image-ready .area-hero-layout,
  .area-hero--image-ready .area-hero-media--photo {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .area-hero--image-ready .area-hero-media--photo { z-index: 0 !important; margin: 0 !important; }
  .area-hero--image-ready .area-hero-media--photo img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    object-fit: cover !important;
    object-position: var(--hero-object-position-mobile, center center) !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .area-hero--image-ready .area-hero-layout::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(180deg,rgba(18,16,14,.02),rgba(18,16,14,.12) 38%,rgba(18,16,14,.42) 65%,rgba(18,16,14,.80) 100%) !important;
    pointer-events: none !important;
  }
  .area-hero--image-ready .area-hero-copy {
    position: absolute !important;
    z-index: 2 !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    padding: 30px 22px 36px !important;
  }
}

/* History hero: one discoverable, high-priority responsive image. */
body.page-template-page-history .history-hero-picture,
body.about-detail-history .history-hero-picture {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
}

body.page-template-page-history .history-hero-picture .about-hero-image,
body.about-detail-history .history-hero-picture .about-hero-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Leadership owns one responsive <picture>; do not make CSS request a
   duplicate hero or the LCP candidate. */
body.page-template-page-leadership .leadership-hero-picture,
body.about-detail-leadership .leadership-hero-picture {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}
body.page-template-page-leadership .leadership-hero-picture .about-hero-image,
body.about-detail-leadership .leadership-hero-picture .about-hero-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

@media (max-width: 560px) {
  .implementation-feature-hero,
  .hiv-photo-hero.hiv-photo-hero--premium,
  .clinical-research-hero,
  .area-hero--image-ready,
  .page-hero.about-hero {
    min-height: clamp(620px, 158vw, 760px) !important;
  }
}

/* About section title requested in Aurum gold. This is intentionally scoped
   to the real "Who we are" title only; body copy and other About headings stay. */
.about-introduction .about-introduction-copy h2,
.about-introduction .about-introduction-copy h2 em {
  color: #e0ac26 !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: 0 2px 16px rgba(0,0,0,.34) !important;
}


/* 2026-09-02 final three mobile hero focal fixes — mobile only. */
@media (max-width: 760px) {
  .area-hero--amr .area-hero-media--photo img { object-position: 27% 50% !important; }
  .area-hero--climate .area-hero-media--photo img { object-position: 31% 62% !important; }
}

/* Final approved mobile focal-point lock. Kept together so later passes do not
   silently return unrelated heroes to generic centre/cover positioning. */
@media (max-width: 900px) {
  body.about-overview .about-hero-image { object-position: 61% 43% !important; }
  body.about-detail-history .about-hero-image { object-position: 55% 43% !important; }
  body.about-detail-leadership .about-hero-image { object-position: 52% 25% !important; }
  .implementation-feature-hero__image { object-position: 59% 50% !important; }
  .clinical-research-hero__media img { object-position: 59% 42% !important; }
  .hiv-photo-hero--premium .hiv-photo-hero__image { object-position: 68% 50% !important; }
  .area-hero--diagnostics .area-hero-media--photo img { object-position: 56% 42% !important; }
  .area-hero--amr .area-hero-media--photo img { object-position: 27% 50% !important; }
  .area-hero--maternal .area-hero-media--photo img { object-position: 61% 36% !important; }
  .area-hero--market .area-hero-media--photo img { object-position: 63% 50% !important; }
  .area-hero--quality .area-hero-media--photo img { object-position: 52% 42% !important; }
  .area-hero--climate .area-hero-media--photo img { object-position: 31% 62% !important; }
}

/* ===== SOURCE: sitewide-search-20260913.css ===== */
/* Authoritative site-wide search UI — 2026-09-13. */
.nav-search-panel{
  width:min(720px,calc(100vw - 48px))!important;
  min-width:min(720px,calc(100vw - 48px))!important;
  max-width:min(720px,calc(100vw - 48px))!important;
  padding:10px!important;
  border-radius:14px!important;
  z-index:10050!important;
}
.nav-search-form{
  min-width:0!important;
  padding:4px 8px 8px!important;
}
.nav-search-form input{
  min-width:0!important;
  width:100%!important;
  padding:12px 4px!important;
  font-size:15px!important;
}
.nav-search-results{
  max-height:min(62vh,620px);
  overflow:auto;
  overscroll-behavior:contain;
  border-top:1px solid rgba(25,22,19,.08);
}
.nav-search-result{
  display:grid!important;
  grid-template-columns:105px minmax(0,1fr)!important;
  gap:2px 14px!important;
  padding:13px 14px!important;
  border-radius:9px!important;
  text-decoration:none!important;
}
.nav-search-result__type{
  grid-row:1 / span 2;
  align-self:start;
  color:var(--aurum-red);
  font-size:9px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
  padding-top:3px;
}
.nav-search-result strong{
  color:var(--aurum-ink);
  font-size:14px;
  line-height:1.25;
}
.nav-search-result small{
  display:block;
  color:var(--aurum-slate);
  font-size:12px;
  line-height:1.4;
  font-weight:400;
}
.nav-search-loading,.nav-search-empty{
  margin:0;
  padding:18px 14px;
  color:var(--aurum-slate);
  font-size:13px;
}

/* Full results page. */
.site-search-page{
  min-height:65vh;
  background:#fff;
  padding:clamp(110px,12vw,160px) clamp(22px,8vw,120px) 90px;
}
.site-search-page__inner{max-width:1100px;margin:0 auto}
.site-search-page h1{margin:0 0 12px;font-size:clamp(42px,6vw,78px);letter-spacing:-.05em}
.site-search-page__summary{margin:0 0 30px;color:var(--aurum-slate);font-size:16px}
.site-search-page__form{display:flex;gap:10px;margin-bottom:34px}
.site-search-page__form input{flex:1;min-width:0;padding:15px 18px;border:1px solid var(--aurum-line);border-radius:10px;font:inherit}
.site-search-page__form button{border:0;border-radius:999px;padding:0 24px;background:var(--aurum-red);color:#fff;font:inherit;font-size:13px;font-weight:650}
.site-search-results{display:grid;gap:10px}
.site-search-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:4px 18px;padding:20px;border:1px solid var(--aurum-line);border-radius:11px;color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.site-search-card:hover{transform:translateY(-2px);border-color:rgba(215,48,41,.3);box-shadow:0 10px 30px rgba(25,22,19,.06)}
.site-search-card__type{grid-row:1 / span 2;color:var(--aurum-red);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.site-search-card h2{margin:0;font-size:21px;line-height:1.2}
.site-search-card p{margin:4px 0 0;color:var(--aurum-slate);font-size:14px;line-height:1.5}

@media(max-width:850px){
  .nav-search-panel{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
  }
  .nav-search-result{
    grid-template-columns:1fr!important;
    gap:4px!important;
  }
  .nav-search-result__type{grid-row:auto}
  .nav-search-form input{font-size:16px!important}
  .site-search-page{padding:100px 18px 64px}
  .site-search-page__form{flex-direction:column}
  .site-search-page__form button{min-height:48px}
  .site-search-card{grid-template-columns:1fr;padding:17px}
  .site-search-card__type{grid-row:auto}
}

/* ===== SOURCE: sitewide-card-pop-20260918.css ===== */
/* Sitewide desktop card interaction. Outlines do not affect layout or load images. */
@media (hover:hover) and (pointer:fine){
  :is(.work-card,.why-card,.gateway-card,.infra-card,.drivedx-card,.site-search-card,.values-grid>article,.feature-card,.story-card,.module-card,.proof-card,.focus-card,.resource-card,.latest-story-card,.usa-work-card,.ghana-impact-card,.stat-card,.drivedx-approach-card,.drivedx-future-card,.drivedx-update-card,.market-access-project-card,.clinical-network-card,.clinical-infrastructure-head,.clinical-copy-block,.office-card,.credential-card,.evidence-card,.invite-card,.through-card,.process-card,.timeline-card,.htl-card,.pathway-card,.purpose-card,.card,.leadership .profile,.market-access-opening,.market-access-what-grid>article,.market-expertise-grid>article,.market-matters-grid>div,.reach-feature,.resource-feature,.resource-aside,.publication-item,.publication-year__summary):hover{
    outline:2px solid #e0ac26;
    outline-offset:0;
  }
  /* Gold surfaces use red for a visible outline. */
  :is(.purpose-card:not(.red),.project-page--fundacao .project-section.teal .module-card:nth-child(4n+2)):hover{
    outline-color:#cd2026;
  }
  /* Report covers already have their own small image lift; no oversized card outline. */
  .annual-reports-library .annual-report-card:hover{outline:none;box-shadow:none;translate:none}
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  /* Independent translate preserves scroll-reveal transforms and existing layouts. */
  :is(.why-card,.gateway-card,.drivedx-card,.site-search-card,.values-grid>article,.feature-card,.story-card,.module-card,.proof-card,.focus-card,.resource-card,.latest-story-card,.usa-work-card,.ghana-impact-card,.stat-card,.drivedx-approach-card,.drivedx-future-card,.drivedx-update-card,.market-access-project-card,.clinical-network-card,.clinical-infrastructure-head,.clinical-copy-block,.office-card,.credential-card,.evidence-card,.invite-card,.through-card,.process-card,.timeline-card,.htl-card,.pathway-card,.purpose-card,.card,.market-access-opening,.market-access-what-grid>article,.market-expertise-grid>article,.market-matters-grid>div,.reach-feature,.resource-feature,.resource-aside){
    transition:translate .23s cubic-bezier(.2,.7,.2,1),outline-color .23s ease;
  }
  :is(.why-card,.gateway-card,.drivedx-card,.site-search-card,.values-grid>article,.feature-card,.story-card,.module-card,.proof-card,.focus-card,.resource-card,.latest-story-card,.usa-work-card,.ghana-impact-card,.stat-card,.drivedx-approach-card,.drivedx-future-card,.drivedx-update-card,.market-access-project-card,.clinical-network-card,.clinical-infrastructure-head,.clinical-copy-block,.office-card,.credential-card,.evidence-card,.invite-card,.through-card,.process-card,.timeline-card,.htl-card,.pathway-card,.purpose-card,.card,.market-access-opening,.market-access-what-grid>article,.market-expertise-grid>article,.market-matters-grid>div,.reach-feature,.resource-feature,.resource-aside):hover{
    translate:0 -5px;
  }
  /* Existing work, infrastructure, Leadership and publication lifts stay in charge. */
}

/* ===== ABOUT PAGE AUTHORITATIVE REFINEMENTS (formerly template inline CSS) ===== */
.about-introduction .about-introduction-media img {
    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
}
.about-introduction .about-introduction-media::before {
    background: transparent !important;
    opacity: 0 !important;
}
.about-introduction .about-introduction-media::after {
    background: linear-gradient(90deg,
        rgba(10, 10, 10, 0.38) 0%,
        rgba(10, 10, 10, 0.28) 18%,
        rgba(10, 10, 10, 0.14) 34%,
        rgba(10, 10, 10, 0.04) 48%,
        rgba(10, 10, 10, 0.00) 58%
    ) !important;
    opacity: 1 !important;
}
.about-introduction .about-introduction-copy {
    text-shadow: 0 1px 3px rgba(0,0,0,.38);
}
@media (max-width: 900px) {
    .about-introduction .about-introduction-media::after {
        background: linear-gradient(180deg,
            rgba(10, 10, 10, 0.00) 0%,
            rgba(10, 10, 10, 0.05) 48%,
            rgba(10, 10, 10, 0.32) 100%
        ) !important;
    }
}

.about-purpose.about-purpose--mission-vision-only{
  display:block !important;
  padding:48px clamp(28px,3.25vw,52px) !important;
  overflow:visible !important;
}
.about-purpose--mission-vision-only .about-purpose-layout{
  display:grid !important;
  grid-template-columns:minmax(0,540px) minmax(0,540px) !important;
  align-items:start !important;
  justify-content:center !important;
  gap:24px !important;
  width:min(100%,1104px) !important;
  max-width:1104px !important;
  margin:0 auto !important;
  padding:0 !important;
  position:static !important;
  transform:none !important;
}
.about-purpose--mission-vision-only .purpose-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:340px 186px !important;
  gap:14px !important;
  width:540px !important;
  max-width:540px !important;
  margin:0 !important;
  padding:0 !important;
}
.about-purpose--mission-vision-only .purpose-card,
.about-purpose--mission-vision-only .purpose-card:first-child,
.about-purpose--mission-vision-only .purpose-card:last-child{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  width:540px !important;
  max-width:540px !important;
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  margin:0 !important;
  padding:30px 34px !important;
  position:static !important;
  transform:none !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.about-purpose--mission-vision-only .purpose-card .kicker{
  position:static !important;
  margin:0 0 14px !important;
}
.about-purpose--mission-vision-only .purpose-card h3{
  margin:0 !important;
  max-width:15em !important;
  font-size:34px !important;
  line-height:1.03 !important;
  letter-spacing:-.045em !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}
.about-purpose--mission-vision-only .purpose-card:last-child h3{
  font-size:32px !important;
  line-height:1.06 !important;
  max-width:16em !important;
}
.about-purpose--mission-vision-only .about-purpose-image-placeholder{
  display:block !important;
  width:540px !important;
  max-width:540px !important;
  min-width:0 !important;
  height:540px !important;
  min-height:540px !important;
  max-height:540px !important;
  aspect-ratio:1/1 !important;
  margin:0 !important;
  padding:0 !important;
  position:static !important;
  transform:none !important;
  align-self:start !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  background:#f3f1ec !important;
  border:0 !important;
}
.about-purpose--mission-vision-only .about-purpose-image-placeholder::before,
.about-purpose--mission-vision-only .about-purpose-image-placeholder::after{content:none !important;}
.about-purpose--mission-vision-only .about-purpose-image-placeholder img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}
@media (max-width:1200px) and (min-width:851px){
  .about-purpose--mission-vision-only .about-purpose-layout{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
  }
  .about-purpose--mission-vision-only .purpose-grid,
  .about-purpose--mission-vision-only .purpose-card,
  .about-purpose--mission-vision-only .purpose-card:first-child,
  .about-purpose--mission-vision-only .purpose-card:last-child,
  .about-purpose--mission-vision-only .about-purpose-image-placeholder{
    width:100% !important;
    max-width:none !important;
  }
  .about-purpose--mission-vision-only .about-purpose-image-placeholder{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:1/1 !important;
  }
}
@media (max-width:850px){
  .about-purpose.about-purpose--mission-vision-only{
    padding:42px 20px !important;
  }
  .about-purpose--mission-vision-only .about-purpose-layout{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    max-width:100% !important;
    gap:16px !important;
    margin:0 !important;
  }
  .about-purpose--mission-vision-only .purpose-grid{
    width:100% !important;
    max-width:100% !important;
    grid-template-rows:auto !important;
    gap:14px !important;
  }
  .about-purpose--mission-vision-only .purpose-card,
  .about-purpose--mission-vision-only .purpose-card:first-child,
  .about-purpose--mission-vision-only .purpose-card:last-child{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:210px !important;
    padding:28px 26px !important;
  }
  .about-purpose--mission-vision-only .purpose-card h3{
    max-width:13em !important;
    font-size:clamp(29px,8vw,38px) !important;
    line-height:1.03 !important;
  }
  .about-purpose--mission-vision-only .about-purpose-image-placeholder{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:1/1 !important;
  }
}
