/* V11680 — Home mobile hero HARD equal-size/equal-gap fix.
   Scope: home hero only. Header and all other site sections untouched.
   This intentionally uses the full NormalBigTitle selector so legacy !important
   mobile rules cannot keep line 1 smaller than line 2. */
@media (max-width:620px){
  /* Same visible font height for the first and second heading. */
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine1,
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine2,
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine2 .cimHeroRotateInner{
    font-size:clamp(21px,5.55vw,23px)!important;
    line-height:30px!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    font-weight:900!important;
  }

  /* Long first line stays on one row while retaining the same font height. */
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine1{
    white-space:nowrap!important;
    letter-spacing:-.045em!important;
    transform:none!important;
  }

  /* Remove the old 10px/3px uneven legacy offsets; use one rhythm. */
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine2,
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine3{
    margin-top:6px!important;
    margin-bottom:0!important;
    transform:none!important;
  }

  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine3,
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine3 .cimHeroRotateInner{
    font-size:clamp(19px,5.1vw,21px)!important;
    line-height:28px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
  }

  /* The existing inline title margin-bottom is 6px; keep paragraph margin-top 0
     so the last-heading → paragraph gap is the same 6px rhythm. */
  html body main.hero .heroHomeTextNoJump>p:first-of-type,
  html body main.hero .heroInner>section:first-child>p:first-of-type{
    margin-top:0!important;
  }
}

@media (max-width:380px){
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine1,
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine2,
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine2 .cimHeroRotateInner{
    font-size:21px!important;
  }
  html body main.hero .hero-title-force-small.cimHeroStyledTitle.cimHeroNormalBigTitle.cimHeroAnimatedTitle .cimHeroLine1{
    letter-spacing:-.055em!important;
  }
}
