/* AcademyCrew R27 · Production 1K · public experience refinement */
.qa09-public .qa09-hero-grid{
  min-height:438px!important;
  grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr)!important;
}
.qa09-public .qa09-hero-copy{
  padding:42px 52px 42px 0!important;
  justify-content:center!important;
}
.qa09-public .qa08-hero h1{
  max-width:690px!important;
  margin:.38rem 0 .72rem!important;
  font-size:clamp(2.45rem,3.65vw,3.85rem)!important;
  line-height:1.025!important;
  letter-spacing:-.048em!important;
  font-weight:820!important;
}
.qa09-public .qa08-hero-lead{
  max-width:650px!important;
  margin:0 0 18px!important;
  font-size:clamp(.94rem,1.02vw,1.02rem)!important;
  line-height:1.58!important;
  color:#c9d7e9!important;
}
.qa09-public .qa08-hero-actions{gap:9px!important;margin-top:2px!important}
.qa09-public .qa08-hero-actions .qa08-btn{min-height:42px!important;padding:10px 15px!important;border-radius:11px!important;font-size:.84rem!important}
.qa09-public .qa09-hero-media{min-height:438px!important}
.qa09-public .qa09-proof-row{margin-top:15px!important}
.qa09-public .qa09-proof-row span{min-height:62px!important;padding:12px 13px!important}
.qa09-public .qa09-proof-row b{font-size:.84rem!important}
.qa09-public .qa09-proof-row small{font-size:.72rem!important;line-height:1.36!important}

/* More editorial type rhythm: strong hierarchy without oversized SaaS headings. */
.qa09-public .qa08-heading h2,
.qa09-public .qa09-capacity-head h2,
.qa09-public .qa10-journey-head h2{
  font-size:clamp(1.9rem,2.75vw,3rem)!important;
  line-height:1.08!important;
  letter-spacing:-.038em!important;
  font-weight:820!important;
}
.qa09-public .qa08-heading p,
.qa09-public .qa09-capacity-head p,
.qa09-public .qa10-journey-head p{
  font-size:.96rem!important;
  line-height:1.6!important;
  color:#607189!important;
}
.qa09-public .qa08-kicker,.qa09-public .qa08-step-label{
  letter-spacing:.095em!important;
  font-size:.68rem!important;
}

/* Catalog is intentionally compact: cards -> navigation -> next section. */
.qa09-public .qa09-catalog{padding:26px 0 30px!important}
.qa09-public .qa25-catalog-intro{margin:6px 0 12px!important}
.qa09-public .qa12-carousel-stage{padding:0 10px!important}
.qa09-public .qa09-carousel{padding:3px 0 5px!important}
.qa09-public .qa12-carousel-footer{
  min-height:18px!important;
  margin:5px 0 0!important;
  gap:9px!important;
}
.qa09-public .qa12-carousel-dots{gap:6px!important}
.qa09-public .qa12-carousel-dots button{width:7px!important;height:7px!important}
.qa09-public .qa12-carousel-dots button.is-active{width:24px!important}
.qa09-public .qa12-carousel-count{font-size:.68rem!important}

@media(max-width:980px){
  .qa09-public .qa09-hero-grid{min-height:0!important;grid-template-columns:1fr!important}
  .qa09-public .qa09-hero-copy{padding:34px 0 24px!important}
  .qa09-public .qa09-hero-media{min-height:310px!important}
}
@media(max-width:720px){
  .qa09-public .qa08-hero h1{font-size:clamp(2.05rem,9vw,2.9rem)!important;line-height:1.04!important}
  .qa09-public .qa09-hero-copy{padding-top:28px!important}
  .qa09-public .qa09-hero-media{min-height:275px!important}
  .qa09-public .qa09-proof-row{margin-top:12px!important}
  .qa09-public .qa09-catalog{padding:20px 0 23px!important}
  .qa09-public .qa12-carousel-footer{margin-top:5px!important}
}
@media(prefers-reduced-motion:reduce){
  .qa09-public .qa09-carousel{scroll-behavior:auto!important}
}

/* R27 QA09 · carousel rhythm regression fix
   Keep the position indicators in normal flow directly below the cards.
   Explicit height reset prevents inherited/legacy carousel stage sizing from
   reserving viewport space between the card row and its controls. */
.qa09-public .qa12-carousel-stage{
  display:flex!important;
  flex-direction:column!important;
  height:auto!important;
  min-height:0!important;
  padding-bottom:0!important;
}
.qa09-public .qa09-carousel{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:0!important;
  margin-bottom:0!important;
}
.qa09-public .qa12-carousel-footer{
  position:static!important;
  flex:0 0 auto!important;
  align-self:center!important;
  margin:8px 0 0!important;
  padding:0!important;
  min-height:18px!important;
}
.qa09-public .qa09-catalog{
  padding-bottom:24px!important;
}
@media(max-width:720px){
  .qa09-public .qa12-carousel-footer{margin-top:7px!important}
  .qa09-public .qa09-catalog{padding-bottom:20px!important}
}
