/*!
   IV InabVirtual — personalización de la plantilla g5_hydrogen (custom/iv/iv.css)
   Se carga en todo el sitio desde Gantry: Hydrogen → Page Settings → Assets → CSS.
   ===================================================== */

/* ---- Colores de marca InabVirtual (cambiar aquí para todo el sitio) ----
   InabVirtual (logo) ........... fucsia #EE247D
   InabVirtual Brokers .......... fucsia #EE247D · azul subido #142d53 · texto #ffffff
                                  azul bajito #0082cc · footer #ffffff · texto footer #666666
                                  azul de contraste #004aad
   Néstor Andrade ............... azul #0082cc · azul de contraste #004aad
                                  azul bajito resaltado (videos cortos) #508AE2
*/
:root{
  --iv-fucsia:#EE247D;
  --iv-azul-subido:#142d53;
  --iv-azul-bajito:#0082cc;
  --iv-azul-contraste:#004aad;
  --iv-azul-resaltado:#508AE2;
  --iv-texto-claro:#ffffff;
  --iv-footer:#ffffff;
  --iv-footer-texto:#666666;
  /* Roles */
  --iv-boton:var(--iv-fucsia);
  --iv-boton-texto:var(--iv-texto-claro);
  --iv-boton-hover:var(--iv-azul-contraste);
  --iv-titulo:var(--iv-azul-subido);
  --iv-enlace:var(--iv-azul-bajito);
  --iv-fondo-cta:var(--iv-azul-subido);
}

/* ---- Botones con los colores de marca ---- */
.iv-boton,.iv-carrusel__more,.cta-box .cta-btn,.cta-btn,
a.button,button.button,.button,.btn-primary,a.readmore,.readmore a{
  display:inline-block;background:var(--iv-boton);color:var(--iv-boton-texto);border:2px solid var(--iv-boton);
  font-weight:700;padding:.7rem 1.6rem;border-radius:6px;text-decoration:none;line-height:1.3;
  transition:background-color .2s,border-color .2s,color .2s}
.iv-boton:hover,.iv-boton:focus-visible,.iv-carrusel__more:hover,.iv-carrusel__more:focus-visible,
.cta-btn:hover,.cta-btn:focus-visible,a.button:hover,.button:hover,.btn-primary:hover,a.readmore:hover,.readmore a:hover{
  background:var(--iv-boton-hover);border-color:var(--iv-boton-hover);color:var(--iv-boton-texto);text-decoration:none;opacity:1}
.cta-box .cta-btn.secondary,.cta-btn.secondary{background:transparent;color:var(--iv-texto-claro);border-color:var(--iv-texto-claro)}
.cta-box .cta-btn.secondary:hover,.cta-btn.secondary:hover,.cta-btn.secondary:focus-visible{background:var(--iv-fucsia);border-color:var(--iv-fucsia)}
.iv-boton:focus-visible,.cta-btn:focus-visible,.iv-carrusel__more:focus-visible{outline:3px solid var(--iv-azul-resaltado);outline-offset:2px}
.cta-box{background:var(--iv-fondo-cta)}

/* Cajas y botones escritos con estilos incrustados en artículos (p. ej. 427 y 428): colores de marca */
.com-content-article__body [style*="#0f3460"]{background:var(--iv-fondo-cta)!important}
.com-content-article__body a[style*="#f59e0b"]{background:var(--iv-boton)!important;color:var(--iv-boton-texto)!important;border:2px solid var(--iv-boton)!important}
.com-content-article__body a[style*="#f59e0b"]:hover,.com-content-article__body a[style*="#f59e0b"]:focus-visible{background:var(--iv-boton-hover)!important;border-color:var(--iv-boton-hover)!important}
.com-content-article__body [style*="#0f3460"] a[style*="transparent"]:hover{background:var(--iv-fucsia)!important;border-color:var(--iv-fucsia)!important}

