/* ============================================================
   BONTURI-OT TOUR GUAINÍA — Capa comercial
   Precios · Por qué viajar · Vuelos · Legal · Móvil
   Complementa styles.css e itinerarios.css
   ============================================================ */

/* ============================================================
   PRECIOS EN LA TARJETA
   ============================================================ */
.tour-precio{
  display:flex;align-items:baseline;flex-wrap:wrap;gap:.45rem;
  padding:1.1rem 0 .3rem;
  border-top:1px dashed rgba(58,50,43,.18);
  margin-top:1rem;
}
.tour-precio .desde{
  font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--roca-500);
}
.tour-precio .valor{
  font-family:var(--serif);font-size:1.85rem;font-weight:700;line-height:1;
  color:var(--selva-800);letter-spacing:-.02em;
}
.tour-precio .unidad{font-size:.82rem;color:var(--roca-500);font-weight:600;}
.tour-precio .por-definir{
  font-family:var(--serif);font-size:1.3rem;color:var(--terracota);font-weight:700;
}
.precio-nota{
  font-size:.8rem;color:var(--roca-500);margin:.1rem 0 1.1rem;line-height:1.45;
}

/* Cinta de destacado en la tarjeta recomendada */
.tour.destacado{border:2px solid var(--dorado);box-shadow:0 12px 40px rgba(200,151,63,.22);}
.tour.destacado .tour-tag{background:var(--dorado);color:#3A2A08;}

/* ============================================================
   POR QUÉ VIAJAR CON BONTURI-OT
   ============================================================ */
.porque{background:var(--crema);}
.grid-porque{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.6rem;margin-top:3rem;}
.razon{
  background:var(--blanco);border-radius:var(--r-lg);padding:2rem 1.7rem;
  border:1px solid rgba(58,50,43,.08);box-shadow:var(--sombra-sm);
  transition:transform .3s ease,box-shadow .3s ease;
}
.razon:hover{transform:translateY(-6px);box-shadow:var(--sombra-md);}
.razon .ico{
  width:56px;height:56px;border-radius:16px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--selva-700),var(--selva-500));
  color:var(--dorado);margin-bottom:1.3rem;
}
.razon .ico svg{width:28px;height:28px;}
.razon h3{font-size:1.15rem;margin-bottom:.5rem;}
.razon p{margin:0;font-size:.94rem;color:var(--roca-700);}

/* ============================================================
   CAJA DE VUELOS
   ============================================================ */
.vuelos{
  margin-top:3rem;background:var(--selva-800);color:var(--crema);
  border-radius:var(--r-lg);overflow:hidden;
}
.vuelos-cabeza{
  padding:1.6rem clamp(1.4rem,4vw,2.2rem) 0;
  display:flex;align-items:center;gap:.8rem;
}
.vuelos-cabeza svg{width:30px;height:30px;color:var(--dorado);flex:none;}
.vuelos-cabeza h3{color:var(--crema);margin:0;font-size:1.35rem;}
.vuelos-opciones{
  display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;
  padding:1.4rem clamp(1.4rem,4vw,2.2rem) clamp(1.6rem,4vw,2.2rem);
}
@media(max-width:700px){.vuelos-opciones{grid-template-columns:1fr;}}
.vuelo-op{
  background:rgba(248,244,234,.07);border:1px solid rgba(248,244,234,.16);
  border-radius:var(--r-md);padding:1.4rem;
}
.vuelo-op strong{
  display:flex;align-items:center;gap:.5rem;
  font-family:var(--serif);font-size:1.08rem;color:var(--dorado);margin-bottom:.5rem;
}
.vuelo-op p{margin:0;font-size:.92rem;color:rgba(248,244,234,.8);}

/* ============================================================
   TESTIMONIOS CON DATOS COMPLETOS
   ============================================================ */
.test-cabeza{display:flex;align-items:center;gap:.9rem;margin-bottom:1rem;}
.test-avatar{
  width:52px;height:52px;border-radius:50%;flex:none;overflow:hidden;
  background:var(--selva-600);display:grid;place-items:center;
  font-family:var(--serif);font-size:1.2rem;font-weight:700;color:var(--dorado);
  border:2px solid rgba(200,151,63,.4);
}
.test-avatar img{width:100%;height:100%;object-fit:cover;}
.test-id strong{display:block;font-size:.98rem;color:var(--crema);font-family:var(--serif);}
.test-id span{display:block;font-size:.79rem;color:rgba(248,244,234,.6);}
.test .meta-viaje{
  display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem;
}
.test .meta-viaje span{
  font-size:.7rem;font-weight:700;letter-spacing:.06em;
  background:rgba(248,244,234,.1);color:rgba(248,244,234,.75);
  padding:.28rem .65rem;border-radius:999px;
}
.reseñas-enlace{text-align:center;margin-top:2.5rem;}

