/* =========================================
   1. ESTILOS BASE (MOBILE FIRST)
   ========================================= */

/* --- Tipografía General --- */

.calafate-page h2 {
  color: #333A48;
  font-family: Gilroy, sans-serif;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 115%;
  letter-spacing: -0.5px;
  margin: 33px 0 10px;
}

.calafate-page p {
  color: #525966;
  font-family: Gilroy, sans-serif;
  font-feature-settings: 'liga' off;
  font-size: 0.9rem;
  font-style: normal;
  font-weight: 500;
  line-height: 180%;
}

/* --- Listas Generales --- */

.calafate-actividades ul {
  color: #000;
  font-family: Gilroy, sans-serif;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: 115%;
  letter-spacing: -0.5px;
  padding: 0 10%;
}

.calafate-actividades ul.disc {
  list-style: disc;
  padding: 0 15%;
}

.disc li {
  color: #525966;
  font-family: Gilroy, sans-serif;
  font-size: 0.9rem;
  font-style: normal;
  font-weight: 500;
  line-height: 180%;
}

/* --- Layout Wrappers (.nos-wrap) --- */

.nos-wrap {
  margin: 60px 0 24px;
}

.calafate-page .nos-wrap {
  margin: 60px 35px 24px;
}

.calafate-page .nos-wrap.do {
  width: auto;
  margin: 60px 10%;
}

/* --- Módulos y Secciones Específicas --- */

/* Header de Actividades */
.actividades-header {
  padding: 50px 0 30px;
}

.calafate-page.eco .calafate-actividades .actividades-header p {
  padding: 0 25%;
}

/* Márgenes específicos para textos dentro de Actividades */
.calafate-page .calafate-actividades h2,
.calafate-page .calafate-actividades h3 {
  margin: 33px 10% 10px;
}



.calafate-page .calafate-actividades p {
  padding: 0 10%;
}

/* Sección: Conservación */
.calafate-actividades.conservacion {
  background: #FAFAFA;
  padding: 3rem 0 3rem; /* Ajustado padding vertical */
}

.calafate-actividades.conservacion .btn-cert {
  padding: 30px 0 111px;
}

