/* Helprite V24: balanced centering, responsive padding, shared call-to-actions.
   Scope: public pages only; admin and editor styles stay unchanged. */

/* Company fact strip: each item is centred in its own equal-width column. */
.trust ul {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}
.trust li,
.trust li:first-child {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  padding: 7px 18px !important;
  min-width:0 !important;
  min-height:40px;
  line-height:1.55 !important;
}
.trust li:first-child {border-left:0 !important;}

/* Service directory restored to original left-aligned V23 layout. */

/* Spotlight panel: a centred headline, description and button group. */
.on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:22px !important;
  padding:clamp(34px,4.5vw,60px) clamp(22px,5vw,65px) !important;
}
.on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row > div:first-child {
  flex:0 1 auto !important;
  width:100%;
}
.on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row h2 {
  margin-inline:auto !important;
  max-width:32ch !important;
}
.on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row p {
  margin-inline:auto !important;
  max-width:770px !important;
}
.on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row > .row {
  flex:0 1 auto !important;
  width:100%;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:14px 22px !important;
  padding:0 !important;
}

/* Centre other self-contained closing panels rather than full text-heavy sections. */
.on[data-p] section.s > .w.panel {
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
}
.on[data-p] section.s > .w.panel > h2,
.on[data-p] section.s > .w.panel > p {max-width:810px; margin-inline:auto;}
.on[data-p] section.s > .w.panel > .row {
  display:flex;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap;
  gap:12px 22px;
  width:100%;
}
/* Consistent alignment for closing calls-to-action across public pages. */
.on[data-p] > section.s.cta .w {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:13px !important;
}
.on[data-p] > section.s.cta .w > h2,
.on[data-p] > section.s.cta .w > p {
  max-width:760px !important;
  margin:0 auto !important;
}
.on[data-p] > section.s.cta .w > .row {
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:14px 22px !important;
  padding:10px 0 0 !important;
  width:100%;
}
.on[data-p] > section.s.cta .w > .btn {
  align-self:center !important;
  margin:12px auto 0 !important;
}
.on[data-p] > section.s.cta .w > .cta-contact-line {margin-top:10px !important;}

@media (max-width:700px) {
  .trust ul {grid-template-columns: repeat(2,minmax(0,1fr)) !important;row-gap:0 !important;}
  .trust li,
  .trust li:first-child {padding:12px 12px !important;min-height:47px;font-size:.68rem !important;}
  .trust li:nth-child(odd) {border-left:0 !important;}
  .trust li:nth-child(n+3) {border-top:1px solid #cbd9e6;}
  .on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row {padding:32px 18px !important;gap:19px !important;}
  .on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row > .row {flex-direction:column;gap:15px !important;}
  .on[data-p] section.s > .w.panel {padding:30px 22px !important;}
  .on[data-p] > section.s.cta .w > .row {flex-direction:column;gap:15px !important;}
}
@media (max-width:360px) {
  .on[data-p="home"] section[data-cms-layer-key="index-s06"] .panel.row {padding-inline:15px !important;}
}
