@import "~@fortawesome/fontawesome-free/css/all.min.css";

/**  SCROLLBAR **/
/* Estil per a la barra de desplaçament */
::-webkit-scrollbar {
  width: 10px; /* Amplada de la barra de desplaçament vertical */
  height: 12px; /* Altura de la barra de desplaçament horitzontal */
}

/* Estil per al fons de la barra de desplaçament */
::-webkit-scrollbar-track {
  background: #a3a3a3; /* Color de fons de la pista */
  border-radius: 10px;
}

/* Estil per al "thumb" o la part mòbil de la barra de desplaçament */
::-webkit-scrollbar-thumb {
  background: #2e5536; /* Color del thumb */
  border-radius: 10px;
}

/* Estil per quan l'usuari passa el ratolí sobre la barra */
::-webkit-scrollbar-thumb:hover {
  background: #2e5536; /* Color quan passa el ratolí sobre la barra */
}

.nav-link {
  color: #003854;
  transition: 0.5s ease;
}
.nav-link:hover {
  background-color: #f8f9fa;
  border: 1px solid #003854;
}
.navbar-brand {
  padding: 7px 25px 7px 25px;
  transition: 0.5s ease;
  color: #003854;
}
.navbar-brand:hover {
  background-color: #003854;
  color: #fff;
}

/* Estil inicial per a la navbar amb fons transparent */
.navbar.bg-transparent {
  background-color: transparent;
  transition: background-color 0.5s ease; 
}

/* Estil per a la navbar amb fons blanc */
.navbar.scrolled {
  background-color: #f8f9fa !important; 
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
  transition: background-color 0.5s ease, box-shadow 0.3s ease;
}

/* Contenidor de la imatge principal */
.image-container {
  position: relative;
  background: url('imatges_inici/portada-camp.png') no-repeat center center/cover;
  height: 70vh;
  display: flex; /* Activa Flexbox */
  flex-direction: column; /* Canvia la direcció dels elements per apilar-los verticalment */
  justify-content: center; /* Manté contingut cap a la part superior */
  align-items: center; /* Centra horitzontalment */
  margin-bottom: 150px;
}

/* Estil del logo del nav inicialment invisible */
#logo {
  width: 100px;
  height: 100px;
  object-fit: contain;
  margin-left: 30%;
  margin-bottom: 10px;
  opacity: 0;
  transition: opacity 0.5s ease; 
}
#logo.visible {
  opacity: 1;
  cursor: pointer;
}

/* Botó personalitzable */
.custom-btn {
  background-color: white;
  color: #003854;
  font-size: 1.2rem;
  font-weight: 500;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  border-radius: 0;
  padding: 0.75rem 2rem;
  transition: all 1s ease;
  margin-top: 20vh;
}

.custom-btn:hover {
  background: #003854;
  font-weight: 100;
  color: rgb(242, 242, 245);
}



/* Contenidor del text (div welcome) */
.welcome {
  background: rgb(43,82,31);
  background: linear-gradient(90deg, rgba(43,82,31,1) 0%, rgba(58,99,46,1) 21%, rgba(47,108,41,1) 35%, rgba(40,125,50,1) 47%, rgba(61,141,45,1) 60%, rgba(67,173,46,1) 75%, rgba(105,202,60,1) 88%, rgba(193,253,54,1) 100%);
  color: white;
  padding: 20px;
  position: absolute; /* Canvia a "fixed" per mantenir el div fix a la pantalla */
  bottom: -70px;    /* Ajusta la posició a la part inferior */
  right: 0px;     /* Ajusta la posició des del costat dret */
  width: 90%;      /* Manté una amplada flexible */
  max-width: 600px; /* Límit màxim d'amplada */
  text-align: left; /* Text alineat a l'esquerra */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  box-sizing: border-box;
  height: auto;    /* Ajusta l'alçada segons el contingut */
  min-height: 100px; /* Assegura que tingui una alçada mínima */
  z-index: 1;   /* Porta el contenidor al davant d'altres elements */
}


.welcome h1, .welcome p {
  margin: 0;
  padding: 0;
  text-align: left;
}
.welcome p {
  font-weight: 500;
  margin-top: 10px;
}


