:root {
  --gww-red:#ce1126; --gww-blue:#0c1c8c; --gww-green:#3a7728;
  --cream:#ffffff; --paper:#ffffff; --green:var(--gww-green);
  --ink:#152444; --muted:#59677b; --line:#dce3eb; --gold:var(--gww-red); --soft:#f0f4f8;
  --font-body:Arial,Helvetica,sans-serif; --font-display:Arial,Helvetica,sans-serif;
}
body {background:#fff;color:var(--ink)}
html {scroll-padding-top:205px}
::selection {background:var(--gww-blue);color:#fff}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {outline-color:var(--gww-blue)}
.site-header {background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 20px #15244407}
.site-header:before {content:"";display:block;height:12px;background:linear-gradient(180deg,var(--gww-red) 0 33%,#fff 33% 39%,var(--gww-blue) 39% 61%,#fff 61% 67%,var(--gww-green) 67% 100%)}
.header-inner {min-height:92px;padding-top:19px;padding-bottom:19px}
.brand>span:last-child {font-size:23px;font-weight:800;color:var(--gww-blue);letter-spacing:-.8px}
.brand em {font-size:13px;font-style:normal;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--gww-green);margin-top:6px}
.brand-symbol>span {font-family:Georgia,serif;color:var(--gww-blue)}
.brand-symbol i {background:var(--gww-red)}
.brand {gap:13px}
.brand-logo {width:88px;height:88px;object-fit:contain;flex:0 0 auto;background:#fff;border-radius:6px}
.header-inner:has(.brand-logo) {padding-top:9px;padding-bottom:9px}
.header-search-wrap {background:#eef2f8;border-bottom:1px solid var(--line)}
.header-search {display:flex;align-items:center;gap:10px;max-width:1376px;margin:0 auto;padding:8px 64px}
.header-search .search-field {flex:1;min-width:0;height:46px;border:1px solid #bcc9d9;background:#fff;padding:0 14px;gap:10px}
.header-search input {min-width:0;font-size:15px}
.header-search .header-search-submit {min-height:46px;padding:10px 20px;background:var(--gww-blue);border-color:var(--gww-blue);color:#fff;font-size:13px;gap:12px;flex-shrink:0}
.header-search .header-search-submit:hover {background:var(--gww-green);border-color:var(--gww-green)}
.site-footer .brand-logo {width:105px;height:105px;padding:4px}
.main-nav {font-size:12px;font-weight:600;gap:24px;margin-right:0}
.main-nav a:hover {color:var(--gww-red)}
.header-actions {display:none}
.button {border-radius:5px;font-weight:700;letter-spacing:.1px}
.button-primary {background:var(--gww-green);border-color:var(--gww-green);color:#fff}
.button-primary:hover {background:var(--gww-blue);border-color:var(--gww-blue)}
.button-outline {border-color:#bcc9d9;color:var(--gww-blue)}
.button-outline:hover {background:#eef2ff}
.nomination-cta {min-height:46px;padding:12px 18px;gap:12px;background:var(--gww-red);border:2px solid var(--gww-red);color:#fff;font-size:13px;font-weight:800;white-space:nowrap;box-shadow:0 4px 12px #ce112622}
.nomination-cta:hover {background:var(--gww-blue);border-color:var(--gww-blue);color:#fff}
.nomination-cta:focus-visible {outline:3px solid var(--gww-blue);outline-offset:3px}
.button-cream {background:#fff;border-color:#fff;color:var(--gww-green)}
.button-cream:hover {background:#e9f3e8}
.text-link {color:var(--gww-blue);border-color:#b7c4dd;font-weight:700}
.text-link:hover {color:var(--gww-red)}
.eyebrow {font-weight:700;letter-spacing:1.8px}
.live-dot {background:var(--gww-red)}
.gambian-flag i {background:var(--gww-red)}
.gambian-flag i:nth-child(2) {background:var(--gww-blue)}
.gambian-flag i:nth-child(3) {background:var(--gww-green)}
.hero {position:relative;gap:44px;padding-top:65px;padding-bottom:56px;min-height:640px}
.hero-copy>.eyebrow {color:var(--gww-green)}
.hero h1 {font-family:var(--font-display);font-size:clamp(52px,5.8vw,80px);font-weight:800;letter-spacing:-3.5px;line-height:1.07;margin:27px 0}
.hero h1>span,.hero h1>em {display:block}
.hero h1>span:first-child {color:var(--gww-blue)}
.hero h1>em {font-style:normal;font-size:1em;letter-spacing:inherit;color:var(--gww-red);font-weight:800}
.hero h1>span:last-child {color:var(--gww-green)}
.hero-description {font-size:15px;line-height:1.9;max-width:390px;color:#536179}
.hero-buttons {gap:23px}
.hero-footnote {font-size:11px;color:#536179}
.hero-hatching {background:repeating-linear-gradient(45deg,transparent,transparent 10px,#0c1c8c0b 10px,#0c1c8c0b 11px);inset:6px 0 38px 24px;transform:translate(15px,12px)}
.hero-portraits {gap:14px;grid-template-rows:224px 224px}
.hero-portrait {border-radius:9px;box-shadow:0 8px 22px #11233c12;border-top:6px solid var(--gww-blue)}
.hero-portrait-0 {border-radius:9px;margin-top:0;border-top-color:var(--gww-red)}
.hero-portrait-1 {margin-right:15px}
.hero-portrait-2 {margin-left:15px;border-top-color:var(--gww-green)}
.hero-photo-caption strong {font-weight:700;font-size:23px;letter-spacing:-.5px}
.hero-portrait-0 .hero-photo-caption strong {font-size:27px}
.hero-photo-caption>span {font-size:8px;letter-spacing:1.5px}
.century-seal {background:var(--gww-blue);color:white;box-shadow:0 0 0 1px #0c1c8c2a;border:5px solid #fff;transform:rotate(-9deg)}
.century-seal strong {font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:33px}
.century-seal span {font-size:6px;letter-spacing:.8px}
.hero-art-footer {font-family:var(--font-body);font-size:11px;font-style:normal;color:#536179}
.archive-numbers>div,.archive-numbers>p {border-color:var(--line)}
.archive-numbers>div strong {font-family:var(--font-display);font-weight:800;letter-spacing:-2px;font-size:43px}
.archive-numbers>div:nth-child(1) strong {color:var(--gww-red)}
.archive-numbers>div:nth-child(2) strong {color:var(--gww-blue)}
.archive-numbers>div:nth-child(3) strong {color:var(--gww-green)}
.archive-numbers>div span {color:#536179;font-size:11px}
.archive-numbers>p {font-family:var(--font-body);font-size:17px;font-weight:700;color:var(--gww-blue)}
.archive-numbers>p em {color:var(--gww-green);font-style:normal;font-weight:700}
.collection-section {background:#f5f7fb;border-top:1px solid #e3e9f0;padding-top:56px}
.collection-heading h2,.story-content h2,.century-heading h2,.contribute-inner h2 {font-weight:800;letter-spacing:-2px}
.collection-heading h2 {color:var(--gww-blue);font-size:43px}
.collection-heading p,.small-note,.saved-link {color:#536179}
.saved-link {color:var(--gww-blue);font-weight:700}
.saved-link>span {background:#e5eafb;color:var(--gww-blue)}
.category-strip {gap:7px}
.category-chip {background:#fff;border-color:#d4ddea;color:#40516d;border-radius:5px;font-weight:600}
.category-chip.active {background:var(--gww-blue);border-color:var(--gww-blue);color:#fff}
.category-chip:hover:not(.active) {border-color:var(--gww-blue);color:var(--gww-blue);background:#fff}
.search-field,.select-wrap {background:#fff;border-color:#d4ddea;border-radius:5px}
.search-field:focus-within {border-color:var(--gww-blue)}
.collection-tabs button.active {color:var(--gww-blue);border-color:var(--gww-red)}
.view-toggle {border-color:#d4ddea;background:#fff;border-radius:5px}
.view-toggle button.active {background:var(--gww-blue);color:#fff}
.profile-card {border:1px solid #dfe5ed;border-radius:8px;background:#fff;box-shadow:0 3px 10px #12244403}
.profile-card:hover {border-color:#bac8df;box-shadow:0 12px 28px #12244412;transform:translateY(-4px)}
.card-content h3 {font-weight:700;letter-spacing:-.5px;color:var(--gww-blue)}
.card-content p,.card-bottom {color:#59677b}
.field-tag {color:var(--gww-blue);background:#fffffff2;border-radius:4px;font-weight:600}
.card-reveal {background:var(--gww-blue);color:#fff}
.save-button.is-saved {background:var(--gww-red);border-color:var(--gww-red);color:#fff}
.portrait-missing {--portrait-color:var(--gww-blue)!important;background:#edf1fa}
.portrait-monogram {color:var(--gww-blue)}
.portrait-note {color:var(--gww-blue);background:#ffffffe6}
.card-bottom>svg {color:var(--gww-green)}
.century-section {background:var(--gww-blue);color:#fff}
.century-heading h2 {color:#fff;font-style:normal;font-size:45px}
.century-heading p,.century-heading .eyebrow,.timeline-note {color:#d9e4ff}
.era-tabs {border-color:#ffffff3a}
.era-tabs button {color:#d9e4ff}
.era-tabs button.active {color:#fff}
.era-tabs button.active i {background:var(--gww-red);box-shadow:0 0 0 5px var(--gww-blue)}
.era-tabs button:before,.era-tabs button:after {border-color:#ffffff4d}
.era-panel {border-color:#ffffff35}
.era-story .eyebrow {color:#f7c5ce}
.era-story h3 {color:#fff;font-weight:700;letter-spacing:-1px}
.era-story p {color:#d9e4ff}
.era-story .text-link {color:#fff;border-color:#ffffff60}
.era-person {background:#fff;border-color:#ffffff30;color:var(--ink);border-radius:7px;overflow:hidden}
.era-person strong {font-weight:700;color:var(--gww-blue)}
.era-person small {color:#59677b}
.milestone-year {color:var(--gww-red);background:#fff;font-weight:700}
.story-section {background:#fff}
.story-kicker {color:var(--gww-green)}
.story-content h2 {color:var(--gww-blue);font-size:49px;line-height:1.12}
.story-content h2 em {color:var(--gww-green);font-style:normal;font-weight:800}
.story-lead {color:var(--gww-blue);font-weight:700}
.story-content p,.story-body p {color:#536179;line-height:1.9}
.story-body p {margin-bottom:20px}
.story-body a {text-decoration:underline;color:var(--gww-blue)}
.contribute-section {background:var(--gww-green);color:#fff;border-top:8px solid #fff}
.contribute-inner h2 {font-size:53px;color:#fff}
.contribute-inner .eyebrow {color:#fff}
.contribute-inner p,.review-note,.contribute-side {color:#e4f0df}
.contribute-mark {color:#fff;opacity:.5}
.flag-lines i {background:var(--gww-red)}
.flag-lines i:nth-child(2) {background:var(--gww-blue)}
.flag-lines i:nth-child(3) {background:#fff}
.site-footer {max-width:none;background:#10204f;color:#fff;padding:0;border:0}
.footer-main,.footer-bottom {max-width:1376px;margin:0 auto;padding-left:64px;padding-right:64px;border-color:#ffffff25}
.site-footer .brand>span:last-child,.site-footer .brand-symbol>span {color:#fff}
.site-footer .brand em {color:#c6dfbd}
.footer-main p,.footer-main button,.footer-bottom {color:#d1dbef}
.footer-main button:hover,.footer-bottom a:hover {color:#fff}
.footer-bottom {padding-top:24px;padding-bottom:26px}
.footer-credit {max-width:1376px;margin:0 auto;padding:18px 64px 22px;border-top:1px solid #ffffff25;text-align:center;color:#d1dbef;font-size:12px;line-height:1.8;overflow-wrap:break-word}
.archive-dialog {background:#fff;color:var(--ink);border-radius:9px}
.profile-detail-body h2,.info-content h2,.nomination-content h2,.nomination-success h2 {color:var(--gww-blue);font-weight:800;letter-spacing:-1.5px}
.detail-field,.detail-dates,.detail-role {color:#536179}
.detail-field {color:var(--gww-green)}
.detail-tags span {background:#edf1fb;color:var(--gww-blue)}
.photo-credit a,.source-list a,.correction-link button {color:var(--gww-blue)}
.form-section-label {color:var(--gww-blue)}
.form-section-label>span {color:var(--gww-red)}
.gww-single .profile-detail-body>h1 {font-weight:800;color:var(--gww-blue);letter-spacing:-1px}
.toast {background:var(--gww-blue);color:#fff}
@media(max-width:1050px) {
  .hero {gap:28px}.hero h1 {font-size:clamp(49px,5.5vw,66px);letter-spacing:-2.6px}
  .hero-portraits {grid-template-rows:195px 195px}.hero-buttons {gap:16px}.hero-buttons .text-link {font-size:10px}
  .footer-main,.footer-bottom {padding-left:32px;padding-right:32px}
}
@media(max-width:700px) {
  .site-header:before {height:9px}.header-inner {min-height:80px;padding-top:15px;padding-bottom:15px}
  .brand>span:last-child {font-size:21px}.brand em {font-size:11px}.header-nominate {font-size:10px}
  .brand:has(.brand-logo) {gap:9px}.brand-logo {width:65px;height:65px}.brand:has(.brand-logo)>span:last-child {font-size:18px}.brand:has(.brand-logo) em {font-size:9px;letter-spacing:1px}
  .header-inner:has(.brand-logo) {padding-top:7px;padding-bottom:7px}
  .hero {padding-top:38px;gap:35px}.hero h1 {font-size:clamp(40px,10.7vw,64px);letter-spacing:-2.2px;line-height:1.08}
  .hero-description {font-size:14px;max-width:100%}.hero-buttons {flex-wrap:wrap;gap:12px 20px}
  .hero-portraits {grid-template-rows:180px 180px;gap:11px}.hero-portrait-1 {margin-right:7px}.hero-portrait-2 {margin-left:7px}
  .hero-photo-caption strong {font-size:21px}.hero-portrait-0 .hero-photo-caption strong {font-size:23px}
  .collection-heading h2 {font-size:34px}.story-content h2 {font-size:39px}.century-heading h2 {font-size:37px}.contribute-inner h2 {font-size:39px}
  .archive-numbers>div strong {font-size:33px}.archive-numbers>div span {font-size:9px}
  .footer-main,.footer-bottom {padding-left:22px;padding-right:22px}.footer-main {padding-top:35px;padding-bottom:28px}
}
@media(max-width:740px){.menu-toggle{width:44px;height:44px}.header-actions{flex-shrink:0}}
@media(max-width:380px){
  .brand-logo{width:58px;height:58px}.brand:has(.brand-logo)>span:last-child{font-size:16px}
  .archive-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}
  .archive-numbers>div{min-width:0;flex-direction:column;align-items:flex-start;gap:5px}
  .archive-numbers>div span{font-size:9px;max-width:75px}
}
@media(max-width:1100px) {
  html {scroll-padding-top:235px}
  .header-search {padding:8px clamp(16px,3vw,32px);gap:8px}
  .header-search .search-field {padding:0 10px;gap:8px}
  .header-search input {font-size:16px}
  .header-search .header-search-submit {padding:10px 14px;gap:8px}
  .footer-credit {padding:18px 22px 22px}
  .header-inner,.header-inner:has(.brand-logo) {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:8px clamp(16px,3vw,32px) 10px;min-height:0}
  .header-inner .brand {grid-column:1;grid-row:1;min-width:0}
  .header-inner .brand-logo {width:65px;height:65px}
  .header-actions {display:contents}
  .menu-toggle {display:inline-flex;grid-column:2;grid-row:1;width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:5px;color:var(--gww-blue)}
  .header-nominate {display:inline-flex;grid-column:1 / -1;grid-row:2;justify-content:center;min-height:46px;padding:12px 16px;gap:12px;font-size:14px}
  .header-nominate>svg {width:18px;height:18px}
  .main-nav {display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:14px 24px 20px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #15244412;flex-direction:column;align-items:stretch;gap:4px;max-height:calc(100dvh - 225px);overflow-y:auto}
  .main-nav.nav-open {display:flex}
  .main-nav a {min-height:44px;padding:13px 4px;font-size:14px}
  .nav-nominate {justify-content:center;margin-top:10px}
}
@media(max-width:380px) {.header-inner .brand-logo {width:58px;height:58px}}

.main-nav .nav-nominate {padding:12px 18px;color:#fff}
.main-nav .nav-nominate:hover {color:#fff}
.nomination-page {display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.5fr);gap:48px;padding-top:52px;padding-bottom:72px;align-items:start}
.nomination-page-intro>.text-link {margin-bottom:32px}
.nomination-page-intro>.eyebrow {display:block;color:var(--gww-green);font-size:10px}
.nomination-page-intro h1 {font-size:46px;line-height:1.1;letter-spacing:-2px;color:var(--gww-blue);margin:18px 0 24px;font-weight:800}
.nomination-page-intro>p {font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:16px}
.nomination-page-card {min-width:0;background:#fff;border:1px solid var(--line);border-top:5px solid var(--gww-red);border-radius:8px;box-shadow:0 8px 30px #15244408;overflow:hidden}
.nomination-page-card .nomination-content,.nomination-page-card .nomination-success {padding:34px}
.nomination-page-card .nomination-content>h2 {font-size:36px}
.nomination-page-card .form-intro {color:var(--muted)}
.nomination-page-card .form-field {font-size:13px}
.nomination-page-card .form-field input,.nomination-page-card .form-field textarea,.nomination-page-card .form-field select {font-size:15px}
.nomination-share {margin-top:28px;padding:22px;background:#f0f4f8;border:1px solid var(--line);border-radius:6px}
.nomination-share label {display:block;color:var(--gww-blue);font-weight:700;font-size:13px;margin-bottom:10px}
.nomination-share input {display:block;width:100%;min-width:0;background:#fff;border:1px solid #bcc9d9;border-radius:4px;padding:10px;font-size:13px;min-height:44px;color:var(--ink)}
.nomination-share .button {margin-top:12px;min-height:44px;font-size:12px}
.nomination-share [role=status] {display:block;font-size:12px;color:var(--gww-green);margin-top:10px}
.nomination-loading {padding:34px;color:var(--muted)}
.correction-link>a {display:inline-flex;align-items:center;gap:6px;color:var(--gww-blue);font-size:11px;font-weight:700}
.photo-needed-list>a {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--gww-blue)}
@media(max-width:900px) {
  .nomination-page {grid-template-columns:1fr;gap:28px;padding-top:30px;padding-bottom:45px;max-width:760px}
  .nomination-page-intro>.text-link {margin-bottom:24px}
  .nomination-page-intro h1 {font-size:38px;letter-spacing:-1.4px}
  .nomination-share {padding:18px;margin-top:20px}
  .nomination-page-card .nomination-content,.nomination-page-card .nomination-success {padding:26px 22px}
  .nomination-page-card .nomination-content>h2 {font-size:32px}
  .nomination-page-card .form-field input,.nomination-page-card .form-field textarea,.nomination-page-card .form-field select {font-size:16px}
}

/* Keep the complete photograph visible in every archive view. */
.portrait>img,
.hero-portrait .portrait>img,
.profile-detail-visual>.portrait>img {
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  background:#eef2f8;
}
.portrait:not(.portrait-missing)>.portrait-monogram {display:none}
.hero-art {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
.hero-portraits {grid-column:1 / -1}
.hero-portrait {display:grid;grid-template-rows:minmax(0,1fr) auto;background:#eef2f8}
.hero-portrait .portrait {min-height:0}
.hero-portrait:after {display:none}
.hero-portrait .hero-photo-caption,
.hero-portrait-0 .hero-photo-caption {position:relative;left:auto;right:auto;bottom:auto;padding:12px 36px 12px 14px;background:#fff;color:var(--gww-blue)}
.hero-photo-caption>svg {right:12px;bottom:14px}
.century-seal {position:relative;left:auto;top:auto;grid-column:2;grid-row:2;width:82px;height:82px;margin-top:14px;transform:none}
.hero-art-footer {grid-column:1;grid-row:2;padding:14px 16px 0 0}
.profile-detail-visual {align-self:start;height:auto;min-height:0;background:#eef2f8}
.profile-detail-visual>.portrait,
.gww-single .profile-detail-visual>.portrait {position:relative;inset:auto;height:clamp(320px,65vh,660px);min-height:0}
.profile-detail-visual .profile-visual-label {position:static;left:auto;right:auto;bottom:auto;width:auto;margin:0;padding:14px 18px;background:#fff;border-top:1px solid var(--line);color:var(--gww-blue)}
@media(max-width:740px) {
  .profile-detail-visual>.portrait,
  .gww-single .profile-detail-visual>.portrait {height:clamp(260px,75vw,420px);min-height:0}
  .hero-portrait .hero-photo-caption,
  .hero-portrait-0 .hero-photo-caption {padding:10px 28px 10px 11px}
  .hero-photo-caption>svg {right:9px;bottom:11px;width:15px;height:15px}
}

