@charset "UTF-8";
/* EO/RS — hero (Figma eo-rs-hero-section 1440 / 1920 / 2560;
   nodes 40000160:3810, 40000237:2083, 40000237:2092)
   Glass card + typography scale from 1440px baseline (× viewport / 1440) through 2560px. */
.page--eo-rs .page {
  padding: 0;
}

.page--eo-rs .hero-banner__bg {
  object-position: var(--hero-bg-pos, 58% center);
}

@media (max-width: 719px) {
  .page--eo-rs .hero-banner__bg {
    object-position: var(--hero-bg-pos-mobile, var(--hero-bg-pos, center center));
  }
}
/* Split Media Text List (formerly eo-rs-scale-mission) (Figma scale-with-eo-mission 1440 / 1920 / 2560;
   nodes 40000160:3819, 40000242:3736, 40000242:3745)
   Row nominal 1020: media 680 × 381, overlap −170, panel 510; rail grows 1020 → 1360 → 1813. */
.split-media-text-list {
  width: 100%;
  max-width: var(--hero-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(48px, 10vw, 80px) clamp(20px, 5vw, 40px);
  border-top: 0.5px solid rgba(255, 255, 255, 0.1);
}

.split-media-text-list__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--pattern-block-width);
  margin-inline: auto;
}

@media (min-width: 1230px) {
  .split-media-text-list {
    padding-inline: 0;
  }
  .split-media-text-list__inner {
    padding-inline: 0;
  }
}
.split-media-text-list__row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-width: 0;
  gap: 0;
  isolation: isolate;
}

@media (min-width: 720px) {
  .split-media-text-list__row {
    container-type: inline-size;
    container-name: split-media-scale;
    max-width: 1020px;
    margin-inline: auto;
    min-height: calc(381cqw / 1020);
  }
}
.split-media-text-list__media-wrap {
  flex: 0 0 calc(100% * 680 / 1020);
  box-sizing: border-box;
  min-width: 0;
  margin-right: calc(-100% * 170 / 1020);
  z-index: 1;
}

.split-media-text-list__figure {
  position: relative;
  width: 100%;
  aspect-ratio: 680/381;
  overflow: hidden;
}

.split-media-text-list__img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.split-media-text-list__img--cover {
  object-fit: cover;
}

.split-media-text-list__img--contain {
  object-fit: contain;
}

.split-media-text-list__img--fill {
  object-fit: fill;
}

.split-media-text-list__img--fit-width {
  width: 100%;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
  object-fit: contain;
}

.split-media-text-list__img--fit-height {
  width: auto;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
  object-fit: contain;
}


.split-media-text-list__row > .split-media-text-list__panel {
  flex: 0 0 calc(100% * 510 / 1020);
  box-sizing: border-box;
  width: auto;
  max-width: none;
  z-index: 2;
  padding: clamp(20px, 4vw, 40px);
  gap: 16px;
}