/* Estils generals per a la tipografia i la disposició */
body {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; /* Tipografia neta i moderna */
  font-size: 16px; /* Mida base per al text */
  line-height: 1.5;
  color: #333; /* Color del text (gris fosc) */
}

/* Estils per al títol */
/* Estils per al títol */
.title {
  font-size: 2.5rem; /* Mida més gran per al títol */
  font-weight: bold;
  color: #2d3748; /* Color fosc similar al que utilitzen en Infinitum Living */
  text-align: left; /* Alineació a l'esquerra */
  margin-bottom: 1.5rem; /* Separació inferior */
}


/* Estils per al text descriptiu */
.description {
  font-size: 1.125rem; /* Mida de font mitjana */
  font-weight: normal;
  color: #003854;
  text-align: left; /* Alineació a l'esquerra */
  margin-bottom: 1.5rem; /* Separació inferior */
}

/* Estils per a la llista */
.details {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; /* Ajustat a l'esquerra */
  margin-top: 1.5rem;
}

.details li {
  font-size: 1rem; /* Mida de font més petita per a la llista */
 color: #003854;;
  margin-right: 1.5rem; /* Separació entre elements */
}

.details li:last-child {
  margin-right: 0; /* Elimina el marge del darrer element de la llista */
}


/** SECCIO CAMP I FORATS**/
.forats-container {
  min-height: 500px;
  margin-top: 50px;
}

.hole-image {
  width: 80%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.hole-card {
  background: linear-gradient(90deg, #7ba835, #a1d655);
  color: white;
  padding: 2rem;
  border-radius: 0.5rem;
  height: 100%;
}

.hole-selector button {
  width: 40px; /* Amplada fixa */
  height: 40px; /* Alçada fixa, igual que l'amplada */
  border-radius: 50%; /* Rodó complet */
  padding: 0;
  display: flex; 
  align-items: center;
  justify-content: center;
  border: 1px solid #ccc; 
  background-color: #fff; 
  color: #000; /* Color del text */
  cursor: pointer; /* Canvia el cursor quan el botó es passa per sobre */
}

.hole-selector button:hover {
  background-color: #e9e7e7; /* Opcional, efecte hover */
}

.custom-divider {
  border: none;
  border-top: 2px solid #ceb008;
  margin: 15px auto; /* Margen entre la línia i els altres elements */
  width: 35%; /* Amplada de la línia */
}

/*   Secció de Normes locals   */
.custom-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 20px;
  background-color: #f9f9f9;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  margin-top: 5vh;
  margin-bottom: 15vh;
}
h1 {
  font-size: 1.75rem;
  margin-bottom: 1.5rem;
  text-align: center;
}
h3 {
  font-size: 1.25rem;
  margin-top: 1.5rem;
}
p {
  margin-bottom: 1rem;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; /* Tipografia neta i moderna */
}
ul {
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}
.highlight {
  font-weight: bold;
}


.imatges-2 {
  margin-top: 120px;
}

/* Imatge gran (contenidor inferior) */
.img-wrapper-large {
  height: 276px;
  overflow: hidden; /* Amaga l'excés */
}

.img-wrapper-large img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Manté la proporció sense deformar */
}

/* Estils de text */
.title {
  font-size: 1.5rem;
  font-weight: bold;
}

.description {
  font-size: 1rem;
  margin-top: 10px;
}

.details li {
  font-size: 0.9rem;
  margin-top: 5px;
}



/* Conatcte */

.bg-green {
  background-color: #003300; /* Verd fosc */
}

.text-white {
  color: #ffffff;
}

.divider {
  height: 2px;
  background-color: #ffffff;
  width: 50px;
  margin-bottom: 20px;
}

/* Formulari d'estil */
.form-control, .form-select {
  border-radius: 0;
}

/* Botó d'enviament */
.btn-primary {
  background-color: #003300;
  border: none;
  padding: 10px 20px;
}
.btn-primary:hover {
  background-color: #005500;
}



/* FOOTER */
footer {
  background-color: #013601; /* Verd fosc */
  color: white;
  padding: 40px 20px;
  font-family: Arial, sans-serif;
  margin-top: 20vh;
}

