/* v243 final contact booking typography refinement. Loads after all earlier contact styles. */
.page-contact #spark-session .booking-shell{
  text-align:center !important;
}
.page-contact #spark-session .booking-heading{
  width:min(820px,100%) !important;
  max-width:820px !important;
  margin:0 auto 34px !important;
  padding:0 clamp(10px,2vw,22px) !important;
  text-align:center !important;
}
.page-contact #spark-session .booking-heading .kicker{
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
.page-contact #spark-session .booking-heading h2{
  max-width:760px !important;
  margin:.35rem auto 1.15rem !important;
  text-align:center !important;
  text-wrap:balance !important;
}
.page-contact #spark-session .booking-heading > p:not(.kicker){
  width:min(720px,100%) !important;
  max-width:720px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
  text-wrap:pretty !important;
  font-size:clamp(.98rem,1.12vw,1.08rem) !important;
  line-height:1.72 !important;
}
.page-contact #spark-session .booking-heading > p + p{
  margin-top:16px !important;
}
.page-contact #spark-session .contact-reassurance{
  width:min(690px,100%) !important;
  margin:26px auto 0 !important;
  padding:20px 28px 0 !important;
  border-left:0 !important;
  border-top:1px solid rgba(239,200,108,.55) !important;
  text-align:center !important;
  font-size:clamp(1.02rem,1.35vw,1.16rem) !important;
  line-height:1.55 !important;
  text-wrap:balance !important;
}
@media(max-width:700px){
  .page-contact #spark-session .booking-heading{
    padding:0 8px !important;
  }
  .page-contact #spark-session .booking-heading h2{
    font-size:clamp(2.15rem,10.5vw,3.1rem) !important;
  }
  .page-contact #spark-session .booking-heading > p:not(.kicker){
    font-size:.96rem !important;
    line-height:1.66 !important;
  }
  .page-contact #spark-session .contact-reassurance{
    padding:18px 8px 0 !important;
  }
}
