/* INS Theme v2.0.60: Client Support clean lower-section layout.
   Fixes the still-cramped live support sections by preventing the right column
   from squeezing the support cards, lower info cards, FAQ card, and trust strip.
   This is CSS-only and does not generate image-based content. */

.ins-cs-v2058{
  --cs-clean-canvas:min(1294px,calc(100vw - 80px));
}
.ins-cs-v2058 .ins-cs-main-grid,
.ins-cs-v2058 .ins-cs-lower-grid,
.ins-cs-v2058 .ins-cs-trust-strip{
  width:var(--cs-clean-canvas)!important;
  max-width:var(--cs-clean-canvas)!important;
}

/* Keep service cards readable instead of allowing the RSVP/form column to crush them. */
.ins-cs-v2058 .ins-cs-main-grid{
  grid-template-columns:minmax(0,820px) 370px!important;
  gap:30px!important;
}
.ins-cs-v2058 .ins-cs-services{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.ins-cs-v2058 .ins-cs-service-card{
  min-height:196px!important;
  padding:24px 24px 20px!important;
  gap:18px!important;
  align-items:flex-start!important;
}
.ins-cs-v2058 .ins-cs-service-card h3{
  font-size:18px!important;
  line-height:1.15!important;
  margin:2px 0 10px!important;
  letter-spacing:-.015em!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
.ins-cs-v2058 .ins-cs-service-card p{
  font-size:13.5px!important;
  line-height:1.45!important;
}

/* Lower row: make the info cards and FAQ card clean and readable. */
.ins-cs-v2058 .ins-cs-lower-grid{
  grid-template-columns:minmax(0,820px) 370px!important;
  gap:30px!important;
  align-items:stretch!important;
}
.ins-cs-v2058 .ins-cs-lower-left{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.ins-cs-v2058 .ins-cs-info-card,
.ins-cs-v2058 .ins-cs-faq-card{
  min-height:246px!important;
  height:auto!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
.ins-cs-v2058 .ins-cs-info-card{
  padding:24px 22px!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:16px!important;
}
.ins-cs-v2058 .ins-cs-info-card>.ins-cm-icon{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  margin:0!important;
}
.ins-cs-v2058 .ins-cs-info-card h2,
.ins-cs-v2058 .ins-cs-faq-card h2{
  font-size:19px!important;
  line-height:1.15!important;
  margin:0 0 10px!important;
  letter-spacing:-.015em!important;
}
.ins-cs-v2058 .ins-cs-info-card p,
.ins-cs-v2058 .ins-cs-info-card li,
.ins-cs-v2058 .ins-cs-info-card dl{
  font-size:13.25px!important;
  line-height:1.42!important;
}
.ins-cs-v2058 .ins-cs-info-card ul{
  margin:10px 0 12px!important;
}
.ins-cs-v2058 .ins-cs-info-card li{
  margin-bottom:8px!important;
}
.ins-cs-v2058 .ins-cs-hours dl{
  display:grid!important;
  grid-template-columns:78px minmax(0,1fr)!important;
  gap:7px 10px!important;
}
.ins-cs-v2058 .ins-cs-hours dd{
  white-space:normal!important;
}
.ins-cs-v2058 .ins-cs-contact-line{
  display:grid!important;
  grid-template-columns:26px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
  margin-bottom:10px!important;
}
.ins-cs-v2058 .ins-cs-contact-line span{
  display:block!important;
  min-width:0!important;
  overflow:visible!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.ins-cs-v2058 .ins-cs-contacts a{
  margin-top:8px!important;
}
.ins-cs-v2058 .ins-cs-faq-card{
  padding:24px 24px!important;
}
.ins-cs-v2058 .ins-cs-faq-card details{
  margin-bottom:10px!important;
}
.ins-cs-v2058 .ins-cs-faq-card summary{
  min-height:40px!important;
  padding:10px 13px!important;
  font-size:12.8px!important;
  line-height:1.25!important;
}

/* Bottom strip: full-width, even, non-crushed icon items. */
.ins-cs-v2058 .ins-cs-trust-strip{
  grid-template-columns:minmax(390px,1.6fr) repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
  margin-top:22px!important;
}
.ins-cs-v2058 .ins-cs-trust-strip>div{
  min-height:112px!important;
  height:auto!important;
  padding:20px 24px!important;
  overflow:visible!important;
}
.ins-cs-v2058 .ins-cs-trust-main{
  gap:18px!important;
}
.ins-cs-v2058 .ins-cs-trust-main .ins-cm-icon{
  width:74px!important;
  height:74px!important;
  min-width:74px!important;
}
.ins-cs-v2058 .ins-cs-trust-strip h2{
  font-size:21px!important;
  line-height:1.1!important;
  margin:0 0 6px!important;
}
.ins-cs-v2058 .ins-cs-trust-strip p{
  font-size:13.2px!important;
  line-height:1.36!important;
  max-width:520px!important;
}
.ins-cs-v2058 .ins-cs-trust-strip strong{
  font-size:14.3px!important;
  line-height:1.22!important;
}
.ins-cs-v2058 .ins-cs-trust-strip>div:not(.ins-cs-trust-main){
  justify-content:center!important;
  text-align:left!important;
  gap:15px!important;
}
.ins-cs-v2058 .ins-cs-trust-strip>div:not(.ins-cs-trust-main) .ins-cm-icon{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
}

/* At narrower desktop widths, do not squeeze sections into tiny columns. */
@media(max-width:1260px){
  .ins-cs-v2058{--cs-clean-canvas:min(1040px,calc(100vw - 64px));}
  .ins-cs-v2058 .ins-cs-main-grid,
  .ins-cs-v2058 .ins-cs-lower-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .ins-cs-v2058 .ins-cs-request-card,
  .ins-cs-v2058 .ins-cs-faq-card{
    max-width:none!important;
    width:100%!important;
  }
  .ins-cs-v2058 .ins-cs-services,
  .ins-cs-v2058 .ins-cs-lower-left{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .ins-cs-v2058 .ins-cs-trust-strip{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  .ins-cs-v2058 .ins-cs-trust-main{
    grid-column:1/-1!important;
    border-radius:16px 16px 0 0!important;
    border-left:1px solid var(--cs-line)!important;
  }
  .ins-cs-v2058 .ins-cs-trust-strip>div:nth-child(2){border-left:1px solid var(--cs-line)!important;border-radius:0 0 0 16px!important;}
  .ins-cs-v2058 .ins-cs-trust-strip>div:last-child{border-radius:0 0 16px 0!important;}
}
@media(max-width:820px){
  .ins-cs-v2058{--cs-clean-canvas:min(100%,calc(100vw - 32px));}
  .ins-cs-v2058 .ins-cs-services,
  .ins-cs-v2058 .ins-cs-lower-left,
  .ins-cs-v2058 .ins-cs-trust-strip{
    grid-template-columns:1fr!important;
  }
  .ins-cs-v2058 .ins-cs-service-card,
  .ins-cs-v2058 .ins-cs-info-card{
    grid-template-columns:54px minmax(0,1fr)!important;
  }
  .ins-cs-v2058 .ins-cs-trust-strip>div,
  .ins-cs-v2058 .ins-cs-trust-strip>div:nth-child(2),
  .ins-cs-v2058 .ins-cs-trust-strip>div:last-child{
    border-radius:0!important;
    border-left:1px solid var(--cs-line)!important;
  }
  .ins-cs-v2058 .ins-cs-trust-strip>div:first-child{border-radius:16px 16px 0 0!important;}
  .ins-cs-v2058 .ins-cs-trust-strip>div:last-child{border-radius:0 0 16px 16px!important;}
}
