body {
      margin: 0;
      padding: 0;
      font-family: 'Segoe UI', sans-serif;
      /* min-height: 100vh; */
      background: linear-gradient(135deg, #4caf50 30%, #2196f3 100%);
      background-size: cover;
      color: #fff;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: center;
    }



    header h1 {
      font-size: 2rem;
      margin: 0;
    }

    .form-container {
      background: rgba(0, 0, 0, 0.5);
      padding: 25px;
      border-radius: 20px;
      max-width: 400px;
      box-shadow: 0 0 20px rgba(0,0,0,0.3);
          margin-top: 20px;
    margin-bottom: 80px;
    }

    .form-container h2 {
      text-align: center;
      margin-bottom: 20px;
    }

    label {
      display: block;
      margin: 10px 0 5px;
    }

    input[type="text"], select {
      width: 100%;
      padding: 10px;
      border-radius: 10px;
      border: none;
      margin-bottom: 15px;
    }

    button {
      width: 100%;
      padding: 12px;
      border: none;
      border-radius: 10px;
      background: #28a745;
      font-size: 1rem;
      color: white;
      cursor: pointer;
    }

    button:hover {
      background: #218838;
    }

    /* Menu en bas */
    .bottom {
      width: 100%;
      background: rgba(0, 0, 0, 0.6);
      display: flex;
      justify-content: space-around;
      align-items: center;
      padding: 10px 0;
      position: fixed;
      bottom: 0;
      left: 0;
    }

    .bottom a {
      color: white;
      text-decoration: none;
      text-align: center;
      font-size: 0.8rem;
    }

    nav a:hover {
      color: #ffeb3b;
    }

    nav i {
      display: block;
      font-size: 1.4rem;
      margin-bottom: 4px;
    }

    /* Animation légère (feuilles qui tombent) */
    .leaf {
      position: absolute;
      top: -50px;
      animation: fall 8s linear infinite;
      opacity: 0.7;
    }

    @keyframes fall {
      0% {
        transform: translateY(0) rotate(0deg);
      }
      100% {
        transform: translateY(100vh) rotate(360deg);
      }
    }

    header {
      background-color: #016D36;
      color: white;
      padding: 15px;
      text-align: center;
      font-size: 22px;
      font-weight: bold;
    }

    .container {
      padding: 10px;
    }

    .location-box {
      background-color: white;
      border-radius: 12px;
      padding: 15px;
      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
      margin-bottom: 10px;
    }

    .location-box h2 {
      margin: 0;
      font-size: 18px;
     
    }

    .location-box p {
      color: grey;
      font-size: 14px;
      margin-top: 5px;
    }

 

    .search-bar input {
      width: 100%;
      padding: 12px;
      border: none;
      border-radius: 10px;
      background-color: #EDEDED;
      font-size: 14px;
    }

    .grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 15px;
    }

    .tile {
      background-color: #DFF5E5;
      border-radius: 14px;
      padding: 20px;
      text-align: center;
      text-decoration: none;
      color: #016D36;
      box-shadow: 0 1px 4px rgba(0,0,0,0.1);
      transition: transform 0.2s;
    }

    .tile:hover {
      transform: scale(1.05);
    }

    .tile img {
      width: 40px;
      height: 40px;
      margin-bottom: 10px;
    }

    .tile span {
      display: block;
      font-size: 14px;
      font-weight: bold;
    }
    #loader {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: #111;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    flex-direction: column;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  #loader.hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  #logo {
    width: 250px;
    user-select: none;
    transform-origin: center bottom;
  }
  #welcome {
    margin-top: 20px;
    font-size: 1.2rem;
    color: white;
    opacity: 0;
    text-align: center;
    line-height: 1.4;
  }
.pt-loader {
                display: inline;
            }
            .pt-loader_overlay {
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                z-index: 90;
                max-height: 0%;
                overflow: hidden;
                pointer-events: none;
                opacity: 0;
                transition: opacity 0.8s, max-height 0s 0.8s;
            }
            .pt-loader_overlay.-front {
                z-index: 999;
            }
            .pt-loader_overlay.-visible {
                pointer-events: auto;
                opacity: 1;
                max-height: 100%;
                transition-delay: 0s, 0s;
                transition-duration: 0.3s, 0s;
            }
              .loader .pt-navbar-logo {
                color: #000 !important;
            }
            .pt-hero-notice {
                position: relative;
                margin: 30px 0 0 0;
                color: #aaa;
                font-weight: 500;
                font-size: 14px;
                line-height: 100%;
            }
            @media (min-width: 1600px) {
                .pt-hero-notice {
                    font-size: 16px;
                }
            }
            .pt-hero-action {
                padding: 45px 0 0 0;
            }
            @media (min-width: 768px) {
                .pt-hero-action {
                    padding-top: 67px;
                }
            }
            @media (min-width: 1200px) {
                .pt-hero-action {
                    padding-top: 50px;
                }
            }
            @media (min-width: 1600px) {
                .pt-hero-action {
                    padding-top: 70px;
                }
            }
            .pt-hero-video {
                position: relative;
                /* width: 200px;
                height: 200px; */
                margin: 0 auto;
                overflow: hidden;
                cursor: pointer;
                border-radius: 80px;
            }
            @media (min-width: 768px) {
                .pt-hero-video {
                    /* width: 395px;*/
                    height: 500px;
                }
            }
            @media (min-width: 1600px) {
                .pt-hero-video {
                    object-fit: cover ;
                    height: 1200px;
                }
            }
            .pt-hero-video.-loading:after {
                content: "";
                display: block;
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                z-index: 2;
                transform: translateZ(0);
                pointer-events: none;
                touch-action: none;
                border-radius: inherit;
                border: 4px #fff solid;
                border-left-color: transparent;
                border-right-color: transparent;
                border-bottom-color: transparent;
                -webkit-animation: hero-video-loader 3s infinite linear;
                animation: hero-video-loader 3s infinite linear;
            }
            @-webkit-keyframes hero-video-loader {
                0% {
                    transform: rotate(0);
                }
                100% {
                    transform: rotate(360deg);
                }
            }
            @keyframes hero-video-loader {
                0% {
                    transform: rotate(0);
                }
                100% {
                    transform: rotate(360deg);
                }
            }
            
    /* Menu en bas */
   .bottom {
  width: 100%;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 6px 0; /* Moins d’espace vertical */
  position: fixed;
  bottom: 0;
  left: 0;
}

.bottom a {
  color: white;
  text-decoration: none;
  text-align: center;
  font-size: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px; /* Espace réduit entre icône et texte */
}

.bottom i {
  font-size: 1.2rem;
  line-height: 1;
  margin: 0;
}

.bottom a:hover {
  color: #ffeb3b;
}


    /* Animation légère (feuilles qui tombent) */
    .leaf {
      position: absolute;
      top: -50px;
      animation: fall 8s linear infinite;
      opacity: 0.7;
    }

    @keyframes fall {
      0% {
        transform: translateY(0) rotate(0deg);
      }
      100% {
        transform: translateY(100vh) rotate(360deg);
      }
    }
 .slider-container {
    position: relative;
  }

  .slide-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1s ease-in-out;
  }

  .slide-image.active {
    opacity: 1;
    z-index: 1;
  }