.split-media-text-list__title {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 300;
  font-size: clamp(1.625rem, 1.75vw + 1.125rem, 2.5rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}

.split-media-text-list__list {
  margin: 0;
  padding: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  color: #fff;
}

ul.split-media-text-list__list,
ol.split-media-text-list__list {
  padding: 0 0 0 1.5rem;
  list-style: disc;
}

.split-media-text-list__list li,
.split-media-text-list__list p {
  margin: 0 0 12px;
  padding-inline-start: 0.125em;
}

.split-media-text-list__list li:last-child,
.split-media-text-list__list p:last-child {
  margin-bottom: 0;
}

ul.split-media-text-list__list.is-list-view {
  list-style-type: disc;
  margin-left: 1.5rem;
  padding-inline-start: 0.125em;
}

.split-media-text-list__list.is-list-view p {
  display: list-item;
  list-style-type: disc;
  margin-left: 1.5rem;
  padding-inline-start: 0.125em;
}

@media (max-width: 719px) {
  .split-media-text-list {
    padding: 40px 20px;
  }
  .split-media-text-list__row {
    flex-direction: column;
    align-items: stretch;
  }
  .split-media-text-list__media-wrap {
    flex: 0 1 auto;
    width: 100%;
    aspect-ratio: unset;
    margin-right: 0;
    margin-bottom: -20px;
  }
  .split-media-text-list__figure {
    aspect-ratio: 680/381;
  }
  .split-media-text-list__row > .split-media-text-list__panel {
    position: relative;
    flex: 1 1 auto;
    width: 100%;
    max-width: none;
    gap: 24px;
    padding: 20px;
  }
  .split-media-text-list__title {
    font-size: 1.625rem;
    text-transform: none;
  }
}
/* Wide screens: fluid scale from 1440px baseline through 2560px.
   Content rail = frame width minus symmetric 210px side inset (1020 → 1360 → 1813). */
@media (min-width: 1440px) {
  .split-media-text-list {
    max-width: none;
    width: 100%;
    padding-block: clamp(120px, 8.333vw, 213.333px);
  }
  .split-media-text-list__inner {
    max-width: clamp(var(--pattern-block-width), 94.444vw, 2417.778px);
  }
  .split-media-text-list__row {
    max-width: clamp(1020px, 70.833vw, 1813.333px);
  }
  .split-media-text-list__title {
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
  .split-media-text-list__row > .split-media-text-list__panel {
    gap: clamp(16px, 1.111vw, 28.444px);
    padding: clamp(40px, 2.778vw, 71.111px);
    border-width: clamp(0.5px, 0.0347vw, 0.889px);
    -webkit-backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
    backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
  }
  .split-media-text-list .content-panel__body,
  .split-media-text-list__list {
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
  }
  ul.split-media-text-list__list,
  ol.split-media-text-list__list {
    padding-inline-start: clamp(1.5rem, 2.222vw, 2.666rem);
  }
  .split-media-text-list__list li {
    margin-bottom: clamp(12px, 0.833vw, 21.333px);
  }
}
/* EO/RS — OpenSpace orchestrated architecture (Figma openspace-orchestraed-software-architecture
   1440 / 1920 / 2560; nodes 40000160:3869, 40000244:3914, 40000244:3951) */
.split-bracket-cards {
  position: relative;
  width: 100%;
  max-width: var(--hero-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(48px, 10vw, 120px) clamp(20px, 5vw, 40px);
  /* border: 0.5px solid rgba(255, 255, 255, 0.2); */
  overflow: hidden;
}

.split-bracket-cards__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.split-bracket-cards__bg-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.2;
}

.split-bracket-cards__inner {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: var(--pattern-block-width);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(48px, 10vw, 120px);
}

@media (min-width: 1230px) {
  .split-bracket-cards {
    padding-inline: 0;
  }
  .split-bracket-cards__inner {
    padding-inline: 0;
  }
}
.split-bracket-cards__header {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  text-align: center;
  width: min(850px, 100%);
}

.split-bracket-cards__title {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 300;
  font-size: clamp(1.625rem, 2vw + 1rem, 2.5rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}

.split-bracket-cards__title-line {
  display: block;
}

.split-bracket-cards__title-line + .split-bracket-cards__title-line {
  margin-top: 0.15em;
}

.split-bracket-cards__lead {
  margin: 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: clamp(1rem, 0.85vw + 0.875rem, 1.25rem);
  line-height: 1.25;
  letter-spacing: 0;
  color: #fff;
  max-width: 100%;
}

/* EO/RS optimized solutions — illustration band (Figma eo-rs-optimized-solutions 1440 / 1920 / 2560;
   nodes 40000166:4324, 40000244:4041, 40000244:4094)
   Full-bleed diagram + title scale × viewport / 1440 through 2560px. */
.split-bracket-cards + .network-map-illustration {
  border-top-width: 0;
}

.network-map-illustration {
  width: 100%;
  max-width: var(--hero-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: 24px clamp(20px, 5vw, 40px);
  /* border: 0.5px solid rgba(255, 255, 255, 0.2); */
  background-color: #070707;
}

.network-map-illustration__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}

@media (min-width: 1230px) {
  .network-map-illustration {
    padding-inline: 0;
  }
  .network-map-illustration__inner {
    padding-inline: 0;
  }
}
.network-map-illustration__title {
  margin: 0;
  width: 100%;
  max-width: 100%;
  font-family: var(--font-display);
  font-weight: 300;
  font-size: clamp(1.625rem, 2vw + 1rem, 2.5rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
  text-align: center;
  text-wrap: balance;
}

.network-map-illustration__figure {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 1440/680;
  overflow: hidden;
}

.network-map-illustration__img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 719px) {
  .network-map-illustration {
    padding-block: clamp(24px, 6vw, 40px);
    padding-inline: clamp(16px, 5vw, 24px);
  }
  .network-map-illustration__inner {
    gap: clamp(16px, 4vw, 24px);
  }
  .network-map-illustration__title {
    font-size: clamp(1.375rem, 3vw + 0.75rem, 2rem);
  }
}
/* Wide screens: fluid scale from 1440px baseline through 2560px.
   Full-bleed illustration 1440×680 → 1920×907 → 2560×1209; title 40 → 53 → 71px. */
@media (min-width: 1440px) {
  .network-map-illustration {
    max-width: none;
    width: 100%;
    padding-block: clamp(24px, 1.667vw, 42.667px);
  }
  .network-map-illustration__inner {
    max-width: clamp(1440px, 100vw, 2560px);
    gap: clamp(24px, 1.667vw, 42.667px);
  }
  .network-map-illustration__title {
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
}
/* EO/RS — manage and monitor EO missions (Figma manage-and-monitor-eo-missions, 40000160:3991) */
.product-grid-overlap-intro {
  width: 100%;
  max-width: var(--pattern-block-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(48px, 10vw, 120px) clamp(20px, 5vw, 40px);
  overflow: hidden;
}

.blueprint-hardware-stack + .product-grid-graphic-intro {
  border-top-width: 1px;
}

.product-grid-graphic-intro + .product-grid-overlap-intro {
  border-top-width: 0;
}

.product-grid-overlap-intro__inner {
  box-sizing: border-box;
  width: 100%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: clamp(48px, 10vw, 80px);
  container-type: inline-size;
  container-name: product-grid-overlap-intro;
}

@media (min-width: 1230px) {
  .product-grid-overlap-intro {
    padding-inline: 0;
  }
  /* Figma outer px-[40]; aligns hero row + card strip to the same inset */
  .product-grid-overlap-intro__inner {
    padding-inline: 40px;
    gap: 80px;
  }
}
/*
 * Hero row matches Figma 40000160:3992 — w-[1020px], panel 510 + overlap −170 + media 680.
 * [panel][media]: pull media backward with negative *inline-start*, not trailing margin-right.
 */
.product-grid-overlap-intro__row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 1020px;
  margin-inline: auto;
  min-width: 0;
  gap: 0;
  isolation: isolate;
}

@media (min-width: 1024px) {
  .product-grid-overlap-intro__row {
    min-height: calc(381cqw / 1020);
  }
  .product-grid-overlap-intro__cards {
    flex-wrap: nowrap;
    column-gap: 0;
    row-gap: 0;
  }
}
.product-grid-overlap-intro__media-wrap {
  flex: 0 0 calc(100% * 680 / 1020);
  box-sizing: border-box;
  min-width: 0;
  margin-inline-start: calc(-100% * 170 / 1020);
  margin-inline-end: 0;
  z-index: 1;
}

.product-grid-overlap-intro__figure {
  position: relative;
  width: 100%;
  aspect-ratio: 680/381;
  overflow: hidden;
  border-radius: 0 clamp(12px, 2.2vw, 24px) 0 0;
}

.product-grid-overlap-intro__img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.product-grid-overlap-intro__panel.content-panel {
  flex: 0 0 calc(100% * 510 / 1020);
  box-sizing: border-box;
  width: auto;
  max-width: none;
  z-index: 2;
  align-items: flex-start;
  text-align: left;
  gap: 16px;
  padding: clamp(20px, 4vw, 40px);
}

.product-grid-overlap-intro__title {
  margin: 0;
  font-weight: 300;
  font-size: clamp(1.625rem, 1.75vw + 1.125rem, 2.5rem);
  line-height: 1.2;
  letter-spacing: 0;
max-width: 100%;
}

/* Full-width row under same rails — outer cards tuck to dotted lines (see Figma 40000160:4002). */
.product-grid-overlap-intro__cards {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  column-gap: clamp(16px, 4vw, 56px);
  row-gap: clamp(28px, 5vw, 40px);
  width: 100%;
  box-sizing: border-box;
}

.product-grid-overlap-intro__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex: 0 1 368px;
  width: 100%;
  min-width: 0;
  max-width: 368px;
  text-align: center;
}

.product-grid-overlap-intro__frame {
  box-sizing: border-box;
  width: 100%;
  max-width: 368px;
  padding: 8px;
  border-radius: 10px;
  background: rgb(255 255 255 / 0.1);
  border: 1px solid rgb(255 255 255 / 0.5);
}

.product-grid-overlap-intro__shot {
  position: relative;
  width: 100%;
  aspect-ratio: 352/235;
  border-radius: 5px;
  overflow: hidden;
  background: #464646;
}

.product-grid-overlap-intro__shot-img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.product-grid-overlap-intro__bare {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: min(292px, 100%);
}

.product-grid-overlap-intro__bare-img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 251px;
  object-fit: contain;
  object-position: center bottom;
}

.product-grid-overlap-intro__card-title {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.125rem, 0.55vw + 1rem, 1.25rem);
  line-height: 1.4;
  letter-spacing: 0;
  color: #fff;
}

.product-grid-overlap-intro__card-cta.hero__cta {
  margin-top: 0;
}

/* Wide screens: fluid scale from 1440px baseline through 2560px.
   Hero row 1020 → 1360 → 1813; cards rail = pattern block (1360 → 1813 → 2418);
   cards 368 → 491 → 654 (Figma 40000160:3991, 40000248:4408, 40000248:4450). */
@media (min-width: 1440px) {
  .product-grid-overlap-intro {
    max-width: none;
    width: 100%;
    padding-block: clamp(120px, 8.333vw, 213.333px);
    border-top-width: clamp(0.5px, 0.0347vw, 0.889px);
    border-bottom-width: clamp(0.5px, 0.0347vw, 0.889px);
  }
  .product-grid-overlap-intro__inner {
    max-width: clamp(var(--pattern-block-width), 94.444vw, 2417.778px);
    gap: clamp(80px, 5.556vw, 142.222px);
    padding-inline: 0;
  }
  .product-grid-overlap-intro__row {
    max-width: clamp(1020px, 70.833vw, 1813.333px);
    min-height: clamp(381px, 26.458vw, 677.333px);
  }
  .product-grid-overlap-intro__panel.content-panel {
    gap: clamp(16px, 1.111vw, 28.444px);
    padding: clamp(40px, 2.778vw, 71.111px);
    border-width: clamp(0.5px, 0.0347vw, 0.889px);
    -webkit-backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
    backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
  }
  .product-grid-overlap-intro__title {
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
  .product-grid-overlap-intro .content-panel__eyebrow {
    font-size: clamp(0.875rem, 0.972vw, 1.555625rem);
  }
  .product-grid-overlap-intro .content-panel__body {
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
  }
  .product-grid-overlap-intro .hero__cta {
    gap: clamp(8px, 0.556vw, 14.222px);
    min-width: clamp(136px, 9.444vw, 241.778px);
    padding: clamp(8px, 0.556vw, 14.222px) clamp(12px, 0.833vw, 21.333px);
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
    line-height: clamp(1.5rem, 1.667vw, 2.667rem);
  }
  .product-grid-overlap-intro .hero__cta-icon-img {
    height: clamp(16px, 1.111vw, 28.444px);
    width: auto;
  }
  .product-grid-overlap-intro__figure {
    border-radius: 0 clamp(12px, 0.833vw, 21.333px) 0 0;
  }
  .product-grid-overlap-intro__cards {
    padding-inline: clamp(40px, 2.778vw, 71.111px);
  }
  .product-grid-overlap-intro__card {
    flex: 0 1 clamp(368px, 25.556vw, 654.222px);
    max-width: clamp(368px, 25.556vw, 654.222px);
    gap: clamp(16px, 1.111vw, 28.444px);
  }
  .product-grid-overlap-intro__frame {
    max-width: none;
    padding: clamp(8px, 0.556vw, 14.222px);
    border-radius: clamp(10px, 0.694vw, 17.778px);
    border-width: clamp(1px, 0.0694vw, 1.778px);
  }
  .product-grid-overlap-intro__shot {
    border-radius: clamp(5px, 0.347vw, 8.889px);
  }
  .product-grid-overlap-intro__bare {
    width: clamp(292px, 20.278vw, 519.111px);
  }
  .product-grid-overlap-intro__bare-img {
    max-height: clamp(251px, 17.431vw, 446.572px);
  }
  .product-grid-overlap-intro__card-title {
    font-size: clamp(1.25rem, 1.389vw, 2.222rem);
    line-height: clamp(1.75rem, 1.944vw, 3.111rem);
  }
}
@media (max-width: 1023px) {
  .product-grid-overlap-intro {
    max-width: var(--hero-max-width);
    padding: 40px 20px;
  }
  .product-grid-overlap-intro__row {
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    width: 100%;
  }
  .product-grid-overlap-intro__media-wrap {
    flex: 0 1 auto;
    width: 100%;
    aspect-ratio: unset;
    margin-inline: 0;
    order: 1;
    margin-top: 0;
    margin-bottom: -20px;
  }
  .product-grid-overlap-intro__figure {
    aspect-ratio: 680/381;
    max-height: none;
  }
  .product-grid-overlap-intro__panel.content-panel {
    position: relative;
    flex: 1 1 auto;
    width: 100%;
    max-width: none;
    order: 2;
    gap: 24px;
    padding: 20px;
  }
  .product-grid-overlap-intro__title {
    text-transform: none;
  }
  .product-grid-overlap-intro__cards {
    justify-content: center;
    align-items: stretch;
    column-gap: 24px;
  }
  .product-grid-overlap-intro__card {
    flex: 1 1 100%;
    max-width: 400px;
    margin-inline: auto;
  }
  .product-grid-overlap-intro__bare {
    width: min(292px, 85vw);
  }
}
@media (min-width: 720px) and (max-width: 1023px) {
  .product-grid-overlap-intro__cards {
    flex-wrap: wrap;
    justify-content: center;
  }
  .product-grid-overlap-intro__card {
    flex: 1 1 calc(50% - 14px);
    max-width: 368px;
  }
  .product-grid-overlap-intro__card--bare-visual {
    flex: 1 1 100%;
    max-width: 368px;
    margin-inline: auto;
  }
}
@media (max-width: 719px) {
  .product-grid-overlap-intro__bare {
    width: min(260px, 88vw);
  }
}
/* EO/RS — most deployed satellite control (Figma most-deployed-satellite-control-solutions
   1440 / 1920 / 2560; nodes 40000160:3965, 40000248:4282, 40000248:4324)
   Intro panel 680 → 907 → 1209; grid rail 1360 → 1813 → 2418; cards 368 → 491 → 654. */
.product-grid-graphic-intro {
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: var(--hero-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(48px, 10vw, 120px) clamp(20px, 5vw, 40px);
  overflow: hidden;
  background: radial-gradient(ellipse 130% 85% at 50% 48%, rgb(48 32 32 / 0.95) 0%, rgb(29 21 23 / 0.9) 42%, rgb(10 11 15 / 1) 72%), var(--color-bg, #0a0b0f);
  border-top: 0.5px solid rgba(255, 255, 255, 0.1);
  border-bottom: 0.5px solid rgba(255, 255, 255, 0.2);
}

.product-grid-graphic-intro--no-gradient,
.product-grid-graphic-intro--has-bg {
  background: var(--color-bg, #0a0b0f);
}

.product-grid-graphic-intro__inner {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width: 100%;
  max-width: var(--pattern-block-width);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: clamp(32px, 6vw, 40px);
}

@media (min-width: 1230px) {
  .product-grid-graphic-intro {
    padding-inline: 0;
  }
  .product-grid-graphic-intro__inner {
    padding-inline: 0;
  }
}
.product-grid-graphic-intro__intro {
  position: relative;
  width: 100%;
  min-width: 0;
}

.product-grid-graphic-intro__intro-main {
  display: flex;
  justify-content: center;
  width: 100%;
}

.product-grid-graphic-intro__panel.content-panel {
  align-items: flex-start;
  text-align: left;
  gap: 16px;
  padding: clamp(20px, 4vw, 40px);
  width: 100%;
  max-width: 680px;
  box-sizing: border-box;
}

.product-grid-graphic-intro__title {
  margin: 0;
  font-weight: 300;
  font-size: clamp(1.625rem, 1.75vw + 1.125rem, 2.5rem);
  line-height: 1.2;
  letter-spacing: 0;
max-width: 100%;
}

.product-grid-graphic-intro__sat-wrap {
  pointer-events: none;
}

.product-grid-graphic-intro__sat {
  display: block;
  width: 100%;
  height: auto;
  max-width: 400px;
  margin-inline: auto;
  object-fit: contain;
}

@media (min-width: 1024px) {
  .product-grid-graphic-intro__intro {
    min-height: min(280px, 28vw);
    padding-bottom: clamp(8px, 2vw, 24px);
  }
  .product-grid-graphic-intro__intro-main {
    justify-content: center;
    position: relative;
    z-index: 2;
  }
  .product-grid-graphic-intro__grid {
    box-sizing: border-box;
    grid-template-columns: repeat(3, minmax(0, 368px));
    justify-content: space-between;
    padding-inline: 40px;
  }
  /* Satellite: Figma absolute left-[872px] on ~1360 content — anchor to trailing edge */
  .product-grid-graphic-intro__sat-wrap {
    position: absolute;
    z-index: 1;
    inset-inline-start: auto;
    inset-inline-end: 0;
    top: -16px;
    width: min(400px, 34vw);
    max-width: 400px;
  }
  .product-grid-graphic-intro__sat {
    margin-inline: 0;
    /* Keep the craft tight to the trailing edge if the PNG has uneven padding */
    object-position: right center;
  }
}
@media (max-width: 1023px) {
  .product-grid-graphic-intro__sat-wrap {
    margin-top: clamp(-8px, -1vw, 0);
    margin-bottom: clamp(8px, 2vw, 16px);
    width: min(320px, 72vw);
    max-width: 400px;
    margin-inline: auto;
  }
}
.product-grid-graphic-intro__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 368px));
  justify-content: center;
  align-items: stretch;
  gap: clamp(24px, 6vw, 56px);
  width: 100%;
}

.product-grid-graphic-intro__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
}

.product-grid-graphic-intro__bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.product-grid-graphic-intro__product {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  height: 100%;
  min-width: 0;
  text-align: left;
}

.product-grid-graphic-intro__category {
  margin: 0;
  font-family: var(--font-heading, "Outfit", sans-serif);
  font-weight: 500;
  font-size: clamp(0.75rem, 0.4vw + 0.7rem, 0.875rem);
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
  text-align: center;
}

.product-grid-graphic-intro__frame {
  box-sizing: border-box;
  width: 100%;
  max-width: 368px;
  padding: 8px;
  border-radius: 10px;
  background: rgb(255 255 255 / 0.1);
  border: 1px solid rgb(255 255 255 / 0.5);
}

.product-grid-graphic-intro__shot {
  position: relative;
  width: 100%;
  aspect-ratio: 352/235;
  border-radius: 5px;
  overflow: hidden;
  background: #464646;
}

.product-grid-graphic-intro__shot-img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
  object-position: center top;
}

