html {
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.5;
  margin: 0;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
details {
  display: block;
}
summary {
  display: list-item;
}
::selection {
  color: var(--white);
  background-color: var(--primary);
}
html {
  box-sizing: border-box;
  scroll-behavior: smooth;
  scroll-padding-top: 1rem;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}
body {
  position: relative;
}
a {
  text-decoration: none;
  color: var(--primary);
  font-weight: 500;
  transition: color 0.4s;
}
a:hover {
  color: var(--primary-light);
}
button,
input[type="submit"] {
  cursor: pointer;
  font-weight: 500;
}
button {
  background: transparent;
}
img,
video {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
code {
  white-space: pre-wrap;
}
figure {
  margin: 0;
}
small {
  font-weight: 400;
  color: var(--text);
}
.container {
  width: 70%;
}
.container,
.container-small,
.container-medium,
.container-large,
.container-full {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1024px) {
  .container {
    width: 80%;
    max-width: 75rem;
  }
  .container-small {
    width: 70%;
    max-width: 45rem;
  }
  .container-medium {
    width: 75%;
    max-width: 60rem;
  }
  .container-large {
    width: 90%;
    max-width: 90rem;
  }
}
@media (max-width: 1023px) {
  .container,
  .container-small,
  .container-medium,
  .container-large {
    width: 88%;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
}
.col {
  flex: 1;
}
.col-1 {
  flex: 0 0 auto;
  width: 8.3333333333%;
}
.col-2 {
  flex: 0 0 auto;
  width: 16.6666666667%;
}
.col-3 {
  flex: 0 0 auto;
  width: 25%;
}
.col-4 {
  flex: 0 0 auto;
  width: 33.3333333333%;
}
.col-5 {
  flex: 0 0 auto;
  width: 41.6666666667%;
}
.col-6 {
  flex: 0 0 auto;
  width: 50%;
}
.col-7 {
  flex: 0 0 auto;
  width: 58.3333333333%;
}
.col-8 {
  flex: 0 0 auto;
  width: 66.6666666667%;
}
.col-9 {
  flex: 0 0 auto;
  width: 75%;
}
.col-10 {
  flex: 0 0 auto;
  width: 83.3333333333%;
}
.col-11 {
  flex: 0 0 auto;
  width: 91.6666666667%;
}
.col-12 {
  flex: 0 0 auto;
  width: 100%;
}
.link-container {
  display: inline-block;
}
.link-container .link-text,
.link-container .link-icon-wrapper {
  display: inline-block;
  vertical-align: middle;
}
.link-container .link-icon-wrapper {
  margin-top: 0.1rem;
  margin-left: -0.2rem;
  transition: transform 0.4s;
}
.link-container:hover .link-icon-wrapper {
  transform: translateX(0.3rem);
}
.feather {
  display: block;
  width: 1.5em;
  height: 1.5em;
  stroke-width: 2px;
}
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #ddd;
  clip: auto !important;
  -webkit-clip-path: none;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}
.wp-block-code code {
  display: block;
}
.grecaptcha-badge {
  visibility: hidden;
}
:root {
  --primary: #1b5ab1;
  --primary-2: #0a93e1;
  --primary-3: #144485;
  --primary-dark: #0c274d;
  --primary-dark-2: #154384;
  --primary-light: #f2f6fd;
  --primary-light-2: #ceecfd;
  --primary-light-3: #8ad1f9;
  --white: #fff;
  --black: #111111;
  --gray: #ccc;
  --gray-light: #bebebe;
  --gray-light-2: #e6e6e6;
  --heading: #333;
  --text: #333;
  --text-dark: #111;
  --text-light: #767676;
  --light: #f0f0f0;
  --dark: #091834;
  --whatsapp: #25d366;
}
:root {
  --spacing-extra-small: 3rem;
  --spacing-small: 4rem;
  --spacing-medium: 6rem;
  --spacing-large: 8rem;
  --spacing-extra-large: 10rem;
  --header-size: 5rem;
  --border-radius: 16px;
  --border-radius-small: 12px;
  --box-shadow: 0 0 16px rgba(24, 63, 139, 0.15);
  --box-shadow-primary: 0 16px 32px 4px rgba(10, 147, 225, 0.08);
}
@media (max-width: 1279px) {
  :root {
    --header-size: 4rem;
  }
}
@media (max-width: 1023px) {
  :root {
    --spacing-extra-small: 2rem;
    --spacing-small: 3rem;
    --spacing-medium: 4rem;
    --spacing-large: 6rem;
    --spacing-extra-large: 8rem;
  }
}
html {
  font-size: 18px;
  line-height: 1.5;
}
@media (min-width: 1024px) and (max-width: 1599px) {
  html {
    font-size: 16px;
  }
}
html,
button,
input {
  letter-spacing: 0.4px;
}
body {
  font-family: "Nunito Sans", sans-serif;
  color: var(--text);
}
h1 {
  line-height: 1.25;
  letter-spacing: 1.1px;
}
.style-h1 {
  line-height: 1.25;
  letter-spacing: 1.1px;
}
.font-size-h1 {
  font-size: 2.1rem;
}
.line-height-h1 {
  line-height: 1.25;
}
h2 {
  line-height: 1.3;
  letter-spacing: 1px;
}
.style-h2 {
  line-height: 1.3;
  letter-spacing: 1px;
}
.font-size-h2 {
  font-size: 1.9rem;
}
.line-height-h2 {
  line-height: 1.3;
}
h3 {
  line-height: 1.35;
  letter-spacing: 0.9px;
}
.style-h3 {
  line-height: 1.35;
  letter-spacing: 0.9px;
}
.font-size-h3 {
  font-size: 1.7rem;
}
.line-height-h3 {
  line-height: 1.35;
}
h4 {
  line-height: 1.4;
  letter-spacing: 0.8px;
}
.style-h4 {
  line-height: 1.4;
  letter-spacing: 0.8px;
}
.font-size-h4 {
  font-size: 1.5rem;
}
.line-height-h4 {
  line-height: 1.4;
}
h5 {
  line-height: 1.45;
  letter-spacing: 0.7px;
}
.style-h5 {
  line-height: 1.45;
  letter-spacing: 0.7px;
}
.font-size-h5 {
  font-size: 1.3rem;
}
.line-height-h5 {
  line-height: 1.45;
}
h6 {
  line-height: 1.5;
  letter-spacing: 0.6px;
}
.style-h6 {
  line-height: 1.5;
  letter-spacing: 0.6px;
}
.font-size-h6 {
  font-size: 1.1rem;
}
.line-height-h6 {
  line-height: 1.5;
}
.font-family-heading {
  font-family: "Nunito Sans", sans-serif;
}
.font-family-text {
  font-family: "Nunito Sans", sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Nunito Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-weight: 800;
  color: var(--heading);
  margin-top: 0;
  margin-bottom: 1rem;
}
h1,
.style-h1,
h2,
.style-h2 {
  font-size: 2.25rem;
  line-height: 1.25;
}
h3,
.style-h3 {
  font-size: 1.875rem;
}
h4,
.style-h4 {
  font-size: 1.5rem;
}
h5,
.style-h5 {
  font-size: 1.25rem;
}
h6,
.style-h6 {
  font-size: 1.125rem;
}
@media (max-width: 1023px) {
  h1,
  .style-h1,
  h2,
  .style-h2 {
    font-size: 1.7rem;
  }
  h3,
  .style-h3 {
    font-size: 1.5rem;
  }
  h4,
  .style-h4 {
    font-size: 1.3rem;
  }
  h5,
  .style-h5 {
    font-size: 1.2rem;
  }
  h6,
  .style-h6 {
    font-size: 1.1rem;
  }
}
.link {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 1.1rem;
  font-weight: 700;
}
p {
  margin-top: 0;
}
p:not(:last-of-type) {
  margin-bottom: 1rem;
}
p:last-of-type {
  margin-bottom: 0;
}
p > a {
  text-decoration: underline;
  text-decoration-skip-ink: none;
  text-underline-offset: 3px;
}
p + ul {
  margin-top: 0.5rem;
}
a:hover {
  color: var(--primary-2);
}
ul {
  margin-top: 0;
}
li {
  margin: 0 0 0.25rem;
}
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  box-shadow: inset 0 0 8px 8px var(--white);
}
::-webkit-scrollbar-thumb {
  background: var(--primary);
  border-radius: 8px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--primary-2);
}
#contact-modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3000;
  width: 100%;
  transform: translateX(101%);
  transition-delay: 0.8s;
}
#contact-modal .contact-modal-wrapper {
  display: flex;
  justify-content: flex-end;
  transition: all 0.8s ease-in-out;
}
#contact-modal .contact-modal-container {
  display: flex;
  align-items: center;
  min-height: 100vh;
  background-color: var(--white);
  transform: translateX(101%);
  transition: all 0.8s ease-in-out;
}
#contact-modal .contact-modal-inner-container {
  max-height: 100vh;
  overflow: scroll;
}
#contact-modal .contact-modal-menu-logo {
  position: absolute;
  z-index: 1;
  top: 3%;
  left: 10%;
  width: 8rem;
  pointer-events: none;
}
#contact-modal .close-button-wrapper {
  position: absolute;
  z-index: 1;
  top: 2%;
  right: 8%;
}
#contact-modal .close-button {
  background: transparent;
  border: none;
  padding: 0;
  font-size: 1.75rem;
  color: var(--heading);
}
#contact-modal.active {
  transform: translateX(0);
  transition-delay: 0s;
}
#contact-modal.active .contact-modal-wrapper {
  background-color: rgba(9, 24, 52, 0.95);
}
#contact-modal.active .contact-modal-container {
  transform: translateX(0);
}
#contact-modal .wpcf7 {
  color: var(--primary);
  font-weight: 600;
}
#contact-modal .wpcf7 .ajax-loader {
  position: absolute;
}
#contact-modal .wpcf7-response-output {
  margin-left: 0;
  margin-right: 0;
  padding: 0.5rem 1rem;
  grid-column: 1/3;
}
#contact-modal .wpcf7-not-valid-tip {
  margin-top: 0.5rem;
}
#contact-modal .wpcf7-form-control-wrap {
  display: block;
  margin-top: 0.5rem;
}
#contact-modal .wpcf7 span:not(.wpcf7-not-valid-tip):first-of-type {
  display: block;
}
#contact-modal .wpcf7 input,
#contact-modal .wpcf7 select,
#contact-modal .wpcf7 textarea {
  width: 100%;
  padding: 0.5rem 1rem;
  background-color: transparent;
  border: 2px solid var(--gray);
  border-radius: 4px;
  letter-spacing: 0.6px;
}
#contact-modal .wpcf7 input:focus,
#contact-modal .wpcf7 select:focus,
#contact-modal .wpcf7 textarea:focus {
  border-color: var(--primary);
  outline: none;
}
#contact-modal .wpcf7 input[type="submit"] {
  cursor: pointer;
  width: auto;
  font-weight: 600;
  color: var(--primary);
  background-color: transparent;
  border-color: var(--primary);
  border-radius: 4px;
  transition: all 0.3s;
}
#contact-modal .wpcf7 input[type="submit"]:hover {
  color: var(--white);
  background-color: var(--primary);
}
#contact-modal .wpcf7 textarea {
  max-height: 5rem;
}
@media (min-width: 1024px) {
  #contact-modal {
    font-size: 80%;
  }
  #contact-modal h2 {
    font-size: 1.3rem;
    line-height: 1.45;
    letter-spacing: 0.7px;
    margin-bottom: 1rem;
  }
  #contact-modal .contact-modal-inner-container {
    padding: 10%;
  }
  #contact-modal .wpcf7 p {
    margin-bottom: 0;
  }
  #contact-modal .wpcf7 p:nth-of-type(5),
  #contact-modal .wpcf7 p:nth-of-type(6),
  #contact-modal .wpcf7 p:nth-of-type(7) {
    grid-column: 1/3;
  }
  #contact-modal .wpcf7 form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
  }
}
@media (max-width: 1023px) {
  #contact-modal h2 {
    text-align: center;
    margin-bottom: 1.2rem;
  }
  #contact-modal .contact-modal-inner-container {
    padding: 6rem 10% 3rem;
  }
}
.wpcf7 input,
.wpcf7 textarea {
  width: 100%;
}
.btn {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  border: 2px solid transparent;
  padding: 0.5rem 1.5rem;
  font-size: 1.1rem;
  border-radius: 50px;
  transition: all 0.4s;
}
.btn-primary {
  color: #fff;
  background-color: var(--primary);
  border-color: var(--primary);
}
.btn-primary:hover {
  color: #fff;
  filter: brightness(0.8);
}
.btn-outline-primary {
  color: var(--primary);
  border-color: var(--primary);
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: var(--primary);
}
.btn-outline-white {
  color: #fff;
  background-color: transparent;
  border-color: #fff;
}
.btn-outline-white:hover {
  color: #fff;
  background-color: var(--primary);
  border-color: var(--primary);
}
.btn-new {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  border: 2px solid transparent;
  padding: 0.5rem 1.5rem;
  border-radius: 50px;
  transition: all 0.4s;
}
.btn-new-primary {
  color: #fff !important;
  background-color: var(--primary);
  border-color: var(--primary);
}
.btn-new-primary:hover {
  color: #fff;
  filter: brightness(0.8);
}
.btn-whatsapp {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  color: #fff;
  background-color: var(--whatsapp);
  font-weight: 600;
  border-radius: 50px;
  transition: filter 0.3s;
}
.btn-whatsapp:hover {
  color: #fff;
  filter: brightness(0.9);
}
.meson-social-media-container {
  display: flex;
}
.meson-social-media-container .meson-social-media-wrapper:not(:last-of-type) {
  margin-right: 0.25rem;
}
#faq .accordion-row {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
#faq .accordion-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 2px solid var(--primary-light-3);
  padding: 0.75rem 0;
  cursor: pointer;
  transition: color 0.4s;
}
#faq .accordion-title h3 {
  transition: color 0.4s;
  margin: 0;
}
#faq .accordion-title .feather {
  width: 1.25em;
  flex-shrink: 0;
  transition: transform 0.4s ease-in-out;
}
#faq .accordion-title:hover {
  color: var(--primary);
}
#faq .accordion-title:hover h3 {
  color: var(--primary);
}
#faq .accordion-content {
  overflow: hidden;
  transition: height 0.4s ease-in-out;
  margin-top: 1rem;
}
#faq .accordion-content-inner {
  margin-bottom: 2rem;
}
#faq .accordion.active .accordion-title {
  color: var(--primary);
}
#faq .accordion.active .accordion-title h3 {
  color: var(--primary);
}
#faq .accordion.active .feather {
  transform: rotate(180deg);
}
#faq .faq-title {
  display: flex;
  align-items: center;
  padding-right: 1rem;
}
#faq .faq-title .faq-number {
  width: 2.5rem;
  flex-shrink: 0;
}
#faq .faq-content {
  display: flex;
}
#faq .faq-content-text {
  flex: 4;
  padding-left: 2.5rem;
}
#faq .faq-content .faq-number {
  flex: 1;
  font-size: 8rem;
  font-weight: 700;
  text-align: center;
  align-self: center;
  margin-top: -2rem;
  color: #dce6f9;
}
@media (max-width: 1023px) {
  #faq .accordion-title {
    padding: 0.5rem 0;
  }
  #faq .accordion-content {
    margin-top: 0.5rem;
  }
  #faq .accordion-content-inner {
    margin-bottom: 1rem;
  }
  #faq .faq-content .faq-number {
    display: none;
  }
}
.search #site-header {
  background-color: #fff;
  box-shadow: 0 0 32px rgba(10, 147, 225, 0.1);
}
.search #site-header .header-languages {
  display: none;
}
.search #top {
  padding-top: var(--spacing-small);
  padding-bottom: var(--spacing-small);
}
.search .pagination-row {
  text-align: center;
}
.search .posts-row {
  grid-template-columns: 1fr 1fr 1fr;
}
@media (max-width: 1599px) {
  .search .posts-row {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .search .posts-row {
    grid-template-columns: 1fr;
  }
}
#search-posts {
  position: relative;
  z-index: 2;
}
#search-posts-form {
  margin: auto;
  display: flex;
  border-radius: 50px;
  overflow: hidden;
  max-width: 30rem;
}
#search-posts-form input {
  width: 100%;
  padding: 1rem 1.5rem;
  outline: none;
  border: none;
  border-radius: 0;
}
#search-posts-form button {
  padding-left: 1rem;
  padding-right: 1.5rem;
  border: none;
  color: var(--white);
  background-color: var(--primary);
}
@media (min-width: 768px) {
  #search-posts-form {
    width: 60%;
  }
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes overlay-header {
  from {
    transform: translateY(-101%);
  }
  to {
    transform: translateY(0);
  }
}
.section {
  padding-top: var(--spacing-medium);
  padding-bottom: var(--spacing-medium);
}
.section-top {
  padding: var(--spacing-small) 0 var(--spacing-medium);
}
.section-white,
.section-white h1,
.section-white h2,
.section-white h3,
.section-white h4,
.section-white h5,
.section-white h6,
.section-white p,
.section-white ul,
.section-white a:not(:hover) {
  color: var(--white);
  transition: color 0.4s;
}
.section-white ::selection {
  color: var(--primary);
  background-color: var(--white);
}
@media (max-width: 1023px) {
  .section {
    padding: var(--spacing-medium) 0;
  }
}
.section-full-height {
  display: flex;
  padding-top: 2rem;
  padding-bottom: var(--spacing-medium);
}
@media (min-width: 1024px) {
  .section-full-height {
    min-height: calc(100vh - var(--header-size));
    align-items: center;
  }
}
@media (max-width: 1023px) {
  .section-full-height {
    padding-bottom: var(--spacing-large);
  }
}
.section-services {
  padding-top: var(--spacing-medium);
  padding-bottom: var(--spacing-medium);
}
.section-services .container-small {
  text-align: center;
}
.section-services .row-new {
  display: grid;
  margin-top: var(--spacing-extra-small);
}
.section-services .col-new {
  background-color: #fff;
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: 1fr auto;
  gap: 3rem;
  padding: 2.5rem 2rem 2rem;
  box-shadow: var(--box-shadow);
  transition: all 0.3s;
}
.section-services .col-new:hover {
  background-color: var(--primary);
}
.section-services .col-new:hover h3,
.section-services .col-new:hover p,
.section-services .col-new:hover a {
  color: #fff;
}
.section-services .col-new:hover a:hover {
  color: var(--primary-light-3);
}
.section-services .col-new h3,
.section-services .col-new p,
.section-services .col-new a {
  transition: color 0.3s;
}
.section-services .col-new h3 {
  margin-top: 2rem;
}
@media (max-width: 1279px) {
  .section-services .row-new {
    gap: 1.5rem;
  }
  .section-services .col-new {
    border-radius: var(--border-radius);
  }
}
@media (min-width: 1280px) {
  .section-services .row-new {
    grid-template-columns: repeat(3, 1fr);
  }
}
.section-reviews {
  padding-top: var(--spacing-medium);
  padding-bottom: var(--spacing-medium);
}
.section-reviews .row-new {
  display: grid;
  gap: 2rem;
  margin-top: 3rem;
}
.section-reviews .col-new {
  display: grid;
  grid-template-rows: 1fr auto;
}
.section-reviews .review-container {
  position: relative;
  display: flex;
  gap: 0.75rem;
  background-color: #fff;
  font-weight: 500;
  padding: 2rem 1.5rem 2rem 1rem;
  margin-bottom: 0.5rem;
  border-radius: var(--border-radius);
  box-shadow: var(--box-shadow);
  transition: all 0.3s;
}
.section-reviews .review-container:hover {
  color: #fff;
  background-color: var(--primary);
}
.section-reviews .review-container:hover::before {
  border-top-color: var(--primary);
}
.section-reviews .review-container:hover path {
  fill: #fff;
}
.section-reviews .review-container::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 8%;
  border: 1rem solid transparent;
  border-top-color: #fff;
  transition: all 0.3s;
}
.section-reviews .review-container svg {
  flex-shrink: 0;
}
.section-reviews .review-container path {
  transition: all 0.3s;
}
.section-reviews .reviewer-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.section-reviews .reviewer-container .reviewer-name {
  color: var(--primary);
  font-size: 1.1rem;
  font-weight: 700;
}
.section-reviews .reviewer-container img {
  width: 150px;
}
@media (min-width: 1280px) {
  .section-reviews .row-new {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 767px) {
  .section-reviews .review-container {
    padding: 1.5rem 1rem 1.5rem 0.5rem;
  }
}
.section-contact {
  background-color: var(--primary-dark);
}
.section-contact,
.section-contact h2 {
  color: #fff;
}
.section-contact .row-new {
  display: grid;
}
.section-contact .left-col .contact-cta {
  margin-top: 2rem;
}
@media (min-width: 1280px) {
  .section-contact .row-new {
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
  }
  .section-contact .left-col {
    padding-top: var(--spacing-extra-large);
    padding-bottom: var(--spacing-extra-large);
  }
  .section-contact .right-col {
    position: relative;
  }
  .section-contact .right-col img {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: auto;
    height: 100%;
  }
}
@media (max-width: 1279px) {
  .section-contact {
    padding-top: var(--spacing-medium);
    text-align: center;
  }
  .section-contact .row-new {
    gap: 2rem;
  }
}
.section-contact-old .contact-container {
  display: flex;
  align-items: center;
}
.section-contact-old .contact-container p {
  font-size: 120%;
  margin-bottom: 0;
}
.section-contact-old .contact-container svg {
  width: 2.5rem;
  height: 2.5rem;
}
@media (min-width: 1024px) {
  .section-contact-old .contact-container > div {
    padding: 0 0.25rem;
  }
}
@media (min-width: 1350px) {
  .section-contact-old .contact-container {
    justify-content: center;
  }
}
@media (min-width: 1600px) and (max-width: 1699px) {
  .section-contact-old .contact-container p {
    font-size: 100%;
  }
}
@media (max-width: 1349px) {
  .section-contact-old .contact-row {
    max-width: 370px;
    margin: auto;
  }
  .section-contact-old .contact-col {
    width: 100%;
  }
  .section-contact-old .contact-col:not(:last-of-type) {
    margin-bottom: 1rem;
  }
  .section-contact-old .contact-container svg {
    width: 2rem;
    height: 2rem;
    margin-right: 1rem;
  }
}
@media (max-width: 1023px) {
  .section-contact-old .contact-row {
    max-width: 320px;
    margin: auto;
  }
}
.section-faqs {
  padding-top: var(--spacing-medium);
  padding-bottom: var(--spacing-medium);
}
.section-faqs .faqs-container {
  display: grid;
  column-gap: 3rem;
  margin-top: var(--spacing-small);
}
.section-faqs .faq.active .faq-title {
  color: var(--primary);
}
.section-faqs .faq.active .faq-title h3 {
  color: var(--primary);
}
.section-faqs .faq.active svg {
  transform: rotate(180deg);
}
.section-faqs .faq-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  border-bottom: 2px solid var(--primary-light-2);
  padding: 1rem 0;
  cursor: pointer;
  transition: color 0.4s;
}
.section-faqs .faq-title:hover {
  color: var(--primary);
}
.section-faqs .faq-title:hover h3 {
  color: var(--primary);
}
.section-faqs .faq-title h3 {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 0;
  transition: color 0.4s;
}
.section-faqs .faq-title svg {
  width: 1rem;
  flex-shrink: 0;
  transition: transform 0.4s ease-in-out;
}
.section-faqs .faq-content {
  overflow: hidden;
  transition: height 0.4s ease-in-out;
}
.section-faqs .faq-content-inner {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
@media (min-width: 1024px) {
  .section-faqs .faqs-container {
    grid-template-columns: 1fr 1fr;
  }
}
.section-form {
  position: relative;
  padding-top: var(--spacing-medium);
  padding-bottom: var(--spacing-medium);
  color: #fff;
  background-color: var(--primary-dark);
}
.section-form svg {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: auto;
  transform: translateY(-50%);
}
.section-form .container {
  position: relative;
  z-index: 1;
}
.section-form .row-new {
  display: grid;
  align-items: center;
}
.section-form .left-col h2 {
  color: #fff;
}
.section-form .right-col .wpcf7 {
  max-width: 30rem;
  margin-left: auto;
}
.section-form .right-col .wpcf7 label {
  font-weight: 600;
}
.section-form .right-col .wpcf7 input {
  border: none;
}
.section-form .right-col .wpcf7 input[type="submit"] {
  width: auto;
  padding: 0.75rem 2rem;
  margin-top: 1rem;
  color: #fff;
  background-color: var(--primary);
  border-radius: 50px;
  transition: all 0.3s;
}
.section-form .right-col .wpcf7 input[type="submit"]:hover {
  filter: brightness(0.9);
}
.section-form .right-col .wpcf7 input:not([type="submit"]) {
  padding: 0.5rem 1rem;
  margin-top: 0.5rem;
  outline: none;
  border-radius: 50px;
}
.section-form .right-col .wpcf7 input.form-url,
.section-form .right-col .wpcf7 input.form-date {
  display: none;
}
.section-form
  .right-col
  .wpcf7
  p:not(:nth-of-type(5))
  label
  > span:first-of-type::after {
  content: " *";
  color: #ff5252;
}
@media (min-width: 1024px) {
  .section-form {
    padding-top: var(--spacing-large);
    padding-bottom: var(--spacing-large);
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.6)),
      url("assets/images/meson-cta.jpg");
    background-position: center;
    background-size: cover;
  }
  .section-form svg {
    display: none;
  }
  .section-form .row-new {
    grid-template-columns: 10fr 7fr;
    gap: 10%;
  }
}
@media (max-width: 1023px) {
  .section-form .row-new {
    gap: 3rem;
  }
  .section-form .left-col {
    text-align: center;
  }
  .section-form .right-col .wpcf7 {
    margin-right: auto;
  }
  .section-form .right-col .wpcf7 input[type="submit"] {
    width: 100%;
  }
}
.section-articles {
  background-color: var(--primary-light);
  padding-top: var(--spacing-medium);
  padding-bottom: var(--spacing-medium);
}
.section-articles .articles-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
.section-articles .articles-top h2 {
  margin-bottom: 0;
}
.section-articles .articles-top a {
  flex-shrink: 0;
}
.section-articles .articles-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  margin-top: 2rem;
}
.section-articles .article-col {
  display: flex;
  background-color: var(--white);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 4px 4px 16px rgba(27, 90, 177, 0.08);
  transition: all 0.4s;
}
.section-articles .article-col:hover {
  filter: brightness(0.9);
}
.section-articles .article-thumbnail {
  flex-shrink: 0;
}
.section-articles .article-thumbnail img {
  width: 12rem;
  height: 100%;
  object-fit: cover;
}
.section-articles .article-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5rem;
  flex-grow: 1;
  padding: 1.5rem;
}
.section-articles .article-title h3 {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 0;
  transition: all 0.4s;
}
.section-articles .article-description {
  color: var(--text);
  font-size: 0.9rem;
}
.section-articles .article-date {
  color: var(--primary);
  font-weight: 600;
  margin-bottom: 2px;
}
@media (max-width: 1279px) {
  .section-articles .articles-row {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1023px) {
  .section-articles .articles-top {
    justify-content: center;
    text-align: center;
  }
  .section-articles .articles-row {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767px) {
  .section-articles .article-col {
    flex-direction: column;
  }
  .section-articles .article-thumbnail img {
    width: 100%;
    aspect-ratio: 3/2;
  }
}
#site-header {
  position: sticky;
  top: 0;
  z-index: 10;
  width: 100%;
  display: flex;
  align-items: center;
  height: var(--header-size);
  transition: all 0.3s;
}
#site-header.scrolled {
  background-color: #fff;
  box-shadow: 0 0 32px rgba(10, 147, 225, 0.1);
}
#site-header > .container {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  z-index: 1;
}
#site-header .header-left .header-logo img {
  width: 10rem;
}
#site-header .header-center .menu {
  display: flex;
  justify-content: center;
}
#site-header .header-center .sub-menu {
  position: absolute;
  background-color: #fff;
  list-style: none;
  padding: 1rem 0 0;
  margin: 0;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  overflow: hidden;
}
#site-header .header-center .sub-menu a {
  display: block;
  padding: 0.5rem 1rem;
  transition: all 0.3s;
}
#site-header .header-center .sub-menu a:hover {
  background-color: var(--primary-light);
}
#site-header .header-center .menu-item-has-children svg {
  margin-left: 0.1rem;
  transition: transform 0.3s;
}
#site-header .header-center .menu-item-has-children:hover svg {
  transform: rotate(180deg);
}
#site-header .header-center .menu-item-has-children:not(:hover) .sub-menu {
  display: none;
}
#site-header .header-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
}
#site-header .header-right .hamburger-menu-wrapper {
  text-align: right;
}
#site-header .header-right .header-languages ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
}
#site-header .header-right .header-languages li {
  margin: 0;
}
#site-header .header-right .header-languages li:last-of-type {
  border-left: 2px solid var(--text);
}
#site-header .header-right .header-languages li.current-lang a {
  color: var(--primary);
}
#site-header .header-right .header-languages li a {
  color: var(--text);
  font-weight: 700;
  padding: 0.5rem;
}
#site-header .header-right .header-languages li a:hover {
  color: var(--primary);
}
#site-header .menu {
  padding: 0;
  margin: 0;
  list-style: none;
}
#site-header .menu li {
  margin: 0;
}
#site-header .menu a {
  color: var(--text);
  font-weight: 700;
  padding: 0.6rem;
  transition: color 0.3s;
}
#site-header .menu a:hover {
  color: var(--primary);
}
#site-header .current-menu-item a {
  color: var(--primary);
}
@media (min-width: 1280px) and (max-width: 1599px) {
  #site-header {
    font-size: 0.9rem;
  }
}
@media (max-width: 1279px) {
  #site-header > .container {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
  }
  #site-header .header-left .header-logo img {
    width: 8rem;
  }
  #site-header .header-center {
    display: none;
  }
  #site-header .header-right {
    flex-direction: row-reverse;
  }
  #site-header .header-right .header-languages li:first-of-type a {
    padding-left: 0;
  }
  #site-header .header-right .header-languages li a {
    padding: 0.4rem;
  }
  #site-header .header-right .modal-button {
    display: none;
  }
}
#hamburger-menu-new {
  height: 4rem;
  padding: 0.5rem 0 0.5rem 0.5rem;
  cursor: pointer;
  background: transparent;
  border: none;
}
#hamburger-menu-new.menu-open .hamburger-menu {
  background-color: transparent;
}
#hamburger-menu-new.menu-open .hamburger-menu,
#hamburger-menu-new.menu-open .hamburger-menu::before,
#hamburger-menu-new.menu-open .hamburger-menu::after {
  transition: top 0.1s ease-in, transform 0.1s 0.1s, width 0.1s;
}
#hamburger-menu-new.menu-open .hamburger-menu::before,
#hamburger-menu-new.menu-open .hamburger-menu::after {
  top: 0;
}
#hamburger-menu-new.menu-open .hamburger-menu::before {
  transform: rotate(-45deg);
}
#hamburger-menu-new.menu-open .hamburger-menu::after {
  width: 100%;
  transform: rotate(45deg);
}
#hamburger-menu-new .hamburger-menu {
  width: 1.75rem;
  position: relative;
}
#hamburger-menu-new .hamburger-menu::before,
#hamburger-menu-new .hamburger-menu::after {
  content: "";
  position: absolute;
}
#hamburger-menu-new .hamburger-menu,
#hamburger-menu-new .hamburger-menu::before,
#hamburger-menu-new .hamburger-menu::after {
  height: 4px;
  background-color: var(--text);
  border-radius: 10px;
  transition: top 0.1s 0.1s, transform 0.1s, width 0.1s 0.1s,
    background-color 0.1s 0.1s;
}
#hamburger-menu-new .hamburger-menu::before {
  left: 0;
  width: 100%;
  top: -0.5rem;
}
#hamburger-menu-new .hamburger-menu::after {
  right: 0;
  width: 70%;
  top: 0.5rem;
}
@media (min-width: 1280px) {
  #hamburger-menu-new {
    display: none;
  }
}
#overlay-header-new {
  text-align: right;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  padding-top: 6rem;
  padding-bottom: 2rem;
  overflow: auto;
  background-color: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  animation: fade-in 0.3s;
}
#overlay-header-new:not(.menu-open) {
  display: none;
}
#overlay-header-new .container {
  overflow: auto;
  max-height: 100%;
}
#overlay-header-new .current-menu-item > a,
#overlay-header-new .current-menu-parent > a {
  color: var(--primary-2);
}
#overlay-header-new .menu-item a {
  font-size: 1.5rem;
  padding: 0.5rem 0;
}
#overlay-header-new .overlay-header-contact-details a:hover {
  color: var(--primary-light);
}
#overlay-header-new .contact-container {
  display: flex;
}
#overlay-header-new .contact-container div:first-of-type {
  margin-right: 1rem;
}
#overlay-header-new .contact-container:not(:last-of-type) {
  margin-bottom: 1rem;
}
#overlay-header-new .contact-container p {
  margin: 0;
}
#overlay-header-new .overlay-header-social-media-container {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  padding-top: 2rem;
  margin-top: 2rem;
  border-top: 2px solid var(--primary-light-3);
}
#overlay-header-new .overlay-header-social-media-container svg {
  display: block;
  width: 1.75rem;
  height: auto;
}
#site-footer {
  padding-top: 5rem;
  padding-bottom: 3rem;
  color: var(--white);
  background-color: var(--primary-dark);
}
#site-footer a {
  color: #fff;
}
#site-footer a:hover {
  color: var(--primary-light-3);
}
#site-footer .footer-row {
  display: grid;
  gap: 2rem;
}
#site-footer .footer-col .footer-title {
  color: var(--primary-light-3);
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
}
#site-footer .footer-col:nth-of-type(1) {
  display: grid;
  grid-template-rows: auto auto 1fr;
  align-items: end;
}
#site-footer .footer-col:nth-of-type(1) .footer-logo-white img {
  width: 10rem;
  margin-bottom: 1rem;
}
#site-footer .footer-col:nth-of-type(1) .badges {
  margin-top: 2rem;
}
#site-footer .footer-col:nth-of-type(1) .badges .badges-container {
  display: flex;
  gap: 1rem;
}
#site-footer .footer-col:nth-of-type(1) .badges .badges-container img {
  width: 5rem;
}
#site-footer .footer-col:nth-of-type(2) {
  display: flex;
  justify-content: center;
  gap: 2rem;
}
#site-footer .footer-col:nth-of-type(2) ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
#site-footer .footer-col:nth-of-type(2) li {
  margin: 0;
}
#site-footer .footer-col:nth-of-type(2) a {
  display: inline-block;
  padding: 0.25rem 0;
}
#site-footer .footer-col:nth-of-type(3) svg {
  width: 1.5rem;
  height: 1.5rem;
}
#site-footer .footer-col:nth-of-type(3) .footer-contact-wrapper {
  display: flex;
}
#site-footer .footer-col:nth-of-type(3) .footer-contact-container {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.5rem 0;
}
#site-footer .footer-col:nth-of-type(3) .footer-social-media-container {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
}
#site-footer .footer-col:nth-of-type(3) .footer-social-media-container a {
  display: flex;
  color: var(--primary-light-3);
}
#site-footer .footer-col:nth-of-type(3) .footer-social-media-container a:hover {
  color: #fff;
}
#site-footer .footer-bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  text-align: center;
  padding-top: 1.5rem;
  margin-top: 2rem;
  border-top: 2px solid var(--primary-light-3);
}
@media (min-width: 1024px) {
  #site-footer {
    font-size: 0.9rem;
  }
}
@media (min-width: 1280px) {
  #site-footer .footer-row {
    grid-template-columns: 5fr 5fr 4fr;
  }
}
@media (max-width: 1279px) {
  #site-footer {
    padding-bottom: 5rem;
  }
  #site-footer .footer-col:nth-of-type(1) {
    text-align: center;
  }
  #site-footer .footer-col:nth-of-type(1) .badges .badges-container {
    justify-content: center;
  }
  #site-footer .footer-col:nth-of-type(2) .footer-col-inner:last-of-type {
    text-align: right;
  }
  #site-footer .footer-col:nth-of-type(3) {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