.calafate-actividades.conservacion .btn-cert button {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* Sección: Certificadas */
.calafate-page .calafate-actividades.certificadas {
  background: #00B140;
}

.calafate-page .calafate-actividades.certificadas button {
  background: #00B140;
}

.calafate-page .calafate-actividades.certificadas p {
  color: #fff;
}

.calafate-page.eco .calafate-actividades.certificadas h2 {
  padding: 63px 10% 20px;
  margin: 0;
  color: #fff;
  font-size: 1.9rem;
}

/* Sección: Compromiso */
.calafate-actividades.compromiso {
  padding: 60px 0;
  background: #FAFAFA;
  margin: 0;
}

.calafate-page .calafate-actividades.compromiso figure {
  display: flex;
  justify-content: flex-start;
  margin: 0 10% 20px;
}

/* Elementos varios (Requisitos, Líneas) */
.calafate-page .requisito figure {
  margin: 0;
}

.calafate-page .calafate-actividades .dashed-line {
  bottom: 75px;
  position: static;
  margin: 40px 10%;
  width: auto;
}


/* =========================================
   2. MEDIA QUERIES (DESKTOP: +1000px)
   ========================================= */

@media (min-width: 1000px) {
  
  /* --- Tipografía Desktop --- */
  
  .calafate-page h2 {
    font-size: 2.55rem;
  }
  
  .calafate-page p {
    font-size: 1rem;
  }
  
  .calafate-actividades ul {
    font-size: 2.2rem;
    padding: 0 20%;
  }

  .calafate-actividades ul.disc {
    margin: 22px;
    padding: 0 25%;
  }

  .disc li {
    font-size: 1rem;
  }

  /* --- Layout & Wrappers Desktop --- */
  
  .nos-wrap {
    width: 70%;
    margin: 50px 0 24px;
  }

  .calafate-page .nos-wrap {
    margin: 60px 10% 24px;
  }

  .calafate-page .nos-wrap.do {
    width: auto;
    margin: 60px 20%;
  }

  /* --- Ajustes de Márgenes/Paddings en Actividades --- */

  .actividades-header {
    text-align: center;
  }

  .calafate-page .calafate-actividades .actividades-header h2 {
    font-size: 2.5rem;
  }

  .calafate-page .calafate-actividades h3 {
    margin: 35px 0% 10px; /* Unificado al 20% según última lógica */
  }
  
   .calafate-page #donde-hospedarse h3, .calafate-page #donde-comer h3 {
    margin: 35px 20% 10px; /* Unificado al 20% según última lógica */
  }
  
     .calafate-page #donde-hospedarse li, .calafate-page #donde-comer li{
    border: unset !important;
    font-feature-settings: 'liga' off;
    font-family: Gilroy;
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    margin: 0;
  }
  
  
     .calafate-page #donde-hospedarse ul, .calafate-page #donde-comer ul{
    margin-block-start: 0;
  }
  

  .calafate-page .calafate-actividades h2 {
    margin: 33px 20% 10px; /* Unificado al 20% según última lógica */
  }
  .calafate-page.eco .calafate-actividades .shead h2 {
    margin: 0;
  }

  .calafate-page .calafate-actividades p {
    padding: 0 20%;
  }

  .calafate-page .calafate-actividades p.wide {
    padding: 0 20%;
  }

  /* --- Secciones Específicas Desktop --- */

  /* Sustentable */
  .calafate-actividades.sustentable {
    padding: 20px 5% 100px;
  }

  /* Conservación */
  .calafate-actividades.conservacion .btn-cert {
    padding: 30px 10% 111px;
  }

  .calafate-actividades.conservacion .btn-cert p {
    padding: 0 !important;
  }

  /* Certificadas */
  .calafate-page .calafate-actividades.certificadas {
    padding: 30px 5%;
  }

  .calafate-page .calafate-actividades.certificadas h2 {
    padding: 63px 0 20px;
  }

  /* Compromiso */
  .calafate-actividades.compromiso {
    padding: 120px 5%;
  }

  /* Requisitos (Grid Layout) */
  .requisitos-wrapper {
    display: flex;
    margin: 50px 10% 100px;
    width: auto;
    align-content: center;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
  }

  .requisito {
    text-align: center;
    flex: 0 1 calc(33.33% - 10px);
    flex-direction: column;
  }

  /* Otros elementos */
  .calafate-page .calafate-actividades .dashed-line {
    display: none;
  }
}

/* =========================================
   3. MEDIA QUERIES (LARGE: +1800px)
   ========================================= */

@media (min-width: 1800px) {
  .calafate-page.eco .calafate-actividades .actividades-header p {
    padding: 0 30%;
  }
}


.calafate-page .calafate-actividades ul p {
  padding: 5px 0 55px;
}
.calafate-page .calafate-actividades ul p {
  padding: unset;
}
@media (min-width: 1000px) {
  .calafate-page .calafate-actividades ul p {
    padding: 5px 0 22px;
  }
}
.calafate-page .calafate-actividades ul p {
  padding: 5px 0 55px;
}
.calafate-page .calafate-actividades ul p {
  padding: unset;
}
@media (min-width: 1000px) {
  .calafate-page .calafate-actividades ul p {
    padding: 5px 0 22px;
  }
}

.calafate-page ul > li{
    margin: 33px 0;
}
/* --- Estilos Base (Mobile First) --- */

/* H3 general dentro de calafate-dica */
.calafate-page .calafate-actividades .calafate-dica h3 {
  margin: 55px 10% 11px;
}

/* H3 específico dentro de .explorer (sin márgenes laterales) */
.calafate-page .calafate-actividades .calafate-dica .explorer h3 {
  margin: 55px 0 0;
}

/* --- Media Queries (Desktop: +1000px) --- */

@media (min-width: 1000px) {
  .calafate-page .calafate-actividades .calafate-dica h3 {
    margin: 55px 25% 11px;
  }
}

.calafate-actividades {
  margin-bottom: 60px;
}

.nos-wrap.do h1 {
  color: #7B99AF;
  font-family: Gilroy;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 2px;
}

.calafate-page .nos-wrap.do p {
  margin-top: 1em;
}

.nos-wrap.do p.subh {
  color: #292929;
  font-family: Gilroy;
  font-size: 2rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: -0.5px;
  line-height: 110%;
  margin-bottom: 2em;
}

