/*
 * This controls theme colors
 * Bootstrap will generate classes like btn-color-1, btn-black, text-color-1, bg-color-1, etc.
 * The classes can then be used across the site without repeating code
 */
/*
 * Do a sitewide search (CTRL + SHIFT + F if you're using Sublime Text or whatever your coding GUI has for a search in all files)
 * to see where these variables are used in the SASS code. They're all Bootstrap variables that control certain aspects of elements
 */
/**
 * Bootstrap removes the margin-left/right over the sm breakpoint and if we set it customly afterwards, it breaks the centered modal since it's no longer margin: auto.
 * We also can't remove this one because the value is used in a min-height calculation and removing causes the modal to go haywire on mobile
 * So set it at 15px and then after the sm breakpoint when it gets set to auto, add extra padding as need on .modal-dialog
 *
 * LE: messing with custom margins / paddings and modal-dialog is too much fuss. Simply ignore
 */
/**
 * V3 Styles template
 * 
 * "main" used to override block styles from other files loaded with higher priority
 */
main.v3-styles .btn {
  --bs-btn-padding-y:12px;
  --bs-btn-border-radius:0;
  --bs-btn-border-width:1px;
  --bs-btn-font-size:16px;
  --bs-btn-font-weight:600;
}
@media (max-width: 767.98px) {
  main.v3-styles .btn-group li {
    width: 100%;
  }
}
@media (max-width: 767.98px) {
  main.v3-styles .info-strip .block-postcode-form .block-inner {
    max-width: 100%;
  }
  main.v3-styles .info-strip .block-postcode-form .btn {
    width: 100%;
  }
}
main.v3-styles .wp-block-heading {
  padding-bottom: 0;
  border-bottom: 0;
}
@media (max-width: 991.98px) {
  main.v3-styles .split-module .full .col-media {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 575.98px) {
  main.v3-styles .split-module .container .col-media {
    padding-left: 20px;
    padding-right: 20px;
  }
}
main.v3-styles .block-split-module.contained.media-mobile-top, main.v3-styles .block-split-module.contained.media-mobile-bottom {
  padding-top: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
  padding-bottom: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
}
main.v3-styles .block-split-module.full_width.media-mobile-top, main.v3-styles .block-split-module.full_width.media-mobile-bottom {
  padding-top: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
  padding-bottom: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
}
main.v3-styles .block-container {
  padding-top: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
  padding-bottom: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
}
main.v3-styles .block-container .wp-block-heading + .block-features, main.v3-styles .block-container p + .block-features {
  margin-top: clamp(2rem, 1.5023474178vw + 1.6478873239rem, 3rem);
}
@media (max-width: 767.98px) {
  main.v3-styles .block-container .block-features .inner {
    display: inline-flex !important;
    flex-direction: column;
    align-items: flex-start !important;
    gap: 20px;
  }
}
@media (min-width: 768px) {
  main.v3-styles .block-container .block-features .inner {
    justify-content: space-between !important;
  }
}
main.v3-styles .block-container .block-features .item {
  gap: 15px;
  text-align: left;
}
main.v3-styles .block-accordion-type-1, main.v3-styles .block-accordion-type-2 {
  padding-top: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
  padding-bottom: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
}
main.v3-styles .block-accordion-type-1 .accordion, main.v3-styles .block-accordion-type-2 .accordion {
  padding-top: 30px;
}
main.v3-styles .block-accordion-type-1 .item, main.v3-styles .block-accordion-type-2 .item {
  margin-bottom: 16px;
}
main.v3-styles .block-accordion-type-1 .card-header .btn, main.v3-styles .block-accordion-type-2 .card-header .btn {
  padding-top: clamp(1.1875rem, 0.4694835681vw + 1.0774647887rem, 1.5rem);
  padding-bottom: clamp(1.1875rem, 0.4694835681vw + 1.0774647887rem, 1.5rem);
  padding-left: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
  padding-right: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
  font-size: 20px !important;
  font-weight: 500 !important;
}
main.v3-styles .block-accordion-type-1 .card-header .btn .icon {
  transform: none;
  color: #03624C;
}
main.v3-styles .block-accordion-type-1 .card-header .icon-wrap {
  background: transparent !important;
}
main.v3-styles .block-accordion-type-1 .panel {
  padding-left: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
  padding-right: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
}
main.v3-styles .block-banner .content > ul:not(.list-unstyled) {
  padding: 0;
  list-style: none;
}
main.v3-styles .block-banner .content > ul:not(.list-unstyled) li {
  margin: 0 0 10px;
  padding: 0 0 0 28px;
  background-repeat: no-repeat;
  background-position: 0 3px;
  background-size: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' xmlns:v='https://vecta.io/nano'%3E%3Cpath fill-rule='evenodd' d='M13.743 3.766c.066.058.121.129.159.208s.062.166.067.254a.67.67 0 0 1-.036.26c-.029.083-.075.16-.134.226l-7.009 7.779c-.059.066-.131.119-.212.157a.67.67 0 0 1-.256.063c-.089.004-.177-.011-.26-.042s-.159-.078-.224-.139L1.781 8.714a.67.67 0 0 1-.06-.907.67.67 0 0 1 .467-.25.67.67 0 0 1 .503.166l3.147 2.831c.131.118.304.179.481.17s.342-.088.46-.22l6.029-6.685c.117-.13.281-.209.456-.219s.347.049.479.164v.001z' fill='%23ffffff'/%3E%3C/svg%3E");
}
main.v3-styles .block-banner .btn-group {
  margin-top: clamp(2.1875rem, 1.8779342723vw + 1.7473591549rem, 3.4375rem);
}
main.v3-styles .block-cards {
  padding-top: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
  padding-bottom: clamp(4.0625rem, 3.2863849765vw + 3.2922535211rem, 6.25rem);
}
main.v3-styles .block-cards .wp-block-heading + .block-slider, main.v3-styles .block-cards .wp-block-heading + .block-row, main.v3-styles .block-cards p + .block-slider, main.v3-styles .block-cards p + .block-row {
  margin-top: clamp(1.875rem, 1.8779342723vw + 1.4348591549rem, 3.125rem);
}
main.v3-styles .block-cards.type-2 .theme-card .item-main {
  padding-top: clamp(1rem, 1.3145539906vw + 0.6919014085rem, 1.875rem);
  padding-bottom: clamp(1rem, 1.3145539906vw + 0.6919014085rem, 1.875rem);
  padding-left: clamp(1rem, 1.3145539906vw + 0.6919014085rem, 1.875rem);
  padding-right: clamp(1rem, 1.3145539906vw + 0.6919014085rem, 1.875rem);
}
main.v3-styles .block-cards.type-2 .theme-card .item-main > * {
  margin-bottom: clamp(0.9375rem, 0.4694835681vw + 0.8274647887rem, 1.25rem);
}
main.v3-styles .block-cards.type-2 .theme-card .item-main img {
  width: clamp(2.5rem, 1.4084507042vw + 2.1698943662rem, 3.4375rem);
  margin-bottom: clamp(1.25rem, 0.4694835681vw + 1.1399647887rem, 1.5625rem);
}
main.v3-styles .block-cards.type-4 .theme-card {
  padding-top: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
  padding-bottom: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
  padding-left: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
  padding-right: clamp(1rem, 0.7511737089vw + 0.823943662rem, 1.5rem);
}
main.v3-styles .block-point-card .box {
  background: #CFE7D4;
  border-color: #CFE7D4;
}
main.v3-styles .block-stats .block-row .row {
  --theme-grid-track: minmax(0, 1fr);
}
main.v3-styles .block-container:not(.bg-white) .wp-block-heading + .block-point-cards, main.v3-styles .block-container:not(.bg-white) p + .block-point-cards {
  margin-top: clamp(1.875rem, 1.8779342723vw + 1.4348591549rem, 3.125rem);
}
main.v3-styles .block-product {
  padding-bottom: 0;
}
main.v3-styles .block-product .container {
  margin-bottom: clamp(2rem, 0.7511737089vw + 1.823943662rem, 2.5rem);
  padding-bottom: clamp(2rem, 0.7511737089vw + 1.823943662rem, 2.5rem);
  border-bottom: 1px solid #F0F5F5;
}
main.v3-styles .wp-block-table table.has-background thead th {
  background: #CFE7D4;
  font-weight: 500;
}
main.v3-styles .content table th, main.v3-styles .content table td {
  padding: 20px 15px;
}
@media (max-width: 991.98px) {
  main.v3-styles #how_it_works {
    padding-top: 55px !important;
  }
}
main.v3-styles .form-control {
  padding: 13px 15px;
  border-radius: 0;
}
main.v3-styles .gform_wrapper {
  padding-top: clamp(1.5625rem, 1.4084507042vw + 1.2323943662rem, 2.5rem);
  padding-bottom: clamp(1.5625rem, 1.4084507042vw + 1.2323943662rem, 2.5rem);
  padding-left: clamp(1.5625rem, 1.4084507042vw + 1.2323943662rem, 2.5rem);
  padding-right: clamp(1.5625rem, 1.4084507042vw + 1.2323943662rem, 2.5rem);
  background: var(--bs-color-2);
  color: var(--bs-white);
}
main.v3-styles .gfield_label {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: 400;
}
main.v3-styles .gfield {
  margin-bottom: 20px;
}
main.v3-styles .gfield--type-fileupload .ginput_container {
  padding: 15px 15px;
  text-align: center;
  background: var(--bs-color-5);
  color: var(--bs-black);
}
main.v3-styles .gfield--type-fileupload .ginput_container_fileupload .gform_fileupload_rules {
  display: block;
  margin: 10px 0;
  font-size: 14px;
  text-align: center;
  color: #666;
}
main.v3-styles .gfield--type-fileupload > .gfield_description {
  margin: 0;
  padding: 0 15px 15px 15px;
  font-size: 16px;
  text-align: center;
  background: var(--bs-color-5);
  color: var(--bs-black);
}
main.v3-styles .gform_button {
  width: 100%;
}