/* Variables
---------------------------------------- */
:root {
  --primary: #800000;
  --secondary: #d2efeb;
  --dark: #212736;
  --light: #FBF1E2;
  --border: #DABF98;
  --bold-color: #212736;
  --text-color: #383549;
  --body-font: 'Noto Sans', sans-serif;
  --heading-font: 'Josefin Sans', sans-serif;
  --shadow: -10px 10px 16px rgba(0, 0, 0, 0.1);
  --shadow-hover: 0 0 4px 1px rgba(0, 0, 0, 0.1);
}

/* HTML and Body
---------------------------------------- */
body {
  font-family: var(--body-font);
  background-color: #ecf8f7;
  color: var(--text-color);
}

/* Typography
---------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--heading-font);
  color: var(--bold-color);
  font-weight: 600;
}

strong {
  color: var(--bold-color);
}

em {
  color: var(--primary);
}

a {
  -webkit-transition: color 0.4s ease;
  transition: color 0.4s ease;
}

a,
a:active,
li a.active {
  color: var(--primary);
}

a:hover {
  color: var(--secondary);
}

/* Typography-> code tags */
code,
kbd,
pre,
samp {
  background-color: var(--border);
  color: var(--dark);
}

mark {
  background-color: var(--primary);
  color: #ffffff;
  padding: 0 6px;
}

figcaption {
  background-color: var(--border);
  color: var(--text-color);
}

/* Form
---------------------------------------- */
/* Form -> Button */
a.button,
.button,
button,
[type="button"],
[type="reset"],
[type="submit"] {
  background-color: var(--primary);
  color: #ffffff;
  border-radius: 4px;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}

a.button:hover,
.button:hover,
button:hover,
[type="button"]:hover,
[type="reset"]:hover,
[type="submit"]:hover {
  background-color: var(--secondary);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
  color: var(--text-color);
  background-color: var(--light);
  border: 1px solid var(--border);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
  background-color: transparent;
  border: 1px solid var(--border);
}

fieldset {
  border: 1px solid var(--border);
}

/* Form -> Label */
.form-item label,
form label,
summary {
  font-weight: bold;
  color: var(--bold-color);
}

/* Form -> Radio buttons */
input[type="checkbox"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 3px solid var(--primary);
}

input[type="radio"] {
  background-color: var(--border);
  border: 3px solid var(--border);
}

input[type="radio"]:hover,
input[type="checkbox"]:hover {
  border: 3px solid var(--secondary);
}

input[type="checkbox"]:checked {
  background-color: var(--primary);
  color: #000000;
}

input[type="radio"]:checked {
  background-color: var(--primary);
}

input[type="checkbox"]::after {
  content: '\2714';
  text-align: center;
  display: none;
}

input[type="checkbox"]:checked::after {
  display: block;
}

select {
  color: var(--text-color);
  background-color: var(--light);
  border: 1px solid var(--border);
}

::-webkit-input-placeholder {
  color: var(--border);
}

:-ms-input-placeholder {
  color: var(--border);
  opacity: 1;
}

::-ms-input-placeholder {
  color: var(--border);
  opacity: 1;
}

::placeholder {
  color: var(--border);
  opacity: 1;
}

:-ms-input-placeholder {
  color: var(--border);
}

::-ms-input-placeholder {
  color: #969696;
}

:-moz-placeholder {
  color: var(--border);
}

::-moz-placeholder {
  color: var(--border);
}

/* Table
---------------------------------------- */
th {
  background-color: var(--border);
  color: var(--bold-color);
  border: 1px solid var(--border);
}

th a {
  color: var(--bold-color);
}

td {
  border: 1px solid var(--border);
}

/* Common HTML Elements
---------------------------------------- */
hr {
  background: var(--border);
}

dt {
  color: var(--bold-color);
}

blockquote {
  background-color: var(--light);
  -webkit-box-shadow: 0 0 6px 2px var(--border);
          box-shadow: 0 0 6px 2px var(--border);
  border-left: 8px solid var(--primary);
}

/* Selection
---------------------------------------- */
::-moz-selection {
  background: var(--dark);
  color: #ffffff;
  text-shadow: none;
}

::selection {
  background: var(--dark);
  color: #ffffff;
  text-shadow: none;
}

