/*
Theme Name:   Somentra Child
Theme URI:    https://themeforest.net/user/greatives
Description:  Somentra Child Theme
Version:      2.1.0
Author:       Greatives Team
Author URI:   https://greatives.eu
Template:     impeka
*/

html {
  scroll-behavior: smooth;
}

body {
  background-color: #f7fcff;
  line-height: 1.4;
}

::selection {
  background-color: #EC6164;
  color: #fff;
}

::-moz-selection {
  background-color: #EC6164;
  color: #fff;
}

/* ---- GSAP ---- */

.pin-spacer {
  @media (max-width: 1024px) {
    display: none !important;
  }
}

.copy-motion-path {
  z-index: 9999 !important;
}

/* ---- Loader ---- */

.loader {
  height: 100vh;
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 9998;
  display: flex;
  justify-content: center;
  align-items: center;
  --scale-logo: 1;
  --rotate-logo: 0deg;
  --opacity-logo: 0;

  &::after {
    content: '';
    display: block;
    background-image: url('data:image/svg+xml,<svg width="72" height="74" viewBox="0 0 72 74" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M26.0372 25.3662C25.6167 25.7886 25.3614 26.3819 25.3714 27.0256L25.4615 30.7266C25.5466 34.483 23.7044 35.6295 21.7671 38.0583C19.8748 40.4267 17.7322 43.112 17.8223 47.0343C17.8874 49.795 19.0138 52.3646 21.0011 54.2704C22.9885 56.1762 25.5966 57.192 28.3399 57.1316C34.0117 57.0009 38.5221 52.264 38.392 46.5666C38.3619 45.3095 37.3257 44.3138 36.0742 44.344C34.8227 44.3742 33.8315 45.4151 33.8615 46.6722C33.8966 48.216 33.3309 49.6793 32.2696 50.7956C31.2033 51.9019 29.7766 52.5456 28.2398 52.5808C26.703 52.616 25.2462 52.0478 24.1349 50.9817C23.0236 49.9156 22.3928 48.4775 22.3578 46.9337C22.3077 44.6708 23.6293 43.0114 25.3063 40.9095C27.4438 38.2292 30.117 36.0418 29.9969 30.626L29.9068 26.925C29.8768 25.6679 28.8405 24.6722 27.589 24.7024C26.9833 24.7175 26.4376 24.9689 26.0372 25.3662Z" fill="%23EC6164" stroke="white" stroke-width="2.11" stroke-miterlimit="10"/><path d="M27.3837 47.5472C27.9594 47.7031 28.5952 47.6276 29.1458 47.2958L32.2896 45.3698C35.4834 43.4187 37.3957 44.4446 40.4594 44.9172C43.448 45.3799 46.832 45.9028 50.171 43.8612C52.5188 42.4281 54.1708 40.1602 54.8216 37.48C55.4724 34.7998 55.0468 32.024 53.6151 29.6656C50.6666 24.7979 44.329 23.2441 39.4782 26.2059C38.4069 26.8596 38.0665 28.2576 38.7173 29.3337C39.3681 30.4098 40.7597 30.7518 41.831 30.098C43.1426 29.2935 44.6894 29.0571 46.1812 29.4192C47.668 29.7913 48.9345 30.7115 49.7355 32.034C50.5364 33.3515 50.7717 34.9054 50.4113 36.4039C50.0459 37.9024 49.1248 39.1746 47.8082 39.9742C45.8809 41.1508 43.7884 40.829 41.1402 40.4217C37.7611 39.8987 34.5373 38.6667 29.9318 41.4827L26.788 43.4087C25.7167 44.0624 25.3763 45.4603 26.0271 46.5364C26.3425 47.0594 26.8331 47.4064 27.3787 47.5522L27.3837 47.5472Z" fill="%23EC6164" stroke="white" stroke-width="2.11" stroke-miterlimit="10"/><path d="M45.8057 35.2523C45.6506 34.674 45.2701 34.1561 44.7044 33.8443L41.4705 32.0743C38.1916 30.269 38.1215 28.0916 36.9952 25.1952C35.8989 22.3641 34.6574 19.1559 31.2283 17.2752C28.8154 15.9476 26.0371 15.6459 23.3989 16.4203C20.7608 17.1947 18.5831 18.9547 17.2616 21.3785C14.5383 26.3769 16.3705 32.6676 21.3465 35.4032C22.4428 36.0066 23.8194 35.6043 24.4251 34.498C25.0259 33.3968 24.6254 32.0139 23.5241 31.4055C22.1775 30.6663 21.1963 29.4393 20.7658 27.9559C20.3453 26.4724 20.5004 24.9136 21.2413 23.5559C21.9772 22.2032 23.1987 21.2176 24.6754 20.7851C26.1522 20.3527 27.7041 20.5236 29.0557 21.2628C31.0331 22.349 31.804 24.3303 32.7751 26.8446C34.0166 30.0427 34.5673 33.4672 39.2929 36.067L42.5268 37.837C43.6231 38.4404 44.9998 38.0382 45.6055 36.9319C45.8958 36.3988 45.9509 35.7954 45.8057 35.2523Z" fill="%23EC6164" stroke="white" stroke-width="2.11" stroke-miterlimit="10"/></svg>');
    z-index: 9999;
    height: 150px;
    width: 150px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transform: scale(var(--scale-logo)) rotate(var(--rotate-logo));
    opacity: var(--opacity-logo);
  }
}

/* ---- Nav ---- */

#grve-main-header .grve-logo:not(.grve-logo-text) a {
  height: auto;
}

#grve-main-header .grve-container {
  max-width: 100%;
}

#grve-main-header {
  position: relative;
  background: transparent !important;
  backdrop-filter: blur(20px);

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: #C12346;
    bottom: 0;
    left: 0;
    opacity: .3;
  }
}

.grve-logo {
  overflow: auto;

  & a {
    display: block;
    height: auto;
  }
}

.grve-logo-inner {
  & img {
    width: 100%;
    height: auto;
  }
}

#menu-nav {
  position: relative;
  gap: 30px;
}

