/* Countertrade V51 — approved What You Get Part 1 and Part 2 heroes */
.ct-v51-hero{
  --v51-bg:#04101f;
  --v51-bg-2:#071a33;
  --v51-text:#f8f1e8;
  --v51-muted:#c6d5ea;
  --v51-accent:#4eb0ff;
  --v51-accent-2:#8de4ff;
  --v51-gold:#d9b06a;
  position:relative;
  overflow:hidden;
  color:var(--v51-text);
  background:
    radial-gradient(circle at 18% 26%,rgba(58,120,255,.14),transparent 30%),
    radial-gradient(circle at 78% 20%,rgba(78,176,255,.14),transparent 22%),
    linear-gradient(135deg,#020b16 0%,#06152b 42%,#0a2548 100%);
  border-top:1px solid rgba(255,255,255,.04);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.ct-v51-hero-part2{
  background:
    radial-gradient(circle at 76% 22%,rgba(78,176,255,.18),transparent 26%),
    radial-gradient(circle at 22% 78%,rgba(89,120,255,.12),transparent 26%),
    linear-gradient(135deg,#020b16 0%,#06152b 42%,#0a2548 100%);
}
.ct-v51-shell{
  width:min(1440px,calc(100% - 64px));
  margin:0 auto;
  padding:54px 0 72px;
  display:grid;
  grid-template-columns:minmax(360px,1.02fr) minmax(470px,.98fr);
  gap:42px;
  align-items:center;
  position:relative;
  z-index:2;
}
.ct-v51-hero-part2 .ct-v51-shell{
  grid-template-columns:minmax(360px,.95fr) minmax(500px,1.05fr);
}
.ct-v51-hero-number{
  position:absolute;
  left:18px;
  top:6px;
  z-index:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:250px;
  line-height:.8;
  color:rgba(255,255,255,.035);
  pointer-events:none;
}
.ct-v51-copy,.ct-v51-visual-wrap{position:relative;z-index:2}
.ct-v51-eyebrow-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  margin-bottom:26px;
}
.ct-v51-pill,.ct-v51-part-chip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid rgba(133,174,255,.18);
  background:rgba(9,24,43,.55);
  font-size:11px;
  letter-spacing:.18em;
  line-height:1;
  text-transform:uppercase;
  color:#d9ecff;
  font-weight:700;
}
.ct-v51-pill:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--v51-accent-2);
  box-shadow:0 0 0 6px rgba(141,228,255,.08);
}
.ct-v51-section-kicker{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--v51-gold);
  font-size:14px;
  letter-spacing:.24em;
  line-height:1.4;
  text-transform:uppercase;
  margin-bottom:16px;
}
.ct-v51-section-kicker:before{
  content:"";
  width:58px;
  height:1px;
  background:linear-gradient(90deg,var(--v51-gold),transparent);
}
.ct-v51-title{
  margin:0;
  max-width:720px;
  color:var(--v51-text);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(76px,8vw,128px);
  line-height:.9;
  letter-spacing:-.06em;
}
.ct-v51-part-identity{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:22px;
  max-width:780px;
  margin-top:28px;
  padding:20px 24px 20px 0;
  border-top:1px solid rgba(141,228,255,.34);
  border-bottom:1px solid rgba(141,228,255,.18);
}
.ct-v51-part-number{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:154px;
  min-height:74px;
  padding:0 24px;
  background:linear-gradient(135deg,#2f8fff,#73d6ff);
  color:#031426;
  font-size:25px;
  line-height:1;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  box-shadow:0 18px 38px rgba(47,143,255,.24);
}
.ct-v51-part-number:after{
  content:"";
  position:absolute;
  right:-14px;
  top:50%;
  width:28px;
  height:1px;
  background:#7de7ff;
}
.ct-v51-part-description{
  max-width:600px;
  color:#b9eaff;
  font-size:18px;
  line-height:1.55;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:800;
}
.ct-v51-description{
  max-width:720px;
  margin:28px 0 0;
  color:var(--v51-muted);
  font-size:20px;
  line-height:1.8;
}
.ct-v51-actions{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  margin-top:34px;
}
.ct-v51-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:20px 26px;
  text-decoration:none!important;
  border-radius:0;
  font-size:14px;
  letter-spacing:.14em;
  line-height:1.2;
  text-transform:uppercase;
  font-weight:800;
  transition:transform .2s ease,box-shadow .2s ease;
}
.ct-v51-button:hover{transform:translateY(-2px)}
.ct-v51-button-primary{
  background:linear-gradient(135deg,#2e8fff,#63c8ff);
  color:#021120!important;
  box-shadow:0 18px 40px rgba(77,176,255,.22);
}
.ct-v51-button-secondary{
  background:transparent;
  color:#f2efe9!important;
  border:1px solid rgba(219,231,255,.18);
}
.ct-v51-proofline{
  margin-top:34px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  color:#d6e8fb;
  font-size:14px;
}
.ct-v51-proof-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--v51-gold);
  box-shadow:0 0 0 6px rgba(217,176,106,.08);
}
.ct-v51-visual-shell{
  position:relative;
  padding:18px;
  border:1px solid rgba(140,190,255,.16);
  background:linear-gradient(180deg,rgba(10,25,46,.58),rgba(7,18,34,.38));
  box-shadow:0 36px 100px rgba(0,0,0,.28);
  overflow:hidden;
}
.ct-v51-visual-shell:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(135deg,rgba(255,255,255,.02),transparent 35%,transparent 75%,rgba(141,228,255,.05));
  pointer-events:none;
}
.ct-v51-visual-shell img{
  position:relative;
  z-index:0;
  display:block;
  width:100%;
  height:auto;
}
.ct-v51-caption-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:18px;
}
.ct-v51-caption-grid article{
  border:1px solid rgba(133,174,255,.16);
  background:rgba(7,20,38,.5);
  padding:16px 18px;
}
.ct-v51-caption-grid small{
  display:block;
  color:#8fe4ff;
  font-size:11px;
  letter-spacing:.18em;
  line-height:1.4;
  text-transform:uppercase;
  font-weight:800;
  margin-bottom:8px;
}
.ct-v51-caption-grid strong{
  display:block;
  color:#fff;
  font-size:16px;
  line-height:1.45;
  font-weight:700;
}
.ct-v51-glow-a,.ct-v51-glow-b{
  position:absolute;
  border-radius:50%;
  filter:blur(26px);
  pointer-events:none;
}
.ct-v51-glow-a{
  width:360px;
  height:360px;
  right:-80px;
  top:-80px;
  background:radial-gradient(circle,rgba(141,228,255,.14),rgba(141,228,255,0) 70%);
}
.ct-v51-glow-b{
  width:300px;
  height:300px;
  left:-120px;
  bottom:-120px;
  background:radial-gradient(circle,rgba(98,115,255,.12),rgba(98,115,255,0) 70%);
}

