/* -------- TEXT COLORS ------- */
/* -------- ALERT COLORS ------- */
/* -------- BACKGROUND COLORS ------- */
.success-gradient {
  background: #d4e9d5;
  background: linear-gradient(90deg, #d4e9d5 0%, #eefbf1 100%);
}
.dflex {
  display: flex;
  flex-wrap: wrap;
}
.full-center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.delete-overlay {
  background-color: rgba(180, 60, 60, 0.74);
}
.delete-overlay i {
  color: #fff;
  font-size: 3rem;
}
/* ------------------- PRODUITS ADMIN ---------------- */
/* --------------------------------------------------- */
.mixin-categorie {
  margin-right: 2.2rem;
  color: #255c99;
  font-weight: bold;
  font-size: 1.4rem;
  width: 15%;
  display: block;
}
.mixin-titre {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1ch;
  margin-right: 2rem;
  width: 50%;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.mixin-prix {
  display: block;
  font-size: 2.2rem;
  width: 20%;
}
.carousel {
  position: relative;
  display: flex;
  justify-content: center;
  overflow: hidden;
}
.carousel .control {
  display: none;
}
.carousel .slide {
  opacity: 0;
  height: 20rem;
}
.carousel .slide.active {
  opacity: 1;
}
.carousel .slide .slide-content {
  position: absolute;
  z-index: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: transform 1s ease-in-out;
  padding: 0 15rem;
}
.carousel .slide.current .slide-content {
  z-index: 1;
  transform: translate(0);
}
.carousel .slide.next .slide-content {
  transform: translate(100%);
}
.carousel .slide.previous .slide-content {
  transform: translate(-100%);
}
@media screen and (max-width: 1200px) {
  #main-carousel .slide h3 {
    font-size: 5rem !important;
  }
}
@media screen and (max-width: 950px) {
  #main-carousel {
    padding: 4rem 0 !important;
  }
  #main-carousel .slide h3 {
    font-size: 4rem !important;
  }
  #main-carousel .slide .slide-content {
    padding: 0 5rem;
  }
  #carousel-content {
    height: 35rem !important;
  }
}
@media screen and (max-width: 550px) {
  #main-carousel {
    padding: 4rem 0 !important;
    height: 30rem !important;
  }
  #main-carousel .slide {
    padding: 0.5rem !important;
  }
  #main-carousel .slide h3 {
    font-size: 3rem !important;
  }
  #main-carousel .slide .slide-content {
    padding: 0 1rem;
  }
  #carousel-content {
    height: 28rem !important;
  }
  .carousel {
    height: 28rem !important;
  }
  .carousel .slide .slide-content {
    height: 28rem !important;
  }
}
/* ---------------- INDICATION UX ---------------- */
/* ----------------------------------------------- */
#home {
  height: 110vh;
  background: url('../../images/index/plante-soleil-vert-noir.jpg') no-repeat center center;
  background-size: cover;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #fff;
}
#home h1 {
  font-size: 15rem;
  margin-bottom: 10rem;
  text-align: center;
  display: block;
  width: 100%;
}
#home h2 {
  text-align: center;
  width: 100%;
  margin-bottom: 4rem;
}
#home h2 span {
  display: block;
  text-transform: uppercase;
  font-size: 3rem;
  margin-bottom: 1rem;
}
#home span {
  display: block;
}
#home .btns {
  justify-content: center;
}
#home .btns .btn {
  background: transparent;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 1.8rem 12rem;
  width: 50%;
  color: #0b222a;
  font-weight: 700;
  text-align: center;
}
#home .btns .btn:hover {
  background-color: #fff;
}
#who {
  position: relative;
}
#who .text {
  width: 45%;
  padding: 15rem 0;
}
#who .text p {
  margin-bottom: 1.5rem;
  text-align: center;
}
#who .bloc-img {
  width: 52%;
  position: absolute;
  right: 0;
  top: 0;
}
#who .bloc-img .portrait {
  position: absolute;
  left: 5rem;
  top: 12rem;
  border: 2rem solid #fff;
  height: 60rem;
}
#who .bloc-img .portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#who .bloc-img .wallpaper {
  z-index: -1;
  width: 80%;
  height: 60rem;
  position: absolute;
  right: 0;
  top: 0;
}
#who .bloc-img .wallpaper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#who .btns {
  justify-content: center;
  margin-top: 3rem;
}
#presta {
  padding: 12rem 0;
  background: url('../../images/index/fleurs-degrade-rose-bleu.jpg') no-repeat center center;
  background-size: cover;
  text-align: center;
}
#presta h2 {
  width: 100%;
  margin-bottom: 2rem;
  text-transform: uppercase;
  font-size: 4rem;
}
#presta p {
  width: 45%;
  margin: 1rem auto 4rem auto;
}
#presta p,
#presta h2 {
  color: #fff;
}
#presta .dflex {
  width: 100%;
  justify-content: space-between;
}
#presta .dflex a {
  width: 23%;
  display: block;
  height: 38rem;
  background-color: orange;
  position: relative;
}
#presta .dflex a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#presta .dflex a span {
  background-color: #fff;
  padding: 2rem;
  position: absolute;
  bottom: -2rem;
  width: 86%;
  left: 7%;
}
#presta .dflex a span strong {
  color: #0b222a;
  font-weight: 700 !important;
  font-family: "Montserrat", sans-serif;
}
#main-carousel {
  padding: 15rem 0;
  background: url('../../images/index/rosier-fleurs-bleu-assombri.jpg') no-repeat center center;
  background-size: cover;
  color: #fff;
  text-align: center;
  position: relative;
}
#main-carousel .slide {
  padding: 4rem 6rem;
  width: 80%;
  margin: auto;
}
#main-carousel .slide h3 {
  font-size: 6rem;
  line-height: 1;
}
#main-carousel .slide p {
  width: 100%;
  text-align: right;
}
#news {
  padding: 15rem 0 15rem 0;
  background: url('../../images/index/fleurs-cerisier-blanc-laiteux.jpg') no-repeat center center;
  background-size: cover;
}
#news .container {
  justify-content: space-between;
}
#news .actu {
  display: block;
  position: relative;
}
#news .actu .overlay {
  background-color: transparent;
  color: transparent;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