.grve-horizontal-menu>.grve-menu>.grve-first-level+.grve-first-level {
  margin-left: 0px;
}

.cta {
  padding: .5rem 1rem !important;
  border-radius: .5rem !important;
  background: linear-gradient(90deg, #C12346 0%, #FF6161 100%);
  color: #fff !important;
  transition: all 0.3s ease !important;
  min-width: 0 !important;
  position: relative;

  &:hover {
    transform: translateY(-2px);
    box-shadow: 0px 5px 10px #FF6161;
  }

  &::after {
    content: '';
    display: block;
    height: 70%;
    width: 2px;
    background-color: rgba(110, 73, 74, 0.2);
    position: absolute;
    left: -1rem;
    top: 50%;
    transform: translate(-50%, -50%);
  }
}

/* ---- Démo modale ---- */

/* Popup Theme 432: Démo modale */
.pum-theme-432,
.pum-theme-content-only {
  background-color: rgba(0, 0, 0, 0.70)
}

.pum-theme-432 .pum-container,
.pum-theme-content-only .pum-container {
  padding: 32px;
  border-radius: 32px;
  border: 2px solid #53354a;
  box-shadow: 0px 0px 0px 0px rgba(2, 2, 2, 0.00);
  background-color: rgba(255, 255, 255, 1.00)
}

.pum-theme-432 .pum-title,
.pum-theme-content-only .pum-title {
  color: #000000;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: inherit;
  font-weight: 400;
  font-size: 32px;
  line-height: 36px
}

.pum-theme-432 .pum-content,
.pum-theme-content-only .pum-content {
  color: #8c8c8c;
  font-family: inherit;
  font-weight: 400
}

.pum-theme-432 .pum-content+.pum-close,
.pum-theme-content-only .pum-content+.pum-close {
  position: absolute;
  height: 18px;
  width: 18px;
  left: auto;
  right: 7px;
  bottom: auto;
  top: 7px;
  padding: 0px;
  color: #000000;
  font-family: inherit;
  font-weight: 700;
  font-size: 20px;
  line-height: 20px;
  border: 1px none #ffffff;
  border-radius: 15px;
  box-shadow: 0px 0px 0px 0px rgba(2, 2, 2, 0.00);
  text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.00);
  background-color: rgba(255, 255, 255, 0.00)
}

/* Popup Theme 425: Default Theme */
.pum-theme-425,
.pum-theme-default-theme {
  background-color: rgba(255, 255, 255, 1.00)
}

.pum-theme-425 .pum-container,
.pum-theme-default-theme .pum-container {
  padding: 18px;
  border-radius: 0px;
  border: 1px none #000000;
  box-shadow: 1px 1px 3px 0px rgba(2, 2, 2, 0.23);
  background-color: rgba(249, 249, 249, 1.00)
}

.pum-theme-425 .pum-title,
.pum-theme-default-theme .pum-title {
  color: #000000;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: inherit;
  font-weight: 400;
  font-size: 32px;
  font-style: normal;
  line-height: 36px
}

.pum-theme-425 .pum-content,
.pum-theme-default-theme .pum-content {
  color: #8c8c8c;
  font-family: inherit;
  font-weight: 400;
  font-style: inherit
}

.pum-theme-425 .pum-content+.pum-close,
.pum-theme-default-theme .pum-content+.pum-close {
  position: absolute;
  height: auto;
  width: auto;
  left: auto;
  right: 0px;
  bottom: auto;
  top: 0px;
  padding: 8px;
  color: #ffffff;
  font-family: inherit;
  font-weight: 400;
  font-size: 12px;
  font-style: inherit;
  line-height: 36px;
  border: 1px none #ffffff;
  border-radius: 0px;
  box-shadow: 1px 1px 3px 0px rgba(2, 2, 2, 0.23);
  text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.23);
  background-color: rgba(0, 183, 205, 1.00)
}

/* Popup Theme 426: Light Box */
.pum-theme-426,
.pum-theme-lightbox {
  background-color: rgba(0, 0, 0, 0.60)
}

.pum-theme-426 .pum-container,
.pum-theme-lightbox .pum-container {
  padding: 18px;
  border-radius: 3px;
  border: 8px solid #000000;
  box-shadow: 0px 0px 30px 0px rgba(2, 2, 2, 1.00);
  background-color: rgba(255, 255, 255, 1.00)
}

.pum-theme-426 .pum-title,
.pum-theme-lightbox .pum-title {
  color: #000000;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: inherit;
  font-weight: 100;
  font-size: 32px;
  line-height: 36px
}

.pum-theme-426 .pum-content,
.pum-theme-lightbox .pum-content {
  color: #000000;
  font-family: inherit;
  font-weight: 100
}

.pum-theme-426 .pum-content+.pum-close,
.pum-theme-lightbox .pum-content+.pum-close {
  position: absolute;
  height: 26px;
  width: 26px;
  left: auto;
  right: -13px;
  bottom: auto;
  top: -13px;
  padding: 0px;
  color: #ffffff;
  font-family: Arial;
  font-weight: 100;
  font-size: 24px;
  line-height: 24px;
  border: 2px solid #ffffff;
  border-radius: 26px;
  box-shadow: 0px 0px 15px 1px rgba(2, 2, 2, 0.75);
  text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.23);
  background-color: rgba(0, 0, 0, 1.00)
}

/* Popup Theme 427: Enterprise Blue */
.pum-theme-427,
.pum-theme-enterprise-blue {
  background-color: rgba(0, 0, 0, 0.70)
}

.pum-theme-427 .pum-container,
.pum-theme-enterprise-blue .pum-container {
  padding: 28px;
  border-radius: 5px;
  border: 1px none #000000;
  box-shadow: 0px 10px 25px 4px rgba(2, 2, 2, 0.50);
  background-color: rgba(255, 255, 255, 1.00)
}

.pum-theme-427 .pum-title,
.pum-theme-enterprise-blue .pum-title {
  color: #315b7c;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: inherit;
  font-weight: 100;
  font-size: 34px;
  line-height: 36px
}

