/**************
    ALL
***************/

* {
  margin: 0px;
  padding: 0px;
}

/*Reset CSS*/

html {
  height: 100%;
}

body {
  height: 100%;
  min-height: 100vh;
  margin: 0;
  background-color: #fdfdfd;
  font-family: soleil;
}

button {
  font-family: 'soleil';
  font-size: 1em;
  font-weight: 200;
}

.icon {
  height: 30px;
}

.clickable {
  cursor: pointer;
}

h1 {
  display: inline;
  text-align: center;
  padding: 10px;
  border-bottom: solid rgba(243, 164, 30, 1) 3px;
}

.h1 {
  text-align: left;
}

h2 {
  color: #f3a41e;
  font-size: 1.3em;
}

.textResults p {
  text-decoration: none;
  color: black !important;
}

button {
  background-color: #fcfcfc;
  border: solid rgba(53, 53, 53, 1) 1px;
  border-radius: 20px;
  padding: 10px 60px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
}

a {
  color: white;
}

nav.pagination {
  justify-content: space-between;
  align-items: center;
}

.is-current {
  color: #f3a41e;
}

/**************
    HEADER
***************/

header {
  display: flex;

  align-items: flex-end;
  text-align: center;

  background-color: white;
  padding: 8px 8px 8px 8px;
}

header img {
  height: 50px;
  margin: 24px 24px 0px;
}

header h1 {
  width: 80%;
  margin: 0;

  font-size: 2.1em;
}

/* The tag "main" use for put the nav on the side */
div.main {
  display: flex;
  min-height: calc(100% - 200px);
}

.dropdown {
  position: absolute;
  display: inline-block;
}

.dropdown-child {
  display: none;
  background-color: #f28c8c;
  min-width: 50px;
}

.dropdown-child a {
  color: white;
  padding: 20px;
  text-decoration: none;
  display: block;
}

.dropdown:hover .dropdown-child {
  display: block;
}

/*****************/

nav {
  width: 100%;
  margin: 0 auto;
  background-color: white;
  position: sticky;
  top: 0px;
}

nav ul {
  list-style-type: none;
  display: flex;
  justify-content: center;
}

nav ul li {
  flex: 0 1 auto;
  padding: 0 3%;
  text-align: center;
  position: relative;

  border-bottom: 2px solid transparent;
  /* Remove the vertical offset on hover */
}

nav ul li:hover {
  /* border-bottom: 2px solid #F3A41E; */
  color: white;
}

nav a {
  display: block;
  text-decoration: none;
  color: black;
  /*border-bottom: 2px solid transparent;*/
  padding: 10px 0px;
  font-size: 1.2em;
}

.sous {
  display: none;
  box-shadow: 0px 1px 2px #ccc;
  background-color: white;
  position: absolute;
  width: 100%;
  z-index: 1000;
  flex-direction: column;
  font-size: 1em;
}

nav > ul li:hover .sous {
  display: flex;
  flex-flow: column wrap;
}

.sous li {
  flex: 1 1 auto;
  text-align: left;

  padding: 0px;
  text-align: center;
}

.sous a {
  /* padding: 10px; */
  border-bottom: none;
}

.sous a:hover {
  border-bottom: none;
  /* background-color: rgb(243, 164, 30); */
  color: #f3a41e;
}

.deroulant > a::after {
  font-size: 12px;
}

nav a:hover {
  color: #f3a41e;
}

/**************
    NAV
***************/

nav {
  background-color: white;
}

nav > ul {
}

ul {
  list-style: none;
}

.menuContainer {
  width: 100%;
}

/*
nav ul {
    display: inline;
}
*/
nav ul li {
  display: inline;
}

footer ul {
  padding: 0;
}

.selectedMenu {
  color: #f3a41e !important;
}

nav a {
  color: black;
  text-decoration: none;
}

/**************
    MAIN CONTENT
***************/

main {
  width: 100%;
  box-sizing: border-box;
  /* padding: 3% 4% 10% 4%; */

  box-shadow: 0px 3px 5px rgba(20, 20, 20, 0.15) inset;
}

p {
  font-weight: lighter;
}

label {
  font-size: 0.8em;
}

/**************
    FOOTER CONTENT
***************/

footer {
  background-color: rgba(49, 49, 49, 1);
  color: white;
  padding: 20px 50px;
}

footer p {
  margin: 5px;
}

footer img {
  margin-right: 0px !important;
}

footer a {
  text-decoration: none;
}

#footerPollen {
  font-style: italic;
}

.itemFlexFooter {
  width: 45%;
}

