/*
 * main.css v1.2.1 — Fixes: footer nav colores, galería paquetes, iconos, sidebar blog
 */

/* ── Tipografía ─────────────────────────────── */
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--clr-dark)}
p{margin-bottom:1rem}
p:last-child{margin-bottom:0}
strong{font-weight:700}

/* ── Secciones ──────────────────────────────── */
.section{padding-block:clamp(3rem,7vw,6rem)}
.section-header{margin-bottom:3rem}
.section-label{display:inline-block;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--clr-accent);margin-bottom:.5rem}
.section-heading{font-family:var(--font-heading);font-size:clamp(1.6rem,4vw,2.5rem);color:var(--clr-dark);margin-bottom:.5rem}
.section-subtitle{font-size:1.05rem;color:var(--clr-mid)}
.text-center{text-align:center}
.text-accent{color:var(--clr-accent)}
.mt-lg{margin-top:2rem}
.tl-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.tl-icon svg{width:100%;height:100%}

/* ══ ABOUT ══════════════════════════════════ */
.about{background:var(--clr-light)}
.about__grid{display:grid;grid-template-columns:40% 60%;gap:3.5rem;align-items:center}
.about__media{border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.15);aspect-ratio:4/3}
.about__media picture{height:100%}
.about__img{width:100%;height:100%;object-fit:cover}
.about__content .section-heading{margin-bottom:1rem;font-size:clamp(1.4rem,3vw,2rem)}
.about__content p{color:var(--clr-mid);margin-bottom:1.5rem}
.about__cta{display:inline-flex;align-items:center;gap:.5rem;background:var(--clr-accent);color:#fff;padding:.75rem 1.75rem;font-size:.95rem;font-weight:700;border-radius:var(--radius);border:2px solid var(--clr-accent);transition:all .2s;box-shadow:0 2px 10px rgba(252,132,4,.3)}
.about__cta:hover{background:var(--clr-accent-dark);transform:translateY(-1px)}
.about__pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.about__pillar{background:#fff;border-radius:var(--radius);padding:1.35rem 1.15rem;border-top:3px solid var(--clr-accent);box-shadow:0 2px 12px rgba(0,0,0,.06)}
.about__pillar h3{font-size:1rem;margin-bottom:.45rem}
.about__pillar p{font-size:.88rem;color:var(--clr-mid);margin:0;line-height:1.5}

/* ══ SERVICIOS ══════════════════════════════ */
.servicios__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}
.servicio-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s;position:relative}
.servicio-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(0,0,0,.15)}
.servicio-card picture{display:block;height:200px;overflow:hidden}
.servicio-card__img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.servicio-card:hover .servicio-card__img{transform:scale(1.05)}
/* Placeholder cuando no hay imagen configurada */
.servicio-card__placeholder{height:200px;background:linear-gradient(135deg,var(--clr-light) 0%,#e8e8e8 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--clr-mid);font-size:.85rem;text-align:center;padding:1rem}
.servicio-card__placeholder svg{width:36px;height:36px;opacity:.4}
.servicio-card__body{padding:1.35rem}
.servicio-card__title{font-size:1.15rem;margin-bottom:.35rem}
.servicio-card__desc{font-size:.9rem;color:var(--clr-mid);margin-bottom:1rem}
/* Edit hint — solo visible para admins */
.servicio-card__edit-hint{position:absolute;top:.5rem;right:.5rem}
.servicio-card__edit-hint a{display:inline-flex;align-items:center;gap:.3rem;background:var(--clr-dark);color:#fff;font-size:.72rem;font-weight:600;padding:.25rem .55rem;border-radius:4px;opacity:.85}
.servicio-card__edit-hint a:hover{opacity:1;background:var(--clr-accent)}

/* ══ DESTINOS CAROUSEL (home) ═══════════════ */
.destinos-home{background:var(--clr-light)}
.destinos-carousel{position:relative;overflow:hidden;padding-inline:2.5rem}
.destinos-carousel__track{display:flex;gap:1.5rem;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.destinos-carousel .slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:rgba(0,0,0,.5);border-color:rgba(255,255,255,.3)}
.destinos-carousel .slider-btn--prev{left:0}
.destinos-carousel .slider-btn--next{right:0}
.destino-mini-card{flex:0 0 calc(25% - 1.125rem);border-radius:var(--radius-lg);overflow:hidden;position:relative}
.destino-mini-card__link{display:block;position:relative;height:300px}
.destino-mini-card picture{height:100%}
.destino-mini-card__img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.destino-mini-card:hover .destino-mini-card__img{transform:scale(1.05)}
.destino-mini-card__body{position:absolute;bottom:0;left:0;right:0;padding:1.1rem;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 100%);color:#fff}
.destino-mini-card__title{font-size:1.05rem;color:#fff;margin-bottom:.2rem}
.destino-mini-card__location{font-size:.8rem;opacity:.85;margin-bottom:.5rem}

/* ══ TESTIMONIOS ════════════════════════════ */
.testimonios{background:var(--clr-light)}
.testimonios__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}
.testimonio-card{background:#fff;border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow);position:relative}
.testimonio-card::before{content:'\201C';font-size:5rem;color:var(--clr-accent);position:absolute;top:-.75rem;left:1rem;font-family:Georgia,serif;line-height:1;opacity:.25}
.testimonio-card__text{color:var(--clr-mid);font-style:italic;margin-bottom:1rem;font-size:.95rem;line-height:1.65}
.testimonio-card__author{border-top:1px solid rgba(0,0,0,.08);padding-top:.75rem}
.testimonio-card__author cite{font-style:normal;display:flex;flex-direction:column;gap:.15rem}
.testimonio-card__author strong{font-size:.9rem}
.testimonio-card__author span{font-size:.8rem;color:var(--clr-mid)}

/* ══ NEWSLETTER ══════════════════════════════ */
.newsletter{background:var(--clr-dark);color:#fff}
.newsletter .section-heading{color:#fff;margin-bottom:.5rem}
.newsletter p{color:rgba(255,255,255,.7);margin-bottom:1.5rem}
.newsletter__fields{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:1.5rem}
.newsletter__fields .form-input{max-width:220px;border:1.5px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff;border-radius:var(--radius);padding:.7rem 1rem;font-family:var(--font-body);font-size:.95rem}
.newsletter__fields .form-input::placeholder{color:rgba(255,255,255,.45)}
.newsletter__fields .form-input:focus{outline:none;border-color:var(--clr-accent)}
.newsletter__fields .btn--primary{padding:.7rem 1.6rem;font-size:.95rem}

/* ══ PAQUETES ═══════════════════════════════════
   Hero
═══════════════════════════════════════════════ */
.paquetes-hero{position:relative;height:55vh;min-height:340px;overflow:hidden;background:var(--clr-dark)}
.paquetes-hero picture,.paquetes-hero__img{height:100%;width:100%;object-fit:cover;display:block}
.paquetes-hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.25),rgba(0,0,0,.65))}
.paquetes-hero__content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;gap:1.25rem}
.paquetes-hero__content h1{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,3rem);color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.4)}