/* Move the page-specific chapter navigation below the approved hero. */
main>.wyget-subnav.ct-v51-after-hero,
main>.sv-chapters.ct-v51-after-hero{
  position:relative!important;
  top:auto!important;
  z-index:10;
  margin:0!important;
}
main>.wyget-subnav.ct-v51-after-hero .wyget-subnav-track,
main>.sv-chapters.ct-v51-after-hero .sv-chapters-track{
  width:min(1440px,calc(100% - 64px));
  margin:0 auto;
}

/* Hide all superseded V48/V49 hero rules from the replaced markup. */
.ct-v48-part1-hero,.ct-v48-part2-hero{display:none!important}

@media(max-width:1150px){
  .ct-v51-shell,
  .ct-v51-hero-part2 .ct-v51-shell{
    grid-template-columns:1fr;
    gap:34px;
  }
  .ct-v51-hero-number{
    font-size:170px;
    left:18px;
    top:0;
  }
}
@media(max-width:768px){
  .ct-v51-shell{
    width:min(100% - 36px,1440px);
    padding:36px 0 48px;
  }
  .ct-v51-title{font-size:64px}
  .ct-v51-description{font-size:17px}
  .ct-v51-actions{flex-direction:column}
  .ct-v51-button{width:100%}
  .ct-v51-caption-grid{grid-template-columns:1fr}
  .ct-v51-part-identity{
    grid-template-columns:1fr;
    gap:14px;
    padding-right:0;
  }
  .ct-v51-part-number{
    width:max-content;
    min-width:0;
    min-height:62px;
    font-size:21px;
  }
  .ct-v51-part-number:after{display:none}
  .ct-v51-part-description{font-size:14px}
  main>.wyget-subnav.ct-v51-after-hero .wyget-subnav-track,
  main>.sv-chapters.ct-v51-after-hero .sv-chapters-track{
    width:min(100% - 36px,1440px);
  }
}