/**
 * Font-size calcul
 */
/**
* Trigger hover effect on different pseudo-classes
* depending on touch or no-touch device
* => no-touch > on hover and on focus (by default, can be disable)
* => touch > on active, and when a class is added on the targeted element (optionnal)
*
* @param $focus (boolean) set to false to disable the hover effect on focus (no-touch only)
* @param $touchClass (string) the hover effect will be set if the targeted element has this class
*/
/**
* Set an item to 100% of its parent's width and height
*/
/**
* Set an item to 100% of the window width (and 100% of its parent height)
* even if located in a limited width wrapper
*/
/**
* Set an item to 100% of the window width
* even if located in a limited width wrapper,
* but keep it in the flow
*/
/**
* To call on an <img> tag.
* Set the image size to adapt to its parent
*/
/**
* Like img-cover(), but for responsive img with <picture>
* /!\ To call on <picture>, or <img> parent.
*/
/**
* Floating form items
* if $class2 equals 'empty', the next item is cleared
*/
/*
A simple little SCSS mixin for creating scrim gradients
Inspired by Andreas Larson - https://github.com/larsenwork
https://css-tricks.com/easing-linear-gradients/
*/
/**
Convert em value into px
 */
/**
Fluid font-size between 2 breakpoints.
Font-size must be in px, use em2px() function to convert from em.
*/
/**
Fluid value between 2 breakpoints (can be use for other than font-size)
(Font-size must be in px, use em2px() function to convert from em)
*/
/*
Fluid value - clamp version (2023)
@see https://www.smashingmagazine.com/2022/10/fluid-typography-clamp-sass-functions/
 */
/**
 * Animated placeholder for images or divs (FB like)
 */
/*** SPECIFIC TO CURRENT PROJECT ***/
/************************************
 * Grids
 */
/************************************
 * Breakpoints
 */
/************************************
 * Transitions
 */
/************************************
 * Paths
 */
/************************************
 * Fonts
 */
/*** LOCAL FONTS ***/
/*** FONTS ***/
/*** VARIABLES TO USE ***/
/************************************
 * Font Sizes
 */
/************************************
 * COLORS
 */
/************************************
 * THEME
 */
/************************************
 * Grids
 */
/************************************
 * Breakpoints
 */
/************************************
 * Transitions
 */
/************************************
 * Paths
 */
/************************************
 * Fonts
 */
/*** LOCAL FONTS ***/
/*** FONTS ***/
/*** VARIABLES TO USE ***/
/************************************
 * Font Sizes
 */
/************************************
 * COLORS
 */
/************************************
 * THEME
 */
