:root {
  --navy: #24394c;
  --ink: #304b61;
  --muted: #617689;
  --blue: #2e66a3;
  --blue-deep: #204e84;
  --blue-soft: #eaf2fb;
  --teal: #3c8496;
  --green: #6f927e;
  --line: #dbe5ec;
  --paper: #f4f8fb;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fff; font-size: 1rem; line-height: 1.6; }
a { color: inherit; }
img { max-width: 100%; }
.topline { height: 5px; background: linear-gradient(90deg, var(--blue) 0 58%, #7a9cb7 58% 78%, var(--teal) 78%); }
.site-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.97); box-shadow: 0 1px 0 rgba(36,57,76,.03); }
.nav-wrap { max-width: 1200px; min-height: 89px; margin: auto; padding: 10px 30px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: block; flex: 0 0 auto; text-decoration: none; }
.brand-crop { display: block; width: 222px; height: 77px; overflow: hidden; }
.brand-image { display: block; width: 222px; max-width: none; height: auto; margin-top: -2px; }
.nav-links { display: flex; align-items: center; gap: 21px; }
.nav-links a { color: var(--navy); font-size: .91rem; font-weight: 700; text-decoration: none; }
.nav-links a:hover, .nav-links a:focus-visible { color: var(--blue); }
.nav-links .nav-cta { display: inline-flex; align-items: center; gap: 8px; min-height: 43px; padding: 9px 14px; border: 1px solid #9bb4c8; border-radius: 7px; color: var(--blue-deep); }
.nav-links .nav-cta:hover, .nav-links .nav-cta:focus-visible { border-color: var(--blue); background: var(--blue-soft); }
.nav-toggle { display: none; border: 1px solid var(--line); border-radius: 7px; padding: 7px 12px; background: #fff; color: var(--navy); font: inherit; font-weight: 700; }
main { overflow: hidden; }
.hero { position: relative; background: #fff; }
.hero::after { content: ""; position: absolute; right: -150px; top: -180px; width: 620px; height: 620px; border: 1px solid rgba(46,102,163,.16); border-radius: 50%; box-shadow: 0 0 0 32px rgba(46,102,163,.035), 0 0 0 78px rgba(60,132,150,.035), 0 0 0 132px rgba(46,102,163,.02); pointer-events: none; }
.hero-inner { position: relative; z-index: 1; max-width: 1200px; min-height: 560px; margin: auto; padding: 82px 30px 66px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr); align-items: center; gap: 44px; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow { color: var(--blue-deep); text-transform: uppercase; font-size: .75rem; font-weight: 850; letter-spacing: .16em; }
h1 { max-width: 720px; margin: 14px 0 20px; color: var(--navy); font-size: clamp(2.55rem, 5.1vw, 4.55rem); line-height: 1.04; letter-spacing: -.055em; }
.hero-lead { max-width: 650px; margin: 0; color: #435e73; font-size: clamp(1.08rem, 1.45vw, 1.23rem); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 11px 17px; border-radius: 7px; text-decoration: none; font-weight: 780; }
.button span { margin-left: 9px; font-size: 1.1em; line-height: 1; }
.button-primary { background: var(--blue); color: #fff; box-shadow: 0 7px 14px rgba(46,102,163,.17); }
.button-primary:hover, .button-primary:focus-visible { background: var(--blue-deep); }
.button-secondary { border: 1px solid #9fb2c1; color: var(--blue-deep); background: #fff; }
.button-secondary:hover, .button-secondary:focus-visible, .button-outline:hover, .button-outline:focus-visible { border-color: var(--blue); background: var(--blue-soft); }
.button-outline { border: 1px solid #a4b8c8; color: var(--blue-deep); background: #fff; }
.button-light { background: #fff; color: var(--blue-deep); }
.hero-note { display: inline-flex; align-items: center; gap: 9px; margin: 23px 0 0; color: #5b7182; font-size: .9rem; font-weight: 650; }
.note-mark { display: grid; place-items: center; width: 23px; height: 23px; border: 1px solid #80a395; border-radius: 50%; color: #4c7c67; font-size: .82rem; }
.hero-visual { position: relative; min-height: 385px; display: grid; place-items: center; }
.hero-ident { display: block; width: min(100%, 500px); height: auto; opacity: .2; mix-blend-mode: multiply; filter: saturate(.72) contrast(.94); transform: translate(3%, 2%); }
.hero-core { position: relative; z-index: 2; display: grid; place-items: center; width: 204px; height: 204px; border: 2px solid var(--blue); border-radius: 50%; background: rgba(255,255,255,.9); box-shadow: 0 0 0 14px rgba(46,102,163,.06), 0 0 0 29px rgba(60,132,150,.045); text-align: center; }
.hero-core .core-label { color: var(--blue); font-size: .8rem; font-weight: 850; letter-spacing: .18em; }
.hero-core strong { margin-top: -6px; color: var(--navy); font-size: 3rem; line-height: .95; letter-spacing: -.08em; }
.hero-core .core-rule { width: 65px; height: 2px; margin: 6px 0 2px; background: var(--teal); }
.hero-core small { max-width: 130px; color: #657b8b; font-size: .66rem; line-height: 1.25; }
.hero-orbit { position: absolute; border: 1px solid rgba(46,102,163,.22); border-radius: 50%; transform: rotate(-18deg); }
.orbit-one { width: 330px; height: 180px; }
.orbit-two { width: 410px; height: 250px; border-color: rgba(60,132,150,.19); transform: rotate(34deg); }
.orbit-three { width: 440px; height: 300px; border-color: rgba(46,102,163,.12); transform: rotate(-52deg); }
.hero-node { position: absolute; z-index: 3; display: grid; place-items: center; width: 47px; height: 47px; border: 1px solid #a5bdcf; border-radius: 50%; background: #fff; color: var(--blue-deep); font-size: .65rem; font-weight: 850; letter-spacing: .04em; box-shadow: 0 4px 11px rgba(36,57,76,.08); }
.node-one { top: 48px; left: 20%; }.node-two { top: 78px; right: 9%; }.node-three { bottom: 60px; left: 9%; }.node-four { bottom: 29px; right: 18%; }
.signal-band { max-width: 1170px; margin: 0 auto 20px; padding: 0 8px; display: grid; grid-template-columns: repeat(4,1fr); overflow: hidden; border-radius: 13px; background: linear-gradient(102deg, var(--blue) 0%, #3d7796 52%, var(--teal) 100%); color: #fff; box-shadow: 0 10px 26px rgba(36,57,76,.12); }
.signal-item { display: flex; align-items: center; gap: 12px; min-height: 93px; padding: 17px 18px; }
.signal-item + .signal-item { border-left: 1px solid rgba(255,255,255,.28); }
.signal-icon { display: grid; place-items: center; flex: 0 0 37px; width: 37px; height: 37px; border: 1px solid rgba(255,255,255,.78); border-radius: 50%; font-size: 1.12rem; }
.signal-item strong { display: block; font-size: .98rem; line-height: 1.15; }.signal-item div > span { display: block; margin-top: 5px; color: rgba(255,255,255,.82); font-size: .76rem; line-height: 1.25; }
.section { max-width: 1200px; margin: auto; padding: 66px 30px; }
.section-heading-row { display: flex; align-items: end; justify-content: space-between; gap: 28px; }.section-heading-row > div { flex: 1 1 auto; }.section h2, .dashboard-section h2, .response-section h2 { margin: 8px 0 12px; color: var(--navy); font-size: clamp(1.8rem, 3vw, 2.45rem); line-height: 1.13; letter-spacing: -.035em; }.section-lead { max-width: 500px; margin: 0; color: var(--muted); }
.intro-section { padding-top: 76px; }.intro-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 33px; }.story-card { min-height: 214px; padding: 24px; border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: 0 8px 22px rgba(36,57,76,.045); }.story-number { display: block; color: var(--blue); font-size: .76rem; font-weight: 850; letter-spacing: .12em; }.story-card h3 { margin: 24px 0 8px; color: var(--navy); font-size: 1.16rem; }.story-card p { margin: 0; color: var(--muted); }
.domains-section { padding-top: 46px; }.domain-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 14px; margin-top: 32px; }.domain-card { grid-column: span 2; display: grid; grid-template-columns: 58px 1fr; gap: 15px; min-height: 168px; padding: 20px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }.domain-card:nth-child(4), .domain-card:nth-child(5) { grid-column: span 3; }.domain-icon { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 50%; color: var(--blue-deep); font-size: .7rem; font-weight: 850; letter-spacing: .05em; }.domain-blue .domain-icon { background: #e7f0fb; }.domain-slate .domain-icon { background: #e9eef4; }.domain-teal .domain-icon { background: #e4f2f3; }.domain-green .domain-icon { background: #eaf4ee; }.domain-benchmark .domain-icon { background: #f1f3f5; }.domain-kicker { color: var(--blue-deep); font-size: .72rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }.domain-card h3 { margin: 4px 0 6px; color: var(--navy); font-size: 1.12rem; line-height: 1.25; }.domain-card p { margin: 0; color: var(--muted); font-size: .91rem; line-height: 1.45; }
.dashboard-section { background: #f2f7fb; border-top: 1px solid #e0ebf2; border-bottom: 1px solid #e0ebf2; }.dashboard-inner { padding-top: 66px; padding-bottom: 68px; }.dashboard-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; }.dashboard-heading .section-lead { max-width: 700px; }.dashboard-frame-wrap { position: relative; margin-top: 30px; min-height: 620px; border: 1px solid #cad9e4; border-radius: 13px; background: #fff; overflow: hidden; box-shadow: 0 10px 26px rgba(36,57,76,.07); }.dashboard-frame { display: block; width: 100%; min-height: 620px; border: 0; background: #fff; }.dashboard-fallback { display: none; position: absolute; inset: 50% auto auto 50%; width: min(90%, 470px); transform: translate(-50%,-50%); padding: 20px; border: 1px solid #d0dfe8; border-radius: 9px; background: rgba(255,255,255,.96); color: var(--muted); box-shadow: 0 6px 18px rgba(36,57,76,.1); text-align: center; }.dashboard-fallback strong, .dashboard-fallback span { display: block; }.dashboard-fallback strong { color: var(--navy); }.dashboard-fallback span { margin-top: 6px; font-size: .92rem; }.dashboard-fallback a { display: inline-block; margin-top: 12px; color: var(--blue-deep); font-weight: 780; }.dashboard-footnote { margin: 13px 0 0; color: #6a7f8e; font-size: .82rem; }.live-dot { display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #6d9a7c; }
.response-section { max-width: 1170px; margin: 0 auto; border-radius: 13px 13px 0 0; background: linear-gradient(105deg, var(--blue-deep), #3d7893 58%, var(--teal)); color: #fff; }.response-inner { display: flex; align-items: center; gap: 24px; padding: 30px 34px; }.response-copy { flex: 1 1 auto; }.response-section .eyebrow { color: #cfe0ef; }.response-section h2 { margin: 6px 0 7px; color: #fff; font-size: 1.52rem; }.response-section p { max-width: 690px; margin: 0; color: rgba(255,255,255,.86); line-height: 1.45; }.response-inner .button { flex: 0 0 auto; }
.closing-section { padding-top: 56px; padding-bottom: 60px; }.closing-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 50px; }.closing-grid h2 { max-width: 410px; }.closing-grid p { max-width: 690px; margin: 0; color: var(--muted); }.closing-grid p + p { margin-top: 12px; }.source-note { color: #6c8090; font-size: .88rem; }
.team-details { max-width: 690px; margin-top: 18px; border-top: 1px solid rgba(32, 68, 93, .14); padding-top: 11px; color: #607989; }.team-details summary { color: var(--blue-deep); cursor: pointer; font-size: .88rem; font-weight: 650; letter-spacing: .01em; list-style-position: outside; }.team-details summary::marker { color: var(--green); }.team-list { font-size: .78rem; line-height: 1.65; }
.hero-team { max-width: 560px; margin-top: 12px; border-top: 0; padding-top: 0; }.hero-team summary { font-size: .8rem; }
.footer { padding: 27px 30px; background: var(--paper); color: #63798a; font-size: .88rem; text-align: center; }.footer-inner { max-width: 1200px; margin: auto; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; }.footer a { color: var(--blue-deep); text-underline-offset: 3px; }
@media (max-width: 940px) { .nav-links { gap: 14px; }.hero-inner { grid-template-columns: 1fr .8fr; gap: 20px; }.hero-visual { transform: scale(.9); }.signal-item { padding: 15px 12px; }.signal-item div > span { font-size: .7rem; }.domain-grid { grid-template-columns: repeat(2,1fr); }.domain-card, .domain-card:nth-child(4), .domain-card:nth-child(5) { grid-column: span 1; } }
@media (max-width: 780px) { .nav-wrap { min-height: 78px; padding: 9px 22px; }.brand-crop { width: 188px; height: 66px; }.brand-image { width: 188px; }.nav-toggle { display: block; }.nav-links { display: none; order: 3; flex-basis: 100%; padding: 7px 0 11px; flex-direction: column; align-items: flex-start; gap: 10px; }.nav-links.open { display: flex; }.nav-wrap { flex-wrap: wrap; }.hero-inner { grid-template-columns: 1fr; padding: 64px 28px 40px; }.hero-visual { min-height: 300px; transform: scale(.86); }.signal-band { grid-template-columns: repeat(2,1fr); margin-left: 22px; margin-right: 22px; }.signal-item:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.28); }.signal-item:nth-child(4) { border-top: 1px solid rgba(255,255,255,.28); }.section { padding: 54px 28px; }.section-heading-row, .dashboard-heading { display: block; }.section-lead { max-width: 700px; margin-top: 15px; }.intro-grid { grid-template-columns: 1fr; }.story-card { min-height: 0; }.dashboard-heading .button { margin-top: 18px; }.response-section { margin-left: 22px; margin-right: 22px; }.response-inner { align-items: flex-start; flex-wrap: wrap; padding: 25px 23px; }.response-inner .button { width: 100%; }.closing-grid { grid-template-columns: 1fr; gap: 7px; } }
@media (max-width: 520px) { h1 { font-size: clamp(2.45rem, 12vw, 3.7rem); }.hero-inner { padding: 50px 22px 26px; }.hero-actions { flex-direction: column; }.hero-actions .button { width: 100%; }.hero-note { align-items: flex-start; font-size: .86rem; }.hero-visual { min-height: 250px; transform: scale(.7); margin-top: -12px; }.signal-band { grid-template-columns: 1fr; }.signal-item, .signal-item:nth-child(3), .signal-item:nth-child(4) { min-height: 72px; border-left: 0; border-top: 1px solid rgba(255,255,255,.28); }.signal-item:first-child { border-top: 0; }.section { padding: 44px 22px; }.domain-grid { grid-template-columns: 1fr; }.domain-card, .domain-card:nth-child(4), .domain-card:nth-child(5) { grid-column: 1; }.dashboard-frame-wrap, .dashboard-frame { min-height: 560px; }.dashboard-frame-wrap { margin-left: -2px; margin-right: -2px; }.footer { padding-left: 22px; padding-right: 22px; }.footer-inner { flex-direction: column; } }

/* BJS-style live aggregate dashboard: restrained, legible, and driven by approved REDCap summaries. */
.dashboard-status { margin-top: 28px; }.dashboard-status .status-mark { background: #6d9a7c; }.status-line { display: flex; align-items: flex-start; gap: 10px; color: var(--navy); }.status-mark { flex: 0 0 11px; height: 11px; margin-top: 8px; border-radius: 50%; }.status-line strong { font-size: .98rem; }.dashboard-section .source-note { margin-top: 2px; color: #708493; font-size: .8rem; }
.metric-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; margin-top: 22px; }.metric { padding: 18px 20px; border: 1px solid #d4e0e8; border-radius: 10px; background: rgba(255,255,255,.72); }.metric span { display: block; color: #63798a; font-size: .72rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }.metric strong { display: block; margin-top: 5px; color: var(--navy); font-size: 1.45rem; line-height: 1.2; }
.dashboard-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 16px; margin-top: 25px; }.data-panel { min-width: 0; padding: 23px 24px 21px; border: 1px solid #d4e0e8; border-radius: 13px; background: #fff; box-shadow: 0 8px 22px rgba(36,57,76,.045); }.map-panel { grid-column: span 6; }.chart-panel { grid-column: span 6; order: -1; }.technology-panel { grid-column: 1 / -1; }.data-panel-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }.data-panel h3 { margin: 4px 0 0; color: var(--navy); font-size: 1.22rem; line-height: 1.25; }.data-panel .panel-label { display: inline-flex; align-items: center; min-height: 25px; margin-top: 1px; padding: 3px 8px; border: 1px solid #d6e0e6; border-radius: 6px; background: #f7fafb; color: #536b7c; font-size: .65rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }.panel-intro { max-width: 64ch; margin: 11px 0 0; color: var(--muted); font-size: .9rem; line-height: 1.45; }.map-figure { position: relative; min-height: 294px; margin-top: 18px; overflow: hidden; border-radius: 10px; background: #eef4f9; }.network-map { display: block; width: 100%; height: auto; min-height: 294px; }.map-ocean { fill: #eef4f9; }.map-grid path { fill: none; stroke: #d8e2e9; stroke-width: 2; stroke-dasharray: 6 14; }.map-world-base { opacity: .54; filter: saturate(.4); pointer-events: none; }[data-map-points] circle { fill: var(--blue); stroke: #fff; stroke-width: 6; filter: drop-shadow(0 3px 4px rgba(36,57,76,.24)); }.viz-empty { position: absolute; inset: 50% auto auto 50%; width: min(88%,330px); padding: 13px 15px; transform: translate(-50%,-50%); border: 1px solid #d6e0e6; border-radius: 8px; background: rgba(255,255,255,.94); color: #5b7181; font-size: .84rem; line-height: 1.4; text-align: center; box-shadow: 0 5px 15px rgba(36,57,76,.08); }.map-footnote { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 15px; margin-top: 12px; color: #6a7f8e; font-size: .76rem; }.map-legend { display: inline-flex; align-items: center; gap: 7px; color: #506879; font-weight: 700; }.map-dot-swatch { display: inline-block; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 1px #86a9c8; }.map-land-swatch { display: inline-block; width: 12px; height: 10px; border: 1px solid #aabec9; border-radius: 3px; background: rgba(201,214,222,.52); }.country-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px 16px; margin: 15px 0 0; padding: 13px 0 0; border-top: 1px solid var(--line); list-style: none; }.country-list li { position: relative; display: flex; justify-content: space-between; gap: 10px; overflow: hidden; padding: 6px 8px; border-radius: 5px; color: #536b7c; font-size: .83rem; background: linear-gradient(90deg, rgba(46,102,163,.12) 0 var(--bar-width, 0%), transparent var(--bar-width, 0%) 100%); }.country-list strong { color: var(--navy); }
.bar-figure { position: relative; min-height: 244px; margin-top: 18px; }.bar-chart { display: grid; grid-template-columns: 1fr; gap: 12px; }.bar-row { display: grid; grid-template-columns: minmax(125px,.72fr) minmax(90px,1fr) auto; align-items: center; gap: 10px; min-width: 0; }.bar-label { overflow: hidden; color: #536b7c; font-size: .82rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }.hospital-bar-row { align-items: start; }.hospital-bar-row .bar-label { overflow: visible; line-height: 1.2; white-space: normal; }.hospital-bar-row .bar-track { margin-top: 4px; }.hospital-bar-row .bar-value { margin-top: 1px; }.bar-track { height: 11px; overflow: hidden; border-radius: 999px; background: #edf2f5; }.bar-fill { display: block; height: 100%; min-width: 3px; border-radius: inherit; background: linear-gradient(90deg,var(--blue),#5d94b5); }.bar-value { color: var(--navy); font-size: .84rem; font-weight: 850; }.chart-note { margin: 12px 0 0; color: #6a7f8e; font-size: .78rem; line-height: 1.4; }
.technology-chart { display: grid; gap: 14px; margin-top: 20px; }.technology-row { display: grid; grid-template-columns: minmax(155px,.7fr) minmax(260px,2fr) auto; align-items: center; gap: 13px; }.technology-label { color: var(--navy); font-size: .88rem; font-weight: 750; }.stacked-track { display: flex; height: 15px; overflow: hidden; border-radius: 999px; background: #edf2f5; }.stacked-segment { height: 100%; min-width: 0; }.seg-none { background: #cbd5db; }.seg-routine { background: var(--blue); }.seg-selective { background: #77a9c0; }.seg-planned { background: #95b69f; }.seg-unsure { background: #ead8b5; }.technology-total { color: var(--navy); font-size: .82rem; font-weight: 850; }.technology-legend { display: flex; flex-wrap: wrap; gap: 9px 18px; margin-top: 17px; padding-top: 14px; border-top: 1px solid var(--line); color: #64798a; font-size: .77rem; }.technology-legend span { display: inline-flex; align-items: center; gap: 6px; }.legend-swatch { display: inline-block; width: 10px; height: 10px; border-radius: 2px; }.swatch-none { background: #cbd5db; }.swatch-routine { background: var(--blue); }.swatch-selective { background: #77a9c0; }.swatch-planned { background: #95b69f; }.live-dot { display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #6d9a7c; }
@media (max-width: 830px) { .metric-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }.dashboard-grid { grid-template-columns: 1fr; }.map-panel,.chart-panel,.technology-panel { grid-column: 1 / -1; }.country-list { grid-template-columns: repeat(2,minmax(0,1fr)); }.technology-row { grid-template-columns: minmax(130px,.7fr) minmax(170px,2fr) auto; } }
@media (max-width: 560px) { .metric-grid { grid-template-columns: 1fr; }.data-panel { padding: 19px 18px 18px; }.map-figure,.network-map { min-height: 240px; }.country-list { grid-template-columns: 1fr; }.bar-row { grid-template-columns: minmax(105px,.7fr) minmax(80px,1fr) auto; }.technology-row { grid-template-columns: 1fr; gap: 6px; }.technology-total { justify-self: end; margin-top: -1px; }.technology-legend { gap: 8px 12px; } }

/* Partner mark and domain icon system: restrained linework derived from the supplied EGS-READI reference. */
.brand-group { display: flex; align-items: center; gap: 17px; min-width: 0; }
.brand-divider { width: 1px; height: 45px; background: var(--line); }
.partner-brand { display: flex; align-items: center; width: 145px; height: 75px; }
.partner-brand img { display: block; width: 145px; height: auto; max-height: 75px; object-fit: contain; }
.domain-icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.domain-icon svg text, .technology-icon svg text { fill: currentColor; stroke: none; font: 800 8px/1 Inter, ui-sans-serif, system-ui, sans-serif; }
.technology-row { grid-template-columns: minmax(185px,.7fr) minmax(260px,2fr) auto; }
.technology-label { display: flex; align-items: center; gap: 10px; }
.technology-icon { display: grid; flex: 0 0 30px; place-items: center; width: 30px; height: 30px; border: 1px solid #c5d4de; border-radius: 50%; background: #f4f8fb; color: var(--blue-deep); }
.technology-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 780px) { .brand-group { gap: 11px; }.brand-crop { width: 162px; height: 60px; }.brand-image { width: 162px; }.brand-divider { height: 34px; }.partner-brand, .partner-brand img { width: 106px; max-height: 58px; } }