/* ---- Tarjetas de artículos: portada en 3 filas de 3 columnas (módulo 248, 9 artículos) ---- */
.iv-cards{list-style:none;margin:0;padding:0;display:grid;gap:1.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:799px){.iv-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:519px){.iv-cards{grid-template-columns:1fr}}
/* Imagen completa: se ve entera en un marco 4:3; los bordes se rellenan con la misma imagen desenfocada */
.iv-card__media.iv-card__media--completa{position:relative;aspect-ratio:4/3;background:#f2f5f9}
.iv-card__media.iv-card__media--completa::before{content:"";position:absolute;inset:-12px;background:var(--iv-fondo) center/cover no-repeat;filter:blur(14px) brightness(.9);opacity:.55}
.iv-card__media.iv-card__media--completa img{position:relative;object-fit:contain}
.iv-cards__pie{text-align:center;margin-top:1.75rem}
.iv-cards>li[hidden]{display:none}
.iv-boton[aria-busy="true"]{opacity:.7;cursor:progress}
button.iv-boton{cursor:pointer;font:inherit;font-weight:700}
.iv-parrilla__titulo{color:var(--iv-titulo);margin:0 0 1.25rem}
.position2.moduletable>.g-title{color:var(--iv-titulo);font-size:1.75rem;margin:0 0 1.25rem}
.iv-parrilla__vacio{color:#5b6573}
.iv-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid rgba(15,52,96,.1);border-radius:10px;overflow:hidden;box-shadow:0 2px 6px rgba(0,0,0,.05);transition:box-shadow .2s,transform .2s}
.iv-card:hover{box-shadow:0 8px 20px rgba(0,0,0,.12);transform:translateY(-2px)}
.iv-card__media{display:block;aspect-ratio:16/10;background:#eef1f4;overflow:hidden}
.iv-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.iv-card__body{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.1rem 1.2rem;flex:1}
.iv-card__meta{font-size:.78rem;color:#6b7480;text-transform:uppercase;letter-spacing:.04em;display:flex;flex-wrap:wrap;gap:.35rem .75rem}
.iv-card__title{font-size:1.05rem;line-height:1.35;margin:0}
.iv-card__title a{color:var(--iv-titulo);text-decoration:none}
.iv-card__title a:hover{text-decoration:underline;color:var(--iv-azul-contraste)}
.iv-card__text{font-size:.92rem;line-height:1.55;color:#3d4550;margin:0}
.iv-card__more{margin-top:auto;font-weight:600;font-size:.9rem;color:var(--iv-enlace);text-decoration:none}
.iv-carrusel{position:relative}
.iv-carrusel__track{list-style:none;margin:0;padding:.25rem 0 .75rem;display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.iv-carrusel__track::-webkit-scrollbar{display:none}
.iv-carrusel__item{flex:0 0 calc((100% - 2.5rem)/3);scroll-snap-align:start}
@media (max-width:959px){.iv-carrusel__item{flex-basis:calc((100% - 1.25rem)/2)}}
@media (max-width:599px){.iv-carrusel__item{flex-basis:85%}}
.iv-carrusel__controls{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:.5rem}
.iv-carrusel__btn{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--iv-azul-subido);background:#fff;color:var(--iv-azul-subido);font-size:1.4rem;line-height:1;cursor:pointer}
.iv-carrusel__btn:hover,.iv-carrusel__btn:focus-visible{background:var(--iv-fucsia);border-color:var(--iv-fucsia);color:#fff}
/* Galería del pie: una imagen a la vez (DJ-ImageSlider con diseño iv-galeria) */
.iv-galeria--una{max-width:340px;margin:0 auto}
.iv-galeria__marco{position:relative;aspect-ratio:4/3;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px rgba(20,45,83,.12)}
.iv-galeria--una .iv-galeria__item{position:absolute;inset:0;margin:0;display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s}
.iv-galeria--una .iv-galeria__item.is-activa{opacity:1;visibility:visible;transition:opacity .6s ease}
.iv-galeria--una .iv-galeria__item a{display:flex;flex:1;min-height:0}
.iv-galeria--una .iv-galeria__item img{display:block;width:100%;height:100%;min-height:0;flex:1;object-fit:contain;padding:8px;box-sizing:border-box}
.iv-galeria--una figcaption{font-size:.8rem;line-height:1.3;padding:.35rem .6rem;color:var(--iv-azul-subido);background:rgba(255,255,255,.92);text-align:center}
.iv-galeria__controles{display:flex;justify-content:center;align-items:center;gap:.75rem;margin-top:.6rem}
.iv-galeria__controles .iv-carrusel__btn{width:2rem;height:2rem;font-size:1.15rem}
.iv-galeria__contador{font-size:.8rem;color:inherit;opacity:.8;font-variant-numeric:tabular-nums;min-width:4.5em;text-align:center}
#g-footer .bottom3 .g-title{font-size:1.05rem;margin-bottom:.75rem}
#g-footer .mod-custom img{display:block;margin:1rem auto 0;border-radius:6px}
/* Testimonios (mod_custom con diseño iv-testimonios): marco vertical 3:4 como las fotos (800×1067), bordes con la misma imagen desenfocada */
.iv-galeria--testimonios .iv-galeria__marco{aspect-ratio:3/4;background:var(--iv-azul-subido)}
.iv-galeria--testimonios .iv-galeria__item::before{content:"";position:absolute;inset:-12px;background:var(--iv-fondo) center/cover no-repeat;filter:blur(14px) brightness(.75);opacity:.6}
.iv-galeria--testimonios .iv-galeria__item img{position:relative;padding:0}
#g-footer .bottom4 .g-title{font-size:1.05rem;margin-bottom:.75rem}
@media (prefers-reduced-motion:reduce){.iv-galeria--una .iv-galeria__item{transition:none}}
#g-footer img{max-width:100%;height:auto}
#g-footer .moduletable{margin-bottom:1.5rem}
/* Artículos: estilo unificado en custom/iv/iv-articulos.css */
.iv-cta{clear:both}
@media (prefers-reduced-motion:reduce){.iv-card,.iv-boton,.cta-btn,.button{transition:none}.iv-card:hover{transform:none}}