.product-grid-graphic-intro__shot-img--cover {
  object-fit: cover;
}

.product-grid-graphic-intro__shot-img--contain {
  object-fit: contain;
}

.product-grid-graphic-intro__shot-img--fill {
  object-fit: fill;
}

.product-grid-graphic-intro__shot-img--fit-width {
  width: 100%;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
  object-fit: contain;
}

.product-grid-graphic-intro__shot-img--fit-height {
  width: auto;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
  object-fit: contain;
}


.product-grid-graphic-intro__product-name {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 300;
  font-size: clamp(1.5rem, 1.5vw + 1rem, 2.125rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
  text-align: left;
  width: 100%;
  max-width: 368px;
  align-self: center;
}

.wp-block-kratos-product-grid-graphic-intro .product-grid-graphic-intro__product-name {
  font-size: clamp(1.125rem, 0.9vw + 1rem, 1.5rem);
  font-weight: 400;
}

.product-grid-graphic-intro__card-body {
  margin: 0;
  font-size: 1rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.8);
  text-align: left;
  width: 100%;
  max-width: 368px;
  align-self: center;
}

.product-grid-graphic-intro__card-cta.hero__cta {
  margin-top: auto;
  width: 100%;
  max-width: 368px;
  align-self: center;
}

@media (max-width: 1023px) {
  .product-grid-graphic-intro {
    padding: 40px 20px;
  }
  .product-grid-graphic-intro__grid {
    grid-template-columns: 1fr;
    gap: clamp(32px, 5vw, 40px);
    max-width: 400px;
    margin-inline: auto;
  }
  .product-grid-graphic-intro__panel.content-panel {
    gap: 24px;
    padding: 20px;
  }
  .product-grid-graphic-intro__title {
    text-transform: none;
  }
}
@media (min-width: 720px) and (max-width: 1023px) {
  .product-grid-graphic-intro__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
  }
  .product-grid-graphic-intro__product:nth-child(3) {
    grid-column: 1/-1;
    max-width: 368px;
    margin-inline: auto;
  }
}
@media (max-width: 719px) {
  .product-grid-graphic-intro__sat-wrap {
    width: min(280px, 85vw);
  }
}
/* Wide screens: fluid scale from 1440px baseline through 2560px.
   Grid rail = pattern block (1360 → 1813 → 2418); intro slot 680 → 907 → 1209. */