.pum-theme-427 .pum-content,
.pum-theme-enterprise-blue .pum-content {
  color: #2d2d2d;
  font-family: inherit;
  font-weight: 100
}

.pum-theme-427 .pum-content+.pum-close,
.pum-theme-enterprise-blue .pum-content+.pum-close {
  position: absolute;
  height: 28px;
  width: 28px;
  left: auto;
  right: 8px;
  bottom: auto;
  top: 8px;
  padding: 4px;
  color: #ffffff;
  font-family: Times New Roman;
  font-weight: 100;
  font-size: 20px;
  line-height: 20px;
  border: 1px none #ffffff;
  border-radius: 42px;
  box-shadow: 0px 0px 0px 0px rgba(2, 2, 2, 0.23);
  text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.23);
  background-color: rgba(49, 91, 124, 1.00)
}

/* Popup Theme 428: Hello Box */
.pum-theme-428,
.pum-theme-hello-box {
  background-color: rgba(0, 0, 0, 0.75)
}

.pum-theme-428 .pum-container,
.pum-theme-hello-box .pum-container {
  padding: 30px;
  border-radius: 80px;
  border: 14px solid #81d742;
  box-shadow: 0px 0px 0px 0px rgba(2, 2, 2, 0.00);
  background-color: rgba(255, 255, 255, 1.00)
}

.pum-theme-428 .pum-title,
.pum-theme-hello-box .pum-title {
  color: #2d2d2d;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: Montserrat;
  font-weight: 100;
  font-size: 32px;
  line-height: 36px
}

.pum-theme-428 .pum-content,
.pum-theme-hello-box .pum-content {
  color: #2d2d2d;
  font-family: inherit;
  font-weight: 100
}

.pum-theme-428 .pum-content+.pum-close,
.pum-theme-hello-box .pum-content+.pum-close {
  position: absolute;
  height: auto;
  width: auto;
  left: auto;
  right: -30px;
  bottom: auto;
  top: -30px;
  padding: 0px;
  color: #2d2d2d;
  font-family: Times New Roman;
  font-weight: 100;
  font-size: 32px;
  line-height: 28px;
  border: 1px none #ffffff;
  border-radius: 28px;
  box-shadow: 0px 0px 0px 0px rgba(2, 2, 2, 0.23);
  text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.23);
  background-color: rgba(255, 255, 255, 1.00)
}

/* Popup Theme 429: Cutting Edge */
.pum-theme-429,
.pum-theme-cutting-edge {
  background-color: rgba(0, 0, 0, 0.50)
}

.pum-theme-429 .pum-container,
.pum-theme-cutting-edge .pum-container {
  padding: 18px;
  border-radius: 0px;
  border: 1px none #000000;
  box-shadow: 0px 10px 25px 0px rgba(2, 2, 2, 0.50);
  background-color: rgba(30, 115, 190, 1.00)
}

.pum-theme-429 .pum-title,
.pum-theme-cutting-edge .pum-title {
  color: #ffffff;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: Sans-Serif;
  font-weight: 100;
  font-size: 26px;
  line-height: 28px
}

.pum-theme-429 .pum-content,
.pum-theme-cutting-edge .pum-content {
  color: #ffffff;
  font-family: inherit;
  font-weight: 100
}

.pum-theme-429 .pum-content+.pum-close,
.pum-theme-cutting-edge .pum-content+.pum-close {
  position: absolute;
  height: 24px;
  width: 24px;
  left: auto;
  right: 0px;
  bottom: auto;
  top: 0px;
  padding: 0px;
  color: #1e73be;
  font-family: Times New Roman;
  font-weight: 100;
  font-size: 32px;
  line-height: 24px;
  border: 1px none #ffffff;
  border-radius: 0px;
  box-shadow: -1px 1px 1px 0px rgba(2, 2, 2, 0.10);
  text-shadow: -1px 1px 1px rgba(0, 0, 0, 0.10);
  background-color: rgba(238, 238, 34, 1.00)
}

/* Popup Theme 430: Framed Border */
.pum-theme-430,
.pum-theme-framed-border {
  background-color: rgba(255, 255, 255, 0.50)
}

.pum-theme-430 .pum-container,
.pum-theme-framed-border .pum-container {
  padding: 18px;
  border-radius: 0px;
  border: 20px outset #dd3333;
  box-shadow: 1px 1px 3px 0px rgba(2, 2, 2, 0.97) inset;
  background-color: rgba(255, 251, 239, 1.00)
}

.pum-theme-430 .pum-title,
.pum-theme-framed-border .pum-title {
  color: #000000;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: inherit;
  font-weight: 100;
  font-size: 32px;
  line-height: 36px
}

.pum-theme-430 .pum-content,
.pum-theme-framed-border .pum-content {
  color: #2d2d2d;
  font-family: inherit;
  font-weight: 100
}

.pum-theme-430 .pum-content+.pum-close,
.pum-theme-framed-border .pum-content+.pum-close {
  position: absolute;
  height: 20px;
  width: 20px;
  left: auto;
  right: -20px;
  bottom: auto;
  top: -20px;
  padding: 0px;
  color: #ffffff;
  font-family: Tahoma;
  font-weight: 700;
  font-size: 16px;
  line-height: 18px;
  border: 1px none #ffffff;
  border-radius: 0px;
  box-shadow: 0px 0px 0px 0px rgba(2, 2, 2, 0.23);
  text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.23);
  background-color: rgba(0, 0, 0, 0.55)
}

/* Popup Theme 431: Floating Bar - Soft Blue */
.pum-theme-431,
.pum-theme-floating-bar {
  background-color: rgba(255, 255, 255, 0.00)
}

.pum-theme-431 .pum-container,
.pum-theme-floating-bar .pum-container {
  padding: 8px;
  border-radius: 0px;
  border: 1px none #000000;
  box-shadow: 1px 1px 3px 0px rgba(2, 2, 2, 0.23);
  background-color: rgba(238, 246, 252, 1.00)
}

.pum-theme-431 .pum-title,
.pum-theme-floating-bar .pum-title {
  color: #505050;
  text-align: left;
  text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
  font-family: inherit;
  font-weight: 400;
  font-size: 32px;
  line-height: 36px
}