footer .left-section {
  text-align: left;
}

footer .right-section {
  text-align: center;
}

footer .newsletter {
  margin-top: 20px;
}

footer input[type="email"] {
  border-radius: 4px;
  border: none;
  padding: 10px;
  width: 200px;
  margin-right: 10px;
}

footer button {
  background-color: #ffffff;
  color: #013601;
  border: none;
  padding: 10px 20px;
  border-radius: 4px;
  cursor: pointer;
}

footer button:hover {
  background-color: #d9d9d9;
}

footer .social-icons a {
  color: white;
  margin: 0 10px;
  font-size: 18px;
  text-decoration: none;
}

footer .social-icons a:hover {
  color: #d9d9d9;
}

footer .checkbox-container {
  margin-top: 10px;
}

footer .checkbox-container label {
  font-size: 14px;
}

footer .copyright {
  text-align: center;
  margin-top: 20px;
  font-size: 12px;
}


/* Dispositius mòbils petits (≤ 576px) */
@media (max-width: 576px) {
  .image-container {
    height: 80vh;
  }

  .navbar-brand {
    padding: 5px 15px;
  }

  #logo {
    width: 40px;
  }

  .hero-section h1 {
    font-size: 2rem;
  }

  .hero-section p {
    font-size: 1rem;
  }

  .welcome {
    width: 80%;  /* Redueix una mica més l'amplada en pantalles molt petites */
  }

  .imatges-2{
    margin-right: 15vw!important;
  }

  .esquerre{
    justify-content: center;
  }
  .forats-container{
    min-height: 400px;
  }

  .custom-btn{
    margin-top: -15vh;
  }
}


/* Dispositius mòbils mitjans (≤ 768px) */
@media (max-width: 768px) {
  .image-container {
    height: 90vh;
  }

  .navbar-brand {
    padding: 7px 20px;
  }

  .imatges-2{
    margin-right: 50px;
  }

  .forats-container{
    min-height: 400px;
  }

  .custom-btn{
    margin-bottom: 15vh;
  }
}

/* Tauletes i dispositius grans (≤ 992px) */
@media (max-width: 992px) {
  .image-container {
    height: 80vh;
  }

  .navbar-brand {
    padding: 10px 25px;
  }

  .imatges-2{
    margin-right: 10vw;
    flex-wrap: nowrap;
  }

  .forats-container{
    min-height: 400px;
  }

  .custom-btn{
    margin-bottom: 15vh;
  }
}

/* Pantalles grans i escriptoris (≤ 1200px) */
@media (max-width: 1200px) {
  .image-container {
    height: 80vh;
  }

  .navbar-brand {
    padding: 15px 30px;
  }

  .imatges {
    margin-bottom: -3rem!important;
  }

  .imatge-espai{
    margin-left: 5.5rem!important;
  }

  .text{
    margin-top: 1.5rem;
    font-size: 5px!important;
  }
  .details{
    margin-bottom: 1.5rem!important;
  }

  .custom-btn{
    margin-bottom: 15vh;
  }
}

/* Pantalles molt grans (> 1200px) */
@media (min-width: 1201px) {
  .image-container {
    height: 80vh;
  }

  .navbar-brand {
    padding: 20px 40px;
  }

  .imatges {
    margin-bottom: -3rem!important;
  }

  .imatge-espai{
    margin-left: 5.5rem!important;
  }

  .text{
    margin-top: 1.5rem;
    font-size: 5px!important;
  }
  .details{
    margin-bottom: 1.5rem!important;
  }
}

@media screen and (min-width: 230px) and (max-width: 430px){
  .custom-btn{
    margin-bottom: 15vh;
  }

  .imatges-2{
    margin-right: 21.5vw!important;
  }
}
@media screen and (min-width: 768px) and (max-width: 1999px) {
  .newsletter input{
    margin-bottom: 15px;
  }
}

@media screen and (min-width: 577px) and (max-width: 768px) {
  
  /* Estil del logo del nav inicialment invisible */
  #logo {
  width: 50px; 
  }
}

@media screen and (max-width: 480px) {
  
  /* Estil del logo del nav inicialment invisible */
  #logo {
  display: none; 
  }
}