@media (min-width: 1440px) {
  .product-grid-graphic-intro {
    max-width: none;
    width: 100%;
    padding-block: clamp(120px, 8.333vw, 213.333px);
    border-top-width: clamp(0.5px, 0.0347vw, 0.889px);
    border-bottom-width: clamp(0.5px, 0.0347vw, 0.889px);
  }
  .product-grid-graphic-intro__inner {
    max-width: clamp(var(--pattern-block-width), 94.444vw, 2417.778px);
    gap: clamp(40px, 2.778vw, 71.111px);
  }
  .product-grid-graphic-intro__intro {
    min-height: clamp(280px, 19.444vw, 497.778px);
  }
  .product-grid-graphic-intro .content-slot--max-680 {
    max-width: clamp(680px, 47.222vw, 1208.889px);
  }
  .product-grid-graphic-intro__panel.content-panel {
    max-width: none;
    width: 100%;
    gap: clamp(16px, 1.111vw, 28.444px);
    padding: clamp(40px, 2.778vw, 71.111px);
    border-width: clamp(0.5px, 0.0347vw, 0.889px);
    -webkit-backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
    backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
  }
  .product-grid-graphic-intro__title {
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
  .product-grid-graphic-intro .content-panel__eyebrow {
    font-size: clamp(0.875rem, 0.972vw, 1.555625rem);
  }
  .product-grid-graphic-intro .content-panel__body {
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
  }
  .product-grid-graphic-intro .hero__cta {
    gap: clamp(8px, 0.556vw, 14.222px);
    min-width: clamp(136px, 9.444vw, 241.778px);
    padding: clamp(8px, 0.556vw, 14.222px) clamp(12px, 0.833vw, 21.333px);
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
    line-height: clamp(1.5rem, 1.667vw, 2.667rem);
  }
  .product-grid-graphic-intro .hero__cta-icon-img {
    height: clamp(16px, 1.111vw, 28.444px);
    width: auto;
  }
  .product-grid-graphic-intro__sat-wrap {
    top: clamp(-16px, -1.146vw, -29.333px);
    width: clamp(400px, 27.778vw, 711.111px);
    max-width: none;
  }
  .product-grid-graphic-intro__grid {
    grid-template-columns: repeat(3, minmax(0, clamp(368px, 25.556vw, 654.222px)));
    padding-inline: clamp(40px, 2.778vw, 71.111px);
  }
  .product-grid-graphic-intro__product {
    gap: clamp(16px, 1.111vw, 28.444px);
  }
  .product-grid-graphic-intro__category {
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
  }
  .product-grid-graphic-intro__frame {
    max-width: none;
    padding: clamp(8px, 0.556vw, 14.222px);
    border-radius: clamp(10px, 0.694vw, 17.778px);
    border-width: clamp(1px, 0.0694vw, 1.778px);
  }
  .product-grid-graphic-intro__shot {
    border-radius: clamp(5px, 0.347vw, 8.889px);
  }
  .product-grid-graphic-intro__product-name {
    font-size: clamp(1.25rem, 1.389vw, 2.222rem);
    line-height: clamp(1.75rem, 1.944vw, 3.111rem);
  }
}
/* EO/RS — choose right digitizer (Figma choose-right-digitizer 1440 / 1920 / 2560;
   nodes 40000160:3949, 40000245:4200, 40000245:4220)
   Content rail 1020 → 1360 → 1813; stack 680/1020, panel 510/1020, overlap −170/1020. */
.blueprint-hardware-stack {
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: var(--hero-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(48px, 10vw, 120px) clamp(20px, 5vw, 40px);
  overflow: hidden;
}

.blueprint-hardware-stack__decor {
  display: none;
  position: absolute;
  z-index: 0;
  top: 50%;
  width: min(800px, 42vw);
  pointer-events: none;
  mix-blend-mode: screen;
  opacity: 0.2;
}

.blueprint-hardware-stack__decor--left {
  left: calc(50% - 720px);
  transform: translate(-50%, -50%);
}

.blueprint-hardware-stack__decor--right {
  left: calc(50% + 508px);
  transform: translate(-50%, -50%);
}

.blueprint-hardware-stack__decor-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 0;
}

.blueprint-hardware-stack__decor-strip {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.blueprint-hardware-stack__decor-strip--top {
  aspect-ratio: 510/137;
}

.blueprint-hardware-stack__decor-strip--bottom {
  aspect-ratio: 510/140;
}

.blueprint-hardware-stack__decor-strip img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
  pointer-events: none;
}

.blueprint-hardware-stack__decor-strip--bottom img {
  object-position: center 36%;
  transform: scale(1.005);
}

@media (min-width: 1200px) {
  .blueprint-hardware-stack__decor {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.blueprint-hardware-stack__inner {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  width: 100%;
  max-width: var(--pattern-block-width);
  margin-inline: auto;
  min-width: 0;
}

.blueprint-hardware-stack__stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 0 1 min(680px, 100%);
  box-sizing: border-box;
  width: min(680px, 100%);
  max-width: 680px;
  margin-right: 0;
  z-index: 1;
}

.blueprint-hardware-stack__piece {
  position: relative;
  margin: 0;
  padding: 0;
  width: min(640px, 100%);
  aspect-ratio: 540/256;
  overflow: hidden;
}

.blueprint-hardware-stack__piece:not(:last-child) {
  margin-bottom: -24px;
}

.blueprint-hardware-stack__stack-img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.blueprint-hardware-stack__stack-img--cover {
  object-fit: cover;
}

.blueprint-hardware-stack__stack-img--contain {
  object-fit: contain;
}

.blueprint-hardware-stack__stack-img--fill {
  object-fit: fill;
}

.blueprint-hardware-stack__stack-img--fit-width {
  width: 100%;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
  object-fit: contain;
}

.blueprint-hardware-stack__stack-img--fit-height {
  width: auto;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
  object-fit: contain;
}


.blueprint-hardware-stack__piece--top .blueprint-hardware-stack__stack-img {
  object-position: center bottom;
}

.blueprint-hardware-stack__panel {
  flex: 0 0 auto;
  box-sizing: border-box;
  width: min(510px, 100%);
  max-width: 510px;
  z-index: 2;
  align-items: flex-start;
  text-align: left;
  gap: 16px;
  padding: clamp(20px, 4vw, 40px);
  border-radius: 0;
}

.blueprint-hardware-stack__title {
  font-size: clamp(1.625rem, 1.75vw + 1.125rem, 2.5rem);
}

/* Stack + panel as fractions of the 1020px rail (680/1020, 510/1020, −170/1020). */
@media (min-width: 1024px) {
  .blueprint-hardware-stack__inner {
    container-type: inline-size;
    container-name: blueprint-hardware-stack;
    max-width: 1020px;
    width: 100%;
    margin-inline: auto;
  }
  .blueprint-hardware-stack__stack {
    flex: 0 1 calc(100% * 680 / 1020);
    box-sizing: border-box;
    width: auto;
    max-width: none;
    margin-right: calc(-100% * 170 / 1020);
  }
  .blueprint-hardware-stack__piece {
    width: calc(100% * 640 / 680);
  }
  .blueprint-hardware-stack__piece:not(:last-child) {
    margin-bottom: calc(-100cqw * 24 / 1020);
  }
  .blueprint-hardware-stack__panel {
    flex: 0 0 calc(100% * 510 / 1020);
    box-sizing: border-box;
    width: auto;
    max-width: none;
  }
}
@media (min-width: 1230px) {
  .blueprint-hardware-stack {
    padding-inline: 0;
  }
  .blueprint-hardware-stack__inner {
    padding-inline: 0;
  }
}
/* Wide screens: fluid scale from 1440px baseline through 2560px.
   Content rail = frame width minus symmetric 210px side inset (1020 → 1360 → 1813). */
@media (min-width: 1440px) {
  .blueprint-hardware-stack {
    max-width: none;
    width: 100%;
    padding-block: clamp(120px, 8.333vw, 213.333px);
    border-bottom-width: clamp(0.5px, 0.0347vw, 0.889px);
  }
  .blueprint-hardware-stack__inner {
    max-width: clamp(1020px, 70.833vw, 1813.333px);
  }
  .blueprint-hardware-stack__decor {
    width: clamp(800px, 55.556vw, 1422.222px);
  }
  .blueprint-hardware-stack__decor--left {
    left: calc(50% - clamp(720px, 50vw, 1280px));
  }
  .blueprint-hardware-stack__decor--right {
    left: calc(50% + clamp(508px, 35.278vw, 903.11px));
  }
  .blueprint-hardware-stack__title {
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
  .blueprint-hardware-stack__panel {
    gap: clamp(16px, 1.111vw, 28.444px);
    padding: clamp(40px, 2.778vw, 71.111px);
    border-width: clamp(0.5px, 0.0347vw, 0.889px);
    -webkit-backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
    backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
  }
  .blueprint-hardware-stack .content-panel__eyebrow {
    font-size: clamp(0.875rem, 0.972vw, 1.555625rem);
  }
  .blueprint-hardware-stack .content-panel__body {
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
  }
  .blueprint-hardware-stack .hero__cta {
    gap: clamp(8px, 0.556vw, 14.222px);
    min-width: clamp(136px, 9.444vw, 241.778px);
    padding: clamp(8px, 0.556vw, 14.222px) clamp(12px, 0.833vw, 21.333px);
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
    line-height: clamp(1.5rem, 1.667vw, 2.667rem);
  }
  .blueprint-hardware-stack .hero__cta-icon-img {
    height: clamp(16px, 1.111vw, 28.444px);
    width: auto;
  }
}
@media (max-width: 1023px) {
  .blueprint-hardware-stack {
    padding: 40px 20px;
  }
  .blueprint-hardware-stack__inner {
    flex-direction: column;
    align-items: stretch;
  }
  .blueprint-hardware-stack__stack {
    margin-right: 0;
    order: 2;
    width: min(400px, 100%);
    max-width: 400px;
    margin-inline: auto;
  }
  .blueprint-hardware-stack__piece {
    width: 100%;
  }
  .blueprint-hardware-stack__panel {
    order: 1;
    width: 100%;
    max-width: none;
    margin-bottom: clamp(8px, 2vw, 16px);
    gap: 24px;
    padding: 20px;
  }
  .blueprint-hardware-stack__title {
    text-transform: none;
  }
}
@media (max-width: 719px) {
  .blueprint-hardware-stack__stack {
    width: min(320px, 88vw);
    max-width: 320px;
  }
  .blueprint-hardware-stack__piece:not(:last-child) {
    margin-bottom: -18px;
  }
}
/* EO/RS — high-quality antennas (Figma high-quality-antennas-for-eo-missions 1440 / 1920 / 2560;
   nodes 40000160:3942, 40000244:4158, 40000244:4169)
   Row rail 1020 → 1360 → 1813; panel 654 → 872 → 1163 (× 654/1020 of rail); overlap −40 → −53 → −71. */
.blueprint-media-text {
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: var(--hero-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(48px, 10vw, 120px) clamp(20px, 5vw, 40px);
  overflow: hidden;
}

.blueprint-media-text__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.blueprint-media-text__bg-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.2;
  mix-blend-mode: screen;
}

.blueprint-media-text__inner {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: var(--pattern-block-width);
  margin-inline: auto;
  container-type: inline-size;
  container-name: eo-rs-antennas;
}

@media (min-width: 1230px) {
  .blueprint-media-text {
    padding-inline: 0;
  }
  .blueprint-media-text__inner {
    padding-inline: 0;
  }
}
.blueprint-media-text__row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  width: 100%;
  /* Figma: horizontal padding 210px on 1440 (1020px rail) — centered in
   * `--pattern-block-width` aligns the band with the second vertical grid line. */
  max-width: min(1020px, 100%);
  margin-inline: auto;
  min-width: 0;
  gap: 0;
}

/* Glass panel — 654/1020 of row at 1440; scales with rail on wide viewports (see ≥1024 rules). */
.blueprint-media-text__row > .blueprint-media-text__panel {
  align-items: flex-start;
  text-align: left;
  gap: 16px;
  padding: clamp(20px, 4vw, 40px);
  border-radius: 0;
}

.blueprint-media-text__title {
  font-size: clamp(1.625rem, 1.75vw + 1.125rem, 2.5rem);
}

.blueprint-media-text__title-line {
  display: block;
}

.blueprint-media-text__title-line + .blueprint-media-text__title-line {
  margin-top: 0.1em;
}

.blueprint-media-text__media-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  flex: 1 1 auto;
}

.blueprint-media-text__flip {
  width: min(406px, 100%);
}

.blueprint-media-text__figure {
  position: relative;
  margin: 0;
  width: 100%;
  aspect-ratio: 240/300;
  overflow: visible;
}

.blueprint-media-text__img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  transform: scaleX(-1);
  transform-origin: center;
}