.pum-theme-431 .pum-content,
.pum-theme-floating-bar .pum-content {
  color: #505050;
  font-family: inherit;
  font-weight: 400
}

.pum-theme-431 .pum-content+.pum-close,
.pum-theme-floating-bar .pum-content+.pum-close {
  position: absolute;
  height: 18px;
  width: 18px;
  left: auto;
  right: 5px;
  bottom: auto;
  top: 50%;
  padding: 0px;
  color: #505050;
  font-family: Sans-Serif;
  font-weight: 700;
  font-size: 15px;
  line-height: 18px;
  border: 1px solid #505050;
  border-radius: 15px;
  box-shadow: 0px 0px 0px 0px rgba(2, 2, 2, 0.00);
  text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.00);
  background-color: rgba(255, 255, 255, 0.00);
  transform: translate(0, -50%)
}

.pum-close {
  display: flex;
  justify-content: center;
  align-items: center;

  .fa-xmark {
    font-size: 2rem;
    color: #53354A;
    transition: color 0.3s ease;

    &:hover {
      color: #EC6164;
    }
  }
}

.pum-content {
  .wp-block-group__inner-container {
    display: flex;
    align-items: flex-start;
    gap: 2rem;

    @media (max-width: 768px) {
      flex-direction: column;
    }
  }

  .contactFormTop {

    .contactFormName,
    .contactFormEmail {
      width: 100%;
    }
  }
}

.modalLeft,
.wp-block-contact-form-7-contact-form-selector {
  max-width: 60ch;
}

.popmake-content {
  .cta {
    padding: 1em 2em !important;
    font-weight: 700;
    font-size: 1rem;
  }
}

.modalLeft ul {
  list-style: none;
  margin: 0;
}

.modalLeft li {
  position: relative;
  font-size: clamp(1rem, 0.7714rem + 0.4762vw, 1.2rem);
  display: flex;
  align-items: center;
  gap: .5em;
}

/* Custom dot list */
.modalLeft li::before {
  content: "\f058";
  font: var(--fa-font-regular);
  color: #EC6164;
  width: 1em;
}


.modalH2 {
  font-size: clamp(2rem, 0.8571rem + 2.381vw, 3rem);
  margin-bottom: 1.5rem;
  font-weight: 600;
  color: #53354A;
  line-height: 100%;
}

.modalSpan {
  font-size: clamp(1rem, 0.7714rem + 0.4762vw, 1.2rem);
  margin-bottom: 2rem;
}

.modalH3 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
  font-weight: 500;
  color: #53354A;
  line-height: 100%;
}

#pum-438 {
  z-index: 1999999999
}

#pum-433 {
  z-index: 1999999999
}

/* ---- Hero ---- */
/* Hides Page Title */
#grve-page-title {
  display: none !important;
}

.grve-wrapper {
  height: auto !important;
  min-height: auto !important;
}

#grve-page-title .grve-wrapper {
  height: auto !important;
  min-height: auto !important;
}

#grve-page-title .grve-wrapper .grve-content {
  min-height: auto !important;
}

.cursor {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  height: 500px;
  width: 500px;
  background-color: #EC6164;
  border-radius: 50%;
  filter: blur(250px);
  pointer-events: none;
  z-index: 2;
  opacity: .4;

  @media (max-width: 1024px) {
    display: none !important;
  }

  @-moz-document url-prefix() {
    opacity: .2;
  }
}

/* Hero content */

.heroCTA {
  .cta {
    padding: 1em 2em !important;
    border: 0px !important;

    &::after {
      display: none !important;
    }
  }

  span {
    display: flex;
    font-size: 1.5rem;
  }
}

.heroImage {
  animation: float 6s ease-in-out infinite;

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 1000px;
    width: 1000px;
    background: radial-gradient(45.33% 45.33% at 50% 50%, rgba(242, 103, 104, 0.20) 58.17%, rgba(242, 103, 104, 0.10) 81.25%, rgba(242, 103, 104, 0.00) 100%);
    top: 20%;
    left: 15%;
    z-index: -1;
  }

  @media (max-width: 1024px) {
    display: none !important;
  }
}

@keyframes float {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-20px);
  }

  100% {
    transform: translateY(0px);
  }
}

.heroWrapper {
  .grve-column-content {
    display: flex;
    flex-direction: column;
    gap: 3rem;
  }
}

.redCircle {
  display: block;
  position: absolute;
  height: 500px;
  width: 500px;
  /* background: radial-gradient(45.33% 45.33% at 50% 50%, rgba(242, 103, 104, 0.20) 58.17%, rgba(242, 103, 104, 0.10) 81.25%, rgba(242, 103, 104, 0.00) 100%); */
  /* top: 10%;
  left: 0%; */
  z-index: 0;
  background-color: red;
  border-radius: 50%;
  /* Display none en attendant de revenir dessus plus tard */
  display: none;
}

.orangeCircle {
  display: block;
  position: absolute;
  height: 500px;
  width: 500px;
  /* background: radial-gradient(45.33% 45.33% at 50% 50%, rgba(255, 172, 88, 0.20) 58.17%, rgba(255, 172, 88, 0.10) 81.25%, rgba(255, 172, 88, 0.00) 100%); */
  z-index: 0;
  /* top: 20%;
  right: 0%; */
  transform-origin: center center;
  background-color: orange;
  border-radius: 50%;
  /* Display none en attendant de revenir dessus plus tard */
  display: none;
}

.path {
  position: absolute !important;
  top: 0;
  left: 0;
  z-index: -1;
  /* Display none en attendant de revenir dessus plus tard */
  display: none;
}

.heroContainer {

  /* Big screens */
  @media (min-height: 1288px) {
    height: 80vh;

    .grve-container {
      display: flex;
      align-items: center;
    }
  }

  .grve-container {
    max-width: 75%;
  }

  .grve-row {
    @media (max-width: 1024px) {
      flex-direction: column;
    }
  }

  .grve-column {
    @media (max-width: 1024px) {
      width: 100%;
    }
  }

  h2 {
    line-height: 115%;
    /* 55 mobile, 90 desktop */
    font-size: clamp(3.4375rem, 0.9375rem + 5.2083vw, 5.625rem);
  }
}

