/* STLBEAST Hub V661 — solid text and clean responsive panel composition.
   This file is intentionally loaded last. */
:root{
  --v661-heading:#f7fbff;
  --v661-body:#c4d3e2;
  --v661-muted:#a9bdd0;
}

/* Eliminate every legacy hollow/outlined/transparent heading treatment. */
html body .legacy-main .h651-metal,
html body .legacy-main .h651-head h2,
html body .legacy-main .h651-panel h2,
html body .legacy-main .h651-hero h1{
  color:var(--v661-heading)!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:var(--v661-heading)!important;
  -webkit-text-stroke-width:0!important;
  -webkit-text-stroke-color:transparent!important;
  text-shadow:0 2px 18px rgba(22,125,255,.22)!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  paint-order:normal!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
  overflow-wrap:anywhere!important;
}

html body .legacy-main .h651-head h2{
  font-size:clamp(2rem,3.7vw,3.7rem)!important;
  line-height:1.02!important;
}
html body .legacy-main .h651-panel h2{
  font-size:clamp(2rem,3.1vw,3.25rem)!important;
  line-height:1.02!important;
  margin:.35rem 0 .75rem!important;
  max-width:760px!important;
}

/* Repair titles and supporting copy inside the numbered sequence. */
html body .legacy-main .h651-step strong{
  display:block!important;
  color:#f8fbff!important;
  -webkit-text-fill-color:#f8fbff!important;
  -webkit-text-stroke:0 transparent!important;
  background:none!important;
  opacity:1!important;
  font:850 1rem/1.25 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  letter-spacing:0!important;
  text-shadow:none!important;
}
html body .legacy-main .h651-step span{
  color:#b8c9da!important;
  -webkit-text-fill-color:#b8c9da!important;
  opacity:1!important;
  font-size:.94rem!important;
  line-height:1.5!important;
}
html body .legacy-main .h651-step>b{
  color:#06111f!important;
  -webkit-text-fill-color:#06111f!important;
  text-shadow:none!important;
}

/* Raise supporting-copy contrast throughout the affected Hub blocks. */
html body .legacy-main .h651-head p,
html body .legacy-main .h651-panel p,
html body .legacy-main .h651-copy p{
  color:var(--v661-body)!important;
  -webkit-text-fill-color:var(--v661-body)!important;
  opacity:1!important;
}
html body .legacy-main .h651-chip{
  color:#e3edf7!important;
  -webkit-text-fill-color:#e3edf7!important;
  background:rgba(4,18,32,.92)!important;
}

/* Prevent long display headings from clipping their container. */
html body .legacy-main .h651-section,
html body .legacy-main .h651-panel,
html body .legacy-main .h651-head{
  min-width:0!important;
}
html body .legacy-main .h651-head>div,
html body .legacy-main .h651-panel>*{
  min-width:0!important;
}

/* Tablet/mobile: artwork becomes a deliberate full-width image above clear copy.
   It no longer sits behind low-contrast text. */
@media(max-width:900px){
  html body .legacy-main .h651-split{
    grid-template-columns:1fr!important;
  }
  html body .legacy-main .h651-panel{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    min-height:0!important;
    padding:0 22px 24px!important;
    isolation:isolate!important;
    overflow:hidden!important;
    background:linear-gradient(145deg,#071827,#04111e)!important;
  }
  html body .legacy-main .h651-panel:after{
    display:none!important;
    content:none!important;
  }
  html body .legacy-main .h651-panel>img{
    position:relative!important;
    inset:auto!important;
    order:-1!important;
    display:block!important;
    width:calc(100% + 44px)!important;
    max-width:none!important;
    height:250px!important;
    margin:0 -22px 20px!important;
    object-fit:cover!important;
    object-position:center 28%!important;
    filter:none!important;
    opacity:1!important;
    z-index:1!important;
    border-bottom:1px solid rgba(78,160,224,.34)!important;
  }
  html body .legacy-main .h651-panel>*:not(img){
    position:relative!important;
    z-index:3!important;
  }
  html body .legacy-main .h651-panel h2{
    font-size:clamp(1.9rem,6vw,2.8rem)!important;
    line-height:1.04!important;
  }
}

@media(max-width:620px){
  html body .legacy-main .h651-section{
    padding:18px 14px!important;
  }
  html body .legacy-main .h651-head h2{
    font-size:clamp(1.9rem,9vw,2.65rem)!important;
    line-height:1.04!important;
  }
  html body .legacy-main .h651-panel{
    padding:0 17px 20px!important;
  }
  html body .legacy-main .h651-panel>img{
    width:calc(100% + 34px)!important;
    height:205px!important;
    margin:0 -17px 17px!important;
  }
  html body .legacy-main .h651-panel h2{
    font-size:1.8rem!important;
  }
  html body .legacy-main .h651-step{
    padding:14px!important;
  }
}