.blueprint-media-text__img--cover {
  object-fit: cover;
}

.blueprint-media-text__img--contain {
  object-fit: contain;
}

.blueprint-media-text__img--fill {
  object-fit: fill;
}

.blueprint-media-text__img--fit-width {
  width: 100%;
  height: auto;
  top: 50%;
  transform: translateY(-50%) scaleX(-1);
  object-fit: contain;
}

.blueprint-media-text__img--fit-height {
  width: auto;
  height: 100%;
  left: 50%;
  transform: translateX(-50%) scaleX(-1);
  object-fit: contain;
}


@media (prefers-reduced-motion: no-preference) {
  /* Matches Figma node wrapper: `-scale-y-100` + `rotate-180`. */
  .blueprint-media-text__flip {
    transform: scaleY(-1) rotate(180deg);
    transform-origin: center;
  }
}
/* Panel + overlap as fractions of the 1020px rail (654/1020, −40/1020). */
@media (min-width: 1024px) {
  .blueprint-media-text__row {
    flex-direction: row;
    align-items: center;
    isolation: isolate;
  }
  .blueprint-media-text__row > .blueprint-media-text__panel {
    flex: 0 0 calc(100% * 654 / 1020);
    box-sizing: border-box;
    width: auto;
    max-width: none;
    margin-right: calc(-100% * 40 / 1020);
    z-index: 2;
  }
  .blueprint-media-text__media-wrap {
    flex: 1 1 0%;
    min-width: 0;
    z-index: 1;
    justify-content: flex-end;
  }
  .blueprint-media-text__flip {
    width: 100%;
    margin-inline: auto 0;
  }
}
/* Wide screens: fluid scale from 1440px baseline through 2560px.
   Content rail = frame width minus symmetric 210px side inset (1020 → 1360 → 1813). */
