/* Componentes para las páginas internas (servicios, zonas, preguntas) y mejoras del home */
html{scroll-padding-top:84px;}

/* Menú de escritorio: un poco más compacto para que quepan todas las opciones */
@media (min-width: 861px){
  .menu-movil{display:flex; align-items:center; gap:18px;}
  .logo{white-space:nowrap;}
  nav ul{gap:16px;}
  nav ul li a{font-size:.74rem; letter-spacing:.06em;}
  .nav-cta{white-space:nowrap; padding:10px 16px;}
}
@media (min-width: 861px) and (max-width: 1100px){
  nav ul{gap:11px;}
  nav ul li a{font-size:.68rem; letter-spacing:.03em;}
  .logo{font-size:1.05rem;}
}

/* Enlaces "ver más" dentro de las tarjetas de servicio */
.ver-mas{
  display:inline-block; margin-top:14px; font-size:.76rem; letter-spacing:.1em; text-transform:uppercase;
  color:var(--oro-claro); font-weight:600; border-bottom:1px solid rgba(201,162,39,.4); padding-bottom:2px;
}
.ver-mas:hover{color:var(--crema); border-color:var(--oro-claro);}

/* Chips que ahora son enlaces */
.zonas a, .chips a{
  border:1px solid rgba(201,162,39,.4); color:var(--oro-claro);
  padding:8px 16px; border-radius:2px; font-size:.82rem; letter-spacing:.03em;
  transition: background .25s ease, color .25s ease;
}
.zonas a:hover, .chips a:hover{background:rgba(201,162,39,.14); color:var(--crema);}
.chips{display:flex; flex-wrap:wrap; gap:10px; margin-top:22px;}
.chips-centro{justify-content:center; margin-top:34px;}

/* Hero de páginas internas */
.page-hero{
  position:relative; text-align:center; padding:150px 0 70px;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(110,20,35,.55), transparent 62%),
    linear-gradient(180deg, #1c1410 0%, var(--negro) 100%);
}
.page-hero .eyebrow{display:block; margin-bottom:18px;}
.page-hero h1{font-size:clamp(2rem,5.2vw,3.5rem); line-height:1.1; max-width:860px; margin:0 auto 20px;}
.page-hero .tagline{font-size:clamp(1.1rem,2vw,1.4rem); max-width:700px; margin:0 auto 30px; color:var(--crema); opacity:.92;}
.breadcrumb{font-size:.76rem; letter-spacing:.06em; color:rgba(243,233,214,.55); margin-bottom:22px;}
.breadcrumb a{color:var(--oro-claro);}
.breadcrumb a:hover{text-decoration:underline;}

/* Texto largo */
.contenido{max-width:820px; margin:0 auto;}
.contenido h2{font-size:clamp(1.45rem,3vw,2rem); margin:46px 0 14px;}
.contenido h2:first-child{margin-top:0;}
.contenido p{color:rgba(243,233,214,.84); margin-bottom:16px; font-size:1.02rem;}
.contenido a{color:var(--oro-claro); text-decoration:underline; text-underline-offset:3px;}
.lista-check{list-style:none; margin:10px 0 18px;}
.lista-check li{position:relative; padding:8px 0 8px 30px; color:rgba(243,233,214,.88); border-bottom:1px solid rgba(201,162,39,.1);}
.lista-check li::before{content:"★"; position:absolute; left:0; top:8px; color:var(--oro);}

/* Tarjetas de enlaces */
.enlaces-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(230px,1fr)); gap:18px;}
.enlace-card{
  display:block; background:linear-gradient(160deg, var(--bronce), #1b140e);
  border:1px solid rgba(201,162,39,.16); padding:24px 22px; border-radius:3px;
  transition:border-color .3s ease, transform .3s ease;
}
.enlace-card:hover{border-color:rgba(201,162,39,.55); transform:translateY(-3px);}
.enlace-card h3{font-size:1.02rem; margin-bottom:8px;}
.enlace-card p{font-size:.88rem; color:rgba(243,233,214,.7); margin-bottom:10px;}
.enlace-card span{font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; color:var(--oro-claro); font-weight:600;}
.seccion-alt{background:var(--bronce);}
.seccion-corta{padding:70px 0;}
.seccion-corta .section-head{margin-bottom:34px;}

/* Preguntas frecuentes */
.faq{max-width:820px; margin:0 auto;}
.faq h3.grupo{font-size:1.15rem; margin:34px 0 14px; color:var(--oro-claro);}
.faq details{
  border:1px solid rgba(201,162,39,.2); background:var(--bronce);
  margin-bottom:12px; border-radius:3px;
}
.faq summary{
  cursor:pointer; list-style:none; padding:18px 52px 18px 22px; position:relative;
  font-weight:600; font-size:1rem; color:var(--crema);
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{
  content:"+"; position:absolute; right:22px; top:50%; transform:translateY(-50%);
  font-size:1.4rem; color:var(--oro); transition:transform .25s ease;
}
.faq details[open] summary::after{content:"–";}
.faq details[open]{border-color:rgba(201,162,39,.5);}
.faq .respuesta{padding:0 22px 20px; color:rgba(243,233,214,.82);}
.faq .respuesta p{margin-bottom:0;}

/* Llamado final */
.cta-final{text-align:center; max-width:640px; margin:0 auto;}
.cta-final h2{font-size:clamp(1.6rem,3.4vw,2.4rem); margin-bottom:16px;}
.cta-final p{color:rgba(243,233,214,.78); margin-bottom:28px;}
.cta-final .cta-group{margin-top:0;}

/* Pasos */
.pasos{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:22px; margin-top:10px;}
.paso{text-align:left;}
.paso .num{
  font-family:'Cinzel',serif; color:var(--oro); font-weight:700; font-size:1.1rem;
  border:1px solid var(--oro); border-radius:50%; width:38px; height:38px;
  display:flex; align-items:center; justify-content:center; margin-bottom:12px;
}
.paso h3{font-size:1rem; margin-bottom:6px;}
.paso p{font-size:.9rem; color:rgba(243,233,214,.72);}

/* Footer con enlaces internos */
.footer-cols{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:30px;
  text-align:left; margin:10px 0 36px; padding-bottom:30px; border-bottom:1px solid rgba(201,162,39,.12);
}
.footer-cols h4{font-family:'Cinzel',serif; font-size:.9rem; letter-spacing:.08em; margin-bottom:12px; color:var(--oro-claro);}
.footer-cols a{display:block; font-size:.86rem; color:rgba(243,233,214,.68); padding:4px 0;}
.footer-cols a:hover{color:var(--oro-claro);}
.btn-llamar{border:1px solid rgba(243,233,214,.35); color:var(--crema);}
.btn-llamar:hover{border-color:var(--oro-claro); color:var(--oro-claro);}