#news .actu img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#news .actu:hover .overlay {
  background-color: rgba(23, 23, 23, 0.6);
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  height: 100%;
  justify-content: center;
  align-items: center;
  padding: 4rem;
  font-family: "Montserrat", sans-serif;
}
#news .actu:hover .overlay span {
  display: block;
  text-align: center;
}
#news .actu:hover .overlay .title {
  font-weight: 700;
  margin-bottom: 3rem;
  font-size: 2.8rem;
}
#news .actu:hover .overlay .texte {
  font-size: 1.5rem;
  line-height: 1.5;
}
#news .actu,
#news .bg-rose,
#news .bg-blue {
  border: 1rem solid #fff;
}
#news .bg-rose {
  background-color: #cc4fc7;
  height: 35rem;
  width: 35%;
}
#news .bloc-title {
  width: 65%;
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  height: 35rem;
}
#news .bloc-title .firstTitle {
  width: 100%;
  margin: 0;
}
#news .bg-blue {
  background-color: #6ba8eb;
  height: 35rem;
  width: 25%;
}
#news .bloc-left {
  width: 35%;
}
#news .bloc-left .actu {
  height: 70rem;
  background-color: green;
}
#news .bloc-right {
  width: 65%;
}
#news .bloc-right .actu {
  height: 35rem;
  width: 75%;
  background-color: orange;
}
#news .btns {
  justify-content: center;
  margin-top: 5rem;
}
/* -------------------------------------------------------- */
/*                        RESPONSIVE                        */
/* -------------------------------------------------------- */
@media screen and (max-width: 1300px) {
  #home {
    height: 90vh;
  }
  #home h1 {
    font-size: 10rem;
    margin-bottom: 5rem;
  }
  #quotes {
    padding: 15rem 6rem;
  }
  #quotes h3 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 1100px) {
  #who .bloc-img {
    width: 45%;
  }
  #who .bloc-img .portrait {
    left: -3rem;
    height: 45rem;
  }
  #who .bloc-img .wallpaper {
    height: 40rem;
  }
  #who .text {
    width: 50%;
    padding: 8rem 0;
  }
  #presta {
    padding: 8rem 2rem;
  }
  #presta .dflex a {
    height: 25rem;
  }
  #news {
    padding: 5rem 0;
  }
  #news .bloc-right,
  #news .bloc-left {
    width: 70%;
    margin: auto;
  }
  #news .bloc-left .actu {
    height: 30rem;
  }
  #news .actu .overlay {
    background-color: rgba(23, 23, 23, 0.6);
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    justify-content: center;
    align-items: center;
    padding: 4rem;
    font-family: "Montserrat", sans-serif;
  }
  #news .actu .overlay span {
    display: block;
    text-align: center;
  }
  #news .actu .overlay .title {
    font-weight: 700;
    margin-bottom: 3rem;
    font-size: 2.8rem;
  }
  #news .actu .overlay .texte {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 900px) {
  #home {
    height: 60vh;
  }
  #home h1 {
    font-size: 6rem;
  }
  #home h2 {
    margin-bottom: 1rem;
  }
  #home h2 span {
    font-size: 1.8rem;
  }
  #home .btns .btn {
    width: 100%;
  }
  #who .text {
    width: 100%;
  }
  #who .bloc-img {
    width: 100%;
    position: relative;
  }
  #who .bloc-img .wallpaper {
    position: relative;
    width: 100%;
    margin-top: -20rem;
  }
  #who .bloc-img .portrait {
    left: initial;
    top: initial;
    position: relative;
    width: 60%;
    margin: auto;
  }
  #presta .dflex a {
    width: 48%;
    height: 35rem;
    margin: 3rem 0;
  }
  #quotes {
    padding: 8rem 6rem;
  }
  #news .bloc-right,
  #news .bloc-left {
    width: 90%;
  }
}
@media screen and (max-width: 700px) {
  #presta p {
    width: 80%;
  }
  #news .bloc-right,
  #news .bloc-left {
    width: 100%;
  }
  #news .actu .overlay .title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 500px) {
  #home {
    height: 80vh;
  }
  #home h1 {
    font-size: 4rem;
    margin-bottom: 6rem;
  }
  #home h2 span {
    font-size: 2.2rem;
  }
  #home .btns .btn {
    padding: 1.5rem 8rem;
  }
  #who .bloc-img .portrait {
    width: 80%;
  }
  #presta .dflex a {
    width: 90%;
    margin: 3rem auto;
  }
  #quotes {
    padding: 6rem 3rem;
  }
  #quotes h3 {
    font-size: 2.8rem;
    line-height: 2;
  }
  #news .bg-rose,
  #news .bg-blue {
    height: 10rem;
    width: 100%;
  }
  #news .bloc-title {
    width: 100%;
    height: 25rem;
  }
  #news .bloc-right .actu {
    width: 100%;
  }
  #news .actu:hover .overlay {
    padding: 2rem;
  }
  #news .actu:hover .overlay .title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 380px) {
  #home {
    height: 90vh;
  }
  #home h2 span {
    font-size: 2rem;
  }
  #who .bloc-img .portrait {
    width: 100%;
  }
  #presta {
    padding: 6rem 1rem;
  }
  #presta h2 {
    font-size: 2.8rem;
  }
  #presta .dflex a {
    width: 100%;
  }
}