.grve-column {
  padding: 0 !important;
}

/* ---- About ---- */

.aboutRixone {
  position: relative;
  padding: 5% 1rem;
  background-color: #fff;
  z-index: 11;

  .grve-section {
    .grve-container {
      max-width: 1550px;

      @media (max-width: 1024px) {
        width: 100%;
        max-width: 100%;
        padding: 1rem 0;
      }
    }
  }

  .grve-row {
    flex-wrap: nowrap !important;

    @media (max-width: 1024px) {
      gap: 2rem !important;
      margin: 0 !important;
      flex-wrap: wrap !important;
    }
  }
}

.aboutRixoneH2 {
  max-width: 40ch;
}

.aboutRixoneH2 {
  .grve-column-content {
    .grve-h2 {
      font-weight: 600;
    }
  }
}

.aboutRixoneP {
  .grve-column-content {
    .grve-text {
      display: flex;
      justify-content: flex-end;

      p {
        padding-top: .5rem;
        max-width: 40ch;
      }
    }
  }
}

.aboutMeaning {
  display: flex;
  justify-content: center;
  align-items: stretch;
  margin-top: 2%;
  font-size: clamp(1.0625rem, 0.5625rem + 1.0417vw, 1.5rem);

  .grve-row {
    gap: 2rem !important;
  }
}

.aboutMeaningItem {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border-radius: 16px;
  border: 2px solid rgba(83, 53, 74, 0.50);
  background: rgba(83, 53, 74, 0.10);
  box-shadow: 12px 11px 30px 0 rgba(83, 53, 74, 0.25);
  backdrop-filter: blur(15px);
  padding: 2rem !important;
  color: #53354A;

  @media (max-width: 767px) {
    padding: 1rem !important;
    margin: 0 !important;
  }

  &:nth-child(even) {
    border: 2px solid rgba(226, 68, 84, 0.50);
    background: rgba(226, 68, 84, 0.10);
    box-shadow: 10px 10px 20px 0 rgba(226, 68, 84, 0.25);
    color: #E24454;

  }

  p:first-child {
    font-size: 4em;
    font-weight: 700;
  }
}

/* ---- Actions ---- */
.actionsSection {
  padding-top: 5%;
  z-index: 10;
  position: relative;

  .grve-section {
    .grve-container {
      max-width: 1550px;

      .grve-row {
        .grve-column {
          align-items: center;
        }
      }
    }
  }
}

.actionsSectionLeft {
  position: relative;

  &::before {
    content: '';
    display: block;
    position: absolute;
    width: 924px;
    height: 981px;
    transform: rotate(-172.436deg);
    background: radial-gradient(45.33% 45.33% at 50% 50%, rgba(242, 103, 104, 0.20) 58.17%, rgba(242, 103, 104, 0.10) 81.25%, rgba(242, 103, 104, 0.00) 100%);
    top: -75%;
    right: 35%;
    z-index: -1;
  }

  &::after {
    content: '';
    display: block;
    position: absolute;
    width: 924px;
    height: 981px;
    transform: rotate(-172.436deg);
    background: radial-gradient(45.33% 45.33% at 50% 50%, rgba(255, 172, 88, 0.20) 58.17%, rgba(255, 172, 88, 0.10) 81.25%, rgba(255, 172, 88, 0.00) 100%);
    top: -74%;
    right: 0%;
    z-index: -2;
  }
}

.actionsSectionMiddle {
  position: relative;
  --orangeX: 0px;
  --orangeY: 0px;
  --redX: 0px;
  --redY: 0px;

  &::before {
    content: '';
    display: block;
    position: absolute;
    width: 531px;
    height: 531px;
    transform: rotate(-172.436deg);
    background: radial-gradient(45.33% 45.33% at 50% 50%, rgba(242, 103, 104, 0.20) 58.17%, rgba(242, 103, 104, 0.10) 81.25%, rgba(242, 103, 104, 0.00) 100%);
    top: 49%;
    right: -20%;
    z-index: -1;
    transform: translate(var(--redX), var(--redY));
  }

  &::after {
    content: '';
    display: block;
    position: absolute;
    width: 531px;
    height: 531px;
    transform: rotate(-172.436deg);
    background: radial-gradient(45.33% 45.33% at 50% 50%, rgba(255, 172, 88, 0.20) 58.17%, rgba(255, 172, 88, 0.10) 81.25%, rgba(255, 172, 88, 0.00) 100%);
    top: 50%;
    right: -40%;
    z-index: -2;
    transform: translate(var(--orangeX), var(--orangeY));
  }
}

.actionsSectionContainer {
  margin-top: 0 !important;

  @media (max-width: 767px) {
    padding: 0 !important;
  }
}

.actionsSectionContent {
  h3 {
    font-weight: 500;
    font-size: 20px;
    line-height: 20px;
  }

  p {
    font-size: 17px;
    line-height: 20px;
  }
}

.actionsSectionItem {
  flex-wrap: nowrap !important;

  @media (max-width: 767px) {
    flex-wrap: wrap !important;
    gap: 1rem;
    justify-content: center;
    border-radius: 20px;
    box-shadow: 0 0 22px 0 rgba(0, 0, 0, 0.25);
    padding: 1rem;
    margin-left: .5rem !important;
    margin-right: .5rem !important;
    background-color: #fff;
  }
}

.actionsSectionIcon {
  width: auto !important;

  @media (max-width: 767px) {
    margin-top: 0 !important;
  }
}

.actionsSectionList {
  .grve-column-content {
    display: flex;
    flex-direction: column;
    gap: 3rem;
  }
}

/* Use case */