.itemFlexFooter2 {
  width: 55%;
}

#navListFooter {
  justify-content: space-around;
  font-size: 1em;
  padding-left: 0px;
}

#navListFooter > div > li > ul > li {
  font-weight: normal;
  font-style: italic;
  padding-left: 15px;
  font-size: 0.9em;
}

footer form {
  width: 100%;
  justify-content: space-around !important;
  gap: 15px;
}

#emailFooter {
  flex-grow: 2;
}

/**************
    FRAMED CONTENT
***************/

.framed {
  box-sizing: border-box;
  margin: 0px 20px 20px 20px;
  padding: 20px;
  background-color: white;
  border-radius: 20px;
  margin: 20px 0;
}

.framedTitle {
  margin-bottom: 0;
  margin-left: 1em;

  font-size: 1.3em;
  font-style: italic;
}

/**************
    FLEX
***************/

.flexContainer {
  display: flex;
  justify-content: center;
  align-items: center;
}

.flexContainer img {
  /* border-radius: 50%; */
}

.flexContainer img:nth-child(odd) {
  margin-right: 40px;
}

.flexContainer img:nth-child(even) {
  margin-left: 40px;
}

.flexContainer h1 {
  justify-content: center;
}

.flexColumn {
  flex-flow: column;
  justify-content: space-around;
}

.enclose {
  border-style: dotted;
  border-width: 5px;
  border-color: #f3a41e;
  margin: auto;
}

.enclose > div {
  margin: auto;
  text-align: center;
  width: 100%;
}

#partenaires {
  align-items: stretch !important;
}

#partenaires section {
  width: 50%;
  height: 230px;
  padding: 28px;
  margin: 0px 20px 20px 20px;

  display: flex;
  flex-flow: column;
  align-content: center;
}

/**************
    BUTTON
***************/

.button {
  background-color: white;
  border-style: solid;
  border-radius: 14px;
  border-width: thin;
  font-size: 0.8em;
  padding: 3px 25px;
}

.button:hover {
  cursor: pointer;
}

.main-button {
  color: white;
  border-color: #f3a41e;
}

.main-button:hover {
  background: #f3a41e;
  color: white;
  font-weight: 400;
}

.secondary-button {
  background: #f3a41e;
  color: white;
  font-weight: 400;
  border-style: none;
  border-radius: 8px;
  height: 29px;
  font-size: 1em;
}

.reverse-button {
  background-color: #3e3e3e;
  border: none;
  color: #f3a41e;
}

.reverse-button:hover {
  color: white;
  font-weight: 400;
}

.buttonFormIndex {
  margin-top: 5px !important;
  margin-left: 10px !important;
}

#rightSelecLivres {
  position: absolute;
  right: -64px;
  top: 149px;
  width: 40px;
}

#leftSelecLivres {
  position: absolute;
  left: -38px;
  top: 149px;
  transform: rotate(-180deg);
  width: 40px;
}

#rightSelecRevues {
  position: absolute;
  right: -64px;
  top: 149px;
  width: 40px;
}

#leftSelecRevues {
  position: absolute;
  left: -7px;
  top: 149px;
  transform: rotate(-180deg);
  width: 40px;
}

/**************
    TEXT AND PASSWORD INPUTS
***************/
input[type='text'],
input[type='password'],
input[type='email'],
select,
textarea {
  box-sizing: border-box;

  border: none;
  border-radius: 10px;
  background: #f3f3f3;
  padding: 8px 4px 8px 16px;

  font-family: 'soleil';
  font-weight: 100;
}

input[type='text']:focus,
input[type='password']:focus {
  outline: none;
}

input[type='text']::placeholder,
input[type='password']::placeholder {
  color: #6d6d6d;
  font-style: italic;
}

/**************
  NOTIFICATIONS
***************/
.notification {
  z-index: 2;
  position: absolute;
  margin-left: 10%;
  top: 110px;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
  box-shadow: 5px 5px 10px rgb(0 0 0 / 30%);
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }

  70% {
    opacity: 0.8;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  70% {
    opacity: 0.8;
  }

  100% {
    opacity: 0;
  }
}

.notification p {
  display: inline-block;
  padding: 10px 30px;
  border-radius: 5px;
  font-weight: 400;
  margin: 0;
}

.is-success p {
  color: white;
  background: #f3a41e;
}

@media (max-width: 375px) {
  .topSectionFooter {
    flex-direction: column !important;
  }

  .itemFlexFooter {
    width: 100%;
  }

  #navListFooter {
    margin-bottom: 15px;
  }

  #footerPollen {
    text-align: center;
  }
}
