/* Electric Sheep's editorial layer over official Carbon g100 tokens and components. */
:root {
  --es-accent: #ffb900;
  --cds-background-brand: #ffb900;
  --cds-border-interactive: #ffb900;
  --cds-button-primary: #ffb900;
  --cds-button-primary-hover: #ffca40;
  --cds-button-primary-active: #e6a700;
  --cds-interactive: #ffb900;
  --cds-link-primary: #ffb900;
  --cds-link-primary-hover: #ffca40;
  --cds-focus: #ffb900;
  --background-1: var(--cds-background);
  --background-2: var(--cds-layer-01);
  --background-3: #0f0f0f;
  --card-background: var(--cds-layer-01);
  --foreground-1: var(--cds-text-primary);
  --foreground-2: var(--cds-text-secondary);
  --foreground-3: var(--cds-text-secondary);
  --stroke-1: var(--cds-border-strong-01);
  --stroke-2: var(--cds-border-subtle-01);
  --stroke-accessible: var(--cds-border-strong-01);
  --brand: var(--cds-interactive);
  --brand-hover: var(--cds-button-primary-hover);
  --brand-pressed: var(--cds-button-primary-active);
  --brand-foreground: var(--cds-link-primary);
  --on-brand: var(--cds-text-on-color);
  --font: 'IBM Plex Sans', sans-serif;
  --display-font: 'IBM Plex Sans', sans-serif;
  --radius-small: 0;
  --radius-medium: 0;
}
html { scroll-padding-top: 64px; }
body { background: var(--cds-background); color: var(--cds-text-primary); font-family: var(--font); line-height: 1.5; }
::selection { background: var(--es-accent); color: #161616; }
:focus-visible { outline-color: var(--cds-focus); }
.container { width: min(1312px, calc(100% - 64px)); }
.skip-link { border-radius: 0; background: var(--cds-background-inverse); color: var(--cds-text-inverse); }
.carbon-icon { display: inline-block; width: 16px; height: 16px; flex: 0 0 16px; background: currentColor; -webkit-mask: var(--icon) center / contain no-repeat; mask: var(--icon) center / contain no-repeat; }
.icon-open { --icon: url('/assets/carbon/arrow-up-right.svg'); }
.icon-right { --icon: url('/assets/carbon/arrow-right.svg'); }
.icon-down { --icon: url('/assets/carbon/arrow-down.svg'); }
.icon-navigation { --icon: url('/assets/carbon/menu.svg'); width: 20px; height: 20px; flex-basis: 20px; }
.menu-toggle[aria-expanded="true"] .icon-navigation { --icon: url('/assets/carbon/close.svg'); }
.icon-local-language { --icon: url('/assets/carbon/language.svg'); }
.icon-database { --icon: url('/assets/carbon/data-base.svg'); }
.icon-pulse { --icon: url('/assets/carbon/health-cross.svg'); }
.icon-molecule { --icon: url('/assets/carbon/chemistry.svg'); }
.icon-local-language, .icon-database, .icon-pulse, .icon-molecule { width: 24px; height: 24px; flex-basis: 24px; }
.site-header { background: #161616; border-bottom-color: #393939; }
.article-progress { position: absolute; inset: auto 0 -1px; height: 2px; overflow: hidden; pointer-events: none; }
.article-progress span { display: block; width: 100%; height: 100%; background: var(--es-accent); transform: scaleX(0); transform-origin: left center; }
.nav-wrap { min-height: 64px; }
.site-header .brand { padding-right: 32px; border-right: 1px solid #393939; }
.brand { gap: 12px; }
.brand img { border-radius: 0; }
.brand-name { font-size: .875rem; font-weight: 600; letter-spacing: .04em; }
.nav-wrap nav { align-self: stretch; gap: 0; }
.nav-wrap nav a { min-height: 64px; padding: 0 24px; border-left: 1px solid #393939; border-radius: 0; }
.nav-wrap nav a:hover { background: #353535; }
.nav-wrap nav a.active::after { bottom: 0; left: 0; right: 0; height: 3px; border-radius: 0; background: var(--cds-interactive); }
.nav-wrap nav .nav-contact { min-width: 172px; margin-left: 0; border: 0; background: var(--cds-interactive); color: #161616; justify-content: space-between; }
.nav-wrap nav .nav-contact:hover { background: var(--cds-button-primary-hover); }
.nav-wrap nav .nav-contact.active { background: var(--cds-interactive); color: #161616; }
.nav-wrap nav .nav-contact.active::after { display: block; background: #161616; }
.hero { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: stretch; gap: 0; min-height: 620px; padding-block: 72px 88px; }
.hero-copy { display: flex; flex-direction: column; align-items: flex-start; padding: 8px 72px 0 0; }
.eyebrow { display: flex; align-items: center; gap: 12px; color: var(--cds-text-secondary); font-size: .75rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.eyebrow::before { content: ''; width: 24px; height: 2px; background: var(--es-accent); }
.hero h1 { margin: 24px 0 28px; font-size: clamp(3.75rem, 6vw, 6rem); font-weight: 300; line-height: 1.04; letter-spacing: -.045em; text-wrap: pretty; }
.hero-description { color: var(--cds-text-secondary); font-size: clamp(1.125rem, 1.5vw, 1.25rem); line-height: 1.5; }
.hero-actions { margin-top: auto; padding-top: 48px; gap: 24px; }
.cds--btn { gap: 28px; justify-content: space-between; text-align: left; border-radius: 0; }
.cds--btn--primary, .cds--btn--primary:hover, .cds--btn--primary:active { color: #161616; }
.cds--btn .carbon-icon { margin-left: auto; }
.text-link, .article-more, .collection-link { color: var(--cds-link-primary); }
.hero-visual { min-height: 0; border: 0; border-radius: 0; background: var(--cds-layer-01); }
.visual-heading { min-height: 48px; align-items: center; background: var(--cds-layer-01); border-bottom-color: var(--cds-border-subtle-01); font-weight: 400; }
.visual-heading > span:first-child { color: var(--cds-text-primary); }
.art-frame { min-height: 300px; background: #161616; }
.data-art { filter: invert(1) grayscale(1) contrast(1.25) brightness(.63); }
.art-frame::after { position: absolute; inset: 0; content: ''; background: linear-gradient(145deg, rgba(255,185,0,.16), transparent 48%), linear-gradient(0deg, rgba(22,22,22,.35), transparent 45%); pointer-events: none; }
.visual-footer { align-items: end; border-top-color: var(--cds-border-subtle-01); }
.big-number { font-size: clamp(3rem, 4vw, 4.5rem); font-weight: 300; letter-spacing: -.04em; line-height: 1; }
.big-number > span { color: var(--es-accent); }
.number-label { margin-top: 10px; }
.focus-strip { background: var(--cds-layer-01); }
.focus-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; padding: 0; }
.focus-grid > * { min-height: 104px; padding: 24px; border-right: 1px solid var(--cds-border-subtle-01); }
.focus-grid > :first-child { padding-left: 0; }
.focus-grid > :last-child { border-right: 0; }
.focus-symbol { border: 0; background: transparent; color: var(--es-accent); }
.section { padding-block: 96px; }
.section-heading { margin-bottom: 40px; }
h2 { font-size: clamp(2rem, 3vw, 3.5rem); font-weight: 300; line-height: 1.15; letter-spacing: -.025em; }
.section-description { max-width: 570px; }
.project-grid { gap: 1px; border: 1px solid var(--cds-border-subtle-01); background: var(--cds-border-subtle-01); }
.project { min-height: 300px; padding: 32px; border: 0; border-radius: 0; background: var(--cds-layer-01); }
.project:hover, .project:focus-visible { background: var(--cds-layer-hover-01); border-color: transparent; }
.project-header { align-items: flex-start; gap: 16px; }
.project-icon { width: 48px; height: 48px; flex-basis: 48px; border-radius: 0; background: transparent; color: var(--cds-icon-primary); }
.project-category { margin-bottom: 8px; }
.project-header h3 { font-size: 1.75rem; font-weight: 400; }
.project-description { margin: 32px 0 36px; line-height: 1.5; }
.project-footer { color: var(--cds-link-primary); }
.project:hover .project-footer { color: var(--cds-link-primary); }
.partners-section { border-block: 1px solid var(--cds-border-subtle-01); }
.partners-section .section { padding-block: 88px 96px; }
.partner-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 1px; list-style: none; background: var(--cds-border-subtle-01); }
.partner { display: flex; flex-direction: column; align-items: center; min-width: 0; min-height: 250px; padding: 24px 20px; background: var(--cds-layer-01); }
.partner-logo { display: grid; position: relative; place-items: center; width: 100%; height: 160px; margin-bottom: 18px; }
.partner-logo > img { width: auto; max-width: 100%; max-height: 152px; object-fit: contain; }
.partner-logo-wide > img { width: 100%; max-height: 148px; }
.partner:nth-child(4) .partner-logo > img { transform: scale(1.16); }
.partner > span { display: block; width: 100%; color: var(--cds-text-primary); font-size: .8125rem; font-weight: 600; line-height: 1.35; text-align: center; text-wrap: balance; }
.nvidia-logo > img { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; object-fit: contain; }
.nvidia-logo { transform: scale(1.12); }
.nvidia-white { filter: brightness(0) invert(1); }
.nvidia-logo .nvidia-green { clip-path: inset(0 64% 48% 0); }
.nigcomsat-logo { align-self: center; height: 128px; margin-block: 16px 34px; padding: 12px; background: #f4f4f4; }
.nigcomsat-logo > img { width: 100%; height: 100%; max-height: 100%; }
.research-section { background: var(--cds-layer-01); }
.research-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 1px; background: var(--cds-border-subtle-01); }
.featured-article, .article-list > a { display: flex; flex-direction: column; min-width: 0; background: var(--cds-layer-02); transition: background .15s; }
.featured-article:hover, .article-list > a:hover { background: var(--cds-layer-hover-02); }
.featured-article { padding-bottom: 32px; }
.featured-article > :not(.article-image) { margin-inline: 32px; }
.article-image { border-radius: 0; }
.article-image img { filter: saturate(.8); transition: transform .3s ease; }
.featured-article:hover img, .archive-grid a:hover img { opacity: 1; transform: scale(1.025); }
.featured-article .article-image { margin-bottom: 32px; }
.article-topic { display: block; width: fit-content; margin-top: 12px; color: var(--es-accent); font-size: .75rem; font-weight: 600; }
.featured-article h3 { margin-top: 12px; font-size: clamp(1.5rem, 2.5vw, 2.5rem); font-weight: 400; line-height: 1.2; }
.article-list { display: grid; grid-template-rows: 1fr 1fr; }
.article-list > a { padding: 32px; border: 0 !important; }
.article-list h3 { margin-top: 12px; font-size: 1.5rem; font-weight: 400; line-height: 1.25; }
.article-list .article-more { margin-top: auto; }
.featured-article:hover h3, .article-list a:hover h3, .archive-grid a:hover h2 { color: var(--cds-text-primary); }
.page-intro { padding-block: 96px 64px; border-bottom: 1px solid var(--cds-border-subtle-01); }
.page-intro h1 { margin: 24px 0; font-size: clamp(3rem, 5.5vw, 5.5rem); font-weight: 300; line-height: 1.08; letter-spacing: -.04em; }
.page-intro > p:last-child { font-size: 1.25rem; }
.research-tools { padding: 32px 0; border: 0; border-bottom: 1px solid var(--cds-border-subtle-01); border-radius: 0; background: transparent; }
.research-tools .cds--btn { min-height: 48px; }
.research-tools #clear-research:disabled { display: none; }
.research-results-heading { margin: 32px 0 24px; }
.archive-grid { gap: 1px; padding-bottom: 0; margin-bottom: 96px; background: var(--cds-border-subtle-01); }
.archive-card { border-radius: 0; background: var(--cds-layer-01); transition: background .15s; }
.archive-card:hover { background: var(--cds-layer-hover-01); }
.archive-card .article-image { margin: 0; }
.archive-copy { padding: 28px 32px 32px; }
.archive-grid:not(.is-filtered) .archive-lead { gap: 0; padding: 0; }
.archive-grid:not(.is-filtered) .archive-lead .archive-copy { padding: 40px; }
.archive-grid:not(.is-filtered) .archive-lead h2 { font-size: clamp(2rem, 3vw, 3rem); font-weight: 400; }
.contact-layout { gap: 64px; padding-block: 64px 112px; }
.contact-form h2 { font-size: 2rem; }
.form-intro { margin-bottom: 40px; }
.field label { color: var(--cds-text-secondary); font-size: .75rem; }
.field input, .field textarea, .field select { min-height: 48px; padding: 12px 16px; border: 0; border-bottom: 1px solid var(--cds-border-strong-01); border-radius: 0; background: var(--cds-field-01); color: var(--cds-text-primary); outline: 0; box-shadow: none; }
.field input:hover, .field textarea:hover, .field select:hover { background: var(--cds-field-hover-01); }
.field input:focus, .field textarea:focus, .field select:focus { outline: 2px solid var(--cds-focus); outline-offset: -2px; box-shadow: none; }
.field textarea { min-height: 168px; }
.field [aria-invalid='true'] { outline: 2px solid var(--cds-support-error); outline-offset: -2px; }
.required-indicator, .field-error { color: var(--cds-support-error); }
.contact-details { border-left-color: var(--cds-border-subtle-01); }
.contact-details > div { padding-bottom: 32px; border-bottom: 1px solid var(--cds-border-subtle-01); }
.contact-details h2 { color: var(--cds-text-secondary); font-size: .75rem; letter-spacing: .04em; text-transform: uppercase; }
.contact-details a, .contact-details > div:first-child a:first-of-type { color: var(--cds-link-primary); }
.contact-banner { display: grid; grid-template-columns: 1fr 1fr; padding-block: 88px; }
.contact-banner > div:last-child { justify-self: end; }
.site-footer { background: #0f0f0f; }
.footer-main { padding-block: 64px; }
.footer-main h2 { color: var(--cds-text-secondary); font-size: .75rem; letter-spacing: .04em; text-transform: uppercase; }
.footer-links { align-items: center; }
.footer-links .footer-top { gap: 6px; color: var(--cds-link-primary); }
.footer-top .carbon-icon { transform: rotate(180deg); }
.project:focus-visible, .featured-article:focus-visible, .article-list a:focus-visible, .archive-card:focus-visible, .article-adjacent a:focus-visible { outline: 2px solid var(--cds-focus); outline-offset: -3px; }
@media (max-width: 1055px) { .hero-copy { padding-right: 40px; } .focus-grid { grid-template-columns: repeat(2, 1fr); } .focus-grid > :nth-child(2) { border-right: 0; } .focus-grid > :nth-child(-n+2) { border-bottom: 1px solid var(--cds-border-subtle-01); } }
@media (max-width: 900px) { .container { width: calc(100% - 40px); } .site-header .brand { border: 0; padding: 0; } .nav-wrap nav a { min-height: 56px; border-left: 0; border-top: 1px solid #393939; } .hero { grid-template-columns: 1fr; min-height: 0; padding-block: 64px 80px; } .hero-copy { padding: 0 0 48px; } .hero h1 { font-size: clamp(3.5rem, 9vw, 5.75rem); } .hero-actions { margin-top: 0; } .hero-visual { min-height: 480px; } .project { min-height: 276px; } .research-grid { grid-template-columns: 1fr; } .article-list { grid-template-columns: 1fr 1fr; grid-template-rows: auto; } .contact-layout { gap: 40px; } .contact-details { border-left: 0; } }
@media (max-width: 760px) { .partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .container { width: calc(100% - 32px); } .hero { padding-block: 56px 72px; } .hero h1 { font-size: clamp(3.2rem, 14vw, 4.5rem); } .hero-actions { flex-direction: column; align-items: flex-start; gap: 12px; padding-top: 36px; } .hero-visual { min-height: 0; } .art-frame { min-height: 250px; } .focus-grid { grid-template-columns: 1fr; } .focus-grid > * { min-height: 76px; border-right: 0; border-bottom: 1px solid var(--cds-border-subtle-01); padding: 18px 0; } .focus-grid > :last-child { border-bottom: 0; } .section { padding-block: 72px; } .project { min-height: 252px; padding: 24px; } .partners-section .section { padding-block: 72px; } .partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .partner { min-height: 232px; padding: 18px 12px; } .partner-logo { height: 138px; margin-bottom: 14px; } .partner-logo > img { max-height: 130px; } .article-list { grid-template-columns: 1fr; } .featured-article > :not(.article-image) { margin-inline: 24px; } .article-list > a { padding: 24px; } .page-intro { padding-block: 56px 40px; } .archive-grid { margin-bottom: 72px; } .archive-grid:not(.is-filtered) .archive-lead .archive-copy { padding: 28px 32px 32px; } .contact-banner { grid-template-columns: 1fr; gap: 24px; padding-block: 72px; } .contact-banner > div:last-child { justify-self: start; } .footer-links { flex-wrap: wrap; gap: 8px 20px; } }

/* Research articles: a reading layout with the same Carbon dark surfaces. */
.article-intro { padding-block: 72px 64px; }
.article-back { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; margin-bottom: 52px; color: var(--cds-link-primary); font-size: .875rem; font-weight: 600; }
.article-back .carbon-icon, .article-end > .text-link .carbon-icon { transform: rotate(180deg); }
.article-intro .eyebrow { margin-bottom: 24px; }
.article-intro h1 { max-width: 1080px; margin: 0; font-size: clamp(3rem, 5vw, 5.25rem); font-weight: 300; line-height: 1.08; letter-spacing: -.04em; text-wrap: balance; }
.article-deck { max-width: 760px; margin: 28px 0 0; color: var(--cds-text-secondary); font-size: clamp(1.125rem, 1.6vw, 1.375rem); line-height: 1.5; }
.article-original-title { max-width: 760px; margin: 24px 0 0; color: var(--cds-text-secondary); font-size: .875rem; line-height: 1.5; }
.article-original-title span { display: block; margin-bottom: 6px; color: var(--cds-text-primary); font-size: .75rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.article-byline { display: flex; flex-wrap: wrap; gap: 8px 28px; max-width: 760px; margin-top: 52px; padding-top: 20px; border-top: 1px solid var(--cds-border-subtle-01); color: var(--cds-text-secondary); font-size: .875rem; }
.article-byline span:first-child { color: var(--cds-text-primary); font-weight: 600; }
.article-cover { height: clamp(280px, 34vw, 480px); margin-bottom: 0; overflow: hidden; background: var(--cds-layer-01); }
.article-cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.article-layout { display: grid; grid-template-columns: minmax(0, 760px) minmax(220px, 1fr); gap: clamp(64px, 9vw, 144px); padding-block: 80px 104px; }
.article-copy { grid-column: 1; grid-row: 1; min-width: 0; color: var(--cds-text-primary); font-size: 1.125rem; line-height: 1.72; }
.article-copy > :first-child { margin-top: 0; }
.article-copy p, .article-copy ul, .article-copy ol { margin: 0 0 28px; }
.article-copy ul, .article-copy ol { padding-left: 1.5em; }
.article-copy li { padding-left: .25em; margin-bottom: .6em; }
.article-copy h2 { margin: 64px 0 24px; padding-top: 20px; border-top: 1px solid var(--cds-border-subtle-01); font-size: clamp(1.75rem, 2.3vw, 2.5rem); font-weight: 400; line-height: 1.2; letter-spacing: -.02em; scroll-margin-top: 88px; text-wrap: pretty; }
.article-copy h3 { margin: 42px 0 20px; font-size: 1.375rem; font-weight: 600; line-height: 1.35; scroll-margin-top: 88px; }
.article-copy h4 { margin: 32px 0 16px; font-size: 1.125rem; font-weight: 600; }
.article-copy a { color: var(--cds-link-primary); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.article-copy a:hover { color: var(--cds-link-primary-hover); }
.article-copy strong { font-weight: 600; }
.article-copy blockquote { margin: 40px 0; padding: 12px 0 12px 28px; border-left: 3px solid var(--es-accent); color: var(--cds-text-secondary); font-size: 1.25rem; line-height: 1.55; }
.article-copy img { display: block; max-width: 100%; height: auto; margin: 36px auto; background: var(--cds-layer-01); }
.article-copy pre { max-width: 100%; overflow-x: auto; margin: 32px 0; padding: 24px; background: var(--cds-layer-01); border: 1px solid var(--cds-border-subtle-01); font-size: .875rem; line-height: 1.5; }
.article-copy code { font-size: .9em; overflow-wrap: anywhere; }
.table-scroll { max-width: 100%; overflow-x: auto; margin: 32px 0; border: 1px solid var(--cds-border-subtle-01); }
.article-copy table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: .9375rem; line-height: 1.5; }
.article-copy th, .article-copy td { padding: 14px 16px; border-bottom: 1px solid var(--cds-border-subtle-01); text-align: left; vertical-align: top; }
.article-copy th { background: var(--cds-layer-02); font-weight: 600; }
.article-copy tr:nth-child(even) td { background: var(--cds-layer-01); }
.article-aside { grid-column: 2; grid-row: 1; position: sticky; top: 96px; align-self: start; min-width: 0; font-size: .875rem; }
.article-toc--mobile { display: none; }
.article-toc summary { display: flex; align-items: center; gap: 12px; min-height: 40px; margin: 0 0 16px; color: var(--cds-text-secondary); cursor: pointer; font-size: .75rem; font-weight: 600; letter-spacing: .05em; list-style: none; text-transform: uppercase; }
.article-toc summary::-webkit-details-marker { display: none; }
.article-toc summary:focus-visible { outline: 2px solid var(--cds-focus); outline-offset: 2px; }
.article-toc-count { margin-left: auto; color: var(--cds-text-secondary); font-size: .6875rem; font-weight: 400; letter-spacing: 0; text-transform: none; white-space: nowrap; }
.article-toc summary .carbon-icon { flex: 0 0 16px; transition: transform .18s ease; }
.article-toc[open] summary .carbon-icon { transform: rotate(180deg); }
.article-toc ol { max-height: calc(100vh - 310px); overflow-y: auto; margin: 0 0 32px; padding: 0; list-style: none; border-left: 1px solid var(--cds-border-subtle-01); scrollbar-color: var(--cds-border-strong-01) transparent; scrollbar-width: thin; }
.article-source h2 { margin: 0 0 20px; color: var(--cds-text-secondary); font-size: .75rem; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; }
.article-toc li { margin: 0; }
.article-toc a { display: block; padding: 10px 16px; color: var(--cds-text-secondary); line-height: 1.4; border-left: 2px solid transparent; margin-left: -1px; }
.article-toc a:hover, .article-toc a:focus-visible { color: var(--cds-text-primary); border-left-color: var(--es-accent); }
.article-toc a[aria-current="location"] { background: rgba(255, 185, 0, .08); border-left-color: var(--es-accent); color: var(--cds-text-primary); font-weight: 600; }
.article-source { padding-top: 24px; border-top: 1px solid var(--cds-border-subtle-01); }
.article-source p { margin: 0 0 16px; color: var(--cds-text-secondary); }
.article-source a { display: inline-flex; align-items: center; gap: 8px; color: var(--cds-link-primary); font-weight: 600; }
.article-layout--visual { grid-template-columns: minmax(0, 1fr); gap: 40px; }
.article-layout--visual .article-copy { grid-column: 1; grid-row: auto; max-width: none; }
.article-layout--visual .article-copy > p { max-width: 760px; }
.article-layout--visual .article-aside { grid-column: 1; grid-row: auto; position: static; max-width: 760px; }
.article-visualization { display: block; width: 100%; min-height: 1200px; border: 1px solid var(--cds-border-subtle-01); background: #161616; }
.article-end { padding-block: 56px 96px; border-top: 1px solid var(--cds-border-subtle-01); }
.article-end > .text-link { margin-bottom: 40px; }
.article-adjacent { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--cds-border-subtle-01); }
.article-adjacent a { display: grid; grid-template-columns: 1fr auto; gap: 12px; min-height: 132px; padding: 24px; background: var(--cds-layer-01); }
.article-adjacent a:hover { background: var(--cds-layer-hover-01); }
.article-adjacent a > span:first-child { grid-column: 1 / -1; color: var(--cds-text-secondary); font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.article-adjacent strong { align-self: end; font-size: 1.125rem; font-weight: 400; line-height: 1.3; }
.article-adjacent .carbon-icon { align-self: end; color: var(--es-accent); }
@media (max-width: 900px) { .article-layout { grid-template-columns: 1fr; gap: 32px; padding-block: 48px 88px; } .article-copy, .article-aside { grid-column: 1; grid-row: auto; } .article-aside { position: static; } .article-toc--mobile { display: block; } .article-toc--desktop { display: none; } .article-toc--mobile { border-block: 1px solid var(--cds-border-subtle-01); } .article-toc summary { min-height: 56px; margin: 0; padding: 0 16px; background: var(--cds-layer-01); color: var(--cds-text-primary); } .article-toc[open] summary { border-bottom: 1px solid var(--cds-border-subtle-01); } .article-toc ol { max-height: min(420px, 60vh); columns: 2; margin: 0; padding: 12px 0; } .article-source { max-width: 760px; margin-top: 24px; } }
@media (max-width: 600px) { .article-intro { padding-block: 48px 40px; } .article-back { margin-bottom: 40px; } .article-intro h1 { font-size: clamp(2.625rem, 10vw, 3.5rem); } .article-deck { margin-top: 24px; font-size: 1.0625rem; } .article-byline { margin-top: 36px; gap: 8px 20px; } .article-cover { height: 240px; } .article-layout { padding-block: 40px 72px; } .article-copy { font-size: 1.0625rem; line-height: 1.68; } .article-copy h2 { margin-top: 48px; font-size: 1.75rem; } .article-copy h3 { margin-top: 36px; font-size: 1.25rem; } .article-toc ol { columns: 1; } .article-adjacent { grid-template-columns: 1fr; } .article-end { padding-block: 48px 72px; } }
@media (max-width: 600px) { .research-tools { padding-block: 24px; } .research-tools .cds--btn:disabled { display: none; } .research-results-heading { align-items: baseline; flex-direction: row; gap: 12px; margin-block: 24px 20px; } .research-results-heading > span { white-space: nowrap; } }
@media (max-width: 600px) { .nvidia-logo { transform: none; } .nigcomsat-logo { height: 108px; margin-block: 15px 29px; padding: 8px; } }

/* Let mobile visitors reach content sooner and keep the shared footer compact. */
@media (max-width: 600px) {
  .page-intro { padding-block: 48px 32px; }
  .research-tools { gap: 12px; padding-block: 20px; }
  .research-results-heading { margin-block: 20px 16px; }
  .contact-layout { padding-top: 44px; padding-bottom: 72px; }
  .partner > span { font-size: .875rem; line-height: 1.3; }
  .footer-main { gap: 32px; padding-block: 48px; }
  .footer-bottom { gap: 8px; padding-block: 16px 24px; }
}