.useCasesSection {
  z-index: 10;
  margin-top: 5rem;
  margin-bottom: 5rem;

  .grve-container {
    max-width: 90%;
  }

  &::before,
  &::after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 70%;
    transform: translate(-50%, -50%) scale(.9);
    height: 500px;
    width: 500px;

    @media (max-width: 767px) {
      display: none;
    }
  }

  &::before {
    clip-path: path("M 0 250 C 0 53.35 53.35 0 250 0 C 446.65 0 500 53.35 500 250 C 500 446.65 446.65 500 250 500 C 53.35 500 0 446.65 0 250 Z");
    z-index: 1;
    background-color: white;
  }

  &::after {
    filter: blur(50px);
    background: linear-gradient(45deg, rgba(242, 103, 104, 1) 0%, rgba(255, 172, 88, 1) 100%);
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(1.2);
    z-index: 0;
    opacity: .5;
    /* animation: breathing 4s ease-in-out infinite; */
  }
}

.useCasesHeader {
  text-align: center;
  margin-bottom: 4rem;

  h2 {
    font-size: 48px;
    font-weight: 500;
    letter-spacing: 2%;
  }

  p {
    font-size: 20px;
    max-width: 35ch;
    margin: auto;
    line-height: 1.4;

    @media (max-width: 1024px) {
      max-width: 70%;
    }

    @media (max-width: 769px) {
      max-width: 100%;
    }
  }
}

.useCasesItems {
  .grve-row-inner {
    margin: 0 !important;
    display: flex;
    gap: 1rem !important;
    justify-content: center;
    flex-wrap: wrap;
  }
}

.useCasesItems:not(:last-child) {
  margin-bottom: 1rem !important;
}

.useCasesItem {
  backdrop-filter: blur(50px);
  background-color: rgba(255, 255, 255, 0.5);
  border: solid 2px rgba(226, 68, 84, 0.2);
  border-radius: 16px;
  padding: 1rem;
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 20% !important;

  @media (max-width: 1024px) {
    width: 50% !important;
    margin: 0 !important;
  }

  @media (max-width: 769px) {
    width: 100% !important;
    margin: 0 !important;
  }

  &:hover {
    box-shadow: 0 0 20px 0 #EC6164;
  }

  h3 {
    font-size: 20px;
    font-weight: 500;
    margin: 0;
    margin-bottom: 1rem;
    line-height: 1;
  }

  p {
    font-size: 17px;
    margin: 0;
    line-height: 1.4;
  }
}

/* Solution */

.solutionSectionH2 {
  font-weight: 500;
  letter-spacing: .96px;
  margin-bottom: 66px;
  max-width: 20ch;
  line-height: normal;
}

.solutionSectionH3 {
  font-size: 24px;
  line-height: 20px;
  font-weight: 500;
  margin-bottom: 27px;
}

.solutionMainColumn {
  .grve-column {
    justify-content: flex-end;

    @media (max-width: 769px) {
      justify-content: center;
    }
  }
}

.solutionColumnWrapper {
  width: 70% !important;

  @media (max-width: 1024px) {
    width: 100% !important;
  }
}

.solutionSectionContent {
  p {
    font-size: 17px;
    line-height: 20px;
    letter-spacing: normal;
    font-weight: 400;
  }
}

.solutionSectionContainer {
  padding: 0 .5rem;
  position: relative;

  .grve-container {
    max-width: 1550px;
  }

  &::before,
  &::after {
    content: '';
    display: block;
    position: absolute;
    left: -10%;
    height: 500px;
    width: 500px;

    @media (max-width: 1024px) {
      display: none;
    }
  }

  &::before {
    clip-path: path("M 0 250 C 0 53.35 53.35 0 250 0 C 446.65 0 500 53.35 500 250 C 500 446.65 446.65 500 250 500 C 53.35 500 0 446.65 0 250 Z");
    z-index: 5;
    background-color: white;
  }

  &::after {
    filter: blur(50px);
    background: linear-gradient(45deg, rgba(242, 103, 104, 1) 0%, rgba(255, 172, 88, 1) 100%);
    border-radius: 50%;
    transform: translate(10px, 15px);
    z-index: 4;
    opacity: .5;
    animation: breathing 4s ease-in-out infinite;
  }
}

@keyframes breathing {

  0%,
  100% {
    transform: scale(1);
    opacity: 0.7;
  }

  50% {
    transform: scale(1.05);
    opacity: 1;
  }
}

.solutionSectionWrapper {
  .grve-column-inner-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;

    @media (max-width: 767px) {
      align-items: center;
      text-align: center;
    }
  }
}

.solutionSectionItems {
  .grve-row-inner {
    @media (max-width: 767px) {
      gap: 2rem;
    }
  }
}

/* Steps */
.stepsSection {
  /* z-index: 10; */

  &::after {
    content: '';
    display: block;
    filter: blur(100px);
    background: linear-gradient(45deg, rgba(242, 103, 104, 1) 0%, rgba(255, 172, 88, 1) 100%);
    border-radius: 50%;
    height: 600px;
    width: 600px;
    top: 35%;
    right: -50%;
    position: absolute;
    z-index: -1;
    opacity: .3;

    @media (max-width: 767px) {
      display: none;
    }
  }
}

.stepsSectionH2 {
  text-align: center;
  font-weight: 500;
  max-width: 20ch;
  margin: auto;
}

.stepsSectionContent {
  .grve-container {
    max-width: 90%;
  }

  --line-center-height: 0;

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: var(--line-center-height);
    border: 0px;
    border-left: 2px solid #EC6164;
    top: -10%;
    left: 50%;

    @media (max-width: 768px) {
      display: none;
    }
  }
}

.stepsSectionText {
  p:first-child {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 800;
    line-height: 20px;
    letter-spacing: 4px;
  }

  h3 {
    font-size: 30px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.6px;
  }

  p:last-child {
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 28px;
  }
}

.stepsSectionItem:not(.step5) {
  padding: 5rem !important;
  position: relative;
  --border-width: 100%;

  &:not(.step5)::before {
    content: '';
    display: block;
    position: absolute;
    height: 100%;
    width: var(--border-width);
    border: 0px;
    border-top: 2px solid #EC6164;
    border-style: dashed;
    top: 0;
    z-index: -1;
  }
}

