/* INS Theme v2.0.56: Schedule Appointment hero/contact detail fix.
   The v2.0.55 selectors were scoped to the hero wrapper, so the lower WPBakery
   rows were still using the generic panel/resource/contact styles. This file
   targets the actual row classes used by the schedule page. */

/* Hero section: keep it centered in the mockup canvas, not inside the default 46% hero grid. */
body.ins-v2043-client-mockup .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center,
body.ins-client-track-page .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center,
body.ins-v2044-client-canonical .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center{
  min-height:230px!important;
  padding:58px 0 34px!important;
  background:linear-gradient(180deg,#f5faff 0%,#ffffff 82%)!important;
}
body.ins-v2043-client-mockup .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-inner,
body.ins-client-track-page .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-inner,
body.ins-v2044-client-canonical .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-inner{
  display:block!important;
  grid-template-columns:none!important;
  min-height:auto!important;
  width:100%!important;
}
body.ins-v2043-client-mockup .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-copy,
body.ins-client-track-page .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-copy,
body.ins-v2044-client-canonical .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-copy{
  width:min(920px,calc(100vw - 64px))!important;
  max-width:920px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0!important;
  text-align:center!important;
  float:none!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
body.ins-v2043-client-mockup .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h1,
body.ins-client-track-page .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h1,
body.ins-v2044-client-canonical .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h1{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto 8px!important;
  text-align:center!important;
  font-size:clamp(48px,4.25vw,64px)!important;
  line-height:.96!important;
  letter-spacing:-.055em!important;
  white-space:nowrap!important;
}
body.ins-v2043-client-mockup .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h2,
body.ins-client-track-page .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h2,
body.ins-v2044-client-canonical .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h2{
  margin:8px auto 0!important;
  text-align:center!important;
  font-size:22px!important;
  line-height:1.22!important;
  font-weight:650!important;
}
body.ins-v2043-client-mockup .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-text,
body.ins-client-track-page .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-text,
body.ins-v2044-client-canonical .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center .ins-cm-hero-text{
  max-width:680px!important;
  margin:14px auto 0!important;
  text-align:center!important;
  font-size:15px!important;
  line-height:1.45!important;
}

/* Choose a Service: target the actual schedule row instead of the hero wrapper. */
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list{
  display:grid!important;
  gap:12px!important;
  margin-top:16px!important;
}
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list article{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) 32px!important;
  gap:16px!important;
  align-items:center!important;
  min-height:76px!important;
  padding:13px 14px!important;
  border:1px solid #d7e8f8!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list article>.ins-cm-icon{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  margin:0!important;
}
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list h3{
  margin:0 0 4px!important;
  color:#062b66!important;
  font-size:17px!important;
  line-height:1.1!important;
  font-weight:950!important;
}
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list p{
  margin:0!important;
  color:#2e405f!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#075fcd!important;
  font-size:0!important;
  line-height:1!important;
  text-decoration:none!important;
  overflow:visible!important;
}
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list a .ins-cm-icon,
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list a svg{
  display:none!important;
}
body .vc_row.ins-cm-schedule-main .ins-cm-panel-resources .ins-cm-resource-list a:before{
  content:'›'!important;
  display:block!important;
  color:#075fcd!important;
  font-size:34px!important;
  font-weight:400!important;
  line-height:1!important;
}

/* Client Support Contacts: vertical rows left, support image right, no clipped email/website. */
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact{
  overflow:hidden!important;
}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 112px!important;
  grid-template-rows:repeat(3,minmax(0,auto))!important;
  gap:12px 14px!important;
  align-items:center!important;
  margin-top:10px!important;
  min-width:0!important;
}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box p{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  grid-column:1!important;
  margin:0!important;
  min-width:0!important;
  width:100%!important;
  color:#18375f!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:700!important;
  overflow:visible!important;
}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box p:nth-of-type(1){grid-row:1!important;}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box p:nth-of-type(2){grid-row:2!important;}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box p:nth-of-type(3){grid-row:3!important;}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box p .ins-cm-icon{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  margin:0!important;
}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box p .ins-cm-icon svg{
  width:18px!important;
  height:18px!important;
}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box p span:not(.ins-cm-icon){
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box img{
  grid-column:2!important;
  grid-row:1 / span 3!important;
  display:block!important;
  width:112px!important;
  height:126px!important;
  object-fit:cover!important;
  border:1px solid #d7e8f8!important;
  border-radius:12px!important;
  justify-self:end!important;
  align-self:center!important;
}

@media (max-width: 900px){
  body.ins-v2043-client-mockup .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h1,
  body.ins-client-track-page .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h1,
  body.ins-v2044-client-canonical .ins-cm-path-clients-schedule-appointment .ins-cm-hero-center h1{
    white-space:normal!important;
    font-size:42px!important;
  }
}
@media (max-width: 720px){
  body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box{
    grid-template-columns:1fr!important;
  }
  body .vc_row.ins-cm-schedule-lower .ins-cm-panel-contact .ins-cm-contact-box img{
    display:none!important;
  }
}