@media (max-width: 767px) {
  #site-footer .footer-col:nth-of-type(2) {
    justify-content: space-between;
  }
}
.color-primary {
  color: var(--primary);
}
.color-primary-2 {
  color: var(--primary-2);
}
.color-primary-3 {
  color: var(--primary-3);
}
.color-primary-light {
  color: var(--primary-light);
}
.color-primary-dark {
  color: var(--primary-dark);
}
.color-primary-dark-2 {
  color: var(--primary-dark-2);
}
.color-yellow {
  color: var(--yellow);
}
.color-heading {
  color: var(--heading);
}
.color-text {
  color: var(--text);
}
.color-light {
  color: var(--light);
}
.color-dark {
  color: var(--dark);
}
.color-white {
  color: var(--white);
}
.color-black {
  color: var(--black);
}
.background-primary {
  background-color: var(--primary);
}
.background-primary-2 {
  background-color: var(--primary-2);
}
.background-primary-3 {
  background-color: var(--primary-3);
}
.background-primary-light {
  background-color: var(--primary-light);
}
.background-primary-dark {
  background-color: var(--primary-dark);
}
.background-primary-dark-2 {
  background-color: var(--primary-dark-2);
}
.background-yellow {
  background-color: var(--yellow);
}
.background-heading {
  background-color: var(--heading);
}
.background-text {
  background-color: var(--text);
}
.background-light {
  background-color: var(--light);
}
.background-dark {
  background-color: var(--dark);
}
.background-white {
  background-color: var(--white);
}
.background-black {
  background-color: var(--black);
}
.background-image-light {
  background: linear-gradient(rgba(255, 255, 255, 0.8), white),
    url("assets/images/front-page/homepage-top-background-image.jpg");
  background-size: cover;
  background-position: center;
}
.mt-0 {
  margin-top: 0rem;
}
@media (max-width: 1023px) {
  .mt-0 {
    margin-top: 0rem;
  }
}
.mt-1 {
  margin-top: 1rem;
}
@media (max-width: 1023px) {
  .mt-1 {
    margin-top: 0.6rem;
  }
}
.mt-2 {
  margin-top: 2rem;
}
@media (max-width: 1023px) {
  .mt-2 {
    margin-top: 1.2rem;
  }
}
.mt-3 {
  margin-top: 3rem;
}
@media (max-width: 1023px) {
  .mt-3 {
    margin-top: 1.8rem;
  }
}
.mt-4 {
  margin-top: 4rem;
}
@media (max-width: 1023px) {
  .mt-4 {
    margin-top: 2.4rem;
  }
}
.mt-5 {
  margin-top: 5rem;
}
@media (max-width: 1023px) {
  .mt-5 {
    margin-top: 3rem;
  }
}
.mt-6 {
  margin-top: 6rem;
}
@media (max-width: 1023px) {
  .mt-6 {
    margin-top: 3.6rem;
  }
}
.mt-7 {
  margin-top: 7rem;
}
@media (max-width: 1023px) {
  .mt-7 {
    margin-top: 4.2rem;
  }
}
.mt-8 {
  margin-top: 8rem;
}
@media (max-width: 1023px) {
  .mt-8 {
    margin-top: 4.8rem;
  }
}
.mt-9 {
  margin-top: 9rem;
}
@media (max-width: 1023px) {
  .mt-9 {
    margin-top: 5.4rem;
  }
}
.mb-0 {
  margin-bottom: 0rem;
}
@media (max-width: 1023px) {
  .mb-0 {
    margin-bottom: 0rem;
  }
}
.mb-1 {
  margin-bottom: 1rem;
}
@media (max-width: 1023px) {
  .mb-1 {
    margin-bottom: 0.6rem;
  }
}
.mb-2 {
  margin-bottom: 2rem;
}
@media (max-width: 1023px) {
  .mb-2 {
    margin-bottom: 1.2rem;
  }
}
.mb-3 {
  margin-bottom: 3rem;
}
@media (max-width: 1023px) {
  .mb-3 {
    margin-bottom: 1.8rem;
  }
}
.mb-4 {
  margin-bottom: 4rem;
}
@media (max-width: 1023px) {
  .mb-4 {
    margin-bottom: 2.4rem;
  }
}
.mb-5 {
  margin-bottom: 5rem;
}
@media (max-width: 1023px) {
  .mb-5 {
    margin-bottom: 3rem;
  }
}
.mb-6 {
  margin-bottom: 6rem;
}
@media (max-width: 1023px) {
  .mb-6 {
    margin-bottom: 3.6rem;
  }
}
.mb-7 {
  margin-bottom: 7rem;
}
@media (max-width: 1023px) {
  .mb-7 {
    margin-bottom: 4.2rem;
  }
}
.mb-8 {
  margin-bottom: 8rem;
}
@media (max-width: 1023px) {
  .mb-8 {
    margin-bottom: 4.8rem;
  }
}
.mb-9 {
  margin-bottom: 9rem;
}
@media (max-width: 1023px) {
  .mb-9 {
    margin-bottom: 5.4rem;
  }
}
.my-0 {
  margin-top: 0rem;
  margin-bottom: 0rem;
}
@media (max-width: 1023px) {
  .my-0 {
    margin-top: 0rem;
  }
}
@media (max-width: 1023px) {
  .my-0 {
    margin-bottom: 0rem;
  }
}
.my-1 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
@media (max-width: 1023px) {
  .my-1 {
    margin-top: 0.6rem;
  }
}
@media (max-width: 1023px) {
  .my-1 {
    margin-bottom: 0.6rem;
  }
}
.my-2 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
@media (max-width: 1023px) {
  .my-2 {
    margin-top: 1.2rem;
  }
}
@media (max-width: 1023px) {
  .my-2 {
    margin-bottom: 1.2rem;
  }
}
.my-3 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
@media (max-width: 1023px) {
  .my-3 {
    margin-top: 1.8rem;
  }
}
@media (max-width: 1023px) {
  .my-3 {
    margin-bottom: 1.8rem;
  }
}
.my-4 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
@media (max-width: 1023px) {
  .my-4 {
    margin-top: 2.4rem;
  }
}
@media (max-width: 1023px) {
  .my-4 {
    margin-bottom: 2.4rem;
  }
}
.my-5 {
  margin-top: 5rem;
  margin-bottom: 5rem;
}
@media (max-width: 1023px) {
  .my-5 {
    margin-top: 3rem;
  }
}
@media (max-width: 1023px) {
  .my-5 {
    margin-bottom: 3rem;
  }
}
.my-6 {
  margin-top: 6rem;
  margin-bottom: 6rem;
}
@media (max-width: 1023px) {
  .my-6 {
    margin-top: 3.6rem;
  }
}
@media (max-width: 1023px) {
  .my-6 {
    margin-bottom: 3.6rem;
  }
}
.my-7 {
  margin-top: 7rem;
  margin-bottom: 7rem;
}
@media (max-width: 1023px) {
  .my-7 {
    margin-top: 4.2rem;
  }
}
@media (max-width: 1023px) {
  .my-7 {
    margin-bottom: 4.2rem;
  }
}
.my-8 {
  margin-top: 8rem;
  margin-bottom: 8rem;
}
@media (max-width: 1023px) {
  .my-8 {
    margin-top: 4.8rem;
  }
}
@media (max-width: 1023px) {
  .my-8 {
    margin-bottom: 4.8rem;
  }
}
.my-9 {
  margin-top: 9rem;
  margin-bottom: 9rem;
}
@media (max-width: 1023px) {
  .my-9 {
    margin-top: 5.4rem;
  }
}
@media (max-width: 1023px) {
  .my-9 {
    margin-bottom: 5.4rem;
  }
}
.pt-0 {
  padding-top: 0rem;
}
@media (max-width: 1023px) {
  .pt-0 {
    padding-top: 0rem;
  }
}
.pt-1 {
  padding-top: 1rem;
}
@media (max-width: 1023px) {
  .pt-1 {
    padding-top: 0.6rem;
  }
}
.pt-2 {
  padding-top: 2rem;
}
@media (max-width: 1023px) {
  .pt-2 {
    padding-top: 1.2rem;
  }
}
.pt-3 {
  padding-top: 3rem;
}
@media (max-width: 1023px) {
  .pt-3 {
    padding-top: 1.8rem;
  }
}
.pt-4 {
  padding-top: 4rem;
}
@media (max-width: 1023px) {
  .pt-4 {
    padding-top: 2.4rem;
  }
}
.pt-5 {
  padding-top: 5rem;
}
@media (max-width: 1023px) {
  .pt-5 {
    padding-top: 3rem;
  }
}
.pt-6 {
  padding-top: 6rem;
}
@media (max-width: 1023px) {
  .pt-6 {
    padding-top: 3.6rem;
  }
}
.pt-7 {
  padding-top: 7rem;
}
@media (max-width: 1023px) {
  .pt-7 {
    padding-top: 4.2rem;
  }
}
.pt-8 {
  padding-top: 8rem;
}
@media (max-width: 1023px) {
  .pt-8 {
    padding-top: 4.8rem;
  }
}
.pt-9 {
  padding-top: 9rem;
}
@media (max-width: 1023px) {
  .pt-9 {
    padding-top: 5.4rem;
  }
}
.pb-0 {
  padding-bottom: 0rem;
}
@media (max-width: 1023px) {
  .pb-0 {
    padding-bottom: 0rem;
  }
}
.pb-1 {
  padding-bottom: 1rem;
}
@media (max-width: 1023px) {
  .pb-1 {
    padding-bottom: 0.6rem;
  }
}
.pb-2 {
  padding-bottom: 2rem;
}
@media (max-width: 1023px) {
  .pb-2 {
    padding-bottom: 1.2rem;
  }
}
.pb-3 {
  padding-bottom: 3rem;
}
@media (max-width: 1023px) {
  .pb-3 {
    padding-bottom: 1.8rem;
  }
}
.pb-4 {
  padding-bottom: 4rem;
}
@media (max-width: 1023px) {
  .pb-4 {
    padding-bottom: 2.4rem;
  }
}
.pb-5 {
  padding-bottom: 5rem;
}
@media (max-width: 1023px) {
  .pb-5 {
    padding-bottom: 3rem;
  }
}
.pb-6 {
  padding-bottom: 6rem;
}
@media (max-width: 1023px) {
  .pb-6 {
    padding-bottom: 3.6rem;
  }
}
.pb-7 {
  padding-bottom: 7rem;
}
@media (max-width: 1023px) {
  .pb-7 {
    padding-bottom: 4.2rem;
  }
}
.pb-8 {
  padding-bottom: 8rem;
}
@media (max-width: 1023px) {
  .pb-8 {
    padding-bottom: 4.8rem;
  }
}
.pb-9 {
  padding-bottom: 9rem;
}
@media (max-width: 1023px) {
  .pb-9 {
    padding-bottom: 5.4rem;
  }
}
.py-0 {
  padding-top: 0rem;
  padding-bottom: 0rem;
}
@media (max-width: 1023px) {
  .py-0 {
    padding-top: 0rem;
  }
}
@media (max-width: 1023px) {
  .py-0 {
    padding-bottom: 0rem;
  }
}
.py-1 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media (max-width: 1023px) {
  .py-1 {
    padding-top: 0.6rem;
  }
}
@media (max-width: 1023px) {
  .py-1 {
    padding-bottom: 0.6rem;
  }
}
.py-2 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (max-width: 1023px) {
  .py-2 {
    padding-top: 1.2rem;
  }
}
@media (max-width: 1023px) {
  .py-2 {
    padding-bottom: 1.2rem;
  }
}
.py-3 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (max-width: 1023px) {
  .py-3 {
    padding-top: 1.8rem;
  }
}
@media (max-width: 1023px) {
  .py-3 {
    padding-bottom: 1.8rem;
  }
}
.py-4 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
@media (max-width: 1023px) {
  .py-4 {
    padding-top: 2.4rem;
  }
}
@media (max-width: 1023px) {
  .py-4 {
    padding-bottom: 2.4rem;
  }
}
.py-5 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (max-width: 1023px) {
  .py-5 {
    padding-top: 3rem;
  }
}
@media (max-width: 1023px) {
  .py-5 {
    padding-bottom: 3rem;
  }
}
.py-6 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
@media (max-width: 1023px) {
  .py-6 {
    padding-top: 3.6rem;
  }
}
@media (max-width: 1023px) {
  .py-6 {
    padding-bottom: 3.6rem;
  }
}
.py-7 {
  padding-top: 7rem;
  padding-bottom: 7rem;
}
@media (max-width: 1023px) {
  .py-7 {
    padding-top: 4.2rem;
  }
}
@media (max-width: 1023px) {
  .py-7 {
    padding-bottom: 4.2rem;
  }
}
.py-8 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}
@media (max-width: 1023px) {
  .py-8 {
    padding-top: 4.8rem;
  }
}
@media (max-width: 1023px) {
  .py-8 {
    padding-bottom: 4.8rem;
  }
}
.py-9 {
  padding-top: 9rem;
  padding-bottom: 9rem;
}
@media (max-width: 1023px) {
  .py-9 {
    padding-top: 5.4rem;
  }
}
@media (max-width: 1023px) {
  .py-9 {
    padding-bottom: 5.4rem;
  }
}
.padding-right-0 {
  padding-right: 0%;
}
@media (max-width: 1023px) {
  .padding-right-0 {
    padding-right: 0%;
  }
}
@media (min-width: 1024px) {
  .padding-right-0-min-tablet {
    padding-right: 0%;
  }
}
@media (max-width: 1023px) {
  .padding-right-0-max-tablet {
    padding-right: 0%;
  }
}
.padding-right-1 {
  padding-right: 4%;
}
@media (max-width: 1023px) {
  .padding-right-1 {
    padding-right: 2.4%;
  }
}
@media (min-width: 1024px) {
  .padding-right-1-min-tablet {
    padding-right: 4%;
  }
}
@media (max-width: 1023px) {
  .padding-right-1-max-tablet {
    padding-right: 4%;
  }
}
.padding-right-2 {
  padding-right: 8%;
}
@media (max-width: 1023px) {
  .padding-right-2 {
    padding-right: 4.8%;
  }
}
@media (min-width: 1024px) {
  .padding-right-2-min-tablet {
    padding-right: 8%;
  }
}
@media (max-width: 1023px) {
  .padding-right-2-max-tablet {
    padding-right: 8%;
  }
}
.padding-right-3 {
  padding-right: 12%;
}
@media (max-width: 1023px) {
  .padding-right-3 {
    padding-right: 7.2%;
  }
}
@media (min-width: 1024px) {
  .padding-right-3-min-tablet {
    padding-right: 12%;
  }
}
@media (max-width: 1023px) {
  .padding-right-3-max-tablet {
    padding-right: 12%;
  }
}
.padding-right-4 {
  padding-right: 16%;
}
@media (max-width: 1023px) {
  .padding-right-4 {
    padding-right: 9.6%;
  }
}
@media (min-width: 1024px) {
  .padding-right-4-min-tablet {
    padding-right: 16%;
  }
}
@media (max-width: 1023px) {
  .padding-right-4-max-tablet {
    padding-right: 16%;
  }
}
.padding-left-0 {
  padding-left: 0%;
}
@media (max-width: 1023px) {
  .padding-left-0 {
    padding-left: 0%;
  }
}
@media (min-width: 1024px) {
  .padding-left-0-min-tablet {
    padding-left: 0%;
  }
}
@media (max-width: 1023px) {
  .padding-left-0-max-tablet {
    padding-left: 0%;
  }
}
.padding-left-1 {
  padding-left: 4%;
}
@media (max-width: 1023px) {
  .padding-left-1 {
    padding-left: 2.4%;
  }
}
@media (min-width: 1024px) {
  .padding-left-1-min-tablet {
    padding-left: 4%;
  }
}
@media (max-width: 1023px) {
  .padding-left-1-max-tablet {
    padding-left: 4%;
  }
}
.padding-left-2 {
  padding-left: 8%;
}
@media (max-width: 1023px) {
  .padding-left-2 {
    padding-left: 4.8%;
  }
}
@media (min-width: 1024px) {
  .padding-left-2-min-tablet {
    padding-left: 8%;
  }
}
@media (max-width: 1023px) {
  .padding-left-2-max-tablet {
    padding-left: 8%;
  }
}
.padding-left-3 {
  padding-left: 12%;
}
@media (max-width: 1023px) {
  .padding-left-3 {
    padding-left: 7.2%;
  }
}
@media (min-width: 1024px) {
  .padding-left-3-min-tablet {
    padding-left: 12%;
  }
}
@media (max-width: 1023px) {
  .padding-left-3-max-tablet {
    padding-left: 12%;
  }
}
.padding-left-4 {
  padding-left: 16%;
}
@media (max-width: 1023px) {
  .padding-left-4 {
    padding-left: 9.6%;
  }
}
@media (min-width: 1024px) {
  .padding-left-4-min-tablet {
    padding-left: 16%;
  }
}
@media (max-width: 1023px) {
  .padding-left-4-max-tablet {
    padding-left: 16%;
  }
}
.font-weight-400 {
  font-weight: 400;
}
.font-weight-500 {
  font-weight: 500;
}
.font-weight-600 {
  font-weight: 600;
}
.font-weight-700 {
  font-weight: 700;
}
.font-weight-800 {
  font-weight: 800;
}
.font-weight-900 {
  font-weight: 900;
}
.text-align-center {
  text-align: center;
}
.text-align-right {
  text-align: right;
}
.display-flex {
  display: flex;
}
.align-items-center {
  align-items: center;
}
.align-items-flex-end {
  align-items: flex-end;
}
.align-self-flex-end {
  align-self: flex-end;
}
.justify-content-flex-end {
  justify-content: flex-end;
}
.flex-direction-row-reverse {
  flex-direction: row-reverse;
}
.overflow-hidden {
  overflow: hidden;
}
.color-primary {
  color: var(--primary);
}
.color-primary-2 {
  color: var(--primary-2);
}
@media (min-width: 768px) {
  .line-break-min-mobile {
    display: block;
  }
}
@media (min-width: 1024px) {
  .line-break-min-tablet {
    display: block;
  }
  .hide-min-tablet {
    display: none !important;
  }
}
@media (min-width: 1280px) {
  .line-break-min-small-desktop {
    display: block;
  }
  .hide-min-small-desktop {
    display: none !important;
  }
}
@media (max-width: 1279px) {
  .hide-max-small-desktop {
    display: none !important;
  }
}
@media (max-width: 1023px) {
  .hide-max-tablet {
    display: none !important;
  }
}
#floating-whatsapp {
  position: fixed;
  z-index: 9;
  bottom: 1.5rem;
  right: 1.5rem;
  touch-action: manipulation;
}
#floating-whatsapp .whatsapp-button-container {
  display: block;
  padding: 0.5rem;
  background-color: #25d366;
  border-radius: 50%;
  cursor: pointer;
  transition: filter 0.3s;
}
#floating-whatsapp .whatsapp-button-container:hover {
  filter: brightness(0.9);
}
#floating-whatsapp svg {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--white);
  fill: var(--white);
}
#floating-whatsapp .whatsapp-button {
  display: flex;
}
#modal-lead-form {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  z-index: 1001;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  animation: fade-in 0.2s;
}
#modal-lead-form:not(.active) {
  display: none;
}
#modal-lead-form .close-button {
  display: flex;
  position: absolute;
  top: 2rem;
  right: 2rem;
  padding: 0.25rem;
  background: #fff;
  border: none;
  border-radius: 50%;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}
