/* CSS Document */
/*-----------
++VARIABLES++
-----------*/
@import url("/wp-content/themes/lovitlocal/fonts/suisse.ttf");
@font-face {
  font-family: 'Suisse';
  src: url("/wp-content/themes/lovitlocal/fonts/suisse.ttf");
  font-weight: 400; }
/*--------
++GLOBAL++
---------*/
* {
  margin: 0;
  padding: 0;
  outline: 0 !important; }

body {
  background: #FFFFFF;
  font-family: 'Circe' !important;
  font-weight: 400; }
  body.openMenu {
    overflow: hidden; }

h1,
.h1 {
  font-weight: 800 !important;
  font-family: "Circe" !important;
  line-height: 1;
  font-size: clamp(50px, 5vw, 90px);
  margin-bottom: 40px; }

h2,
.h2 {
  font-weight: 800 !important;
  font-family: "Circe" !important;
  line-height: 1;
  font-size: clamp(30px, 4vw, 50px); }

h3,
.h3 {
  font-weight: 800 !important;
  font-family: "Circe" !important;
  line-height: 1; }

h4,
.h4 {
  font-weight: 800 !important;
  font-family: "Circe" !important;
  line-height: 1; }

h5,
.h5 {
  font-weight: 800 !important;
  font-family: "Circe" !important;
  line-height: 1; }

h6,
.h6 {
  font-weight: 800 !important;
  font-family: "Circe" !important;
  line-height: 1; }