/* FIX: botón hero paquetes  */
.paquetes-hero .btn{
  background:rgba(255,255,255,.15);
  color:#fff;
  border:2px solid rgba(255,255,255,.7);
  padding:.75rem 2rem;
  font-size:.95rem;
  font-weight:700;
  backdrop-filter:blur(6px);
  border-radius:var(--radius-lg);
}
.paquetes-hero .btn:hover{background:#fff;color:var(--clr-dark);border-color:#fff}

/* Filtros */
.paquetes-filters{position:sticky;top:var(--header-h);z-index:50;background:#fff;border-bottom:1px solid rgba(0,0,0,.08);padding:.85rem 0;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.filter-tabs{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center;margin-bottom:.5rem}
.filter-tab{padding:.42rem 1.1rem;border-radius:100px;border:2px solid transparent;font-size:.85rem;font-weight:600;cursor:pointer;background:transparent;color:var(--clr-mid);transition:all .2s}
.filter-tab:hover{border-color:var(--clr-accent);color:var(--clr-accent)}
.filter-tab.is-active{background:var(--clr-accent);color:#fff;border-color:var(--clr-accent)}
.filter-zona{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}
.filter-zona-label{color:var(--clr-mid);font-weight:700;align-self:center;font-size:.8rem}
.filter-zona-btn{padding:.28rem .8rem;border-radius:100px;border:1.5px solid #ddd;cursor:pointer;background:#fff;font-size:.8rem;transition:all .2s}
.filter-zona-btn:hover,.filter-zona-btn.is-active{border-color:var(--clr-green);color:var(--clr-green);background:rgba(123,133,63,.08)}

/* Pack grid */
.paquetes-grid{padding-block:2.5rem}
.paquetes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.75rem}

/* ══ PACK CARD ══════════════════════════════ */
.pack-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column}
.pack-card[data-hidden="true"]{display:none}
.pack-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px rgba(0,0,0,.15)}

/* Media container */
.pack-card__media{position:relative;height:220px;overflow:hidden;background:var(--clr-light)}

/* FIX GALERÍA: imagen única */
.pack-card__media > .pack-card__img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s;display:block;
}
.pack-card:hover .pack-card__media > .pack-card__img{transform:scale(1.05)}

