
html { scroll-behavior: smooth; }
/* team portraits run in full colour; the leadership strip keeps a light wash so it separates from the dark ground */
#team .duotone::after, #projects .duotone::after, #leadership .duotone::after { display: none; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { margin: 0; text-wrap: pretty; background: #f2f2f3; font-family: 'Manrope', system-ui, sans-serif; font-weight: 400; letter-spacing: 0.004em; -webkit-font-smoothing: antialiased; }
.nav-brand, .btn, .tag, .input { font-family: 'Manrope', system-ui, sans-serif !important; }
.nav-brand { font-weight: 500 !important; letter-spacing: -0.01em !important; text-transform: none !important; }
.btn { font-weight: 500 !important; letter-spacing: 0 !important; text-transform: none !important; }
.tag { font-weight: 500 !important; letter-spacing: 0.02em !important; }
a { color: #416180; }
a:hover { color: #2c455d; }
[data-logos] { display: grid; gap: 10px; grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 900px) { [data-logos] { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { [data-logos] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
[data-regions] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(20px, 3vw, 36px); align-items: start; }
[data-regions] > li > h3 { min-height: 52px; }
[data-regions] > li { padding-top: 0; }
@media (max-width: 1000px) { [data-regions] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { [data-regions] { grid-template-columns: minmax(0, 1fr); } }
[data-facts] > div { min-width: 0; }
[data-facts] [data-count] { white-space: nowrap; font-size: clamp(30px, 3vw, 50px); }
[data-facts] p { font-size: 16px; line-height: 24px; }
@media (max-width: 900px) {
  [data-facts] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-facts] > div:nth-child(3) { border-top: 1px solid var(--color-divider); }
  [data-facts] > div:nth-child(4) { border-top: 1px solid var(--color-divider); }
}
/* — mobile pass — */
.nav { flex-wrap: wrap; row-gap: 10px; }
@media (max-width: 900px) {
  .nav > a:not(.btn) { display: none; }        /* the four section links collapse; brand + action stay */
  .nav .nav-brand img { height: 34px; }
  .nav .btn { margin-left: auto; }
}
@media (max-width: 560px) {
  .nav .nav-brand img { height: 30px; }
  .nav .btn { padding-inline: 14px; box-shadow: none !important; }
  [data-facts] > div { padding: 20px 10px 22px !important; }
  [data-facts] [data-count] { font-size: 30px; }
  [data-facts] p { font-size: 15px; line-height: 22px; }
  [data-logos] { gap: 8px; }
  [data-logos] > div { grid-template-rows: 56px 38px !important; padding: 12px 10px !important; }
  [data-regions] { gap: 26px; }
}
@media (max-width: 700px) { [data-team-grid] { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 700px) {
  #team figure { max-width: 380px; margin-inline: auto !important; }
  #team h3, #team p { text-align: center; }
}
  
.sa-slot { background: transparent; }
.sa-slot img { display: block; }
.sa-h1:hover { background: var(--color-accent-800); border-color: var(--color-accent-900); }
.sa-h2:hover { background: color-mix(in srgb, var(--color-bg) 14%, transparent); border-color: var(--color-bg); }
