/* ============================================================
   INDIVIDUAL PARTNER OUTER PANEL
   ============================================================ */

.rs-partner-detail-panel{
  --partner-detail-pad:clamp(28px,3vw,52px);

  position:relative;
  isolation:isolate;

  width:100%;

  padding:var(--partner-detail-pad);

  color:var(--partner-text);

  border:1px solid rgba(148,163,184,.38);

  background:
    radial-gradient(
      circle at 90% 3%,
      rgba(41,102,238,.10),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      rgba(15,23,42,.96),
      rgba(15,23,42,.86) 50%,
      rgba(15,23,42,.82)
    );

  box-shadow:
    0 0 7px rgba(41,102,238,.60),
    0 0 18px rgba(41,102,238,.20),
    0 24px 60px rgba(0,0,0,.32);
}


.rs-partner-detail-title{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
    text-shadow:
      0 2px 3px rgba(0,0,0,.90),
      0 5px 12px rgba(0,0,0,.72),
    0 10px 28px rgba(0,0,0,.45);


}

.rs-partner-detail-title-partner{
  display:block;
  color:#fff;
  font-weight:650;
}

.rs-partner-detail-title-plus{
  color:var(--partner-blue);
  font-weight:500;
    text-shadow:
      0 2px 3px rgba(0,0,0,.90),
    0 0 12px rgba(125,211,252,.30);
}

.rs-partner-detail-title-rackstar{
  display:block;
  color:#fff;
  font-weight:850;
  letter-spacing:-.05em;
}


/* ============================================================
   RACKSTAR PARTNERS HUB
   ============================================================ */

.rs-partners{
  --partner-green:#bef264;
  --partner-blue:#7dd3fc;
  --partner-text:#e5ecff;
  --partner-muted:#a9b6cb;
  --partner-border:rgba(148,163,184,.16);
  padding:0 20px 0px;
}

.rs-partners,
.rs-partners *{
  box-sizing:border-box;
}

.rs-partners-shell{
  width:min(100%,1800px);
  margin:0 auto;
}

.rs-partners-panel{
  --partner-panel-pad:clamp(28px,3vw,52px);
  position:relative;
  overflow:hidden;
  isolation:isolate;
  padding:var(--partner-panel-pad);
  color:var(--partner-text);
  border:1px solid rgba(148,163,184,.38);
  background:
    radial-gradient(circle at 90% 3%,rgba(41,102,238,.15),transparent 30%),
    linear-gradient(
      135deg,
      rgba(15,23,42,.96),
      rgba(15,23,42,.86) 50%,
      rgba(15,23,42,.82)
    );
  box-shadow:
    0 0 7px rgba(41,102,238,.60),
    0 0 18px rgba(41,102,238,.20),
    0 24px 60px rgba(0,0,0,.32);
}


/* ============================================================
   HERO
   ============================================================ */

/* ============================================================
   SHARED HERO
   Image and positioning are defined per page / hero
   ============================================================ */

.rs-partners-hero{
  position:relative;

  display:grid;
  grid-template-columns:
    minmax(0,1.15fr)
    minmax(420px,.85fr);

  align-items:center;

  min-height:590px;

  margin:
    calc(var(--partner-panel-pad) * -1)
    calc(var(--partner-panel-pad) * -1)
    0;

  padding:
    clamp(56px,6vw,96px)
    var(--partner-panel-pad);

  overflow:hidden;

  /*
   * Per-page variables:
   *
   * --rs-hero-image
   * --rs-hero-position
   * --rs-hero-size
   */

  background-image:
    linear-gradient(
      90deg,
      rgba(2,6,23,.65) 0%,
      rgba(2,6,23,.52) 30%,
      rgba(2,6,23,.25) 55%,
      rgba(2,6,23,.05) 75%,
      rgba(2,6,23,0) 100%
    ),
    var(--rs-hero-image, none);

  background-position:
    left top,
    var(--rs-hero-position, center right);

  background-size:
    100% 100%,
    var(--rs-hero-size, cover);

  background-repeat:
    no-repeat,
    no-repeat;
}

.rs-partners-hero:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(125,211,252,.28),
    rgba(190,242,100,.18),
    transparent
  );
}

.rs-partners-hero-content{
  position:relative;
  z-index:2;
  max-width:900px;
}

.rs-partners-eyebrow,
.rs-partner-section-eyebrow{
  margin:0 0 14px;
  color:var(--partner-blue);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.rs-partners-hero h1{
  margin:0;
  max-width:940px;
  color:#fff;
  font-size:clamp(3rem,5vw,5.5rem);
  line-height:.98;
  letter-spacing:-.05em;
}

.rs-partners-hero-lead{
  max-width:840px;
  margin:28px 0 0;
  color:#e2e8f0;
  font-size:clamp(1.15rem,1.5vw,1.4rem);
  line-height:1.55;
}

.rs-partners-hero-copy{
  max-width:800px;
  margin:18px 0 0;
  color:#9eacc2;
  font-size:1rem;
  line-height:1.75;
}

.rs-partners-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}


/* ============================================================
   BUTTONS
   ============================================================ */

.rs-partner-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:46px;
  padding:12px 19px;
  border:1px solid rgba(190,242,100,.44);
  border-radius:8px;
  background:rgba(190,242,100,.10);
  color:#f8fafc;
  font-size:.92rem;
  font-weight:750;
  text-decoration:none;
  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease;
}

.rs-partner-btn:hover{
  transform:translateY(-1px);
  border-color:rgba(190,242,100,.76);
  background:rgba(190,242,100,.16);
}

.rs-partner-btn--secondary{
  border-color:rgba(125,211,252,.30);
  background:rgba(125,211,252,.06);
}


.rs-partner-btn--inquiry{
  color:#eaf7ff;
  border-color:rgba(125,211,252,.55);

  background:
    linear-gradient(
      135deg,
      rgba(41,102,238,.38),
      rgba(20,74,160,.58)
    );

  box-shadow:
    0 0 0 1px rgba(125,211,252,.08) inset,
    0 6px 18px rgba(41,102,238,.18);

  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease;
}

.rs-partner-btn--inquiry:hover{
  color:#fff;
  border-color:rgba(125,211,252,.85);

  background:
    linear-gradient(
      135deg,
      rgba(52,120,255,.92),
      rgba(25,87,190,.96)
    );

  box-shadow:
    0 0 16px rgba(125,211,252,.20),
    0 8px 24px rgba(41,102,238,.28);

  transform:translateY(-1px);
}


.rs-partner-btn--buy{
  color:#08110a;

  border-color:rgba(190,242,100,.90);

  background:
    linear-gradient(
      135deg,
      rgba(190,242,100,.96),
      rgba(132,204,22,.90)
    );

  box-shadow:
    0 0 0 1px rgba(255,255,255,.10) inset,
    0 5px 18px rgba(132,204,22,.18);

  font-weight:850;

  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease;
}

.rs-partner-btn--buy:hover{
  color:#050a06;

  border-color:#d9f99d;

  background:
    linear-gradient(
      135deg,
      #d9f99d,
      #bef264
    );

  box-shadow:
    0 0 16px rgba(190,242,100,.22),
    0 8px 24px rgba(132,204,22,.22);

  transform:translateY(-1px);
}


/* ============================================================
   GENERAL SECTION HEADING
   ============================================================ */

.rs-partner-section-heading{
  max-width:930px;
}

.rs-partner-section-heading h2{
  margin:0;
  color:#f8fafc;
  font-size:clamp(2rem,3.2vw,3.35rem);
  line-height:1.05;
  letter-spacing:-.035em;
}

.rs-partner-section-heading > p{
  max-width:820px;
  margin:18px 0 0;
  color:var(--partner-muted);
  line-height:1.7;
}


/* ============================================================
   INTRO
   ============================================================ */

.rs-partner-intro{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:clamp(40px,7vw,110px);
  padding:clamp(70px,7vw,110px) 0;
  border-bottom:1px solid var(--partner-border);
}

.rs-partner-intro-copy{
  align-self:end;
}

.rs-partner-intro-copy p{
  margin:0 0 18px;
  color:#b8c4d6;
  font-size:1.04rem;
  line-height:1.8;
}

.rs-partner-intro-copy p:last-child{
  margin-bottom:0;
}


.rs-partner-intro-copy-heading{
  margin:0 0 16px;
  color:var(--partner-blue);
  font-size:1rem;
  font-weight:800;
  line-height:1.3;
  letter-spacing:.02em;
}


/* ============================================================
   FEATURED PARTNERS
   ============================================================ */

.rs-featured-partners{
  padding:clamp(70px,7vw,110px) 0;
  border-bottom:1px solid var(--partner-border);
}

.rs-featured-partner-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  margin-top:38px;
}

.rs-featured-partner{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  min-height:300px;
  overflow:hidden;
  border:1px solid rgba(148,163,184,.18);
  border-radius:12px;
  background:
    linear-gradient(
      135deg,
      rgba(15,23,42,.92),
      rgba(8,17,36,.82)
    );
}

.rs-featured-partner-logo{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:30px;
  overflow:hidden;

  border-right:1px solid rgba(125,211,252,.14);

  background:
    radial-gradient(
      circle at 50% 45%,
      rgba(125,211,252,.16) 0%,
      rgba(41,102,238,.08) 30%,
      transparent 68%
    ),
    linear-gradient(
      145deg,
      rgba(17,32,58,.96),
      rgba(5,13,29,.98)
    );
}

/* subtle technical grid */
.rs-featured-partner-logo::before{
  content:"";
  position:absolute;
  inset:0;

  background-image:
    linear-gradient(rgba(125,211,252,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(125,211,252,.035) 1px, transparent 1px);

  background-size:22px 22px;

  mask-image:
    radial-gradient(circle at center, #000 20%, transparent 75%);

  pointer-events:none;
}

/* soft glow behind logo */
.rs-featured-partner-logo::after{
  content:"";
  position:absolute;
  width:150px;
  height:70px;

  border-radius:50%;

  background:rgba(125,211,252,.12);
  filter:blur(32px);

  pointer-events:none;
}

.rs-featured-partner-logo img{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  height:auto;
  max-width:130px;
  max-height:95px;
  object-fit:contain;
  filter:
    brightness(0)
    invert(1);
  opacity:.92;
  transition:
    opacity .25s ease,
    transform .25s ease;
}

.rs-featured-partner:hover .rs-featured-partner-logo img{
  opacity:1;
  transform:scale(1.04);
}

.rs-featured-partner-content{
  display:flex;
  flex-direction:column;
  padding:30px;
}

.rs-partner-type{
  color:var(--partner-blue);
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.rs-featured-partner h3,
.rs-partner-card h3{
  margin:8px 0 12px;
  color:#f8fafc;
  font-size:1.45rem;
  line-height:1.1;
}

.rs-featured-partner p{
  margin:0;
  color:#aebbd0;
  line-height:1.7;
}

.rs-featured-partner-actions{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  margin-top:auto;
  padding-top:24px;
}

.rs-partner-text-link,
.rs-partner-external-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#e2e8f0;
  font-size:.88rem;
  font-weight:750;
  text-decoration:none;
}

.rs-partner-text-link{
  color:var(--partner-green);
}

.rs-partner-external-link{
  color:var(--partner-blue);
}


/* ============================================================
   DIRECTORY
   ============================================================ */

.rs-partner-directory{
  padding:clamp(70px,7vw,110px) 0;
  scroll-margin-top:120px;
}

.rs-partner-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  margin-top:38px;
}


/* ============================================================
   PARTNER CARD
   ============================================================ */

.rs-partner-card{
  display:flex;
  flex-direction:column;
  min-height:440px;
  overflow:hidden;

  border:1px solid rgba(148,163,184,.16);
  border-radius:12px;

  background:
    linear-gradient(
      145deg,
      rgba(15,23,42,.94),
      rgba(9,18,38,.84)
    );

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}

.rs-partner-card:hover{
  transform:translateY(-2px);

  border-color:rgba(125,211,252,.30);

  box-shadow:
    0 18px 40px rgba(0,0,0,.20);
}


/* ============================================================
   PARTNER LOGO
   Converts transparent PNG logos to white
   ============================================================ */

/* ============================================================
   PARTNER LOGO PANEL
   ============================================================ */

.rs-partner-card-logo{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;

  min-height:160px;
  padding:28px;
  overflow:hidden;

  border-bottom:1px solid rgba(125,211,252,.12);

  background:
    radial-gradient(
      circle at 50% 45%,
      rgba(125,211,252,.11) 0%,
      rgba(41,102,238,.05) 32%,
      transparent 68%
    ),
    linear-gradient(
      145deg,
      rgba(15,28,51,.92),
      rgba(5,13,29,.96)
    );
}


/* Subtle technical grid */

.rs-partner-card-logo::before{
  content:"";
  position:absolute;
  inset:0;

  background-image:
    linear-gradient(
      rgba(125,211,252,.025) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.025) 1px,
      transparent 1px
    );

  background-size:20px 20px;

  mask-image:
    radial-gradient(
      circle at center,
      #000 15%,
      transparent 78%
    );

  pointer-events:none;
}


/* Soft illumination behind logo */

.rs-partner-card-logo::after{
  content:"";
  position:absolute;

  width:140px;
  height:60px;

  border-radius:50%;

  background:rgba(125,211,252,.08);
  filter:blur(28px);

  pointer-events:none;
}


/* Keep logo above effects */

.rs-partner-card-logo img{
  position:relative;
  z-index:2;

  display:block;

  width:auto;
  height:auto;

  max-width:180px;
  max-height:90px;

  object-fit:contain;

  filter:
    brightness(0)
    invert(1);

  opacity:.90;

  transition:
    opacity .25s ease,
    transform .25s ease;
}


.rs-partner-card:hover .rs-partner-card-logo img{
  opacity:1;
  transform:scale(1.04);
}

/* ============================================================
   CARD CONTENT
   ============================================================ */

.rs-partner-card-body{
  padding:26px 26px 10px;
}

.rs-partner-card-body p{
  margin:0;

  color:#a9b6cb;

  font-size:.95rem;
  line-height:1.7;
}


/* ============================================================
   CARD ACTIONS
   ============================================================ */

.rs-partner-card-actions{
  display:flex;
  align-items:center;

  gap:10px;

  margin-top:auto;
  padding:22px 26px 26px;
}

.rs-partner-card-primary{
  display:inline-flex;
  align-items:center;

  gap:8px;

  color:var(--partner-green);

  font-size:.88rem;
  font-weight:800;

  text-decoration:none;
}

.rs-partner-card-secondary{
  display:flex;
  align-items:center;
  justify-content:center;

  width:34px;
  height:34px;

  margin-left:auto;

  border:1px solid rgba(125,211,252,.22);
  border-radius:50%;

  color:var(--partner-blue);

  text-decoration:none;
}


/* ============================================================
   ACTION HOVERS
   ============================================================ */

.rs-partner-card-primary:hover{
  color:#fff;
}

.rs-partner-card-secondary:hover{
  border-color:rgba(125,211,252,.55);
  background:rgba(125,211,252,.08);
  color:#fff;
}
/* ============================================================
   PARTNER VALUE
   ============================================================ */

.rs-partner-value{
  margin:
    0
    calc(var(--partner-panel-pad) * -1);
  padding:
    clamp(70px,7vw,105px)
    var(--partner-panel-pad);
  scroll-margin-top:120px;
  border-top:1px solid rgba(148,163,184,.14);
  border-bottom:1px solid rgba(148,163,184,.14);
  background:
    radial-gradient(circle at 12% 15%,rgba(190,242,100,.045),transparent 25%),
    radial-gradient(circle at 88% 80%,rgba(125,211,252,.055),transparent 28%),
    rgba(2,6,23,.23);
}

.rs-partner-value-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:38px;
}

.rs-partner-value-card{
  padding:28px;
  border:1px solid rgba(148,163,184,.14);
  border-radius:10px;
  background:rgba(15,23,42,.50);
}

.rs-partner-value-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  margin-bottom:21px;
  border:1px solid rgba(190,242,100,.22);
  border-radius:50%;
  background:rgba(190,242,100,.06);
  color:var(--partner-green);
}

.rs-partner-value-card h3{
  margin:0 0 10px;
  color:#f8fafc;
  font-size:1.05rem;
}

.rs-partner-value-card p{
  margin:0;
  color:#9eacc2;
  font-size:.91rem;
  line-height:1.7;
}


.rs-partner-value-heading{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:16px;
}

.rs-partner-value-heading .rs-partner-value-icon{
  flex:0 0 auto;
  margin-bottom:0;
}

.rs-partner-value-heading h3{
  margin:0;
}


/* ============================================================
   CTA
   ============================================================ */

.rs-partner-cta{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:40px;
  padding:clamp(64px,6vw,90px) 0 24px;
}

.rs-partner-cta h2{
  margin:0;
  color:#fff;
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.05;
  letter-spacing:-.03em;
}

.rs-partner-cta p{
  max-width:790px;
  margin:16px 0 0;
  color:#aab7ca;
  line-height:1.7;
}

.rs-relationship-heading{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
}

.rs-relationship-setup{
  display:block;
  font-size:.72em;
  font-weight:600;
  letter-spacing:-.01em;
}

.rs-relationship-payoff{
  display:block;
  font-size:1.22em;
  font-weight:800;
  line-height:1.05;
  letter-spacing:-.025em;
}


/* ============================================================
   INDIVIDUAL PARTNER PAGE
   ============================================================ */

.rs-partner-detail{
  padding-top:0;
}


/* ============================================================
   INDIVIDUAL PARTNER / USED EQUIPMENT HERO
   Hero image supplied by page-level CSS variable
   ============================================================ */

.rs-partner-detail-hero{
  position:relative;

  display:grid;
  grid-template-columns:
    minmax(350px,390px)
    minmax(0,1fr);

  min-height:520px;

  margin:
    calc(var(--partner-detail-pad) * -1)
    calc(var(--partner-detail-pad) * -1)
    0;

  overflow:hidden;

  aborder-bottom:
    1px solid rgba(148,163,184,.28);

  background-image:
    linear-gradient(
      90deg,
      rgba(2,6,23,.84) 0%,
      rgba(2,6,23,.70) 34%,
      rgba(2,6,23,.54) 62%,
      rgba(2,6,23,.32) 100%
    ),
    var(--rs-hero-image, none);

  background-position:
    left top,
    var(--rs-hero-position, center right);

  background-size:
    100% 100%,
    var(--rs-hero-size, cover);

  background-repeat:
    no-repeat,
    no-repeat;
}

/* ============================================================
   LEFT SIDE - PARTNER IDENTITY
   ============================================================ */

.rs-partner-detail-brand{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  overflow:hidden;

  padding:
    clamp(30px,3vw,44px)
    clamp(22px,2.5vw,34px);

  border-right:1px solid rgba(125,211,252,.14);

  background:
    radial-gradient(
      circle at 50% 42%,
      rgba(125,211,252,.13) 0%,
      rgba(41,102,238,.07) 28%,
      transparent 67%
    ),
    linear-gradient(
      145deg,
      rgba(10,24,47,.94),
      rgba(4,12,27,.90)
    );

  backdrop-filter:blur(3px);

  text-align:center;
}

.rs-partner-detail-brand::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;

  background-image:
    linear-gradient(
      rgba(125,211,252,.07) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.07) 1px,
      transparent 1px
    );

  background-size:22px 22px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 45%,
      #000 0%,
      #000 25%,
      transparent 82%
    );

  mask-image:
    radial-gradient(
      circle at 50% 45%,
      #000 0%,
      #000 25%,
      transparent 82%
    );

  pointer-events:none;
}


.rs-partner-detail-logo{
  position:relative;

  display:flex;
  align-items:center;
  justify-content:center;

  width:100%;
  max-width:290px;

  min-height:125px;

  margin-bottom:16px;
  padding:22px 26px;

  overflow:hidden;

  border:1px solid rgba(125,211,252,.14);
  border-radius:10px;

  background:
    radial-gradient(
      circle at center,
      rgba(125,211,252,.14) 0%,
      rgba(41,102,238,.055) 38%,
      transparent 72%
    ),
    rgba(4,12,27,.52);
}

.rs-partner-detail-brand > *{
  position:relative;
  z-index:2;
}


.rs-partner-detail-logo img{
  position:relative;
  z-index:2;

  display:block;

  width:auto;
  height:auto;

  max-width:220px;
  max-height:105px;

  object-fit:contain;

  filter:
    brightness(0)
    invert(1);

  opacity:.96;
}


.rs-partner-detail-brand-meta{
  display:flex;
  flex-direction:column;
  align-items:center;

  width:100%;

  margin-bottom:22px;
}


.rs-partner-detail-brand-meta span{
  color:var(--partner-blue);

  font-size:.68rem;
  font-weight:800;

  letter-spacing:.14em;
  text-transform:uppercase;

  text-align:center;
}


/* ============================================================
   HERO ACTIONS
   ============================================================ */

.rs-partner-detail-actions{
  display:flex;
  align-items:stretch;
  justify-content:center;

  gap:7px;

  width:100%;
  max-width:320px;
}


.rs-partner-detail-actions .rs-partner-btn{
  flex:1 1 0;

  min-width:0;
  min-height:38px;

  padding:8px 10px;

  gap:6px;

  border-radius:7px;

  font-size:.74rem;
  line-height:1.15;

  white-space:nowrap;
}


/* ============================================================
   RIGHT SIDE - PARTNER STORY
   ============================================================ */

.rs-partner-detail-hero-content{
  position:relative;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:
    clamp(52px,6vw,96px)
    clamp(42px,5vw,82px);
}


.rs-partner-detail-hero-content::before{
  content:"";

  position:absolute;

  width:340px;
  height:340px;

  right:8%;
  top:50%;

  transform:translateY(-50%);

  border-radius:50%;

  background:rgba(41,102,238,.10);

  filter:blur(70px);

  pointer-events:none;
}

.rs-used-detail-hero .rs-partner-detail-hero-content::after{
  content:"";

  position:absolute;
  inset:0;

  z-index:1;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(2,6,23,.78) 0%,
      rgba(2,6,23,.62) 28%,
      rgba(2,6,23,.38) 52%,
      rgba(2,6,23,.14) 76%,
      rgba(2,6,23,0) 100%
    );
}


.rs-partner-detail-hero-content > *{
  position:relative;
  z-index:2;
}


.rs-partner-detail-hero h1{
  max-width:900px;

  margin:14px 0 22px;

  color:#fff;

  font-size:clamp(2.8rem,5vw,5.3rem);
  line-height:.97;

  letter-spacing:-.045em;
}


.rs-partner-detail-lead{
  max-width:900px;

  margin:0;

  color:#c1cee1;

  font-size:clamp(1.08rem,1.4vw,1.32rem);
  line-height:1.7;
  text-shadow:
  0 2px 3px rgba(0,0,0,.90),
  0 4px 10px rgba(0,0,0,.65);


}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:900px){

  .rs-partner-detail-hero{
    grid-template-columns:1fr;
  }

  .rs-partner-detail-brand{
    border-right:0;
    border-bottom:1px solid rgba(125,211,252,.14);
  }

  .rs-partner-detail-logo{
    max-width:360px;
  }

  .rs-partner-detail-actions{
    flex-direction:row;
    flex-wrap:wrap;
  }

  .rs-partner-detail-actions .rs-partner-btn{
    width:auto;
    max-width:none;
  }

}


@media (max-width:650px){

  .rs-partner-detail-brand,
  .rs-partner-detail-hero-content{
    padding:32px 24px;
  }

  .rs-partner-detail-actions{
    flex-direction:column;
  }

  .rs-partner-detail-actions .rs-partner-btn{
    width:100%;
  }

}

/* ============================================================
   DETAIL SECTIONS
   ============================================================ */

.rs-partner-detail-section{
  padding:clamp(70px,7vw,110px) 0;
}


.rs-partner-detail-intro{
  padding-top:clamp(70px,7vw,110px);
}


.rs-partner-section-heading--wide{
  max-width:920px;
  margin-bottom:38px;
}


.rs-partner-section-heading--wide p{
  margin:18px 0 0;

  color:#a9b6cb;

  font-size:1rem;
  line-height:1.75;
}


.rs-partner-detail-story-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;

  margin-top:30px;
}

.rs-partner-detail-story-actions .rs-partner-btn{
  min-height:44px;
  padding:11px 18px;

  font-size:.88rem;
}


/* ============================================================
   VALUE GRID
   ============================================================ */

.rs-partner-detail-value-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;

  margin-top:38px;
}


/* ============================================================
   SOLUTION GRID
   ============================================================ */

.rs-partner-solution-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}


.rs-partner-solution-card{
  display:flex;
  flex-direction:column;

  min-height:300px;

  padding:28px;

  border:1px solid rgba(148,163,184,.16);
  border-radius:12px;

  background:
    linear-gradient(
      145deg,
      rgba(15,23,42,.94),
      rgba(9,18,38,.84)
    );

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}


.rs-partner-solution-card:hover{
  transform:translateY(-2px);

  border-color:rgba(125,211,252,.30);

  box-shadow:
    0 18px 40px rgba(0,0,0,.20);
}


.rs-partner-solution-icon{
  display:flex;
  align-items:center;
  justify-content:center;

  width:46px;
  height:46px;

  margin-bottom:20px;

  border:1px solid rgba(125,211,252,.20);
  border-radius:10px;

  color:var(--partner-blue);

  background:rgba(125,211,252,.06);
}


.rs-partner-solution-card h3{
  margin:0 0 12px;

  color:#f4f7ff;

  font-size:1.14rem;
}


.rs-partner-solution-card p{
  margin:0 0 24px;

  color:#a9b6cb;

  font-size:.94rem;
  line-height:1.68;
}


.rs-partner-solution-card .rs-partner-card-primary{
  margin-top:auto;
}


/* ============================================================
   SPLIT CONTENT / USE CASES
   ============================================================ */

.rs-partner-detail-split{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:clamp(40px,6vw,100px);

  padding:
    clamp(34px,4vw,58px);

  border:1px solid rgba(148,163,184,.16);
  border-radius:12px;

  background:
    radial-gradient(
      circle at 95% 10%,
      rgba(41,102,238,.10),
      transparent 30%
    ),
    linear-gradient(
      145deg,
      rgba(15,23,42,.94),
      rgba(8,17,36,.84)
    );
}


.rs-partner-detail-split-heading h2{
  margin:14px 0 0;

  color:#f4f7ff;

  font-size:clamp(2rem,3.5vw,3.6rem);
  line-height:1.05;
  letter-spacing:-.035em;
}


.rs-partner-detail-split-content p{
  margin:0 0 28px;

  color:#a9b6cb;

  font-size:1rem;
  line-height:1.75;
}


.rs-partner-detail-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 24px;

  margin:0;
  padding:0;

  list-style:none;
}


.rs-partner-detail-list li{
  position:relative;

  padding-left:22px;

  color:#dce6f7;

  line-height:1.5;
}


.rs-partner-detail-list li::before{
  content:"";
  position:absolute;

  left:0;
  top:.58em;

  width:7px;
  height:7px;

  border-radius:50%;

  background:var(--partner-green);

  box-shadow:
    0 0 10px rgba(190,242,100,.30);
}


/* ============================================================
   SERVICES
   ============================================================ */

.rs-partner-service-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}


.rs-partner-service-grid article{
  padding:26px;

  border-top:2px solid rgba(125,211,252,.28);
  border-radius:0 0 10px 10px;

  background:
    linear-gradient(
      180deg,
      rgba(125,211,252,.045),
      rgba(15,23,42,.60)
    );
}


.rs-partner-service-grid i{
  margin-bottom:18px;

  color:var(--partner-blue);

  font-size:1.3rem;
}


.rs-partner-service-grid h3{
  margin:0 0 10px;

  color:#f4f7ff;

  font-size:1.05rem;
}


.rs-partner-service-grid p{
  margin:0;

  color:#a9b6cb;

  font-size:.92rem;
  line-height:1.65;
}


/* ============================================================
   RESOURCES
   ============================================================ */

.rs-partner-resource-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}


.rs-partner-resource-card{
  display:flex;
  flex-direction:column;

  min-height:220px;

  padding:28px;

  border:1px solid rgba(148,163,184,.16);
  border-radius:12px;

  color:inherit;
  text-decoration:none;

  background:
    linear-gradient(
      145deg,
      rgba(15,23,42,.94),
      rgba(9,18,38,.84)
    );

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}


.rs-partner-resource-card:hover{
  transform:translateY(-2px);

  border-color:rgba(125,211,252,.30);

  box-shadow:
    0 18px 40px rgba(0,0,0,.20);
}


.rs-partner-resource-type{
  margin-bottom:18px;

  color:var(--partner-blue);

  font-size:.70rem;
  font-weight:800;

  letter-spacing:.12em;
}


.rs-partner-resource-card h3{
  max-width:560px;

  margin:0 0 26px;

  color:#f4f7ff;

  font-size:1.25rem;
  line-height:1.35;
}


.rs-partner-resource-link{
  display:flex;
  align-items:center;
  gap:8px;

  margin-top:auto;

  color:var(--partner-green);

  font-size:.86rem;
  font-weight:800;
}


/* ============================================================
   CTA
   ============================================================ */

.rs-partner-detail-cta{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) auto;
  gap:40px;
  align-items:center;

  padding:
    clamp(34px,4vw,60px);

  border:1px solid rgba(125,211,252,.22);
    border-radius:
      0
      0
      0
    0;

  background:
    radial-gradient(
      circle at 88% 18%,
      rgba(41,102,238,.18),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      rgba(15,23,42,.97),
      rgba(7,16,34,.92)
    );
}


.rs-partner-detail-cta h2{
  margin:12px 0 16px;

  color:#fff;

  font-size:clamp(2rem,3.4vw,3.5rem);
  line-height:1.04;
  letter-spacing:-.035em;
}


.rs-partner-detail-cta p{
  max-width:850px;

  margin:0;

  color:#a9b6cb;

  line-height:1.7;
}


.rs-partner-detail-cta-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}


/* ============================================================
   EXECUTIVE PARTNERSHIP QUOTE
   ============================================================ */

.rs-partner-executive-quote{
  position:relative;
  max-width:540px;
  margin:34px 0 0;
  padding:34px 32px 30px;

  overflow:hidden;

  border:1px solid rgba(125,211,252,.24);
  border-radius:14px;

  background:
    radial-gradient(
      circle at 8% 5%,
      rgba(125,211,252,.22),
      transparent 34%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(41,102,238,.18),
      transparent 42%
    ),
    linear-gradient(
      145deg,
      rgba(25,55,82,.96),
      rgba(15,38,63,.96) 48%,
      rgba(10,27,48,.98)
    );

  box-shadow:
    0 18px 42px rgba(0,0,0,.30),
    0 0 24px rgba(41,102,238,.08),
    inset 0 1px 0 rgba(255,255,255,.06);
}


/* subtle technical texture */

.rs-partner-executive-quote::before{
  content:"";
  position:absolute;
  inset:0;

  background-image:
    linear-gradient(
      rgba(125,211,252,.035) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.035) 1px,
      transparent 1px
    );

  background-size:22px 22px;

  pointer-events:none;
}


/* oversized decorative quotation mark */

.rs-partner-executive-quote-mark{
  position:absolute;
  top:14px;
  left:22px;
  right:auto;

  color:rgba(125,211,252,.16);

  font-size:4.6rem;
  line-height:1;

  transform:rotate(2deg);

  pointer-events:none;
}


/* keep content above texture */

.rs-partner-executive-quote > p,
.rs-partner-executive-quote-source{
  position:relative;
  z-index:2;
}


.rs-partner-executive-quote p{
  margin:0;

  color:#edf5ff;
  font-size:clamp(1rem,1.05vw,1.1rem);
  font-weight:520;
  line-height:1.72;

  text-shadow:
    0 2px 3px rgba(0,0,0,.38);
}


/* attribution */

.rs-partner-executive-quote-source{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:5px;

  margin-top:38px;
  padding-top:28px;

  border-top:1px solid rgba(190,242,100,.20);
}


.rs-partner-executive-quote-name{
  color:#fff;
  padding-top:20px;
  font-size:.94rem;
  font-weight:850;
  letter-spacing:.01em;
}


.rs-partner-executive-quote-title{
  color:var(--partner-green);

  font-size:.69rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}


.rs-partner-release-label{
  margin-bottom:12px;
  color:var(--partner-green);
  font-size:1.70rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}


.rs-partner-intro-copy > h2:first-child{
  margin:0 0 8px;

  color:#fff;
  font-size:clamp(1.55rem,2.1vw,2.35rem);
  font-weight:900;
  line-height:1;
  letter-spacing:-.03em;

  opacity:.18;

  text-transform:uppercase;
}

.rs-partner-detail-intro .rs-partner-intro-copy-heading{
  margin:0 0 16px;
  font-size:clamp(1.05rem,1.25vw,1.3rem);
  line-height:1.25;
  font-weight:750;
}

.rs-partner-release-link{
  display:inline-flex;
  align-items:center;
  gap:8px;

  margin-top:24px;

  color:var(--partner-blue);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.07em;
  text-decoration:none;
  text-transform:uppercase;
}

.rs-partner-release-link:hover{
  color:#fff;
}


.rs-partner-intro.rs-partner-detail-intro{
  position:relative;
  margin:-30px auto 0;
  padding-bottom:28px;
  border-bottom:0;
  justify-content:center;
}

.rs-partner-detail-intro .rs-partner-intro-copy{
  align-self:start;
  margin-top:0;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1200px){

  .rs-partner-detail-value-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rs-partner-solution-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rs-partner-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}


@media (max-width:900px){

  

  .rs-partner-detail-hero-brand{
    border-left:0;
    border-top:1px solid rgba(125,211,252,.14);
  }

  .rs-partner-detail-logo-panel{
    min-height:220px;
  }

  .rs-partner-detail-split{
    grid-template-columns:1fr;
  }

  .rs-partner-detail-cta{
    grid-template-columns:1fr;
  }

  .rs-partner-detail-cta-actions{
    justify-content:flex-start;
  }

}


@media (max-width:650px){

  .rs-partner-detail-value-grid,
  .rs-partner-solution-grid,
  .rs-partner-service-grid,
  .rs-partner-resource-grid{
    grid-template-columns:1fr;
  }

  .rs-partner-detail-list{
    grid-template-columns:1fr;
  }

}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1200px){

  .rs-partners-hero{
    grid-template-columns:minmax(0,1fr) 360px;
  }

  .rs-partner-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rs-partner-value-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}


@media (max-width:900px){

  .rs-partners-hero{
    grid-template-columns:1fr;
    min-height:0;
  }

  .rs-partners-hero-visual{
    min-height:330px;
    margin-top:35px;
  }

  .rs-partner-intro{
    grid-template-columns:1fr;
    gap:30px;
  }

  .rs-featured-partner-grid{
    grid-template-columns:1fr;
  }

  .rs-partner-cta{
    grid-template-columns:1fr;
  }

}


@media (max-width:650px){

  .rs-partners{
    padding-left:12px;
    padding-right:12px;
  }

  .rs-featured-partner{
    grid-template-columns:1fr;
  }

  .rs-featured-partner-logo{
    min-height:145px;
    border-right:0;
    border-bottom:1px solid rgba(148,163,184,.12);
  }

  .rs-partner-grid{
    grid-template-columns:1fr;
  }

  .rs-partner-value-grid{
    grid-template-columns:1fr;
  }

  .rs-partners-hero h1{
    font-size:clamp(2.65rem,13vw,4rem);
  }

}


.rs-partner-release-scroll{
  position:relative;

  max-height:700px;
  overflow-y:auto;

  padding-right:18px;

  scrollbar-width:thin;
  scrollbar-color:
    rgba(125,211,252,.38)
    rgba(15,23,42,.35);
}


.rs-partner-release-scroll::-webkit-scrollbar{
  width:6px;
}

.rs-partner-release-scroll::-webkit-scrollbar-track{
  background:rgba(15,23,42,.35);
  border-radius:10px;
}

.rs-partner-release-scroll::-webkit-scrollbar-thumb{
  background:rgba(125,211,252,.38);
  border-radius:10px;
}

.rs-partner-release-scroll::-webkit-scrollbar-thumb:hover{
  background:rgba(125,211,252,.60);
}


/* Press release inline quote */

.rs-partner-release-scroll .rs-partner-release-quote{
  position:relative;

  margin:22px 4px 24px;
  padding:18px 20px 18px 22px;

  color:#dce7f5;
  font-size:.92rem;
  font-weight:550;
  line-height:1.6;

  border-left:2px solid rgba(190,242,100,.78);
  border-radius:0 7px 7px 0;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.075),
      rgba(190,242,100,.025) 55%,
      transparent
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025);
}
/* ============================================================
   FORTINET SOLUTIONS INTEGRATION
   ============================================================ */

#fortinet-solutions{
  padding-top:0;
}


/* ============================================================
   FORTINET TECHNOLOGY MAP
   ============================================================ */

.rs-fortinet-map{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;

  margin-top:4px;
}


/* ------------------------------------------------------------
   MAP CARD
   ------------------------------------------------------------ */

.rs-fortinet-map-card{
  position:relative;

  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:20px;

  min-height:250px;
  padding:26px 28px;

  overflow:hidden;

  border:1px solid rgba(148,163,184,.16);
  border-radius:12px;

  background:
    /* soft directional sheen */
    linear-gradient(
      118deg,
      rgba(255,255,255,.045) 0%,
      rgba(255,255,255,.012) 24%,
      transparent 44%
    ),

    /* broad suede variation */
    radial-gradient(
      ellipse at 18% 12%,
      rgba(125,211,252,.075),
      transparent 42%
    ),

    radial-gradient(
      ellipse at 85% 90%,
      rgba(0,0,0,.22),
      transparent 52%
    ),

    /* charcoal-blue suede base */
    linear-gradient(
      145deg,
      #263342 0%,
      #202d3b 42%,
      #192634 100%
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 12px 28px rgba(0,0,0,.14);

  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}


.rs-fortinet-map-card:hover{
  transform:translateY(-2px);

  border-color:rgba(125,211,252,.30);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 16px 34px rgba(0,0,0,.20),
    0 0 18px rgba(41,102,238,.08);
}


/* subtle grid texture */

.rs-fortinet-map-card::before{
  content:"";

  position:absolute;
  inset:0;

  background-image:
    linear-gradient(
      rgba(125,211,252,.025) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.025) 1px,
      transparent 1px
    );

  background-size:22px 22px;

  pointer-events:none;
}


.rs-fortinet-map-card > *{
  position:relative;
  z-index:2;
}


/* ------------------------------------------------------------
   ICON
   ------------------------------------------------------------ */

.rs-fortinet-map-icon{
  display:flex;
  align-items:center;
  justify-content:center;

  width:52px;
  height:52px;

  border:1px solid rgba(125,211,252,.22);
  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(41,102,238,.18),
      rgba(125,211,252,.06)
    );

  color:var(--partner-blue);

  font-size:1.25rem;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 0 16px rgba(41,102,238,.08);
}


/* ------------------------------------------------------------
   CONTENT
   ------------------------------------------------------------ */

.rs-fortinet-map-content{
  min-width:0;
}


/* category label */
.rs-fortinet-map-category{
  font-size:.76rem;
  line-height:1.3;
}

/* card title */
.rs-fortinet-map-content h3{
  font-size:clamp(1.28rem,1.5vw,1.55rem);
  line-height:1.18;
}

/* descriptive copy */
.rs-fortinet-map-content > p{
  font-size:0.98rem;
  line-height:1.62;
}

/* ------------------------------------------------------------
   TECHNOLOGY CHIPS
   ------------------------------------------------------------ */

.rs-fortinet-map-products{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:20px;
}


.rs-fortinet-map-products span{
  display:inline-flex;
  align-items:center;
  min-height:27px;
  padding:7px 11px;
  border:1px solid rgba(125,211,252,.15);
  border-radius:6px;
  background:rgba(4,12,27,.38);
  color:#cbd8e9;
  font-size:.78rem;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}


/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */

@media (max-width:1050px){

  .rs-fortinet-map{
    grid-template-columns:1fr;
  }

}


@media (max-width:600px){

  .rs-fortinet-map-card{
    grid-template-columns:1fr;

    padding:22px;
  }

  .rs-fortinet-map-icon{
    width:48px;
    height:48px;
  }

}
.rs-fortinet-map-heading{
  position:relative;

  margin-top:78px;
  padding-top:64px;

  border-top:1px solid rgba(148,163,184,.16);
}

.rs-fortinet-map-heading h2{
  max-width:500px;
  margin:10px 0 16px;

  font-size:clamp(1.45rem,1.8vw,2rem);
  line-height:1.12;
  letter-spacing:-.025em;
}

.rs-fortinet-map-heading p{
  max-width:650px;
  margin:0;

  color:#aebcd0;
  font-size:1.09rem;
  line-height:1.65;
}

.rs-partner-map-heading-full{
  max-width:980px;
  margin:0 auto 38px;
  text-align:center;
}

.rs-partner-map-heading-full .rs-partner-section-eyebrow{
  margin-bottom:10px;
  color:var(--partner-green);
}

.rs-partner-map-heading-full h2{
  margin:0 0 16px;
  color:#fff;
  font-size:clamp(2rem,2.6vw,3rem);
  line-height:1.08;
  letter-spacing:-.035em;
}

.rs-partner-map-heading-full p{
  max-width:850px;
  margin:0 auto;
  color:#b7c4d6;
  font-size:1.03rem;
  line-height:1.7;
}


/* ============================================================
   USED EQUIPMENT DETAIL TEMPLATE
   ============================================================ */


/* ------------------------------------------------------------
   HERO BRAND / TEXT-ONLY MANUFACTURER MARK
   ------------------------------------------------------------ */

.rs-used-brand-panel{
  min-height:110px;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:18px 24px;
}


.rs-used-brand-wordmark{
  display:flex;
  flex-direction:column;
  align-items:center;

  line-height:1;

  text-align:center;
  text-transform:uppercase;

  user-select:none;
}


.rs-used-brand-wordmark-main{
  color:#fff;

  font-size:clamp(2rem,3vw,3.25rem);
  font-weight:950;

  letter-spacing:.08em;

  text-shadow:
    0 0 20px rgba(125,211,252,.10),
    0 2px 14px rgba(0,0,0,.36);
}


.rs-used-brand-wordmark-sub{
  margin-top:5px;

  color:#8ea1b8;

  font-size:.66rem;
  font-weight:850;

  letter-spacing:.42em;

  padding-left:.42em;
}


.rs-used-title-at{
  display:inline-block;

  position:relative;
  top:-.16em;
  margin-left:.04em;
  color:rgba(190,242,100,.72);

  font-weight:700;

  text-shadow:
    0 0 6px rgba(190,242,100,.20),
    0 0 14px rgba(190,242,100,.12);

  opacity:.58;

  animation:
    rs-used-at-breathe 8.8s ease-in-out infinite;
}


@keyframes rs-used-at-breathe{

  0%,
  100%{
    color:rgba(190,242,100,.58);

    opacity:.74;

    text-shadow:
      0 0 4px rgba(190,242,100,.12),
      0 0 10px rgba(190,242,100,.06);

    transform:scale(1);
  }

  50%{
    color:rgba(190,242,100,.88);

    opacity:1;

    text-shadow:
      0 0 7px rgba(190,242,100,.34),
      0 0 18px rgba(190,242,100,.18),
      0 0 28px rgba(125,211,252,.06);

    transform:scale(1.035);
  }

}


/* ------------------------------------------------------------
   BENEFIT LIST
   ------------------------------------------------------------ */

.rs-used-benefit-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:18px;

  margin-top:30px;
}


.rs-used-benefit-item{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);

  gap:16px;

  align-items:start;

  padding:22px 24px;

  border:1px solid rgba(148,163,184,.16);
  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(35,55,75,.72),
      rgba(20,37,53,.86)
    );

  box-shadow:
    0 14px 30px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.035);
}


.rs-used-benefit-icon{
  width:52px;
  height:52px;

  display:grid;
  place-items:center;

  border:1px solid rgba(190,242,100,.24);
  border-radius:8px;

  background:
    rgba(190,242,100,.07);

  color:var(--partner-green);

  font-size:1.15rem;
}


.rs-used-benefit-item h3{
  margin:0 0 8px;

  color:#fff;

  font-size:1.03rem;
  line-height:1.25;

  letter-spacing:-.01em;
}


.rs-used-benefit-item p{
  margin:0;

  color:#aebdd0;

  font-size:.9rem;
  line-height:1.65;
}


/* ------------------------------------------------------------
   TRADE-IN SECTION
   ------------------------------------------------------------ */

.rs-used-tradein{
  position:relative;
}


/* ------------------------------------------------------------
   USED CONTENT SECTION SEPARATION
   ------------------------------------------------------------ */

.rs-used-main-content .rs-partner-detail-section{
  position:relative;

  padding-top:44px;
  padding-bottom:44px;

  border-bottom:
    1px solid rgba(148,163,184,.10);
}


.rs-used-main-content .rs-partner-detail-section:first-child{
  padding-top:0px;
}


.rs-used-main-content .rs-partner-detail-section:last-of-type{
  border-bottom:0;
}


/* ------------------------------------------------------------
   VALUE CARDS INSIDE USED EQUIPMENT PAGES
   ------------------------------------------------------------ */

.rs-used-value-grid .rs-partner-value-card{
  height:100%;
  margin:0;

  padding:28px;

  border:1px solid rgba(148,163,184,.16);

  background:
    linear-gradient(
      145deg,
      rgba(38,60,80,.74),
      rgba(22,39,55,.90)
    );

  box-shadow:
    0 16px 32px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.035);
}


.rs-used-value-grid .rs-partner-value-card h3{
  margin-top:10px;

  color:#fff;

  font-size:1.18rem;
  line-height:1.3;
}


.rs-used-value-grid .rs-partner-value-card p{
  color:#adbdcf;

  line-height:1.7;
}


/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */

@media (max-width:1050px){

  .rs-used-benefit-list{
    grid-template-columns:1fr;
  }

}


@media (max-width:650px){

  .rs-used-benefit-item{
    grid-template-columns:42px minmax(0,1fr);
    padding:18px;
  }

  .rs-used-benefit-icon{
    width:42px;
    height:42px;
    font-size:1rem;
  }

}


/* ============================================================
   USED EQUIPMENT FEATURE INTRO
   ============================================================ */

.rs-used-intro-feature{
  position:relative;

  margin:0;

  padding:0 !important;

  overflow:hidden;

  border:1px solid rgba(125,211,252,.28);
  border-top:0;
  border-left:1px solid rgba(125,211,252,.22);
  border-radius:0;

  background:#071522;

  box-shadow:none;
}


/* ------------------------------------------------------------
   BACKGROUND IMAGE
   ------------------------------------------------------------ */

.rs-used-intro-feature-bg{
  position:absolute;
  inset:0;

  z-index:0;

  background:
    linear-gradient(
      180deg,
      rgba(4,15,27,.18) 0%,
      rgba(4,15,27,.38) 34%,
      rgba(4,15,27,.82) 64%,
      rgba(4,15,27,.98) 100%
    ),
    linear-gradient(
      90deg,
      rgba(3,13,24,.92) 0%,
      rgba(3,13,24,.72) 42%,
      rgba(3,13,24,.20) 72%,
      rgba(3,13,24,.08) 100%
    ),
    url("i/headerbar.jpg?v=20260823-3") center right / cover no-repeat;

  opacity:.78;

  pointer-events:none;
}


.rs-used-intro-feature::after{
  content:"";
  position:absolute;
  inset:0;

  z-index:0;
  pointer-events:none;

  background:
    radial-gradient(
      circle at 78% 78%,
      rgba(190,242,100,.03),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      transparent 0%,
      rgba(0,0,0,.08) 47%,
      rgba(0,0,0,.30) 100%
    );
}


.rs-used-intro-feature > *{
  position:relative;
  z-index:1;
}



/* ------------------------------------------------------------
   HEADER
   ------------------------------------------------------------ */

.rs-used-intro-feature-header{
  position:relative;
  z-index:2;

  padding:
    38px
    clamp(32px,4vw,58px)
    34px;

  min-height:260px;

  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}


.rs-used-intro-feature-header .rs-partner-section-eyebrow{
  margin-bottom:12px;

  color:#bef264;

  font-size:.76rem;
  font-weight:900;

  letter-spacing:.24em;
}


.rs-used-intro-feature-header h2{
  margin:0 0 18px;

  max-width:950px;

  color:#fff;

  font-size:clamp(2.2rem,3.6vw,4rem);
  line-height:1.02;

  letter-spacing:-.045em;
}


.rs-used-intro-feature-header h2 span{
  color:#7dd3fc;
}


.rs-used-intro-feature-header p{
  max-width:850px;

  margin:0;

  color:#d4deea;

  font-size:clamp(.98rem,1.25vw,1.15rem);
  line-height:1.75;

  text-shadow:
    0 2px 14px rgba(0,0,0,.6);
}


/* ------------------------------------------------------------
   TOP-DOWN TRANSITION SHADOW
   ------------------------------------------------------------ */

.rs-used-intro-feature-grid{
  position:relative;
  z-index:3;

  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  margin-top:0;

  border-top:
    1px solid rgba(125,211,252,.35);

  background:
    linear-gradient(
      180deg,
      rgba(1,8,16,.88) 0%,
      rgba(5,19,31,.94) 18%,
      rgba(7,24,38,.98) 100%
    );

  box-shadow:
    0 -34px 60px rgba(0,0,0,.42);
}


.rs-used-intro-feature-grid::before{
  content:"";

  position:absolute;

  top:-80px;
  left:0;
  right:0;

  height:100px;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(2,10,19,0),
      rgba(2,10,19,.32) 45%,
      rgba(2,10,19,.88) 100%
    );
}


/* ------------------------------------------------------------
   LOWER FEATURE PANELS
   ------------------------------------------------------------ */

.rs-used-intro-feature-card{
  position:relative;

  min-width:0;

  padding:
    34px
    clamp(28px,3vw,44px)
    30px;

  background:
    linear-gradient(
      145deg,
      rgba(8,30,47,.94),
      rgba(4,18,29,.98)
    );
}


.rs-used-intro-feature-card--left{
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(56,189,248,.12),
      transparent 42%
    ),
    linear-gradient(
      145deg,
      rgba(7,33,53,.97),
      rgba(3,19,31,.99)
    );
}


.rs-used-intro-feature-card--right{
  background:
    radial-gradient(
      circle at 100% 25%,
      rgba(190,242,100,.12),
      transparent 48%
    ),
    linear-gradient(
      145deg,
      rgba(8,30,42,.98),
      rgba(8,37,32,.96)
    );
}


/* ------------------------------------------------------------
   ANGLED DIVIDER
   ------------------------------------------------------------ */

.rs-used-intro-feature-card--right::before{
  content:"";
  position:absolute;
  top:24px;
  bottom:24px;
  left:0;
  width:1px;

  background:
    linear-gradient(
      180deg,
      rgba(125,211,252,.06) 0%,
      rgba(125,211,252,.60) 22%,
      rgba(190,242,100,.55) 58%,
      rgba(125,211,252,.28) 82%,
      rgba(125,211,252,.04) 100%
    );

  opacity:.9;
  pointer-events:none;
}


/* ------------------------------------------------------------
   FEATURE HEADINGS
   ------------------------------------------------------------ */

.rs-used-intro-feature-heading{
  display:grid;

  grid-template-columns:
    86px
    minmax(0,1fr);

  gap:22px;

  align-items:center;

  margin-bottom:24px;
}


.rs-used-intro-feature-icon{
  width:86px;
  height:86px;

  display:grid;
  place-items:center;

  border:
    2px solid rgba(125,211,252,.65);

  border-radius:50%;

  background:
    radial-gradient(
      circle at 50% 40%,
      rgba(125,211,252,.14),
      rgba(4,17,27,.72)
    );

  color:#bef264;

  font-size:1.75rem;

  box-shadow:
    inset 0 0 20px rgba(125,211,252,.08),
    0 0 24px rgba(125,211,252,.04);
}


.rs-used-intro-kicker{
  margin-bottom:8px;

  color:#bef264;

  font-size:.74rem;
  font-weight:950;

  letter-spacing:.22em;
}


.rs-used-intro-feature-card h3{
  margin:0;

  color:#fff;

  font-size:clamp(1.22rem,1.7vw,1.72rem);
  line-height:1.17;

  letter-spacing:-.025em;
}


/* ------------------------------------------------------------
   BODY COPY
   ------------------------------------------------------------ */

.rs-used-intro-feature-copy p{
  margin:0;

  color:#c0ccda;

  font-size:.94rem;
  line-height:1.72;
}


.rs-used-intro-feature-copy p + p{
  margin-top:18px;
}


.rs-used-intro-feature-copy strong{
  color:#bef264;
  font-weight:750;
}


/* ------------------------------------------------------------
   MICRO BENEFITS
   ------------------------------------------------------------ */

.rs-used-feature-points{
  display:flex;
  flex-wrap:wrap;

  gap:
    12px
    22px;

  margin-top:28px;

  padding-top:18px;

  border-top:
    1px solid rgba(148,163,184,.12);
}


.rs-used-feature-points span{
  display:inline-flex;

  align-items:center;

  gap:8px;

  color:#bdd0e1;

  font-size:.68rem;
  font-weight:800;

  letter-spacing:.055em;
  text-transform:uppercase;
}


.rs-used-feature-points i{
  width:22px;
  height:22px;

  display:grid;
  place-items:center;

  border:2px solid #bef264;
  border-radius:50%;

  color:#bef264;

  font-size:.55rem;
}


/* ------------------------------------------------------------
   FOOTER STRIP
   ------------------------------------------------------------ */

.rs-used-intro-feature-footer{
  position:relative;
  z-index:3;

  display:flex;
  align-items:center;

  gap:18px;

  padding:
    18px
    clamp(28px,4vw,48px);

  border-top:
    1px solid rgba(125,211,252,.22);

  background:
    linear-gradient(
      90deg,
      #08223a,
      #06192b 55%,
      #071d2f
    );

  color:#9dc5e6;

  font-size:.63rem;
  font-weight:800;

  letter-spacing:.28em;

  text-transform:uppercase;
}


.rs-used-intro-feature-footer-mark{
  color:#7dd3fc;

  font-size:1rem;
}


.rs-used-intro-feature-footer-line{
  flex:1;

  height:1px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.42),
      rgba(125,211,252,.06)
    );
}


.rs-used-intro-feature-footer-brand{
  color:#9db6ca;
}


/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */

@media (max-width:1000px){

  .rs-used-intro-feature-grid{
    grid-template-columns:1fr;
  }


  .rs-used-intro-feature-card--right::before{
    display:none;
  }


  .rs-used-intro-feature-card--right{
    border-top:
      1px solid rgba(125,211,252,.18);
  }

}


@media (max-width:650px){

  .rs-used-intro-feature-header{
    min-height:220px;

    padding:
      54px
      22px
      28px;
  }


  .rs-used-intro-feature-heading{
    grid-template-columns:
      60px
      minmax(0,1fr);

    gap:16px;
  }


  .rs-used-intro-feature-icon{
    width:60px;
    height:60px;

    font-size:1.25rem;
  }


  .rs-used-intro-feature-card{
    padding:
      28px
      22px;
  }


  .rs-used-feature-points{
    flex-direction:column;
  }


  .rs-used-intro-feature-footer{
    flex-wrap:wrap;

    letter-spacing:.18em;
  }


  .rs-used-intro-feature-footer-line{
    display:none;
  }

}


/* ============================================================
   USED EQUIPMENT PAGE LAYOUT
   CONNECTED LOWER BAND
   ============================================================ */

.rs-used-page-layout{
  display:grid;

  grid-template-columns:
    minmax(340px,390px)
    minmax(0,1fr);

  align-items:stretch;

  gap:0;

  margin-left:calc(var(--partner-detail-pad) * -1);
  margin-right:calc(var(--partner-detail-pad) * -1);

  padding:0;
}


/* ============================================================
   SIDEBAR
   ============================================================ */

.rs-used-sidebar{
  position:relative;

  top:auto;
  z-index:50;

  min-width:0;

  margin:0;

  align-self:stretch;

  border-radius:0;
}


.rs-used-sidebar,
.rs-used-sidebar-sticky,
.rs-used-sidebar .sidebar-panel{
  border-radius:0;
}


.rs-used-sidebar-sticky{
  position:sticky;

  top:120px;

  z-index:50;
}


/* ============================================================
   STICKY RACKSTAR LOGO
   Appears after the global navigation clears the viewport.
   ============================================================ */

.rs-used-sidebar-logo{
  position:absolute;

  /*
   * Move the replacement logo left so it aligns more closely
   * with the RackStar logo in the global navigation.
   */
  left:-30px;
  top:-102px;

  z-index:100;

  display:flex;
  align-items:center;
  justify-content:flex-start;

  width:calc(100% + 30px);
  height:72px;

  padding:0;

  opacity:0;
  visibility:hidden;

  pointer-events:none;

  transform:translateY(10px);

  transition:
    opacity .22s ease,
    transform .28s ease,
    visibility 0s linear .28s;
}


.rs-used-sidebar-logo img{
  display:block;

  width:300px !important;
  max-width:300px !important;
  max-height:82px !important;
  height:auto !important;

  object-fit:contain;
}


/* Global navigation has cleared viewport */

.rs-used-sidebar-sticky.is-nav-cleared .rs-used-sidebar-logo{
  opacity:1;
  visibility:visible;

  transform:translateY(0);

  transition:
    opacity .22s ease,
    transform .28s ease,
    visibility 0s;
}


/* ============================================================
   SIDEBAR BODY
   Integrated directly into the existing left-column background.
   ============================================================ */

.rs-used-sidebar-body{
  position:relative;

  width:100%;
  box-sizing:border-box;

  padding:
    26px
    18px
    28px;

  /*
   * IMPORTANT:
   * No independent background here.
   * Let the underlying sidebar / page treatment show through.
   */
  background:transparent;

  border:0;
  border-radius:0;
  box-shadow:none;
}

/* ============================================================
   EQUIPMENT DIRECTORY TITLE
   Technical panel / raised signal icon
   ============================================================ */

.rs-used-nav-title{
  position:relative;

  display:flex;
  align-items:center;
  justify-content:center;

  width:100%;
  min-height:96px;

  box-sizing:border-box;

  margin:
    0
    0
    28px;

  padding:
    52px
    20px
    18px;

  /*
   * Everything is intentionally contained inside the panel.
   * This avoids clipping from any ancestor overflow rules.
   */
  overflow:hidden;

  border:
    1px solid rgba(125,211,252,.16);

  /*
   * The visual top border is supplied by ::after below.
   */
  border-top-color:transparent;

  border-radius:6px;

  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(125,211,252,.13),
      transparent 58%
    ),
    linear-gradient(
      145deg,
      rgba(37,62,82,.72) 0%,
      rgba(20,42,59,.86) 48%,
      rgba(9,27,41,.94) 100%
    );

  text-align:center;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 10px 24px rgba(0,0,0,.14);
}


/* ============================================================
   TECHNICAL GRID
   ============================================================ */

.rs-used-nav-title::before{
  content:"";

  position:absolute;
  inset:0;

  z-index:0;

  pointer-events:none;

  border-radius:6px;

  background-image:
    linear-gradient(
      rgba(125,211,252,.045) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.045) 1px,
      transparent 1px
    );

  background-size:
    18px 18px;

  opacity:.72;

  mask-image:
    linear-gradient(
      90deg,
      transparent,
      #000 18%,
      #000 82%,
      transparent
    );

  -webkit-mask-image:
    linear-gradient(
      90deg,
      transparent,
      #000 18%,
      #000 82%,
      transparent
    );
}


/* ============================================================
   GREEN SIGNAL LINE
   Sits just below the icon and breaks in the center.
   ============================================================ */

.rs-used-nav-title::after{
  content:"";

  position:absolute;

  top:32px;
  left:0;
  right:0;

  height:2px;

  z-index:2;

  pointer-events:none;

  background:
    linear-gradient(
      90deg,

      rgba(125,211,252,.08) 0%,

      rgba(190,242,100,.28) 18%,
      rgba(190,242,100,.82) 38%,

      transparent 43%,
      transparent 57%,

      rgba(190,242,100,.82) 62%,
      rgba(190,242,100,.28) 82%,

      rgba(125,211,252,.08) 100%
    );

  box-shadow:
    0 0 7px rgba(190,242,100,.14),
    0 0 16px rgba(190,242,100,.06);
}


/* ============================================================
   RAISED LAYER ICON
   Above the signal line while remaining inside the panel.
   ============================================================ */

.rs-used-nav-title > i.fa-layer-group{
  position:absolute;

  top:2px;
  left:50%;

  z-index:5;

  display:flex;
  align-items:center;
  justify-content:center;

  width:58px;
  height:30px;

  margin:0;
  padding:0;

  transform:
    translateX(-50%);

  color:var(--partner-green);

  font-size:1.85rem;
  line-height:1;

  opacity:1;

  /*
   * Matching center field keeps the signal line visually
   * interrupted beneath the icon.
   */
  background:
    linear-gradient(
      90deg,
      transparent 0%,
      #152b3b 18%,
      #152b3b 82%,
      transparent 100%
    );

  text-shadow:
    0 2px 2px rgba(0,0,0,1),
    0 5px 7px rgba(0,0,0,.88),
    0 8px 12px rgba(0,0,0,.54),
    0 0 8px rgba(190,242,100,.46),
    0 0 18px rgba(190,242,100,.22);

  filter:
    drop-shadow(0 5px 5px rgba(0,0,0,.55));
}


/* ============================================================
   EQUIPMENT DIRECTORY LABEL
   ============================================================ */

.rs-used-nav-title > span{
  position:relative;

  z-index:3;

  display:block;

  color:#dce7ef;

  font-size:.69rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.17em;
  text-transform:uppercase;

  text-align:center;

  text-shadow:
    0 2px 3px rgba(0,0,0,.72),
    0 4px 10px rgba(0,0,0,.42);
}

/* ============================================================
   NAVIGATION GROUPS
   Subtle structure without covering the sidebar background.
   ============================================================ */

.rs-used-nav-group{
  position:relative;

  width:100%;

  margin:
    28px
    0
    0;

  padding:
    18px
    7px
    7px;

  border:
    1px solid rgba(148,163,184,.14);

  border-radius:7px;

  /*
   * Enough tint to establish the group,
   * but transparent enough for the underlying
   * sidebar treatment to remain visible.
   */
  background:
    linear-gradient(
      145deg,
      rgba(19,39,55,.18),
      rgba(8,24,37,.08)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.012);
}


/* ============================================================
   FLOATING CATEGORY LABEL
   ============================================================ */

.rs-used-nav-label{
  position:absolute;

  top:-7px;
  left:12px;

  z-index:2;

  margin:0;

  padding:
    0
    7px;

  color:rgba(190,242,100,.82);

  font-size:.56rem;
  font-weight:900;

  line-height:14px;

  letter-spacing:.14em;

  text-transform:uppercase;

  white-space:nowrap;
}


/* ============================================================
   NAVIGATION LIST
   ============================================================ */

.rs-used-nav-list{
  display:grid;

  width:100%;

  gap:4px;

  margin:0;
  padding:0;

  list-style:none;
}


.rs-used-nav-list > li{
  width:100%;

  margin:0;
  padding:0;
}


/* ============================================================
   NAVIGATION LINKS
   Slightly more substantial than the previous version,
   but still integrated with the column beneath them.
   ============================================================ */

.rs-used-sidebar .rs-used-nav-list > li > a{
  position:relative;

  display:flex;
  align-items:center;

  width:100%;
  min-height:41px;

  box-sizing:border-box;

  gap:16px;

  padding:
    10px
    13px;

  border:
    1px solid rgba(148,163,184,.095);

  border-radius:5px;

  background:
    linear-gradient(
      145deg,
      rgba(27,48,65,.38),
      rgba(13,31,45,.42)
    );

  color:#c3d0dc;

  font-size:.88rem;
  font-weight:700;

  line-height:1.3;

  text-decoration:none;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.012);

  transition:
    color .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}


/* Text occupies available space */

.rs-used-sidebar .rs-used-nav-list > li > a > span{
  display:block;

  flex:
    1
    1
    auto;

  min-width:0;
}


/* Arrow stays on outside edge */

.rs-used-sidebar .rs-used-nav-list > li > a > i{
  display:block;

  flex:
    0
    0
    auto;

  margin-left:auto;

  color:#71889b;

  font-size:.64rem;

  opacity:.50;

  transform:translateX(-2px);

  transition:
    color .18s ease,
    opacity .18s ease,
    transform .18s ease;
}


/* ============================================================
   HOVER
   ============================================================ */

.rs-used-sidebar .rs-used-nav-list > li > a:hover{
  color:#fff;

  border-color:
    rgba(125,211,252,.20);

  background:
    linear-gradient(
      145deg,
      rgba(39,66,86,.52),
      rgba(18,40,56,.56)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.022);

  transform:translateX(2px);
}


.rs-used-sidebar .rs-used-nav-list > li > a:hover > i{
  color:#7dd3fc;

  opacity:1;

  transform:translateX(1px);
}


/* ============================================================
   CURRENT PAGE
   ============================================================ */

.rs-used-sidebar .rs-used-nav-list > li.is-current > a{
  color:#fff;

  border-color:
    rgba(190,242,100,.19);

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.095),
      rgba(25,48,58,.32) 58%,
      rgba(13,31,45,.38)
    );

  box-shadow:
    inset 3px 0 0 rgba(190,242,100,.72),
    inset 0 1px 0 rgba(255,255,255,.016);
}


.rs-used-sidebar .rs-used-nav-list > li.is-current > a > i{
  color:var(--partner-green);

  opacity:.85;

  transform:translateX(0);
}


.rs-used-sidebar .rs-used-nav-list > li.is-current > a:hover{
  border-color:
    rgba(190,242,100,.30);

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.13),
      rgba(31,56,64,.40) 58%,
      rgba(17,36,49,.46)
    );
}


/* ============================================================
   KEYBOARD FOCUS
   ============================================================ */

.rs-used-sidebar .rs-used-nav-list > li > a:focus-visible{
  outline:
    1px solid rgba(125,211,252,.55);

  outline-offset:2px;
}


/* ============================================================
   SIDEBAR CTA
   Entire panel is clickable
   ============================================================ */

.rs-used-nav-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;

  width:100%;
  box-sizing:border-box;

  margin-top:28px;
  padding:16px 16px 16px 18px;

  border:1px solid rgba(125,211,252,.22);
  border-radius:7px;

  background:
    linear-gradient(
      145deg,
      rgba(18,42,60,.32),
      rgba(8,25,38,.18)
    );

  color:inherit;
  text-decoration:none;
  cursor:pointer;

  transition:
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}

.rs-used-nav-cta:hover{
  border-color:rgba(190,242,100,.42);

  background:
    linear-gradient(
      145deg,
      rgba(28,58,74,.42),
      rgba(10,31,45,.28)
    );

  box-shadow:
    0 10px 24px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.025);

  transform:translateY(-1px);
  text-decoration:none;
}

.rs-used-nav-cta:focus-visible{
  outline:2px solid rgba(190,242,100,.70);
  outline-offset:3px;
}

.rs-used-nav-cta-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}

.rs-used-nav-cta-label{
  display:block;
  color:rgba(197,210,221,.72);
  font-size:.66rem;
  font-weight:750;
  line-height:1.3;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.rs-used-nav-cta strong{
  display:block;
  color:#f4f8fb;
  font-size:.95rem;
  font-weight:850;
  line-height:1.2;
  text-shadow:0 2px 6px rgba(0,0,0,.42);
}

.rs-used-nav-cta-button{
  flex:0 0 auto;

  display:flex;
  align-items:center;
  justify-content:center;

  width:38px;
  height:38px;

  border:1px solid rgba(190,242,100,.28);
  border-radius:50%;

  background:rgba(190,242,100,.07);
  color:var(--partner-green);

  transition:
    border-color .18s ease,
    background .18s ease,
    transform .18s ease,
    box-shadow .18s ease;
}

.rs-used-nav-cta:hover .rs-used-nav-cta-button{
  border-color:rgba(190,242,100,.62);
  background:rgba(190,242,100,.12);
  transform:translateX(2px);
  box-shadow:0 0 14px rgba(190,242,100,.10);
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width:650px){

  .rs-used-sidebar-body{
    padding:
      24px
      14px
      26px;
  }

}


/* ============================================================
   MAIN CONTENT
   ============================================================ */

.rs-used-main-content{
  min-width:0;
  margin:0;
  align-self:stretch;
}


/* ------------------------------------------------------------
   ALL DETAIL SECTIONS
   ------------------------------------------------------------ */

.rs-used-main-content > .rs-partner-detail-section{
  width:auto;

  margin-left:
    clamp(18px,2vw,30px);

  margin-right:
    clamp(18px,2vw,30px);

  padding-left:0;
  padding-right:0;
}


/* ------------------------------------------------------------
   FIRST SECTION
   Full width beneath hero.
   ------------------------------------------------------------ */

.rs-used-main-content > .rs-partner-detail-section:first-child{
  margin-left:0;
  margin-right:0;

  padding-top:0;
}


/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media (max-width:900px){

  .rs-used-main-content > .rs-partner-detail-section{
    margin-left:14px;
    margin-right:14px;
  }


  .rs-used-main-content > .rs-partner-detail-section:first-child{
    margin-left:0;
    margin-right:0;
  }

}
/* ============================================================
   USED VALUE GRID
   Retained for templates that still use it.
   ============================================================ */

.rs-used-value-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:22px;

  margin-top:30px;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1200px){

  .rs-used-page-layout{
    grid-template-columns:
      minmax(310px,340px)
      minmax(0,1fr);
  }

}


@media (max-width:900px){

  .rs-used-page-layout{
    grid-template-columns:1fr;

    margin-left:0;
    margin-right:0;
  }


  .rs-used-sidebar-sticky{
    position:relative;

    top:auto;
  }


  /*
   * The replacement RackStar logo is a desktop sticky-navigation
   * treatment and is unnecessary once the sidebar stacks.
   */

  .rs-used-sidebar-logo{
    display:none;
  }


  .rs-used-intro-feature{
    border-left:0;

    border-top:
      1px solid rgba(125,211,252,.22);
  }


  .rs-used-value-grid{
    grid-template-columns:1fr;
  }

}


@media (max-width:650px){

  .rs-used-brand-panel{
    min-height:90px;
  }


  .rs-used-brand-wordmark-main{
    font-size:2rem;
  }


  .rs-used-nav-title{
    margin-left:14px;
    margin-right:14px;
  }


  .rs-used-sidebar .rs-used-nav-list > li > a{
    padding:
      10px
      14px;
  }


  .rs-used-nav-cta{
    margin-left:14px;
    margin-right:14px;
  }

}


/* ============================================================
   USED CISCO EQUIPMENT MAP
   Richer card treatment + link-ready product chips
   ============================================================ */


/* ------------------------------------------------------------
   MAP CARDS
   ------------------------------------------------------------ */

#used-cisco-equipment .rs-fortinet-map-card{
  border-color:
    rgba(125,211,252,.22);

  background:

    /* upper-left illumination */
    radial-gradient(
      ellipse at 10% 6%,
      rgba(125,211,252,.13),
      transparent 40%
    ),

    /* subtle green secondary light */
    radial-gradient(
      ellipse at 92% 100%,
      rgba(190,242,100,.055),
      transparent 38%
    ),

    /* slight material sheen */
    linear-gradient(
      120deg,
      rgba(255,255,255,.055) 0%,
      rgba(255,255,255,.014) 25%,
      transparent 44%
    ),

    /* deeper blue-charcoal base */
    linear-gradient(
      145deg,
      #243747 0%,
      #192d3d 46%,
      #102333 100%
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 14px 32px rgba(0,0,0,.18);

  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}


/*
 * Existing ::before keeps the technical grid.
 * This adds a low-level light bloom above it.
 */

#used-cisco-equipment .rs-fortinet-map-card::after{
  content:"";

  position:absolute;
  inset:0;

  z-index:1;

  pointer-events:none;

  background:
    radial-gradient(
      circle at 8% 20%,
      rgba(125,211,252,.075),
      transparent 28%
    ),
    linear-gradient(
      180deg,
      rgba(255,255,255,.018),
      transparent 35%
    );
}


#used-cisco-equipment .rs-fortinet-map-card:hover{
  transform:
    translateY(-3px);

  border-color:
    rgba(125,211,252,.42);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 20px 42px rgba(0,0,0,.26),
    0 0 24px rgba(41,102,238,.09);
}


/* ------------------------------------------------------------
   ICON
   ------------------------------------------------------------ */

#used-cisco-equipment .rs-fortinet-map-icon{
  width:54px;
  height:54px;

  border-color:
    rgba(125,211,252,.34);

  background:
    radial-gradient(
      circle at 45% 35%,
      rgba(125,211,252,.18),
      rgba(41,102,238,.08) 48%,
      rgba(5,18,31,.46) 100%
    );

  color:#8bdcff;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 0 18px rgba(125,211,252,.035),
    0 6px 18px rgba(0,0,0,.18);

  transition:
    color .22s ease,
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease;
}


#used-cisco-equipment .rs-fortinet-map-card:hover
.rs-fortinet-map-icon{
  color:var(--partner-green);

  border-color:
    rgba(190,242,100,.34);

  transform:
    translateY(-1px);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 6px 20px rgba(0,0,0,.20),
    0 0 18px rgba(190,242,100,.07);
}


/* ------------------------------------------------------------
   CATEGORY + HEADINGS
   ------------------------------------------------------------ */

#used-cisco-equipment .rs-fortinet-map-category{
  margin-bottom:7px;

  color:var(--partner-green);

  font-size:.72rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.14em;
  text-transform:uppercase;
}


#used-cisco-equipment .rs-fortinet-map-content h3{
  margin:
    0
    0
    12px;

  color:#f6f9fc;

  font-size:
    clamp(1.28rem,1.5vw,1.58rem);

  font-weight:800;

  line-height:1.16;

  letter-spacing:-.02em;

  text-shadow:
    0 2px 8px rgba(0,0,0,.22);
}


#used-cisco-equipment .rs-fortinet-map-content > p{
  color:#b9c9d7;

  font-size:.96rem;

  line-height:1.68;
}


/* ============================================================
   PRODUCT CHIPS
   Works with both current SPANs and future links.
   ============================================================ */

#used-cisco-equipment .rs-fortinet-map-products{
  gap:7px;

  margin-top:22px;
}


#used-cisco-equipment .rs-fortinet-map-products
:is(span,a){
  display:inline-flex;
  align-items:center;

  min-height:29px;

  padding:
    7px
    11px;

  border:
    1px solid rgba(125,211,252,.19);

  border-radius:6px;

  background:
    linear-gradient(
      145deg,
      rgba(10,27,42,.72),
      rgba(5,18,31,.58)
    );

  color:#d1deea;

  font-size:.76rem;
  font-weight:700;

  line-height:1.2;

  white-space:nowrap;

  text-decoration:none;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.018);

  transition:
    color .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}


/* ------------------------------------------------------------
   FUTURE LINK STATE
   SPANs remain visually identical.
   ------------------------------------------------------------ */

#used-cisco-equipment .rs-fortinet-map-products a:hover{
  color:#fff;

  border-color:
    rgba(190,242,100,.38);

  background:
    linear-gradient(
      145deg,
      rgba(190,242,100,.10),
      rgba(18,43,48,.62)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 5px 12px rgba(0,0,0,.14);

  transform:
    translateY(-1px);
}


#used-cisco-equipment .rs-fortinet-map-products a:focus-visible{
  outline:
    1px solid rgba(190,242,100,.65);

  outline-offset:2px;
}


/* ============================================================
   COMMON BUYING SCENARIOS
   Interactive story gallery
   ============================================================ */

.rs-used-scenario-gallery{
  display:grid;

  grid-template-columns:
    minmax(220px,.72fr)
    minmax(0,1.65fr);

  grid-template-rows:
    minmax(430px,500px);

  gap:10px;

  margin-top:42px;
}


/* ============================================================
   LEFT THUMBNAIL COLUMN
   ============================================================ */

.rs-used-scenario-thumbs{
  display:grid;

  grid-template-rows:
    repeat(2,minmax(0,1fr));

  gap:10px;

  min-width:0;
}


/* ------------------------------------------------------------
   THUMBNAIL
   ------------------------------------------------------------ */

.rs-used-scenario-thumb{
  position:relative;

  display:block;

  width:100%;
  min-height:0;

  margin:0;
  padding:0;

  overflow:hidden;

  border:
    1px solid rgba(125,211,252,.16);

  border-radius:8px;

  background:#071522;

  cursor:pointer;

  appearance:none;

  text-align:left;

  box-shadow:
    0 12px 28px rgba(0,0,0,.16);

  transition:
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease;
}


.rs-used-scenario-thumb img{
  display:block;

  width:100%;
  height:100%;

  object-fit:cover;

  filter:
    saturate(.82)
    brightness(.72)
    contrast(1.04);

  transform:scale(1.01);

  transition:
    transform .38s ease,
    filter .38s ease;
}


/* darkening */

.rs-used-scenario-thumb-shade{
  position:absolute;

  inset:0;

  z-index:1;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(3,12,22,.05) 0%,
      rgba(3,12,22,.10) 40%,
      rgba(3,12,22,.72) 100%
    ),
    linear-gradient(
      90deg,
      rgba(3,15,25,.24),
      transparent 65%
    );
}


/* thumbnail number */

.rs-used-scenario-thumb-number{
  position:absolute;

  z-index:2;

  left:22px;
  bottom:18px;

  color:rgba(190,242,100,.78);

  font-size:
    clamp(2rem,2.7vw,3.2rem);

  font-weight:950;

  line-height:1;

  letter-spacing:-.06em;

  text-shadow:
    0 2px 12px rgba(0,0,0,.55);
}


/* hover */

.rs-used-scenario-thumb:hover{
  border-color:
    rgba(190,242,100,.34);

  transform:
    translateY(-2px);

  box-shadow:
    0 16px 34px rgba(0,0,0,.22);
}


.rs-used-scenario-thumb:hover img{
  filter:
    saturate(.96)
    brightness(.82)
    contrast(1.04);

  transform:
    scale(1.035);
}


.rs-used-scenario-thumb:focus-visible{
  outline:
    2px solid rgba(190,242,100,.70);

  outline-offset:3px;
}


/* ============================================================
   PRIMARY FEATURE
   ============================================================ */

.rs-used-scenario-feature{
  position:relative;

  min-width:0;

  overflow:hidden;

  border:
    1px solid rgba(125,211,252,.20);

  border-radius:9px;

  background:#071522;

  box-shadow:
    0 18px 38px rgba(0,0,0,.22);
}


.rs-used-scenario-feature-image{
  position:absolute;

  inset:0;

  display:block;

  width:100%;
  height:100%;

  object-fit:cover;

  filter:
    saturate(.90)
    contrast(1.04)
    brightness(.76);

  transform:scale(1.01);

  transition:
    opacity .22s ease,
    transform .45s ease,
    filter .45s ease;
}


/* ------------------------------------------------------------
   FEATURE IMAGE OVERLAY
   ------------------------------------------------------------ */

.rs-used-scenario-feature-overlay{
  position:absolute;
  inset:0;

  z-index:1;

  pointer-events:none;

  background:


    linear-gradient(
      90deg,
      rgba(3,13,23,.62) 0%,
      rgba(3,13,23,.42) 34%,
      rgba(3,13,23,.10) 68%,
      rgba(3,13,23,.04) 100%
    ),


    linear-gradient(
      180deg,
      rgba(2,10,18,.02) 0%,
      rgba(2,10,18,.05) 48%,
      rgba(2,10,18,.28) 100%
    );
}

/* ============================================================
   FEATURE CONTENT
   ============================================================ */

.rs-used-scenario-feature-content{
  position:absolute;

  z-index:2;

  left:
    clamp(28px,4vw,58px);

  bottom:
    clamp(30px,4vw,54px);

  width:min(560px,74%);

  transition:
    opacity .18s ease,
    transform .18s ease;
}


/* number */

.rs-used-scenario-feature-number{
  margin-bottom:18px;

  color:
    rgba(190,242,100,.82);

  font-size:
    clamp(3rem,4.5vw,5.4rem);

  font-weight:950;

  line-height:.8;

  letter-spacing:-.075em;

  text-shadow:
    0 2px 14px rgba(0,0,0,.40);
}


.rs-used-scenario-feature-number::after{
  content:"";

  display:block;

  width:46px;
  height:2px;

  margin-top:22px;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.86),
      rgba(125,211,252,.26)
    );
}


/* title */

.rs-used-scenario-feature-content h3{
  max-width:520px;

  margin:
    0
    0
    14px;

  color:#fff;

  font-size:
    clamp(1.55rem,2.25vw,2.45rem);

  font-weight:850;

  line-height:1.12;

  letter-spacing:-.035em;

  text-shadow:
    0 3px 16px rgba(0,0,0,.46);
}


/* description */

.rs-used-scenario-feature-content p{
  max-width:560px;

  margin:0;

  color:#d0dce7;

  font-size:
    clamp(.94rem,1.05vw,1.04rem);

  line-height:1.68;

  text-shadow:
    0 2px 7px rgba(0,0,0,.55);
}


/* ============================================================
   SWAP TRANSITION
   ============================================================ */

.rs-used-scenario-feature.is-swapping
.rs-used-scenario-feature-image{
  opacity:.30;

  transform:
    scale(1.035);
}


.rs-used-scenario-feature.is-swapping
.rs-used-scenario-feature-content{
  opacity:0;

  transform:
    translateY(8px);
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:900px){

  .rs-used-scenario-gallery{
    grid-template-columns:1fr;

    grid-template-rows:auto;

    gap:10px;
  }


  .rs-used-scenario-feature{
    order:1;

    min-height:420px;
  }


  .rs-used-scenario-thumbs{
    order:2;

    grid-template-columns:
      repeat(2,minmax(0,1fr));

    grid-template-rows:150px;
  }

}


@media (max-width:600px){

  .rs-used-scenario-feature{
    min-height:390px;
  }


  .rs-used-scenario-feature-content{
    left:22px;
    right:22px;
    bottom:26px;

    width:auto;
  }


  .rs-used-scenario-thumbs{
    grid-template-rows:120px;
  }


  .rs-used-scenario-thumb-number{
    left:16px;
    bottom:14px;

    font-size:2rem;
  }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion:reduce){

  .rs-used-scenario-feature-image,
  .rs-used-scenario-feature-content,
  .rs-used-scenario-thumb,
  .rs-used-scenario-thumb img{
    transition:none;
  }

}

/* ============================================================
   USED EQUIPMENT TRADE-IN
   Full-width photographic stage + fading message bands
   ============================================================ */

.rs-used-tradein-stage{
  position:relative;

  margin-left:calc(clamp(18px,2vw,30px) * -1);
  margin-right:calc(clamp(18px,2vw,30px) * -1);
  margin-top:0px;

  width:auto;
  max-width:none;

  min-height:500px;

  overflow:hidden;

  border-radius:0;

  background:#071522;

  box-shadow:
    0 22px 48px rgba(0,0,0,.24);
}


/* ============================================================
   FULL-WIDTH BACKGROUND IMAGE
   ============================================================ */

.rs-used-tradein-bg{
  position:absolute;
  inset:0;

  z-index:0;

  border-radius:0;

  background:
    url("i/buy-backs-hero5.png")
    center center / cover
    no-repeat;
}



.rs-used-tradeinbb-bg{
  position:absolute;
  inset:0;

  z-index:0;

  border-radius:0;

  background:
    url("i/buy-backs-hero4.png")
    center center / cover
    no-repeat;
}







/*
 * Keep the photograph visible.
 * Darkness is concentrated behind the heading rather
 * than applied heavily across the entire image.
 */

.rs-used-tradein-bg::after{
  content:"";

  position:absolute;
  inset:0;

  pointer-events:none;

  background:

    /* heading protection */
    radial-gradient(
      ellipse at 19% 15%,
      rgba(2,10,18,.68) 0%,
      rgba(2,10,18,.47) 27%,
      rgba(2,10,18,.18) 49%,
      rgba(2,10,18,0) 70%
    ),

    /* very subtle lower falloff */
    linear-gradient(
      180deg,
      rgba(3,12,22,.02) 0%,
      rgba(3,12,22,.02) 55%,
      rgba(3,12,22,.20) 100%
    );
}


/* ============================================================
   TRADE-IN HEADING
   ============================================================ */

.rs-used-tradein-heading{
  position:relative;

  z-index:2;

  width:auto;
  max-width:940px;

  margin:0;

  padding:
    clamp(38px,4.5vw,58px)
    clamp(30px,4vw,58px)
    clamp(14px,1.6vw,22px);
}


/* eyebrow */

.rs-used-tradein-heading .rs-partner-section-eyebrow{
  color:var(--partner-green);

  text-shadow:
    0 2px 3px rgba(0,0,0,.95),
    0 5px 14px rgba(0,0,0,.72),
    0 0 24px rgba(0,0,0,.45);
}


/* headline */

.rs-used-tradein-heading h2{
  max-width:820px;

  color:#fff;

  text-shadow:
    0 2px 2px rgba(0,0,0,1),
    0 4px 8px rgba(0,0,0,.92),
    0 8px 18px rgba(0,0,0,.76),
    0 14px 32px rgba(0,0,0,.56),
    0 0 42px rgba(0,0,0,.34);
}


/* intro copy */

.rs-used-tradein-heading p{
  max-width:760px;

  margin-top:14px;

  color:#e0e8ef;

  font-size:1.08rem;
  line-height:1.65;

  font-weight:450;

  text-shadow:
    0 2px 3px rgba(0,0,0,.95),
    0 4px 10px rgba(0,0,0,.78),
    0 8px 22px rgba(0,0,0,.78);
}


/* ============================================================
   STRIP STACK
   Bands begin flush against the LEFT EDGE of the photograph.
   ============================================================ */

.rs-used-tradein-strip-stack{
  position:relative;
  z-index:1;

  display:grid;

  gap:10px;

  width:80%;

  padding:0;
}


/* ============================================================
   BASE MESSAGE BAND
   ============================================================ */

.rs-used-tradein-strip{
  position:relative;

  display:grid;

  grid-template-columns:
    clamp(100px,8vw,135px)
    minmax(0,600px);

  gap:
    clamp(12px,1.4vw,20px);

  align-items:center;

  width:min(100%, 850px);

  margin-left:0;
  margin-right:auto;

  min-height:125px;

  box-sizing:border-box;

  padding:
    19px
    clamp(24px,3vw,42px);

  border:0;
  border-radius:0;

  overflow:visible;

  box-shadow:none;
}

.rs-used-tradein-strip::before{
  content:none;
}


/* ============================================================
   BLUE BAND
   Strong at left → completely transparent before midpoint.
   ============================================================ */

.rs-used-tradein-strip--blue{
  background:
    linear-gradient(
      90deg,

      rgba(14,44,75,.96) 0%,
      rgba(20,68,112,.92) 22%,
      rgba(46,112,167,.80) 32%,
      rgba(80,163,216,.52) 48%,
      rgba(80,163,216,.20) 60%,
      rgba(80,163,216,0) 72%,

      transparent 100%
    );
}


/* ============================================================
   GREEN BAND
   Same geometry, different signal.
   ============================================================ */

.rs-used-tradein-strip--green{
  background:
    linear-gradient(
      90deg,

      rgba(22,55,37,.96) 0%,
      rgba(38,88,52,.92) 22%,
      rgba(75,132,64,.78) 32%,
      rgba(143,195,96,.44) 48%,
      rgba(190,242,100,.12) 60%,
      rgba(190,242,100,0) 72%,

      transparent 100%
    );
}


/* ============================================================
   KICKER
   ============================================================ */

.rs-used-tradein-strip-kicker{
  position:relative;

  align-self:start;

  padding-top:5px;

  color:rgba(255,255,255,.74);

  font-size:.65rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.16em;
  text-transform:uppercase;
}


/*
 * Small signal line gives the kicker some structure without
 * turning it into another box.
 */

.rs-used-tradein-strip-kicker::after{
  content:"";

  display:block;

  width:32px;
  height:2px;

  margin-top:12px;

  background:
    rgba(255,255,255,.42);
}


/* ============================================================
   BAND CONTENT
   ============================================================ */

.rs-used-tradein-strip-content{
  min-width:0;
}


.rs-used-tradein-strip-content h3{
  margin:
    0
    0
    9px;

  color:#fff;

  font-size:
    clamp(1.22rem,1.65vw,1.62rem);

  font-weight:850;

  line-height:1.15;

  letter-spacing:-.025em;

  text-shadow:
        0 1px 2px rgba(0,0,0,.95),
	    0 2px 5px rgba(0,0,0,.82),
	    0 5px 12px rgba(0,0,0,.64),
    0 9px 22px rgba(0,0,0,.42);
}


.rs-used-tradein-strip-content p{
  max-width:650px;

  margin:0;

  color:rgba(255,255,255,.86);

  font-size:1.04rem;

  line-height:1.65;

  text-shadow:
    0 1px 2px rgba(0,0,0,.95),
    0 2px 5px rgba(0,0,0,.82),
    0 5px 12px rgba(0,0,0,.64),
    0 9px 22px rgba(0,0,0,.42);
}


/* ============================================================
   CTA
   ============================================================ */

.rs-used-tradein-actions{
  position:relative;
  z-index:2;

  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;

  margin:0;

  padding:
    26px
    clamp(30px,4vw,58px)
    clamp(38px,4vw,52px);
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1050px){

  .rs-used-tradein-strip{
    grid-template-columns:
      120px
      minmax(0,430px);
  }


 .rs-used-tradein-strip--blue{
   background:
     linear-gradient(
       90deg,

       rgba(14,44,75,.96) 0%,
       rgba(20,68,112,.92) 18%,
       rgba(46,112,167,.78) 34%,
       rgba(80,163,216,.44) 46%,
       rgba(80,163,216,.13) 55%,
       rgba(80,163,216,0) 61%,

       transparent 100%
     );
 }


 .rs-used-tradein-strip--green{
   background:
     linear-gradient(
       90deg,

       rgba(22,55,37,.96) 0%,
       rgba(38,88,52,.92) 18%,
       rgba(75,132,64,.78) 34%,
       rgba(143,195,96,.42) 46%,
       rgba(190,242,100,.12) 55%,
       rgba(190,242,100,0) 61%,

       transparent 100%
     );
}

}


@media (max-width:700px){

  .rs-used-tradein-stage{
    min-height:0;
  }


  .rs-used-tradein-bg{
    background-position:
      62% center;
  }


  .rs-used-tradein-bg::after{
    background:
      linear-gradient(
        90deg,
        rgba(3,13,23,.54),
        rgba(3,13,23,.24)
      );
  }


  .rs-used-tradein-strip-stack{
    gap:10px;

    padding-top:26px;
  }


  .rs-used-tradein-strip{
    grid-template-columns:1fr;

    gap:8px;

    min-height:0;

    padding:
      22px
      20px
      24px;
  }


  .rs-used-tradein-strip--blue{
    background:
      linear-gradient(
        90deg,
        rgba(14,44,75,.94),
        rgba(36,93,143,.76) 68%,
        rgba(80,163,216,.30)
      );
  }


  .rs-used-tradein-strip--green{
    background:
      linear-gradient(
        90deg,
        rgba(22,55,37,.94),
        rgba(64,119,62,.76) 68%,
        rgba(143,195,96,.28)
      );
  }


  .rs-used-tradein-strip-kicker{
    padding-top:0;
  }


  .rs-used-tradein-strip-kicker::after{
    margin-top:8px;
  }


  .rs-used-tradein-actions{
    padding:
      20px
      20px
      26px;
  }

}

/* secondary buy-back button */


.rs-used-tradein-btn--secondary{
  border:
    1px solid rgba(125,211,252,.40);

  background:
    rgba(6,21,34,.62);

  color:#e5f2fa;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 8px 20px rgba(0,0,0,.16);

  backdrop-filter:
    blur(4px);

  -webkit-backdrop-filter:
    blur(4px);
}


.rs-used-tradein-btn--secondary:hover{
  border-color:
    rgba(125,211,252,.68);

  background:
    rgba(18,55,80,.78);

  color:#fff;
}

@media (max-width:900px){

  .rs-used-tradein-stage{
    margin-left:-14px;
    margin-right:-14px;
  }

}


@media (max-width:600px){

  .rs-used-tradein-heading{
    padding:
      34px
      20px
      28px;
  }


  .rs-used-tradein-actions{
    padding:
      22px
      20px
      28px;
  }

}


/* ============================================================
   USED CISCO FAQ
   Technical reference index with Q / A markers
   ============================================================ */

.rs-used-faq{
  position:relative;

  display:grid;
  grid-template-columns:
    minmax(240px,.62fr)
    minmax(0,1.38fr);

  gap:clamp(44px,5vw,84px);
  align-items:start;

  padding-top:clamp(64px,6vw,90px);
  padding-bottom:clamp(64px,6vw,90px);
}


/* ============================================================
   FAQ HEADING
   ============================================================ */

.rs-used-faq > .rs-partner-section-heading{
  position:relative;
  max-width:390px;
  padding-top:4px;
}

.rs-used-faq > .rs-partner-section-heading::after{
  content:"";

  display:block;

  width:100%;
  height:2px;

  margin-top:28px;

  background:
    linear-gradient(
      90deg,
      var(--partner-green),
      rgba(190,242,100,0)
    );

  box-shadow:0 0 12px rgba(190,242,100,.14);
}

.rs-used-faq .rs-partner-section-heading h2{
  max-width:380px;
}

.rs-used-faq .rs-partner-section-heading > p{
  max-width:350px;

  color:#9eacba;

  font-size:.96rem;
  line-height:1.75;
}


/* ============================================================
   FAQ INDEX
   ============================================================ */

.rs-used-faq .rs-faq-list{
  position:relative;

  width:100%;

  margin:0;
  padding:0;

  counter-reset:rs-faq-counter;
}


/* ============================================================
   FAQ ROW
   ============================================================ */

.rs-used-faq .rs-faq-item{
  position:relative;

  margin:0;
  padding:0;

  overflow:visible;

  counter-increment:rs-faq-counter;

  border:0;
  border-top:1px solid rgba(148,163,184,.18);
  border-radius:0;

  background:transparent;
  box-shadow:none;
}

.rs-used-faq .rs-faq-item:last-child{
  border-bottom:1px solid rgba(148,163,184,.18);
}


/* ============================================================
   QUESTION
   ============================================================ */

.rs-used-faq .rs-faq-item > summary{
  position:relative;

  display:grid;
  grid-template-columns:
    58px
    minmax(0,1fr)
    34px;

  gap:18px;
  align-items:center;

  min-height:86px;

  margin:0;
  padding:18px 4px;

  color:#e9f0f5;

  font-size:clamp(1rem,1.15vw,1.14rem);
  font-weight:750;
  line-height:1.42;

  list-style:none;
  cursor:pointer;

  transition:
    color .18s ease,
    background .18s ease;
}

.rs-used-faq .rs-faq-item > summary::-webkit-details-marker{
  display:none;
}

.rs-used-faq .rs-faq-item > summary::marker{
  content:"";
}


/* Q1, Q2, Q3... */

.rs-used-faq .rs-faq-item > summary::before{
  content:"Q" counter(rs-faq-counter);

  display:flex;
  align-items:center;
  justify-content:flex-start;

  color:rgba(125,211,252,.52);

  font-size:.78rem;
  font-weight:900;
  line-height:1;
  letter-spacing:.08em;

  transition:color .18s ease;
}


/* plus / minus control */

.rs-used-faq .rs-faq-item > summary::after{
  content:"+";

  display:flex;
  align-items:center;
  justify-content:center;

  width:30px;
  height:30px;

  justify-self:end;

  border:1px solid rgba(125,211,252,.20);
  border-radius:50%;

  color:rgba(190,242,100,.82);
  background:rgba(190,242,100,.025);

  font-size:1.2rem;
  font-weight:400;
  line-height:1;

  transition:
    color .18s ease,
    border-color .18s ease,
    background .18s ease,
    transform .18s ease;
}


/* ============================================================
   HOVER / OPEN STATE
   ============================================================ */

.rs-used-faq .rs-faq-item > summary:hover{
  color:#fff;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.025),
      transparent 72%
    );
}

.rs-used-faq .rs-faq-item > summary:hover::before{
  color:rgba(125,211,252,.88);
}

.rs-used-faq .rs-faq-item > summary:hover::after{
  border-color:rgba(190,242,100,.46);
  background:rgba(190,242,100,.07);
  color:var(--partner-green);
}

.rs-used-faq .rs-faq-item[open] > summary{
  color:#fff;
}

.rs-used-faq .rs-faq-item[open] > summary::before{
  color:var(--partner-green);
  text-shadow:0 0 10px rgba(190,242,100,.16);
}

.rs-used-faq .rs-faq-item[open] > summary::after{
  content:"−";

  border-color:rgba(190,242,100,.48);
  background:rgba(190,242,100,.08);
  color:var(--partner-green);

  transform:rotate(180deg);
}


/* ============================================================
   ANSWER
   ============================================================ */

.rs-used-faq .rs-faq-answer{
  position:relative;

  display:grid;
  grid-template-columns:
    42px
    minmax(0,1fr);

  gap:14px;

  margin:
    -4px
    42px
    26px
    58px;

  padding:18px 0 4px;

  border-top:1px solid rgba(148,163,184,.09);
  border-left:0;
}

.rs-used-faq .rs-faq-answer::before{
  content:"A.";

  position:static;

  display:block;

  width:auto;
  height:auto;

  color:var(--partner-green);

  background:none;
  box-shadow:none;

  font-size:.78rem;
  font-weight:900;
  line-height:1.7;
  letter-spacing:.08em;

  text-shadow:0 0 10px rgba(190,242,100,.14);
}

.rs-used-faq .rs-faq-answer p{
  max-width:760px;

  margin:0;

  color:#aebbc7;

  font-size:.94rem;
  line-height:1.72;
}


/* ============================================================
   IMAGE OVERLAY BUTTONS
   Higher-opacity buttons for use over photography
   ============================================================ */
 .rs-image-btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px; padding: 12px 20px; border-radius:8px; color:#fff; text-decoration:none; font-size:.92rem; font-weight:800; line-height:1.15; text-shadow: 0 1px 2px rgba(0,0,0,.72); box-shadow: 0 8px 22px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.10); transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease; } .rs-image-btn:hover{ color:#fff; text-decoration:none; transform: translateY(-1px); } .rs-image-btn:focus-visible{ outline: 2px solid rgba(190,242,100,.78); outline-offset:3px; }
/* ------------------------------------------------------------
   PRIMARY / BLUE
   ------------------------------------------------------------ */
 .rs-image-btn--primary{ border: 1px solid rgba(125,211,252,.78); background: linear-gradient( 135deg, rgba(35,105,190,.98), rgba(19,70,130,.98) ); box-shadow: 0 8px 22px rgba(0,0,0,.36), 0 0 16px rgba(41,102,238,.14), inset 0 1px 0 rgba(255,255,255,.12); } .rs-image-btn--primary:hover{ border-color: rgba(165,225,255,.95); background: linear-gradient( 135deg, rgba(48,126,218,1), rgba(24,82,151,1) ); box-shadow: 0 10px 26px rgba(0,0,0,.40), 0 0 20px rgba(125,211,252,.16), inset 0 1px 0 rgba(255,255,255,.14); }
/* ------------------------------------------------------------
   SECONDARY / DARK STEEL
   ------------------------------------------------------------ */
 .rs-image-btn--secondary{ border: 1px solid rgba(190,242,100,.42); background: linear-gradient( 135deg, rgba(18,37,49,.97), rgba(8,22,32,.98) ); color:#f4f8fb; box-shadow: 0 8px 22px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.07); } .rs-image-btn--secondary:hover{ border-color: rgba(190,242,100,.72); background: linear-gradient( 135deg, rgba(29,53,64,.99), rgba(11,29,40,.99) ); box-shadow: 0 10px 26px rgba(0,0,0,.42), 0 0 16px rgba(190,242,100,.08), inset 0 1px 0 rgba(255,255,255,.09); }
/* ------------------------------------------------------------
   ICON
   ------------------------------------------------------------ */
 .rs-image-btn i{ font-size:.84rem; transition: transform .18s ease; } .rs-image-btn:hover i{ transform: translateX(2px); }





/* ============================================================
   KEYBOARD FOCUS
   ============================================================ */

.rs-used-faq .rs-faq-item > summary:focus-visible{
  outline:1px solid rgba(190,242,100,.60);
  outline-offset:4px;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:900px){

  .rs-used-faq{
    grid-template-columns:1fr;
    gap:38px;
  }

  .rs-used-faq > .rs-partner-section-heading{
    max-width:760px;
  }

  .rs-used-faq .rs-partner-section-heading > p{
    max-width:680px;
  }

}


@media (max-width:650px){

  .rs-used-faq .rs-faq-item > summary{
    grid-template-columns:
      36px
      minmax(0,1fr)
      30px;

    gap:10px;

    min-height:78px;

    font-size:.96rem;
  }

  .rs-used-faq .rs-faq-item > summary::before{
    font-size:.72rem;
  }

  .rs-used-faq .rs-faq-answer{
    grid-template-columns:
      30px
      minmax(0,1fr);

    gap:10px;

    margin:
      0
      8px
      22px
      36px;
  }

}



/* ============================================================
   WAYS TO SHOP
   ============================================================ */

.rs-brand-shopways{
  position:relative;

  /*
   * Neutralize spacing behavior inherited from the original
   * two-card intro-feature composition.
   */
  padding-top:0;
}


/* ============================================================
   FULL-WIDTH HEADER STAGE
   ============================================================ */

.rs-brand-shopways-head{
  position:relative;
  margin-left:calc(clamp(18px,2vw,30px) * -1);
  margin-right:calc(clamp(18px,2vw,30px) * -1);
  padding-bottom:10px;
  overflow:hidden;

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(125,211,252,.10),
      transparent 38%
    ),
    radial-gradient(
      circle at 82% 100%,
      rgba(190,242,100,.055),
      transparent 42%
    ),
    linear-gradient(
      145deg,
      #183247 0%,
      #10283a 48%,
      #091d2b 100%
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 14px 34px rgba(0,0,0,.16);
}


/*
 * Restore the normal content inset INSIDE the full-width stage.
 */

.rs-brand-shopways-head-inner{
  padding:
    clamp(34px,4vw,54px)
    clamp(18px,2vw,30px)
    clamp(36px,4vw,56px);
}


/* ------------------------------------------------------------
   SIGNAL STRIP
   ------------------------------------------------------------ */

.rs-brand-shopways-strip{
  position:relative;

  margin:0;

  border:0;
  border-bottom:1px solid rgba(125,211,252,.14);

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.065),
      rgba(125,211,252,.045) 48%,
      rgba(5,20,31,.22)
    );
}


/* ------------------------------------------------------------
   HEADING
   ------------------------------------------------------------ */

.rs-brand-shopways-heading{
  margin:0;
  padding:0;
}

.rs-brand-shopways-heading h2{
  max-width:920px;
  margin-top:8px;
}

.rs-brand-shopways-heading p{
  max-width:1000px;
  margin-bottom:0;
}


/* ============================================================
   CARD GRID
   ============================================================ */

.rs-brand-shopways-grid{
  position:relative;

  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));

  /*
   * Important:
   * Remove inherited negative positioning / spacing.
   */
  margin-top:28px !important;

  gap:0;

  overflow:hidden;

  border:
    1px solid rgba(125,211,252,.14);

  border-radius:5px;

  background:#091a27;

  box-shadow:
    0 18px 38px rgba(0,0,0,.18);
}


/* ============================================================
   CARD BASE
   ============================================================ */

.rs-brand-shopways .rs-brand-shop-card{
  --shop-accent:#7dd3fc;
  --shop-accent-rgb:125,211,252;

  position:relative;

  min-width:0;
  min-height:100%;

  margin:0 !important;

  padding:
    clamp(32px,3vw,46px)
    clamp(28px,3vw,42px);

  overflow:hidden;

  border:0 !important;
  border-radius:0 !important;

  background:
    radial-gradient(
      circle at 0 0,
      rgba(var(--shop-accent-rgb),.09),
      transparent 46%
    ),
    linear-gradient(
      145deg,
      rgba(30,52,68,.90),
      rgba(10,27,40,.96)
    );

  box-shadow:none !important;

  transition:
    transform .28s ease,
    background .28s ease,
    box-shadow .28s ease;
}


/* ============================================================
   FOUR CARD COLORS
   ============================================================ */


/* 01 — PART NUMBERS / BLUE */

.rs-brand-shop-card--parts{
  --shop-accent:#7dd3fc;
  --shop-accent-rgb:125,211,252;
}


/* 02 — BOM / GREEN */

.rs-brand-shop-card--bom{
  --shop-accent:#bef264;
  --shop-accent-rgb:190,242,100;
}


/* 03 — PRODUCT FAMILY / CYAN-TEAL */

.rs-brand-shop-card--family{
  --shop-accent:#67e8d4;
  --shop-accent-rgb:103,232,212;
}


/* 04 — REQUIREMENTS / STEEL-INDIGO */

.rs-brand-shop-card--requirements{
  --shop-accent:#a5b4fc;
  --shop-accent-rgb:165,180,252;
}


/* ============================================================
   CROSSHAIR SEPARATORS
   ============================================================ */

/*
 * Right-hand column gets vertical divider.
 */

.rs-brand-shop-card:nth-child(even){
  border-left:
    1px solid rgba(148,163,184,.22) !important;
}


/*
 * Bottom row gets horizontal divider.
 */

.rs-brand-shop-card:nth-child(n+3){
  border-top:
    1px solid rgba(148,163,184,.22) !important;
}



/* ============================================================
   BACKGROUND DETAIL
   ============================================================ */

.rs-brand-shop-card::after{
  content:"";

  position:absolute;

  right:-62px;
  bottom:-66px;

  width:190px;
  height:190px;

  border:
    1px solid rgba(var(--shop-accent-rgb),.10);

  border-radius:50%;

  box-shadow:
    inset 0 0 0 24px rgba(var(--shop-accent-rgb),.018);

  pointer-events:none;

  transition:
    transform .35s ease,
    border-color .28s ease,
    opacity .28s ease;
}


/* ============================================================
   NUMBER
   ============================================================ */

.rs-brand-shop-card-number{
  position:absolute;

  top:18px;
  right:22px;

  z-index:1;

  color:
    rgba(var(--shop-accent-rgb),.22);

  font-size:
    clamp(3rem,4.2vw,4.8rem);

  font-weight:900;
  line-height:1;

  letter-spacing:-.06em;

  user-select:none;

  transition:
    color .28s ease,
    transform .28s ease;
}


/* ============================================================
   ICON / KICKER
   ============================================================ */

.rs-brand-shopways .rs-used-intro-feature-icon{
  color:var(--shop-accent);

  border-color:
    rgba(var(--shop-accent-rgb),.22);

  background:
    rgba(var(--shop-accent-rgb),.055);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025);

  transition:
    transform .28s ease,
    border-color .28s ease,
    background .28s ease,
    box-shadow .28s ease;
}


.rs-brand-shopways .rs-used-intro-kicker{
  color:var(--shop-accent);
}


/* ============================================================
   META CHIPS
   ============================================================ */

.rs-brand-shop-card-meta{
  position:relative;
  z-index:2;

  display:flex;
  flex-wrap:wrap;

  gap:8px;

  margin-top:24px;
}


.rs-brand-shop-card-meta span{
  display:inline-flex;
  align-items:center;

  gap:7px;

  padding:7px 10px;

  border:
    1px solid rgba(var(--shop-accent-rgb),.15);

  border-radius:4px;

  background:
    rgba(3,15,24,.34);

  color:#bacbd6;

  font-size:.70rem;
  font-weight:800;
  line-height:1.15;

  letter-spacing:.05em;
  text-transform:uppercase;
}


.rs-brand-shop-card-meta i{
  color:var(--shop-accent);
}


/* ============================================================
   BUTTON
   ============================================================ */

.rs-brand-shop-card-action{
  position:relative;
  z-index:3;

  margin-top:26px;
}


.rs-brand-shop-card-action .rs-partner-btn{
  border-color:
    rgba(var(--shop-accent-rgb),.32);
}


/* ============================================================
   HOVER
   ============================================================ */

@media(hover:hover){

  .rs-brand-shop-card:hover{
    z-index:5;

    transform:translateY(-4px);

    background:
      radial-gradient(
        circle at 0 0,
        rgba(var(--shop-accent-rgb),.17),
        transparent 48%
      ),
      radial-gradient(
        circle at 100% 100%,
        rgba(var(--shop-accent-rgb),.08),
        transparent 42%
      ),
      linear-gradient(
        145deg,
        rgba(37,63,81,.97),
        rgba(11,29,43,.99)
      );

    box-shadow:
      0 20px 42px rgba(0,0,0,.26) !important;
  }


  .rs-brand-shop-card:hover::before{
    width:185px;
    opacity:1;
  }


  .rs-brand-shop-card:hover::after{
    transform:scale(1.14);

    border-color:
      rgba(var(--shop-accent-rgb),.24);
  }


  .rs-brand-shop-card:hover
  .rs-used-intro-feature-icon{
    transform:
      translateY(-3px)
      scale(1.04);

    border-color:
      rgba(var(--shop-accent-rgb),.48);

    background:
      rgba(var(--shop-accent-rgb),.10);

    box-shadow:
      0 9px 22px rgba(0,0,0,.22),
      0 0 20px rgba(var(--shop-accent-rgb),.08);
  }


  .rs-brand-shop-card:hover
  .rs-brand-shop-card-number{
    color:
      rgba(var(--shop-accent-rgb),.42);

    transform:
      translateY(-3px);
  }

}


/* ============================================================
   BOTTOM STRIP
   ============================================================ */

.rs-brand-shopways-strip--bottom{
  margin-top:28px;

  border-top:
    1px solid rgba(125,211,252,.14);

  border-bottom:
    1px solid rgba(125,211,252,.14);

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.045),
      rgba(190,242,100,.055) 58%,
      rgba(7,22,34,.18)
    );
}


/* ============================================================
   MOBILE
   ============================================================ */

@media(max-width:900px){

  .rs-brand-shopways-head{
    margin-left:-14px;
    margin-right:-14px;
  }

  .rs-brand-shopways-head-inner{
    padding-left:14px;
    padding-right:14px;
  }

}


@media(max-width:800px){

  .rs-brand-shopways-grid{
    grid-template-columns:1fr;
  }


  .rs-brand-shop-card{
    border-left:0 !important;

    border-top:
      1px solid rgba(148,163,184,.20) !important;
  }


  .rs-brand-shop-card:first-child{
    border-top:0 !important;
  }


}


@media(max-width:560px){

  .rs-brand-shopways .rs-brand-shop-card{
    padding:
      28px
      20px
      30px;
  }


  .rs-brand-shop-card-number{
    top:18px;
    right:18px;

    font-size:3rem;
  }

}


/* ============================================================
   WAYS TO SHOP — CORRECTION OVERRIDES
   Full-width shell + constrained card grid + four card palettes
   ============================================================ */

#ways-to-buy{
  margin-left:0 !important;
  margin-right:0 !important;
  width:auto !important;
}

#ways-to-buy .rs-brand-shopways-head{
  margin-left:0 !important;
  margin-right:0 !important;
  width:100%;
}

#ways-to-buy .rs-brand-shopways-grid{
  margin:
    28px
    clamp(18px,2vw,30px)
    0 !important;
}

#ways-to-buy .rs-brand-shopways-grid::before{
  content:none !important;
  display:none !important;
}

#ways-to-buy .rs-brand-shop-card--parts{
  --shop-accent:#7dd3fc;
  --shop-accent-rgb:125,211,252;
  --shop-panel-a:7,33,53;
  --shop-panel-b:3,19,31;
}


#ways-to-buy .rs-brand-shop-card--family{
  --shop-accent:#67e8d4;
  --shop-accent-rgb:103,232,212;
  --shop-panel-a:5,39,45;
  --shop-panel-b:4,22,32;
}

#ways-to-buy .rs-brand-shop-card--requirements{
  --shop-accent:#a5b4fc;
  --shop-accent-rgb:165,180,252;
  --shop-panel-a:28,34,61;
  --shop-panel-b:11,23,43;
}

#ways-to-buy .rs-brand-shop-card{
  background:
    radial-gradient(
      circle at 0 0,
      rgba(var(--shop-accent-rgb),.15),
      transparent 46%
    ),
    linear-gradient(
      145deg,
      rgba(var(--shop-panel-a),.98),
      rgba(var(--shop-panel-b),.99)
    ) !important;
}

@media(hover:hover){
  #ways-to-buy .rs-brand-shop-card:hover{
    background:
      radial-gradient(
        circle at 0 0,
        rgba(var(--shop-accent-rgb),.22),
        transparent 48%
      ),
      radial-gradient(
        circle at 100% 100%,
        rgba(var(--shop-accent-rgb),.08),
        transparent 42%
      ),
      linear-gradient(
        145deg,
        rgba(var(--shop-panel-a),1),
        rgba(var(--shop-panel-b),1)
      ) !important;
  }
}

@media(max-width:900px){
  #ways-to-buy .rs-brand-shopways-head{
    margin-left:0 !important;
    margin-right:0 !important;
  }

  #ways-to-buy .rs-brand-shopways-grid{
    margin:
      22px
      14px
      0 !important;
  }
}



/* ============================================================
   WAYS TO SHOP — ALIGNMENT + BOM COLOR REFINEMENT
   ============================================================ */


/* ------------------------------------------------------------
   FULL-WIDTH HEADER CONTENT
   Override the centered map-heading treatment inherited from
   .rs-partner-map-heading-full.
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-head-inner{
  width:100%;
  box-sizing:border-box;

  padding:
    clamp(36px,4vw,54px)
    clamp(32px,4vw,58px)
    clamp(38px,4vw,56px);
}


#ways-to-buy .rs-brand-shopways-heading{
  width:100%;
  max-width:none !important;

  margin:0 !important;
  padding:0;

  text-align:left !important;
}


#ways-to-buy .rs-brand-shopways-heading
.rs-partner-section-eyebrow{
  margin:
    0
    0
    10px !important;

  text-align:left;
}


#ways-to-buy .rs-brand-shopways-heading h2{
  width:100%;
  max-width:none;

  margin:
    0
    0
    16px;

  text-align:left;
}


#ways-to-buy .rs-brand-shopways-heading p{
  width:100%;
  max-width:1050px;

  margin:
    0 !important;

  text-align:left;
}


/* ------------------------------------------------------------
   BOM CARD — MUTED GREEN
   Keep green identity without making the entire panel glow.
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shop-card--bom{
  --shop-accent:#a7cd78;
  --shop-accent-rgb:167,205,120;

  --shop-panel-a:10,31,34;
  --shop-panel-b:5,23,29;

  background:
    radial-gradient(
      circle at 0 0,
      rgba(167,205,120,.065),
      transparent 46%
    ),
    linear-gradient(
      145deg,
      rgba(10,31,34,.99),
      rgba(5,23,29,.99)
    ) !important;
}


@media(hover:hover){

  #ways-to-buy .rs-brand-shop-card--bom:hover{
    background:
      radial-gradient(
        circle at 0 0,
        rgba(167,205,120,.11),
        transparent 48%
      ),
      radial-gradient(
        circle at 100% 100%,
        rgba(167,205,120,.035),
        transparent 42%
      ),
      linear-gradient(
        145deg,
        rgba(12,35,37,1),
        rgba(6,25,31,1)
      ) !important;
  }

}


/* ------------------------------------------------------------
   MOBILE HEADER ALIGNMENT
   ------------------------------------------------------------ */

@media(max-width:650px){

  #ways-to-buy .rs-brand-shopways-head-inner{
    padding:
      32px
      22px
      36px;
  }

}



/* ------------------------------------------------------------
   CONSULTATIVE FEATURE
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-consult{
  display:grid;
  grid-template-columns:
    minmax(0,1.55fr)
    minmax(300px,.72fr);

  gap:
    clamp(34px,4vw,64px);

  align-items:center;

  padding:
    clamp(8px,1vw,1px)
    0
    clamp(36px,4vw,2px);

  border-bottom:
    1px solid rgba(125,211,252,.16);
}


/* ------------------------------------------------------------
   LEFT — CONSULTATIVE COPY
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-consult-copy{
  min-width:0;
}


#ways-to-buy .rs-brand-shopways-consult-copy
.rs-partner-section-eyebrow{
  margin:
    0
    0
    10px;

  color:#bef264;

  font-size:.74rem;
  font-weight:900;

  letter-spacing:.22em;
  text-transform:uppercase;

  text-align:left;
}


#ways-to-buy .rs-brand-shopways-consult-copy h2{
  max-width:900px;

  margin:
    0
    0
    20px;

  color:#fff;

  font-size:
    clamp(2.15rem,3.45vw,3.8rem);

  line-height:1.03;

  letter-spacing:-.045em;
}


#ways-to-buy .rs-brand-shopways-consult-copy p{
  max-width:920px;

  margin:
    0
    0
    14px;

  color:#d0dce6;

  font-size:
    clamp(.96rem,1.08vw,1.08rem);

  line-height:1.72;
}


#ways-to-buy .rs-brand-shopways-consult-copy p:last-of-type{
  margin-bottom:0;
}


/* ------------------------------------------------------------
   CONSULTATIVE POINTS
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-consult-points{
  display:flex;
  flex-wrap:wrap;

  gap:8px;

  margin-top:24px;
}


#ways-to-buy .rs-brand-shopways-consult-points span{
  display:inline-flex;
  align-items:center;

  gap:7px;

  padding:
    8px
    11px;

  border:
    1px solid rgba(190,242,100,.14);

  border-radius:4px;

  background:
    rgba(5,22,31,.42);

  color:#becdd7;

  font-size:.69rem;
  font-weight:800;

  letter-spacing:.055em;
  text-transform:uppercase;
}


#ways-to-buy .rs-brand-shopways-consult-points i{
  color:#bef264;

  font-size:.67rem;
}


/* ------------------------------------------------------------
   RIGHT — PROJECT CTA PANEL
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-consult-action{
  position:relative;

  min-width:0;

  padding:
    clamp(28px,3vw,38px);

  border:
    1px solid rgba(125,211,252,.20);

  border-radius:7px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(125,211,252,.075),
      transparent 44%
    ),
    linear-gradient(
      145deg,
      rgba(10,36,53,.90),
      rgba(5,23,35,.98)
    );

  box-shadow:
    0 14px 30px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.025);

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}


/*
 * Small top accent consistent with the cards.
 */

#ways-to-buy .rs-brand-shopways-consult-action::before{


  position:absolute;

  top:-1px;
  left:28px;

  width:105px;
  height:2px;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.90),
      rgba(125,211,252,.45),
      transparent
    );
}


/* ------------------------------------------------------------
   CONSULT ICON
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-consult-icon{
  display:grid;
  place-items:center;

  width:58px;
  height:58px;

  margin-bottom:22px;

  border:
    1px solid rgba(190,242,100,.25);

  border-radius:6px;

  background:
    linear-gradient(
      145deg,
      rgba(190,242,100,.075),
      rgba(125,211,252,.035)
    );

  color:#bef264;

  font-size:1.4rem;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025);

  transition:
    transform .25s ease,
    border-color .25s ease,
    background .25s ease;
}


/* ------------------------------------------------------------
   CTA PANEL LABEL
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-consult-action-label{
  margin-bottom:8px;

  color:#7dd3fc;

  font-size:.67rem;
  font-weight:900;

  letter-spacing:.21em;
  text-transform:uppercase;
}


#ways-to-buy .rs-brand-shopways-consult-action p{
  margin:
    0
    0
    24px;

  color:#bacbd7;

  font-size:.94rem;
  line-height:1.65;
}


/* ------------------------------------------------------------
   CONSULT CTA BUTTON
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-consult-action
.rs-partner-btn{
  width:100%;

  justify-content:space-between;
}


/* ------------------------------------------------------------
   HOVER
   ------------------------------------------------------------ */

@media(hover:hover){

  #ways-to-buy .rs-brand-shopways-consult-action:hover{
    transform:translateY(-3px);

    border-color:
      rgba(190,242,100,.28);

    box-shadow:
      0 18px 36px rgba(0,0,0,.25),
      inset 0 1px 0 rgba(255,255,255,.035);
  }


  #ways-to-buy .rs-brand-shopways-consult-action:hover
  .rs-brand-shopways-consult-icon{
    transform:translateY(-2px);

    border-color:
      rgba(190,242,100,.40);

    background:
      linear-gradient(
        145deg,
        rgba(190,242,100,.11),
        rgba(125,211,252,.05)
      );
  }

}


/* ============================================================
   "ALREADY KNOW WHAT YOU NEED?" TRANSITION
   ============================================================ */

#ways-to-buy .rs-brand-shopways-path-intro{
  position:relative;

  padding:
    clamp(30px,3.5vw,44px)
    0
    0;

  text-align:left;
}


#ways-to-buy .rs-brand-shopways-path-intro
.rs-partner-section-eyebrow{
  margin:
    0
    0
    8px;

  color:#7dd3fc;

  font-size:.69rem;
  font-weight:900;

  letter-spacing:.22em;
  text-transform:uppercase;
}


#ways-to-buy .rs-brand-shopways-path-intro h3{
  margin:
    0
    0
    8px;

  color:#fff;

  font-size:
    clamp(1.45rem,2vw,2rem);

  line-height:1.12;

  letter-spacing:-.025em;
}


#ways-to-buy .rs-brand-shopways-path-intro p{
  max-width:850px;

  margin:0;

  color:#aebfcb;

  font-size:.94rem;
  line-height:1.65;
}


/* ============================================================
   GRID RELATIONSHIP
   Pull the cards visually closer to the path-intro.
   ============================================================ */



/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:1100px){

  #ways-to-buy .rs-brand-shopways-consult{
    grid-template-columns:
      minmax(0,1.35fr)
      minmax(280px,.8fr);

    gap:32px;
  }

}


@media(max-width:900px){

  #ways-to-buy .rs-brand-shopways-consult{
    grid-template-columns:1fr;

    gap:30px;
  }


  #ways-to-buy .rs-brand-shopways-consult-action{
    max-width:none;
  }

}


@media(max-width:650px){

  #ways-to-buy .rs-brand-shopways-consult{
    padding-bottom:32px;
  }


  #ways-to-buy .rs-brand-shopways-consult-copy h2{
    font-size:
      clamp(2rem,9vw,2.7rem);
  }


  #ways-to-buy .rs-brand-shopways-consult-points{
    flex-direction:column;
    align-items:flex-start;
  }


  #ways-to-buy .rs-brand-shopways-consult-action{
    padding:
      26px
      22px;
  }


  #ways-to-buy .rs-brand-shopways-path-intro{
    padding-top:28px;
  }

}


/* ============================================================
   ARISTA — "OR" DECISION BRIDGE
   ============================================================ */

#ways-to-buy .rs-brand-shopways-choice{
  position:relative;

  display:grid;

  grid-template-columns:
    clamp(180px,15vw,240px)
    minmax(0,1fr);

  margin-top:
    clamp(32px,4vw,48px);

  border-top:
    1px solid rgba(125,211,252,.16);

  border-bottom:
    1px solid rgba(125,211,252,.20);

  background:
    linear-gradient(
      90deg,
      rgba(6,27,41,.90),
      rgba(8,32,47,.64) 42%,
      rgba(5,23,36,.38)
    );
}

#ways-to-buy .rs-brand-shopways-choice-or{
  display:flex;
  align-items:center;
  justify-content:center;

  min-width:0;
  min-height:170px;

  padding:24px 18px;

  border-right:
    1px solid rgba(125,211,252,.18);

  background:
    linear-gradient(
      145deg,
      rgba(125,211,252,.075),
      rgba(190,242,100,.025)
    );

  color:
    rgba(125,211,252,.72);

  font-size:
    clamp(4.2rem,6vw,6.6rem);

  font-weight:900;
  line-height:.9;

  letter-spacing:.03em;

  white-space:nowrap;

  text-transform:none;

  text-shadow:
    0 0 28px rgba(125,211,252,.08);

  user-select:none;
}




/* ------------------------------------------------------------
   COPY SIDE
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-choice-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;

  min-width:0;

  padding:
    clamp(28px,3vw,40px)
    clamp(28px,4vw,52px);
}


#ways-to-buy .rs-brand-shopways-choice-copy
.rs-partner-section-eyebrow{
  margin:
    0
    0
    7px;

  color:#7dd3fc;

  font-size:.69rem;
  font-weight:900;

  letter-spacing:.22em;
  text-transform:uppercase;
}


.rs-partner-section-eyebrow-bag{
  display:inline-block;

  margin-top:22px;
  margin-bottom:10px;

  padding-bottom:5px;

  color:#bef264;

  font-size:.68rem;
  font-weight:900;
  line-height:1.2;

  letter-spacing:.18em;
  text-transform:uppercase;

  border-bottom:
    1px solid rgba(190,242,100,.22);
}



#ways-to-buy .rs-brand-shopways-choice-copy h3{
  margin:
    0
    0
    9px;

  color:#fff;

  font-size:
    clamp(1.55rem,2.2vw,2.25rem);

  line-height:1.08;

  letter-spacing:-.03em;
}


#ways-to-buy .rs-brand-shopways-choice-copy p{
  max-width:900px;

  margin:0;

  color:#b9c9d4;

  font-size:.96rem;
  line-height:1.65;
}



/* ------------------------------------------------------------
   DOWNWARD CUE INTO THE FOUR CARDS
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-choice-cue{
  display:flex;
  align-items:center;

  gap:10px;

  margin-top:18px;

  color:#91aabd;

  font-size:.67rem;
  font-weight:800;

  letter-spacing:.12em;
  text-transform:uppercase;
}


#ways-to-buy .rs-brand-shopways-choice-cue i{
  color:#bef264;

  font-size:.72rem;

  animation:
    rs-brand-choice-arrow 2.2s ease-in-out infinite;
}


@keyframes rs-brand-choice-arrow{

  0%,
  100%{
    transform:translateY(0);
  }

  50%{
    transform:translateY(4px);
  }

}


/* ------------------------------------------------------------
   PULL FOUR PATHS TIGHTER TO DECISION BRIDGE
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-shopways-grid{
  margin-top:
    16px !important;
}


/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media(max-width:650px){

  #ways-to-buy .rs-brand-shopways-choice{
    grid-template-columns:
      76px
      minmax(0,1fr);
  }


  #ways-to-buy .rs-brand-shopways-choice-copy{
    padding:
      26px
      20px;
  }


  #ways-to-buy .rs-brand-shopways-choice-cue span{
    display:none;
  }

}




/* ============================================================
   ARISTA SHOP CARD BUTTONS
   Keep .btn-call behavior, replace its visual treatment.
   ============================================================ */

#ways-to-buy .rs-brand-shop-btn{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;

  gap:18px;

  min-width:190px;

  padding:12px 16px;

  border:
    1px solid rgba(var(--shop-accent-rgb),.34);

  border-radius:4px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--shop-accent-rgb),.10),
      rgba(5,20,31,.82)
    );

  color:#e8f0f5;

  font-size:.76rem;
  font-weight:800;
  line-height:1;

  letter-spacing:.045em;
  text-transform:none;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 7px 18px rgba(0,0,0,.14);

  transition:
    background .22s ease,
    border-color .22s ease,
    color .22s ease,
    transform .22s ease,
    box-shadow .22s ease;
}


#ways-to-buy .rs-brand-shop-btn i{
  color:var(--shop-accent);

  font-size:.74rem;

  transition:
    transform .22s ease,
    color .22s ease;
}


@media(hover:hover){

  #ways-to-buy .rs-brand-shop-btn:hover{
    transform:translateY(-2px);

    border-color:
      rgba(var(--shop-accent-rgb),.56);

    background:
      linear-gradient(
        145deg,
        rgba(var(--shop-accent-rgb),.16),
        rgba(7,25,37,.92)
      );

    color:#fff;

    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.035),
      0 10px 22px rgba(0,0,0,.20);
  }


  #ways-to-buy .rs-brand-shop-btn:hover i{
    transform:translateX(3px);
  }

}


.rs-used-main-content > .rs-brand-shopways-strip--bottom{
  width:100%;
  max-width:none;

  margin:0;

  box-sizing:border-box;

  border-radius:0;
}

/* ============================================================
   ARISTA — IF / OR TYPOGRAPHIC DECISION MARKERS
   ============================================================ */

#ways-to-buy .rs-brand-decision-lead{
  display:grid;

  grid-template-columns:
    clamp(72px,7vw,105px)
    minmax(0,1fr);

  gap:
    clamp(20px,2.4vw,34px);

  align-items:start;
}


/* ------------------------------------------------------------
   LARGE IF / OR
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-decision-word{
  position:relative;

  display:flex;
  justify-content:flex-end;
  align-items:flex-start;

  min-width:0;
   opacity:.58;
  padding:
    2px
    clamp(18px,2vw,26px)
    0
    0;

  color:#bef264;

  font-size:
    clamp(3.8rem,5.5vw,6rem);

  font-weight:900;
  line-height:.82;

  letter-spacing:-.055em;

  white-space:nowrap;

  text-shadow:
    0 0 26px rgba(190,242,100,.08);
}


/*
 * The "pipe"
 */

#ways-to-buy .rs-brand-decision-word::after{
  content:"";

  position:absolute;

  top:-4px;
  right:0;

  width:2px;
  height:
    clamp(82px,7.2vw,108px);

  background:
    linear-gradient(
      180deg,
      rgba(190,242,100,.75),
      rgba(125,211,252,.42)
    );

  box-shadow:
    0 0 12px rgba(190,242,100,.10);
}


/* ------------------------------------------------------------
   CONTENT NEXT TO MARKER
   ------------------------------------------------------------ */

#ways-to-buy .rs-brand-decision-body{
  min-width:0;
}


#ways-to-buy .rs-brand-decision-body
.rs-partner-section-eyebrow{
  margin:
    0
    0
    8px;

  text-align:left;
}


#ways-to-buy .rs-brand-decision-body h2{
  margin:
    0
    0
    18px;
}


/* ============================================================
   OR VARIANT
   ============================================================ */

#ways-to-buy
.rs-brand-decision-lead--or
.rs-brand-decision-word{
  color:#7dd3fc;

  text-shadow:
    0 0 26px rgba(125,211,252,.08);
}


#ways-to-buy
.rs-brand-decision-lead--or
.rs-brand-decision-word::after{
  background:
    linear-gradient(
      180deg,
      rgba(125,211,252,.78),
      rgba(165,180,252,.36)
    );

  box-shadow:
    0 0 12px rgba(125,211,252,.10);
}


/* ============================================================
   MOBILE
   ============================================================ */

@media(max-width:650px){

  #ways-to-buy .rs-brand-decision-lead{
    grid-template-columns:
      62px
      minmax(0,1fr);

    gap:16px;
  }


  #ways-to-buy .rs-brand-decision-word{
    padding-right:14px;

    font-size:3.3rem;
  }


  #ways-to-buy .rs-brand-decision-word::after{
    height:72px;
  }

}

#ways-to-buy .rs-brand-decision-lead--or{
  margin-top:clamp(34px,4vw,52px);
  padding-top:clamp(30px,3vw,42px);

  border-top:
    1px solid rgba(125,211,252,.12);
}

/* Give the IF content a little more horizontal room */
#ways-to-buy .rs-brand-decision-lead--if{
  grid-template-columns:
    52px
    minmax(0,1fr);

  gap:14px;

  margin-left:24px;
  width:calc(100% + 24px);
}


/* Push the IF word slightly farther left */

#ways-to-buy
.rs-brand-decision-lead--if
.rs-brand-decision-word{
  transform:translateX(-4px);
}


.rs-brand-shopways-intro .leade{
  font-size:clamp(1.04rem,1.25vw,1.18rem);
}

.leade{
  font-size:clamp(1.04rem,1.25vw,1.18rem);
  line-height:1.72;
  color:#b7c5d1;
}



/* ============================================================
   PROCUREMENT PATH ASIDE
   ============================================================ */

.rs-brand-procurement-path{
  position:relative;
  overflow:hidden;

  padding:clamp(26px,3vw,38px);

  border:1px solid rgba(125,211,252,.16);
  border-radius:22px;

  background:
    linear-gradient(
      145deg,
      rgba(17,39,56,.96),
      rgba(8,26,39,.98)
    );

  box-shadow:
    0 22px 52px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.025);
}


.rs-brand-procurement-path::before{
  content:"";
  position:absolute;
  top:0;
  left:0;

  width:150px;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.9),
      rgba(125,211,252,.45),
      transparent
    );
}


.rs-brand-procurement-path::after{
  content:"";
  position:absolute;
  right:-80px;
  top:-80px;

  width:220px;
  height:220px;

  border-radius:50%;

  background:
    radial-gradient(
      circle,
      rgba(56,189,248,.09),
      transparent 68%
    );

  pointer-events:none;
}


.rs-brand-procurement-path-head{
  position:relative;
  z-index:2;

  margin-bottom:27px;
}


.rs-brand-procurement-path-head strong{
  display:block;

  margin-top:7px;

  color:#fff;

  font-size:clamp(1.4rem,1.8vw,1.9rem);
  line-height:1.15;
}


.rs-brand-procurement-path-head > span{
  display:block;

  margin-top:5px;

  color:#9fb0bf;

  font-size:.94rem;
}



/* ============================================================
   FLOW
   ============================================================ */

.rs-brand-procurement-flow{
  position:relative;
  z-index:2;

  display:grid;
  gap:0;
}


.rs-brand-procurement-step{
  position:relative;

  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:15px;
  align-items:center;

  min-height:76px;

  padding:13px 0;
}


.rs-brand-procurement-step:not(:last-child)::after{
  content:"";

  position:absolute;

  left:23px;
  top:59px;
  bottom:-10px;

  width:1px;

  background:
    linear-gradient(
      rgba(125,211,252,.42),
      rgba(190,242,100,.18)
    );
}


.rs-brand-procurement-step-icon{
  position:relative;
  z-index:2;

  display:grid;
  place-items:center;

  width:46px;
  height:46px;

  border:1px solid rgba(125,211,252,.25);
  border-radius:50%;

  color:#bef264;

  background:rgba(4,18,28,.92);

  box-shadow:
    0 0 18px rgba(56,189,248,.07);
}


.rs-brand-procurement-step > div:last-child{
  min-width:0;
}


.rs-brand-procurement-step span{
  display:block;

  margin-bottom:2px;

  color:#7dd3fc;

  font-size:.65rem;
  font-weight:900;
  letter-spacing:.14em;
}


.rs-brand-procurement-step strong{
  display:block;

  color:#edf6fb;

  font-size:.98rem;
  line-height:1.25;
}


.rs-brand-procurement-step small{
  display:block;

  margin-top:3px;

  color:#8196a7;

  font-size:.78rem;
  line-height:1.4;
}



/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:1050px){


  .rs-brand-procurement-path{
    max-width:720px;
  }

}


@media(max-width:650px){


  .rs-brand-procurement-path{
    padding:24px 20px;
  }

}


/* ============================================================
   BUYING WITH RACKSTAR — INTRO LAYOUT
   ============================================================ */

.rs-brand-shopways-intro{
  display:grid;
  grid-template-columns:
    minmax(0,1.35fr)
    minmax(360px,.65fr);

  gap:clamp(42px,5vw,78px);
  align-items:center;

  max-width:none;

  margin:
    clamp(46px,5vw,74px)
    clamp(24px,3vw,46px)
    clamp(50px,6vw,82px);

  text-align:left;
}


.rs-brand-shopways-intro-copy{
  max-width:920px;
}


.rs-brand-shopways-intro h2{
  margin:10px 0 20px;

  color:#fff;

  font-size:clamp(2rem,3vw,3.15rem);
  line-height:1.08;
  letter-spacing:-.035em;
}


.rs-brand-shopways-intro p{
  max-width:900px;
  margin:0 0 15px;

  color:#b7c5d1;
  line-height:1.72;
}



/* ============================================================
   START PANEL
   ============================================================ */

.rs-brand-start-panel{
  position:relative;
  overflow:hidden;

  padding:
    clamp(25px,2.5vw,34px)
    clamp(22px,2.4vw,31px);

  border:1px solid rgba(125,211,252,.16);
  border-radius:20px;

  background:
    linear-gradient(
      145deg,
      rgba(19,42,59,.97),
      rgba(8,25,37,.99)
    );

  box-shadow:
    0 20px 50px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.025);
}


.rs-brand-start-panel::before{
  content:"";

  position:absolute;
  top:0;
  left:0;

  width:160px;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.9),
      rgba(125,211,252,.50),
      transparent
    );
}


.rs-brand-start-panel::after{
  content:"";

  position:absolute;
  top:-90px;
  right:-90px;

  width:240px;
  height:240px;

  border-radius:50%;

  background:
    radial-gradient(
      circle,
      rgba(56,189,248,.08),
      transparent 68%
    );

  pointer-events:none;
}



/* ============================================================
   PANEL HEADER
   ============================================================ */

.rs-brand-start-panel-head{
  position:relative;
  z-index:2;

  margin-bottom:22px;
}


.rs-brand-start-panel-head h3{
  margin:7px 0 7px;

  color:#fff;

  font-size:clamp(1.35rem,1.7vw,1.75rem);
  line-height:1.15;
  letter-spacing:-.025em;
}


.rs-brand-start-panel-head p{
  max-width:none;
  margin:0;

  color:#8fa3b3;

  font-size:.88rem;
  line-height:1.55;
}



/* ============================================================
   OPTIONS
   ============================================================ */

.rs-brand-start-options{
  position:relative;
  z-index:2;

  display:grid;
  gap:8px;
}


.rs-brand-start-option{
  display:grid;

  grid-template-columns:
    38px
    minmax(0,1fr)
    22px;

  gap:13px;
  align-items:center;

  min-height:66px;

  padding:10px 13px;

  border:1px solid rgba(125,211,252,.10);
  border-radius:11px;

  color:inherit;
  text-decoration:none;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.035),
      rgba(125,211,252,.012)
    );

  transition:
    border-color .2s ease,
    background .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}


.rs-brand-start-option:visited{
  color:inherit;
}


.rs-brand-start-option:hover{
  transform:translateX(4px);

  border-color:rgba(190,242,100,.34);

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.075),
      rgba(125,211,252,.025)
    );

  box-shadow:
    0 8px 24px rgba(0,0,0,.14);
}


.rs-brand-start-option:focus-visible{
  outline:2px solid rgba(190,242,100,.70);
  outline-offset:3px;
}



/* ============================================================
   NUMBER
   ============================================================ */

.rs-brand-start-option-number{
  display:grid;
  place-items:center;

  width:34px;
  height:34px;

  border:1px solid rgba(125,211,252,.18);
  border-radius:50%;

  color:#7dd3fc;

  background:rgba(4,18,28,.75);

  font-size:.63rem;
  font-weight:900;
  letter-spacing:.08em;

  transition:
    color .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
}


.rs-brand-start-option:hover
.rs-brand-start-option-number{
  color:#bef264;

  border-color:rgba(190,242,100,.35);

  box-shadow:
    0 0 16px rgba(190,242,100,.08);
}



/* ============================================================
   OPTION COPY
   ============================================================ */

.rs-brand-start-option-copy{
  display:block;
  min-width:0;
}


.rs-brand-start-option-copy strong{
  display:block;

  color:#edf6fb;

  font-size:.94rem;
  line-height:1.25;
}


.rs-brand-start-option-copy small{
  display:block;

  margin-top:2px;

  color:#7f94a5;

  font-size:.76rem;
  line-height:1.35;
}


.rs-brand-start-option > i{
  color:#607989;

  font-size:.78rem;

  transition:
    color .2s ease,
    transform .2s ease;
}


.rs-brand-start-option:hover > i{
  color:#bef264;
  transform:translateX(3px);
}



/* ============================================================
   PANEL FOOTER
   ============================================================ */

.rs-brand-start-panel-foot{
  position:relative;
  z-index:2;

  display:grid;
  gap:10px;

  margin-top:18px;
  padding-top:18px;

  border-top:1px solid rgba(125,211,252,.10);
}


.rs-brand-start-panel-foot > span{
  display:block;

  color:#758b9b;

  font-size:.61rem;
  font-weight:900;
  line-height:1.3;
  letter-spacing:.13em;
  text-transform:uppercase;
}


.rs-brand-start-panel-foot a{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;

  width:100%;

  padding:11px 14px;

  border:1px solid rgba(190,242,100,.20);
  border-radius:9px;

  color:#dff6b5;
  text-decoration:none;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.07),
      rgba(125,211,252,.025)
    );

  font-size:.82rem;
  font-weight:800;
  line-height:1.25;

  transition:
    border-color .2s ease,
    background .2s ease,
    transform .2s ease;
}


.rs-brand-start-panel-foot a:hover{
  transform:translateX(3px);

  border-color:rgba(190,242,100,.38);

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.11),
      rgba(125,211,252,.04)
    );
}


.rs-brand-start-panel-foot a i{
  flex:0 0 auto;

  color:#bef264;

  font-size:.72rem;

  transition:transform .2s ease;
}


.rs-brand-start-panel-foot a:hover i{
  transform:translateX(3px);
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:1050px){

  .rs-brand-shopways-intro{
    grid-template-columns:1fr;
  }

  .rs-brand-start-panel{
    width:100%;
    max-width:720px;
  }

}


@media(max-width:650px){

  .rs-brand-shopways-intro{
    margin:
      36px
      18px
      48px;
  }

  .rs-brand-start-panel{
    padding:24px 18px;
  }

  .rs-brand-start-panel-foot{
    display:block;
  }

  .rs-brand-start-panel-foot > span{
    display:block;
    margin-bottom:8px;
  }

}


/* ============================================================
   CONSULTATIVE PROJECT START
   ============================================================ */

.rs-brand-project-start{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:clamp(20px,3vw,34px);
  align-items:center;

  margin:
    0
    clamp(24px,3vw,46px)
    clamp(46px,5vw,72px);

  padding:
    clamp(24px,3vw,34px)
    clamp(24px,3vw,38px);

  border:1px solid rgba(125,211,252,.14);
  border-radius:18px;

  background:
    linear-gradient(
      135deg,
      rgba(18,40,57,.96),
      rgba(8,25,37,.98)
    );

  box-shadow:
    0 18px 42px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.025);
}


/* ============================================================
   ICON
   ============================================================ */

.rs-brand-project-start-icon{
  display:grid;
  place-items:center;

  width:68px;
  height:68px;

  border:1px solid rgba(125,211,252,.22);
  border-radius:50%;

  color:#bef264;

  background:rgba(4,18,28,.90);

  box-shadow:
    0 0 24px rgba(56,189,248,.08),
    inset 0 0 18px rgba(56,189,248,.03);

  font-size:1.35rem;
}


/* ============================================================
   COPY
   ============================================================ */

.rs-brand-project-start-copy{
  min-width:0;
  max-width:980px;
}


.rs-brand-project-start-copy h3{
  margin:7px 0 10px;

  color:#fff;

  font-size:clamp(1.35rem,1.8vw,1.85rem);
  line-height:1.2;
  letter-spacing:-.025em;
}


.rs-brand-project-start-copy p{
  margin:0;

  color:#aebdca;

  font-size:.96rem;
  line-height:1.65;
}


/* ============================================================
   ACTION
   ============================================================ */

.rs-brand-project-start-action{
  display:flex;
  align-items:center;
  justify-content:flex-end;

  min-width:max-content;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:950px){

  .rs-brand-project-start{
    grid-template-columns:auto minmax(0,1fr);
  }

  .rs-brand-project-start-action{
    grid-column:2;
    justify-content:flex-start;

    margin-top:4px;
  }

}


@media(max-width:650px){

  .rs-brand-project-start{
    grid-template-columns:1fr;

    margin:
      0
      18px
      42px;

    padding:24px 20px;
  }

  .rs-brand-project-start-icon{
    width:58px;
    height:58px;
  }

  .rs-brand-project-start-action{
    grid-column:auto;
  }

}

.rs-brand-value-callout{
  position:relative;

  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:18px;
  align-items:flex-start;

  margin:26px 0;

  padding:
    clamp(20px,2vw,26px)
    clamp(20px,2.4vw,30px);

  border:1px solid rgba(125,211,252,.16);
  border-left:3px solid rgba(190,242,100,.72);
  border-radius:0 14px 14px 0;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.045),
      rgba(125,211,252,.025) 55%,
      rgba(8,25,37,.10)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.02);
}


.rs-brand-value-callout-icon{
  display:grid;
  place-items:center;

  width:44px;
  height:44px;

  border:1px solid rgba(125,211,252,.20);
  border-radius:50%;

  color:#bef264;

  background:rgba(4,18,28,.78);

  box-shadow:
    0 0 18px rgba(56,189,248,.06);

  font-size:1rem;
}


.rs-brand-value-callout p{
  margin:0;

  color:#c1cfda;

  font-size:clamp(.98rem,1.1vw,1.08rem);
  line-height:1.7;
}


@media(max-width:600px){

  .rs-brand-value-callout{
    grid-template-columns:1fr;
  }

}


/* ============================================================
   WAYS TO BUY — TECHNICAL BACKGROUND
   ============================================================ */

#ways-to-buy{
  position:relative;
  isolation:isolate;
  overflow:hidden;

  background:
    linear-gradient(
      180deg,
      rgba(8,24,36,.98) 0%,
      rgba(7,22,34,.98) 48%,
      rgba(6,20,31,.99) 100%
    );
}


/* GRID */

#ways-to-buy::before{
  content:"";

  position:absolute;
  inset:0;
  z-index:0;

  pointer-events:none;

  background-image:
    linear-gradient(
      rgba(125,211,252,.045) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.045) 1px,
      transparent 1px
    );

  background-size:
    54px 54px;

  opacity:.55;

  mask-image:
    linear-gradient(
      to bottom,
      transparent 0%,
      #000 8%,
      #000 88%,
      transparent 100%
    );
}


/* RADIAL LIGHT / NETWORK GLOW */

#ways-to-buy::after{
  content:"";

  position:absolute;
  inset:0;
  z-index:0;

  pointer-events:none;

  background:
    radial-gradient(
      ellipse 62% 48% at 78% 20%,
      rgba(156,229,255,.22) 0%,
      rgba(56,189,248,.055) 40%,
      transparent 70%
    ),

    radial-gradient(
      ellipse 48% 42% at 16% 68%,
      rgba(190,242,100,.055) 0%,
      rgba(190,242,100,.018) 38%,
      transparent 72%
    );
}


/* KEEP ALL SECTION CONTENT ABOVE THE EFFECT */

#ways-to-buy > *{
  position:relative;
  z-index:1;
}


/* ============================================================
   BRAND SIGNAL STRIPS — SLOW DATA / SIGNAL MOTION
   ============================================================ */

.rs-used-intro-feature-footer.rs-brand-shopways-strip
.rs-used-intro-feature-footer-line{
  position:relative;
  overflow:hidden;
}


/* MOVING SIGNAL THROUGH THE DIVIDER LINE */

.rs-used-intro-feature-footer.rs-brand-shopways-strip
.rs-used-intro-feature-footer-line::after{
  content:"";

  position:absolute;
  inset:0;

  background:
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(125,211,252,.12) 30%,
      rgba(190,242,100,.90) 50%,
      rgba(125,211,252,.12) 70%,
      transparent 100%
    );

  transform:translateX(-140%);

  animation:
    rs-brand-strip-signal
    8s
    ease-in-out
    infinite;

  pointer-events:none;
}


@keyframes rs-brand-strip-signal{

  0%{
    transform:translateX(-140%);
    opacity:0;
  }

  12%{
    opacity:1;
  }

  48%{
    opacity:1;
  }

  62%{
    transform:translateX(140%);
    opacity:0;
  }

  100%{
    transform:translateX(140%);
    opacity:0;
  }

}



/* ============================================================
   SIGNAL ICON — SLOW PULSE
   ============================================================ */

.rs-used-intro-feature-footer.rs-brand-shopways-strip
.rs-used-intro-feature-footer-mark i{
  transform-origin:center;

  animation:
    rs-brand-strip-icon-pulse
    4.8s
    ease-in-out
    infinite;
}


@keyframes rs-brand-strip-icon-pulse{

  0%,
  100%{
    opacity:.58;
    transform:scale(1);

    filter:
      drop-shadow(0 0 0 rgba(190,242,100,0));
  }

  50%{
    opacity:1;
    transform:scale(1.08);

    filter:
      drop-shadow(0 0 7px rgba(190,242,100,.28));
  }

}



/* ============================================================
   BRAND LABEL — VERY SUBTLE BREATH
   ============================================================ */

.rs-used-intro-feature-footer.rs-brand-shopways-strip
.rs-used-intro-feature-footer-brand{
  animation:
    rs-brand-strip-brand-breathe
    6.4s
    ease-in-out
    infinite;
}


@keyframes rs-brand-strip-brand-breathe{

  0%,
  100%{
    opacity:.72;
  }

  50%{
    opacity:1;
  }

}



/* ============================================================
   ACCESSIBILITY
   ============================================================ */

@media (prefers-reduced-motion:reduce){

  .rs-used-intro-feature-footer.rs-brand-shopways-strip
  .rs-used-intro-feature-footer-line::after,

  .rs-used-intro-feature-footer.rs-brand-shopways-strip
  .rs-used-intro-feature-footer-mark i,

  .rs-used-intro-feature-footer.rs-brand-shopways-strip
  .rs-used-intro-feature-footer-brand{
    animation:none;
  }

}


/* ============================================================
   PRODUCT ECOSYSTEM
   ============================================================ */

.rs-brand-ecosystem{
  position:relative;
  overflow:hidden;

  padding:
    clamp(42px,5vw,72px)
    clamp(24px,3vw,46px);

  border:1px solid rgba(125,211,252,.18);

  background:
    radial-gradient(
      circle at 50% 43%,
      rgba(56,189,248,.075),
      transparent 33%
    ),
    radial-gradient(
      circle at 52% 48%,
      rgba(190,242,100,.03),
      transparent 48%
    ),
    linear-gradient(
      145deg,
      #091c2b 0%,
      #061520 48%,
      #04111b 100%
    );
}


/* ============================================================
   HEADING
   ============================================================ */

.rs-brand-ecosystem-heading{
  position:relative;
  z-index:5;

  max-width:940px;

  margin:
    0
    auto
    clamp(42px,5vw,68px);

  text-align:center;
}

.rs-brand-ecosystem-heading .rs-partner-section-eyebrow{
  margin-bottom:10px;

  color:#7dd3fc;

  font-size:.72rem;
  font-weight:900;

  letter-spacing:.22em;
  text-transform:uppercase;
}

.rs-brand-ecosystem-heading h2{
  margin:0 0 16px;

  color:#fff;

  font-size:clamp(2rem,3.2vw,3.35rem);
  line-height:1.04;
  letter-spacing:-.04em;
}

.rs-brand-ecosystem-heading p{
  max-width:820px;
  margin:0 auto;

  color:#afc0cc;

  font-size:clamp(.95rem,1.05vw,1.06rem);
  line-height:1.72;
}


/* ============================================================
   MAP — SHARED
   Desktop becomes a precisely positioned radial diagram.
   Tablet/mobile use the grid layouts below.
   ============================================================ */

.rs-brand-ecosystem-map{
  position:relative;
  z-index:2;

  max-width:1450px;
  margin:0 auto;
}


/* ============================================================
   NODE GRID AREAS
   Used by tablet/mobile layouts.
   ============================================================ */

.rs-brand-ecosystem-node--datacenter{
  grid-area:datacenter;
  --eco-accent:125,211,252;
}

.rs-brand-ecosystem-node--campus{
  grid-area:campus;
  --eco-accent:103,232,212;
}

.rs-brand-ecosystem-node--routing{
  grid-area:routing;
  --eco-accent:165,180,252;
}

.rs-brand-ecosystem-node--automation{
  grid-area:automation;
  --eco-accent:190,242,100;
}

.rs-brand-ecosystem-node--wireless{
  grid-area:wireless;
  --eco-accent:94,234,212;
}

.rs-brand-ecosystem-node--ai{
  grid-area:ai;
  --eco-accent:186,230,253;
}


/* ============================================================
   NETWORK FIELD
   ============================================================ */

.rs-brand-ecosystem-field{
  position:absolute;
  z-index:-1;

  inset:8% 16% 8%;

  pointer-events:none;
}

.rs-brand-field-ring{
  position:absolute;

  top:50%;
  left:50%;

  border:1px solid rgba(125,211,252,.08);
  border-radius:50%;

  transform:translate(-50%,-50%);
}

.rs-brand-field-ring--1{
  width:43%;
  aspect-ratio:1;
}

.rs-brand-field-ring--2{
  width:73%;
  aspect-ratio:1;

  border-color:rgba(190,242,100,.045);
}


/* ============================================================
   CONNECTOR LINES
   ============================================================ */

.rs-brand-field-line{
  position:absolute;

  top:50%;
  left:50%;

  width:32%;
  height:1px;

  transform-origin:left center;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.30),
      rgba(125,211,252,.07),
      transparent
    );
}

.rs-brand-field-line::before{
  content:none;
  display:none;

  position:absolute;

  left:0;
  top:-2px;

  width:5px;
  height:5px;

  border-radius:50%;

  background:#7dd3fc;

  box-shadow:0 0 10px rgba(125,211,252,.35);
}

.rs-brand-field-line--n{ transform:rotate(-90deg); }
.rs-brand-field-line--ne{ transform:rotate(-35deg); }
.rs-brand-field-line--se{ transform:rotate(35deg); }
.rs-brand-field-line--s{ transform:rotate(90deg); }
.rs-brand-field-line--sw{ transform:rotate(145deg); }
.rs-brand-field-line--nw{ transform:rotate(215deg); }


/* ============================================================
   PRODUCT FAMILY NODES — BASE / TABLET CARD PRESENTATION
   Desktop overrides these into oval radial nodes.
   ============================================================ */

.rs-brand-ecosystem-node{
  position:relative;

  display:grid;
  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:16px;
  align-items:start;

  min-width:0;

  padding:19px 20px;

  border-top:1px solid rgba(var(--eco-accent),.18);

  background:
    linear-gradient(
      90deg,
      rgba(8,31,46,.66),
      rgba(6,21,32,.20)
    );

  transition:
    transform .22s ease,
    border-color .22s ease,
    background .22s ease;
}

.rs-brand-ecosystem-node::before{
  content:"";

  position:absolute;

  top:-1px;
  left:0;

  width:54px;
  height:2px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--eco-accent),.85),
      transparent
    );
}

.rs-brand-ecosystem-node-icon{
  display:grid;
  place-items:center;

  width:46px;
  height:46px;

  border:1px solid rgba(var(--eco-accent),.22);
  border-radius:5px;

  background:rgba(var(--eco-accent),.045);

  color:rgb(var(--eco-accent));

  font-size:1.05rem;
}

.rs-brand-ecosystem-node-label{
  display:block;

  margin-bottom:5px;

  color:rgb(var(--eco-accent));

  font-size:.61rem;
  font-weight:900;

  letter-spacing:.18em;
  text-transform:uppercase;
}

.rs-brand-ecosystem-node h3{
  margin:0 0 7px;

  color:#f7fbfd;

  font-size:clamp(1rem,1.25vw,1.18rem);
  line-height:1.15;
  letter-spacing:-.015em;
}

.rs-brand-ecosystem-node p{
  margin:0;

  color:#91a8b8;

  font-size:.82rem;
  line-height:1.55;
}


/* ============================================================
   CENTER HUB
   ============================================================ */

.rs-brand-ecosystem-hub{
  grid-area:hub;

  position:relative;

  display:grid;
  place-items:center;

  min-width:0;

  width:100%;
  max-width:280px;
  aspect-ratio:1;

  margin:auto;
}

.rs-brand-ecosystem-hub-glow{
  position:absolute;

  inset:0;

  border:1px solid rgba(125,211,252,.20);
  border-radius:50%;
  z-index:0;
  background:
    radial-gradient(
      circle,
      rgba(125,211,252,.09),
      rgba(190,242,100,.025) 48%,
      transparent 72%
    );

  box-shadow:
    0 0 60px rgba(56,189,248,.06),
    inset 0 0 45px rgba(56,189,248,.045);
}

.rs-brand-ecosystem-hub::before{
  content:none;

  position:absolute;
  inset:12%;

  border:1px solid rgba(190,242,100,.16);
  border-radius:50%;
  z-index:1;
}

.rs-brand-ecosystem-hub::after{
  content:none;

  position:absolute;
  inset:23%;

  border:1px solid rgba(125,211,252,.13);
  border-radius:50%;
  z-index:1;
}


.rs-brand-ecosystem-hub-inner{
  position:relative;
  z-index:3;

  display:flex;
  flex-direction:column;
  align-items:center;

  gap:13px;

   width:86%;
  z-index:10;
  text-align:center;
}

.rs-brand-ecosystem-hub-kicker{
  color:#7dd3fc;

  font-size:.58rem;
  font-weight:900;

  letter-spacing:.20em;
  text-transform:uppercase;
}

/* ARISTA LOGO */

.rs-brand-ecosystem-logo{
  position:relative;
  z-index:20;

  display:block;

  width:min(320px,100%);
  max-width:none;
  height:auto;

  object-fit:contain;

  filter:
    brightness(0)
    invert(1)
    drop-shadow(0 0 14px rgba(125,211,252,.22));
}


.rs-brand-ecosystem-hub-caption{
  color:#91a7b6;

  font-size:.61rem;
  font-weight:800;

  letter-spacing:.10em;
  text-transform:uppercase;
}


/* ============================================================
   FOOTER CTA
   ============================================================ */

.rs-brand-ecosystem-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:28px;

  max-width:1450px;

  margin:
    clamp(42px,5vw,68px)
    auto
    0;

  padding-top:clamp(24px,3vw,34px);

  border-top:1px solid rgba(125,211,252,.16);
}

.rs-brand-ecosystem-footer > div{
  display:flex;
  flex-direction:column;

  gap:4px;
}

.rs-brand-ecosystem-footer-label{
  color:#7dd3fc;

  font-size:.63rem;
  font-weight:900;

  letter-spacing:.18em;
  text-transform:uppercase;
}

.rs-brand-ecosystem-footer strong{
  color:#e8f0f5;

  font-size:clamp(1rem,1.35vw,1.25rem);
  font-weight:700;
}

.rs-brand-ecosystem-btn{
  display:inline-flex;
  align-items:center;

  gap:18px;

  padding:12px 17px;

  border:1px solid rgba(125,211,252,.32);
  border-radius:4px;

  background:
    linear-gradient(
      145deg,
      rgba(125,211,252,.10),
      rgba(5,20,31,.86)
    );

  color:#e8f0f5;

  box-shadow:0 8px 20px rgba(0,0,0,.16);
}


/* ============================================================
   DESKTOP — PRECISE RADIAL / OVAL INFOGRAPHIC
   ============================================================ */

@media(min-width:1101px){

  /* ----------------------------------------------------------
     RADIAL MAP
     ---------------------------------------------------------- */

  .rs-brand-ecosystem-map{
    display:block;

    width:100%;
    max-width:1280px;
    min-height:700px;
  }


  /* ----------------------------------------------------------
     SIX OUTER NODES
     ---------------------------------------------------------- */

  .rs-brand-ecosystem-node{
    position:absolute;
    isolation:isolate;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    width:300px;
    height:220px;
    min-height:0;

    gap:11px;

    margin:0;
    padding:24px 18px;

    box-sizing:border-box;

    border:0;

    background:none;
    box-shadow:none;

    overflow:visible;

    text-align:center;
  }

  .rs-brand-ecosystem-node::before{
    content:none;
  }


  /* ----------------------------------------------------------
     OVAL FIELD BEHIND EACH NODE
     ---------------------------------------------------------- */

  .rs-brand-ecosystem-node::after{
    content:"";

    position:absolute;
    z-index:-1;

    top:50%;
    left:50%;

    width:310px;
    height:180px;

    transform:translate(-50%,-50%);

    border:1px solid rgba(var(--eco-accent),.24);
    border-radius:50%;

    background:
      radial-gradient(
        ellipse at center,
        rgba(var(--eco-accent),.065) 0%,
        rgba(var(--eco-accent),.025) 42%,
        transparent 72%
      );

    box-shadow:
      0 0 0 18px rgba(var(--eco-accent),.025),
      0 0 0 38px rgba(var(--eco-accent),.012),
      0 0 38px rgba(var(--eco-accent),.055);

    pointer-events:none;

    transition:
      border-color .25s ease,
      box-shadow .25s ease,
      transform .25s ease;
  }

  .rs-brand-ecosystem-node--datacenter::after,
  .rs-brand-ecosystem-node--campus::after{
    left:42%;
  }

  .rs-brand-ecosystem-node--routing::after,
  .rs-brand-ecosystem-node--wireless::after{
    left:58%;
  }

  .rs-brand-ecosystem-node--automation::after,
  .rs-brand-ecosystem-node--ai::after{
    left:50%;
  }


  /* ----------------------------------------------------------
     ICON + COPY
     ---------------------------------------------------------- */

  .rs-brand-ecosystem-node-icon,
  .rs-brand-ecosystem-node-copy{
    position:relative;
    z-index:2;
  }

  .rs-brand-ecosystem-node-icon{
    flex:0 0 auto;

    width:46px;
    height:46px;

    margin:0 auto;

    border:1px solid rgba(var(--eco-accent),.28);
    border-radius:50%;

    background:rgba(4,18,28,.78);

    box-shadow:0 0 18px rgba(var(--eco-accent),.07);

    transform:
      translate(
        var(--icon-x,0),
        var(--icon-y,0)
      );
  }

  .rs-brand-ecosystem-node-copy{
    width:100%;
    padding:0;

    text-align:center;

    transform:
      translate(
        var(--text-x,0),
        var(--text-y,0)
      );
  }

  .rs-brand-ecosystem-node-label,
  .rs-brand-ecosystem-node h3,
  .rs-brand-ecosystem-node p{
    text-align:center;
  }

  .rs-brand-ecosystem-node h3{
    margin:0 0 8px;
  }

  .rs-brand-ecosystem-node p{
    max-width:235px;

    margin-left:auto;
    margin-right:auto;
  }


  /* ----------------------------------------------------------
     CENTER HUB
     ---------------------------------------------------------- */

  .rs-brand-ecosystem-hub{
    position:absolute;

    top:50%;
    left:50%;

    width:280px;
    max-width:280px;

    margin:0;

    transform:translate(-50%,-50%);
  }


  /* ----------------------------------------------------------
     NODE POSITIONS
     ---------------------------------------------------------- */

  .rs-brand-ecosystem-node--automation{
    top:18px;
    left:50%;

    margin-left:-150px;

    --text-x:0px;
    --text-y:-15px;

    --icon-x: 0px;
    --icon-y:-18px;
  }

  .rs-brand-ecosystem-node--datacenter{
    top:20%;
    left:12%;

    --text-x:-22px;
    --text-y:-19px;

    --icon-x:-24px;
    --icon-y:-17px;
  }

  .rs-brand-ecosystem-node--routing{
    top:20%;
    right:12%;

    --text-x:22px;
    --text-y:-19px;

    --icon-x:20px;
    --icon-y:-15px;
  }

  .rs-brand-ecosystem-node--campus{
    bottom:20%;
    left:12%;

    --text-x:-22px;
    --text-y:-19px;

    --icon-x:-24px;
    --icon-y:-17px;
  }

  .rs-brand-ecosystem-node--wireless{
    bottom:20%;
    right:12%;

    --text-x:22px;
    --text-y:-19px;

    --icon-x:20px;
    --icon-y:-15px;
  }

  .rs-brand-ecosystem-node--ai{
    bottom:18px;
    left:50%;

    margin-left:-150px;

    --text-x:0px;
    --text-y:-15px;

    --icon-x:0px;
    --icon-y:-22px;
  }


}


/* ============================================================
   DESKTOP HOVER
   Keep node geometry fixed; animate only the visual field/icon.
   ============================================================ */

@media(min-width:1101px) and (hover:hover){

  .rs-brand-ecosystem-node:hover{
    background:none;
    border-color:transparent;
  }

  .rs-brand-ecosystem-node:hover::after{
    border-color:rgba(var(--eco-accent),.42);

    box-shadow:
      0 0 0 18px rgba(var(--eco-accent),.040),
      0 0 0 38px rgba(var(--eco-accent),.018),
      0 0 46px rgba(var(--eco-accent),.09);

    transform:
      translate(-50%,-50%)
      scale(1.035);
  }

.rs-brand-ecosystem-node:hover .rs-brand-ecosystem-node-icon{
  border-color:rgba(var(--eco-accent),.50);

  background:
    linear-gradient(
      rgba(var(--eco-accent),.10),
      rgba(var(--eco-accent),.10)
    ),
    rgba(4,18,28,.96);

  box-shadow:
    0 0 22px rgba(var(--eco-accent),.14),
    inset 0 0 14px rgba(var(--eco-accent),.05);
}

}


/* ============================================================
   TABLET
   ============================================================ */

@media(max-width:1100px){

  .rs-brand-ecosystem-map{
    display:grid;

    grid-template-columns:
      repeat(2,minmax(0,1fr));

    grid-template-areas:
      "hub hub"
      "datacenter routing"
      "campus wireless"
      "automation ai";

    gap:22px;
  }

  .rs-brand-ecosystem-hub{
    width:250px;
    margin-bottom:20px;
  }

  .rs-brand-ecosystem-field{
    display:none;
  }

  .rs-brand-ecosystem-node-copy{
    padding-right:0;
    text-align:left;
  }

  .rs-brand-ecosystem-node-label,
  .rs-brand-ecosystem-node h3,
  .rs-brand-ecosystem-node p{
    text-align:left;
  }

}


/* ============================================================
   TABLET HOVER
   ============================================================ */

@media(max-width:1100px) and (hover:hover){

  .rs-brand-ecosystem-node:hover{
    transform:translateY(-3px);

    border-color:rgba(var(--eco-accent),.40);

    background:
      linear-gradient(
        90deg,
        rgba(var(--eco-accent),.085),
        rgba(6,21,32,.26)
      );
  }

  .rs-brand-ecosystem-node:hover .rs-brand-ecosystem-node-icon{
    border-color:rgba(var(--eco-accent),.42);
    background:rgba(var(--eco-accent),.08);
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media(max-width:650px){

  .rs-brand-ecosystem{
    padding:36px 20px;
  }

  .rs-brand-ecosystem-heading{
    text-align:left;
  }

  .rs-brand-ecosystem-heading p{
    margin-left:0;
    margin-right:0;
  }

  .rs-brand-ecosystem-map{
    grid-template-columns:1fr;

    grid-template-areas:
      "hub"
      "datacenter"
      "campus"
      "routing"
      "automation"
      "wireless"
      "ai";

    gap:14px;
  }

  .rs-brand-ecosystem-hub{
    width:210px;
    margin-bottom:18px;
  }

  .rs-brand-ecosystem-node{
    grid-template-columns:
      42px
      minmax(0,1fr);

    padding:17px 15px;
  }

  .rs-brand-ecosystem-node-icon{
    width:40px;
    height:40px;
  }

  .rs-brand-ecosystem-footer{
    flex-direction:column;
    align-items:flex-start;
  }

}

.rs-brand-ecosystem-node{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}

.rs-brand-ecosystem-node:visited{
  color:inherit;
}



@keyframes rs-brand-hub-glow-breathe{
  0%,
  100%{
    transform:scale(.96);
    opacity:.58;

    box-shadow:
      0 0 42px rgba(56,189,248,.05),
      0 0 90px rgba(56,189,248,.025),
      inset 0 0 34px rgba(56,189,248,.035);
  }

  50%{
    transform:scale(1.09);
    opacity:1;

    box-shadow:
      0 0 82px rgba(56,189,248,.18),
      0 0 130px rgba(56,189,248,.08),
      inset 0 0 58px rgba(56,189,248,.09);
  }
}

.rs-brand-ecosystem-hub-glow{
  transform-origin:center;
  animation:
    rs-brand-hub-glow-breathe
    4s
    ease-in-out
    infinite;
}

@media (prefers-reduced-motion:reduce){
  .rs-brand-ecosystem-hub,
  .rs-brand-ecosystem-hub-glow{
    animation:none;
  }
}



/* ============================================================
   ECOSYSTEM NODE BREATHING
   ============================================================ */

@keyframes rs-brand-node-breathe{
  0%,
  100%{
    border-color:rgba(var(--eco-accent),.18);

    box-shadow:
      0 0 0 18px rgba(var(--eco-accent),.018),
      0 0 0 38px rgba(var(--eco-accent),.008),
      0 0 28px rgba(var(--eco-accent),.035);
  }

  50%{
    border-color:rgba(var(--eco-accent),.38);

    box-shadow:
      0 0 0 22px rgba(var(--eco-accent),.045),
      0 0 0 46px rgba(var(--eco-accent),.020),
      0 0 52px rgba(var(--eco-accent),.12);
  }
}

.rs-brand-ecosystem-node::after{
  animation:
    rs-brand-node-breathe
    5.2s
    ease-in-out
    infinite;
}



.rs-brand-ecosystem-node--datacenter::after{
  animation-delay:0s;
}

.rs-brand-ecosystem-node--routing::after{
  animation-delay:-.8s;
}

.rs-brand-ecosystem-node--wireless::after{
  animation-delay:-1.6s;
}

.rs-brand-ecosystem-node--ai::after{
  animation-delay:-2.4s;
}

.rs-brand-ecosystem-node--campus::after{
  animation-delay:-3.2s;
}

.rs-brand-ecosystem-node--automation::after{
  animation-delay:-4s;
}

@keyframes rs-brand-node-icon-breathe{
  0%,
  100%{
    box-shadow:
      0 0 12px rgba(var(--eco-accent),.05);
  }

  50%{
    box-shadow:
      0 0 24px rgba(var(--eco-accent),.18),
      inset 0 0 12px rgba(var(--eco-accent),.05);
  }
}

.rs-brand-ecosystem-node-icon{
  animation:
    rs-brand-node-icon-breathe
    5.2s
    ease-in-out
    infinite;
}


@media (prefers-reduced-motion:reduce){

  .rs-brand-ecosystem-hub-glow,
  .rs-brand-ecosystem-logo,
  .rs-brand-ecosystem-node::after,
  .rs-brand-ecosystem-node-icon{
    animation:none;
  }

}



/* ============================================================
   WIRELESS HERO ENVIRONMENT MAP
   ============================================================ */

.rs-wireless-hero-map{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  width:100%;
  min-height:460px;

  gap:24px;
}


.rs-wireless-hero-map-grid{
  position:relative;

  width:min(320px,100%);
  min-height:320px;

  aspect-ratio:1 / 1;

  margin:0 auto;
}

/* faint technical background */

.rs-wireless-hero-map-grid::before{
  content:"";

  position:absolute;
  inset:10%;

  border:
    1px solid rgba(125,211,252,.055);

  border-radius:50%;

  background:
    radial-gradient(
      circle at center,
      rgba(125,211,252,.04),
      transparent 66%
    );
}


/* ============================================================
   RF RINGS
   ============================================================ */

.rs-wireless-hero-rings{
  position:absolute;

  left:50%;
  top:50%;

  width:108px;
  height:108px;

  transform:
    translate(-50%,-50%);
}


.rs-wireless-hero-ring{
  position:absolute;

  left:50%;
  top:50%;

  border:
    1px solid rgba(125,211,252,.18);

  border-radius:50%;

  transform:
    translate(-50%,-50%);
}


.rs-wireless-hero-ring--1{
  width:72px;
  height:72px;

  border-color:
    rgba(190,242,100,.23);
}


.rs-wireless-hero-ring--2{
  width:96px;
  height:96px;

  border-color:
    rgba(125,211,252,.16);
}


.rs-wireless-hero-ring--3{
  width:120px;
  height:120px;

  border-color:
    rgba(125,211,252,.08);
}


/* ============================================================
   CENTER NODE
   ============================================================ */

.rs-wireless-hero-center{
  position:absolute;

  left:50%;
  top:50%;

  z-index:5;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  width:62px;
  height:62px;

  transform:
    translate(-50%,-50%);

  border:
    1px solid rgba(190,242,100,.38);

  border-radius:50%;

  background:
    linear-gradient(
      145deg,
      rgba(39,64,82,.98),
      rgba(15,34,48,.98)
    );

  box-shadow:
    0 0 0 6px rgba(190,242,100,.025),
    0 0 28px rgba(125,211,252,.09),
    inset 0 1px 0 rgba(255,255,255,.055);
}


.rs-wireless-hero-center-icon{
  color:
    var(--partner-green);

  font-size:1.08rem;
}


.rs-wireless-hero-center > span{
  margin-top:4px;

  color:
    rgba(220,233,242,.64);

  font-size:.48rem;
  font-weight:900;

  letter-spacing:.14em;
}


/* ============================================================
   CONNECTION LINES
   ============================================================ */

.rs-wireless-hero-line{
  position:absolute;

  z-index:1;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.06),
      rgba(125,211,252,.40),
      rgba(190,242,100,.23)
    );
}


.rs-wireless-hero-line--top,
.rs-wireless-hero-line--bottom{
  left:50%;

  width:1px;
  height:29%;

  background:
    linear-gradient(
      180deg,
      rgba(125,211,252,.12),
      rgba(125,211,252,.38),
      rgba(190,242,100,.20)
    );
}


.rs-wireless-hero-line--top{
  top:20%;

  transform:
    translateX(-50%);
}


.rs-wireless-hero-line--bottom{
  bottom:20%;

  transform:
    translateX(-50%);
}


.rs-wireless-hero-line--left,
.rs-wireless-hero-line--right{
  top:50%;

  width:29%;
  height:1px;
}


.rs-wireless-hero-line--left{
  left:20%;
}


.rs-wireless-hero-line--right{
  right:20%;
}


/* ============================================================
   ENVIRONMENT NODES
   ============================================================ */

.rs-wireless-hero-node{
  position:absolute;

  z-index:4;

  display:flex;
  flex-direction:column;
  align-items:center;

  gap:5px;

  min-width:64px;
}


.rs-wireless-hero-node-icon{
  display:grid;
  place-items:center;

  width:36px;
  height:36px;

  border:
    1px solid rgba(125,211,252,.20);

  border-radius:7px;

  background:
    rgba(15,33,47,.92);

  color:#b9cad8;

  font-size:.82rem;

  box-shadow:
    0 8px 18px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.035);
}


.rs-wireless-hero-node-label{
  color:
    #7f96a8;

  font-size:.48rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.11em;
}


/* positions */

.rs-wireless-hero-node--top{
  left:50%;
  top:0;

  transform:
    translateX(-50%);
}


.rs-wireless-hero-node--right{
  right:-2px;
  top:50%;

  transform:
    translateY(-50%);
}


.rs-wireless-hero-node--bottom{
  left:50%;
  bottom:0;

  transform:
    translateX(-50%);
}


.rs-wireless-hero-node--left{
  left:-2px;
  top:50%;

  transform:
    translateY(-50%);
}


/* ============================================================
   TITLE
   ============================================================ */

.rs-wireless-hero-map-title{
  display:flex;
  flex-direction:column;
  align-items:center;

  text-align:center;

  line-height:1;
}


.rs-wireless-hero-map-title strong{
  color:#fff;

  font-size:1rem;
  font-weight:950;

  letter-spacing:.10em;
}


.rs-wireless-hero-map-title span{
  margin-top:6px;

  color:#8298aa;

  font-size:.53rem;
  font-weight:850;

  letter-spacing:.18em;
}


/* ============================================================
   OPTIONAL SUBTLE NODE HOVER
   ============================================================ */

.rs-wireless-hero-node-icon{
  transition:
    border-color .18s ease,
    color .18s ease,
    transform .18s ease;
}


.rs-wireless-hero-map:hover
.rs-wireless-hero-node-icon{
  border-color:
    rgba(190,242,100,.25);

  color:
    #d8e6ef;
}

/* ============================================================
   WIRELESS HERO — SUBTLE RF "BREATHING"
   ============================================================ */

.rs-wireless-hero-ring{
  animation:
    rs-wireless-breathe 4.8s ease-in-out infinite;

  transform-origin:center;
}


/* stagger the rings so they don't pulse as one solid object */

.rs-wireless-hero-ring--1{
  animation-delay:0s;
}

.rs-wireless-hero-ring--2{
  animation-delay:.45s;
}

.rs-wireless-hero-ring--3{
  animation-delay:.9s;
}


/* center transmitter glow */

.rs-wireless-hero-center{
  animation:
    rs-wireless-center-breathe 4.8s ease-in-out infinite;
}


/* ============================================================
   RF RING MOTION
   ============================================================ */

@keyframes rs-wireless-breathe{

  0%,
  100%{
    opacity:.48;

    transform:
      translate(-50%,-50%)
      scale(.96);
  }

  50%{
    opacity:1;

    transform:
      translate(-50%,-50%)
      scale(1.06);
  }

}


/* ============================================================
   CENTER NODE GLOW
   ============================================================ */

@keyframes rs-wireless-center-breathe{

  0%,
  100%{
    box-shadow:
      0 0 0 6px rgba(190,242,100,.025),
      0 0 20px rgba(125,211,252,.07),
      inset 0 1px 0 rgba(255,255,255,.055);
  }

  50%{
    box-shadow:
      0 0 0 9px rgba(190,242,100,.045),
      0 0 34px rgba(125,211,252,.15),
      inset 0 1px 0 rgba(255,255,255,.07);
  }

}


/* ============================================================
   ACCESSIBILITY
   ============================================================ */

@media (prefers-reduced-motion:reduce){

  .rs-wireless-hero-ring,
  .rs-wireless-hero-center{
    animation:none;
  }

}

/* ============================================================
   SHOPWAYS CONSULT POINTS
   Portable across product + service pages
   ============================================================ */

.rs-brand-shopways-consult-points{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-top:14px;
}


.rs-brand-shopways-consult-points > span,
.rs-brand-shopways-consult-points > a{
  display:inline-flex;
  align-items:center;
  gap:9px;

  flex:0 0 auto;

  width:auto;
  min-width:0;

  padding:10px 13px;

  border:1px solid rgba(125,211,252,.14);
  border-radius:7px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.045),
      rgba(125,211,252,.015)
    );

  color:#cbd8e9;

  font-size:.78rem;
  font-weight:700;
  line-height:1.35;

  text-decoration:none;
}


.rs-brand-shopways-consult-points > span i,
.rs-brand-shopways-consult-points > a i{
  flex:0 0 auto;

  color:var(--partner-green);

  font-size:.72rem;
}


.rs-brand-shopways-consult-points > a{
  transition:
    border-color .18s ease,
    background .18s ease,
    color .18s ease,
    transform .18s ease;
}


.rs-brand-shopways-consult-points > a:hover{
  border-color:rgba(190,242,100,.34);

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.08),
      rgba(125,211,252,.025)
    );

  color:#fff;

  transform:translateY(-1px);
}


@media (max-width:650px){

  .rs-brand-shopways-consult-points{
    align-items:stretch;
  }

  .rs-brand-shopways-consult-points > span,
  .rs-brand-shopways-consult-points > a{
    flex:1 1 100%;
  }

}


.rs-used-faq .rs-faq-answer > p{
  grid-column:2;
}


.rs-used-faq .rs-faq-answer > p + p{
  margin-top:12px;
}

/* ============================================================
   WIRELESS SERVICES OVERVIEW
   ============================================================ */

.rs-wireless-services{
  position:relative;
}


.rs-wireless-services-grid{
  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:18px;

  margin-top:0px;
}


/* ------------------------------------------------------------
   SERVICE CARD
   ------------------------------------------------------------ */

.rs-wireless-service-card{
  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;
  height:100%;

  overflow:hidden;

  border:1px solid rgba(148,163,184,.16);
  border-radius:9px;

  background:
    linear-gradient(
      145deg,
      rgba(35,55,75,.76),
      rgba(18,34,49,.94)
    );

  box-shadow:
    0 18px 36px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.035);
}


/* ------------------------------------------------------------
   IMAGE
   ------------------------------------------------------------ */

.rs-wireless-service-image{
  position:relative;

  min-height:210px;

  overflow:hidden;

  background:
    linear-gradient(
      180deg,
      rgba(3,10,20,.10),
      rgba(3,10,20,.20) 45%,
      rgba(16,31,45,.92) 100%
    ),
    var(--rs-wireless-image)
    center / cover no-repeat;
}


.rs-wireless-service-image::after{
  content:"";

  position:absolute;
  inset:0;

  background:
    linear-gradient(
      135deg,
      rgba(125,211,252,.08),
      transparent 46%,
      rgba(190,242,100,.04)
    );

  pointer-events:none;
}


/* ------------------------------------------------------------
   NUMBER
   ------------------------------------------------------------ */

.rs-wireless-service-number{
  position:absolute;

  top:18px;
  right:18px;

  z-index:2;

  color:rgba(255,255,255,.52);

  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
}


/* ------------------------------------------------------------
   ICON
   ------------------------------------------------------------ */

.rs-wireless-service-icon{
  position:absolute;

  left:22px;
  bottom:20px;

  z-index:2;

  display:grid;
  place-items:center;

  width:50px;
  height:50px;

  border:1px solid rgba(190,242,100,.30);
  border-radius:8px;

  background:
    rgba(9,24,36,.84);

  backdrop-filter:blur(8px);

  color:var(--partner-green);

  font-size:1.15rem;

  box-shadow:
    0 12px 24px rgba(0,0,0,.25),
    inset 0 1px 0 rgba(255,255,255,.05);
}


/* ------------------------------------------------------------
   BODY
   ------------------------------------------------------------ */

.rs-wireless-service-body{
  display:flex;
  flex-direction:column;

  flex:1;

  padding:
    25px
    24px
    24px;
}


.rs-wireless-service-body h3{
  margin:
    7px
    0
    14px;

  color:#fff;

  font-size:clamp(1.35rem,1.6vw,1.65rem);
  line-height:1.18;
  letter-spacing:-.02em;
}


.rs-wireless-service-body > p{
  margin:0;

  color:#aebdcd;

  font-size:.94rem;
  line-height:1.68;
}


/* ------------------------------------------------------------
   SERVICE FOCUS POINTS
   ------------------------------------------------------------ */

.rs-wireless-service-focus{
  display:flex;
  flex-direction:column;

  gap:8px;

  margin:
    22px
    0;
}


.rs-wireless-service-focus span{
  display:flex;
  align-items:flex-start;

  gap:9px;

  color:#d2dce7;

  font-size:.80rem;
  font-weight:700;
  line-height:1.4;
}


.rs-wireless-service-focus i{
  flex:0 0 auto;

  margin-top:.18em;

  color:var(--partner-green);

  font-size:.70rem;
}


/* ------------------------------------------------------------
   SUPPORTING NOTE
   ------------------------------------------------------------ */

.rs-wireless-service-body .rs-wireless-service-note{
  margin-bottom:24px;

  padding-top:18px;

  border-top:
    1px solid rgba(148,163,184,.11);

  color:#93a6b8;

  font-size:.84rem;
  line-height:1.62;
}


/* ------------------------------------------------------------
   BUTTON
   ------------------------------------------------------------ */

.rs-wireless-service-btn{
  margin-top:auto;

  align-self:flex-start;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1150px){

  .rs-wireless-services-grid{
    grid-template-columns:1fr;
  }


  .rs-wireless-service-card{
    display:grid;

    grid-template-columns:
      minmax(260px,34%)
      minmax(0,1fr);
  }


  .rs-wireless-service-image{
    min-height:100%;
  }

}


@media (max-width:700px){

  .rs-wireless-service-card{
    display:flex;
  }


  .rs-wireless-service-image{
    min-height:190px;
  }


  .rs-wireless-service-body{
    padding:
      23px
      20px
      22px;
  }

}


/* ============================================================
   RACKSTAR WIRELESS LIFECYCLE INFOGRAPHIC
   ============================================================ */

.rs-wireless-lifecycle{
  position:relative;
}


/* ============================================================
   INFOGRAPHIC STAGE
   ============================================================ */

.rs-wireless-lifecycle-diagram{
  position:relative;

  margin-top:42px;
  padding:
    clamp(28px,3vw,44px)
    clamp(22px,3vw,38px)
    30px;

  overflow:hidden;

  border:
    1px solid rgba(125,211,252,.16);

  border-radius:10px;

  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(41,102,238,.10),
      transparent 42%
    ),
    linear-gradient(
      145deg,
      rgba(29,49,67,.92),
      rgba(13,28,42,.98)
    );

  box-shadow:
    0 22px 46px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.035);
}


/* faint technical grid */

.rs-wireless-lifecycle-diagram::before{
  content:"";

  position:absolute;
  inset:0;

  background-image:
    linear-gradient(
      rgba(125,211,252,.025) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.025) 1px,
      transparent 1px
    );

  background-size:
    24px
    24px;

  pointer-events:none;
}


.rs-wireless-lifecycle-diagram > *{
  position:relative;
  z-index:2;
}


/* ============================================================
   MAIN FLOW
   ============================================================ */

.rs-wireless-lifecycle-track{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    70px
    minmax(0,1fr)
    70px
    minmax(0,1fr);

  align-items:stretch;
}


/* ============================================================
   LIFECYCLE NODE
   ============================================================ */

.rs-wireless-lifecycle-node{
  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;
  min-height:390px;

  padding:
    26px
    24px
    22px;

  overflow:hidden;

  border:
    1px solid rgba(148,163,184,.16);

  border-radius:9px;

  background:
    linear-gradient(
      145deg,
      rgba(34,55,74,.90),
      rgba(18,35,50,.96)
    );

  color:inherit;

  text-decoration:none;

  box-shadow:
    0 16px 32px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.035);

  transition:
    border-color .18s ease,
    transform .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}


.rs-wireless-lifecycle-node::before{
  content:"";

  position:absolute;

  top:0;
  left:0;
  right:0;

  height:3px;

  background:
    linear-gradient(
      90deg,
      var(--partner-green),
      rgba(190,242,100,0)
    );

  opacity:.55;
}


.rs-wireless-lifecycle-node:hover{
  transform:translateY(-3px);

  border-color:
    rgba(190,242,100,.30);

  background:
    linear-gradient(
      145deg,
      rgba(39,63,83,.94),
      rgba(18,35,50,.98)
    );

  box-shadow:
    0 22px 42px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.045);
}


/* ============================================================
   NODE HEADER
   ============================================================ */

.rs-wireless-lifecycle-node-top{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:20px;

  margin-bottom:25px;
}


.rs-wireless-lifecycle-number{
  color:
    rgba(125,211,252,.52);

  font-size:.74rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.14em;
}


.rs-wireless-lifecycle-icon{
  display:grid;
  place-items:center;

  width:50px;
  height:50px;

  flex:0 0 auto;

  border:
    1px solid rgba(190,242,100,.25);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(190,242,100,.09),
      rgba(125,211,252,.035)
    );

  color:
    var(--partner-green);

  font-size:1.15rem;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 10px 24px rgba(0,0,0,.14);
}


/* ============================================================
   NODE CONTENT
   ============================================================ */

.rs-wireless-lifecycle-kicker{
  margin-bottom:7px;

  color:
    #8298aa;

  font-size:.68rem;
  font-weight:850;

  line-height:1.3;

  letter-spacing:.12em;

  text-transform:uppercase;
}


.rs-wireless-lifecycle-node h3{
  margin:
    0
    0
    14px;

  color:#fff;

  font-size:
    clamp(1.45rem,1.7vw,1.8rem);

  line-height:1.12;

  letter-spacing:-.025em;
}


.rs-wireless-lifecycle-node > p{
  margin:0;

  color:#adbdcc;

  font-size:.91rem;
  line-height:1.68;
}


/* ============================================================
   SMALL TECHNOLOGY / REQUIREMENT CHIPS
   ============================================================ */

.rs-wireless-lifecycle-points{
  display:flex;
  flex-wrap:wrap;

  gap:7px;

  margin-top:22px;
}


.rs-wireless-lifecycle-points span{
  display:inline-flex;
  align-items:center;

  min-height:27px;

  padding:
    6px
    9px;

  border:
    1px solid rgba(125,211,252,.14);

  border-radius:5px;

  background:
    rgba(4,12,27,.30);

  color:#c7d5e3;

  font-size:.69rem;
  font-weight:700;

  line-height:1.2;
}


/* ============================================================
   NODE ACTION
   ============================================================ */

.rs-wireless-lifecycle-node-action{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:16px;

  margin-top:auto;
  padding-top:24px;

  color:#dce7ef;

  font-size:.78rem;
  font-weight:800;

  line-height:1.3;
}


.rs-wireless-lifecycle-node-action i{
  color:
    var(--partner-green);

  transition:
    transform .18s ease;
}


.rs-wireless-lifecycle-node:hover
.rs-wireless-lifecycle-node-action i{
  transform:
    translateX(4px);
}


/* ============================================================
   CONNECTORS
   ============================================================ */

.rs-wireless-lifecycle-connector{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  gap:10px;

  min-width:0;

  color:
    rgba(125,211,252,.60);
}


.rs-wireless-lifecycle-connector > span{
  font-size:.58rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.14em;
}


.rs-wireless-lifecycle-signal{
  position:relative;

  display:flex;
  align-items:center;

  width:100%;

  color:
    var(--partner-green);
}


.rs-wireless-lifecycle-signal::before{
  content:"";

  display:block;

  flex:1;

  height:1px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.18),
      rgba(190,242,100,.68)
    );

  box-shadow:
    0 0 8px rgba(190,242,100,.10);
}


.rs-wireless-lifecycle-signal i{
  margin-left:-1px;

  font-size:.72rem;
}


/* ============================================================
   FEEDBACK LOOP
   ============================================================ */

.rs-wireless-lifecycle-feedback{
  position:relative;

  margin-top:30px;
  padding-top:42px;
}


/*
 * The return path visually runs from the implementation stage
 * back toward design.
 */

.rs-wireless-lifecycle-return{
  position:absolute;

  top:0;
  left:8%;
  right:8%;

  height:28px;

  border-right:
    1px solid rgba(125,211,252,.23);

  border-bottom:
    1px solid rgba(125,211,252,.23);

  border-left:
    1px solid rgba(190,242,100,.34);

  border-radius:
    0
    0
    18px
    18px;
}


.rs-wireless-lifecycle-return-start{
  position:absolute;

  left:-5px;
  top:-8px;

  display:grid;
  place-items:center;

  width:10px;
  height:10px;

  color:
    var(--partner-green);

  font-size:.65rem;
}


.rs-wireless-lifecycle-return-end{
  position:absolute;

  right:-5px;
  top:-7px;

  display:grid;
  place-items:center;

  width:10px;
  height:10px;

  color:
    rgba(125,211,252,.65);

  font-size:.65rem;
}


.rs-wireless-lifecycle-return-line{
  position:absolute;

  left:50%;
  bottom:-3px;

  width:46px;
  height:5px;

  transform:
    translateX(-50%);

  background:
    radial-gradient(
      ellipse at center,
      rgba(125,211,252,.30),
      transparent 70%
    );
}


/* ============================================================
   FEEDBACK COPY
   ============================================================ */

.rs-wireless-lifecycle-feedback-copy{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  align-items:start;

  gap:16px;

  max-width:920px;

  margin:
    0
    auto;

  padding:
    18px
    22px;

  border:
    1px solid rgba(148,163,184,.11);

  border-radius:7px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.035),
      rgba(190,242,100,.018)
    );
}


.rs-wireless-lifecycle-feedback-icon{
  display:grid;
  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid rgba(190,242,100,.20);

  border-radius:50%;

  background:
    rgba(190,242,100,.05);

  color:
    var(--partner-green);

  font-size:.95rem;
}


.rs-wireless-lifecycle-feedback-copy strong{
  display:block;

  margin-bottom:5px;

  color:#edf4f8;

  font-size:.87rem;
  font-weight:850;

  line-height:1.4;
}


.rs-wireless-lifecycle-feedback-copy p{
  margin:0;

  color:#94a8b9;

  font-size:.79rem;
  line-height:1.55;
}


/* ============================================================
   RESPONSIVE — TABLET
   ============================================================ */

@media (max-width:1100px){

  .rs-wireless-lifecycle-track{
    grid-template-columns:
      minmax(0,1fr)
      54px
      minmax(0,1fr)
      54px
      minmax(0,1fr);
  }


  .rs-wireless-lifecycle-node{
    padding:
      22px
      19px
      20px;
  }

}


/* ============================================================
   RESPONSIVE — STACKED LIFECYCLE
   ============================================================ */

@media (max-width:900px){

  .rs-wireless-lifecycle-track{
    grid-template-columns:1fr;
  }


  .rs-wireless-lifecycle-node{
    min-height:0;
  }


  .rs-wireless-lifecycle-connector{
    min-height:68px;

    flex-direction:row;

    gap:14px;
  }


  .rs-wireless-lifecycle-signal{
    width:60px;

    transform:
      rotate(90deg);
  }


  .rs-wireless-lifecycle-feedback{
    padding-top:20px;
  }


  .rs-wireless-lifecycle-return{
    display:none;
  }

}


/* ============================================================
   RESPONSIVE — MOBILE
   ============================================================ */

@media (max-width:600px){

  .rs-wireless-lifecycle-diagram{
    padding:
      20px
      15px
      22px;
  }


  .rs-wireless-lifecycle-node{
    padding:
      21px
      18px
      19px;
  }


  .rs-wireless-lifecycle-feedback-copy{
    grid-template-columns:1fr;

    gap:11px;
  }


  .rs-wireless-lifecycle-feedback-icon{
    width:38px;
    height:38px;
  }

}


/* ============================================================
   RACKSTAR WIRELESS LIFECYCLE
   Unified Infographic + Service Overview
   ============================================================ */

.rs-wireless-cycle{
  position:relative;
}


/* ============================================================
   INFOGRAPHIC STAGE
   ============================================================ */

.rs-wireless-cycle-stage{
  position:relative;

  margin-top:42px;

  padding:
    28px
    clamp(18px,2.4vw,34px)
    30px;

  overflow:hidden;

  border:
    1px solid rgba(125,211,252,.17);

  border-radius:10px;

  background:
    radial-gradient(
      circle at 50% -10%,
      rgba(41,102,238,.13),
      transparent 40%
    ),
    linear-gradient(
      145deg,
      rgba(29,49,67,.96),
      rgba(12,27,41,.99)
    );

  box-shadow:
    0 24px 48px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.035);
}


/* ------------------------------------------------------------
   TECHNICAL GRID
   ------------------------------------------------------------ */

.rs-wireless-cycle-stage::before{
  content:"";

  position:absolute;
  inset:0;

  background-image:
    linear-gradient(
      rgba(125,211,252,.024) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(125,211,252,.024) 1px,
      transparent 1px
    );

  background-size:
    24px
    24px;

  pointer-events:none;
}


.rs-wireless-cycle-stage > *{
  position:relative;
  z-index:2;
}


/* ============================================================
   DESIGN • VALIDATE • DEPLOY • IMPROVE
   ============================================================ */

.rs-wireless-cycle-sequence{
  display:flex;
  align-items:center;
  justify-content:center;

  flex-wrap:wrap;

  gap:14px;

  margin:
    0
    0
    27px;

  color:#c7d5e3;

  font-size:.71rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.13em;

  text-transform:uppercase;
}


.rs-wireless-cycle-sequence span{
  color:#dce8f0;
}


.rs-wireless-cycle-sequence i{
  color:
    rgba(190,242,100,.70);

  font-size:.58rem;
}


/* ============================================================
   THREE STAGE FLOW
   ============================================================ */

.rs-wireless-cycle-track{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    64px
    minmax(0,1fr)
    64px
    minmax(0,1fr);

  align-items:stretch;

  width:100%;
}


/* ============================================================
   PRIMARY SERVICE CARD
   ============================================================ */

.rs-wireless-cycle-card{
  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;

  overflow:hidden;

  border:
    1px solid rgba(148,163,184,.17);

  border-radius:9px;

  background:
    linear-gradient(
      145deg,
      rgba(34,55,74,.93),
      rgba(17,34,49,.98)
    );

  box-shadow:
    0 18px 36px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.035);
}


/* upper lifecycle signal */

.rs-wireless-cycle-card::before{
  content:"";

  position:absolute;

  top:0;
  left:0;
  right:0;

  z-index:4;

  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.86),
      rgba(125,211,252,.30),
      transparent
    );
}


/* ============================================================
   CARD IMAGE
   ============================================================ */

.rs-wireless-cycle-image{
  position:relative;

  min-height:205px;

  overflow:hidden;

  background:
    var(--rs-cycle-image)
    center / cover no-repeat;
}


.rs-wireless-cycle-image-overlay{
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      180deg,
      rgba(4,10,20,.08) 0%,
      rgba(4,10,20,.12) 35%,
      rgba(11,25,38,.80) 82%,
      rgba(17,34,49,.98) 100%
    ),
    linear-gradient(
      135deg,
      rgba(41,102,238,.10),
      transparent 45%,
      rgba(190,242,100,.045)
    );
}


/* ============================================================
   STAGE NUMBER
   ============================================================ */

.rs-wireless-cycle-number{
  position:absolute;

  top:18px;
  right:18px;

  z-index:3;

  color:
    rgba(255,255,255,.68);

  font-size:.72rem;
  font-weight:950;

  line-height:1;

  letter-spacing:.16em;

  text-shadow:
    0 2px 10px rgba(0,0,0,.65);
}


/* ============================================================
   STAGE ICON
   ============================================================ */

.rs-wireless-cycle-icon{
  position:absolute;

  left:20px;
  bottom:39px;

  z-index:3;

  display:grid;
  place-items:center;

  width:52px;
  height:52px;

  border:
    1px solid rgba(190,242,100,.30);

  border-radius:9px;

  background:
    rgba(9,23,35,.86);

  color:
    var(--partner-green);

  font-size:1.17rem;

  box-shadow:
    0 12px 26px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.05);

  backdrop-filter:
    blur(7px);
}


/* ============================================================
   IMAGE LABEL
   ============================================================ */

.rs-wireless-cycle-image-label{
  position:absolute;

  left:82px;
  right:18px;
  bottom:48px;

  z-index:3;

  color:
    rgba(224,235,243,.82);

  font-size:.64rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.12em;

  text-transform:uppercase;

  text-shadow:
    0 2px 10px rgba(0,0,0,.65);
}


/* ============================================================
   CARD BODY
   ============================================================ */

.rs-wireless-cycle-body{
  display:flex;
  flex-direction:column;

  flex:1;

  padding:
    5px
    23px
    24px;
}


.rs-wireless-cycle-body h3{
  margin:
    0
    0
    14px;

  color:#fff;

  font-size:
    clamp(1.35rem,1.5vw,1.65rem);

  line-height:1.16;

  letter-spacing:-.025em;
}


.rs-wireless-cycle-lead{
  margin:0;

  color:#adbdcc;

  font-size:.90rem;
  line-height:1.68;
}


/* ============================================================
   INTERNAL DIVIDER
   ============================================================ */

.rs-wireless-cycle-divider{
  height:1px;

  margin:
    20px
    0
    17px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.22),
      rgba(125,211,252,.04),
      transparent
    );
}


/* ============================================================
   FOCUS LABEL
   ============================================================ */

.rs-wireless-cycle-focus-title{
  margin-bottom:11px;

  color:#7f96a8;

  font-size:.62rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.14em;
}


/* ============================================================
   FOCUS POINTS
   ============================================================ */

.rs-wireless-cycle-points{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:7px;
}


.rs-wireless-cycle-points span{
  display:flex;
  align-items:flex-start;

  gap:7px;

  min-width:0;

  padding:
    8px
    9px;

  border:
    1px solid rgba(125,211,252,.12);

  border-radius:5px;

  background:
    rgba(4,12,27,.25);

  color:#cbd7e2;

  font-size:.70rem;
  font-weight:700;

  line-height:1.34;
}


.rs-wireless-cycle-points i{
  flex:0 0 auto;

  margin-top:.19em;

  color:
    var(--partner-green);

  font-size:.61rem;
}


/* ============================================================
   SUPPORTING NOTE
   ============================================================ */

.rs-wireless-cycle-note{
  margin:
    20px
    0
    22px;

  padding-top:17px;

  border-top:
    1px solid rgba(148,163,184,.09);

  color:#8fa4b6;

  font-size:.79rem;
  line-height:1.60;
}


/* ============================================================
   SERVICE BUTTON
   ============================================================ */

.rs-wireless-cycle-btn{
  align-self:flex-start;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  gap:10px;

  margin-top:auto;
  margin-bottom:0;

  padding:
    12px
    16px;

  min-height:44px;

  line-height:1.15;

  transform:none;
}


.rs-wireless-cycle-btn i{
  display:block;

  line-height:1;
}


/* keep hover movement subtle */

.rs-wireless-cycle-btn:hover{
  transform:translateY(-1px);
}


/* ============================================================
   FLOW CONNECTORS
   ============================================================ */

.rs-wireless-cycle-connector{
  position:relative;

  display:flex;
  flex-direction:column;

  align-items:center;
  justify-content:center;

  gap:10px;

  min-width:0;
}


.rs-wireless-cycle-connector-label{
  color:
    rgba(125,211,252,.56);

  font-size:.57rem;
  font-weight:950;

  line-height:1;

  letter-spacing:.15em;
}


.rs-wireless-cycle-connector-line{
  display:flex;
  align-items:center;

  width:100%;

  color:
    var(--partner-green);
}


.rs-wireless-cycle-connector-line::before{
  content:"";

  flex:1;

  height:1px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.16),
      rgba(125,211,252,.55),
      rgba(190,242,100,.76)
    );

  box-shadow:
    0 0 10px rgba(125,211,252,.12);
}


.rs-wireless-cycle-connector-line i{
  margin-left:-1px;

  font-size:.69rem;

  filter:
    drop-shadow(
      0 0 5px
      rgba(190,242,100,.18)
    );
}


/* ============================================================
   LIFECYCLE RETURN
   ============================================================ */

.rs-wireless-cycle-return{
  position:relative;

  margin-top:27px;
  padding-top:43px;
}


/* ------------------------------------------------------------
   RETURN PATH
   ------------------------------------------------------------ */

.rs-wireless-cycle-return-path{
  position:absolute;

  top:0;
  left:7%;
  right:7%;

  height:29px;

  border-right:
    1px solid rgba(125,211,252,.26);

  border-bottom:
    1px solid rgba(125,211,252,.28);

  border-left:
    1px solid rgba(190,242,100,.38);

  border-radius:
    0
    0
    20px
    20px;
}


.rs-wireless-cycle-return-path::after{
  content:"";

  position:absolute;

  left:8%;
  right:8%;
  bottom:-1px;

  height:1px;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.25),
      rgba(125,211,252,.30),
      rgba(125,211,252,.12)
    );
}


.rs-wireless-cycle-return-end{
  position:absolute;

  top:-8px;

  display:grid;
  place-items:center;

  width:14px;
  height:14px;

  font-size:.64rem;
}


.rs-wireless-cycle-return-end--left{
  left:-7px;

  color:
    var(--partner-green);
}


.rs-wireless-cycle-return-end--right{
  right:-7px;

  color:
    rgba(125,211,252,.72);
}


.rs-wireless-cycle-return-line{
  position:absolute;

  left:50%;
  bottom:-4px;

  width:84px;
  height:7px;

  transform:
    translateX(-50%);

  background:
    radial-gradient(
      ellipse at center,
      rgba(125,211,252,.25),
      transparent 70%
    );
}


/* ============================================================
   LIFECYCLE FEEDBACK PANEL
   ============================================================ */

.rs-wireless-cycle-feedback{
  display:grid;

  grid-template-columns:
    50px
    minmax(0,1fr)
    auto;

  align-items:center;

  gap:18px;

  max-width:1050px;

  margin:
    0
    auto;

  padding:
    18px
    21px;

  border:
    1px solid rgba(148,163,184,.12);

  border-radius:7px;

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.035),
      rgba(125,211,252,.035),
      rgba(4,12,27,.18)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025);
}


.rs-wireless-cycle-feedback-icon{
  display:grid;
  place-items:center;

  width:46px;
  height:46px;

  border:
    1px solid rgba(190,242,100,.23);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:
    var(--partner-green);

  font-size:1rem;

  box-shadow:
    0 0 18px rgba(190,242,100,.05);
}


/* ============================================================
   FEEDBACK COPY
   ============================================================ */

.rs-wireless-cycle-feedback-kicker{
  margin-bottom:5px;

  color:
    rgba(125,211,252,.66);

  font-size:.60rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.15em;
}


.rs-wireless-cycle-feedback-copy strong{
  display:block;

  margin-bottom:5px;

  color:#edf4f8;

  font-size:.89rem;
  font-weight:850;

  line-height:1.35;
}


.rs-wireless-cycle-feedback-copy p{
  max-width:760px;

  margin:0;

  color:#94a8b9;

  font-size:.78rem;
  line-height:1.56;
}


/* ============================================================
   BACK TO DESIGN
   ============================================================ */

.rs-wireless-cycle-feedback-arrow{
  display:flex;
  align-items:center;

  gap:9px;

  white-space:nowrap;

  color:
    rgba(190,242,100,.72);

  font-size:.60rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.12em;
}


.rs-wireless-cycle-feedback-arrow i{
  font-size:.74rem;
}


/* ============================================================
   HOVER — CARDS
   ============================================================ */

.rs-wireless-cycle-card{
  transition:
    transform .20s ease,
    border-color .20s ease,
    box-shadow .20s ease;
}


.rs-wireless-cycle-card:hover{
  transform:
    translateY(-3px);

  border-color:
    rgba(190,242,100,.27);

  box-shadow:
    0 23px 44px rgba(0,0,0,.25),
    inset 0 1px 0 rgba(255,255,255,.045);
}


/* ============================================================
   RESPONSIVE — 1200
   ============================================================ */

@media (max-width:1200px){

  .rs-wireless-cycle-track{
    grid-template-columns:
      minmax(0,1fr)
      48px
      minmax(0,1fr)
      48px
      minmax(0,1fr);
  }


  .rs-wireless-cycle-body{
    padding-left:18px;
    padding-right:18px;
  }


  .rs-wireless-cycle-points{
    grid-template-columns:1fr;
  }

}


/* ============================================================
   RESPONSIVE — STACKED LIFECYCLE
   ============================================================ */

@media (max-width:900px){

  .rs-wireless-cycle-stage{
    padding:
      24px
      20px
      26px;
  }


  .rs-wireless-cycle-track{
    grid-template-columns:1fr;
  }


  .rs-wireless-cycle-card{
    display:grid;

    grid-template-columns:
      minmax(230px,34%)
      minmax(0,1fr);
  }


  .rs-wireless-cycle-image{
    min-height:100%;
  }


  .rs-wireless-cycle-body{
    padding:
      24px
      23px;
  }


  .rs-wireless-cycle-points{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  /* vertical arrows between cards */

  .rs-wireless-cycle-connector{
    min-height:72px;

    flex-direction:row;

    gap:15px;
  }


  .rs-wireless-cycle-connector-line{
    width:58px;

    transform:
      rotate(90deg);
  }


  /* simplified feedback path */

  .rs-wireless-cycle-return{
    padding-top:19px;
  }


  .rs-wireless-cycle-return-path{
    display:none;
  }


  .rs-wireless-cycle-feedback{
    grid-template-columns:
      46px
      minmax(0,1fr);
  }


  .rs-wireless-cycle-feedback-arrow{
    grid-column:
      2;

    justify-self:start;

    margin-top:3px;
  }

}


/* ============================================================
   RESPONSIVE — MOBILE
   ============================================================ */

@media (max-width:650px){

  .rs-wireless-cycle-stage{
    margin-top:30px;

    padding:
      20px
      14px
      22px;
  }


  .rs-wireless-cycle-sequence{
    gap:9px;

    margin-bottom:21px;

    font-size:.61rem;
  }


  .rs-wireless-cycle-card{
    display:flex;
  }


  .rs-wireless-cycle-image{
    min-height:190px;
  }


  .rs-wireless-cycle-body{
    padding:
      20px
      18px
      22px;
  }


  .rs-wireless-cycle-points{
    grid-template-columns:1fr;
  }


  .rs-wireless-cycle-image-label{
    left:79px;

    font-size:.58rem;
  }


  .rs-wireless-cycle-feedback{
    grid-template-columns:1fr;

    align-items:start;

    gap:11px;

    padding:
      17px
      17px;
  }


  .rs-wireless-cycle-feedback-arrow{
    grid-column:auto;
  }


  .rs-wireless-cycle-feedback-icon{
    width:40px;
    height:40px;
  }

}


/* ============================================================
   STRUCTURED CABLING HERO INFOGRAPHIC
   Bidirectional / "Ping-Pong" Cable Trace Animation
   ============================================================ */

#cabling-lifecycle .rs-wireless-cycle-connector-line::before{
  height:2px;
}

/* ------------------------------------------------------------
   DISABLE THE WIRELESS-STYLE BREATHING
   ------------------------------------------------------------ */

.rs-cabling-hero-map .rs-wireless-hero-ring,
.rs-cabling-hero-map .rs-wireless-hero-center{
  animation:none;
}


/* ------------------------------------------------------------
   REMOVE RF RINGS FOR THE CABLING VERSION
   ------------------------------------------------------------ */

.rs-cabling-hero-map .rs-wireless-hero-rings{
  display:none;
}


/* ------------------------------------------------------------
   STATIC CENTER HUB
   ------------------------------------------------------------ */

.rs-cabling-hero-center{
  box-shadow:
    0 0 0 6px rgba(190,242,100,.025),
    0 0 22px rgba(125,211,252,.08),
    inset 0 1px 0 rgba(255,255,255,.055);
}


/* ------------------------------------------------------------
   CABLE PATH BASE
   Existing .rs-wireless-hero-line classes still control
   position and geometry. These rules add the animated trace.
   ------------------------------------------------------------ */

.rs-cabling-hero-line{
  overflow:visible;
}


/* animated signal segment */

.rs-cabling-hero-line::after{
  content:"";

  position:absolute;

  border-radius:999px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,0) 0%,
      rgba(125,211,252,.48) 20%,
      rgba(190,242,100,.98) 50%,
      rgba(125,211,252,.48) 80%,
      rgba(125,211,252,0) 100%
    );

  box-shadow:
    0 0 7px rgba(190,242,100,.34),
    0 0 13px rgba(125,211,252,.20);

  opacity:.15;

  pointer-events:none;
}


/* ============================================================
   RIGHT PATH
   CABLING <-> FIBER
   ============================================================ */

.rs-cabling-hero-line--right::after{
  top:-3px;
  left:0;

  width:28%;
  height:7px;

  animation:
    rs-cable-trace-right 2.8s ease-in-out infinite alternate;
}


/* ============================================================
   LEFT PATH
   CABLING <-> TEST
   ============================================================ */

.rs-cabling-hero-line--left::after{
  top:-3px;
  right:0;

  width:28%;
  height:7px;

  animation:
    rs-cable-trace-left 3.1s ease-in-out infinite alternate;

  animation-delay:.35s;
}


/* ============================================================
   TOP PATH
   CABLING <-> COPPER
   ============================================================ */

.rs-cabling-hero-line--top::after{
  left:-3px;
  bottom:0;

  width:7px;
  height:28%;

  background:
    linear-gradient(
      180deg,
      rgba(125,211,252,0) 0%,
      rgba(125,211,252,.48) 20%,
      rgba(190,242,100,.98) 50%,
      rgba(125,211,252,.48) 80%,
      rgba(125,211,252,0) 100%
    );

  animation:
    rs-cable-trace-up 3s ease-in-out infinite alternate;

  animation-delay:.7s;
}


/* ============================================================
   BOTTOM PATH
   CABLING <-> RACKS
   ============================================================ */

.rs-cabling-hero-line--bottom::after{
  left:-3px;
  top:0;

  width:7px;
  height:28%;

  background:
    linear-gradient(
      180deg,
      rgba(125,211,252,0) 0%,
      rgba(125,211,252,.48) 20%,
      rgba(190,242,100,.98) 50%,
      rgba(125,211,252,.48) 80%,
      rgba(125,211,252,0) 100%
    );

  animation:
    rs-cable-trace-down 3.3s ease-in-out infinite alternate;

  animation-delay:1.05s;
}


/* ============================================================
   BIDIRECTIONAL TRACE ANIMATIONS
   alternate reverses each animation automatically
   ============================================================ */

@keyframes rs-cable-trace-right{

  0%{
    left:0;
    opacity:.15;
  }

  12%{
    opacity:1;
  }

  88%{
    opacity:1;
  }

  100%{
    left:76%;
    opacity:.15;
  }

}


@keyframes rs-cable-trace-left{

  0%{
    right:0;
    opacity:.15;
  }

  12%{
    opacity:1;
  }

  88%{
    opacity:1;
  }

  100%{
    right:76%;
    opacity:.15;
  }

}


@keyframes rs-cable-trace-up{

  0%{
    bottom:0;
    opacity:.15;
  }

  12%{
    opacity:1;
  }

  88%{
    opacity:1;
  }

  100%{
    bottom:76%;
    opacity:.15;
  }

}


@keyframes rs-cable-trace-down{

  0%{
    top:0;
    opacity:.15;
  }

  12%{
    opacity:1;
  }

  88%{
    opacity:1;
  }

  100%{
    top:76%;
    opacity:.15;
  }

}


/* ============================================================
   OPTIONAL SUBTLE NODE RESPONSE
   Gives each endpoint a tiny amount of visual energy without
   returning to the wireless "breathing" effect.
   ============================================================ */

.rs-cabling-hero-map .rs-wireless-hero-node-icon{
  transition:
    box-shadow .25s ease,
    border-color .25s ease,
    color .25s ease;
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion:reduce){

  .rs-cabling-hero-line::after{
    animation:none;
    display:none;
  }

}


/* ============================================================
   MAC SCOPE
   ============================================================ */

.rs-mac-scope{
  position:relative;
}


.rs-mac-scope-stage{
  position:relative;

  display:grid;
  grid-template-columns:
    repeat(3,minmax(0,1fr));

  margin-top:36px;

  overflow:hidden;

  border:
    1px solid
    rgba(125,211,252,.16);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(18,39,56,.98),
      rgba(8,24,37,.99)
    );

  box-shadow:
    0 18px 42px
    rgba(0,0,0,.16);
}


/* ============================================================
   INDIVIDUAL SCOPE COLUMNS
   ============================================================ */

.rs-mac-scope-column{
  position:relative;

  min-width:0;

  padding:
    clamp(26px,2.5vw,38px)
    clamp(22px,2.4vw,34px)
    30px;
}


.rs-mac-scope-column + .rs-mac-scope-column{
  border-left:
    1px solid
    rgba(125,211,252,.13);
}


/* subtle top identity lines */

.rs-mac-scope-column::before{
  content:"";

  position:absolute;

  top:0;
  left:0;
  right:0;

  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.08),
      rgba(125,211,252,.65),
      rgba(190,242,100,.72)
    );
}


/* ============================================================
   COLUMN HEADER
   ============================================================ */

.rs-mac-scope-column-head{
  display:grid;

  grid-template-columns:
    42px
    44px
    minmax(0,1fr);

  gap:12px;

  align-items:start;
}


.rs-mac-scope-number{
  display:grid;
  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(125,211,252,.20);

  border-radius:50%;

  background:
    rgba(5,22,35,.68);

  color:
    rgba(125,211,252,.88);

  font-size:.63rem;
  font-weight:950;

  letter-spacing:.08em;
}


.rs-mac-scope-icon{
  display:grid;
  place-items:center;

  width:44px;
  height:44px;

  border:
    1px solid
    rgba(190,242,100,.22);

  border-radius:8px;

  background:
    rgba(190,242,100,.045);

  color:#bef264;

  font-size:.96rem;
}


.rs-mac-scope-head-copy{
  min-width:0;
}


.rs-mac-scope-kicker{
  margin-bottom:7px;

  color:
    #7dd3fc;

  font-size:.61rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.17em;

  text-transform:uppercase;
}


.rs-mac-scope-column h3{
  margin:0;

  color:#e8f2fb;

  font-size:
    clamp(1.02rem,1.25vw,1.23rem);

  line-height:1.25;
}


/* ============================================================
   COLUMN COPY
   ============================================================ */

.rs-mac-scope-copy{
  margin:
    24px 0 0;

  color:#9fb4c6;

  font-size:.88rem;

  line-height:1.72;
}


/* ============================================================
   COLUMN POINTS
   ============================================================ */

.rs-mac-scope-points{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px 14px;

  margin-top:24px;

  padding-top:18px;

  border-top:
    1px solid
    rgba(148,163,184,.11);
}


.rs-mac-scope-points span{
  display:flex;

  align-items:flex-start;

  gap:8px;

  min-width:0;

  color:#bdd0e1;

  font-size:.67rem;
  font-weight:800;

  line-height:1.35;

  letter-spacing:.045em;

  text-transform:uppercase;
}


.rs-mac-scope-points i{
  flex:0 0 auto;

  display:grid;
  place-items:center;

  width:19px;
  height:19px;

  margin-top:-1px;

  border:
    1.5px solid
    rgba(190,242,100,.72);

  border-radius:50%;

  color:#bef264;

  font-size:.48rem;
}


/* ============================================================
   MAC SCOPE FOOTER
   ============================================================ */

.rs-mac-scope-footer{
  grid-column:1 / -1;

  display:grid;

  grid-template-columns:
    52px
    minmax(0,1fr)
    auto;

  gap:20px;

  align-items:center;

  padding:
    22px
    clamp(24px,3vw,38px);

  border-top:
    1px solid
    rgba(125,211,252,.16);

  background:
    linear-gradient(
      90deg,
      rgba(6,28,46,.98),
      rgba(8,34,48,.94)
    );
}


.rs-mac-scope-footer-icon{
  display:grid;
  place-items:center;

  width:52px;
  height:52px;

  border:
    1px solid
    rgba(190,242,100,.23);

  border-radius:50%;

  background:
    rgba(190,242,100,.045);

  color:#bef264;

  font-size:1.05rem;
}


.rs-mac-scope-footer-copy{
  min-width:0;
}


.rs-mac-scope-footer-copy strong{
  display:block;

  margin-bottom:5px;

  color:#e6f0f8;

  font-size:1rem;

  line-height:1.35;
}


.rs-mac-scope-footer-copy p{
  margin:0;

  max-width:780px;

  color:#8fa7ba;

  font-size:.79rem;

  line-height:1.6;
}


.rs-mac-scope-footer-action{
  align-self:center;
}


/* ============================================================
   MAC ENVIRONMENTS
   ============================================================ */

.rs-mac-environments{
  position:relative;
}


.rs-mac-environment-grid{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:14px;

  margin-top:30px;
}


.rs-mac-environment-item{
  --mac-accent:125,211,252;

  position:relative;

  display:grid;
  grid-template-columns:
    52px minmax(0,1fr);

  gap:18px;

  align-items:start;

  min-width:0;

  padding:
    23px 24px;

  overflow:hidden;

  border:
    1px solid
    rgba(var(--mac-accent),.20);

  border-radius:9px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--mac-accent),.085) 0%,
      rgba(13,34,49,.88) 34%,
      rgba(8,25,38,.96) 100%
    );

  box-shadow:
    0 12px 26px
    rgba(0,0,0,.10);

  transition:
    border-color .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}


/* upper accent rail */

.rs-mac-environment-item::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--mac-accent),.88),
      rgba(var(--mac-accent),.28) 58%,
      transparent
    );
}


/* subtle corner atmosphere */

.rs-mac-environment-item::after{
  content:"";

  position:absolute;

  right:-70px;
  bottom:-85px;

  width:190px;
  height:190px;

  border-radius:50%;

  pointer-events:none;

  background:
    radial-gradient(
      circle,
      rgba(var(--mac-accent),.07),
      transparent 68%
    );
}


.rs-mac-environment-item:hover{
  transform:
    translateY(-2px);

  border-color:
    rgba(var(--mac-accent),.36);

  box-shadow:
    0 17px 34px
    rgba(0,0,0,.16);
}


/* ============================================================
   ENVIRONMENT IDENTITIES
   ============================================================ */

.rs-mac-environment-item--office{
  --mac-accent:125,211,252;
}


.rs-mac-environment-item--warehouse{
  --mac-accent:94,234,212;
}


.rs-mac-environment-item--data{
  --mac-accent:190,242,100;
}


.rs-mac-environment-item--multisite{
  --mac-accent:147,197,253;
}


/* ============================================================
   ENVIRONMENT ICON
   ============================================================ */

.rs-mac-environment-icon{
  position:relative;
  z-index:1;

  display:grid;
  place-items:center;

  width:52px;
  height:52px;

  border:
    1px solid
    rgba(var(--mac-accent),.34);

  border-radius:9px;

  background:
    rgba(var(--mac-accent),.085);

  color:
    rgb(var(--mac-accent));

  font-size:1rem;

  box-shadow:
    inset 0 0 18px
    rgba(var(--mac-accent),.025);
}


/* ============================================================
   ENVIRONMENT COPY
   ============================================================ */

.rs-mac-environment-copy{
  position:relative;
  z-index:1;

  min-width:0;
}


.rs-mac-environment-copy h3{
  margin:
    1px 0 8px;

  color:#eef6fc;

  font-size:1rem;
  line-height:1.25;
}


.rs-mac-environment-copy p{
  margin:0;

  color:#96adbf;

  font-size:.78rem;
  line-height:1.58;
}


/* ============================================================
   ENVIRONMENT TAGS
   ============================================================ */

.rs-mac-environment-tags{
  display:flex;

  flex-wrap:wrap;

  gap:7px;

  margin-top:14px;
}


.rs-mac-environment-tags span{
  display:inline-flex;

  align-items:center;

  min-height:25px;

  padding:
    4px 9px;

  border:
    1px solid
    rgba(var(--mac-accent),.18);

  border-radius:999px;

  background:
    rgba(var(--mac-accent),.045);

  color:
    rgba(var(--mac-accent),.88);

  font-size:.58rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.055em;

  text-transform:uppercase;
}

/* ============================================================
   MAC ENVIRONMENT CTA
   ============================================================ */

.rs-mac-environment-cta{
  display:grid;

  grid-template-columns:
    58px
    minmax(0,1fr)
    auto;

  gap:22px;

  align-items:center;

  margin-top:18px;

  padding:
    24px
    clamp(24px,3vw,38px);

  border:
    1px solid
    rgba(190,242,100,.22);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.075) 0%,
      rgba(10,34,46,.96) 27%,
      rgba(7,25,39,.98) 100%
    );

  box-shadow:
    0 14px 32px
    rgba(0,0,0,.13);
}


.rs-mac-environment-cta-icon{
  display:grid;
  place-items:center;

  width:58px;
  height:58px;

  border:
    1px solid
    rgba(190,242,100,.30);

  border-radius:50%;

  background:
    rgba(190,242,100,.065);

  color:#bef264;

  font-size:1.1rem;
}


.rs-mac-environment-cta-copy{
  min-width:0;
}


.rs-mac-environment-cta-copy h3{
  margin:
    3px 0 6px;

  color:#edf6fc;

  font-size:
    clamp(1.05rem,1.3vw,1.25rem);

  line-height:1.25;
}


.rs-mac-environment-cta-copy p{
  margin:0;

  max-width:790px;

  color:#96adbf;

  font-size:.8rem;
  line-height:1.6;
}


.rs-mac-environment-cta-action{
  justify-self:end;
}


@media (max-width:900px){

  .rs-mac-environment-cta{
    grid-template-columns:
      58px
      minmax(0,1fr);
  }

  .rs-mac-environment-cta-action{
    grid-column:2;

    justify-self:start;
  }

}


@media (max-width:760px){

  .rs-mac-environment-grid{
    grid-template-columns:
      1fr;
  }


  .rs-mac-environment-cta{
    grid-template-columns:
      1fr;
  }


  .rs-mac-environment-cta-action{
    grid-column:auto;
  }

}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1100px){

  .rs-mac-scope-stage{
    grid-template-columns:
      1fr;
  }


  .rs-mac-scope-column + .rs-mac-scope-column{
    border-left:0;

    border-top:
      1px solid
      rgba(125,211,252,.13);
  }


  .rs-mac-scope-footer{
    grid-template-columns:
      52px
      minmax(0,1fr);
  }


  .rs-mac-scope-footer-action{
    grid-column:2;

    justify-self:start;
  }

}


@media (max-width:760px){

  .rs-mac-scope-column{
    padding:
      24px 20px 26px;
  }


  .rs-mac-scope-column-head{
    grid-template-columns:
      38px
      40px
      minmax(0,1fr);

    gap:10px;
  }


  .rs-mac-scope-number{
    width:38px;
    height:38px;
  }


  .rs-mac-scope-icon{
    width:40px;
    height:40px;
  }


  .rs-mac-scope-points{
    grid-template-columns:
      1fr;
  }


  .rs-mac-scope-footer{
    grid-template-columns:
      1fr;

    padding:
      22px 20px;
  }


  .rs-mac-scope-footer-action{
    grid-column:auto;
  }


  .rs-mac-environment-grid{
    grid-template-columns:
      1fr;
  }

}


@media (prefers-reduced-motion:reduce){

  .rs-mac-environment-item{
    transition:none;
  }


  .rs-mac-environment-item:hover{
    transform:none;
  }

}


/* ============================================================
   MAC SCOPE — ARTICLE DIFFERENTIATION
   ============================================================ */

/* 01 — Endpoint Changes */
.rs-mac-scope-column:nth-of-type(1){
  --mac-scope-accent:125,211,252;
}


/* 02 — Distribution Changes */
.rs-mac-scope-column:nth-of-type(2){
  --mac-scope-accent:94,234,212;
}


/* 03 — Closeout + Records */
.rs-mac-scope-column:nth-of-type(3){
  --mac-scope-accent:190,242,100;
}


/* ============================================================
   SUBTLE ARTICLE BACKGROUNDS
   ============================================================ */

.rs-mac-scope-column{
  background:
    linear-gradient(
      155deg,
      rgba(var(--mac-scope-accent),.075) 0%,
      rgba(var(--mac-scope-accent),.025) 34%,
      transparent 67%
    );
}


/* ============================================================
   TOP ACCENT RAIL
   ============================================================ */

.rs-mac-scope-column::before{
  background:
    linear-gradient(
      90deg,
      rgba(var(--mac-scope-accent),.92),
      rgba(var(--mac-scope-accent),.32) 60%,
      transparent 100%
    );
}


/* ============================================================
   STEP NUMBER
   ============================================================ */

.rs-mac-scope-number{
  border-color:
    rgba(var(--mac-scope-accent),.32);

  background:
    rgba(var(--mac-scope-accent),.055);

  color:
    rgb(var(--mac-scope-accent));
}


/* ============================================================
   ICON
   ============================================================ */

.rs-mac-scope-icon{
  border-color:
    rgba(var(--mac-scope-accent),.30);

  background:
    rgba(var(--mac-scope-accent),.075);

  color:
    rgb(var(--mac-scope-accent));

  box-shadow:
    inset 0 0 18px
    rgba(var(--mac-scope-accent),.035);
}


/* ============================================================
   KICKER
   ============================================================ */

.rs-mac-scope-column .rs-mac-scope-kicker{
  color:
    rgb(var(--mac-scope-accent));
}


/* ============================================================
   CHECK POINTS
   ============================================================ */

.rs-mac-scope-column .rs-mac-scope-points i{
  border-color:
    rgba(var(--mac-scope-accent),.68);

  color:
    rgb(var(--mac-scope-accent));
}


/* ============================================================
   COLUMN DIVIDERS
   ============================================================ */

.rs-mac-scope-column + .rs-mac-scope-column{
  border-left:
    1px solid
    rgba(var(--mac-scope-accent),.16);
}

/* ============================================================
   PHYSICAL PLANT ARCHITECTURE
   ============================================================ */

.rs-plant-architecture{
  position:relative;
}


/* ============================================================
   PLANT BUILDING BLOCK GRID
   ============================================================ */

.rs-plant-block-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:14px;

  margin-top:34px;
}


.rs-plant-block{
  --plant-accent:125,211,252;

  position:relative;

  min-width:0;

  overflow:hidden;

  padding:
    clamp(26px,2.6vw,38px);

  border:
    1px solid
    rgba(var(--plant-accent),.20);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--plant-accent),.075) 0%,
      rgba(16,38,54,.92) 34%,
      rgba(7,24,37,.98) 100%
    );

  box-shadow:
    0 15px 34px
    rgba(0,0,0,.12);

  transition:
    transform .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
}


.rs-plant-block:hover{
  transform:
    translateY(-2px);

  border-color:
    rgba(var(--plant-accent),.34);

  box-shadow:
    0 19px 38px
    rgba(0,0,0,.17);
}


/* accent rail */

.rs-plant-block::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--plant-accent),.95),
      rgba(var(--plant-accent),.35) 58%,
      transparent
    );
}


/* ============================================================
   BLOCK IDENTITIES
   ============================================================ */

.rs-plant-block--copper{
  --plant-accent:125,211,252;
}


.rs-plant-block--fiber{
  --plant-accent:94,234,212;
}


.rs-plant-block--pathways{
  --plant-accent:147,197,253;
}


.rs-plant-block--distribution{
  --plant-accent:190,242,100;
}


/* ============================================================
   BLOCK HEAD
   ============================================================ */

.rs-plant-block-head{
  display:grid;

  grid-template-columns:
    42px
    48px
    minmax(0,1fr);

  gap:13px;

  align-items:start;
}


.rs-plant-block-number{
  display:grid;

  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(var(--plant-accent),.30);

  border-radius:50%;

  background:
    rgba(var(--plant-accent),.05);

  color:
    rgb(var(--plant-accent));

  font-size:.63rem;
  font-weight:950;

  line-height:1;

  letter-spacing:.08em;
}


.rs-plant-block-icon{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(var(--plant-accent),.30);

  border-radius:9px;

  background:
    rgba(var(--plant-accent),.07);

  color:
    rgb(var(--plant-accent));

  font-size:1rem;
}


.rs-plant-block-head-copy{
  min-width:0;
}


.rs-plant-block-kicker{
  margin-bottom:7px;

  color:
    rgb(var(--plant-accent));

  font-size:.61rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.17em;

  text-transform:uppercase;
}


.rs-plant-block h3{
  margin:0;

  color:#edf5fb;

  font-size:
    clamp(1.03rem,1.3vw,1.25rem);

  line-height:1.28;
}


/* ============================================================
   BLOCK COPY
   ============================================================ */

.rs-plant-block-copy{
  margin:
    22px 0 0;

  color:#9db2c4;

  font-size:.84rem;

  line-height:1.7;
}


.rs-plant-block-copy + .rs-plant-block-copy{
  margin-top:12px;
}


/* ============================================================
   BLOCK POINTS
   ============================================================ */

.rs-plant-block-points{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px 16px;

  margin-top:24px;

  padding-top:18px;

  border-top:
    1px solid
    rgba(var(--plant-accent),.12);
}


.rs-plant-block-points span{
  display:flex;

  align-items:flex-start;

  gap:8px;

  color:#bdd0e0;

  font-size:.67rem;
  font-weight:800;

  line-height:1.35;

  letter-spacing:.045em;

  text-transform:uppercase;
}


.rs-plant-block-points i{
  flex:0 0 auto;

  display:grid;

  place-items:center;

  width:19px;
  height:19px;

  margin-top:-1px;

  border:
    1.5px solid
    rgba(var(--plant-accent),.68);

  border-radius:50%;

  color:
    rgb(var(--plant-accent));

  font-size:.47rem;
}


/* ============================================================
   MEDIA STRATEGY BAND
   ============================================================ */

.rs-plant-strategy-band{
  --plant-accent:190,242,100;

  display:grid;

  grid-template-columns:
    58px
    minmax(0,1fr);

  gap:20px;

  align-items:center;

  margin-top:14px;

  padding:
    21px
    clamp(24px,3vw,36px);

  border:
    1px solid
    rgba(190,242,100,.18);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.055),
      rgba(10,31,44,.96) 35%,
      rgba(7,24,37,.98)
    );
}


.rs-plant-strategy-icon{
  display:grid;

  place-items:center;

  width:58px;
  height:58px;

  border:
    1px solid
    rgba(190,242,100,.26);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:1.05rem;
}


.rs-plant-strategy-copy strong{
  display:block;

  margin-bottom:5px;

  color:#edf6fc;

  font-size:1rem;

  line-height:1.35;
}


.rs-plant-strategy-copy p{
  margin:0;

  max-width:920px;

  color:#93aabd;

  font-size:.8rem;

  line-height:1.6;
}


/* ============================================================
   ENVIRONMENT CONTEXT
   ============================================================ */

.rs-plant-environment{
  margin-top:42px;

  padding-top:32px;

  border-top:
    1px solid
    rgba(148,163,184,.11);
}


.rs-plant-environment-head{
  max-width:980px;
}


.rs-plant-environment-head h3{
  margin:
    6px 0 8px;

  color:#edf5fb;

  font-size:
    clamp(1.25rem,1.8vw,1.65rem);

  line-height:1.24;
}


.rs-plant-environment-head p{
  margin:0;

  color:#93aabd;

  font-size:.86rem;

  line-height:1.65;
}


.rs-plant-environment-grid{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:11px;

  margin-top:23px;
}


.rs-plant-environment-item{
  --plant-env-accent:125,211,252;

  position:relative;

  display:grid;

  grid-template-columns:
    44px
    minmax(0,1fr);

  gap:13px;

  min-width:0;

  padding:18px;

  border:
    1px solid
    rgba(var(--plant-env-accent),.17);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--plant-env-accent),.06),
      rgba(9,28,42,.88) 48%,
      rgba(7,23,35,.94)
    );
}


.rs-plant-environment-item--office{
  --plant-env-accent:125,211,252;
}


.rs-plant-environment-item--industrial{
  --plant-env-accent:94,234,212;
}


.rs-plant-environment-item--data{
  --plant-env-accent:190,242,100;
}


.rs-plant-environment-item--multibuilding{
  --plant-env-accent:147,197,253;
}


.rs-plant-environment-icon{
  display:grid;

  place-items:center;

  width:44px;
  height:44px;

  border:
    1px solid
    rgba(var(--plant-env-accent),.27);

  border-radius:8px;

  background:
    rgba(var(--plant-env-accent),.06);

  color:
    rgb(var(--plant-env-accent));

  font-size:.9rem;
}


.rs-plant-environment-item h4{
  margin:
    1px 0 6px;

  color:#e6f0f8;

  font-size:.86rem;

  line-height:1.25;
}


.rs-plant-environment-item p{
  margin:0;

  color:#8fa6b8;

  font-size:.7rem;

  line-height:1.52;
}


.rs-plant-environment-tags{
  display:flex;

  flex-wrap:wrap;

  gap:5px;

  margin-top:11px;
}


.rs-plant-environment-tags span{
  display:inline-flex;

  align-items:center;

  min-height:22px;

  padding:
    3px 7px;

  border:
    1px solid
    rgba(var(--plant-env-accent),.17);

  border-radius:999px;

  background:
    rgba(var(--plant-env-accent),.04);

  color:
    rgba(var(--plant-env-accent),.88);

  font-size:.51rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.05em;

  text-transform:uppercase;
}


/* ============================================================
   PHYSICAL + LOGICAL ALIGNMENT
   ============================================================ */

.rs-plant-alignment{
  position:relative;
}


.rs-plant-alignment-inner{
  display:grid;

  grid-template-columns:
    68px
    minmax(0,1fr)
    auto;

  gap:
    clamp(20px,2.5vw,34px);

  align-items:center;

  padding:
    clamp(28px,3vw,42px);

  overflow:hidden;

  border:
    1px solid
    rgba(190,242,100,.20);

  border-radius:10px;

  background:
    linear-gradient(
      110deg,
      rgba(190,242,100,.07) 0%,
      rgba(12,35,48,.97) 24%,
      rgba(7,24,37,.99) 100%
    );

  box-shadow:
    0 17px 38px
    rgba(0,0,0,.14);
}


.rs-plant-alignment-icon{
  display:grid;

  place-items:center;

  width:68px;
  height:68px;

  border:
    1px solid
    rgba(190,242,100,.30);

  border-radius:50%;

  background:
    rgba(190,242,100,.06);

  color:#bef264;

  font-size:1.25rem;
}


.rs-plant-alignment-copy{
  min-width:0;
}


.rs-plant-alignment-copy h2{
  margin:
    5px 0 10px;

  color:#edf6fc;

  font-size:
    clamp(1.35rem,2vw,1.8rem);

  line-height:1.22;
}


.rs-plant-alignment-copy p{
  margin:0;

  max-width:900px;

  color:#99afc1;

  font-size:.83rem;

  line-height:1.65;
}


.rs-plant-alignment-copy p + p{
  margin-top:9px;
}


.rs-plant-alignment-action{
  justify-self:end;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1150px){

  .rs-plant-environment-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .rs-plant-alignment-inner{
    grid-template-columns:
      68px
      minmax(0,1fr);
  }


  .rs-plant-alignment-action{
    grid-column:2;

    justify-self:start;
  }

}


@media (max-width:800px){

  .rs-plant-block-grid{
    grid-template-columns:
      1fr;
  }


  .rs-plant-environment-grid{
    grid-template-columns:
      1fr;
  }


  .rs-plant-strategy-band{
    grid-template-columns:
      1fr;
  }


  .rs-plant-alignment-inner{
    grid-template-columns:
      1fr;
  }


  .rs-plant-alignment-action{
    grid-column:auto;
  }

}


@media (max-width:560px){

  .rs-plant-block-head{
    grid-template-columns:
      38px
      42px
      minmax(0,1fr);

    gap:10px;
  }


  .rs-plant-block-number{
    width:38px;
    height:38px;
  }


  .rs-plant-block-icon{
    width:42px;
    height:42px;
  }


  .rs-plant-block-points{
    grid-template-columns:
      1fr;
  }

}


@media (prefers-reduced-motion:reduce){

  .rs-plant-block{
    transition:none;
  }


  .rs-plant-block:hover{
    transform:none;
  }

}



/* ============================================================
   INSTALLATION ASSURANCE
   ============================================================ */

.rs-install-assurance{
  position:relative;
}


.rs-install-assurance-stage{
  display:grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  margin-top:34px;

  overflow:hidden;

  border:
    1px solid
    rgba(125,211,252,.16);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(17,39,55,.98),
      rgba(7,24,37,.99)
    );

  box-shadow:
    0 18px 40px
    rgba(0,0,0,.14);
}


/* ============================================================
   ASSURANCE COLUMNS
   ============================================================ */

.rs-install-assurance-column{
  --install-accent:125,211,252;

  position:relative;

  min-width:0;

  padding:
    clamp(27px,2.6vw,39px)
    clamp(22px,2.4vw,34px)
    31px;

  background:
    linear-gradient(
      150deg,
      rgba(var(--install-accent),.075),
      rgba(var(--install-accent),.018) 42%,
      transparent 72%
    );
}


.rs-install-assurance-column + .rs-install-assurance-column{
  border-left:
    1px solid
    rgba(var(--install-accent),.15);
}


/* top rail */

.rs-install-assurance-column::before{
  content:"";

  position:absolute;

  top:0;
  left:0;
  right:0;

  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--install-accent),.95),
      rgba(var(--install-accent),.30) 62%,
      transparent
    );
}


/* ============================================================
   COLUMN IDENTITIES
   ============================================================ */

.rs-install-assurance-column--physical{
  --install-accent:125,211,252;
}


.rs-install-assurance-column--clarity{
  --install-accent:94,234,212;
}


.rs-install-assurance-column--verification{
  --install-accent:190,242,100;
}


/* ============================================================
   ASSURANCE HEADER
   ============================================================ */

.rs-install-assurance-head{
  display:grid;

  grid-template-columns:
    42px
    46px
    minmax(0,1fr);

  gap:12px;

  align-items:start;
}


.rs-install-assurance-number{
  display:grid;

  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(var(--install-accent),.30);

  border-radius:50%;

  background:
    rgba(var(--install-accent),.05);

  color:
    rgb(var(--install-accent));

  font-size:.63rem;
  font-weight:950;

  line-height:1;

  letter-spacing:.08em;
}


.rs-install-assurance-icon{
  display:grid;

  place-items:center;

  width:46px;
  height:46px;

  border:
    1px solid
    rgba(var(--install-accent),.30);

  border-radius:8px;

  background:
    rgba(var(--install-accent),.07);

  color:
    rgb(var(--install-accent));

  font-size:.98rem;
}


.rs-install-assurance-head-copy{
  min-width:0;
}


.rs-install-assurance-kicker{
  margin-bottom:7px;

  color:
    rgb(var(--install-accent));

  font-size:.60rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.16em;

  text-transform:uppercase;
}


.rs-install-assurance-column h3{
  margin:0;

  color:#edf5fb;

  font-size:
    clamp(1.01rem,1.2vw,1.2rem);

  line-height:1.28;
}


/* ============================================================
   ASSURANCE COPY
   ============================================================ */

.rs-install-assurance-copy{
  margin:
    23px 0 0;

  color:#9aafc1;

  font-size:.82rem;

  line-height:1.68;
}


.rs-install-assurance-copy + .rs-install-assurance-copy{
  margin-top:11px;
}


/* ============================================================
   ASSURANCE POINTS
   ============================================================ */

.rs-install-assurance-points{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px 13px;

  margin-top:22px;

  padding-top:18px;

  border-top:
    1px solid
    rgba(var(--install-accent),.12);
}


.rs-install-assurance-points span{
  display:flex;

  align-items:flex-start;

  gap:8px;

  color:#bbcede;

  font-size:.65rem;
  font-weight:800;

  line-height:1.35;

  letter-spacing:.04em;

  text-transform:uppercase;
}


.rs-install-assurance-points i{
  flex:0 0 auto;

  display:grid;

  place-items:center;

  width:19px;
  height:19px;

  margin-top:-1px;

  border:
    1.5px solid
    rgba(var(--install-accent),.68);

  border-radius:50%;

  color:
    rgb(var(--install-accent));

  font-size:.47rem;
}


/* ============================================================
   DOCUMENTATION + HANDOFF
   ============================================================ */

.rs-install-handoff{
  --install-accent:190,242,100;

  grid-column:1 / -1;

  display:grid;

  grid-template-columns:
    58px
    minmax(0,1fr)
    auto;

  gap:21px;

  align-items:center;

  padding:
    23px
    clamp(25px,3vw,39px);

  border-top:
    1px solid
    rgba(190,242,100,.18);

  background:
    linear-gradient(
      90deg,
      rgba(190,242,100,.065),
      rgba(10,33,45,.96) 31%,
      rgba(7,24,37,.99)
    );
}


.rs-install-handoff-icon{
  display:grid;

  place-items:center;

  width:58px;
  height:58px;

  border:
    1px solid
    rgba(190,242,100,.29);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:1.08rem;
}


.rs-install-handoff-copy{
  min-width:0;
}


.rs-install-handoff-copy strong{
  display:block;

  margin-bottom:5px;

  color:#edf6fc;

  font-size:1rem;

  line-height:1.35;
}


.rs-install-handoff-copy p{
  margin:0;

  max-width:820px;

  color:#94aabd;

  font-size:.79rem;

  line-height:1.6;
}


.rs-install-handoff-action{
  justify-self:end;
}


/* ============================================================
   COPPER + FIBER VERIFICATION
   ============================================================ */

.rs-install-verification{
  position:relative;
}


.rs-install-verification-heading{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(280px,440px);

  gap:
    clamp(25px,4vw,56px);

  align-items:end;
}


.rs-install-verification-heading h2{
  margin:
    6px 0 0;

  color:#edf5fb;

  font-size:
    clamp(1.35rem,2vw,1.8rem);

  line-height:1.23;
}


.rs-install-verification-heading > p{
  margin:0;

  color:#93a9bb;

  font-size:.82rem;

  line-height:1.65;
}


.rs-install-verification-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:13px;

  margin-top:28px;
}


.rs-install-verification-item{
  --verify-accent:125,211,252;

  display:grid;

  grid-template-columns:
    56px
    minmax(0,1fr);

  gap:19px;

  align-items:start;

  min-width:0;

  padding:
    23px 24px;

  border:
    1px solid
    rgba(var(--verify-accent),.19);

  border-radius:9px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--verify-accent),.07),
      rgba(10,31,45,.94) 40%,
      rgba(7,24,37,.98)
    );
}


.rs-install-verification-item--copper{
  --verify-accent:125,211,252;
}


.rs-install-verification-item--fiber{
  --verify-accent:94,234,212;
}


.rs-install-verification-icon{
  display:grid;

  place-items:center;

  width:56px;
  height:56px;

  border:
    1px solid
    rgba(var(--verify-accent),.30);

  border-radius:9px;

  background:
    rgba(var(--verify-accent),.065);

  color:
    rgb(var(--verify-accent));

  font-size:1.02rem;
}


.rs-install-verification-copy{
  min-width:0;
}


.rs-install-verification-kicker{
  margin-bottom:6px;

  color:
    rgb(var(--verify-accent));

  font-size:.59rem;
  font-weight:900;

  letter-spacing:.15em;

  text-transform:uppercase;
}


.rs-install-verification-copy h3{
  margin:0;

  color:#eaf3fa;

  font-size:1rem;

  line-height:1.3;
}


.rs-install-verification-copy p{
  margin:
    9px 0 0;

  color:#92a9bb;

  font-size:.75rem;

  line-height:1.6;
}


.rs-install-verification-tags{
  display:flex;

  flex-wrap:wrap;

  gap:7px;

  margin-top:14px;
}


.rs-install-verification-tags span{
  display:inline-flex;

  align-items:center;

  min-height:24px;

  padding:
    4px 8px;

  border:
    1px solid
    rgba(var(--verify-accent),.18);

  border-radius:999px;

  background:
    rgba(var(--verify-accent),.04);

  color:
    rgba(var(--verify-accent),.88);

  font-size:.54rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.05em;

  text-transform:uppercase;
}


/* ============================================================
   INSTALLATION ENVIRONMENTS
   ============================================================ */

.rs-install-environments{
  position:relative;
}


.rs-install-environment-grid{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:11px;

  margin-top:27px;
}


.rs-install-environment-item{
  --env-accent:125,211,252;

  position:relative;

  display:grid;

  grid-template-columns:
    44px
    minmax(0,1fr);

  gap:13px;

  min-width:0;

  padding:18px;

  border:
    1px solid
    rgba(var(--env-accent),.17);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--env-accent),.06),
      rgba(9,28,42,.91) 48%,
      rgba(7,23,35,.96)
    );
}


.rs-install-environment-item--office{
  --env-accent:125,211,252;
}


.rs-install-environment-item--data{
  --env-accent:190,242,100;
}


.rs-install-environment-item--industrial{
  --env-accent:94,234,212;
}


.rs-install-environment-item--multisite{
  --env-accent:147,197,253;
}


.rs-install-environment-icon{
  display:grid;

  place-items:center;

  width:44px;
  height:44px;

  border:
    1px solid
    rgba(var(--env-accent),.27);

  border-radius:8px;

  background:
    rgba(var(--env-accent),.06);

  color:
    rgb(var(--env-accent));

  font-size:.9rem;
}


.rs-install-environment-item h3{
  margin:
    1px 0 6px;

  color:#e7f0f8;

  font-size:.85rem;

  line-height:1.25;
}


.rs-install-environment-item p{
  margin:0;

  color:#8fa6b8;

  font-size:.69rem;

  line-height:1.52;
}


.rs-install-environment-tags{
  display:flex;

  flex-wrap:wrap;

  gap:5px;

  margin-top:11px;
}


.rs-install-environment-tags span{
  display:inline-flex;

  align-items:center;

  min-height:22px;

  padding:
    3px 7px;

  border:
    1px solid
    rgba(var(--env-accent),.17);

  border-radius:999px;

  background:
    rgba(var(--env-accent),.04);

  color:
    rgba(var(--env-accent),.88);

  font-size:.51rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.05em;

  text-transform:uppercase;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1150px){

  .rs-install-assurance-stage{
    grid-template-columns:
      1fr;
  }


  .rs-install-assurance-column + .rs-install-assurance-column{
    border-left:0;

    border-top:
      1px solid
      rgba(var(--install-accent),.15);
  }


  .rs-install-handoff{
    grid-template-columns:
      58px
      minmax(0,1fr);
  }


  .rs-install-handoff-action{
    grid-column:2;

    justify-self:start;
  }


  .rs-install-environment-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


@media (max-width:800px){

  .rs-install-verification-heading{
    grid-template-columns:
      1fr;
  }


  .rs-install-verification-grid{
    grid-template-columns:
      1fr;
  }


  .rs-install-environment-grid{
    grid-template-columns:
      1fr;
  }

}


@media (max-width:620px){

  .rs-install-assurance-head{
    grid-template-columns:
      38px
      42px
      minmax(0,1fr);

    gap:10px;
  }


  .rs-install-assurance-number{
    width:38px;
    height:38px;
  }


  .rs-install-assurance-icon{
    width:42px;
    height:42px;
  }


  .rs-install-assurance-points{
    grid-template-columns:
      1fr;
  }


  .rs-install-handoff{
    grid-template-columns:
      1fr;
  }


  .rs-install-handoff-action{
    grid-column:auto;
  }


  .rs-install-verification-item{
    grid-template-columns:
      1fr;
  }

}

/* ============================================================
   STRUCTURED CABLING IN CONTEXT
   ============================================================ */

.rs-cabling-context{
  position:relative;
}


/* ============================================================
   PHYSICAL PLANT BLOCK
   ============================================================ */

.rs-cabling-context-block{
  margin-top:34px;

  padding:
    clamp(25px,3vw,38px);

  border:
    1px solid
    rgba(125,211,252,.15);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(17,39,55,.97),
      rgba(7,24,37,.99)
    );

  box-shadow:
    0 17px 38px
    rgba(0,0,0,.13);
}


.rs-cabling-context-intro{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(300px,460px);

  gap:
    clamp(25px,4vw,58px);

  align-items:end;

  padding-bottom:24px;

  border-bottom:
    1px solid
    rgba(148,163,184,.11);
}


.rs-cabling-context-intro h3{
  margin:
    6px 0 0;

  color:#edf5fb;

  font-size:
    clamp(1.3rem,1.8vw,1.65rem);

  line-height:1.24;
}


.rs-cabling-context-intro > p{
  margin:0;

  color:#94aabc;

  font-size:.82rem;

  line-height:1.65;
}


/* ============================================================
   PHYSICAL PLANT ITEMS
   ============================================================ */

.rs-cabling-context-grid{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:11px;

  margin-top:24px;
}


.rs-cabling-context-item{
  --context-accent:125,211,252;

  position:relative;

  min-width:0;

  padding:20px;

  overflow:hidden;

  border:
    1px solid
    rgba(var(--context-accent),.18);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--context-accent),.07),
      rgba(9,29,43,.90) 46%,
      rgba(7,23,36,.97)
    );
}


.rs-cabling-context-item::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--context-accent),.92),
      rgba(var(--context-accent),.26) 62%,
      transparent
    );
}


.rs-cabling-context-item--copper{
  --context-accent:125,211,252;
}


.rs-cabling-context-item--fiber{
  --context-accent:94,234,212;
}


.rs-cabling-context-item--pathways{
  --context-accent:147,197,253;
}


.rs-cabling-context-item--distribution{
  --context-accent:190,242,100;
}


.rs-cabling-context-icon{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  margin-bottom:16px;

  border:
    1px solid
    rgba(var(--context-accent),.30);

  border-radius:8px;

  background:
    rgba(var(--context-accent),.065);

  color:
    rgb(var(--context-accent));

  font-size:.98rem;
}


.rs-cabling-context-copy{
  min-width:0;
}


.rs-cabling-context-kicker{
  margin-bottom:6px;

  color:
    rgb(var(--context-accent));

  font-size:.58rem;
  font-weight:900;

  line-height:1.2;

  letter-spacing:.15em;

  text-transform:uppercase;
}


.rs-cabling-context-item h4{
  margin:0;

  color:#e8f2fa;

  font-size:.91rem;

  line-height:1.3;
}


.rs-cabling-context-item p{
  margin:
    9px 0 0;

  color:#8fa6b8;

  font-size:.7rem;

  line-height:1.55;
}


.rs-cabling-context-tags{
  display:flex;

  flex-wrap:wrap;

  gap:6px;

  margin-top:13px;
}


.rs-cabling-context-tags span{
  display:inline-flex;

  align-items:center;

  min-height:22px;

  padding:
    3px 7px;

  border:
    1px solid
    rgba(var(--context-accent),.17);

  border-radius:999px;

  background:
    rgba(var(--context-accent),.04);

  color:
    rgba(var(--context-accent),.88);

  font-size:.5rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.05em;

  text-transform:uppercase;
}


/* ============================================================
   PLANT DESIGN LINK
   ============================================================ */

.rs-cabling-context-link{
  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:20px;

  margin-top:17px;

  padding-top:17px;

  border-top:
    1px solid
    rgba(148,163,184,.10);
}


.rs-cabling-context-link > div{
  display:flex;

  align-items:center;

  gap:10px;

  color:#a8bdce;

  font-size:.76rem;

  font-weight:700;
}


.rs-cabling-context-link > div i{
  color:#7dd3fc;
}


/* ============================================================
   ENVIRONMENTS
   ============================================================ */

.rs-cabling-environments{
  margin-top:42px;
}


.rs-cabling-environments-head{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(300px,470px);

  gap:
    clamp(26px,4vw,58px);

  align-items:end;
}


.rs-cabling-environments-head h3{
  margin:
    6px 0 0;

  color:#edf5fb;

  font-size:
    clamp(1.28rem,1.8vw,1.65rem);

  line-height:1.24;
}


.rs-cabling-environments-head > p{
  margin:0;

  color:#93aabc;

  font-size:.82rem;

  line-height:1.65;
}


.rs-cabling-environment-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:12px;

  margin-top:24px;
}


.rs-cabling-environment-item{
  --env-accent:125,211,252;

  display:grid;

  grid-template-columns:
    50px
    minmax(0,1fr);

  gap:16px;

  align-items:start;

  min-width:0;

  padding:20px 22px;

  border:
    1px solid
    rgba(var(--env-accent),.17);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--env-accent),.055),
      rgba(10,30,44,.87) 48%,
      rgba(7,23,36,.94)
    );
}


.rs-cabling-environment-item--office{
  --env-accent:125,211,252;
}


.rs-cabling-environment-item--retrofit{
  --env-accent:147,197,253;
}


.rs-cabling-environment-item--data{
  --env-accent:190,242,100;
}


.rs-cabling-environment-item--industrial{
  --env-accent:94,234,212;
}


.rs-cabling-environment-icon{
  display:grid;

  place-items:center;

  width:50px;
  height:50px;

  border:
    1px solid
    rgba(var(--env-accent),.28);

  border-radius:8px;

  background:
    rgba(var(--env-accent),.06);

  color:
    rgb(var(--env-accent));

  font-size:.95rem;
}


.rs-cabling-environment-item h4{
  margin:
    1px 0 6px;

  color:#e8f1f8;

  font-size:.91rem;

  line-height:1.25;
}


.rs-cabling-environment-item p{
  margin:0;

  color:#8fa6b8;

  font-size:.71rem;

  line-height:1.55;
}


.rs-cabling-environment-tags{
  display:flex;

  flex-wrap:wrap;

  gap:6px;

  margin-top:12px;
}


.rs-cabling-environment-tags span{
  display:inline-flex;

  align-items:center;

  min-height:22px;

  padding:
    3px 7px;

  border:
    1px solid
    rgba(var(--env-accent),.17);

  border-radius:999px;

  background:
    rgba(var(--env-accent),.04);

  color:
    rgba(var(--env-accent),.88);

  font-size:.51rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.05em;

  text-transform:uppercase;
}


/* ============================================================
   CLOSING CONTEXT CTA
   ============================================================ */

.rs-cabling-context-cta{
  display:grid;

  grid-template-columns:
    62px
    minmax(0,1fr)
    auto;

  gap:22px;

  align-items:center;

  margin-top:20px;

  padding:
    24px
    clamp(25px,3vw,38px);

  border:
    1px solid
    rgba(190,242,100,.20);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.065),
      rgba(10,33,46,.96) 28%,
      rgba(7,24,37,.99)
    );
}


.rs-cabling-context-cta-icon{
  display:grid;

  place-items:center;

  width:62px;
  height:62px;

  border:
    1px solid
    rgba(190,242,100,.28);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:1.12rem;
}


.rs-cabling-context-cta-copy{
  min-width:0;
}


.rs-cabling-context-cta-copy strong{
  display:block;

  margin-bottom:6px;

  color:#edf6fc;

  font-size:
    clamp(1rem,1.3vw,1.17rem);

  line-height:1.3;
}


.rs-cabling-context-cta-copy p{
  margin:0;

  max-width:820px;

  color:#95aabd;

  font-size:.78rem;

  line-height:1.6;
}


.rs-cabling-context-cta-action{
  justify-self:end;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1150px){

  .rs-cabling-context-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .rs-cabling-context-cta{
    grid-template-columns:
      62px
      minmax(0,1fr);
  }


  .rs-cabling-context-cta-action{
    grid-column:2;

    justify-self:start;
  }

}


@media (max-width:800px){

  .rs-cabling-context-intro,
  .rs-cabling-environments-head{
    grid-template-columns:
      1fr;
  }


  .rs-cabling-environment-grid{
    grid-template-columns:
      1fr;
  }


  .rs-cabling-context-link{
    align-items:flex-start;

    flex-direction:column;
  }

}


@media (max-width:620px){

  .rs-cabling-context-grid{
    grid-template-columns:
      1fr;
  }


  .rs-cabling-context-cta{
    grid-template-columns:
      1fr;
  }


  .rs-cabling-context-cta-action{
    grid-column:auto;
  }

}

/* ============================================================
   WIRELESS DESIGN — INDOOR / OUTDOOR ENVIRONMENTS
   ============================================================ */

.rs-wireless-environments{
  position:relative;
}


/* ============================================================
   MAIN ENVIRONMENT GRID
   ============================================================ */

.rs-wireless-environment-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:14px;

  margin-top:34px;
}


.rs-wireless-environment-card{
  --wireless-env-accent:125,211,252;

  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;

  overflow:hidden;

  padding:
    clamp(27px,2.7vw,39px);

  border:
    1px solid
    rgba(var(--wireless-env-accent),.20);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--wireless-env-accent),.08) 0%,
      rgba(14,35,50,.94) 34%,
      rgba(7,24,37,.99) 100%
    );

  box-shadow:
    0 16px 36px
    rgba(0,0,0,.13);

  transition:
    transform .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
}


.rs-wireless-environment-card:hover{
  transform:
    translateY(-2px);

  border-color:
    rgba(var(--wireless-env-accent),.34);

  box-shadow:
    0 20px 40px
    rgba(0,0,0,.17);
}


/* accent rail */

.rs-wireless-environment-card::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--wireless-env-accent),.95),
      rgba(var(--wireless-env-accent),.32) 60%,
      transparent
    );
}


/* ============================================================
   CARD IDENTITIES
   ============================================================ */

.rs-wireless-environment-card--indoor{
  --wireless-env-accent:125,211,252;
}


.rs-wireless-environment-card--outdoor{
  --wireless-env-accent:190,242,100;
}


/* ============================================================
   CARD HEADER
   ============================================================ */

.rs-wireless-environment-head{
  display:grid;

  grid-template-columns:
    42px
    48px
    minmax(0,1fr);

  gap:13px;

  align-items:start;
}


.rs-wireless-environment-number{
  display:grid;

  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(var(--wireless-env-accent),.30);

  border-radius:50%;

  background:
    rgba(var(--wireless-env-accent),.05);

  color:
    rgb(var(--wireless-env-accent));

  font-size:.63rem;
  font-weight:950;

  line-height:1;

  letter-spacing:.08em;
}


.rs-wireless-environment-icon{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(var(--wireless-env-accent),.30);

  border-radius:9px;

  background:
    rgba(var(--wireless-env-accent),.07);

  color:
    rgb(var(--wireless-env-accent));

  font-size:1rem;
}


.rs-wireless-environment-head-copy{
  min-width:0;
}


.rs-wireless-environment-kicker{
  margin-bottom:7px;

  color:
    rgb(var(--wireless-env-accent));

  font-size:.61rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.16em;

  text-transform:uppercase;
}


.rs-wireless-environment-card h3{
  margin:0;

  color:#edf5fb;

  font-size:
    clamp(1.06rem,1.35vw,1.28rem);

  line-height:1.28;
}


/* ============================================================
   BODY COPY
   ============================================================ */

.rs-wireless-environment-body{
  margin-top:23px;
}


.rs-wireless-environment-body p{
  margin:0;

  color:#98aebf;

  font-size:.82rem;

  line-height:1.68;
}


.rs-wireless-environment-body p + p{
  margin-top:12px;
}


/* ============================================================
   FEATURE POINTS
   ============================================================ */

.rs-wireless-environment-points{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px 15px;

  margin-top:24px;

  padding-top:18px;

  border-top:
    1px solid
    rgba(var(--wireless-env-accent),.13);
}


.rs-wireless-environment-points span{
  display:flex;

  align-items:center;

  gap:8px;

  min-width:0;

  color:#b9cddd;

  font-size:.66rem;
  font-weight:800;

  line-height:1.35;

  letter-spacing:.045em;

  text-transform:uppercase;
}


.rs-wireless-environment-points i{
  flex:0 0 auto;

  display:grid;

  place-items:center;

  width:19px;
  height:19px;

  border:
    1.5px solid
    rgba(var(--wireless-env-accent),.68);

  border-radius:50%;

  color:
    rgb(var(--wireless-env-accent));

  font-size:.47rem;
}


/* ============================================================
   DESIGN FOCUS BAND
   ============================================================ */

.rs-wireless-environment-focus{
  margin-top:auto;

  padding-top:20px;
}


.rs-wireless-environment-focus span{
  display:block;

  margin-bottom:5px;

  color:
    rgba(var(--wireless-env-accent),.84);

  font-size:.54rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.15em;

  text-transform:uppercase;
}


.rs-wireless-environment-focus strong{
  display:block;

  color:#dce8f1;

  font-size:.76rem;
  font-weight:750;

  line-height:1.5;
}


/* ============================================================
   SITE TYPE STRIP
   ============================================================ */

.rs-wireless-environment-types{
  display:grid;

  grid-template-columns:
    auto
    minmax(0,1fr);

  gap:
    clamp(20px,3vw,36px);

  align-items:center;

  margin-top:15px;

  padding:
    20px
    clamp(22px,3vw,34px);

  border:
    1px solid
    rgba(125,211,252,.14);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(125,211,252,.045),
      rgba(9,29,43,.94) 34%,
      rgba(7,23,36,.98)
    );
}


.rs-wireless-environment-types-label{
  display:flex;

  align-items:center;

  gap:10px;

  color:#7dd3fc;

  font-size:.59rem;
  font-weight:900;

  letter-spacing:.14em;

  white-space:nowrap;
}


.rs-wireless-environment-types-label i{
  display:grid;

  place-items:center;

  width:34px;
  height:34px;

  border:
    1px solid
    rgba(125,211,252,.23);

  border-radius:50%;

  background:
    rgba(125,211,252,.05);
}


.rs-wireless-environment-type-grid{
  display:grid;

  grid-template-columns:
    repeat(6,minmax(0,1fr));

  gap:7px;
}


.rs-wireless-environment-type-grid span{
  display:flex;

  align-items:center;

  justify-content:center;

  gap:7px;

  min-height:34px;

  padding:
    6px 8px;

  border:
    1px solid
    rgba(148,163,184,.13);

  border-radius:6px;

  background:
    rgba(2,16,27,.26);

  color:#a9bdcc;

  font-size:.58rem;
  font-weight:800;

  line-height:1.2;

  text-align:center;

  text-transform:uppercase;
}


.rs-wireless-environment-type-grid i{
  color:#7dd3fc;

  font-size:.65rem;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1050px){

  .rs-wireless-environment-type-grid{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

}


@media (max-width:800px){

  .rs-wireless-environment-grid{
    grid-template-columns:
      1fr;
  }


  .rs-wireless-environment-types{
    grid-template-columns:
      1fr;
  }

}


@media (max-width:560px){

  .rs-wireless-environment-head{
    grid-template-columns:
      38px
      42px
      minmax(0,1fr);

    gap:10px;
  }


  .rs-wireless-environment-number{
    width:38px;
    height:38px;
  }


  .rs-wireless-environment-icon{
    width:42px;
    height:42px;
  }


  .rs-wireless-environment-points{
    grid-template-columns:
      1fr;
  }


  .rs-wireless-environment-type-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


@media (prefers-reduced-motion:reduce){

  .rs-wireless-environment-card{
    transition:none;
  }


  .rs-wireless-environment-card:hover{
    transform:none;
  }

}

/* ============================================================
   RF DIAGNOSTICS
   ============================================================ */

.rs-rf-diagnostics{
  position:relative;
}


/* ============================================================
   MEASUREMENT METHOD GRID
   ============================================================ */

.rs-rf-method-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:14px;

  margin-top:34px;
}


.rs-rf-method{
  --rf-accent:125,211,252;

  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;

  overflow:hidden;

  padding:
    clamp(27px,2.7vw,39px);

  border:
    1px solid
    rgba(var(--rf-accent),.20);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--rf-accent),.08) 0%,
      rgba(14,35,50,.94) 35%,
      rgba(7,24,37,.99) 100%
    );

  box-shadow:
    0 16px 36px
    rgba(0,0,0,.13);

  transition:
    transform .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
}


.rs-rf-method:hover{
  transform:
    translateY(-2px);

  border-color:
    rgba(var(--rf-accent),.34);

  box-shadow:
    0 20px 40px
    rgba(0,0,0,.17);
}


.rs-rf-method::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--rf-accent),.95),
      rgba(var(--rf-accent),.32) 60%,
      transparent
    );
}


/* ============================================================
   METHOD IDENTITIES
   ============================================================ */

.rs-rf-method--wifi{
  --rf-accent:125,211,252;
}


.rs-rf-method--spectrum{
  --rf-accent:190,242,100;
}


/* ============================================================
   METHOD HEADER
   ============================================================ */

.rs-rf-method-head{
  display:grid;

  grid-template-columns:
    42px
    48px
    minmax(0,1fr);

  gap:13px;

  align-items:start;
}


.rs-rf-method-number{
  display:grid;

  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(var(--rf-accent),.30);

  border-radius:50%;

  background:
    rgba(var(--rf-accent),.05);

  color:
    rgb(var(--rf-accent));

  font-size:.63rem;
  font-weight:950;

  line-height:1;

  letter-spacing:.08em;
}


.rs-rf-method-icon{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(var(--rf-accent),.30);

  border-radius:9px;

  background:
    rgba(var(--rf-accent),.07);

  color:
    rgb(var(--rf-accent));

  font-size:1rem;
}


.rs-rf-method-head-copy{
  min-width:0;
}


.rs-rf-method-kicker{
  margin-bottom:7px;

  color:
    rgb(var(--rf-accent));

  font-size:.61rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.16em;

  text-transform:uppercase;
}


.rs-rf-method h3{
  margin:0;

  color:#edf5fb;

  font-size:
    clamp(1.06rem,1.35vw,1.28rem);

  line-height:1.28;
}


/* ============================================================
   METHOD BODY
   ============================================================ */

.rs-rf-method-body{
  margin-top:23px;
}


.rs-rf-method-body p{
  margin:0;

  color:#98aebf;

  font-size:.82rem;

  line-height:1.68;
}


.rs-rf-method-body p + p{
  margin-top:12px;
}


/* ============================================================
   METHOD POINTS
   ============================================================ */

.rs-rf-method-points{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px 15px;

  margin-top:24px;

  padding-top:18px;

  border-top:
    1px solid
    rgba(var(--rf-accent),.13);
}


.rs-rf-method-points span{
  display:flex;

  align-items:center;

  gap:8px;

  min-width:0;

  color:#b9cddd;

  font-size:.66rem;
  font-weight:800;

  line-height:1.35;

  letter-spacing:.045em;

  text-transform:uppercase;
}


.rs-rf-method-points i{
  flex:0 0 auto;

  display:grid;

  place-items:center;

  width:19px;
  height:19px;

  border:
    1.5px solid
    rgba(var(--rf-accent),.68);

  border-radius:50%;

  color:
    rgb(var(--rf-accent));

  font-size:.47rem;
}


/* ============================================================
   METHOD QUESTION
   ============================================================ */

.rs-rf-method-focus{
  margin-top:auto;

  padding-top:21px;
}


.rs-rf-method-focus span{
  display:block;

  margin-bottom:5px;

  color:
    rgba(var(--rf-accent),.84);

  font-size:.54rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.15em;

  text-transform:uppercase;
}


.rs-rf-method-focus strong{
  display:block;

  color:#dce8f1;

  font-size:.77rem;

  line-height:1.5;
}


/* ============================================================
   DIAGNOSTIC FINDINGS
   ============================================================ */

.rs-rf-findings{
  margin-top:42px;

  padding-top:31px;

  border-top:
    1px solid
    rgba(148,163,184,.11);
}


.rs-rf-findings-head{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(300px,460px);

  gap:
    clamp(25px,4vw,58px);

  align-items:end;
}


.rs-rf-findings-head h3{
  margin:
    6px 0 0;

  color:#edf5fb;

  font-size:
    clamp(1.28rem,1.8vw,1.65rem);

  line-height:1.24;
}


.rs-rf-findings-head > p{
  margin:0;

  color:#93aabc;

  font-size:.82rem;

  line-height:1.65;
}


/* ============================================================
   FINDING GRID
   ============================================================ */

.rs-rf-findings-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:12px;

  margin-top:24px;
}


.rs-rf-finding{
  --finding-accent:125,211,252;

  display:grid;

  grid-template-columns:
    50px
    minmax(0,1fr);

  gap:16px;

  align-items:start;

  min-width:0;

  padding:20px 22px;

  border:
    1px solid
    rgba(var(--finding-accent),.17);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--finding-accent),.055),
      rgba(10,30,44,.89) 48%,
      rgba(7,23,36,.96)
    );
}


/* ============================================================
   FINDING IDENTITIES
   ============================================================ */

.rs-rf-finding--interference{
  --finding-accent:190,242,100;
}


.rs-rf-finding--congestion{
  --finding-accent:94,234,212;
}


.rs-rf-finding--coverage{
  --finding-accent:125,211,252;
}


.rs-rf-finding--roaming{
  --finding-accent:147,197,253;
}


/* ============================================================
   FINDING CONTENT
   ============================================================ */

.rs-rf-finding-icon{
  display:grid;

  place-items:center;

  width:50px;
  height:50px;

  border:
    1px solid
    rgba(var(--finding-accent),.28);

  border-radius:8px;

  background:
    rgba(var(--finding-accent),.06);

  color:
    rgb(var(--finding-accent));

  font-size:.95rem;
}


.rs-rf-finding-kicker{
  margin-bottom:5px;

  color:
    rgb(var(--finding-accent));

  font-size:.55rem;
  font-weight:900;

  line-height:1.2;

  letter-spacing:.14em;

  text-transform:uppercase;
}


.rs-rf-finding h4{
  margin:0;

  color:#e8f1f8;

  font-size:.91rem;

  line-height:1.3;
}


.rs-rf-finding p{
  margin:
    8px 0 0;

  color:#8fa6b8;

  font-size:.71rem;

  line-height:1.55;
}


.rs-rf-finding-tags{
  display:flex;

  flex-wrap:wrap;

  gap:6px;

  margin-top:12px;
}


.rs-rf-finding-tags span{
  display:inline-flex;

  align-items:center;

  min-height:22px;

  padding:
    3px 7px;

  border:
    1px solid
    rgba(var(--finding-accent),.17);

  border-radius:999px;

  background:
    rgba(var(--finding-accent),.04);

  color:
    rgba(var(--finding-accent),.88);

  font-size:.50rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.05em;

  text-transform:uppercase;
}


/* ============================================================
   DIAGNOSTIC PRINCIPLE BAND
   ============================================================ */

.rs-rf-diagnostic-band{
  display:grid;

  grid-template-columns:
    58px
    minmax(0,1fr);

  gap:20px;

  align-items:center;

  margin-top:17px;

  padding:
    22px
    clamp(24px,3vw,36px);

  border:
    1px solid
    rgba(190,242,100,.18);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.055),
      rgba(10,31,44,.96) 34%,
      rgba(7,24,37,.99)
    );
}


.rs-rf-diagnostic-band-icon{
  display:grid;

  place-items:center;

  width:58px;
  height:58px;

  border:
    1px solid
    rgba(190,242,100,.27);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:1.05rem;
}


.rs-rf-diagnostic-band-copy strong{
  display:block;

  margin-bottom:5px;

  color:#edf6fc;

  font-size:1rem;

  line-height:1.35;
}


.rs-rf-diagnostic-band-copy p{
  margin:0;

  max-width:900px;

  color:#94aabd;

  font-size:.79rem;

  line-height:1.6;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:850px){

  .rs-rf-method-grid{
    grid-template-columns:
      1fr;
  }


  .rs-rf-findings-head{
    grid-template-columns:
      1fr;
  }

}


@media (max-width:700px){

  .rs-rf-findings-grid{
    grid-template-columns:
      1fr;
  }

}


@media (max-width:560px){

  .rs-rf-method-head{
    grid-template-columns:
      38px
      42px
      minmax(0,1fr);

    gap:10px;
  }


  .rs-rf-method-number{
    width:38px;
    height:38px;
  }


  .rs-rf-method-icon{
    width:42px;
    height:42px;
  }


  .rs-rf-method-points{
    grid-template-columns:
      1fr;
  }


  .rs-rf-diagnostic-band{
    grid-template-columns:
      1fr;
  }

}


@media (prefers-reduced-motion:reduce){

  .rs-rf-method{
    transition:none;
  }


  .rs-rf-method:hover{
    transform:none;
  }

}

/* ============================================================
   WI-FI DEPLOYMENT + OPERATIONAL PERFORMANCE
   ============================================================ */

.rs-wifi-operations{
  position:relative;
}


/* ============================================================
   DEPLOYMENT / OPTIMIZATION GRID
   ============================================================ */

.rs-wifi-operations-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:14px;

  margin-top:34px;
}


.rs-wifi-operation{
  --wifi-op-accent:125,211,252;

  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;

  overflow:hidden;

  padding:
    clamp(27px,2.7vw,39px);

  border:
    1px solid
    rgba(var(--wifi-op-accent),.20);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--wifi-op-accent),.08) 0%,
      rgba(14,35,50,.94) 35%,
      rgba(7,24,37,.99) 100%
    );

  box-shadow:
    0 16px 36px
    rgba(0,0,0,.13);

  transition:
    transform .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
}


.rs-wifi-operation:hover{
  transform:
    translateY(-2px);

  border-color:
    rgba(var(--wifi-op-accent),.34);

  box-shadow:
    0 20px 40px
    rgba(0,0,0,.17);
}


.rs-wifi-operation::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--wifi-op-accent),.95),
      rgba(var(--wifi-op-accent),.32) 60%,
      transparent
    );
}


/* ============================================================
   OPERATION IDENTITIES
   ============================================================ */

.rs-wifi-operation--deploy{
  --wifi-op-accent:125,211,252;
}


.rs-wifi-operation--optimize{
  --wifi-op-accent:190,242,100;
}


/* ============================================================
   OPERATION HEADER
   ============================================================ */

.rs-wifi-operation-head{
  display:grid;

  grid-template-columns:
    42px
    48px
    minmax(0,1fr);

  gap:13px;

  align-items:start;
}


.rs-wifi-operation-number{
  display:grid;

  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(var(--wifi-op-accent),.30);

  border-radius:50%;

  background:
    rgba(var(--wifi-op-accent),.05);

  color:
    rgb(var(--wifi-op-accent));

  font-size:.63rem;
  font-weight:950;

  line-height:1;

  letter-spacing:.08em;
}


.rs-wifi-operation-icon{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(var(--wifi-op-accent),.30);

  border-radius:9px;

  background:
    rgba(var(--wifi-op-accent),.07);

  color:
    rgb(var(--wifi-op-accent));

  font-size:1rem;
}


.rs-wifi-operation-head-copy{
  min-width:0;
}


.rs-wifi-operation-kicker{
  margin-bottom:7px;

  color:
    rgb(var(--wifi-op-accent));

  font-size:.61rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.16em;

  text-transform:uppercase;
}


.rs-wifi-operation h3{
  margin:0;

  color:#edf5fb;

  font-size:
    clamp(1.06rem,1.35vw,1.28rem);

  line-height:1.28;
}


/* ============================================================
   OPERATION BODY
   ============================================================ */

.rs-wifi-operation-body{
  margin-top:23px;
}


.rs-wifi-operation-body p{
  margin:0;

  color:#98aebf;

  font-size:.82rem;

  line-height:1.68;
}


.rs-wifi-operation-body p + p{
  margin-top:12px;
}


/* ============================================================
   OPERATION POINTS
   ============================================================ */

.rs-wifi-operation-points{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px 15px;

  margin-top:24px;

  padding-top:18px;

  border-top:
    1px solid
    rgba(var(--wifi-op-accent),.13);
}


.rs-wifi-operation-points span{
  display:flex;

  align-items:center;

  gap:8px;

  min-width:0;

  color:#b9cddd;

  font-size:.66rem;
  font-weight:800;

  line-height:1.35;

  letter-spacing:.045em;

  text-transform:uppercase;
}


.rs-wifi-operation-points i{
  flex:0 0 auto;

  display:grid;

  place-items:center;

  width:19px;
  height:19px;

  border:
    1.5px solid
    rgba(var(--wifi-op-accent),.68);

  border-radius:50%;

  color:
    rgb(var(--wifi-op-accent));

  font-size:.47rem;
}


/* ============================================================
   OPERATION QUESTION
   ============================================================ */

.rs-wifi-operation-focus{
  margin-top:auto;

  padding-top:21px;
}


.rs-wifi-operation-focus span{
  display:block;

  margin-bottom:5px;

  color:
    rgba(var(--wifi-op-accent),.84);

  font-size:.54rem;
  font-weight:900;

  line-height:1;

  letter-spacing:.15em;

  text-transform:uppercase;
}


.rs-wifi-operation-focus strong{
  display:block;

  color:#dce8f1;

  font-size:.77rem;

  line-height:1.5;
}


/* ============================================================
   LIVE OPERATIONAL ISSUES
   ============================================================ */

.rs-wifi-issues{
  margin-top:42px;

  padding-top:31px;

  border-top:
    1px solid
    rgba(148,163,184,.11);
}


.rs-wifi-issues-head{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(300px,470px);

  gap:
    clamp(25px,4vw,58px);

  align-items:end;
}


.rs-wifi-issues-head h3{
  margin:
    6px 0 0;

  color:#edf5fb;

  font-size:
    clamp(1.28rem,1.8vw,1.65rem);

  line-height:1.24;
}


.rs-wifi-issues-head > p{
  margin:0;

  color:#93aabc;

  font-size:.82rem;

  line-height:1.65;
}


/* ============================================================
   ISSUE GRID
   ============================================================ */

.rs-wifi-issues-grid{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:12px;

  margin-top:24px;
}


.rs-wifi-issue{
  --wifi-issue-accent:125,211,252;

  display:grid;

  grid-template-columns:
    50px
    minmax(0,1fr);

  gap:16px;

  align-items:start;

  min-width:0;

  padding:20px 22px;

  border:
    1px solid
    rgba(var(--wifi-issue-accent),.17);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--wifi-issue-accent),.055),
      rgba(10,30,44,.89) 48%,
      rgba(7,23,36,.96)
    );
}


/* ============================================================
   ISSUE IDENTITIES
   ============================================================ */

.rs-wifi-issue--roaming{
  --wifi-issue-accent:147,197,253;
}


.rs-wifi-issue--coverage{
  --wifi-issue-accent:125,211,252;
}


.rs-wifi-issue--congestion{
  --wifi-issue-accent:94,234,212;
}


.rs-wifi-issue--drift{
  --wifi-issue-accent:190,242,100;
}


/* ============================================================
   ISSUE CONTENT
   ============================================================ */

.rs-wifi-issue-icon{
  display:grid;

  place-items:center;

  width:50px;
  height:50px;

  border:
    1px solid
    rgba(var(--wifi-issue-accent),.28);

  border-radius:8px;

  background:
    rgba(var(--wifi-issue-accent),.06);

  color:
    rgb(var(--wifi-issue-accent));

  font-size:.95rem;
}


.rs-wifi-issue-kicker{
  margin-bottom:5px;

  color:
    rgb(var(--wifi-issue-accent));

  font-size:.55rem;
  font-weight:900;

  line-height:1.2;

  letter-spacing:.14em;

  text-transform:uppercase;
}


.rs-wifi-issue h4{
  margin:0;

  color:#e8f1f8;

  font-size:.91rem;

  line-height:1.3;
}


.rs-wifi-issue p{
  margin:
    8px 0 0;

  color:#8fa6b8;

  font-size:.71rem;

  line-height:1.55;
}


.rs-wifi-issue-tags{
  display:flex;

  flex-wrap:wrap;

  gap:6px;

  margin-top:12px;
}


.rs-wifi-issue-tags span{
  display:inline-flex;

  align-items:center;

  min-height:22px;

  padding:
    3px 7px;

  border:
    1px solid
    rgba(var(--wifi-issue-accent),.17);

  border-radius:999px;

  background:
    rgba(var(--wifi-issue-accent),.04);

  color:
    rgba(var(--wifi-issue-accent),.88);

  font-size:.50rem;
  font-weight:850;

  line-height:1;

  letter-spacing:.05em;

  text-transform:uppercase;
}


/* ============================================================
   PERFORMANCE PRINCIPLE
   ============================================================ */

.rs-wifi-performance-band{
  display:grid;

  grid-template-columns:
    58px
    minmax(0,1fr);

  gap:20px;

  align-items:center;

  margin-top:17px;

  padding:
    22px
    clamp(24px,3vw,36px);

  border:
    1px solid
    rgba(190,242,100,.18);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.055),
      rgba(10,31,44,.96) 34%,
      rgba(7,24,37,.99)
    );
}


.rs-wifi-performance-band-icon{
  display:grid;

  place-items:center;

  width:58px;
  height:58px;

  border:
    1px solid
    rgba(190,242,100,.27);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:1.05rem;
}


.rs-wifi-performance-band-copy strong{
  display:block;

  margin-bottom:5px;

  color:#edf6fc;

  font-size:1rem;

  line-height:1.35;
}


.rs-wifi-performance-band-copy p{
  margin:0;

  max-width:900px;

  color:#94aabd;

  font-size:.79rem;

  line-height:1.6;
}


/* ============================================================
   PHASED / MULTI-SITE ROLLOUT
   ============================================================ */

.rs-wifi-rollout{
  display:grid;

  grid-template-columns:
    62px
    minmax(0,1fr)
    auto;

  gap:22px;

  align-items:center;

  margin-top:18px;

  padding:
    25px
    clamp(25px,3vw,39px);

  border:
    1px solid
    rgba(125,211,252,.18);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(125,211,252,.06),
      rgba(10,33,46,.96) 28%,
      rgba(7,24,37,.99)
    );
}


.rs-wifi-rollout-icon{
  display:grid;

  place-items:center;

  width:62px;
  height:62px;

  border:
    1px solid
    rgba(125,211,252,.28);

  border-radius:50%;

  background:
    rgba(125,211,252,.055);

  color:#7dd3fc;

  font-size:1.12rem;
}


.rs-wifi-rollout-copy{
  min-width:0;
}


.rs-wifi-rollout-copy h3{
  margin:
    5px 0 7px;

  color:#edf6fc;

  font-size:
    clamp(1.05rem,1.35vw,1.24rem);

  line-height:1.28;
}


.rs-wifi-rollout-copy p{
  margin:0;

  max-width:840px;

  color:#95aabd;

  font-size:.79rem;

  line-height:1.6;
}


.rs-wifi-rollout-action{
  justify-self:end;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1050px){

  .rs-wifi-rollout{
    grid-template-columns:
      62px
      minmax(0,1fr);
  }


  .rs-wifi-rollout-action{
    grid-column:2;

    justify-self:start;
  }

}


@media (max-width:850px){

  .rs-wifi-operations-grid{
    grid-template-columns:
      1fr;
  }


  .rs-wifi-issues-head{
    grid-template-columns:
      1fr;
  }

}


@media (max-width:700px){

  .rs-wifi-issues-grid{
    grid-template-columns:
      1fr;
  }

}


@media (max-width:560px){

  .rs-wifi-operation-head{
    grid-template-columns:
      38px
      42px
      minmax(0,1fr);

    gap:10px;
  }


  .rs-wifi-operation-number{
    width:38px;
    height:38px;
  }


  .rs-wifi-operation-icon{
    width:42px;
    height:42px;
  }


  .rs-wifi-operation-points{
    grid-template-columns:
      1fr;
  }


  .rs-wifi-performance-band,
  .rs-wifi-rollout{
    grid-template-columns:
      1fr;
  }


  .rs-wifi-rollout-action{
    grid-column:auto;
  }

}


@media (prefers-reduced-motion:reduce){

  .rs-wifi-operation{
    transition:none;
  }


  .rs-wifi-operation:hover{
    transform:none;
  }

}

.rs-wireless-overview-close{
  display:grid;
  grid-template-columns:62px minmax(0,1fr) auto;
  gap:22px;
  align-items:center;

  margin-top:18px;

  padding:
    25px
    clamp(25px,3vw,39px);

  border:
    1px solid
    rgba(190,242,100,.20);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.06),
      rgba(10,33,46,.96) 28%,
      rgba(7,24,37,.99)
    );
}


.rs-wireless-overview-close-icon{
  display:grid;
  place-items:center;

  width:62px;
  height:62px;

  border:
    1px solid
    rgba(190,242,100,.28);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:1.12rem;
}


.rs-wireless-overview-close-copy{
  min-width:0;
}


.rs-wireless-overview-close-copy strong{
  display:block;

  margin-bottom:6px;

  color:#edf6fc;

  font-size:
    clamp(1rem,1.3vw,1.17rem);

  line-height:1.3;
}


.rs-wireless-overview-close-copy p{
  margin:0;

  max-width:820px;

  color:#95aabd;

  font-size:.78rem;

  line-height:1.6;
}


.rs-wireless-overview-close-action{
  justify-self:end;
}


@media (max-width:1050px){

  .rs-wireless-overview-close{
    grid-template-columns:
      62px
      minmax(0,1fr);
  }

  .rs-wireless-overview-close-action{
    grid-column:2;
    justify-self:start;
  }

}


@media (max-width:560px){

  .rs-wireless-overview-close{
    grid-template-columns:1fr;
  }

  .rs-wireless-overview-close-action{
    grid-column:auto;
  }

}

/* ============================================================
   BUYBACK — PRACTICAL GUIDANCE + RECOVERY VALUE
   ============================================================ */

.rs-buyback-practical{
  position:relative;
}


/* ============================================================
   SHIPPING LAYOUT
   ============================================================ */

.rs-buyback-shipping-layout{
  display:grid;

  grid-template-columns:
    minmax(0,1.45fr)
    minmax(310px,.75fr);

  gap:14px;

  margin-top:34px;
}


/* ============================================================
   PRIMARY SHIPPING PANEL
   ============================================================ */

.rs-buyback-shipping-primary{
  min-width:0;

  padding:
    clamp(26px,2.8vw,38px);

  border:
    1px solid
    rgba(125,211,252,.18);

  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(125,211,252,.065),
      rgba(13,34,49,.94) 36%,
      rgba(7,24,37,.99)
    );

  box-shadow:
    0 16px 36px
    rgba(0,0,0,.13);
}


.rs-buyback-shipping-primary-head{
  display:grid;

  grid-template-columns:
    52px
    minmax(0,1fr);

  gap:16px;

  align-items:center;
}


.rs-buyback-shipping-icon{
  display:grid;

  place-items:center;

  width:52px;
  height:52px;

  border:
    1px solid
    rgba(125,211,252,.28);

  border-radius:9px;

  background:
    rgba(125,211,252,.06);

  color:#7dd3fc;

  font-size:1rem;
}


.rs-buyback-shipping-kicker{
  margin-bottom:6px;

  color:#7dd3fc;

  font-size:.59rem;
  font-weight:900;

  line-height:1.2;

  letter-spacing:.15em;

  text-transform:uppercase;
}


.rs-buyback-shipping-primary h3{
  margin:0;

  color:#edf5fb;

  font-size:
    clamp(1.08rem,1.4vw,1.3rem);

  line-height:1.3;
}


/* ============================================================
   SHIPPING CHECK GRID
   ============================================================ */

.rs-buyback-shipping-checks{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:10px;

  margin-top:24px;
}


.rs-buyback-shipping-check{
  display:grid;

  grid-template-columns:
    34px
    minmax(0,1fr);

  gap:11px;

  align-items:start;

  min-width:0;

  padding:14px;

  border:
    1px solid
    rgba(125,211,252,.10);

  border-radius:7px;

  background:
    rgba(3,18,29,.28);
}


.rs-buyback-shipping-check > i{
  display:grid;

  place-items:center;

  width:34px;
  height:34px;

  border:
    1px solid
    rgba(125,211,252,.20);

  border-radius:7px;

  background:
    rgba(125,211,252,.045);

  color:#7dd3fc;

  font-size:.72rem;
}


.rs-buyback-shipping-check span{
  min-width:0;
}


.rs-buyback-shipping-check strong{
  display:block;

  color:#dce8f1;

  font-size:.72rem;

  line-height:1.3;
}


.rs-buyback-shipping-check small{
  display:block;

  margin-top:4px;

  color:#8299ab;

  font-size:.62rem;

  line-height:1.5;
}


/* ============================================================
   FREIGHT PANEL
   ============================================================ */

.rs-buyback-freight{
  min-width:0;

  padding:
    clamp(25px,2.6vw,34px);

  border:
    1px solid
    rgba(190,242,100,.19);

  border-radius:10px;

  background:
    linear-gradient(
      150deg,
      rgba(190,242,100,.07),
      rgba(14,35,48,.94) 38%,
      rgba(7,24,37,.99)
    );

  box-shadow:
    0 16px 36px
    rgba(0,0,0,.13);
}


.rs-buyback-freight-head{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:14px;

  align-items:start;
}


.rs-buyback-freight-icon{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(190,242,100,.28);

  border-radius:9px;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:.95rem;
}


.rs-buyback-freight-kicker{
  margin-bottom:6px;

  color:#bef264;

  font-size:.57rem;
  font-weight:900;

  line-height:1.25;

  letter-spacing:.14em;

  text-transform:uppercase;
}


.rs-buyback-freight h3{
  margin:0;

  color:#edf5fb;

  font-size:1rem;

  line-height:1.33;
}


/* ============================================================
   FREIGHT WEIGHT ALERT
   ============================================================ */

.rs-buyback-freight-alert{
  display:grid;

  grid-template-columns:
    68px
    minmax(0,1fr);

  gap:15px;

  align-items:center;

  margin-top:23px;

  padding:
    17px;

  border:
    1px solid
    rgba(190,242,100,.16);

  border-radius:8px;

  background:
    rgba(190,242,100,.035);
}


.rs-buyback-freight-weight{
  display:grid;

  place-items:center;

  width:68px;
  height:68px;

  border:
    1px solid
    rgba(190,242,100,.30);

  border-radius:50%;

  color:#bef264;

  font-size:1.28rem;
  font-weight:950;

  line-height:1;
}


.rs-buyback-freight-alert strong{
  display:block;

  color:#dce8f1;

  font-size:.72rem;

  line-height:1.35;
}


.rs-buyback-freight-alert p{
  margin:
    5px 0 0;

  color:#8da4b6;

  font-size:.65rem;

  line-height:1.55;
}


/* ============================================================
   FREIGHT POINTS
   ============================================================ */

.rs-buyback-freight-points{
  display:grid;

  gap:8px;

  margin-top:18px;
}


.rs-buyback-freight-points span{
  display:flex;

  align-items:center;

  gap:9px;

  color:#b8cbda;

  font-size:.66rem;
  font-weight:800;

  line-height:1.35;

  letter-spacing:.04em;

  text-transform:uppercase;
}


.rs-buyback-freight-points i{
  display:grid;

  place-items:center;

  flex:0 0 auto;

  width:19px;
  height:19px;

  border:
    1.5px solid
    rgba(190,242,100,.62);

  border-radius:50%;

  color:#bef264;

  font-size:.46rem;
}


/* ============================================================
   WHY RACKSTAR
   ============================================================ */

.rs-buyback-assurance{
  margin-top:42px;

  padding-top:31px;

  border-top:
    1px solid
    rgba(148,163,184,.11);
}


.rs-buyback-assurance-head{
  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(300px,460px);

  gap:
    clamp(25px,4vw,58px);

  align-items:end;
}


.rs-buyback-assurance-head h3{
  margin:
    6px 0 0;

  color:#edf5fb;

  font-size:
    clamp(1.28rem,1.8vw,1.65rem);

  line-height:1.24;
}


.rs-buyback-assurance-head > p{
  margin:0;

  color:#93aabc;

  font-size:.82rem;

  line-height:1.65;
}


/* ============================================================
   ASSURANCE GRID
   ============================================================ */

.rs-buyback-assurance-grid{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:10px;

  margin-top:24px;
}


.rs-buyback-assurance-item{
  --buyback-accent:125,211,252;

  position:relative;

  min-width:0;

  overflow:hidden;

  padding:
    20px;

  border:
    1px solid
    rgba(var(--buyback-accent),.16);

  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--buyback-accent),.055),
      rgba(9,29,43,.91) 48%,
      rgba(7,23,36,.97)
    );
}


.rs-buyback-assurance-item::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--buyback-accent),.90),
      rgba(var(--buyback-accent),.25) 62%,
      transparent
    );
}


.rs-buyback-assurance-item--market{
  --buyback-accent:190,242,100;
}


.rs-buyback-assurance-item--clarity{
  --buyback-accent:125,211,252;
}


.rs-buyback-assurance-item--response{
  --buyback-accent:94,234,212;
}


.rs-buyback-assurance-item--accountable{
  --buyback-accent:147,197,253;
}


.rs-buyback-assurance-icon{
  display:grid;

  place-items:center;

  width:44px;
  height:44px;

  margin-bottom:15px;

  border:
    1px solid
    rgba(var(--buyback-accent),.26);

  border-radius:8px;

  background:
    rgba(var(--buyback-accent),.055);

  color:
    rgb(var(--buyback-accent));

  font-size:.9rem;
}


.rs-buyback-assurance-kicker{
  margin-bottom:5px;

  color:
    rgb(var(--buyback-accent));

  font-size:.54rem;
  font-weight:900;

  line-height:1.2;

  letter-spacing:.14em;

  text-transform:uppercase;
}


.rs-buyback-assurance-item h4{
  margin:0;

  color:#e8f1f8;

  font-size:.88rem;

  line-height:1.3;
}


.rs-buyback-assurance-item p{
  margin:
    8px 0 0;

  color:#8ea5b7;

  font-size:.69rem;

  line-height:1.55;
}


/* ============================================================
   LIFECYCLE BAND
   ============================================================ */

.rs-buyback-lifecycle{
  display:grid;

  grid-template-columns:
    62px
    minmax(0,1fr)
    auto;

  gap:22px;

  align-items:center;

  margin-top:18px;

  padding:
    25px
    clamp(25px,3vw,39px);

  border:
    1px solid
    rgba(190,242,100,.20);

  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.065),
      rgba(10,33,46,.96) 28%,
      rgba(7,24,37,.99)
    );
}


.rs-buyback-lifecycle-icon{
  display:grid;

  place-items:center;

  width:62px;
  height:62px;

  border:
    1px solid
    rgba(190,242,100,.28);

  border-radius:50%;

  background:
    rgba(190,242,100,.055);

  color:#bef264;

  font-size:1.12rem;
}


.rs-buyback-lifecycle-copy{
  min-width:0;
}


.rs-buyback-lifecycle-copy h3{
  margin:
    5px 0 7px;

  color:#edf6fc;

  font-size:
    clamp(1.05rem,1.35vw,1.24rem);

  line-height:1.28;
}


.rs-buyback-lifecycle-copy p{
  margin:0;

  max-width:840px;

  color:#95aabd;

  font-size:.79rem;

  line-height:1.6;
}


.rs-buyback-lifecycle-action{
  justify-self:end;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1100px){

  .rs-buyback-shipping-layout{
    grid-template-columns:
      1fr;
  }


  .rs-buyback-assurance-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .rs-buyback-lifecycle{
    grid-template-columns:
      62px
      minmax(0,1fr);
  }


  .rs-buyback-lifecycle-action{
    grid-column:2;

    justify-self:start;
  }

}


@media (max-width:800px){

  .rs-buyback-assurance-head{
    grid-template-columns:
      1fr;
  }

}


@media (max-width:620px){

  .rs-buyback-shipping-checks{
    grid-template-columns:
      1fr;
  }


  .rs-buyback-assurance-grid{
    grid-template-columns:
      1fr;
  }


  .rs-buyback-lifecycle{
    grid-template-columns:
      1fr;
  }


  .rs-buyback-lifecycle-action{
    grid-column:auto;
  }

}

/* ============================================================
   DATA CENTER DECOMMISSIONING
   Scoped page additions
   ============================================================ */

.rs-decom-detail-hero{
  position:relative;
  overflow:hidden;
}

.rs-decom-detail-hero h1{
  width:100%;
  max-width:none;
}

.rs-decom-detail-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(125,211,252,.16),rgba(190,242,100,.42),rgba(125,211,252,.10));
}

.rs-decom-detail-hero .rs-partner-detail-hero-content{
  position:relative;
  z-index:2;
}


/* ============================================================
   PROJECT DRIVER PANEL
   ============================================================ */

.rs-decom-driver-panel{
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(125,211,252,.18);
  border-radius:10px;
  background:linear-gradient(145deg,rgba(125,211,252,.065),rgba(12,34,49,.96) 35%,rgba(7,24,37,.99) 100%);
  box-shadow:0 18px 38px rgba(0,0,0,.15);
}

.rs-decom-driver-head{
  padding:26px 27px 22px;
  border-bottom:1px solid rgba(148,163,184,.10);
}

.rs-decom-driver-head h3{
  margin:6px 0 8px;
  color:#edf5fb;
  font-size:clamp(1.05rem,1.35vw,1.25rem);
  line-height:1.3;
}

.rs-decom-driver-head p{
  margin:0;
  color:#91a8ba;
  font-size:.75rem;
  line-height:1.6;
}

.rs-decom-driver-list{display:grid;}

.rs-decom-driver-item{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:13px;
  align-items:start;
  padding:17px 22px;
  border-bottom:1px solid rgba(148,163,184,.08);
}

.rs-decom-driver-item:last-child{border-bottom:0;}

.rs-decom-driver-item > span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid rgba(190,242,100,.24);
  border-radius:50%;
  background:rgba(190,242,100,.045);
  color:#bef264;
  font-size:.55rem;
  font-weight:950;
  letter-spacing:.08em;
}

.rs-decom-driver-item strong{
  display:block;
  color:#dce8f1;
  font-size:.76rem;
  line-height:1.35;
}

.rs-decom-driver-item small{
  display:block;
  margin-top:4px;
  color:#8299ab;
  font-size:.63rem;
  line-height:1.5;
}


/* ============================================================
   DECOMMISSIONING PROCESS
   ============================================================ */

.rs-decom-process-grid{
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:11px;

  margin-top:34px;
}


.rs-decom-process-card{
  --decom-accent:125,211,252;

  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;

  overflow:hidden;

  padding:
    23px
    21px
    22px;

  border:
    1px solid
    rgba(var(--decom-accent),.17);

  border-radius:9px;

  background:
    linear-gradient(
      150deg,
      rgba(var(--decom-accent),.055),
      rgba(10,31,45,.94) 42%,
      rgba(7,23,36,.99)
    );
}


.rs-decom-process-card::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      rgba(var(--decom-accent),.92),
      rgba(var(--decom-accent),.25) 64%,
      transparent
    );
}


.rs-decom-process-card--plan{
  --decom-accent:125,211,252;
}


.rs-decom-process-card--track{
  --decom-accent:94,234,212;
}


.rs-decom-process-card--move{
  --decom-accent:147,197,253;
}


.rs-decom-process-card--close{
  --decom-accent:190,242,100;
}


/* ============================================================
   CARD HEADER
   ============================================================ */

.rs-decom-process-head{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:14px;

  align-items:center;
}


.rs-decom-process-icon{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(var(--decom-accent),.25);

  border-radius:9px;

  background:
    rgba(var(--decom-accent),.055);

  color:
    rgb(var(--decom-accent));

  font-size:.95rem;
}


.rs-decom-process-title{
  min-width:0;
}


.rs-decom-process-kicker{
  margin:0 0 5px;

  color:
    rgb(var(--decom-accent));

  font-size:.54rem;
  font-weight:900;

  line-height:1.2;

  letter-spacing:.14em;

  text-transform:uppercase;
}


.rs-decom-process-card h3{
  margin:0;

  color:#e9f2f8;

  font-size:.92rem;

  line-height:1.32;
}


/* ============================================================
   CARD BODY
   ============================================================ */

.rs-decom-process-card > p{
  margin:
    17px 0 0;

  color:#8ea5b7;

  font-size:.70rem;

  line-height:1.58;
}


.rs-decom-process-points{
  display:flex;

  flex-wrap:wrap;

  gap:
    7px
    12px;

  margin-top:auto;

  padding-top:18px;
}


.rs-decom-process-points span{
  display:flex;

  align-items:center;

  gap:6px;

  color:#b7cad9;

  font-size:.58rem;
  font-weight:800;

  line-height:1.3;

  letter-spacing:.04em;

  text-transform:uppercase;
}


.rs-decom-process-points i{
  color:
    rgb(var(--decom-accent));

  font-size:.48rem;
}


/* ============================================================
   PROCESS PRINCIPLE
   ============================================================ */

.rs-decom-process-principle{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:17px;

  align-items:center;

  margin-top:14px;

  padding:
    19px
    23px;

  border:
    1px solid
    rgba(190,242,100,.17);

  border-radius:8px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.05),
      rgba(9,30,43,.95) 38%,
      rgba(7,23,36,.98)
    );
}


.rs-decom-process-principle > i{
  display:grid;

  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(190,242,100,.25);

  border-radius:50%;

  color:#bef264;
}


.rs-decom-process-principle span{
  display:block;

  margin-bottom:4px;

  color:#bef264;

  font-size:.53rem;
  font-weight:900;

  letter-spacing:.15em;
}


.rs-decom-process-principle strong{
  display:block;

  color:#dce8f1;

  font-size:.78rem;

  line-height:1.45;
}


/* ============================================================
   PROCESS RESPONSIVE
   ============================================================ */

@media (max-width:1180px){

  .rs-decom-process-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


@media (max-width:720px){

  .rs-decom-process-grid{
    grid-template-columns:
      1fr;
  }


  .rs-decom-process-principle{
    grid-template-columns:
      1fr;
  }

}

/* ============================================================
   INFRASTRUCTURE SCOPE
   ============================================================ */

.rs-decom-scope-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
  margin-top:31px;
}

.rs-decom-scope-card{
  --decom-scope-accent:125,211,252;
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:14px;
  align-items:start;
  min-width:0;
  padding:19px;
  border:1px solid rgba(var(--decom-scope-accent),.15);
  border-radius:8px;
  background:linear-gradient(145deg,rgba(var(--decom-scope-accent),.045),rgba(8,27,40,.92) 46%,rgba(7,23,36,.98));
}

.rs-decom-scope-card:nth-child(2),
.rs-decom-scope-card:nth-child(5){--decom-scope-accent:94,234,212;}

.rs-decom-scope-card:nth-child(3),
.rs-decom-scope-card:nth-child(4){--decom-scope-accent:147,197,253;}

.rs-decom-scope-card:nth-child(6){--decom-scope-accent:190,242,100;}

.rs-decom-scope-card > i{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border:1px solid rgba(var(--decom-scope-accent),.24);
  border-radius:8px;
  background:rgba(var(--decom-scope-accent),.045);
  color:rgb(var(--decom-scope-accent));
  font-size:.88rem;
}

.rs-decom-scope-card span{
  display:block;
  margin-bottom:4px;
  color:rgb(var(--decom-scope-accent));
  font-size:.51rem;
  font-weight:900;
  letter-spacing:.13em;
}

.rs-decom-scope-card h3{
  margin:0;
  color:#e7f0f7;
  font-size:.84rem;
  line-height:1.3;
}

.rs-decom-scope-card p{
  margin:7px 0 0;
  color:#879eaf;
  font-size:.65rem;
  line-height:1.52;
}

.rs-decom-environments{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:15px;
}

.rs-decom-environments span{
  padding:7px 10px;
  border:1px solid rgba(148,163,184,.13);
  border-radius:999px;
  background:rgba(148,163,184,.035);
  color:#9fb2c1;
  font-size:.56rem;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}


/* ============================================================
   SECURITY
   ============================================================ */

.rs-decom-security-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:32px;
}


/* ============================================================
   SECURITY CARDS
   ============================================================ */

.rs-decom-security-card{
  --decom-security-accent:125,211,252;

  min-width:0;

  padding:24px;

  border:1px solid rgba(var(--decom-security-accent),.17);
  border-radius:9px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--decom-security-accent),.055),
      rgba(9,29,43,.94) 45%,
      rgba(7,23,36,.98)
    );
}


.rs-decom-security-card--tracking{
  --decom-security-accent:94,234,212;
}


.rs-decom-security-card--compliance{
  --decom-security-accent:147,197,253;
}


/* ============================================================
   SECURITY CARD HEADER
   Icon left / kicker + H3 right
   ============================================================ */

.rs-decom-security-head{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:14px;

  align-items:center;
}


.rs-decom-security-icon{
  display:grid;
  place-items:center;

  width:48px;
  height:48px;

  border:1px solid rgba(var(--decom-security-accent),.25);
  border-radius:9px;

  background:rgba(var(--decom-security-accent),.055);

  color:rgb(var(--decom-security-accent));

  font-size:.95rem;
}


.rs-decom-security-title{
  min-width:0;
}


.rs-decom-security-kicker{
  margin:0 0 5px;

  color:rgb(var(--decom-security-accent));

  font-size:.54rem;
  font-weight:900;
  line-height:1.2;

  letter-spacing:.14em;

  text-transform:uppercase;
}


.rs-decom-security-card h3{
  margin:0;

  color:#e8f1f8;

  font-size:.94rem;
  line-height:1.32;
}


/* ============================================================
   SECURITY CARD COPY
   ============================================================ */

.rs-decom-security-card > p{
  margin:17px 0 0;

  color:#8da4b6;

  font-size:.69rem;
  line-height:1.57;
}


/* ============================================================
   DATA DESTRUCTION BAND
   ============================================================ */

.rs-decom-destruction-band{
  display:grid;

  grid-template-columns:
    60px
    minmax(0,1fr);

  gap:20px;

  align-items:center;

  margin-top:14px;

  padding:
    23px
    clamp(24px,3vw,36px);

  border:1px solid rgba(190,242,100,.18);
  border-radius:9px;

  background:
    linear-gradient(
      100deg,
      rgba(190,242,100,.055),
      rgba(10,31,44,.96) 34%,
      rgba(7,24,37,.99)
    );
}


.rs-decom-destruction-icon{
  display:grid;
  place-items:center;

  width:60px;
  height:60px;

  border:1px solid rgba(190,242,100,.27);
  border-radius:50%;

  background:rgba(190,242,100,.05);

  color:#bef264;

  font-size:1.05rem;
}


.rs-decom-destruction-band strong{
  display:block;

  margin-bottom:5px;

  color:#edf6fc;

  font-size:1rem;
  line-height:1.35;
}


.rs-decom-destruction-band p{
  margin:0;

  max-width:940px;

  color:#94aabd;

  font-size:.78rem;
  line-height:1.6;
}


/* ============================================================
   ASSET RECOVERY
   ============================================================ */

.rs-decom-recovery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:31px;
}

.rs-decom-recovery-card{
  --decom-recovery-accent:190,242,100;
  position:relative;
  display:grid;
  grid-template-columns:34px 48px minmax(0,1fr);
  gap:12px;
  align-items:start;
  min-width:0;
  padding:21px;
  border:1px solid rgba(var(--decom-recovery-accent),.17);
  border-radius:9px;
  background:linear-gradient(145deg,rgba(var(--decom-recovery-accent),.055),rgba(9,29,43,.93) 46%,rgba(7,23,36,.98));
}

.rs-decom-recovery-card--credit{--decom-recovery-accent:125,211,252;}
.rs-decom-recovery-card--recycle{--decom-recovery-accent:94,234,212;}

.rs-decom-recovery-number{
  color:rgba(var(--decom-recovery-accent),.72);
  font-size:.55rem;
  font-weight:950;
  letter-spacing:.08em;
}

.rs-decom-recovery-icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:1px solid rgba(var(--decom-recovery-accent),.25);
  border-radius:9px;
  background:rgba(var(--decom-recovery-accent),.05);
  color:rgb(var(--decom-recovery-accent));
  font-size:.90rem;
}

.rs-decom-recovery-card div:last-child > span{
  display:block;
  color:rgb(var(--decom-recovery-accent));
  font-size:.51rem;
  font-weight:900;
  letter-spacing:.13em;
}

.rs-decom-recovery-card h3{
  margin:5px 0 0;
  color:#e8f1f8;
  font-size:.87rem;
  line-height:1.32;
}

.rs-decom-recovery-card p{
  margin:8px 0 0;
  color:#8ca3b5;
  font-size:.66rem;
  line-height:1.55;
}

.rs-decom-recovery-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:14px;
  padding:21px 24px;
  border:1px solid rgba(190,242,100,.17);
  border-radius:8px;
  background:linear-gradient(100deg,rgba(190,242,100,.05),rgba(8,29,42,.95) 42%,rgba(7,23,36,.98));
}

.rs-decom-recovery-cta strong{
  display:block;
  max-width:760px;
  color:#dce8f1;
  font-size:.80rem;
  line-height:1.45;
}


/* ============================================================
   LOGISTICS
   ============================================================ */

.rs-decom-logistics-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin-top:31px;
}


.rs-decom-logistics-grid article{
  --decom-logistics-accent:125,211,252;

  min-width:0;

  padding:
    19px
    17px;

  border:
    1px solid
    rgba(var(--decom-logistics-accent),.13);

  border-radius:8px;

  background:
    linear-gradient(
      150deg,
      rgba(var(--decom-logistics-accent),.04),
      rgba(8,27,40,.92) 45%,
      rgba(7,23,36,.98)
    );
}


/* ============================================================
   LOGISTICS HEADER
   ============================================================ */

.rs-decom-logistics-head{
  display:grid;

  grid-template-columns:
    42px
    minmax(0,1fr);

  gap:11px;

  align-items:center;
}


.rs-decom-logistics-head > i{
  display:grid;
  place-items:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(var(--decom-logistics-accent),.24);

  border-radius:8px;

  background:
    rgba(var(--decom-logistics-accent),.05);

  color:
    rgb(var(--decom-logistics-accent));

  font-size:.82rem;
}


.rs-decom-logistics-head > div{
  min-width:0;
}


.rs-decom-logistics-head span{
  display:block;

  margin:0 0 4px;

  color:
    rgb(var(--decom-logistics-accent));

  font-size:.49rem;
  font-weight:900;

  line-height:1.2;

  letter-spacing:.13em;
}


.rs-decom-logistics-head h3{
  margin:0;

  color:#e5eff6;

  font-size:.76rem;

  line-height:1.3;
}


.rs-decom-logistics-grid article > p{
  margin:
    14px 0 0;

  color:#8299ab;

  font-size:.61rem;

  line-height:1.5;
}


/* ============================================================
   DOCUMENTATION BAND
   ============================================================ */

.rs-decom-documentation-band{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:16px;

  align-items:center;

  margin-top:13px;

  padding:
    18px
    22px;

  border:
    1px solid
    rgba(147,197,253,.16);

  border-radius:8px;

  background:
    linear-gradient(
      100deg,
      rgba(147,197,253,.045),
      rgba(8,28,42,.95) 40%,
      rgba(7,23,36,.98)
    );
}


.rs-decom-documentation-band > i{
  display:grid;
  place-items:center;

  width:48px;
  height:48px;

  border:
    1px solid
    rgba(147,197,253,.23);

  border-radius:9px;

  background:
    rgba(147,197,253,.045);

  color:#93c5fd;

  font-size:.90rem;
}


.rs-decom-documentation-band span{
  display:block;

  margin-bottom:4px;

  color:#93c5fd;

  font-size:.51rem;
  font-weight:900;

  letter-spacing:.13em;
}


.rs-decom-documentation-band strong{
  display:block;

  color:#dbe7ef;

  font-size:.76rem;

  line-height:1.42;
}


/* ============================================================
   WHY RACKSTAR
   ============================================================ */

.rs-decom-why-grid{
  display:grid;

  grid-template-columns:
    repeat(5,minmax(0,1fr));

  gap:9px;

  margin-top:30px;
}


.rs-decom-why-card{
  --decom-why-accent:125,211,252;

  display:grid;

  grid-template-columns:
    42px
    minmax(0,1fr);

  gap:11px;

  align-items:center;

  min-width:0;

  padding:
    17px;

  border:
    1px solid
    rgba(var(--decom-why-accent),.15);

  border-radius:8px;

  background:
    linear-gradient(
      150deg,
      rgba(var(--decom-why-accent),.045),
      rgba(8,27,40,.92) 45%,
      rgba(7,23,36,.98)
    );
}


.rs-decom-why-card--communication{
  --decom-why-accent:94,234,212;
}


.rs-decom-why-card--technical{
  --decom-why-accent:147,197,253;
}


.rs-decom-why-card--recovery{
  --decom-why-accent:190,242,100;
}


.rs-decom-why-card--logistics{
  --decom-why-accent:125,211,252;
}


.rs-decom-why-card > i{
  display:grid;
  place-items:center;

  width:42px;
  height:42px;

  margin:0;

  border:
    1px solid
    rgba(var(--decom-why-accent),.24);

  border-radius:8px;

  background:
    rgba(var(--decom-why-accent),.05);

  color:
    rgb(var(--decom-why-accent));

  font-size:.82rem;
}


.rs-decom-why-card > div{
  min-width:0;
}


.rs-decom-why-card strong{
  display:block;

  color:#e4eef5;

  font-size:.72rem;

  line-height:1.35;
}


.rs-decom-why-card span{
  display:block;

  margin-top:4px;

  color:#8097a9;

  font-size:.60rem;

  line-height:1.45;
}


/* ============================================================
   LOGISTICS + WHY RESPONSIVE
   ============================================================ */

@media (max-width:1180px){

  .rs-decom-logistics-grid,
  .rs-decom-why-grid{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

}


@media (max-width:720px){

  .rs-decom-logistics-grid,
  .rs-decom-why-grid{
    grid-template-columns:
      1fr;
  }


  .rs-decom-documentation-band{
    grid-template-columns:
      48px
      minmax(0,1fr);
  }

}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1180px){
  .rs-decom-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rs-decom-logistics-grid,
  .rs-decom-why-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media (max-width:950px){
  .rs-decom-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rs-decom-security-grid,
  .rs-decom-recovery-grid{grid-template-columns:1fr;}
  .rs-decom-recovery-cta{align-items:flex-start;flex-direction:column;}
}

@media (max-width:720px){
  .rs-decom-process-grid,
  .rs-decom-scope-grid,
  .rs-decom-logistics-grid,
  .rs-decom-why-grid{grid-template-columns:1fr;}

  .rs-decom-process-principle,
  .rs-decom-destruction-band,
  .rs-decom-documentation-band{grid-template-columns:1fr;}

  .rs-decom-recovery-card{grid-template-columns:32px 44px minmax(0,1fr);}
}

@media (max-width:560px){
  .rs-decom-detail-hero{min-height:0 !important;}
  .rs-decom-driver-item{grid-template-columns:34px minmax(0,1fr);}
  .rs-decom-driver-item > span{width:34px;height:34px;}
  .rs-decom-recovery-card{grid-template-columns:1fr;}
}


/* ============================================================
   SAAS & CLOUD SOLUTIONS
   Scoped page additions
   ============================================================ */

.rs-cloud-detail-hero{
  position:relative;
  overflow:hidden;
}

.rs-cloud-detail-hero .rs-partner-detail-hero-content{
  position:relative;
  z-index:2;
}

.rs-cloud-detail-hero h1{
  width:100%;
  max-width:none;
}

.rs-cloud-detail-hero .rs-partner-detail-title-rackstar{
  margin-top:7px;
  font-size:clamp(1.15rem,1.8vw,1.85rem);
  font-weight:800;
  letter-spacing:-.025em;
  color:#dce8f1;
}

.rs-cloud-overview-layout{
  display:grid;

  grid-template-columns:
    minmax(0,1.3fr)
    minmax(300px,.7fr);

  gap:24px;

  align-items:start;

  margin:
    clamp(46px,5vw,74px)
    clamp(24px,3vw,46px)
    clamp(50px,6vw,82px);
}

.rs-cloud-overview-copy{
  min-width:0;
}

.rs-cloud-outcome-panel{
  min-width:0;
  padding:24px;
  border:1px solid rgba(125,211,252,.16);
  border-radius:9px;
  background:linear-gradient(145deg,rgba(125,211,252,.055),rgba(9,29,43,.95) 42%,rgba(7,23,36,.99));
}

.rs-cloud-outcome-list{
  display:grid;
  margin-top:16px;
}

.rs-cloud-outcome-list > div{
  padding:15px 0;
  border-bottom:1px solid rgba(148,163,184,.09);
}

.rs-cloud-outcome-list > div:first-child{
  padding-top:2px;
}

.rs-cloud-outcome-list > div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.rs-cloud-outcome-list strong{
  display:block;
  color:#e8f1f7;
  font-size:.80rem;
  line-height:1.3;
}

.rs-cloud-outcome-list span{
  display:block;
  margin-top:4px;
  color:#8ca3b5;
  font-size:.66rem;
  line-height:1.52;
}


/* ============================================================
   WHAT WE HELP YOU SOLVE
   ============================================================ */

.rs-cloud-challenges-layout{
  display:grid;

  grid-template-columns:
    minmax(0,.85fr)
    minmax(0,1.15fr);

  gap:
    clamp(42px,5vw,76px);

  align-items:start;
}


/* ============================================================
   INTRO
   ============================================================ */

.rs-cloud-challenges-copy{
  min-width:0;
}


.rs-cloud-challenges-copy h2{
  max-width:630px;

  margin:
    8px 0
    18px;

  color:#fff;

  font-size:
    clamp(2rem,3vw,3.15rem);

  line-height:1.06;

  letter-spacing:-.035em;
}


.rs-cloud-challenges-copy p{
  max-width:650px;

  margin:
    0
    0
    15px;

  color:#93a9ba;

  font-size:.84rem;

  line-height:1.68;
}


.rs-cloud-challenges-copy p:last-child{
  margin-bottom:0;
}


/* ============================================================
   CHALLENGES
   ============================================================ */

.rs-cloud-challenge-list{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  column-gap:
    clamp(28px,4vw,54px);

  border-top:
    1px solid rgba(125,211,252,.14);
}


.rs-cloud-challenge-list article{
  position:relative;

  min-width:0;

  padding:
    21px
    0
    23px;

  border-bottom:
    1px solid rgba(148,163,184,.10);
}


.rs-cloud-challenge-list strong{
  display:block;

  margin-bottom:7px;

  color:#dceaf3;

  font-size:.79rem;
  font-weight:850;

  line-height:1.35;
}


.rs-cloud-challenge-list p{
  margin:0;

  max-width:430px;

  color:#879eaf;

  font-size:.68rem;

  line-height:1.58;
}


/* ============================================================
   FINAL CHALLENGE
   ============================================================ */

.rs-cloud-challenge-list article:last-child{
  grid-column:1 / -1;

  max-width:540px;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1100px){

  .rs-cloud-challenges-layout{
    grid-template-columns:1fr;
  }

}


@media (max-width:760px){

  .rs-cloud-challenge-list{
    grid-template-columns:1fr;
  }


  .rs-cloud-challenge-list article:last-child{
    grid-column:auto;

    max-width:none;
  }

}


.rs-cloud-solution-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
  margin-top:31px;
}

.rs-cloud-solution-area{
  --cloud-accent:125,211,252;
  min-width:0;
  padding:22px 23px;
  border:1px solid rgba(var(--cloud-accent),.15);
  border-left:3px solid rgba(var(--cloud-accent),.62);
  border-radius:8px;
  background:linear-gradient(145deg,rgba(var(--cloud-accent),.045),rgba(8,27,40,.93) 44%,rgba(7,23,36,.98));
}

.rs-cloud-solution-area--infrastructure{
  --cloud-accent:147,197,253;
}

.rs-cloud-solution-area--connectivity{
  --cloud-accent:94,234,212;
}

.rs-cloud-solution-area--security{
  --cloud-accent:190,242,100;
}

.rs-cloud-solution-area--communications{
  --cloud-accent:125,211,252;
}

.rs-cloud-solution-area--ai{
  --cloud-accent:147,197,253;
}

.rs-cloud-solution-label{
  color:rgb(var(--cloud-accent));
  font-size:.53rem;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.14em;
}

.rs-cloud-solution-area h3{
  margin:6px 0 0;
  color:#e7f0f7;
  font-size:.92rem;
  line-height:1.3;
}

.rs-cloud-solution-area p{
  margin:9px 0 0;
  color:#8ca3b5;
  font-size:.69rem;
  line-height:1.57;
}

.rs-cloud-platforms{
  margin-top:15px;
  padding-top:13px;
  border-top:1px solid rgba(var(--cloud-accent),.11);
  color:#a9bdcb;
  font-size:.57rem;
  font-weight:800;
  line-height:1.4;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.rs-cloud-stack-band{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  margin-top:14px;
  overflow:hidden;
  border:1px solid rgba(125,211,252,.12);
  border-radius:8px;
  background:linear-gradient(100deg,rgba(125,211,252,.045),rgba(8,28,42,.95) 42%,rgba(7,23,36,.98));
}

.rs-cloud-stack-band span{
  padding:11px 8px;
  border-right:1px solid rgba(148,163,184,.09);
  color:#9fb3c2;
  font-size:.50rem;
  font-weight:900;
  letter-spacing:.10em;
  text-align:center;
}

.rs-cloud-stack-band span:last-child{
  border-right:0;
}


/* ============================================================
   WHY RACKSTAR / APPROACH
   ============================================================ */

.rs-cloud-approach-layout{
  display:grid;

  grid-template-columns:
    minmax(0,.85fr)
    minmax(0,1.15fr);

  gap:
    clamp(42px,5vw,76px);

  align-items:start;
}


.rs-cloud-approach-copy h2{
  max-width:620px;

  margin:
    8px 0
    17px;
}


.rs-cloud-approach-copy p{
  max-width:650px;

  color:#93a9ba;

  font-size:.84rem;
  line-height:1.68;
}


/* ============================================================
   APPROACH PRINCIPLES
   ============================================================ */

.rs-cloud-approach-list{
  display:grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  column-gap:
    clamp(28px,4vw,54px);

  border-top:
    1px solid rgba(148,163,184,.12);
}


.rs-cloud-approach-list > div{
  display:block;

  min-width:0;

  padding:
    20px
    0
    22px;

  border-bottom:
    1px solid rgba(148,163,184,.10);
}


.rs-cloud-approach-list strong{
  display:block;

  margin-bottom:7px;

  color:#dce8f1;

  font-size:.78rem;
  font-weight:850;

  line-height:1.35;
}


.rs-cloud-approach-list span{
  display:block;

  max-width:430px;

  color:#879eaf;

  font-size:.68rem;

  line-height:1.55;
}


/* Fifth item can use the width naturally */

.rs-cloud-approach-list > div:last-child{
  grid-column:1 / -1;

  max-width:520px;
}





.rs-cloud-provider-band{
  display:grid;
  grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr);
  gap:30px;
  align-items:center;
  margin-top:28px;
  padding:22px 24px;
  border:1px solid rgba(190,242,100,.16);
  border-radius:8px;
  background:linear-gradient(100deg,rgba(190,242,100,.045),rgba(9,30,43,.95) 38%,rgba(7,23,36,.98));
}

.rs-cloud-provider-band strong{
  display:block;
  color:#dce8f1;
  font-size:.80rem;
  line-height:1.42;
}

.rs-cloud-provider-band p{
  margin:0;
  color:#8ea5b7;
  font-size:.70rem;
  line-height:1.58;
}

@media (max-width:1100px){

  .rs-cloud-overview-layout,
  .rs-cloud-approach-layout{
    grid-template-columns:1fr;
  }

  .rs-cloud-stack-band{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .rs-cloud-stack-band span:nth-child(3){
    border-right:0;
  }

  .rs-cloud-stack-band span:nth-child(-n+3){
    border-bottom:1px solid rgba(148,163,184,.09);
  }

  .rs-cloud-provider-band{
    grid-template-columns:1fr;
    gap:10px;
  }

}

@media (max-width:760px){

  .rs-cloud-solution-grid{
    grid-template-columns:1fr;
  }

  .rs-cloud-challenge-list article,
  .rs-cloud-approach-list > div{
    grid-template-columns:1fr;
    gap:7px;
  }

}


@media (max-width:650px){

  .rs-cloud-overview-layout{
    margin:
      36px
      18px
      48px;
  }

}


@media (max-width:560px){

  .rs-cloud-detail-hero{
    min-height:0 !important;
  }

  .rs-cloud-stack-band{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rs-cloud-stack-band span{
    border-bottom:1px solid rgba(148,163,184,.09);
  }

  .rs-cloud-stack-band span:nth-child(2n){
    border-right:0;
  }

  .rs-cloud-stack-band span:nth-last-child(-n+2){
    border-bottom:0;
  }

}


/* ============================================================
   SECTION BACKGROUNDS
   ============================================================ */


.rs-section-bg-grid{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 18% 20%,
      rgba(125,211,252,.07),
      transparent 34%
    ),
    radial-gradient(
      circle at 82% 76%,
      rgba(190,242,100,.06),
      transparent 28%
    ),
    linear-gradient(
      180deg,
      rgba(10,24,40,.96) 0%,
      rgba(6,18,30,.98) 100%
    );
}

.rs-section-bg-grid::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(125,211,252,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(125,211,252,.045) 1px, transparent 1px);
  background-size:28px 28px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.65), rgba(0,0,0,.15));
}

.rs-section-bg-spotlight{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 22% 30%,
      rgba(59,130,246,.12),
      transparent 38%
    ),
    linear-gradient(
      90deg,
      rgba(11,28,46,.98) 0%,
      rgba(8,20,34,.98) 58%,
      rgba(4,12,22,.98) 100%
    );
}

.rs-section-bg-accent{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 88% 82%,
      rgba(190,242,100,.055),
      transparent 24%
    ),
    radial-gradient(
      circle at 10% 12%,
      rgba(125,211,252,.05),
      transparent 26%
    ),
    linear-gradient(
      180deg,
      rgba(8,21,34,.98) 0%,
      rgba(6,16,28,.99) 100%
    );
}

.rs-section-bg-panel{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(125,211,252,.10);
  border-radius:18px;
  background:
    linear-gradient(
      145deg,
      rgba(125,211,252,.04),
      rgba(8,21,34,.94) 34%,
      rgba(5,15,25,.98)
    );
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 10px 28px rgba(0,0,0,.18);
}


/* ============================================================
   USED CISCO — MODERNIZED SECTIONS
   These rules are scoped to the revised HTML structures.
   ============================================================ */


/* ============================================================
   OVERVIEW / WHY BUY USED CISCO
   ============================================================ */

.rs-used-modern-intro{
  position:relative;
}

.rs-used-modern-intro-stage{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(125,211,252,.13);
  border-top:0;
  border-radius:0 0 10px 10px;
  background:
    linear-gradient(
      145deg,
      rgba(125,211,252,.055) 0%,
      rgba(8,25,39,.97) 38%,
      rgba(6,19,31,.99) 100%
    );
}

.rs-used-modern-intro-stage::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.34;
  background-image:
    linear-gradient(rgba(125,211,252,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(125,211,252,.045) 1px,transparent 1px);
  background-size:32px 32px;
}

.rs-used-modern-intro-stage > *{
  position:relative;
  z-index:1;
}

.rs-used-modern-intro-layout{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);
  gap:clamp(34px,4vw,62px);
  align-items:start;

  padding:
    clamp(38px,4.5vw,60px)
    clamp(24px,3.2vw,48px)
    clamp(42px,5vw,66px);
}

.rs-used-modern-intro-copy{
  max-width:820px;
}

.rs-used-modern-intro-copy h2{
  max-width:780px;
  margin:8px 0 18px;
}

.rs-used-modern-intro-copy p{
  max-width:790px;
  color:#94aabd;
  font-size:.84rem;
  line-height:1.72;
}

.rs-used-modern-intro-points{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:24px;
}

.rs-used-modern-intro-points span{
  padding:8px 11px;
  border:1px solid rgba(125,211,252,.15);
  border-radius:999px;
  background:rgba(125,211,252,.035);
  color:#adc1cf;
  font-size:.58rem;
  font-weight:850;
  line-height:1;
  letter-spacing:.07em;
  text-transform:uppercase;
}


/* ============================================================
   QUALITY PANEL
   ============================================================ */

.rs-used-quality-panel{
  min-width:0;
  padding:23px;
  border:1px solid rgba(190,242,100,.16);
  border-radius:9px;
  background:
    linear-gradient(
      145deg,
      rgba(190,242,100,.045),
      rgba(8,27,40,.95) 42%,
      rgba(6,20,32,.99)
    );
}

.rs-used-quality-head{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:14px;
  align-items:center;
}

.rs-used-quality-icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:1px solid rgba(190,242,100,.22);
  border-radius:9px;
  background:rgba(190,242,100,.045);
  color:#bef264;
  font-size:.94rem;
}

.rs-used-quality-kicker{
  margin-bottom:5px;
  color:#bef264;
  font-size:.53rem;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.14em;
}

.rs-used-quality-head h3{
  margin:0;
  color:#e7f0f6;
  font-size:.94rem;
  line-height:1.32;
}

.rs-used-quality-panel > p{
  margin:18px 0 0;
  color:#8ca4b5;
  font-size:.70rem;
  line-height:1.62;
}

.rs-used-quality-facts{
  display:grid;
  margin-top:18px;
  border-top:1px solid rgba(190,242,100,.10);
}

.rs-used-quality-facts > div{
  padding:13px 0;
  border-bottom:1px solid rgba(148,163,184,.08);
}

.rs-used-quality-facts > div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.rs-used-quality-facts strong{
  display:block;
  color:#dce8f0;
  font-size:.69rem;
  line-height:1.35;
}

.rs-used-quality-facts span{
  display:block;
  margin-top:3px;
  color:#7f97a9;
  font-size:.61rem;
  line-height:1.45;
}


/* ============================================================
   BUYING SCENARIOS — KEEP THE GALLERY, DROP VISIBLE NUMBERING
   ============================================================ */

.rs-used-scenarios--modern{
  background:
    linear-gradient(
      90deg,
      rgba(125,211,252,.025),
      transparent 46%,
      rgba(7,20,32,.16)
    );
}

.rs-used-scenarios--modern .rs-used-scenario-thumb-number,
.rs-used-scenarios--modern .rs-used-scenario-feature-number{
  display:none;
}

.rs-used-scenarios--modern .rs-used-scenario-thumb::after{
  content:attr(data-title);

  position:absolute;
  z-index:2;
  left:20px;
  right:20px;
  bottom:17px;

  color:#eef6fb;
  font-size:.72rem;
  font-weight:850;
  line-height:1.28;

  text-shadow:0 2px 12px rgba(0,0,0,.70);
}

.rs-used-scenarios--modern .rs-used-scenario-feature-content{
  bottom:clamp(28px,4vw,50px);
}

.rs-used-scenarios--modern .rs-used-scenario-feature-content h3{
  margin-top:0;
}


/* ============================================================
   INVENTORY — PRODUCT FAMILY MATRIX
   ============================================================ */

.rs-used-inventory-stage{
  position:relative;
  overflow:hidden;

  padding:
    clamp(34px,4vw,52px)
    clamp(24px,3vw,42px)
    clamp(38px,4.5vw,58px);

  border:1px solid rgba(125,211,252,.12);
  border-radius:10px;

  background:
    linear-gradient(
      145deg,
      rgba(125,211,252,.038),
      rgba(7,23,36,.97) 38%,
      rgba(5,17,28,.99)
    );
}

.rs-used-inventory-stage::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.22;
  background-image:
    linear-gradient(rgba(125,211,252,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(125,211,252,.04) 1px,transparent 1px);
  background-size:30px 30px;
}

.rs-used-inventory-stage > *{
  position:relative;
  z-index:1;
}

.rs-used-inventory-stage .rs-partner-section-heading{
  margin-bottom:30px;
}

.rs-used-inventory-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}

.rs-used-inventory-family{
  --used-family-accent:125,211,252;

  min-width:0;
  padding:22px 23px 21px;

  border:1px solid rgba(var(--used-family-accent),.13);
  border-left:3px solid rgba(var(--used-family-accent),.50);
  border-radius:8px;

  background:
    linear-gradient(
      145deg,
      rgba(var(--used-family-accent),.035),
      rgba(7,24,37,.92) 44%,
      rgba(5,18,29,.97)
    );
}

.rs-used-inventory-family:nth-child(2),
.rs-used-inventory-family:nth-child(5){
  --used-family-accent:94,234,212;
}

.rs-used-inventory-family:nth-child(3),
.rs-used-inventory-family:nth-child(6){
  --used-family-accent:147,197,253;
}

.rs-used-inventory-category{
  color:rgb(var(--used-family-accent));
  font-size:.53rem;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.14em;
}

.rs-used-inventory-family h3{
  margin:7px 0 0;
  color:#e6eff6;
  font-size:.92rem;
  line-height:1.32;
}

.rs-used-inventory-family p{
  margin:10px 0 0;
  color:#879eaf;
  font-size:.69rem;
  line-height:1.58;
}

.rs-used-inventory-products{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:17px;
  padding-top:14px;
  border-top:1px solid rgba(var(--used-family-accent),.09);
}

.rs-used-inventory-products span{
  padding:6px 8px;
  border:1px solid rgba(var(--used-family-accent),.11);
  border-radius:999px;
  background:rgba(var(--used-family-accent),.025);
  color:#9eb2c0;
  font-size:.54rem;
  font-weight:750;
  line-height:1.2;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width:1050px){

  .rs-used-modern-intro-layout{
    grid-template-columns:1fr;
  }

  .rs-used-quality-panel{
    max-width:760px;
  }

}

@media (max-width:820px){

  .rs-used-inventory-grid{
    grid-template-columns:1fr;
  }

}

@media (max-width:650px){

  .rs-used-modern-intro-layout{
    padding:
      34px
      18px
      42px;
  }

  .rs-used-inventory-stage{
    padding:
      30px
      18px
      38px;
  }

}