/* FIX GALERÍA: slider multi-imagen — posicionamiento correcto */
.pack-card__img-slider{
  position:relative;
  width:100%;height:100%;
  overflow:hidden;
}
.pack-card__img-slider .pack-card__img{
  position:absolute;
  inset:0;
  width:100%;height:100%;
  object-fit:cover;
  opacity:0;
  transition:opacity .4s ease;
  pointer-events:none;
  display:block !important;   /* Siempre en DOM, solo cambia opacity */
}
/* La imagen activa — controlada solo por clase .is-current */
.pack-card__img-slider .pack-card__img.is-current{
  opacity:1;
  pointer-events:auto;
}

/* Botones de nav de galería */
.pack-card__img-nav{position:absolute;bottom:.5rem;right:.75rem;display:flex;gap:.3rem;z-index:3}
.pack-card__img-nav button{
  background:rgba(0,0,0,.6);border:none;color:#fff;
  width:26px;height:26px;border-radius:50%;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s;padding:0;
}
.pack-card__img-nav button:hover{background:var(--clr-accent)}
.pack-card__img-nav .tl-icon{width:9px;height:9px}

/* Badges */
.pack-card__badge-tipo{position:absolute;top:.75rem;left:.75rem;background:var(--clr-accent);color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.22rem .65rem;border-radius:100px;z-index:2}
.pack-card__badge-extra{position:absolute;top:.75rem;right:.75rem;background:var(--clr-dark);color:#fff;font-size:.7rem;font-weight:700;padding:.22rem .65rem;border-radius:100px;z-index:2}

/* Body */
.pack-card__body{padding:1.25rem;flex:1;display:flex;flex-direction:column}
.pack-card__location{font-size:.78rem;color:var(--clr-mid);margin-bottom:.25rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}
.pack-card__title{font-size:1.1rem;font-family:var(--font-heading);margin-bottom:.5rem;line-height:1.25}

/* FIX: icono avión pequeño e inline */
.pack-card__duracion{
  display:inline-flex;align-items:center;gap:.35rem;
  font-size:.82rem;color:var(--clr-mid);margin-bottom:.5rem;font-weight:500;
}
.pack-card__duracion .tl-icon{
  width:13px !important;height:13px !important;
  color:var(--clr-accent);flex-shrink:0;
}
.pack-card__duracion .tl-icon svg{width:13px;height:13px}

/* FIX ICONOS: los servicios incluidos — tamaño controlado */
.pack-card__servicios{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.75rem;align-items:center}
.pack-card__servicio-icon{
  width:30px;height:30px;
  background:var(--clr-light);
  border-radius:6px;
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--clr-green);
  flex-shrink:0;
  transition:background .2s,color .2s;
  cursor:default;
}
.pack-card__servicio-icon:hover{background:var(--clr-green);color:#fff}
/* El SVG dentro del span de iconos de servicio */
.pack-card__servicio-icon svg{
  width:14px;height:14px;
  display:block;flex-shrink:0;
}

.pack-card__desc{font-size:.88rem;color:var(--clr-mid);margin-bottom:auto;padding-bottom:1rem;line-height:1.5}
.pack-card__footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.06)}
.pack-card__price{font-weight:700;color:var(--clr-dark);font-size:1.05rem;line-height:1.2}
.pack-card__price span{font-size:.78rem;font-weight:400;color:var(--clr-mid)}
.pack-card__cta.btn{flex-shrink:0;font-size:.82rem;padding:.45rem .9rem}
.paquetes-noresult{grid-column:1/-1;text-align:center;padding:3rem;color:var(--clr-mid);display:none}
.paquetes-noresult.is-visible{display:block}