.stepsH3 {
  text-align: center;
  color: #EC6164;
  font-size: clamp(1.5rem, 0.9286rem + 1.1905vw, 2rem);
  margin-bottom: 3rem;
  margin-top: 1rem;

  span {
    background-color: #f7fcff;
    padding: 1rem;
  }
}

/* .step1,
.step2 {
  margin-top: 5rem;
}

.step3,
.step4 {
  margin-top: 25rem;
} */

.step5 {
  width: 60% !important;
  margin: auto;
  padding: 0 5rem !important;

  @media (max-width: 768px) {
    width: 100%;
  }
}

.stepsSectionLeft {
  .grve-image {
    position: absolute;
    top: -130px;
    left: -15%;

    @media (max-width: 1440px) {
      left: -30%;
    }

    .grve-inner-section {
      overflow: hidden;
    }
  }
}

.itemLeft {
  position: relative;
  --opacity: 1;

  &::before {
    left: 0;
  }

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 10px;
    width: 10px;
    background-color: #EC6164;
    top: -4px;
    right: -6px;
    transform: rotate(45deg);
    z-index: 1;
    opacity: var(--opacity);
  }
}

.stepsSectionRight {
  margin-top: 10%;

  .grve-image {
    position: absolute;
    top: -130px;
    right: -15%;

    @media (max-width: 1440px) {
      right: -30%;
    }
  }
}

.itemRight {
  position: relative;
  --opacity: 1;

  &::before {
    right: 0;
  }

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 10px;
    width: 10px;
    background-color: #EC6164;
    top: -4px;
    left: -4px;
    transform: rotate(45deg);
    z-index: 1;
    opacity: var(--opacity);
  }
}

.stepsSectionPrevoir {
  position: absolute !important;
  top: -5%;
  left: 50%;
  text-align: center;
  width: 100%;
  padding: 1rem;

  &::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: #f7fcff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1 !important;
  }
}

.stepsSectionCoordonner {
  position: absolute !important;
  top: 55%;
  left: 50%;
  padding: 1rem;
  text-align: center;
  width: 100%;

  &::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: #f7fcff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1 !important;
  }
}

.stepsSectionAmeliorer {
  position: absolute !important;
  top: -45%;
  left: 50%;
  padding: 1rem;
  text-align: center;
  width: 100%;
  transform: translate(-50%, -50%);

  &::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: #f7fcff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1 !important;
  }
}


.stepsSectionMobile {
  &::before {
    content: '';
    display: block;
    position: absolute;
    height: 80%;
    border: 0px;
    border-left: 2px solid #EC6164;
    top: 10%;
    left: 50%;
    z-index: -1000;
  }
}

.stepsSectionMobileRow {
  .grve-column-inner-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 2rem;
    margin-bottom: 2rem;
    border-radius: 20px;
    box-shadow: 0 0 22px 0 rgba(0, 0, 0, 0.25);
    background-color: #fff;
  }
}

.stepsVisualWrapper {
  height: 100vh;
  overflow: hidden;
  z-index: 10;

  .grve-section {
    padding: 0 !important;
  }

  .grve-container {
    max-width: 100% !important;
    width: 100% !important;

    video {
      width: 100% !important;
    }
  }
}

.processMobile,
.ctaMobile {
  @media (min-width: 1024px) {
    display: none;
  }
}

.processDesktop,
.ctaDesktop {
  @media (max-width: 1024px) {
    display: none;
  }
}

/* ---- Fields section (was simply "Woking" before) ---- */

.workSection {
  .grve-container {
    max-width: 100vw;
    width: 100%;
  }

  .grve-row {
    align-items: center;
  }
}

.workLeft {
  height: 100%;
  transform: scale(1.5);

  @media (min-height: 1288px) {
    transform: scale(1.3);
  }

  @media (max-width: 769px) {
    transform: scale(1);
  }

  .grve-background-wrapper {
    overflow: visible;
  }

  .grve-column-content {
    height: 50vh !important;
  }

  .grve-bg-image {
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;

    @media (max-width: 767px) {
      width: 100% !important;
      border-radius: 50px;
    }
  }
}

.workRight {
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  box-shadow: 0 0 22px 0 rgba(0, 0, 0, 0.25);
  padding: 3rem !important;
  background-color: #fff;
  margin-top: 3rem;
  margin-bottom: 3rem;

  @media (max-width: 767px) {
    border-radius: 20px;
    max-width: 90%;
    margin: auto;
    transform: translateY(-10%);
    padding: 2rem !important;
  }

  h2 {
    font-size: 30px;
    font-style: normal;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 6px;
    margin-bottom: 36px;

    strong {
      color: #EC6164;
      font-weight: 800;
    }
  }

  h3 {
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
  }

  p {
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
  }

  .grve-box-content {
    margin-top: 0 !important;
    margin-bottom: 35px;
  }

  .grve-inner-section {
    margin-bottom: 35px;
  }
}

.workIcon {
  width: auto !important;
}

.workText {
  max-width: 55ch;

  h3 {
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
  }

  p {
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
  }
}

/* ---- Split Section 2 ---- */

.splitSection {
  padding: 5% 1rem;
  background-color: transparent;

  .grve-container {
    max-width: 1550px;
  }
}

/* ---- Grid Section ---- */

.gridSection {
  overflow: hidden;

  .grve-container {
    max-width: 100vw !important;
    width: 100% !important;
  }

  .grve-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  h3 {
    font-size: 30px;
    font-style: normal;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 6px;
    margin-bottom: 36px;
  }

  p {
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 28px;
  }
}

.gridSectionImage {
  @media (max-width: 1024px) {
    margin: 0 !important;
    height: 50vh !important;
  }
}

.gridSectionText {
  padding: 10rem;
  background-color: #fff;

  @media (max-width: 1024px) {
    padding: 4rem;
    margin: 0 !important;
  }
}

.gridSectionBottom {
  .grve-row-inner {
    @media (max-width: 767px) {
      flex-direction: column-reverse !important;
    }
  }
}

.imageLeft {
  position: relative;
  --maskWidthL: 100%;

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 100%;
    width: var(--maskWidthL);
    top: 0;
    left: 0;
    background-color: #EC6164;
  }
}