/* ============================================================
   FOOTER LEGAL
   ============================================================ */
.legal-franja{
  background:#050f09;color:rgba(248,244,234,.55);
  padding:1.6rem 0;font-size:.8rem;line-height:1.6;
}
.legal-datos{
  display:flex;flex-wrap:wrap;gap:.6rem 2rem;justify-content:center;
  text-align:center;margin-bottom:1.2rem;
}
.legal-datos div strong{
  display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--dorado);margin-bottom:.15rem;font-weight:800;
}
.legal-datos div span{color:rgba(248,244,234,.8);font-weight:600;font-size:.86rem;}
.legal-avisos{
  max-width:900px;margin-inline:auto;text-align:center;
  border-top:1px solid rgba(248,244,234,.08);padding-top:1.2rem;
  font-size:.74rem;color:rgba(248,244,234,.45);
}
.legal-avisos p{margin:0 0 .5rem;}
.legal-avisos p:last-child{margin-bottom:0;}

/* ============================================================
   PÁGINA LEGAL
   ============================================================ */
.doc-hero{
  background:var(--selva-900);color:var(--crema);
  padding:9rem 0 3.5rem;position:relative;overflow:hidden;
}
.doc-hero::before{
  content:"";position:absolute;inset:0;opacity:.13;
  background:url("../assets/img/drone-cerros.jpg") center/cover;
}
.doc-hero .contenedor{position:relative;}
.doc-hero h1{font-size:clamp(2rem,4.5vw,3.2rem);color:var(--crema);margin-bottom:.4rem;}
.doc-hero p{color:rgba(248,244,234,.75);margin:0;max-width:60ch;}
.doc-volver{
  display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem;font-weight:700;
  color:var(--dorado);margin-bottom:1.4rem;
}
.doc-volver:hover{text-decoration:underline;}

.doc-nav{
  background:var(--arena);padding:1.2rem 0;position:sticky;top:0;z-index:100;
  box-shadow:var(--sombra-sm);
}
.doc-nav ul{
  list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;
}
.doc-nav a{
  display:block;font-size:.82rem;font-weight:700;padding:.45rem 1rem;
  border-radius:999px;background:var(--crema);color:var(--selva-800);
  transition:background .2s,color .2s;
}
.doc-nav a:hover{background:var(--selva-700);color:var(--crema);}

.doc{padding:clamp(2.5rem,6vw,4.5rem) 0;}
.doc-bloque{max-width:820px;margin:0 auto clamp(3rem,6vw,4.5rem);scroll-margin-top:5rem;}
.doc-bloque:last-child{margin-bottom:0;}
.doc-bloque h2{
  font-size:clamp(1.5rem,3vw,2.1rem);padding-bottom:.6rem;margin-bottom:1.4rem;
  border-bottom:3px solid var(--terracota);
}
.doc-bloque h3{
  font-size:1.12rem;margin:2rem 0 .7rem;color:var(--selva-800);
}
.doc-bloque p,.doc-bloque li{color:var(--roca-700);font-size:.96rem;}
.doc-bloque ul,.doc-bloque ol{padding-left:1.3rem;margin:0 0 1.2rem;}
.doc-bloque li{margin-bottom:.5rem;}
.doc-bloque table{
  width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.92rem;
  background:var(--blanco);border-radius:var(--r-sm);overflow:hidden;box-shadow:var(--sombra-sm);
}
.doc-bloque th{
  background:var(--selva-700);color:var(--crema);text-align:left;
  padding:.8rem 1rem;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;
}
.doc-bloque td{padding:.8rem 1rem;border-top:1px solid rgba(58,50,43,.1);color:var(--roca-700);}
.doc-bloque td:first-child{font-weight:700;color:var(--selva-900);white-space:nowrap;}
.doc-tabla-scroll{overflow-x:auto;}