/* ══ DESTINOS página ═════════════════════════ */
.destinos-hero{position:relative;height:55vh;min-height:340px;overflow:hidden;background:var(--clr-dark)}
.destinos-hero picture,.destinos-hero__img{height:100%;width:100%;object-fit:cover;display:block}
.destinos-hero__overlay{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.destinos-hero__content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;gap:1.25rem}
.destinos-hero__content h1{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,3rem);color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding-block:3rem}
.post-card{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);background:#fff;transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column}
.post-card:hover{transform:translateY(-4px);box-shadow:0 10px 32px rgba(0,0,0,.14)}
.post-card__thumb{display:block;height:210px;overflow:hidden}
.post-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post-card:hover .post-card__thumb img{transform:scale(1.05)}
.post-card__body{padding:1.35rem;flex:1;display:flex;flex-direction:column}
.post-card__meta{font-size:.78rem;color:var(--clr-mid);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.post-card__title{font-size:1.1rem;font-family:var(--font-heading);margin-bottom:.5rem}
.post-card__title a{color:var(--clr-dark);transition:color .2s}
.post-card__title a:hover{color:var(--clr-accent)}
.post-card__excerpt{font-size:.88rem;color:var(--clr-mid);margin-bottom:1rem;flex:1;line-height:1.55}
.post-card__more{font-size:.85rem;font-weight:700;color:var(--clr-accent)}
.post-card__more:hover{color:var(--clr-accent-dark)}
.post-cats{display:flex;flex-wrap:wrap;gap:.35rem}
.post-cat{display:inline-block;padding:.2rem .7rem;background:var(--clr-accent);color:#fff;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:100px}

/* ══ SINGLE POST CON SIDEBAR ════════════════ */
.single-post-header{background:var(--clr-light);padding-block:2rem;border-bottom:1px solid rgba(0,0,0,.08)}
.single-post-header h1{font-size:clamp(1.5rem,4vw,2.5rem)}
.single-post-meta{font-size:.85rem;color:var(--clr-mid);margin-top:.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}
.single-post-thumb{width:100%;max-height:480px;object-fit:cover;border-radius:var(--radius-lg);margin-block:2rem}

/* Layout con sidebar */
.single-layout{
  display:grid;
  grid-template-columns:1fr 320px;
  gap:3rem;
  align-items:start;
  padding-block:2.5rem;
}
/* Contenido del post */
.post-content{max-width:100%}
.post-content h2{font-size:1.5rem;margin-block:1.75rem .75rem;color:var(--clr-dark)}
.post-content h3{font-size:1.2rem;margin-block:1.25rem .5rem;color:var(--clr-dark)}
.post-content p{margin-bottom:1.15rem;line-height:1.78}
.post-content a{color:var(--clr-accent);text-decoration:underline}
.post-content ul,.post-content ol{padding-left:1.5rem;margin-bottom:1rem;color:var(--clr-mid)}
.post-content li{margin-bottom:.4rem}
.post-content img{border-radius:var(--radius);margin-block:1.5rem}
.post-content blockquote{border-left:4px solid var(--clr-accent);padding:1rem 1.25rem;margin-block:1.5rem;font-style:italic;color:var(--clr-mid);background:rgba(252,132,4,.04);border-radius:0 var(--radius) var(--radius) 0}

/* Lead paragraph */
.post-lead{font-size:1.15rem;color:var(--clr-dark);font-weight:500;line-height:1.7;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--clr-light)}

/* Secciones del post (campo estructurado) */
.post-section{margin-bottom:2.5rem}
.post-section__title{font-size:1.35rem;font-family:var(--font-heading);color:var(--clr-dark);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--clr-light)}
.post-section__body{color:var(--clr-mid);line-height:1.75}
.post-section__body p{margin-bottom:.85rem}
.post-section--with-img{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
/* Imagen alterna: secciones 2, 4 → imagen a la IZQUIERDA */
.post-section--img-left .post-section__img{order:-1}
.post-section__img{border-radius:var(--radius-lg);overflow:hidden}
.post-section__img img{width:100%;height:240px;object-fit:cover}
/* Quote destacado */
.post-quote{
  background:var(--clr-dark);color:#fff;
  padding:1.75rem;border-radius:var(--radius-lg);
  margin-block:2.5rem;position:relative;
}
.post-quote::before{content:'\201C';font-size:6rem;color:var(--clr-accent);position:absolute;top:-1.5rem;left:1rem;font-family:Georgia,serif;line-height:1;opacity:.4}
.post-quote__text{font-size:1.2rem;font-style:italic;line-height:1.6;margin:0}
.post-quote__author{font-size:.85rem;opacity:.7;margin-top:.75rem;font-style:normal}

/* ── Sidebar ───────────────────────────────── */
.post-sidebar{
  position:sticky;
  top:calc(72px + 1.5rem); /* valor fijo como fallback si --header-h no está disponible */
  top:calc(var(--header-h, 72px) + 1.5rem);
  display:flex;flex-direction:column;gap:1.5rem;
  /* align-self:start es necesario para que sticky funcione en grid */
  align-self:start;
}
/* Widget box genérico */
.sidebar-widget{
  background:#fff;border-radius:var(--radius-lg);
  padding:1.35rem;box-shadow:var(--shadow);
  border:1px solid rgba(0,0,0,.06);
}
.sidebar-widget__title{
  font-size:.8rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;color:var(--clr-mid);
  margin-bottom:1rem;padding-bottom:.6rem;
  border-bottom:2px solid var(--clr-light);
}
/* Posts relacionados */
.sidebar-related{display:flex;flex-direction:column;gap:1rem}
.sidebar-post{display:grid;grid-template-columns:72px 1fr;gap:.75rem;align-items:start}
.sidebar-post__thumb{width:72px;height:72px;border-radius:var(--radius);overflow:hidden;flex-shrink:0}
.sidebar-post__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.sidebar-post:hover .sidebar-post__thumb img{transform:scale(1.05)}
.sidebar-post__title{font-size:.88rem;font-weight:600;color:var(--clr-dark);line-height:1.35;transition:color .2s}
.sidebar-post:hover .sidebar-post__title{color:var(--clr-accent)}
.sidebar-post__date{font-size:.75rem;color:var(--clr-mid);margin-top:.2rem}
/* Widget CTA paquetes */
.sidebar-cta{
  background:linear-gradient(135deg,var(--clr-dark) 0%,#2d3748 100%);
  border-radius:var(--radius-lg);padding:1.5rem;
  text-align:center;color:#fff;
}
/* FIX: icono avión en sidebar — tamaño controlado */
.sidebar-cta__icon{
  display:flex;align-items:center;justify-content:center;
  margin-bottom:.75rem;
}
.sidebar-cta__icon .tl-icon{
  width:36px !important;height:36px !important;
  color:var(--clr-accent);
}
.sidebar-cta__icon .tl-icon svg{width:36px;height:36px}
.sidebar-cta__title{font-family:var(--font-heading);font-size:1.1rem;color:#fff;margin-bottom:.5rem}
.sidebar-cta__text{font-size:.85rem;color:rgba(255,255,255,.7);margin-bottom:1.25rem}
.sidebar-cta .btn{width:100%;justify-content:center}
.sidebar-cta .btn--wa{margin-top:.6rem}

/* Post CTA bottom */
.post-cta-box{background:var(--clr-light);border-radius:var(--radius-lg);padding:2rem;text-align:center;margin-top:2.5rem}
.post-cta-box h3{margin-bottom:.5rem}
.post-cta-box p{color:var(--clr-mid);margin-bottom:1.25rem}
.post-cta-box .btn-group{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* ══ CONTACTO ════════════════════════════════ */
.contacto-hero{position:relative;height:42vh;min-height:280px;overflow:hidden;background:var(--clr-dark)}
.contacto-hero picture,.contacto-hero__img{height:100%;width:100%;object-fit:cover;display:block}
.contacto-hero__overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.contacto-hero__content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff}
.contacto-hero__content h1{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,3rem);color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.contacto-section{background:var(--clr-light)}
.contacto-grid{display:grid;grid-template-columns:45% 55%;gap:3.5rem;align-items:start}
.contacto-info h2{font-size:1.5rem;margin-bottom:.75rem}
.contacto-info > p{color:var(--clr-mid);margin-bottom:1.5rem}
.btn--wa{display:inline-flex;align-items:center;gap:.6rem;background:#25D366;color:#fff;border:2px solid #25D366;padding:.8rem 1.75rem;font-size:.95rem;font-weight:700;border-radius:var(--radius);box-shadow:0 2px 12px rgba(37,211,102,.3);transition:all .2s;margin-bottom:1.75rem}
.btn--wa .tl-icon{width:20px;height:20px;flex-shrink:0}
.btn--wa:hover{background:#1eb354;border-color:#1eb354;transform:translateY(-1px)}
.contacto-data-list{display:flex;flex-direction:column;gap:1rem}
.contacto-data-item{display:flex;align-items:center;gap:.75rem;font-size:.95rem}
.contacto-data-item .tl-icon{width:18px;height:18px;color:var(--clr-accent);flex-shrink:0}
.contacto-data-item a{color:var(--clr-dark);transition:color .2s}
.contacto-data-item a:hover{color:var(--clr-accent)}
.contacto-form-wrap{background:#fff;border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow)}
.form-group{margin-bottom:1.25rem}
.form-label{display:block;font-size:.88rem;font-weight:600;color:var(--clr-dark);margin-bottom:.4rem}
.form-label .required{color:var(--clr-accent)}
.form-input,.form-select,.form-textarea{width:100%;padding:.7rem 1rem;border:2px solid #e5e5e5;border-radius:var(--radius);font-family:var(--font-body);font-size:.95rem;color:var(--clr-dark);background:#fff;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--clr-accent);box-shadow:0 0 0 3px rgba(252,132,4,.12)}
.form-textarea{resize:vertical;min-height:130px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-message{margin-top:.75rem;font-size:.9rem;padding:.65rem 1rem;border-radius:var(--radius);display:none}
.form-message.is-success{display:block;background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}
.form-message.is-error{display:block;background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.form-error{font-size:.8rem;color:#dc2626;margin-top:.3rem;display:none}
.form-error.is-visible{display:block}
.form-input.has-error,.form-textarea.has-error{border-color:#dc2626}

/* ══ SCROLL TOP ══════════════════════════════ */
.scroll-top{position:fixed;bottom:5.5rem;right:1.5rem;z-index:199;background:var(--clr-dark);color:#fff;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);transition:all .3s;opacity:0;transform:translateY(8px);pointer-events:none}
.scroll-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}
.scroll-top:hover{background:var(--clr-accent)}
.scroll-top .tl-icon{width:16px;height:16px}

/* ══ FOOTER — FIX colores del menú ══════════ */
.site-footer{background:var(--clr-dark);color:rgba(255,255,255,.8);padding-top:3.5rem}
.footer__grid{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:3rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.1)}
.footer__brand{display:flex;flex-direction:column;gap:1rem}
.footer__logo{max-width:180px;height:auto}
.footer__logo-text{color:#fff;font-size:1.1rem;font-weight:700}
.footer__heading{font-family:var(--font-heading);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.45);margin-bottom:.85rem}
.footer__nav-list{display:flex;flex-direction:column;gap:.5rem}
/* FIX: el walker genera .nav__link — sobreescribir en contexto footer */
.footer__nav-list .nav__link,
.footer__nav-list a{
  color:rgba(255,255,255,.75) !important;  /* override header color */
  font-size:.9rem;
  padding:0 !important;                    /* override header padding */
  border-radius:0 !important;
  background:transparent !important;
  display:block;
  transition:color .2s;
}
.footer__nav-list .nav__link:hover,
.footer__nav-list a:hover{
  color:var(--clr-accent) !important;
  background:transparent !important;
}
.footer__link{color:rgba(255,255,255,.75);font-size:.9rem;display:inline-flex;align-items:center;gap:.4rem;transition:color .2s}
.footer__link:hover{color:var(--clr-accent)}
.footer__link .tl-icon{width:14px;height:14px;flex-shrink:0}
.footer__contact-list{display:flex;flex-direction:column;gap:.65rem}
.footer__social{display:flex;gap:.75rem;margin-top:.5rem}
.footer__social-link{color:rgba(255,255,255,.75);width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;transition:all .2s}
.footer__social-link:hover{background:var(--clr-accent);border-color:var(--clr-accent);color:#fff}
.footer__social-link .tl-icon{width:16px;height:16px}
.footer__bottom{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding-block:1.25rem;font-size:.8rem;color:rgba(255,255,255,.4)}
.footer__legal-logos{display:flex;align-items:center;gap:.75rem}
.footer__cuit,.footer__copy{margin:0}

/* ══ PÁGINAS GENÉRICAS ════════════════════════ */
.page-hero{position:relative;height:40vh;min-height:260px;overflow:hidden;background:var(--clr-dark)}
.page-hero picture,.page-hero__img{height:100%;width:100%;object-fit:cover;display:block}
.page-hero__overlay{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.page-hero__title{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-heading);font-size:clamp(1.5rem,4vw,3rem);text-shadow:0 2px 8px rgba(0,0,0,.35)}
.pagination{margin-top:2rem;text-align:center}
.pagination .page-numbers{display:inline-flex;align-items:center;gap:.25rem;flex-wrap:wrap;justify-content:center;list-style:none;padding:0}
.pagination a,.pagination span.current,.pagination span.dots{display:inline-flex;align-items:center;padding:.4rem .75rem;border-radius:var(--radius);border:1.5px solid #ddd;font-size:.9rem;color:var(--clr-dark);transition:all .2s}
.pagination a:hover{border-color:var(--clr-accent);color:var(--clr-accent)}
.pagination span.current{background:var(--clr-accent);border-color:var(--clr-accent);color:#fff}

/* ══ RESPONSIVE ══════════════════════════════ */
@media(max-width:1100px){
  .single-layout{grid-template-columns:1fr 280px;gap:2rem}
}
@media(max-width:1024px){
  .about__grid{grid-template-columns:1fr;gap:2.5rem}
  .about__pillars{grid-template-columns:1fr 1fr}
  .footer__grid{grid-template-columns:1fr 1fr}
  .destino-mini-card{flex:0 0 calc(50% - .75rem)}
  .contacto-grid{grid-template-columns:1fr;gap:2rem}
  .single-layout{grid-template-columns:1fr}
  .post-sidebar{position:static}
}
@media(max-width:640px){
  .about__pillars{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
  .footer__bottom{flex-direction:column;text-align:center}
  .destino-mini-card{flex:0 0 calc(85% - .75rem)}
  .form-row{grid-template-columns:1fr}
  .newsletter__fields{flex-direction:column;align-items:center;width:100%}
  .newsletter__fields .form-input{max-width:100%;width:100%}
  .post-section--with-img{grid-template-columns:1fr}
}