@font-face {
  font-family: 'ruhi';
  src: url("../fonts/ruhi.eot?rxiuz3");
  src: url("../fonts/ruhi.eot?rxiuz3#iefix") format("embedded-opentype"), url("../fonts/ruhi.ttf?rxiuz3") format("truetype"), url("../fonts/ruhi.woff?rxiuz3") format("woff"), url("../fonts/ruhi.svg?rxiuz3#ruhi") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="ficon-"], [class*=" ficon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'ruhi' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ficon-add_comment:before {
  content: "\e900";
}

.ficon-search:before {
  content: "\e901";
}

.ficon-user:before {
  content: "\e902";
}

.ficon-calendar:before {
  content: "\f073";
}

.ficon-twitter:before {
  content: "\f099";
}

.ficon-facebook:before {
  content: "\f09a";
}

.ficon-github:before {
  content: "\f09b";
}

.ficon-linkedin:before {
  content: "\f0e1";
}

.ficon-comments:before {
  content: "\f0e6";
}

.ficon-file:before {
  content: "\f0f6";
}

.ficon-youtube:before {
  content: "\f16a";
}

.ficon-instagram:before {
  content: "\f16d";
}

.ficon-vk:before {
  content: "\f189";
}

.ficon-whatsapp:before {
  content: "\f232";
}

.ficon-vimeo:before {
  content: "\f27d";
}

.ficon-hashtag:before {
  content: "\f292";
}

.ficon-telegram:before {
  content: "\f2c6";
}

.ficon-share:before {
  content: "\e906";
}

.ficon-mail:before {
  content: "\e903";
}

.ficon-map:before {
  content: "\e904";
}

.ficon-phone:before {
  content: "\e905";
}

.slider-page .main-wrapper {
  padding: 0 0 2rem 0;
}

/* Header
------------------------------- */
.homepage .header {
  background: var(--light);
}

.homepage.slider-page .header {
  background: url(../images/slider.svg) center top no-repeat;
  background-size: cover;
/*  min-height: 100vh;  */  /* FPAP */
}

.inner-page .header {
  background: url(../images/header-inner.svg) center top no-repeat;
  background-size: cover;
}

/* Header -> Header Top */
.header-top a {
  color: var(--dark);
}

.header-top a:hover,
.header-top i {
  color: var(--primary);
}

/* Header -> Header main */
.header-container {
  padding: 1rem 0;
}

.site-brand img {
  max-height: 50px;
  display: block;
}

.site-name {
  color: var(--dark);
  font-family: var(--heading-font);
  font-weight: 500;
}

.site-name a {
  color: var(--dark);
}

.site-name a:hover {
  color: var(--primary);
}

/* Header -> Main menu */
.mobile-menu {
  border-top: 2px solid var(--dark);
  border-bottom: 2px solid var(--dark);
}

.mobile-menu span {
  background-color: var(--primary);
}

.menu-wrap {
  font-family: var(--heading-font);
  font-weight: 600;
}

.menu-wrap ul.menu > li {
  margin-left: 6px;
}

.menu-wrap ul.menu li > a {
  padding: 10px;
}

/* Header -> search block region */
.search-icon {
  width: 36px;
  height: 36px;
}

.search-icon img {
  max-height: 30px;
}

.search-box {
  background-color: var(--light);
}

.search-box-content input[type="search"] {
  background: url(../images/icons/search-icon.svg) top right no-repeat;
  color: var(--text-color);
  -webkit-text-fill-color: var(--text-color);
  border-bottom: 2px solid var(--border);
}

.search-box-content input[type="search"]:focus {
  background: url(../images/icons/search-icon.svg) top right no-repeat;
  border: 0;
  border-bottom: 2px solid var(--border);
}

.search-box-content input[type="search"]:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px var(--light) inset;
  background-color: transparent;
}

/* Header -> Sliding sidebar */
.sliding-sidebar-icon {
  margin-left: 20px;
  border-top: 2px solid var(--dark);
  border-bottom: 2px solid var(--dark);
}

.sliding-sidebar-icon span {
  height: 2px;
  width: 70%;
  background-color: var(--primary);
  -webkit-transition: width 0.3s ease;
  transition: width 0.3s ease;
}

.sliding-sidebar-icon:hover span {
  width: 100%;
}

.sliding-sidebar-container {
  background: var(--light);
  color: var(--text-color);
  -webkit-box-shadow: -2px 0 14px var(--dark);
          box-shadow: -2px 0 14px var(--dark);
}

.sliding-sidebar-container .block-title {
  text-align: center;
}

.sliding-sidebar-container .block-title::before,
.sliding-sidebar-container .block-title::after {
  position: absolute;
  content: '';
  top: 50%;
  width: 24px;
  height: 2px;
  background-color: var(--primary);
}

