/**
 * Videos page — mirrors index graphic line (fx-home / fx-video-showcase).
 * Scoped to .fx-videos-page. Does not modify index.php or famatex-home.css.
 * Spacing uses shared --fx-internal-space (48 / 36 / 28) like servicio, galería, legal.
 */
.fx-videos-page{
  --fx-videos-ink:#203b32;
  --fx-videos-copy:#5e7069;
  --fx-videos-line:#d8e5e0;
  --fx-videos-surface:#fff;
  --fx-videos-mint:#4BB597;
  --fx-videos-mint-deep:#287760;
  --fx-videos-mint-hover:#378f77;
  background:#fff;
  color:var(--fx-videos-ink);
}

/* Same as home: no uppercase eyebrow labels */
.fx-videos-page :is(.fx-eyebrow,.ns-kicker){display:none!important}

.fx-videos-page .fx-videos-showcase{
  background:#fff;
  padding:0;
}
.fx-videos-page .fx-videos{
  padding-top:32px;
  padding-bottom:28px;
  min-height:50vh;
}

/* Intro = tiendas-intro pattern */
.fx-videos-page .fx-videos-intro{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px 40px;
  margin-bottom:24px;
  text-align:left;
}
.fx-videos-page .fx-videos-intro__copy{
  min-width:0;
  flex:1 1 auto;
}
.fx-videos-page .fx-videos-intro__title{
  margin:0 0 8px;
  font-size:clamp(28px,3vw,40px)!important;
  font-weight:750!important;
  line-height:1.15!important;
  letter-spacing:-.035em!important;
  color:var(--fx-videos-ink);
  text-wrap:balance;
  white-space:normal;
}
.fx-videos-page .fx-videos-intro__lead{
  margin:0;
  max-width:none;
  font-size:15px;
  line-height:1.5;
  color:var(--fx-videos-copy);
}
@media(min-width:1000px){
  .fx-videos-page .fx-videos-intro__lead{white-space:nowrap}
}
.fx-videos-page .fx-videos-intro__cta{
  flex:0 0 auto;
}
.fx-videos-page .fx-videos-intro__cta-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:11px 18px;
  border:1px solid var(--fx-videos-line);
  border-radius:999px;
  background:#fff;
  color:var(--fx-videos-mint-deep);
  font-size:var(--fx-btn-font-size,13px);
  font-weight:650;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.fx-videos-page .fx-videos-intro__cta-btn:hover{
  background:var(--fx-videos-surface);
  border-color:var(--fx-videos-mint);
  color:#1d6252;
}
.fx-videos-page .fx-videos-intro__cta-btn svg{display:block;flex-shrink:0}
/* El glifo conserva el rojo de la plataforma; el botón sigue la línea del sitio. */
.fx-videos-page .fx-videos-yt-icon{
  width:22px;
  height:16px;
  color:#ff0000;
}