.calafate-page .calafate-actividades .calafate-dica ul p:nth-of-type(3) {
  padding: 5px 0 15px;
}
.calafate-page .calafate-actividades .calafate-dica ul p:nth-of-type(3) {
  padding: 5px 0 15px;
}

.calafate-actividades ul.explorer {
  margin: 55px 0 0;
}

.calafate-page .calafate-actividades .calafate-dica .explorer p:nth-of-type(1) {
  padding: 5px 0 11px;
}

/* ==========================================
   TABLA COMPARATIVA TOURS
   ========================================== */

.comparativa-actividades {
    margin: 50px 0;
    padding: 40px 30px;
    background: linear-gradient(135deg, #F8FBFF 0%, #FFF9E6 100%);
    border-radius: 15px;
}

.comparativa-actividades h2 {
    color: #491D79;
    font-size: 1.9em;
    margin-bottom: 15px;
    text-align: center;
    font-family: 'Gilroy', sans-serif;
}

.intro-tabla {
    text-align: center;
    color: #6E808E;
    margin-bottom: 35px;
    font-size: 1.05em;
    line-height: 1.6;
}

.tabla-responsive {
    overflow-x: auto;
    margin: 30px 0;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
}

.tabla-tours-comparativa {
    width: 100%;
    border-collapse: collapse;
    min-width: 900px;
}

.tabla-tours-comparativa thead {
    background: linear-gradient(135deg, #491D79 0%, #812C8E 100%);
    color: white;
}

.tabla-tours-comparativa th {
    padding: 18px 15px;
    text-align: left;
    font-weight: 600;
    font-size: 0.9em;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.tabla-tours-comparativa tbody tr {
    border-bottom: 1px solid #E1ECFA;
    transition: all 0.2s ease;
}

.tabla-tours-comparativa tbody tr:hover {
    background: #F8FBFF;
    transform: scale(1.01);
}

.tabla-tours-comparativa tbody tr.tour-destacado {
    background: #FFF9E6;
    font-weight: 600;
}

.tabla-tours-comparativa td {
    padding: 15px;
    font-size: 0.95em;
}

.tabla-tours-comparativa td:first-child {
    font-weight: 600;
    color: #2c3e50;
}

/* Badges de dificultad */
.badge-dificultad {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.85em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.badge-dificultad.facil {
    background: #E8F5E9;
    color: #2E7D32;
}

.badge-dificultad.moderada {
    background: #FFF9E6;
    color: #F57C00;
}

.badge-dificultad.alta {
    background: #FFEBEE;
    color: #C62828;
}

/* Insights de reservas */
.insights-reservas {
    margin-top: 40px;
    background: white;
    padding: 30px;
    border-radius: 12px;
    border-left: 5px solid #009ABB;
}

.insights-reservas h3 {
    color: #009ABB;
    font-size: 1.4em;
    margin-bottom: 20px;
    font-family: 'Gilroy', sans-serif;
}

.lista-insights {
    list-style: none;
    padding: 0;
    margin: 0;
}

.lista-insights li {
    padding: 15px 0;
    border-bottom: 1px solid #E1ECFA;
    line-height: 1.7;
    position: relative;
    padding-left: 30px;
}

.lista-insights li:last-child {
    border-bottom: none;
}

.lista-insights li::before {
    content: "📊";
    position: absolute;
    left: 0;
    font-size: 1.2em;
}

/* Responsive */
@media (max-width: 768px) {
    .comparativa-actividades {
        padding: 30px 20px;
        margin: 30px -15px;
        border-radius: 0;
    }
    
    .tabla-tours-comparativa {
        font-size: 0.85em;
    }
    
    .tabla-tours-comparativa th,
    .tabla-tours-comparativa td {
        padding: 12px 8px;
    }
    
    .insights-reservas {
        padding: 20px;
    }
}

/* Estilos para BLUF */
.intro-principal {
    margin-bottom: 40px;
}

.bluf-answer {
    font-size: 1.15em;
    line-height: 1.7;
    color: #2c3e50;
    background: #E8F4FD;
    padding: 20px 25px;
    border-left: 5px solid #009ABB;
    border-radius: 8px;
    margin-bottom: 20px;
}