.yellow-btn {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  right: 0;
  bottom: 0;
  width: clamp(50px, 2.87vw + 21.85px, 77px);
  height: clamp(50px, 2.87vw + 21.85px, 77px);
  -webkit-transform: translate(-38%, 40%);
          transform: translate(-38%, 40%);
  opacity: 0;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.yellow-btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 80px;
  background-color: var(--c-main);
  z-index: -1;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
.yellow-btn .arrow {
  content: url("../../svg/arrow-blue-small.svg");
}
@media screen and (max-width: 980px) {
  .yellow-btn {
    display: none;
  }
}

/************************************
 * Grids
 */
/************************************
 * Breakpoints
 */
/************************************
 * Transitions
 */
/************************************
 * Paths
 */
/************************************
 * Fonts
 */
/*** LOCAL FONTS ***/
/*** FONTS ***/
/*** VARIABLES TO USE ***/
/************************************
 * Font Sizes
 */
/************************************
 * COLORS
 */
/************************************
 * THEME
 */
.shape-blue {
  content: url("../../svg/shape-blue.svg");
  position: absolute;
  left: 0;
  bottom: 17%;
  z-index: 2;
  width: clamp(345px, 5.32vw + 292.87px, 395px);
}
@media screen and (max-width: 980px) {
  .shape-blue {
    display: none;
  }
}

.shape-transparent {
  content: url("../../svg/shape-transparent.svg");
  position: absolute;
  right: 0;
  bottom: -55px;
  z-index: 2;
  width: clamp(211px, 32.94vw + 87.46px, 720px);
}
@media screen and (max-width: 980px) {
  .shape-transparent {
    bottom: -15px;
  }
}

.shape-yellow {
  content: url("../../svg/shape-yellow.svg");
  position: absolute;
  right: 0;
  bottom: -35px;
  z-index: 2;
  width: clamp(125px, 19.74vw + 50.97px, 430px);
}
@media screen and (max-width: 980px) {
  .shape-yellow {
    bottom: -15px;
  }
}

body.page-template-page-applications {
  /************************************
   * Grids
   */
  /************************************
   * Breakpoints
   */
  /************************************
   * Transitions
   */
  /************************************
   * Paths
   */
  /************************************
   * Fonts
   */
  /*** LOCAL FONTS ***/
  /*** FONTS ***/
  /*** VARIABLES TO USE ***/
  /************************************
   * Font Sizes
   */
  /************************************
   * COLORS
   */
  /************************************
   * THEME
   */
  /**
   * Font-size calcul
   */
  /**
  * Trigger hover effect on different pseudo-classes
  * depending on touch or no-touch device
  * => no-touch > on hover and on focus (by default, can be disable)
  * => touch > on active, and when a class is added on the targeted element (optionnal)
  *
  * @param $focus (boolean) set to false to disable the hover effect on focus (no-touch only)
  * @param $touchClass (string) the hover effect will be set if the targeted element has this class
  */
  /**
  * Set an item to 100% of its parent's width and height
  */
  /**
  * Set an item to 100% of the window width (and 100% of its parent height)
  * even if located in a limited width wrapper
  */
  /**
  * Set an item to 100% of the window width
  * even if located in a limited width wrapper,
  * but keep it in the flow
  */
  /**
  * To call on an <img> tag.
  * Set the image size to adapt to its parent
  */
  /**
  * Like img-cover(), but for responsive img with <picture>
  * /!\ To call on <picture>, or <img> parent.
  */
  /**
  * Floating form items
  * if $class2 equals 'empty', the next item is cleared
  */
  /*
  A simple little SCSS mixin for creating scrim gradients
  Inspired by Andreas Larson - https://github.com/larsenwork
  https://css-tricks.com/easing-linear-gradients/
  */
  /**
  Convert em value into px
   */
  /**
  Fluid font-size between 2 breakpoints.
  Font-size must be in px, use em2px() function to convert from em.
  */
  /**
  Fluid value between 2 breakpoints (can be use for other than font-size)
  (Font-size must be in px, use em2px() function to convert from em)
  */
  /*
  Fluid value - clamp version (2023)
  @see https://www.smashingmagazine.com/2022/10/fluid-typography-clamp-sass-functions/
   */
  /**
   * Animated placeholder for images or divs (FB like)
   */
  /*** SPECIFIC TO CURRENT PROJECT ***/
}
body.page-template-page-applications #masthead {
  background-color: transparent;
  z-index: 1;
}
body.page-template-page-applications #masthead #site-navigation {
  position: absolute;
  margin-left: clamp(150px, 10.64vw + 45.74px, 250px);
}
body.page-template-page-applications #primary {
  position: relative;
  margin-top: -167px;
  z-index: 0;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications #primary {
    margin-top: -122px;
  }
}
body.page-template-page-applications .header {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  height: 572px;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .header {
    height: 364px;
    margin-bottom: 30px;
  }
}
body.page-template-page-applications .header .page-image-header {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  background-color: black;
}
body.page-template-page-applications .header__content {
  position: absolute;
  bottom: 0;
  margin-bottom: clamp(50px, 0.97vw + 46.36px, 65px);
  margin-inline: clamp(120px, 7.45vw + 47.02px, 190px) clamp(175px, 37.77vw + -195.11px, 530px);
  z-index: 2;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .header__content {
    margin-inline: clamp(20px, 16.53vw + -41.98px, 120px);
  }
}
body.page-template-page-applications .header__content .page-subtitle {
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: clamp(18px, 0.13vw + 17.51px, 20px);
  color: var(--c-main);
  text-transform: uppercase;
  padding-left: 5px;
}
body.page-template-page-applications .header__content h1 {
  margin-bottom: 15px;
  text-transform: uppercase;
  color: #ffffff;
}
body.page-template-page-applications .header__content a:not(.category) {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(11px, 0.13vw + 10.51px, 13px);
  letter-spacing: 2.6px;
  text-decoration: none;
}
body.page-template-page-applications .header__content a:not(.category) .arrow {
  content: url("../../svg/arrow-yellow.svg");
  margin-left: 10px;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
body.page-template-page-applications .header__content a:not(.category):hover, body.page-template-page-applications .header__content a:not(.category):focus {
  color: var(--c-main);
}
body.page-template-page-applications .header__content a:not(.category):hover .arrow, body.page-template-page-applications .header__content a:not(.category):focus .arrow {
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}
body.page-template-page-applications .applications-content {
  margin-block: clamp(30px, 4.21vw + 14.22px, 95px) clamp(30px, 5.5vw + 9.37px, 115px);
}
body.page-template-page-applications .applications-content .container {
  max-width: 1468px;
  padding-inline: 50px;
  margin-inline: auto;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .container {
    padding-inline: clamp(10px, 6.61vw + -14.79px, 50px);
  }
}
body.page-template-page-applications .applications-content .intro {
  padding-inline: clamp(130px, 30.32vw + -167.13px, 415px) 130px;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .intro {
    padding-inline: 0;
  }
}
body.page-template-page-applications .applications-content .applications-list {
  padding-block: clamp(30px, 5.18vw + 10.58px, 110px) clamp(30px, 14.24vw + -23.4px, 250px);
}
body.page-template-page-applications .applications-content .applications-list ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -webkit-column-gap: clamp(15px, 0.13vw + 14.51px, 17px);
     -moz-column-gap: clamp(15px, 0.13vw + 14.51px, 17px);
          column-gap: clamp(15px, 0.13vw + 14.51px, 17px);
  row-gap: clamp(40px, 1.29vw + 35.15px, 60px);
}
@media screen and (max-width: 1200px) {
  body.page-template-page-applications .applications-content .applications-list ul {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .applications-list ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 600px) {
  body.page-template-page-applications .applications-content .applications-list ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
body.page-template-page-applications .applications-content .applications-list ul a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: clamp(265px, 6.34vw + 241.22px, 330px);
  width: 100%;
  background-color: var(--c-secondary);
}
body.page-template-page-applications .applications-content .applications-list ul a .top {
  font-family: "Oswald", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(20px, 0.32vw + 18.79px, 25px);
  color: #ffffff;
  text-transform: uppercase;
  max-width: 205px;
  padding-inline: clamp(15px, 0.65vw + 12.57px, 25px);
  padding-top: clamp(15px, 0.65vw + 12.57px, 25px);
}
body.page-template-page-applications .applications-content .applications-list ul a .bottom {
  margin-top: auto;
  max-height: 120px;
  overflow: hidden;
  line-height: 0;
}
body.page-template-page-applications .applications-content .applications-list ul a .bottom img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
body.page-template-page-applications .applications-content .applications-list ul a .yellow-btn {
  opacity: 1;
  width: 55px;
  height: 55px;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .applications-list ul a .yellow-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
body.page-template-page-applications .applications-content .applications-list ul a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 80%;
  max-width: 0;
  height: 4px;
  background-color: var(--c-main);
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}
body.page-template-page-applications .applications-content .applications-list ul a:hover .bottom img, body.page-template-page-applications .applications-content .applications-list ul a:focus .bottom img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
body.page-template-page-applications .applications-content .applications-list ul a:hover:after, body.page-template-page-applications .applications-content .applications-list ul a:focus:after {
  max-width: 100%;
}
body.page-template-page-applications .applications-content .leader-container {
  max-width: 1468px;
  padding-inline: 50px;
  margin-inline: auto;
  margin-bottom: clamp(30px, 7.44vw + 2.09px, 145px);
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .leader-container {
    padding-inline: 0;
  }
}
body.page-template-page-applications .applications-content .leader-container .leader {
  position: relative;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .leader-container .leader {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
body.page-template-page-applications .applications-content .leader-container .leader img {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: clamp(430px, 25.96vw + 175.62px, 674px);
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .leader-container .leader img {
    position: relative;
    left: unset;
    top: unset;
    width: 85%;
    -webkit-transform: translateY(60px);
            transform: translateY(60px);
  }
}
body.page-template-page-applications .applications-content .leader-container .leader__content {
  background-color: var(--c-main);
  padding-block: clamp(85px, 6.91vw + 17.23px, 150px) clamp(80px, 5.32vw + 27.87px, 130px);
  width: 80%;
  margin-left: auto;
  padding-left: 35%;
  padding-right: 10%;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .leader-container .leader__content {
    width: 100%;
    padding-left: 5%;
    padding-right: 5%;
  }
}
body.page-template-page-applications .applications-content .different-container {
  margin-bottom: clamp(50px, 15.86vw + -9.47px, 295px);
}
body.page-template-page-applications .applications-content .different-container .different {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1430px) {
  body.page-template-page-applications .applications-content .different-container .different {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
body.page-template-page-applications .applications-content .different-container .different h2 {
  position: relative;
  max-width: 220px;
  margin-right: 10px;
  right: clamp(0px, 25.96vw + -363.46px, 135px);
}
body.page-template-page-applications .applications-content .different-container .different ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  max-width: 1088px;
  margin-left: auto;
}
@media screen and (max-width: 1200px) {
  body.page-template-page-applications .applications-content .different-container .different ul {
    max-width: 100%;
  }
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .different-container .different ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 500px) {
  body.page-template-page-applications .applications-content .different-container .different ul {
    grid-template-columns: 1fr;
  }
}
body.page-template-page-applications .applications-content .different-container .different .card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #e7e7e7;
  min-height: clamp(435px, 5.56vw + 368.33px, 475px);
  padding-top: 53px;
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .different-container .different .card {
    min-height: clamp(360px, 12.4vw + 313.51px, 435px);
  }
}
body.page-template-page-applications .applications-content .different-container .different .card__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 100px;
}
body.page-template-page-applications .applications-content .different-container .different .card__body {
  padding-inline: 25px;
}
body.page-template-page-applications .applications-content .different-container .different .card__body .title {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(18px, 0.13vw + 17.51px, 20px);
  color: var(--c-secondary-light);
}
body.page-template-page-applications .applications-content .different-container .different .card__body .text {
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: clamp(12px, 0.13vw + 11.51px, 14px);
}
body.page-template-page-applications .applications-content .different-container .different .card__footer {
  min-height: 60px;
  margin-top: 20px;
}
body.page-template-page-applications .applications-content .different-container .different .card__footer .shape-yellow {
  content: url("../../svg/shape-yellow.svg");
  position: absolute;
  right: 0;
  bottom: 0;
  width: 118px;
  margin-left: auto;
}
body.page-template-page-applications .applications-content .learn-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  padding-right: clamp(0px, 11.7vw + -114.68px, 110px);
}
@media screen and (max-width: 980px) {
  body.page-template-page-applications .applications-content .learn-more {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
body.page-template-page-applications .applications-content .learn-more h2 {
  font-size: clamp(35px, 0.97vw + 31.36px, 50px);
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-bottom: 0;
}
body.page-template-page-applications .applications-content .learn-more .content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 560px;
  margin-left: auto;
}
body.page-template-page-applications .applications-content .learn-more .content .text-barlow-regular {
  font-size: clamp(25px, 0.65vw + 22.57px, 35px);
}
body.page-template-page-applications .applications-content .learn-more .content .btn {
  margin-top: clamp(30px, 1.29vw + 25.15px, 50px);
}
/*# sourceMappingURL=page-applications.css.map */