/* Filtros por tipo de video (el comportamiento ya vive en famatex-ui.js) */
.fx-videos-page .fx-videos-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 22px;
}
.fx-videos-page .fx-videos-filter{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:9px 16px;
  border:1px solid var(--fx-videos-line);
  border-radius:999px;
  background:#fff;
  color:var(--fx-videos-mint-deep);
  font-family:inherit;
  font-size:13px;
  font-weight:650;
  line-height:1.2;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.fx-videos-page .fx-videos-filter span{
  font-weight:550;
  color:var(--fx-videos-copy);
}
.fx-videos-page .fx-videos-filter:hover{border-color:var(--fx-videos-mint)}
.fx-videos-page .fx-videos-filter[aria-pressed="true"]{
  background:var(--fx-videos-mint);
  border-color:var(--fx-videos-mint);
  color:#fff;
}
.fx-videos-page .fx-videos-filter[aria-pressed="true"] span{color:#ffffffb3}
.fx-videos-page .fx-videos-filter:focus-visible{
  outline:3px solid var(--fx-videos-mint);
  outline-offset:3px;
}

/* Grid adapts to orientation: Shorts (9:16) dominate the current catalog */
.fx-videos-page .fx-videos-grid.fx-video-grid,
.fx-videos-page .fx-videos-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:20px;
  margin:0;
  padding:0;
  align-items:stretch;
}
/* Kill legacy home masonry (.fx-video-grid) side-title layout on this page */
.fx-videos-page .fx-videos-grid .fx-video,
.fx-videos-page .fx-videos-grid .fx-video:first-child,
.fx-videos-page .fx-videos-grid .fx-video:not(:first-child),
.fx-videos-page .fx-videos-card{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:none!important;
  grid-row:auto!important;
  align-items:stretch!important;
  gap:0!important;
  min-width:0;
  margin:0;
  padding:0;
  border:0!important;
  border-radius:0!important;
  background:transparent;
  box-shadow:none!important;
}
.fx-videos-page .fx-videos-card[hidden]{
  display:none!important;
}
.fx-videos-page .fx-videos-card .fx-video-play{
  position:relative;
  display:block;
  width:100%;
  margin:0;
  padding:0;
  border:0;
  border-radius:10px!important;
  overflow:hidden;
  background:#173e32;
  cursor:pointer;
  isolation:isolate;
  box-shadow:none;
}
.fx-videos-page .fx-videos-card--short .fx-video-play{
  aspect-ratio:9/16;
}
.fx-videos-page .fx-videos-card--landscape{
  grid-column:span 2;
}
.fx-videos-page .fx-videos-card--landscape .fx-video-play{
  aspect-ratio:16/9;
}
.fx-videos-page .fx-videos-card .fx-video-play img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  image-rendering:auto;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  transform:translateZ(0);
}
.fx-videos-page .fx-videos-card .fx-video-play span{
  position:absolute;
  top:50%;
  left:50%;
  z-index:1;
  transform:translate(-50%,-50%);
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--fx-videos-mint);
  color:#fff;
  font-size:12px;
  line-height:1;
  box-shadow:none;
  opacity:.9;
  transition:background .2s ease,opacity .2s ease;
}
.fx-videos-page .fx-videos-card .fx-video-play span svg{
  display:block;
  margin-left:1px;
}
.fx-videos-page .fx-videos-card .fx-video-play:hover span{
  background:var(--fx-videos-mint-hover);
  opacity:1;
}
.fx-videos-page .fx-videos-card .fx-video-play:focus-visible{
  outline:3px solid var(--fx-videos-mint);
  outline-offset:4px;
}
.fx-videos-page .fx-videos-card h3{
  margin:8px 0 0;
  padding:0 1px;
  width:100%;
  font-size:12px;
  font-weight:550;
  line-height:1.35;
  letter-spacing:-.01em;
  color:var(--fx-videos-copy);
  text-align:left;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
/* Solo separa el título cuando debajo va el botón a la ficha. */
.fx-videos-page .fx-videos-card h3:not(:last-child){margin-bottom:8px}
.fx-videos-page .fx-videos-card__ficha{
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:fit-content;
  margin-top:auto;
  min-height:32px;
  padding:7px 13px;
  border:1px solid var(--fx-videos-line);
  border-radius:999px;
  background:#fff;
  color:var(--fx-videos-mint-deep);
  font-size:12px;
  font-weight:650;
  line-height:1.2;
  text-decoration:none;
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.fx-videos-page .fx-videos-card__ficha:hover{
  background:var(--fx-videos-surface);
  border-color:var(--fx-videos-mint);
  color:#1d6252;
}
.fx-videos-page .fx-videos-card__ficha svg{display:block;flex:0 0 14px}
.fx-videos-page .fx-videos-empty{
  margin:28px 0 0;
  font-size:15px;
  line-height:1.7;
  color:var(--fx-videos-copy);
}

/* Join videos → CTA like home */
.fx-videos-page .ns-final.ns-final--sales,
.fx-videos-page .fx-cta.fx-cta--sales{
  background:#fff;
  padding-top:24px;
}
.fx-videos-page .ns-final--sales .ns-final__box,
.fx-videos-page .fx-cta--sales .fx-cta__box{
  background:var(--fx-videos-mint);
  border-radius:10px;
  box-shadow:none;
}
.fx-videos-page .fx-site-footer{margin-top:0}

@media(max-width:1100px){
  .fx-videos-page .fx-videos-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
  .fx-videos-page .fx-videos-card .fx-video-play span{width:32px;height:32px;font-size:11px}
}
@media(max-width:800px){
  .fx-videos-page .fx-videos{padding-bottom:20px}
  .fx-videos-page .ns-final.ns-final--sales,
  .fx-videos-page .fx-cta.fx-cta--sales{padding-top:16px}
}
@media(max-width:700px){
  .fx-videos-page .fx-videos{padding-top:24px}
  .fx-videos-page .fx-videos-intro{
    flex-direction:column;
    align-items:stretch;
    gap:16px;
    margin-bottom:20px;
  }
  .fx-videos-page .fx-videos-intro__title{font-size:28px!important}
  .fx-videos-page .fx-videos-intro__cta-btn{width:100%}
  .fx-videos-page .fx-videos-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .fx-videos-page .fx-videos-card--landscape{grid-column:span 2}
  .fx-videos-page .fx-videos-card .fx-video-play span{width:32px;height:32px;font-size:11px}
  .fx-videos-page .fx-videos-card h3{font-size:11px;margin-top:6px}
}
@media(prefers-reduced-motion:reduce){
  .fx-videos-page .fx-videos-card .fx-video-play span{transition:none}
}