p {
  margin-bottom: 15px;
  font-size: clamp(16px, 1.3vw, 20px);
  color: #242323;
  line-height: 1.2;
  font-weight: 400; }
  p a {
    color: #242323; }
    p a:visited {
      color: #242323; }
  p strong {
    font-weight: 400; }

a {
  text-decoration: none;
  outline: 0px solid #242323; }
  a:focus {
    outline: 0px solid #242323; }

div {
  box-sizing: border-box; }

img {
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover; }

section {
  padding: 5vw 10vw; }
  section .container {
    max-width: 1500px;
    margin: 0 auto; }
  @media only screen and (max-width: 600px) {
    section {
      padding: 50px 10vw; } }

.defaultBTN {
  border-radius: 50px;
  padding: 20px 33px;
  transition: 0.4s;
  font-size: 16px;
  font-family: 'Suisse', sans-serif;
  font-weight: 400;
  display: block;
  width: max-content;
  border: 1px solid transparent; }
  .defaultBTN span {
    margin-left: 2vw; }
    .defaultBTN span svg {
      vertical-align: middle;
      transition: 0.4s; }
  .defaultBTN.color1 {
    color: #FFFFFF;
    background-color: #F04036;
    box-shadow: 10px 10px 0px -1px #6EEFE3; }
    .defaultBTN.color1:hover {
      border: 1px solid #6EEFE3; }
  .defaultBTN.color2 {
    color: #242323;
    background-color: #6EEFE3;
    box-shadow: 10px 10px 0px -1px #F04036; }
    .defaultBTN.color2:hover {
      border: 1px solid #F04036; }
  .defaultBTN:hover {
    color: #242323;
    background-color: #FFFFFF; }
    .defaultBTN:hover svg path {
      stroke: #242323;
      fill: #242323; }

.error-404 {
  height: 50dvh;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }

/* CSS Document */
.bannerWrap {
  padding: 0;
  position: relative;
  margin-top: 100px; }
  .bannerWrap .mediaContainer {
    height: 100dvh; }
    .bannerWrap .mediaContainer img {
      object-position: top; }
  .bannerWrap .textContainer {
    position: absolute;
    top: 50%;
    left: 6vw;
    transform: translateY(-50%);
    width: 55%; }
    .bannerWrap .textContainer h1, .bannerWrap .textContainer p {
      color: #FFFFFF; }
    .bannerWrap .textContainer p {
      font-size: clamp(25px, 2vw, 35px);
      font-weight: 800;
      margin-bottom: 45px;
      width: 60%; }
  @media only screen and (max-width: 600px) {
    .bannerWrap .textContainer {
      width: 80%; }
      .bannerWrap .textContainer p {
        width: 100%; } }

/* CSS Document */
.numbersWrap {
  display: flex;
  justify-content: space-between; }
  .numbersWrap h2 {
    flex: 0 0 30%; }
  .numbersWrap .numbersContainer {
    display: flex;
    justify-content: flex-end;
    flex: 0 0 70%; }
    .numbersWrap .numbersContainer div {
      flex: 0 0 25%; }
      .numbersWrap .numbersContainer div p {
        font-family: 'Suisse'; }
      .numbersWrap .numbersContainer div p.number {
        color: #F04036;
        font-size: clamp(30px, 4vw, 90px); }
      .numbersWrap .numbersContainer div:nth-child(2) {
        padding: 0 30px; }
  @media only screen and (max-width: 600px) {
    .numbersWrap {
      flex-direction: column; }
      .numbersWrap h2 {
        text-align: center;
        margin-bottom: 40px;
        flex: 0 0 100%; }
      .numbersWrap .numbersContainer {
        flex: 0 0 100%;
        justify-content: center; }
        .numbersWrap .numbersContainer div {
          flex: 0 0 29%;
          text-align: center; } }

/* CSS Document */
.iconListWrap h2 {
  text-align: center;
  margin-bottom: 90px; }
.iconListWrap .iconListContainer {
  display: flex;
  justify-content: space-around; }
  .iconListWrap .iconListContainer .iconitem {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center; }
    .iconListWrap .iconListContainer .iconitem img {
      margin-bottom: 35px;
      object-fit: contain;
      height: fit-content;
      width: fit-content;
      flex: 1; }
    .iconListWrap .iconListContainer .iconitem p {
      font-weight: 800; }
@media only screen and (max-width: 600px) {
  .iconListWrap .iconListContainer {
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 30px; }
    .iconListWrap .iconListContainer .iconitem {
      flex: 0 0 45%; }
      .iconListWrap .iconListContainer .iconitem img {
        max-height: 50px; } }

.processWrap h2 {
  text-align: center; }
.processWrap .processContainer {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
  margin: 50px 0; }
  .processWrap .processContainer .processItem {
    background-color: #FAFAFA;
    border-radius: 18px;
    padding: 15px; }
    .processWrap .processContainer .processItem .mediaContainer {
      position: relative;
      border-radius: 8px;
      overflow: hidden;
      margin-bottom: 15px; }
      .processWrap .processContainer .processItem .mediaContainer p {
        position: absolute;
        display: flex;
        justify-content: center;
        align-items: center;
        top: 7px;
        left: 7px;
        width: 50px;
        height: 50px;
        background-color: #FFFFFF;
        color: #F04036;
        border-radius: 100%;
        font-size: clamp(20px, 2.5vw, 28px);
        box-shadow: 5px 6px 0px -1px #F04036; }
      .processWrap .processContainer .processItem .mediaContainer img {
        border-radius: 8px; }
    .processWrap .processContainer .processItem .textContainer h3 {
      font-size: clamp(25px, 3vw, 42px); }
    .processWrap .processContainer .processItem .textContainer div {
      height: 6px;
      background-color: #6EEFE3;
      margin: 20px 0; }
      .processWrap .processContainer .processItem .textContainer div div {
        background-color: #6EEFE3; }
    .processWrap .processContainer .processItem .textContainer p {
      font-size: clamp(14px, 1vw, 16px); }
    .processWrap .processContainer .processItem:nth-child(2) .textContainer div div {
      width: 35%;
      margin: 0 0 0 auto;
      background-color: #F04036; }
    .processWrap .processContainer .processItem:nth-child(3) .textContainer div div {
      background-color: #F04036; }
.processWrap a {
  margin: 0 auto; }
@media only screen and (max-width: 991px) {
  .processWrap br {
    display: none; }
  .processWrap .processContainer {
    grid-template-columns: 1fr; } }

/* CSS Document */
.reviewsWrap {
  background-color: #FAFAFA; }
  .reviewsWrap h2 {
    text-align: center;
    margin-bottom: 100px; }
  .reviewsWrap .reviewsContainer {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 60px; }
    .reviewsWrap .reviewsContainer .reviews {
      border-radius: 30px;
      padding: 20px;
      box-shadow: 10px 10px 0px -1px #375653;
      display: flex;
      flex-direction: column; }
      .reviewsWrap .reviewsContainer .reviews p {
        font-weight: 700; }
      .reviewsWrap .reviewsContainer .reviews .reviewText {
        margin: 30px 0;
        flex: 1; }
      .reviewsWrap .reviewsContainer .reviews .reviewData p {
        font-size: 11px;
        margin-bottom: 5px; }
      .reviewsWrap .reviewsContainer .reviews.color1 {
        background-color: #F04036; }
        .reviewsWrap .reviewsContainer .reviews.color1 p {
          color: #FFFFFF; }
      .reviewsWrap .reviewsContainer .reviews.color2 {
        background-color: #6EEFE3;
        color: #242323; }
  @media only screen and (max-width: 991px) {
    .reviewsWrap .reviewsContainer {
      grid-template-columns: 1fr; } }

/* CSS Document */
.reasonsWrap {
  background-color: #F04036; }
  .reasonsWrap h2 {
    color: #FFFFFF;
    font-size: clamp(40px, 4vw, 75px);
    text-align: center;
    margin-bottom: 100px; }
  .reasonsWrap .reasonsContainer {
    display: flex;
    align-items: center; }
    .reasonsWrap .reasonsContainer .colLeft {
      flex: 0 0 40%; }
      .reasonsWrap .reasonsContainer .colLeft .mediaContainer {
        border-radius: 40px;
        overflow: hidden; }
        .reasonsWrap .reasonsContainer .colLeft .mediaContainer img {
          border-radius: 40px; }
    .reasonsWrap .reasonsContainer .colRight {
      flex: 0 0 60%;
      padding-left: 100px; }
      .reasonsWrap .reasonsContainer .colRight ul li {
        list-style-type: none;
        margin-bottom: 40px;
        display: grid;
        grid-template-columns: 75px auto;
        align-items: center;
        grid-column-gap: 30px; }
        .reasonsWrap .reasonsContainer .colRight ul li p {
          display: inline;
          font-weight: 800;
          font-size: clamp(20px, 2.5vw, 28px);
          color: #FFFFFF;
          margin: 0; }
        .reasonsWrap .reasonsContainer .colRight ul li span {
          display: inline-flex;
          justify-content: center;
          align-items: center;
          color: #242323;
          width: 70px;
          height: 70px;
          border-radius: 100%;
          background-color: #FFFFFF;
          font-size: clamp(25px, 2.5vw, 40px);
          font-weight: 800;
          box-shadow: 5px 6px 0px -1px #6EEFE3; }
  @media only screen and (max-width: 768px) {
    .reasonsWrap h2 {
      margin-bottom: 40px; }
    .reasonsWrap .reasonsContainer {
      flex-direction: column; }
      .reasonsWrap .reasonsContainer .colRight, .reasonsWrap .reasonsContainer .colLeft {
        flex: 0 0 100%; }
      .reasonsWrap .reasonsContainer .colRight {
        padding: 0;
        margin-top: 50px; }
        .reasonsWrap .reasonsContainer .colRight ul li {
          grid-template-columns: 45px auto; }
          .reasonsWrap .reasonsContainer .colRight ul li span {
            width: 45px;
            height: 45px; } }

/* CSS Document */
header {
  padding: 23px 26px;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 9999999;
  background-color: white; }
  header .desktopMenu {
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media only screen and (max-width: 1090px) {
      header .desktopMenu {
        display: none; } }
    header .desktopMenu .logoWrap {
      width: 15vw;
      max-width: 190px;
      min-width: 100px; }
      header .desktopMenu .logoWrap svg {
        height: 100%;
        width: 100%; }
    header .desktopMenu .menu-menu-1-container ul {
      list-style-type: none;
      display: flex;
      gap: 5px; }
      header .desktopMenu .menu-menu-1-container ul li {
        color: #242323;
        font-family: "Suisse";
        font-size: 14px;
        border-radius: 50px;
        padding: 15px 21px;
        border: 1px solid transparent;
        transition: 0.4s; }
        header .desktopMenu .menu-menu-1-container ul li:hover {
          border: 1px solid #ECECEC; }
        header .desktopMenu .menu-menu-1-container ul li a {
          color: #242323; }
          header .desktopMenu .menu-menu-1-container ul li a:visited {
            color: #242323; }
    header .desktopMenu .btnWrap a {
      display: inline-block;
      font-size: 12px;
      padding: 13px 19px; }
      header .desktopMenu .btnWrap a.color1 {
        box-shadow: 8px 8px 0px -1px #6EEFE3; }
      header .desktopMenu .btnWrap a.color2 {
        box-shadow: 8px 8px 0px -1px #F04036; }
      header .desktopMenu .btnWrap a span {
        margin: 0 10px 0 0; }
      header .desktopMenu .btnWrap a:nth-child(1) {
        margin-right: 20px; }
        header .desktopMenu .btnWrap a:nth-child(1) svg path {
          stroke: #242323;
          fill: none; }
      header .desktopMenu .btnWrap a:hover:nth-child(2) svg path {
        stroke: none;
        fill: #242323; }
  header .mobileMenu {
    display: none; }
    @media only screen and (max-width: 1090px) {
      header .mobileMenu {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-right: calc(25px + 5vw); } }
    header .mobileMenu .logoWrap {
      position: relative;
      z-index: 1;
      top: 0; }
      header .mobileMenu .logoWrap a {
        display: block; }
        header .mobileMenu .logoWrap a svg {
          width: 150px; }
      header .mobileMenu .logoWrap img {
        height: 100%;
        width: 100%;
        object-fit: contain; }
    header .mobileMenu .phoneWrap a {
      display: inline-block;
      margin: 0 5px;
      width: 20px;
      height: 20px;
      text-align: center;
      padding: 10px; }
      header .mobileMenu .phoneWrap a.color1 {
        box-shadow: 5px 5px 0px -1px #6EEFE3; }
      header .mobileMenu .phoneWrap a.color2 {
        box-shadow: 5px 5px 0px -1px #F04036; }
      header .mobileMenu .phoneWrap a span {
        margin: 0; }
    header .mobileMenu .menuIcon {
      width: clamp(25px, 3vw, 35px);
      cursor: pointer;
      position: absolute;
      top: 50px;
      right: 5vw;
      z-index: 9999999;
      height: 20px; }
      header .mobileMenu .menuIcon div {
        background-color: #242323;
        height: 2px;
        width: 100%;
        transition: 0.4s;
        position: absolute; }
        header .mobileMenu .menuIcon div:nth-child(1) {
          margin-bottom: 15px;
          top: 0; }
        header .mobileMenu .menuIcon div:nth-child(2) {
          bottom: 0; }
      header .mobileMenu .menuIcon.openMenu div {
        background-color: #242323; }
        header .mobileMenu .menuIcon.openMenu div:nth-child(1) {
          transform: rotate(45deg);
          top: 10px; }
        header .mobileMenu .menuIcon.openMenu div:nth-child(2) {
          transform: rotate(-45deg);
          bottom: 8px; }
      @media only screen and (max-width: 600px) {
        header .mobileMenu .menuIcon.openMenu {
          height: 15px; }
          header .mobileMenu .menuIcon.openMenu div:nth-child(1) {
            top: 5px; } }
    header .mobileMenu .navWrap {
      display: block;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      color: #242323;
      z-index: 999999;
      height: 100dvh;
      overflow: hidden;
      background-color: rgba(0, 0, 0, 0);
      transition: 0.4s;
      pointer-events: none; }
      header .mobileMenu .navWrap .navigation {
        display: flex;
        flex-direction: column;
        position: absolute;
        top: 0;
        right: 0;
        height: 100dvh;
        width: 64%;
        background: white;
        transform: translateX(200%);
        transition: 1s;
        padding: 25px 5vw;
        z-index: 999; }
        @media only screen and (max-width: 768px) {
          header .mobileMenu .navWrap .navigation {
            width: 100%; } }
        header .mobileMenu .navWrap .navigation .navHeader {
          align-self: flex-start;
          position: relative;
          z-index: 1; }
          header .mobileMenu .navWrap .navigation .navHeader .logoWrap {
            position: relative;
            z-index: 9999;
            top: 0; }
            header .mobileMenu .navWrap .navigation .navHeader .logoWrap a {
              display: block; }
            header .mobileMenu .navWrap .navigation .navHeader .logoWrap img {
              height: 100%;
              width: 100%;
              object-fit: contain; }
        header .mobileMenu .navWrap .navigation .menuWrap {
          position: relative;
          margin: 5vh 0;
          flex-grow: 1;
          overflow: hidden;
          display: flex;
          align-items: center; }
          header .mobileMenu .navWrap .navigation .menuWrap .menu-menu-1-container {
            width: 100%;
            position: relative;
            z-index: 1; }
            header .mobileMenu .navWrap .navigation .menuWrap .menu-menu-1-container #menu-menu-2 {
              padding: 0;
              margin: 0; }
              header .mobileMenu .navWrap .navigation .menuWrap .menu-menu-1-container #menu-menu-2 li {
                margin-bottom: 1vh;
                list-style-type: none;
                text-align: center; }
                header .mobileMenu .navWrap .navigation .menuWrap .menu-menu-1-container #menu-menu-2 li a {
                  color: #242323;
                  font-size: clamp(40px, 5vw, 90px);
                  transition: 0.4s;
                  font-weight: 800; }
                header .mobileMenu .navWrap .navigation .menuWrap .menu-menu-1-container #menu-menu-2 li:hover a {
                  letter-spacing: 3px; }
                  @media only screen and (max-width: 991px) {
                    header .mobileMenu .navWrap .navigation .menuWrap .menu-menu-1-container #menu-menu-2 li:hover a {
                      letter-spacing: normal; } }
          header .mobileMenu .navWrap .navigation .menuWrap .logoImage {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 100%;
            opacity: 0.6;
            z-index: 0;
            mix-blend-mode: screen; }
            @media only screen and (max-width: 768px) {
              header .mobileMenu .navWrap .navigation .menuWrap .logoImage {
                top: -5vmin;
                height: 100%;
                width: 200%;
                left: 50%;
                transform: translateX(-50%); } }
        header .mobileMenu .navWrap .navigation .socialWrap {
          align-self: flex-start;
          position: relative;
          z-index: 1;
          margin: 0 0 3vh; }
          @media only screen and (max-width: 768px) {
            header .mobileMenu .navWrap .navigation .socialWrap {
              align-self: center; } }
          header .mobileMenu .navWrap .navigation .socialWrap ul {
            display: flex;
            column-gap: 5px;
            padding: 0;
            margin: 0; }
            header .mobileMenu .navWrap .navigation .socialWrap ul li {
              list-style: none; }
              header .mobileMenu .navWrap .navigation .socialWrap ul li a {
                color: #242323;
                font-size: clamp(14px, 0.9vw, 16px);
                transition: 0.4s; }
                header .mobileMenu .navWrap .navigation .socialWrap ul li a svg {
                  height: 35px;
                  width: 35px; }
                  header .mobileMenu .navWrap .navigation .socialWrap ul li a svg path {
                    fill: #F04036; }
              header .mobileMenu .navWrap .navigation .socialWrap ul li span {
                margin: 0 5px 0 10px; }
              header .mobileMenu .navWrap .navigation .socialWrap ul li:last-of-type span {
                display: none; }
              header .mobileMenu .navWrap .navigation .socialWrap ul li:hover a {
                color: #242323; }
        header .mobileMenu .navWrap .navigation .contactWrap {
          width: 100%;
          display: flex;
          justify-content: space-between;
          border-top: 1px solid #242323;
          position: relative;
          z-index: 1;
          padding-top: 3vh;
          gap: 20px;
          flex-wrap: wrap; }
          header .mobileMenu .navWrap .navigation .contactWrap .leftColWrap {
            display: flex;
            justify-content: space-between;
            min-width: 20%;
            flex-wrap: wrap;
            gap: 50px; }
            @media only screen and (max-width: 768px) {
              header .mobileMenu .navWrap .navigation .contactWrap .leftColWrap {
                min-width: 100%;
                gap: 20px; } }
            header .mobileMenu .navWrap .navigation .contactWrap .leftColWrap p {
              margin-bottom: 1vh;
              font-size: clamp(13px, 1vw, 20px); }
              @media only screen and (max-width: 768px) {
                header .mobileMenu .navWrap .navigation .contactWrap .leftColWrap p {
                  margin-bottom: 0; } }
            header .mobileMenu .navWrap .navigation .contactWrap .leftColWrap a {
              color: #242323;
              font-size: clamp(13px, 1vw, 20px); }
          header .mobileMenu .navWrap .navigation .contactWrap .rightColWrap {
            min-width: 40%; }
            @media only screen and (max-width: 768px) {
              header .mobileMenu .navWrap .navigation .contactWrap .rightColWrap {
                min-width: 100%; } }
            header .mobileMenu .navWrap .navigation .contactWrap .rightColWrap p {
              margin-bottom: 1vh;
              font-size: clamp(18px, 1vw, 20px); }
        header .mobileMenu .navWrap .navigation.openMenu {
          transform: translateX(0); }
      header .mobileMenu .navWrap.openMenu {
        background-color: rgba(0, 0, 0, 0.5);
        pointer-events: auto; }
  @media only screen and (max-width: 768px) {
    header {
      padding: 25px 5vw; } }

/* CSS Document */
footer {
  background-color: #F04036;
  padding: 5vw 5vw 0; }
  footer .footerTop {
    display: flex;
    justify-content: space-between; }
    footer .footerTop .colLeft {
      flex: 0 0 23%; }
      footer .footerTop .colLeft p {
        color: #FFFFFF;
        font-size: 26px;
        font-weight: 800; }
      footer .footerTop .colLeft .socialWrap {
        margin-top: 20px; }
        footer .footerTop .colLeft .socialWrap ul {
          list-style-type: none;
          display: flex; }
          footer .footerTop .colLeft .socialWrap ul li {
            margin-right: 20px; }
    footer .footerTop .colRight svg {
      width: 18vw;
      max-width: 340px;
      min-width: 200px; }
  footer .footerBottom {
    display: flex;
    justify-content: space-between;
    padding: 100px 0 20px; }
    footer .footerBottom a, footer .footerBottom p {
      color: #FFFFFF;
      font-family: "Suisse";
      font-weight: 300;
      font-size: 16px; }
    footer .footerBottom a:hover {
      text-decoration: underline; }
  @media only screen and (max-width: 768px) {
    footer .footerTop {
      flex-direction: column;
      justify-content: center;
      align-items: center; }
      footer .footerTop .colLeft {
        margin-top: 50px;
        flex: 0 0 100%;
        order: 2;
        text-align: center; }
        footer .footerTop .colLeft .socialWrap ul {
          justify-content: center; }
          footer .footerTop .colLeft .socialWrap ul li {
            margin: 0 10px; }
            footer .footerTop .colLeft .socialWrap ul li svg {
              height: 35px;
              width: 35px; }
        footer .footerTop .colLeft p {
          width: 90%;
          margin: 0 auto; }
    footer .footerBottom {
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      gap: 10px; }
      footer .footerBottom p {
        margin-bottom: 0;
        order: 1;
        flex: 0 0 100%;
        text-align: center; }
      footer .footerBottom a {
        order: 2; } }

/* CSS Document */
.textImageWrap {
  padding: 0 10vw 5vw;
  background-color: #FAFAFA; }
  .textImageWrap .itemContainer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5vw 0 0; }
    .textImageWrap .itemContainer.mediaLeft {
      flex-direction: row-reverse; }
      .textImageWrap .itemContainer.mediaLeft .col-left {
        padding: 0 0 0 2vw; }
      .textImageWrap .itemContainer.mediaLeft .col-right {
        padding-right: 50px;
        padding-left: 0; }
  .textImageWrap .col-left {
    flex: 0 0 50%;
    padding: 0 5vw 0 0; }
    .textImageWrap .col-left .textContainer {
      margin-bottom: 30px; }
      .textImageWrap .col-left .textContainer h2, .textImageWrap .col-left .textContainer h3 {
        margin-bottom: 30px; }
  .textImageWrap .col-right {
    flex: 0 0 50%;
    overflow: hidden;
    border-radius: 33px;
    padding-left: 50px; }
  @media only screen and (max-width: 850px) {
    .textImageWrap {
      padding: 5vw 10vw; }
      .textImageWrap .itemContainer {
        flex-direction: column; }
        .textImageWrap .itemContainer.mediaLeft {
          flex-direction: column; }
          .textImageWrap .itemContainer.mediaLeft .col-right {
            padding: 0; }
        .textImageWrap .itemContainer .col-right {
          margin-top: 50px;
          padding: 0;
          padding-right: 0; }
        .textImageWrap .itemContainer .col-left {
          padding: 0 0 0 0; } }

/* CSS Document */
.fullMediaSec {
  max-height: 950px;
  overflow: hidden;
  padding: 0 10vw;
  position: relative; }
  .fullMediaSec img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 30px; }
  .fullMediaSec .videoContainer {
    border-radius: 30px;
    overflow: hidden;
    position: relative; }
    .fullMediaSec .videoContainer video {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 30px; }
    .fullMediaSec .videoContainer .playBTN {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 3;
      transition: 0.4s;
      user-select: auto;
      pointer-events: auto;
      cursor: pointer; }
      .fullMediaSec .videoContainer .playBTN svg {
        width: 11vw;
        height: 11vw;
        max-width: 206px;
        max-height: 206px;
        min-width: 80px;
        min-height: 80px;
        transition: 0.4s; }
    .fullMediaSec .videoContainer::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background-color: #242323;
      opacity: 0.2;
      z-index: 2;
      transition: 0.4s; }
  .fullMediaSec.playing .videoContainer::before {
    display: none; }
  .fullMediaSec.playing .videoContainer .playBTN {
    display: none;
    user-select: none;
    pointer-events: none; }
  .fullMediaSec:hover.videoContainer .playBTN svg {
    transform: scale(1.05); }

/* CSS Document */
.carouselWrap .homeCarousel {
  padding-bottom: 100px; }
  .carouselWrap .homeCarousel .carouselItem {
    padding: 0 5vw;
    display: flex;
    justify-content: center; }
    .carouselWrap .homeCarousel .carouselItem .mediaContainer {
      flex: 0 0 40%;
      height: 530px;
      border-radius: 30px;
      overflow: hidden; }
    .carouselWrap .homeCarousel .carouselItem .textContainer {
      flex: 0 0 60%;
      padding: 3vw 0 3vw 6vw; }
      .carouselWrap .homeCarousel .carouselItem .textContainer h2, .carouselWrap .homeCarousel .carouselItem .textContainer h3 {
        font-size: clamp(20px, 3vw, 35px);
        font-weight: 800;
        line-height: 1.2; }
      .carouselWrap .homeCarousel .carouselItem .textContainer p strong {
        color: #F04036;
        font-size: clamp(50px, 5vw, 70px);
        font-weight: 800;
        margin-bottom: 25px; }
      .carouselWrap .homeCarousel .carouselItem .textContainer a {
        margin-top: 65px; }
  .carouselWrap .homeCarousel .owl-dots {
    text-align: center;
    margin-top: 100px; }
    .carouselWrap .homeCarousel .owl-dots .owl-dot {
      background-color: #F04036;
      height: 24px;
      width: 24px;
      border-radius: 100%;
      margin: 0 5px; }
      .carouselWrap .homeCarousel .owl-dots .owl-dot.active {
        background-color: #6EEFE3; }
@media only screen and (max-width: 991px) {
  .carouselWrap .homeCarousel .carouselItem {
    flex-direction: column; } }

/* CSS Document */
.proListWrap {
  background-color: #6EEFE3; }
  .proListWrap .proListContainer {
    display: flex;
    justify-content: space-between; }
    .proListWrap .proListContainer .colLeft {
      flex: 0 0 40%;
      position: relative;
      padding-right: 50px; }
      .proListWrap .proListContainer .colLeft h2 {
        color: #FFFFFF;
        position: sticky;
        top: 200px;
        font-size: clamp(50px, 6vw, 108px); }
    .proListWrap .proListContainer .colRight {
      flex: 0 0 55%; }
      .proListWrap .proListContainer .colRight ul {
        list-style-type: none; }
        .proListWrap .proListContainer .colRight ul li {
          font-size: clamp(40px, 6vw, 108px);
          font-weight: 800;
          line-height: 1.2;
          color: #FFFFFF; }
          .proListWrap .proListContainer .colRight ul li:nth-child(odd) {
            color: #F04036; }
  .proListWrap .ctaWrap {
    margin: 150px 0 100px;
    text-align: center; }
    .proListWrap .ctaWrap p {
      font-size: clamp(20px, 3vw, 42px);
      font-weight: 800;
      margin-bottom: 30px; }
    .proListWrap .ctaWrap a {
      margin: 0 auto; }
  @media only screen and (max-width: 850px) {
    .proListWrap .proListContainer {
      flex-direction: column; }
      .proListWrap .proListContainer .colLeft {
        padding-right: 0; }
        .proListWrap .proListContainer .colLeft h2 {
          position: relative;
          top: auto;
          margin-bottom: 40px;
          padding-right: 0; } }

.estimateWrap .estimateContainer {
  display: flex; }
  .estimateWrap .estimateContainer .colLeft {
    flex: 0 0 45%;
    padding-right: 100px; }
  .estimateWrap .estimateContainer .colRight {
    flex: 0 0 55%; }
    .estimateWrap .estimateContainer .colRight .estimateItem {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 30px 0;
      border-bottom: 1px solid #242323; }
      .estimateWrap .estimateContainer .colRight .estimateItem div {
        padding-right: 10vw;
        flex: 0 0 80%; }
        .estimateWrap .estimateContainer .colRight .estimateItem div h3 {
          font-size: clamp(25px, 3vw, 42px);
          margin-bottom: 20px;
          font-weight: 700; }
      .estimateWrap .estimateContainer .colRight .estimateItem svg {
        height: 4vw;
        width: 4vw;
        max-height: 69px;
        max-width: 69px;
        min-height: 40px;
        min-width: 40px; }
  .estimateWrap .estimateContainer .btnWrap {
    display: none; }
@media only screen and (max-width: 850px) {
  .estimateWrap .estimateContainer {
    flex-direction: column; }
    .estimateWrap .estimateContainer .colLeft a.defaultBTN {
      display: none; }
    .estimateWrap .estimateContainer .btnWrap {
      display: block;
      margin-top: 50px; } }

/* CSS Document */
.quoteWrap svg {
  display: block;
  width: 150px;
  height: auto; }
  .quoteWrap svg:last-of-type {
    margin: 0 0 0 auto; }
.quoteWrap h1, .quoteWrap h2, .quoteWrap h3, .quoteWrap p, .quoteWrap p strong {
  font-size: clamp(35px, 3vw, 48px);
  font-weight: 800;
  text-align: center;
  padding: 20px 5vw; }

/* CSS Document */
.textMediaContainer {
  display: flex;
  justify-content: space-between;
  padding: 5vw 0 0; }
  .textMediaContainer.mediaLeft {
    flex-direction: row-reverse; }
    .textMediaContainer.mediaLeft .col-left {
      padding: 0 0 0 10vw; }
  .textMediaContainer .col-left {
    flex: 0 0 50%;
    padding: 0 10vw 0 0; }
    .textMediaContainer .col-left .textContainer {
      margin-bottom: 30px; }
      .textMediaContainer .col-left .textContainer p.pillWrap {
        border: 1px solid #242323;
        border-radius: 50px;
        padding: 9px 30px;
        width: max-content;
        margin-bottom: 30px; }
      .textMediaContainer .col-left .textContainer h2, .textMediaContainer .col-left .textContainer h3 {
        font-size: clamp(25px, 4vw, 52px);
        margin-bottom: 30px; }
  .textMediaContainer .col-right {
    flex: 0 0 50%;
    overflow: hidden;
    border-radius: 33px; }
  @media only screen and (max-width: 768px) {
    .textMediaContainer {
      flex-direction: column; }
      .textMediaContainer .col-right {
        margin-top: 30px;
        flex: 0 0 100%; }
      .textMediaContainer .col-left {
        flex: 0 0 100%; } }

.careerWrap {
  background-color: #6EEFE3; }
  .careerWrap .careerContainer {
    display: flex;
    align-items: center; }
    .careerWrap .careerContainer .colLeft {
      flex: 0 0 60%;
      padding-right: 100px; }
      .careerWrap .careerContainer .colLeft p {
        font-size: clamp(30px, 2.5vw, 46px);
        font-weight: 800;
        margin: 30px 0; }
      .careerWrap .careerContainer .colLeft a {
        font-family: "Suisse";
        font-size: clamp(18px, 2vw, 21px);
        padding-bottom: 10px;
        border-bottom: 2px solid #F04036;
        color: #242323; }
  @media only screen and (max-width: 768px) {
    .careerWrap .careerContainer {
      flex-direction: column; }
      .careerWrap .careerContainer .colLeft {
        flex: 0 0 100%;
        padding-right: 0;
        order: 2;
        margin-top: 50px; } }

/* CSS Document */
.estimateFormWrap {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 70dvh; }
  .estimateFormWrap .estimateFormContainer {
    border-radius: 30px;
    background-color: #FFFFFF;
    box-shadow: 20px 20px 0px -1px #F04036;
    padding: 55px 95px; }
    .estimateFormWrap .estimateFormContainer h2 {
      color: #242323;
      font-size: clamp(40px, 4vw, 75px);
      margin-bottom: 30px; }
    .estimateFormWrap .estimateFormContainer .gform_required_legend {
      display: none; }
    .estimateFormWrap .estimateFormContainer .gfield label {
      font-size: 13px; }
    .estimateFormWrap .estimateFormContainer .gfield input {
      border-radius: 50px;
      background: #EEEEEE;
      border: 0;
      height: 50px;
      padding: 13px 20px 10px; }
      .estimateFormWrap .estimateFormContainer .gfield input::placeholder {
        color: #A7A7A7;
        font-size: 18px; }
    .estimateFormWrap .estimateFormContainer .gfield textarea {
      border-radius: 30px;
      background: #EEEEEE;
      border: 0; }
    .estimateFormWrap .estimateFormContainer .gform_footer .gform_button {
      background-color: #F04036 !important;
      color: #FFFFFF !important;
      border-radius: 50px !important;
      width: 100% !important;
      font-size: 18px !important;
      height: 50px !important; }
    .estimateFormWrap .estimateFormContainer .gform_confirmation_message {
      font-size: clamp(20px, 2.5vw, 30px); }
  @media only screen and (max-width: 768px) {
    .estimateFormWrap .estimateFormContainer {
      padding: 30px; } }

/* CSS Document */
.textSecWrap {
  text-align: center; }
  .textSecWrap p {
    font-size: clamp(35px, 4.2vw, 70px);
    font-weight: 800;
    margin-bottom: 50px;
    padding: 0 6vw; }
  .textSecWrap a.defaultBTN {
    margin: 0 auto; }
  @media only screen and (max-width: 768px) {
    .textSecWrap p {
      padding: 0; } }

/* CSS Document */
.gridWrap {
  padding: 10vw; }
  .gridWrap .gridContainer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 100px; }
    .gridWrap .gridContainer .gridItem .mediaContainer {
      overflow: hidden;
      margin-bottom: 20px;
      border-radius: 30px;
      height: 30vw;
      max-height: 420px;
      min-height: 300px; }
      .gridWrap .gridContainer .gridItem .mediaContainer img {
        border-radius: 30px; }
    .gridWrap .gridContainer .gridItem .textContainer p {
      margin: 20px 0; }
    .gridWrap .gridContainer .gridItem .textContainer ul {
      margin-left: 30px; }
      .gridWrap .gridContainer .gridItem .textContainer ul li {
        font-size: clamp(16px, 1.3vw, 20px);
        color: #242323;
        line-height: 1.2;
        font-weight: 400; }
  @media only screen and (max-width: 768px) {
    .gridWrap .gridContainer {
      grid-template-columns: 1fr; } }

/* CSS Document */
.textImageWrap.stories .itemContainer img {
  border-radius: 30px; }
.textImageWrap.stories .itemContainer .textContainer ul {
  margin-left: 30px; }
  .textImageWrap.stories .itemContainer .textContainer ul li {
    margin-bottom: 15px;
    font-size: clamp(16px, 1.3vw, 20px);
    color: #242323;
    line-height: 1.2;
    font-weight: 400; }
.textImageWrap.stories .itemContainer .textContainer p i, .textImageWrap.stories .itemContainer .textContainer p em {
  color: #F04036; }
.textImageWrap.stories .itemContainer:nth-child(even) {
  flex-direction: row-reverse; }
  .textImageWrap.stories .itemContainer:nth-child(even) .col-right {
    padding-left: 0;
    padding-right: 5vw; }
  .textImageWrap.stories .itemContainer:nth-child(even) .col-left {
    padding-right: 0;
    padding-left: 50px; }
  @media only screen and (max-width: 991px) {
    .textImageWrap.stories .itemContainer:nth-child(even) {
      flex-direction: column-reverse; }
      .textImageWrap.stories .itemContainer:nth-child(even) .col-right, .textImageWrap.stories .itemContainer:nth-child(even) .col-left {
        padding: 0; } }
@media only screen and (max-width: 991px) {
  .textImageWrap.stories .itemContainer {
    flex-direction: column-reverse; }
    .textImageWrap.stories .itemContainer .col-right, .textImageWrap.stories .itemContainer .col-left {
      padding: 0; }
      .textImageWrap.stories .itemContainer .col-right .textContainer, .textImageWrap.stories .itemContainer .col-left .textContainer {
        margin-top: 30px; } }

/* CSS Document */
.singleWrap {
  padding: 10vw;
  max-width: 930px;
  margin: 0 auto; }
  .singleWrap article h2 {
    margin: 80px 0 25px; }
  .singleWrap article p {
    margin-bottom: 20px; }
    .singleWrap article p i, .singleWrap article p em {
      color: #F04036; }
  .singleWrap article ul {
    padding-left: 20px;
    list-style-position: inside; }
    .singleWrap article ul li {
      margin-bottom: 10px;
      font-size: clamp(16px, 1.3vw, 20px); }
  .singleWrap article .imgWrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: fit-content; }
    .singleWrap article .imgWrap img {
      flex: 1;
      border-radius: 30px;
      margin: 80px 0 0;
      height: auto; }
  .singleWrap article .introWrap h1 {
    font-size: clamp(35px, 4vw, 70px); }
  .singleWrap article .introWrap p.intro {
    font-size: 19px; }
  .singleWrap article .introWrap img {
    height: 40vw;
    border-radius: 30px;
    max-height: 500px;
    margin: 40px 0; }
  .singleWrap article .introWrap::after {
    content: "";
    display: block;
    width: 100%;
    border: 2px solid #F04036;
    margin: 80px 0; }
  .singleWrap nav {
    margin-top: 50px; }
    .singleWrap nav .nav-links a {
      color: #F04036; }
      .singleWrap nav .nav-links a:hover {
        text-decoration: underline; }

/* CSS Document */
.page-template-default main {
  padding-bottom: 100px;
  max-width: 900px;
  margin: 0 auto; }
  .page-template-default main h1 {
    padding: 100px 0; }