@media (min-width: 1440px) {
  .blueprint-media-text {
    max-width: none;
    width: 100%;
    padding-block: clamp(120px, 8.333vw, 213.333px);
    border-width: clamp(0.5px, 0.0347vw, 0.889px);
  }
  .blueprint-media-text__inner {
    max-width: clamp(var(--pattern-block-width), 94.444vw, 2417.778px);
  }
  .blueprint-media-text__row {
    max-width: clamp(1020px, 70.833vw, 1813.333px);
  }
  .blueprint-media-text__title {
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
  .blueprint-media-text__row > .blueprint-media-text__panel {
    gap: clamp(16px, 1.111vw, 28.444px);
    padding: clamp(40px, 2.778vw, 71.111px);
    border-width: clamp(0.5px, 0.0347vw, 0.889px);
    -webkit-backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
    backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
  }
  .blueprint-media-text .content-panel__eyebrow {
    font-size: clamp(0.875rem, 0.972vw, 1.555625rem);
  }
  .blueprint-media-text .content-panel__body {
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
  }
  .blueprint-media-text .hero__cta {
    gap: clamp(8px, 0.556vw, 14.222px);
    min-width: clamp(136px, 9.444vw, 241.778px);
    padding: clamp(8px, 0.556vw, 14.222px) clamp(12px, 0.833vw, 21.333px);
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
    line-height: clamp(1.5rem, 1.667vw, 2.667rem);
  }
  .blueprint-media-text .hero__cta-icon-img {
    height: clamp(16px, 1.111vw, 28.444px);
    width: auto;
  }
}
/* Tablet + phone: stack (panel over dish), same rhythm as mobile landscape bands. */
@media (max-width: 1023px) {
  .blueprint-media-text {
    padding: 40px 20px;
  }
  .blueprint-media-text__row > .blueprint-media-text__panel {
    position: relative;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-bottom: clamp(-16px, -2vw, -8px);
    gap: 24px;
    padding: 20px;
  }
  .blueprint-media-text__title {
    text-transform: none;
  }
  .blueprint-media-text__flip {
    width: min(400px, 72vw);
    margin-inline: auto;
  }
}
@media (max-width: 719px) {
  .blueprint-media-text__flip {
    width: min(320px, 85vw);
  }
}
.split-bracket-cards__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 510px));
  justify-content: center;
  gap: clamp(32px, 10vw, 170px);
  width: 100%;
}