.sliding-sidebar-container .block-title::before {
  -webkit-transform: translateX(-34px);
          transform: translateX(-34px);
}

.sliding-sidebar-container .block-title::after {
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}

/* Header -> Page header */
.page-header {
  color: var(--text-color);
}

.page-header a:hover {
  color: var(--dark);
}

.region-page-header {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/* Sticky Header */
.header-main.sticky-header {
  z-index: 110;
  -webkit-animation-name: sticky-header-animate;
  animation-name: sticky-header-animate;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.sticky-header .site-logo img {
  max-height: 30px;
}

@-webkit-keyframes sticky-header-animate {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes sticky-header-animate {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@media (max-width: 767px) {
  .menu-wrap {
    height: 100vh;
  }
}

.sticky-header-height {
  position: relative;
  display: block;
  width: 100%;
  height: 0px;
}

/* Homepage -> Slider */
.slider {
  position: relative;
/*  height: 100vh;*/ /* FPAP commenté */
  width: 100%;
  z-index: 20;
  overflow: hidden;
}

.slider-content h1,
.slider-content h2,
.slider-content h3,
.slider-content h4,
.slider-content h5,
.slider-content h6 {
  line-height: 1.2;
}

.slider-content h1 {
  font-size: 1.6rem;  /*1.8*/
}

.slider-content h2 {
  font-size: 1.4rem;  /*1.6*/
}

.slider-content h3 {
  font-size: 1.6rem;  /*1.4*/
}

.slider-content h4 {
  font-size: 1.1rem;  /*1.2*/
}

.slider-content em {
  color: var(--primary);
  opacity:70%;	     /* ajout FPAP*/
}

.slider-content p {
  font-size: 1rem;
}

/* Slider -> Single slide */
.single-slide-text {
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  width: 100%;
  height: 100vh;
}

/* Slider Animations */
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.layer1,
.layer2,
.layer3,
.layer4,
.layer5,
.layer6 {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all ease 1s;
  transition: all ease 1s;
  margin-bottom: 12px;
}

.tns-slide-active .layer1,
.tns-slide-active .layer2,
.tns-slide-active .layer3,
.tns-slide-active .layer4,
.tns-slide-active .layer5,
.tns-slide-active .layer6 {
  visibility: visible;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.layer1,
.layer4 {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.layer2,
.layer5 {
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
}

.layer3,
.layer6 {
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
}

.tns-slide-active .layer1 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}

.tns-slide-active .layer2 {
  -webkit-transition-delay: 3s;
  transition-delay: 3s;
}

.tns-slide-active .layer3 {
  -webkit-transition-delay: 4s;
  transition-delay: 4s;
}

.tns-slide-active .layer4 {
  -webkit-transition-delay: 5s;
  transition-delay: 5s;
}

.tns-slide-active .layer5 {
  -webkit-transition-delay: 6s;
  transition-delay: 6s;
}

.tns-slide-active .layer6 {
  -webkit-transition-delay: 7s;
  transition-delay: 7s;
}

/* Responsive */
@media (min-width: 992px) {
  .slider-content h1 {
    font-size: 2rem; /*2.4*/
  }
  .slider-content h2 {
    font-size: 1.8rem;    /*2*/
  }
  .slider-content h3 {
    font-size: 1.4rem;  /*1.6*/
  }
  .slider-content h4 {
    font-size: 1.1rem; /*1.2*/
  }
  .slider-content em {
    color: var(--primary);
  }
  .slider-content p {
    font-size: 1.1rem; /*1.2*/
  }
}

/* Main
---------------------------------------- */
/* Main -> Admin tabs */
ul.page-tabs {
  border-bottom: 2px solid var(--border);
}

.page-tabs li a {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.page-tabs li a {
  background: var(--light);
  color: var(--primary);
  border-right: 2px solid var(--border);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.page-tabs li.active-page-tab a,
.page-tabs li a:hover {
  background: var(--primary);
  color: #ffffff;
}

/* Main -> Entity reference */
.taxonomy-term a {
  background-color: var(--light);
  padding: 6px 14px;
  border: 0;
  border-radius: 40px;
  -webkit-box-shadow: 0 0 4px 1px var(--primary);
          box-shadow: 0 0 4px 1px var(--primary);
}

.taxonomy-term a:hover {
  background-color: var(--primary);
  color: #ffffff;
}

/* Main -> Filter Module */
.filter-wrapper {
  border: 1px solid var(--border);
}

/* Main -> node -> Title */
.node-title a {
  position: relative;
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
}

.node-readmore,
.node-links-container .comment-forbidden,
.node-links-container .comment-add {
  position: relative;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.node-readmore::after {
  content: '\2192';
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  padding-left: 2px;
}

.node-readmore:hover::after {
  padding-left: 12px;
}

.node-links-container .comment-forbidden::before,
.node-links-container .comment-add::before {
  content: "+";
  padding-right: 6px;
}

.node-title a:hover,
.node-links-container .node-readmore a:hover,
.comment-forbidden a:hover,
.node-links-container .comment-add a:hover,
.node-links-container .comment-comments a:hover {
  color: var(--dark);
}

.node-links-container .node-readmore a,
.node-links-container .comment-forbidden a,
.node-links-container .comment-add a,
.node-links-container .comment-comments a {
  position: relative;
}

.node-title a::after,
.node-links-container .node-readmore a::before,
.node-links-container .comment-forbidden a::before,
.node-links-container .comment-add a::before,
.node-links-container .comment-comments a::before {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--theme-color);
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}

.node-title a:hover::after,
.node-links-container .node-readmore a:hover::before,
.comment-forbidden a:hover::before,
.node-links-container .comment-add a:hover::before,
.node-links-container .comment-comments a:hover::before {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}

/* Node Content */
.node-content input[type="text"]:focus,
.node-content input[type="email"]:focus,
.node-content input[type="url"]:focus,
.node-content input[type="password"]:focus,
.node-content input[type="search"]:focus,
.node-content textarea:focus {
  -webkit-box-shadow: 0 0 3px var(--secondary);
          box-shadow: 0 0 3px var(--secondary);
}

/* Sidebar
---------------------------------------- */
.sidebar .block {
  background-color: var(--light);
  padding: 20px;
  border-radius: 6px;
  margin-bottom: 2rem;
}

.sidebar .block-title {
  font-size: 2.2rem;
  text-transform: none;
  text-align: center;
}

.sidebar .block-title::before {
  position: absolute;
  content: '';
  top: 50%;
  width: 24px;
  height: 2px;
  background-color: var(--primary);
  -webkit-transform: translateX(-34px);
          transform: translateX(-34px);
}

.sidebar .block-title::after {
  position: absolute;
  content: '';
  top: 50%;
  width: 24px;
  height: 2px;
  background-color: var(--primary);
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}

/* Comments
--------------------------------------*/
#comments {
  border-top: 1px solid var(--border);
}

#comments i {
  color: var(--primary);
}

.comments-title::before,
.comment-form-wrap .add-comment-title::before {
  font-family: 'ruhi';
  color: var(--primary);
  padding-right: 6px;
}

.comments-title::before {
  content: "\f0e6";
}

.comment-form-wrap .add-comment-title::before {
  content: "\e900";
}

/* Comments -> single comment */
.comment {
  background-color: var(--light);
  -webkit-box-shadow: 0 0 6px 1px var(--border);
          box-shadow: 0 0 6px 1px var(--border);
}

.comment-header {
  background-color: #F9F5F0;
  border: 0;
  -webkit-box-shadow: 0 0 4px var(--border);
          box-shadow: 0 0 4px var(--border);
}

.comment-user-picture {
  -ms-flex: 0 0 100px;
  -webkit-box-flex: 0;
          flex: 0 0 100px;
}

.comment-title,
.comment-title a {
  color: var(--dark);
}

.comment-reply a,
.comment-delete a,
.comment-edit a {
  padding: 4px 12px;
  background: #ffffff;
  border-radius: 4px;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.comment-reply a:hover,
.comment-delete a:hover,
.comment-edit a:hover {
  background: var(--primary);
  color: #ffffff;
}

/*
 * Footer
 */
.footer .block-title {
  position: relative;
  font-size: 1.6rem;
  color: #ffffff;
  padding-bottom: 12px;
  margin-bottom: 12px;
}

.footer .block-title::before,
.footer .block-title::after {
  content: '';
  position: absolute;
  left: 0;
  height: 2px;
  background: var(--primary);
}

.footer .block-title::before {
  width: 30px;
  bottom: 6px;
}

.footer .block-title::after {
  width: 60px;
  bottom: 0;
}

.footer a:hover {
  color: #ffffff;
}

.footer-top {
  background-color: var(--light);
  color: var(--text-color);
}

.footer-top .block-title {
  color: var(--bold-color);
}

.footer-blocks,
.footer-bottom-blocks,
.footer-bottom,
.footer-social {
  background-color: var(--dark);
  color: #ffffff;
}

.footer-block ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-block li {
  padding: 10px 0;
  border-bottom: 1px solid #000000;
}

.footer-bottom-container {
  border-top: 2px solid #000000;
}

/* Footer -> customization */
.footer-logo {
  max-height: 100px;
  width: auto;
}

.homepage-content .block-title {
  text-align: center;
  margin-bottom: 1rem;
}

.region-content-home-top .block {
  position: relative;
  padding: 4rem 0;
}

.region-content-home-top .block:nth-child(odd) {
  background: var(--light);
}

/*.circle-lines {
  position: absolute;
  left: 5%;
  bottom: 30%;
  background: url("../images/shapes/circle-lines.svg") no-repeat;
  background-size: cover;
  height: 5rem;
  width: 5rem;
}

.circle-lines-right {
  position: absolute;
  right: 5%;
  bottom: 20%;
  background: url("../images/shapes/circle-lines.svg") no-repeat;
  background-size: cover;
  height: 5rem;
  width: 5rem;
}

.circle-double {
  position: absolute;
  right: 3%;
  top: 40%;
  background: url("../images/shapes/circle-double.svg") no-repeat;
  background-size: cover;
  height: 66px;
  width: 66px;
}

.triangle-left {
  position: absolute;
  left: 10%;
  bottom: 30%;
  background: url("../images/shapes/triangle.svg") no-repeat;
  background-size: contain;
  height: 3rem;
  width: 3rem;
}

.triangle-right {
  position: absolute;
  right: 8%;
  bottom: 8%;
  background: url("../images/shapes/triangle.svg") no-repeat;
  background-size: contain;
  height: 3rem;
  width: 3rem;
}

.square {
  position: absolute;
  left: 6%;
  top: 8%;
  height: 2rem;
  width: 2rem;
  border: 2px solid var(--primary);
  -webkit-transform: rotateZ(45deg);
          transform: rotateZ(45deg);
}

.square-dot {
  position: absolute;
  left: 6%;
  top: 8%;
  background: url("../images/shapes/square-dots.svg") no-repeat;
  background-size: contain;
  height: 3rem;
  width: 3rem;
}*/

/* Feed text */
.feed-icon {
  display: block;
  font-size: 0;
  width: 32px;
  height: 32px;
  background: url(../images/icons/rss.svg) no-repeat;
}

/* Components -> Social icons */
.social-icons {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.social-icons li {
  display: inline-block;
  margin: 6px 0;
  padding: 0;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.social-icons li a {
  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;
  width: 40px;
  height: 40px;
  border: 2px solid var(--primary);
  border-radius: 6px;
}

.social-icons li a:hover {
  background-color: var(--primary);
}

/* Page Loader
-------------------------------------------- */
.loader {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background: #ffffff;
  z-index: 9999;
  overflow: hidden;
}

.loader-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.loader-icon {
  position: relative;
  width: 100px;
  height: 100px;
  display: block;
  border-radius: 50%;
  overflow: hidden;
  border: 4px solid #000;
}

.loader-icon span {
  position: absolute;
  background-color: #FFD200;
  border-radius: 50%;
  -webkit-animation: preloader 1.6s linear infinite alternate;
  animation: preloader 1.6s linear infinite alternate;
}

@keyframes preloader {
  0% {
    top: 50%;
    left: -50%;
    width: 100px;
    height: 100px;
  }
  100% {
    top: 30%;
    width: 150px;
    height: 150px;
    left: 10%;
  }
}

@-webkit-keyframes preloader {
  0% {
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
    opacity: 0.5;
  }
  100% {
    border-radius: 67% 33% 42% 58% / 52% 64% 36% 48%;
    opacity: 0;
  }
}

/* Components -> Share node
-------------------------------------------- */
.share-node {
  position: relative;
  padding: 1rem 0;
}

ul.share-icons {
  margin: 0;
  padding: 0;
  list-style: none;
}

.share-icons li {
  display: inline-block;
  margin-right: 10px;
}

.share-icons li:last-child {
  margin-right: 0;
}

.share-icons li a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--light);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 3px 2px var(--border);
          box-shadow: 0 0 3px 2px var(--border);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.share-icons li a:hover {
  background-color: var(--primary);
  color: #ffffff;
}

/* Cookies Popup message
-------------------------------------------- */
.cookiealert {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 150;
  background: var(--dark);
  color: #ffffff;
  padding: 10px 0;
  margin: 0 !important;
  text-align: center;
  opacity: 0;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: all 500ms ease-out;
  transition: all 500ms ease-out;
}

.cookiealert p {
  margin: 0;
}

.cookiealert.show {
  opacity: 1;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
  -webkit-transition-delay: 1000ms;
          transition-delay: 1000ms;
}

/*
 * Custom Shortcodes
 */
/* Shortcodes -> Buttons */
.link-button,
.button-link {
  display: inline-block;
  border-radius: 6px;
  padding: 0.8rem 1rem;
}

.link-button,
.button-link {
  color: #ffffff;
  background-color: var(--secondary);
  border: 4px solid var(--primary);
}

.link-button:hover,
.button-link:hover {
  color: var(--primary);
  background-color: var(--dark);
  border: 4px solid var(--primary);
}

.button-dark,
a.button-dark {
  background-color: var(--dark);
  color: #ffffff;
}

.button-outline,
a.button-outline,
button.button-outline {
  background-color: transparent;
  color: var(--primary);
  border: 2px solid var(--dark);
  -webkit-box-shadow: 4px 4px 6px #bbbbbb;
          box-shadow: 4px 4px 6px #bbbbbb;
}

.button-outline:hover,
a.button-outline:hover,
button.button-outline:hover {
  background-color: var(--dark);
  color: #ffffff;
}

.button-round,
a.button-round,
button.button-round {
  border-radius: 60px;
  padding: 8px 1em;
}

/* Elements -> Box, Card */
.box,
.card {
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 8px 1px var(--border);
  box-shadow: 0 0 8px 1px var(--border);
}

.box-primary,
.box-secondary {
  color: var(--dark);
}

.box-primary h1, .box-primary h2, .box-primary h3, .box-primary h4, .box-primary h5, .box-primary h6,
.box-secondary h1, .box-secondary h2, .box-secondary h3, .box-secondary h4, .box-secondary h5, .box-secondary h6 {
  color: #ffffff;
}

.box-dark h1, .box-dark h2, .box-dark h3, .box-dark h4, .box-dark h5, .box-dark h6,
.box-dark strong {
  color: var(--light);
}

.box-title {
  margin-bottom: 10px;
}

/* Icon Box */
.icon-box {
  font-family: var(--body-font);
  line-height: 1.7;
  background-color: var(--light);
  -webkit-box-shadow: 0 3px 6px var(--border);
          box-shadow: 0 3px 6px var(--border);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.icon-box-icon {
  padding-right: 1rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.icon-box-text {
  font-family: var(--body-font);
  line-height: 1.7;
}

/* 
 * Features and Services
 */
.features,
.services {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (minmax(265px, 1fr))[auto-fit];
      grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
  grid-gap: 1rem;
  gap: 1rem;
}

.features:not(:last-child),
.services:not(:last-child) {
  margin-bottom: 1rem;
}

.feature,
.service {
  position: relative;
  background-color: #ffffff;
  padding: 1rem;
  -webkit-box-shadow: -10px 10px 16px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: -10px 10px 16px rgba(0, 0, 0, 0.1);
  box-shadow: -10px 10px 16px rgba(0, 0, 0, 0.1);
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.feature {
  text-align: center;
}

.service {
  -webkit-transform: skew(0);
          transform: skew(0);
}

.feature:hover,
.service:hover {
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}

.feature:hover {
  -webkit-transform: translateY(-4px);
  transform: translateY(-4px);
}

.service:hover {
  -webkit-transform: skew(0);
          transform: skew(0);
}

.feature-icon,
.service-icon {
  position: relative;
  margin-bottom: 1rem;
}

.feature-icon img,
.service-icon img {
  max-height: 4rem;
}

.feature-icon {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.feature:hover .feature-icon {
  margin-top: -10px;
  margin-bottom: 26px;
}

.feature .link-button {
  display: inline-block;
}

.service img {
  max-height: 3rem;
  margin: 1rem 0 0 1rem;
}

.service-icon {
  position: relative;
  margin-bottom: 1rem;
}

.service-icon::before {
  position: absolute;
  content: '';
  width: 4rem;
  height: 4rem;
  background-color: var(--light);
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
  z-index: -1;
}

/* 
 * Tab, Toggle, Accordion
 */
.tab-nav a {
  color: var(--dark);
}

.active-tab a {
  color: #ffffff;
  background-color: var(--primary);
  border-bottom-color: var(--primary);
}

.tab-nav a:hover {
  color: #ffffff;
  background-color: var(--dark);
  border-bottom-color: var(--dark);
}

.accordion-title,
.toggle-title {
  background-color: var(--light);
  border-radius: 5px;
}

.accordion-title::after,
.toggle-title::after {
  color: var(--dark);
}

.active-accordion,
.active-toggle {
  background-color: var(--primary);
  color: #ffffff;
}

.active-accordion::after,
.active-toggle::after {
  color: #ffffff;
}

/*
 * Pricing Table
 */
.pricing {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.plan {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 300px;
          flex: 1 0 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #ffffff;
  padding: 1rem;
  -webkit-box-shadow: -10px 10px 16px rgba(0, 0, 0, 0.1);
          box-shadow: -10px 10px 16px rgba(0, 0, 0, 0.1);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.plan:hover {
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}

.plan-name {
  font-family: var(--heading-font);
  color: var(--primary);
  text-align: center;
  font-weight: 700;
  font-size: 2rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.plan:hover .plan-name {
  color: var(--dark);
}

.plan-price {
  text-align: center;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.plan:hover .plan-price {
  color: var(--primary);
}

.plan-details {
  list-style: none;
  margin: 0;
  padding: 0;
}

.plan-details li {
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
}

.plan-details li:last-child {
  border-bottom: none;
}

.plan-button {
  margin: 2rem auto 1rem auto;
}

/*
 * Testimonials
 */
.testimonial {
  margin-bottom: 1rem;
  padding: 1rem;
}

.testimonial-content {
  background-color: #ffffff;
  padding: 1rem;
  -webkit-box-shadow: -8px 8px 12px rgba(0, 0, 0, 0.1);
          box-shadow: -8px 8px 12px rgba(0, 0, 0, 0.1);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.testimonial-content:hover {
  -webkit-box-shadow: var(--shadow-hover);
          box-shadow: var(--shadow-hover);
}

/*
 * Title styles
 */
.text-underline,
.text-underline-secondary {
  position: relative;
}

.text-underline::before,
.text-underline-secondary::before {
  position: absolute;
  content: '';
  height: 0.2em;
  width: 100%;
  bottom: 0.2em;
  opacity: 0.4;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}

.text-underline::before {
  background-color: var(--primary);
}

.text-underline-secondary::before {
  background-color: var(--secondary);
}

.text-underline:hover::before,
.text-underline-secondary:hover::before {
  height: 1em;
}

.text-underline-wavy {
  -webkit-text-decoration: underline var(--primary) wavy;
          text-decoration: underline var(--primary) wavy;
  text-underline-position: under;
}

/* Title styles -> Stroke */
.text-stroke {
  color: transparent;
  -webkit-text-stroke: 2px;
  -webkit-text-stroke-color: var(--dark);
}

.text-stroke-black {
  color: transparent;
  -webkit-text-stroke: 2px;
  -webkit-text-stroke-color: #000000;
}

.text-stroke-white {
  color: transparent;
  -webkit-text-stroke: 2px;
  -webkit-text-stroke-color: #ffffff;
}

/*
 * Highlighted Text Box
 */
.highlight-box {
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--light);
  padding: 8rem 2rem;
  -webkit-box-shadow: var(--shadow);
          box-shadow: var(--shadow);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.highlight-box:hover {
  -webkit-box-shadow: var(--shadow-hover);
          box-shadow: var(--shadow-hover);
}

/*
 * Masked Image
 */
.image-masked,
.image-masked-animated {
  display: block;
  border-radius: 28% 72% 71% 29% / 52% 45% 55% 48%;
  overflow: hidden;
}

.image-masked-animated {
  -webkit-animation: image-masked-shape 5s linear infinite;
          animation: image-masked-shape 5s linear infinite;
}

@-webkit-keyframes image-masked-shape {
  0%, 100% {
    border-radius: 28% 72% 71% 29% / 52% 45% 55% 48%;
  }
  50% {
    border-radius: 64% 36% 56% 44% / 60% 69% 31% 40%;
  }
}

@keyframes image-masked-shape {
  0%, 100% {
    border-radius: 28% 72% 71% 29% / 52% 45% 55% 48%;
  }
  50% {
    border-radius: 64% 36% 56% 44% / 60% 69% 31% 40%;
  }
}

/* 
 * Call to Action
 */
.call-to-action {
  -webkit-box-shadow: 0 0 16px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 16px rgba(0, 0, 0, 0.2);
}

/*
* Projects
*/
.projects {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.project {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 310px;
          flex: 1 0 310px;
  overflow: hidden;
}

.project-image {
  -webkit-transition: 0.5s linear;
  transition: 0.5s linear;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.project-image .image-field {
  margin: 0;
}

.project:hover .project-image {
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}

.project-title {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  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;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}

.project-title a {
  color: #ffffff;
}

.project:hover .project-title {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}

.projects .more-link {
  -webkit-box-flex: 100%;
      -ms-flex: 100%;
          flex: 100%;
  text-align: center;
}

.projects .more-link a {
  background-color: var(--primary);
  color: #ffffff;
  padding: 8px 16px;
  border-radius: 30px;
}

/*
 * Dark, Primary, Secondary versions of elements
 */
.primary-version {
  background-color: var(--primary);
  color: #ffffff;
}

.primary-version h1,
.primary-version h2,
.primary-version h3,
.primary-version h4,
.primary-version h5,
.primary-version h6,
.primary-version strong {
  color: var(--light);
}

.primary-version .button,
.primary-version a.button {
  background-color: var(--dark);
  color: #ffffff;
}

.secondary-version {
  background-color: var(--secondary);
  color: #ffffff;
}

.secondary-version h1,
.secondary-version h2,
.secondary-version h3,
.secondary-version h4,
.secondary-version h5,
.secondary-version h6,
.secondary-version strong {
  color: var(--light);
}

.secondary-version .button,
.secondary-version a.button {
  background-color: var(--dark);
  color: #ffffff;
}

.dark-version {
  background-color: var(--dark);
  color: #ffffff;
}

.dark-version h1,
.dark-version h2,
.dark-version h3,
.dark-version h4,
.dark-version h5,
.dark-version h6,
.dark-version strong {
  color: var(--light);
}

.light-version {
  background-color: var(--light);
}

.white-version {
  background-color: #ffffff;
}

@media (min-width: 768px) {
  /* Header */
  .site-brand img {
    max-height: 60px;
  }
  /* Header -> Page Header */
  .page-header {
    padding: 5rem 0 5rem 0;
  }
  .feature {
    padding: 2rem;
  }
  /* Homepage Slider */
  .slider {
/*    height: calc(100vh + 8rem);  */
    margin-bottom: -1px;    /* FPAP ajout  */
    padding-bottom: 2rem; /* pareil */
  }
/*  .slider::after {    /* Toute cette séquence commentée */
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    height: 10rem;
    width: 100%;
    background-color: var(--light);
    -webkit-clip-path: polygon(0 0, 100% 90%, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 90%, 100% 100%, 0 100%);   */  
  }
  /* Homepage */
  .homepage-content .block-title::before {
    position: absolute;
    content: '';
    width: 40px;
    height: 2px;
    background: var(--primary);
    top: 50%;
    -webkit-transform: translateX(-50px);
    transform: translateX(-50px);
  }
  .homepage-content .block-title::after {
    position: absolute;
    content: '';
    width: 40px;
    height: 2px;
    background: var(--primary);
    top: 50%;
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
}

@media (min-width: 992px) {
  /* Header */
  .site-brand img {
    max-height: 80px;
  }
  /* Header -> Main menu */
  .menu-wrap .menu a {
    color: var(--dark);
  }
  .menu-wrap .menu-item:hover a {
    color: #ffffff;
  }
  .menu-wrap ul.menu li {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, var(--dark)));
    background: linear-gradient(to bottom, transparent 50%, var(--dark) 50%);
    background-size: 100% 200%;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
  }
  .menu-wrap ul.menu li:hover {
    background-position: 0 -100%;
  }
  .menu-wrap ul.menu > li a:hover {
    color: #ffffff;
  }
  .menu-wrap ul.menu ul.submenu {
    top: 35px;
    background-color: var(--dark);
  }
  .menu-wrap ul.menu ul.submenu li {
    border-bottom: 1px solid var(--primary);
  }
  .menu-wrap ul.menu ul.submenu li a {
    color: #ffffff;
  }
  .menu-wrap ul.menu ul.submenu li a:hover {
    color: var(--primary);
  }
  /* Shortcodes */
  .service {
    -webkit-transform: skew(4deg, 0deg);
            transform: skew(4deg, 0deg);
  }
}

@media (min-width: 1170px) {
  /* Header */
  .site-brand img {
    max-height: 90px;
  }
}
/*# sourceMappingURL=style.css.map */