.doc-aviso{
  background:#FFF8E8;border-left:4px solid var(--dorado);
  border-radius:var(--r-sm);padding:1.2rem 1.4rem;margin:1.4rem 0;
}
.doc-aviso p{margin:0;font-size:.9rem;color:#6B5416;}
.doc-aviso strong{color:#4A3A0F;}

.doc-pendiente{
  display:inline-block;background:#FDE8E0;color:#8C3A16;
  font-size:.78rem;font-weight:800;padding:.15rem .55rem;border-radius:5px;
  letter-spacing:.03em;
}

/* ============================================================
   BARRA MÓVIL FIJA (precio + WhatsApp)
   ============================================================ */
.barra-movil{display:none;}

@media(max-width:760px){
  .barra-movil{
    display:flex;align-items:center;gap:.8rem;
    position:fixed;left:0;right:0;bottom:0;z-index:940;
    background:var(--selva-900);border-top:1px solid rgba(248,244,234,.14);
    padding:.7rem .9rem calc(.7rem + env(safe-area-inset-bottom,0px));
    box-shadow:0 -6px 24px rgba(11,33,23,.35);
  }
  .barra-movil .info{flex:1;min-width:0;line-height:1.2;}
  .barra-movil .info strong{
    display:block;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;
    color:rgba(248,244,234,.6);font-weight:700;
  }
  .barra-movil .info span{
    display:block;font-family:var(--serif);font-size:1.05rem;color:var(--dorado);font-weight:700;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .barra-movil .btn{padding:.8rem 1.15rem;font-size:.88rem;flex:none;}

  /* el botón flotante estorbaría con la barra */
  .wa-flotante{display:none;}
  /* espacio para que la barra no tape el pie */
  body{padding-bottom:74px;}
}

/* ============================================================
   AJUSTES MÓVIL
   ============================================================ */
@media(max-width:760px){
  html{scroll-padding-top:72px;}
  .seccion{padding:3.2rem 0;}
  .contenedor{width:min(100% - 2rem,var(--max));}
  h1{font-size:clamp(2rem,8.5vw,2.9rem);}
  h2{font-size:clamp(1.6rem,6.5vw,2.2rem);}
  .lead{font-size:1rem;}

  /* Hero más corto y legible en celular */
  .hero{min-height:auto;padding-top:6.5rem;padding-bottom:2.8rem;}
  .hero-sub{font-size:1rem;margin-bottom:1.6rem;}
  .hero-acciones{gap:.7rem;margin-bottom:2rem;}
  .hero-acciones .btn{width:100%;}
  .hero-datos{gap:1.1rem 1.6rem;padding-top:1.4rem;}
  .hero-dato strong{font-size:1.25rem;}
  .hero-dato span{font-size:.68rem;letter-spacing:.06em;}

  /* Tarjetas de experiencia a ancho completo */
  .grid-tours{grid-template-columns:1fr;gap:1.4rem;margin-top:2.5rem;}
  .tour-cuerpo{padding:1.3rem;}
  .tour-precio .valor{font-size:1.6rem;}

  /* Menos aire en bloques densos */
  .grid-cultura,.grid-porque,.grid-practica,.grid-test{gap:1rem;margin-top:2.2rem;}
  .carta,.razon,.bloque,.test{padding:1.5rem 1.3rem;}
  .grid-temp{gap:1.2rem;margin-top:2.5rem;}

  /* Galería más compacta */
  .galeria-grid{grid-auto-rows:132px;gap:.6rem;margin-top:2.2rem;}

  /* Manifiesto */
  .manifiesto blockquote{font-size:clamp(1.7rem,8vw,2.4rem);max-width:100%;}
  .manifiesto .sello{width:68px;height:68px;margin-bottom:1.4rem;}

  /* Modal de itinerario a pantalla completa */
  .modal{padding:0;}
  .modal-caja{border-radius:0;min-height:100%;}
  .itin-dia{padding-left:2.5rem;}
  .itin-dias::before{left:13px;}
  .itin-dia .num{width:28px;height:28px;font-size:.78rem;}
  .itin-pie{flex-direction:column;align-items:stretch;}
  .itin-pie .btn{width:100%;}

  /* Objetivos táctiles cómodos */
  .btn{padding:.95rem 1.5rem;min-height:48px;}
  .faq-q{padding-top:1.15rem;padding-bottom:1.15rem;min-height:48px;}
  .nav a{padding:.6rem 0;}

  /* Footer */
  .footer{padding-bottom:1.5rem;}
  .footer-bajo{flex-direction:column;gap:.5rem;text-align:center;}
  .legal-datos{gap:.9rem;flex-direction:column;}

  .doc-hero{padding-top:6.5rem;}
  .doc-nav{padding:.8rem 0;}
  .doc-nav a{font-size:.76rem;padding:.4rem .8rem;}
}

@media(max-width:420px){
  .galeria-grid{grid-auto-rows:112px;}
  .barra-movil .info span{font-size:.95rem;}
  .barra-movil .btn{padding:.75rem .95rem;font-size:.82rem;}
}
