/*
Theme Name:  Jampaa
Theme URI: https://www.jampaa.it/
Description:  Tema Jampaa
Author:  Jampaa
Author URI: https://www.jampaa.it/
Template:  hello-elementor
Version:  1.0
*/



/* Hero Image pagina 404 */

.error404 .hero-image {
    display: none;
}


/* ========= Tabella base ========= */
.table.camere {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 860px; /* evita che si stringa troppo su mobile: scrollerà in orizzontale */
  background: #fff;
  box-shadow: 0 2px 12px rgba(0,0,0,.08);
}

/* Intestazioni */
.table.camere thead th {
  position: sticky;
  top: 0;
  z-index: 3; /* sopra alle celle sticky della prima colonna */
  background: #fff;
  color: #222;
  font-weight: 700;
  text-align: left;
  padding: 10px;
  border-bottom: 1px solid #eee;
  white-space: nowrap;
}

/* Prima colonna sticky (etichette riga) */
.table.camere tbody td:first-child,
.table.camere thead th:first-child {
    position: sticky;
    left: 0;
    z-index: 4;
    background-color: #fff!important;
    box-shadow: 1px 0 0 #eee;
    min-width: 180px;
    max-width: 200px;
    white-space: nowrap;
}

/* Celle */
.table.camere td {
  padding: 10px;
  border-bottom: 1px solid #f0f0f0;
  vertical-align: middle;
  text-align: left;
}

/* Colonne camera: larghezza minima coerente per mantenere leggibilità */
.table.camere thead th:not(:first-child),
.table.camere tbody td:not(:first-child) {
  min-width: 120px;
  text-align: center; /* dati sì/no e numeri centrati */
}

/* Immagini check */
.table.camere td img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  vertical-align: middle;
}

/* Zebra rows + righe con classe .active evidenziate leggermente */
.table.camere tbody tr:nth-child(odd) td {
  background-color: #fafafa!important;
}
.table.camere tbody tr.active td {
  background: #fdf6f8; /* un filo rosato coerente col #029439 */
}
.table.camere tbody tr:hover td {
  background: #f7f7f7;
}

/* Link delle intestazioni (nomi camera) */
.table.camere thead th a {
  color: #029439;
  text-decoration: none;
  font-weight: 700;
}
.table.camere thead th a:hover {
  text-decoration: underline;
}

/* Pulsanti "Scopri" nelle celle finali */
.table.camere a.button,
.table.camere a.button-small {
  display: inline-block;
  padding: 10px 18px;
  background: #029439;
  color: #fff !important;
  text-decoration: none;
  border-radius: 0;
  font-weight: 700;
  transition: background .2s ease;
  white-space: nowrap;
}
.table.camere a.button:hover,
.table.camere a.button-small:hover {
  background: #a81340;
}
.table.camere .col_full { 
  margin: 0; 
}

/* Rimuovo gap extra nella riga dei bottoni (quella col <br>) */
.table.camere td:first-child br {
  display: none;
}

/* Ultima riga con bordo più marcato (se usi classi custom) */
.table.camere tr.tab-comp_ultimariga td {
  border-bottom: 2px solid #e9e9e9;
}

/* ========= Responsive ========= */
/* Tablet: un pochino più stretto il label colonna, più spazio alle camere */
@media (max-width: 992px) {
  .table.camere tbody td:first-child,
  .table.camere thead th:first-child {
    min-width: 180px;
    max-width: 200px;
  }
}

/* Mobile: scroller prevalente, padding più contenuti */
@media (max-width: 576px) {
  .table.camere {
    min-width: 720px; /* consente uno scroll più "umano" su device piccoli */
  }
  .table.camere thead th,
  .table.camere td {
    padding: 10px 12px;
  }
  .table.camere tbody td:first-child,
  .table.camere thead th:first-child {
    min-width: 160px;
    max-width: 180px;
  }
}

/* ========= Accessibilità visiva focus ========= */
.table.camere a:focus,
.table.camere button:focus,
.table.camere [href]:focus {
  outline: 2px solid #029439;
  outline-offset: 2px;
}

/* Piccolo fix per immagini “vuote” (cellule con &nbsp;) */
.table.camere td:empty::before {
  content: "—";
  color: #bbb;
}


.elementor-widget-container {
word-break: break-word;
}





  .gform_fields {
        position: relative;
        row-gap: 1rem!important;

      }
      label.gfield_label.gform-field-label {
        font-family: "DM Sans", Sans-serif!important;
        font-size: 18px;
        line-height: 1.2;
        font-weight: 500;
        color: #029439;

}
#input_2_9,
#input_2_11,
#input_2_4,
#input_2_7,
#input_2_3,
    .gfield input[typr="text"],
      .gfield input[type="email"] {
        font-size: 18px !important;
        padding: 5px 10px;
        margin-bottom: 0;
        margin-top: 0;
        border: 1px solid #029439;
        background-color: #FFFFFF;
        font-weight: 400;
        font-family: "DM Sans", Sans-serif!important;
        outline: none;
        border-radius: 0px;
        display: block;
        height: 100%;
      }
 
      .gfield input:placeholder {
        font-family: "DM Sans", Sans-serif!important;
        font-weight: 400;
         font-size: 18px !important;
      }

      input[type="checkbox"] {
        margin-right: 10px;
        margin-top: 3px;
        position: relative;
        cursor: pointer;
        vertical-align: top;
}
       /* input[type="checkbox"]:before {
          content: "";
          position: absolute;
          width: 18px;
          height: 18px;
          border: 1px solid #002A48;
          top: -3px;
          left: -2px;
          background-color: #FFFFFF;
          border-radius: 0;
        }

        input[type="checkbox"]:after {
          display: none;
          content: "\2713";
          position: absolute;
          font-size: .9rem;
          line-height: .9rem;
          top: -2px;
          left: 1px;
          color: #002A48;
          font-weight: 700;
        }

        input[type="checkbox"]:checked:before {
            background-color: #C3F42C;
          }

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

      input[type="submit"] {
        width: 100%!important;
        border: 1px solid #029439!important;
        padding: 20px!important;
        background-color: #029439!important;
        font-family: "DM Sans", Sans-serif!important;
        color: #fff!important;
        cursor: pointer!important;
        font-size: 18px !important;
        line-height: 1.2 !important;
        transition: all .2s linear;
        border-radius: 0px;
        position: relative;
        text-transform: uppercase!important;
    }


        input[type="submit"]:hover {
          background-color: #36533c!important;
          border-color: #36533c!important;
          transition: all .2s linear;
        }
      .gform-theme--framework .gfield--input-type-datepicker .ginput_container_date input {
    width:100%;
}

 /*header text mobile */
 @media screen and (max-width: 575px) {
    .header-contacts .elementor-button span.elementor-button-text{
        width: 45px;
        overflow: hidden;
        position: relative;
        text-align: center;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
 }
.wpml-ls-legacy-list-horizontal a span {
    vertical-align: middle;
    width: 50px;
    display: block;
}
