/* Mobile Motive desktop/laptop layout hard fix
   Restores predictable Bootstrap-style columns after earlier grid overrides. */
:root{
  --mm-container-max:1180px;
  --mm-page-gutter:clamp(22px,4vw,56px);
}
html,body{overflow-x:hidden;}
*,*::before,*::after{box-sizing:border-box;}
.container,.wrap{
  width:100%;
  max-width:var(--mm-container-max);
  margin-left:auto!important;
  margin-right:auto!important;
}
.container{
  padding-left:var(--mm-page-gutter)!important;
  padding-right:var(--mm-page-gutter)!important;
}
/* Repair desktop cards: the site uses Bootstrap col classes, so rows must be flex, not CSS grid. */
.row{
  --bs-gutter-x:1.5rem;
  --bs-gutter-y:0;
  display:flex!important;
  flex-wrap:wrap!important;
  grid-template-columns:none!important;
  gap:0!important;
  margin-top:calc(-1 * var(--bs-gutter-y))!important;
  margin-right:calc(-.5 * var(--bs-gutter-x))!important;
  margin-left:calc(-.5 * var(--bs-gutter-x))!important;
}
.row>*{
  min-width:0!important;
  box-sizing:border-box!important;
  flex-shrink:0!important;
  width:100%;
  max-width:100%;
  padding-right:calc(var(--bs-gutter-x) * .5)!important;
  padding-left:calc(var(--bs-gutter-x) * .5)!important;
  margin-top:var(--bs-gutter-y)!important;
  grid-column:auto!important;
}
.g-0{--bs-gutter-x:0!important;--bs-gutter-y:0!important;}
.g-2{--bs-gutter-x:.75rem!important;--bs-gutter-y:.75rem!important;}
.g-3{--bs-gutter-x:1rem!important;--bs-gutter-y:1rem!important;}
.g-4{--bs-gutter-x:1.5rem!important;--bs-gutter-y:1.5rem!important;}
.g-5{--bs-gutter-x:3rem!important;--bs-gutter-y:3rem!important;}
.col{flex:1 0 0%!important;width:auto!important;max-width:100%!important;}
.col-6{flex:0 0 auto!important;width:50%!important;max-width:50%!important;}
.col-12{flex:0 0 auto!important;width:100%!important;max-width:100%!important;}
@media (min-width:576px){
  .col-sm-6{flex:0 0 auto!important;width:50%!important;max-width:50%!important;}
}
@media (min-width:768px){
  .col-md-3{flex:0 0 auto!important;width:25%!important;max-width:25%!important;}
  .col-md-4{flex:0 0 auto!important;width:33.333333%!important;max-width:33.333333%!important;}
  .col-md-6{flex:0 0 auto!important;width:50%!important;max-width:50%!important;}
  .col-md-12{flex:0 0 auto!important;width:100%!important;max-width:100%!important;}
}
@media (min-width:992px){
  .col-lg-2{flex:0 0 auto!important;width:16.666667%!important;max-width:16.666667%!important;}
  .col-lg-3{flex:0 0 auto!important;width:25%!important;max-width:25%!important;}
  .col-lg-4{flex:0 0 auto!important;width:33.333333%!important;max-width:33.333333%!important;}
  .col-lg-5{flex:0 0 auto!important;width:41.666667%!important;max-width:41.666667%!important;}
  .col-lg-6{flex:0 0 auto!important;width:50%!important;max-width:50%!important;}
  .col-lg-7{flex:0 0 auto!important;width:58.333333%!important;max-width:58.333333%!important;}
  .col-lg-8{flex:0 0 auto!important;width:66.666667%!important;max-width:66.666667%!important;}
  .col-lg-9{flex:0 0 auto!important;width:75%!important;max-width:75%!important;}
  .col-lg-10{flex:0 0 auto!important;width:83.333333%!important;max-width:83.333333%!important;}
  .col-lg-12{flex:0 0 auto!important;width:100%!important;max-width:100%!important;}
}
@media (min-width:1200px){
  .col-xl-3{flex:0 0 auto!important;width:25%!important;max-width:25%!important;}
  .col-xl-4{flex:0 0 auto!important;width:33.333333%!important;max-width:33.333333%!important;}
}
/* Prevent word-by-word text caused by previous overflow rules. */
h1,h2,h3,h4,h5,h6,p,li,a,span,strong,small,.lead,.text-secondary,.small-note,.info-card,.info-card *,.service-card,.service-card *,.area-tile,.area-tile *,.card,.card *,.panel,.panel *{
  word-break:normal!important;
  overflow-wrap:break-word!important;
  writing-mode:horizontal-tb!important;
}
.info-card,.service-card,.area-tile,.card,.panel,.supplier-profile-card,.payment-logo-panel{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.section-pad{padding-top:clamp(3rem,7vw,5rem)!important;padding-bottom:clamp(3rem,7vw,5rem)!important;}
@media (max-width:767.98px){
  :root{--mm-page-gutter:22px;}
  .container{padding-left:var(--mm-page-gutter)!important;padding-right:var(--mm-page-gutter)!important;}
  .row{display:flex!important;flex-wrap:wrap!important;}
  .row>*{width:100%!important;max-width:100%!important;}
  .col-6{width:50%!important;max-width:50%!important;}
  h1{font-size:clamp(2rem,10vw,3rem)!important;}
  h2{font-size:clamp(1.55rem,8vw,2.25rem)!important;}
}