/* Same card fill as osq-eo-missions panels (#101115 + blur). */
.split-bracket-cards__panel.content-panel {
  align-items: flex-start;
  text-align: left;
  gap: 16px;
  padding: clamp(20px, 4vw, 40px);
  border-radius: 0;
  background-color: #101115;
  -webkit-backdrop-filter: blur(20px) saturate(1.15);
  backdrop-filter: blur(20px) saturate(1.15);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .split-bracket-cards__panel.content-panel {
    background-color: #101115;
  }
}
.split-bracket-cards__icon {
  display: block;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  object-fit: contain;
  object-position: left center;
}

.split-bracket-cards__card-title {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.25rem, 0.9vw + 1rem, 1.75rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}

.split-bracket-cards__list {
  margin: 0;
  padding: 0;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1rem, 0.45vw + 0.9rem, 1.25rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}

.split-bracket-cards__list ul,
.split-bracket-cards__list ol,
.split-bracket-cards__list-ul {
  margin: 0;
  padding: 0 0 0 1.5rem;
  list-style: disc;
}

.split-bracket-cards__list li {
  margin: 0 0 10px;
  padding-inline-start: 0.125em;
}

.split-bracket-cards__list li:last-child {
  margin-bottom: 0;
}

.split-bracket-cards__list p {
  margin: 0 0 10px;
}

.split-bracket-cards__list p:last-child {
  margin-bottom: 0;
}

ul.split-bracket-cards__list.is-list-view {
  list-style-type: disc;
  margin-left: 1.5rem;
  padding-inline-start: 0.125em;
}

.split-bracket-cards__list.is-list-view p {
  display: list-item;
  list-style-type: disc;
  margin-left: 1.5rem;
  padding-inline-start: 0.125em;
}

/* Wide screens: fluid scale from 1440px baseline through 2560px.
   Header 850 → 1133 → 1511; card pair 510 + 170 gap → 680 + 227 → 907 + 302. */