.imageRight {
  position: relative;
  --maskWidthR: 100%;

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 100%;
    width: var(--maskWidthR);
    top: 0;
    right: 0;
    background-color: #53354A;

    @media (prefers-reduced-motion: reduce) {
      display: none;
    }
  }
}

/* ---- Patners ---- */

.partnersSection {
  position: relative;
  z-index: 10;

  .grve-container {
    max-width: 80%;

    @media (max-width: 1024px) {
      max-width: 95%;
    }
  }
}


.partnersText {
  max-width: 55%;
  margin: auto;
  margin-bottom: 4rem;

  @media (max-width: 767px) {
    max-width: 95%;
  }

  h2 {
    font-weight: 500;
    font-size: clamp(2.25rem, 1.3929rem + 1.7857vw, 3rem);
  }

  p {
    font-size: clamp(1rem, 0.4286rem + 1.1905vw, 1.5rem);
  }
}

.partnersItem {
  align-items: center !important;

  .grve-thumbnail-wrapper {
    width: 150px !important;
  }
}

/* ---- Testimonials ---- */

.testimonialsSection {
  z-index: 10;

  .grve-container {
    max-width: 80%;

    @media (max-width: 1024px) {
      max-width: 95%;
    }
  }

  h2 {
    text-align: center;
    font-weight: 500;
    letter-spacing: 2px;
    margin-bottom: 5rem;
  }
}

.grve-testimonial-item {
  border-radius: 50px;
  box-shadow: 0 0 22px 0 rgba(0, 0, 0, 0.25);
  padding: 3rem !important;
  transition: all 0.3s ease;

  @media (max-width: 767px) {
    border-radius: 20px;
  }
}

.grve-testimonial-inner {
  .grve-h3 {
    font-size: clamp(1.375rem, 0.9464rem + 0.8929vw, 1.75rem);
    line-height: 110%;

    &::before {
      font: var(--fa-font-solid);
      font-size: 1em;
      content: '\f10d';
      margin-right: .5rem;
      opacity: .3;
      transition: all 0.3s ease;
    }
  }

  p {
    font-size: clamp(1rem, 0.7714rem + 0.4762vw, 1.2rem);
  }
}

.testimonial {
  transition: all 0.3s ease;
  padding: 2rem 1rem;

  &:hover {
    transform: rotate(3deg);

    .grve-testimonial-item {
      box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.35);
    }

    .grve-h3 {
      &::before {
        opacity: 1;
        color: #EC6164;
      }
    }
  }
}

/* ---- Values ---- */

.valuesSection {
  z-index: 10;

  &::after {
    content: '';
    display: block;
    position: absolute;
    height: 2px;
    width: 80%;
    background-color: #C6C6C6;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
  }

  p {
    margin-bottom: 1rem;
  }

  .grve-row {
    gap: 5.375rem !important;
    flex-wrap: nowrap !important;

    @media (max-width: 1024px) {
      flex-wrap: wrap !important;
      gap: 2rem !important;
      justify-content: center;
    }
  }
}

.valuesSectionAbout {
  h2 {
    font-size: clamp(2.25rem, 1.3929rem + 1.7857vw, 3rem);
    font-style: normal;
    font-weight: 500;
    letter-spacing: 7.2px;
    margin-bottom: 1rem;
  }

  p {
    font-size: clamp(1rem, 0.8571rem + 0.2976vw, 1.125rem);
    line-height: normal;
  }

  .grve-thumbnail {
    padding: 0 !important;
    overflow: visible;
    width: auto !important;
  }

  .grve-side-icon {
    gap: 1rem;

    .grve-wrapper-icon {
      margin: 0 !important;
    }

    .grve-box-content {
      margin: 1rem 0 !important;
    }
  }
}

.valuesSectionVision {
  .grve-box-content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    p {
      margin-bottom: 0 !important;
    }
  }
}

/* ---- Contact Form ---- */
.contactForm {
  z-index: 10;

  h2 {
    font-size: clamp(2rem, 0.5rem + 3.125vw, 3rem);
    font-weight: 500;
    letter-spacing: 7.2px;
    margin-bottom: 1rem;
  }

  p {
    font-size: clamp(1rem, 0.8571rem + 0.2976vw, 1.125rem);
    line-height: normal;
    font-weight: 300;
    margin-bottom: 3rem;
  }

  .grve-container {
    background-color: #fff;
    max-width: 70%;
    border-radius: 50px;
    box-shadow: 0px 0 22px 0 rgba(0, 0, 0, 0.25);
    padding: 5rem;
    z-index: 2;

    .grve-row {
      margin: 0 !important;

      .grve-column {
        margin: 0 !important;
      }
    }

    @media (max-width: 1024px) {
      max-width: 95%;
      padding: 2rem;
      border-radius: 20px;
    }
  }
}

.contactFormContainer {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 1rem;
  flex-direction: column;

  @media (max-width: 767px) {
    flex-direction: column;
  }
}

.contactFormTop {
  display: flex;
  gap: 1rem;

  @media (max-width: 767px) {
    flex-direction: column;
  }
}

.contactFormName,
.contactFormEmail,
.contactFormMsg {

  input,
  textarea {
    border-radius: .5rem;
    background-color: #f2f2f2;
    padding: 10px 20px;
    font-size: 1rem;

    &:focus {
      border-color: #EC6164;
    }
  }
}

.contactFormName {
  width: 20%;

  @media (max-width: 767px) {
    width: 100%;
  }
}

.contactFormEmail {
  width: 80%;

  @media (max-width: 767px) {
    width: 100%;
  }
}

.sendButton {
  display: flex;
  align-items: center;

  @media (max-width: 767px) {
    width: 100%;
    align-items: stretch;
    flex-direction: column;
  }
}

.wpcf7-not-valid-tip {
  border-radius: 5px !important;
}

.wpcf7-response-output {
  border-radius: 5px !important;
}

.wpcf7-spinner {
  @media (max-width: 767px) {
    margin: auto;
    margin-top: .5rem;
  }
}

/* ---- Footer ---- */