#modal-lead-form .close-button svg {
  width: 2.5rem;
  height: 2.5rem;
  fill: var(--primary);
}
#modal-lead-form .modal-container {
  background-color: #fff;
  max-width: 30rem;
  max-height: 96vh;
  overflow: auto;
  padding: 1.5rem 2rem 0;
  margin: auto;
  border-radius: 1rem;
}
#modal-lead-form .modal-title {
  text-align: center;
  font-weight: 800;
  margin-bottom: 0.5rem;
}
#modal-lead-form .modal-description {
  text-align: center;
  color: var(--primary);
  font-style: italic;
  font-weight: 700;
}
#modal-lead-form .wpcf7 {
  margin-top: 1rem;
}
#modal-lead-form .wpcf7 label {
  font-weight: 600;
}
#modal-lead-form .wpcf7 input {
  border: none;
}
#modal-lead-form .wpcf7 input[type="submit"] {
  padding: 0.5rem 2rem;
  margin-top: 0.75rem;
  color: #fff;
  background-color: var(--primary);
  border-radius: 50px;
  transition: all 0.3s;
}
#modal-lead-form .wpcf7 input[type="submit"]:hover {
  filter: brightness(0.9);
}
#modal-lead-form .wpcf7 input:not([type="submit"]) {
  background-color: var(--primary-light);
  padding: 0.4rem 1rem;
  margin-top: 0.25rem;
  outline: none;
  border-radius: 50px;
}
#modal-lead-form .wpcf7 input.form-url,
#modal-lead-form .wpcf7 input.form-date {
  display: none;
}
#modal-lead-form .wpcf7 p {
  margin-bottom: 0.75rem;
}
#modal-lead-form
  .wpcf7
  p:not(:nth-of-type(5))
  label
  > span:first-of-type::after {
  content: " *";
  color: #ff5252;
}
#modal-lead-form .wpcf7 .wpcf7-response-output {
  margin: 0 0 2rem;
}
@media (max-width: 1023px) {
  #modal-lead-form .close-button {
    top: 4vh;
    right: 0.5rem;
  }
  #modal-lead-form .left-col {
    display: none;
  }
  #modal-lead-form .right-col {
    padding: 12% 8%;
  }
}
@media (min-width: 1024px) {
  #modal-lead-form .row {
    grid-template-columns: 1fr 1fr;
  }
  #modal-lead-form .left-col img {
    height: 100%;
    object-fit: cover;
  }
}
.background-image .overlay-color,
.background-image img {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  height: 100lvh;
}
.background-image .overlay-color {
  z-index: -2;
  background: linear-gradient(rgba(255, 255, 255, 0.8), white);
}
.background-image img {
  z-index: -3;
  object-fit: cover;
}
@keyframes slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.client-logos {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  pointer-events: none;
  user-select: none;
}
.client-logos:before,
.client-logos:after {
  content: "";
  position: absolute;
  top: 0;
  z-index: 1;
  width: 12%;
  height: 100%;
}
.client-logos:before {
  left: 0;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), white);
}
.client-logos:after {
  right: 0;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), white);
}
.client-logos .logos {
  overflow: hidden;
  white-space: nowrap;
}
.client-logos .logos-slide {
  display: inline-block;
  animation: 30s slide infinite linear;
}
.client-logos .logos-slide img {
  object-fit: contain;
  width: auto;
  max-width: 180px;
  height: 60px;
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}
@media (max-width: 1023px) {
  .client-logos {
    gap: 1.5rem;
  }
  .client-logos .logos-slide img {
    max-width: 120px;
    height: 40px;
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
} /*# sourceMappingURL=style.css.map */