@media (min-width: 1440px) {
  .split-bracket-cards {
    max-width: none;
    width: 100%;
    padding-block: clamp(120px, 8.333vw, 213.333px);
  }
  .split-bracket-cards__inner {
    max-width: clamp(var(--pattern-block-width), 94.444vw, 2417.778px);
    gap: clamp(120px, 8.333vw, 213.333px);
  }
  .split-bracket-cards__header {
    width: clamp(850px, 59.028vw, 1511.111px);
    gap: clamp(10px, 0.694vw, 17.778px);
  }
  .split-bracket-cards__title {
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
  .split-bracket-cards__lead {
    font-size: clamp(1.25rem, 1.389vw, 2.222rem);
  }
  .split-bracket-cards__cards {
    max-width: clamp(1190px, 82.639vw, 2115.556px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(170px, 11.806vw, 302.222px);
  }
  .split-bracket-cards__panel.content-panel {
    gap: clamp(16px, 1.111vw, 28.444px);
    padding: clamp(40px, 2.778vw, 71.111px);
    border-width: clamp(0.5px, 0.0347vw, 0.889px);
    -webkit-backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
    backdrop-filter: blur(clamp(20px, 1.389vw, 35.556px)) saturate(1.15);
  }
  .split-bracket-cards__icon {
    width: clamp(40px, 2.778vw, 71.111px);
    height: clamp(40px, 2.778vw, 71.111px);
  }
  .split-bracket-cards__card-title {
    font-size: clamp(1.75rem, 1.944vw, 3.111rem);
  }
  .split-bracket-cards__list {
    font-size: clamp(1.25rem, 1.389vw, 2.222rem);
  }
  .split-bracket-cards__list ul,
  .split-bracket-cards__list ol,
  .split-bracket-cards__list-ul {
    padding-inline-start: clamp(30px, 2.083vw, 53.333px);
  }
  .split-bracket-cards__list li {
    margin-bottom: clamp(10px, 0.694vw, 17.778px);
  }
  .split-bracket-cards__list.is-list-view,
  .split-bracket-cards__list.is-list-view p {
    margin-left: clamp(30px, 2.083vw, 53.333px);
    padding-inline-start: 0.125em;
  }
  .split-bracket-cards .hero__cta {
    gap: clamp(8px, 0.556vw, 14.222px);
    min-width: clamp(136px, 9.444vw, 241.778px);
    padding: clamp(8px, 0.556vw, 14.222px) clamp(12px, 0.833vw, 21.333px);
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
    line-height: clamp(1.5rem, 1.667vw, 2.667rem);
  }
  .split-bracket-cards .hero__cta-icon-img {
    height: clamp(16px, 1.111vw, 28.444px);
    width: auto;
  }
}
@media (max-width: 1023px) {
  .split-bracket-cards__cards {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 719px) {
  .split-bracket-cards {
    padding: 40px 20px;
  }
  .split-bracket-cards__title {
    text-transform: none;
  }
  .split-bracket-cards__panel.content-panel {
    gap: 24px;
    padding: 20px;
  }
}
/* EO/RS — proven systems (Figma proven-eo-rs-systems 1440 / 1920 / 2560;
   nodes 40000160:3828, 40000243:3795, 40000243:3836)
   Typography, stair bullets, and card rail (1020 → 1360 → 1813) scale × viewport / 1440.
   Cards: Figma flex 3-up with no column gutter; gap only between image and title per card. */
.split-bullets-resource-grid + .split-bracket-cards {
  border-top-width: 0;
}

.split-bullets-resource-grid {
  --split-bullets-resource-chamfer: clamp(10px, 2.2vw, 22px);
  position: relative;
  width: 100%;
  max-width: var(--hero-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  padding: clamp(48px, 10vw, 120px) clamp(20px, 5vw, 40px);
  /* border: 0.5px solid rgba(255, 255, 255, 0.2); */
  overflow: hidden;
}

.split-bullets-resource-grid__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.split-bullets-resource-grid__bg-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0.4;
}

.split-bullets-resource-grid__inner {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: var(--pattern-block-width);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: clamp(40px, 8vw, 80px);
}

@media (min-width: 1230px) and (max-width: 1439.98px) {
  .split-bullets-resource-grid {
    padding-inline: 0;
  }
  .split-bullets-resource-grid__inner {
    padding-inline: 0;
  }
}
.split-bullets-resource-grid__intro {
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 4vw, 40px);
  width: 100%;
  min-width: 0;
}

.split-bullets-resource-grid__title {
  margin: 0;
  align-self: flex-start;
  max-width: min(510px, 100%);
  font-family: var(--font-display);
  font-weight: 300;
  font-size: clamp(1.625rem, 2vw + 1rem, 2.5rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}

.split-bullets-resource-grid__bullets {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  width: min(850px, 100%);
  margin-inline-start: auto;
}

.split-bullets-resource-grid__bullet-row--1 {
  width: min(510px, 100%);
}

.split-bullets-resource-grid__bullet-row--2 {
  display: flex;
  justify-content: flex-end;
  width: min(680px, 100%);
}

.split-bullets-resource-grid__bullet-row--3 {
  display: flex;
  justify-content: flex-end;
  width: min(850px, 100%);
}

.split-bullets-resource-grid__bullet {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  width: 100%;
  max-width: min(510px, 100%);
  padding: 20px;
  background: linear-gradient(90deg, #7e0c36 0%, rgba(126, 12, 54, 0) 100%);
}

.split-bullets-resource-grid__bullet-dot {
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  border: 1px solid #fff;
  border-radius: 50%;
  box-sizing: border-box;
}

.split-bullets-resource-grid__bullet-text {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0;
  color: #fff;
}

.split-bullets-resource-grid__success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  min-width: 0;
  text-align: center;
}

.split-bullets-resource-grid__success-lead {
  margin: 0;
  padding: 0 10px;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1.125rem, 1.2vw + 1rem, 1.5rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}

.split-bullets-resource-grid__cards {
  display: flex;
  align-items: flex-start;
  column-gap: 0;
  width: 100%;
  max-width: 1020px;
  margin-inline: auto;
}

.split-bullets-resource-grid__card {
  display: flex;
  flex: 1 0 0;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  min-width: 0;
  text-decoration: none;
  color: inherit;
  transition: color 0.15s ease;
}

.split-bullets-resource-grid__card-trigger {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  text-align: inherit;
  width: 100%;
  cursor: pointer;
  color: inherit;
  font: inherit;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.split-bullets-resource-grid__card:hover .split-bullets-resource-grid__card-title,
.split-bullets-resource-grid__card:focus-visible .split-bullets-resource-grid__card-title,
.split-bullets-resource-grid__card-trigger:hover .split-bullets-resource-grid__card-title,
.split-bullets-resource-grid__card-trigger:focus-visible .split-bullets-resource-grid__card-title {
  color: var(--color-brand-red);
}

.split-bullets-resource-grid__card-trigger:hover .media-text-overlap__play-icon-overlay {
  transform: translate(-50%, -50%) scale(1.1);
  background: var(--wp--preset--color--brand-red, #ed001c);
  border-color: var(--wp--preset--color--white, #fff);
  box-shadow: 0 0 30px rgba(237, 0, 28, 0.6);
}

.split-bullets-resource-grid__card:focus-visible,
.split-bullets-resource-grid__card-trigger:focus-visible {
  outline: 2px solid var(--color-brand-red);
  outline-offset: 4px;
}

.split-bullets-resource-grid__figure {
  position: relative;
  width: 100%;
  aspect-ratio: 321/214;
  overflow: hidden;
  -webkit-clip-path: polygon(0 0, calc(100% - var(--split-bullets-resource-chamfer)) 0, 100% var(--split-bullets-resource-chamfer), 100% 100%, var(--split-bullets-resource-chamfer) 100%, 0 calc(100% - var(--split-bullets-resource-chamfer)));
  clip-path: polygon(0 0, calc(100% - var(--split-bullets-resource-chamfer)) 0, 100% var(--split-bullets-resource-chamfer), 100% 100%, var(--split-bullets-resource-chamfer) 100%, 0 calc(100% - var(--split-bullets-resource-chamfer)));
}

.split-bullets-resource-grid__img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.split-bullets-resource-grid__img--cover {
  object-fit: cover;
}

.split-bullets-resource-grid__img--fit-width {
  width: 100%;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
  object-fit: contain;
}

.split-bullets-resource-grid__img--fit-height {
  width: auto;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
  object-fit: contain;
}

.split-bullets-resource-grid__card-title {
  margin: 0;
  max-width: 18rem;
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(1rem, 0.5vw + 1rem, 1.25rem);
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
  text-align: center;
  text-wrap: balance;
  transition: color 0.15s ease;
}

/* Wide screens: fluid scale from 1440px baseline through 2560px (must follow base rules). */
@media (min-width: 1440px) {
  .split-bullets-resource-grid {
    --split-bullets-resource-chamfer: clamp(22px, 1.528vw, 39.111px);
    max-width: none;
    width: 100%;
    padding-block: clamp(120px, 8.333vw, 213.333px);
    padding-inline: clamp(40px, 2.778vw, 71.111px);
  }
  .split-bullets-resource-grid__inner {
    max-width: clamp(var(--pattern-block-width), 94.444vw, 2417.778px);
    gap: clamp(80px, 5.556vw, 142.222px);
  }
  .split-bullets-resource-grid__intro {
    gap: clamp(40px, 2.778vw, 71.111px);
  }
  .split-bullets-resource-grid__title {
    max-width: clamp(510px, 35.417vw, 906.667px);
    font-size: clamp(2.5rem, 2.778vw, 4.444rem);
  }
  .split-bullets-resource-grid__bullets {
    width: clamp(850px, 59.028vw, 1511.111px);
    gap: clamp(8px, 0.556vw, 14.222px);
  }
  .split-bullets-resource-grid__bullet-row--1 {
    width: clamp(510px, 35.417vw, 906.667px);
  }
  .split-bullets-resource-grid__bullet-row--2 {
    width: clamp(680px, 47.222vw, 1208.889px);
  }
  .split-bullets-resource-grid__bullet-row--3 {
    width: clamp(850px, 59.028vw, 1511.111px);
  }
  .split-bullets-resource-grid__bullet {
    max-width: clamp(510px, 35.417vw, 906.667px);
    gap: clamp(10px, 0.694vw, 17.778px);
    padding: clamp(20px, 1.389vw, 35.556px);
  }
  .split-bullets-resource-grid__bullet-dot {
    width: clamp(10px, 0.694vw, 17.778px);
    height: clamp(10px, 0.694vw, 17.778px);
  }
  .split-bullets-resource-grid__bullet-text {
    font-size: clamp(1rem, 1.111vw, 1.7775rem);
    line-height: clamp(1.5rem, 1.667vw, 2.667rem);
  }
  .split-bullets-resource-grid__success {
    gap: clamp(16px, 1.111vw, 28.444px);
  }
  .split-bullets-resource-grid__success-lead {
    padding-inline: clamp(10px, 0.694vw, 17.778px);
    font-size: clamp(1.5rem, 1.667vw, 2.667rem);
  }
  .split-bullets-resource-grid__cards {
    max-width: clamp(1020px, 70.833vw, 1813.333px);
    column-gap: 0;
  }
  .split-bullets-resource-grid__card {
    gap: clamp(16px, 1.111vw, 28.444px);
  }
  .split-bullets-resource-grid__card-title {
    max-width: clamp(260px, 18.056vw, 462.222px);
    padding-inline: clamp(16px, 1.111vw, 28.444px);
    font-size: clamp(1.25rem, 1.389vw, 2.222rem);
  }
}
@media (max-width: 1023px) {
  .split-bullets-resource-grid__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .split-bullets-resource-grid__card {
    flex: none;
  }
}
@media (max-width: 719px) {
  .split-bullets-resource-grid {
    padding: 40px 20px;
  }
  .split-bullets-resource-grid__title {
    text-transform: none;
  }
  .split-bullets-resource-grid__bullets {
    width: 100%;
    margin-inline-start: 0;
  }
  .split-bullets-resource-grid__bullet-row--1,
  .split-bullets-resource-grid__bullet-row--2,
  .split-bullets-resource-grid__bullet-row--3 {
    width: 100%;
    justify-content: stretch;
  }
  .split-bullets-resource-grid__bullet {
    max-width: none;
  }
  .split-bullets-resource-grid__cards {
    grid-template-columns: 1fr;
  }
  .split-bullets-resource-grid__card-title {
    max-width: 22rem;
  }
}


