/* ===== ESTILOS PLANTILLA ===== */
:root {
  --naranja-color: #ec6705;
  /* escala de grises 10 (mas claro) a 90 (mas oscuro), base --gray10 */
  --gray10: #f5f5f5;
  --gray20: #e8e8e8;
  --gray30: #d9d9d9;
  --gray40: #bfbfbf;
  --gray50: #9e9e9e;
  --gray60: #7a7a7a;
  --gray70: #5c5c5c;
  --gray80: #3d3d3d;
  --gray90: #333;
  --black: #232323;
}
ul {
  list-style-type: none;
}

/* --- Fondo general del sitio --- */
.body-wrapper {
  background-color: var(--gray10);
}

.view-article .body-wrapper {
  background-color: white;
}

a {
  transition:
    color 200ms,
    background-color 200ms;
}

/* --- Enlaces placeholder (href="#" pendiente de URL real): no clickeables --- */
.nt-link-disabled {
  pointer-events: none;
  cursor: default;
}

/* ===== GENERALES HELIX ULTIMATE ===== */

/* ᨊ DEBUG  ᨊᨊ start */

.nt-reveal-positions {
  border: solid 2px red;
  display: flex;
  width: 100%;
  /* max-width: 300px; */
  padding: 2rem 4rem;
  margin: 1rem auto;
}
/* ᨊᨊ DEBUG ᨊᨊ  End */
.sp-page-title .sp-page-title-heading,
.sp-page-title .sp-page-title-sub-heading {
  color: initial;
  font-size: clamp(1.5rem, 3vw, 2.5rem);
  /* font-weight: unset; */
}

/* override de estilos de Helix Ultimate */
#sp-header .sp-module {
  margin: unset;
}

/* --- Container --- */
/* ancho máximo de todos los contenedores */
.container,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
  max-width: 1140px;
}

/* --- Menu --- */
.sp-menu-item {
  text-transform: uppercase;
}

ul.mod-menu.mod-list.menu {
  margin-bottom: 0;
}

#sp-header .container {
  /* background: #d22929; */
  /* display: flex; */
  align-items: center;
  flex-direction: column;
  justify-content: center;
}

#sp-logo {
  display: flex;
  justify-content: center;
}
.menu-central {
  /* background-color: greenyellow; */
  display: flex;
  justify-content: center;
}

/* --- Indicador submenu: glyph custom --- */
/* --- Override error Font Awesome --- */
/* --- Codigo para menu estandard --- */
body.ltr .sp-megamenu-parent > li.sp-has-child > a:after,
body.ltr .sp-megamenu-parent > li.sp-has-child > span:after {
  font-family: inherit;
  content: "▾";
}
/* --- Codigo para menu modal --- */
#modal-menu ul.sp-megamenu-parent li.sp-has-child > a:after,
#modal-menu ul.sp-megamenu-parent li.sp-has-child > span:after {
  font-family: inherit;
  content: "▾";
}

/* --- Breadcrumb: corrección del ícono home --- */
.breadcrumb .divider.fas.fa-map-marker-alt:before {
  content: "\f015  /";
  padding-right: 5px;
}

#sp-main-body {
  padding: 0px 20px;
  max-width: 1440px;
  margin: auto;
}

.portada #sp-main-body {
  max-width: 100%;
}

#sp-header .logo {
  max-width: 200px;
}

/* ===== BLOQUE NOVEDADES modulo NSPGK5 (modo standard, class suffix nt-news-module) ===== */

/* variable compartida: banda de imagen (.center) y tope de .nspImage deben medir lo mismo */
.nt-news-module {
  --nt-news-image-height: 280px;
}

/* --- Contenedor de seccion (solo el <section>, evita doblar el estilo en el <div> interno que comparte la misma clase) --- */
section.nt-news-module {
  background-color: var(--gray10);
  padding: clamp(2rem, 5vw, 4rem) 1.5rem;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

/* --- Titulo de seccion (chrome "section" de Joomla) --- */
.nt-news-module > h1 {
  text-align: left;
  max-width: 1140px;
  margin: 2.5rem 0;
  font-size: clamp(2rem, 3vw, 4rem);
  font-weight: 700;
}

/* --- Grid de fichas: 3 columnas desktop, 1 columna mobile --- */
.nt-news-module .nspArtPage {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  max-width: 1140px;
  margin: 0 auto;
}

/* pisa float/clear/padding inline generados por el modulo (core, !important justificado) */
.nt-news-module .nspArt {
  display: flex;
  flex-direction: column;
  float: none !important;
  clear: none !important;
  padding: 1.5rem !important;
  /* .nspCol3 (core) fuerza width:33.333% sobre la celda del grid; se anula con selector mas especifico */
  width: 100%;
  box-sizing: border-box;
  text-align: left;
  background-color: #fff;
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 1rem rgb(0 0 0 / 8%);
  transition: transform 0.3s ease;
}

/* zoom sutil de la ficha entera; z-index evita que quede tapada por la fila siguiente */
/* .nt-news-module .nspArt:hover {
  position: relative;
  z-index: 1;
  transform: scale(1.03);
} */

/* banda de imagen con altura fija e igual en toda la fila; base de la imagen alineada abajo para que el titulo arranque siempre a la misma altura */
.nt-news-module .nspArt > .center {
  order: 1;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  height: var(--nt-news-image-height);
}
.nt-news-module .nspArt > .nspHeader {
  order: 2;
  font-size: 1.2rem;
  font-weight: 700;
  padding: 1rem 0 0.35rem;
  letter-spacing: -0.5px;
}
.nt-news-module .nspArt > .nspText {
  order: 3;
  color: #767676;
  font-size: 0.9rem;
  margin: 0;
}

/* pisa margin inline del wrapper de imagen (core, !important justificado) */
.nt-news-module .nspImageWrapper {
  display: block;
  margin: 0 !important;
}

/* pisa width/height fijos inline del thumbnail generado por el modulo (core, !important justificado); tamaño natural clampeado, sin recorte */
.nt-news-module .nspImage {
  width: auto !important;
  height: auto !important;
  max-width: 180px;
  max-height: var(--nt-news-image-height);
  transition: transform 0.3s ease;
}

.nt-news-module .nspArt:hover .nspImage {
  transform: scale(1.08) rotate(-1deg);
}

.nt-news-module .nspHeader a,
.nt-news-module .nspText a {
  color: inherit;
}

@media (max-width: 768px) {
  .nt-news-module .nspArtPage {
    grid-template-columns: 1fr;
  }
}

/* ===== FIN BLOQUE NOVEDADES modulo NSPGK5 ===== */

/* ===== PIE DE PAGINA ===== */
/* --- Hook #sp-bottom / footer: fondo oscuro para bottom1-3 + copyright --- */
footer {
  background-color: #171717;
  color: #fff;
  padding: clamp(2.5rem, 5vw, 4rem) 1.5rem 0;
}

/* --- Marca (bottom1): logo + tagline + redes --- */
.nt-footer-brand__logo .nt-logotype {
  width: 10rem;
  height: auto;
}
.nt-footer-brand__logo .nt-logotype__word {
  fill: #fff;
}
.nt-footer-brand__logo .nt-logotype__accent {
  fill: var(--naranja-color);
}
.nt-footer-brand__tagline {
  margin: 1rem 0;
  max-width: 22rem;
  color: #a3a3a3;
  font-size: 0.9rem;
  line-height: 1.5;
}
.nt-footer-brand__social {
  display: flex;
  gap: 0.75rem;
  padding: 0;
  margin: 0;
}
#sp-bottom1 .nt-footer-brand__social .nt-footer-brand__social-link {
  display: flex;
  justify-content: center;
  align-items: center;
}
.nt-footer-brand__social-link svg {
  width: 2rem;
  height: 2rem;
}
.nt-footer-brand__social-link:hover {
  border-color: var(--naranja-color);
  color: var(--naranja-color);
}

/* --- Titulos de columna (bottom2 / bottom3) --- */
.nt-footer-links__title,
.nt-footer-help__title {
  display: flex;
  align-items: center;
  gap: 0.1rem;
  margin: 0 0 1rem;
  color: var(--naranja-color);
  font-size: 0.95rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.nt-footer-links__title svg,
.nt-footer-help__title svg {
  width: 1.25rem;
  height: 1.25rem;
}

/* --- Listas de enlaces (bottom2 / bottom3) --- */
.nt-footer-links__list,
.nt-footer-help__list {
  display: grid;
  gap: 0.1rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.nt-footer-links__list a,
.nt-footer-help__list a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #d4d4d4;
  font-size: clamp(0.8rem, 2vw, 0.95rem);
  transition: color 0.2s ease;
}
.nt-footer-links__list a svg,
.nt-footer-help__list a svg {
  width: 1.1rem;
  height: 1.1rem;
  flex-shrink: 0;
}
.nt-footer-links__list a:hover,
.nt-footer-help__list a:hover {
  color: var(--naranja-color);
}

/* flecha final de cada enlace empujada a la derecha */
.nt-footer-links__list a svg:last-child,
.nt-footer-help__list a svg:last-child {
  margin-left: auto;
}

/* --- Columna unificada Ayuda + Seguinos (bottom3) --- */
.nt-footer-help {
  display: grid;
  /*  gap: 2rem;
 */
}

/* --- Separador vertical entre columnas (desktop, orden natural del DOM) --- */
#sp-bottom2,
#sp-bottom3 {
  border-left: 1px solid rgba(255, 255, 255, 0.08);
}

/* --- Copyright --- */
#sp-footer {
  color: #a3a3a3;
  text-align: center;
  font-size: 8px;
}

@media (max-width: 768px) {
  /* --- Mobile: links + ayuda en 2 columnas, marca debajo a todo el ancho (desktop conserva el orden natural del DOM) --- */
  /* el flex real de Bootstrap esta en .row, un nivel mas adentro que #sp-bottom */
  #sp-bottom .row {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  #sp-bottom2 {
    grid-column: 1;
    grid-row: 1;
  }
  #sp-bottom3 {
    grid-column: 2;
    grid-row: 1;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    padding-left: 1.5rem;
  }
  #sp-bottom1 {
    grid-column: 1 / -1;
    grid-row: 2;
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    margin-top: 2rem;
    padding-top: 2rem;
  }

  /* --- Pie centrado en mobile (desktop queda alineado a la izquierda) --- */
  .nt-footer-brand__logo {
    text-align: center;
  }
  .nt-footer-brand__tagline {
    margin-inline: auto;
    text-align: center;
  }
  .nt-footer-brand__social {
    justify-content: center;
  }
  .nt-footer-links__title,
  .nt-footer-help__title {
    /*    justify-content: center; */
  }
  .nt-footer-links__list,
  .nt-footer-help__list {
    /* justify-items: center; */
    justify-items: start;
  }
  .nt-footer-links__list a,
  .nt-footer-help__list a {
    justify-content: center;
  }
  .nt-footer-links__list a svg:last-child,
  .nt-footer-help__list a svg:last-child {
    display: none;
  }

  #nt-footer-follow-title {
    margin-top: 1.5rem;
  }
  #sp-bottom .sp-module ul > li {
    margin-bottom: 0;
  }
}

/* ===== END PIE DE PAGINA ===== */

/* --- Elimina vineta de items de menu --- */
ul > li > a:before {
  color: red;
  content: "" !important;
}

article.item {
  max-width: 980px;
  margin: 1rem auto;
  /* padding: 0px 30px 10px 30px; */
  display: flex;
  flex-direction: column;
  align-content: center;
  justify-content: center;
  align-items: center;
}
/* 
.item h2 {
  text-align: center;
  font-size: 18px;
  margin-bottom: 10px;
} */

/* .page-header h1 {
  color: #888;
  text-align: center;
  font-weight: normal;
  margin-top: 60px;
} */

/* --- Boton busqueda --- */
.search .btn-toolbar button {
  margin-top: 27px;
}

/* --- Resultados de busqueda (solo search-results) --- */

.search-results .com-finder__results {
  padding: 30px 10px;
  background-color: #fcfcfc;
  & .search-pages-counter {
    display: flex;
    justify-content: center;
  }
}

.search-results .com-finder__counter.search-pages-counter {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.1rem;
  line-height: 1.4;
}

.search-results .com-finder__counter.search-pages-counter strong {
  display: inline-block;
  padding-inline: 0.1rem;
}

.search-results .js-finder-search-query {
  font-size: 1.2rem;
}
.search-results .com-finder__form {
  /* background-color: #f7f7f7; */
  display: flex;
  justify-content: center;
  padding-top: 80px;
  border-bottom: 1px solid #ececec;

  & label {
    font-size: 1.2rem;
    padding: 1rem 0;
  }
  & .js-finder-searchform {
    display: flex;
    justify-content: center;
    text-align: center;
  }
}

.search-results [id="sp-main-body"] {
  max-width: 1140px;
  margin: 0 auto;
  padding-top: 24px;
  padding-bottom: 24px;
}

.search-results .com-finder__results-list {
  max-width: 980px;
  margin: 24px auto;
  padding: 0 16px 24px;
}

.search-results .com-finder__results-list > .result__item {
  display: grid;
  grid-template-columns: minmax(120px, 220px) 1fr;
  gap: 12px;
  align-items: start;
  padding: 10px 0;
  border-bottom: 1px solid #ececec;
}

.search-results .result__item > .result__image {
  grid-column: 1;
  grid-row: 1 / span 3;
  margin: 0;
}

.search-results .result__item > .result__title,
.search-results .result__item > .result__description,
.search-results .result__item > .result__taxonomy {
  grid-column: 2;
}

.search-results .search-img {
  display: block;
  width: 100%;
  max-width: 220px;
  height: auto;
  object-fit: cover;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.search-results .result__title {
  /* margin: 0; */
  padding-top: 1rem;
  font-size: 1.35rem;
  line-height: 1.25;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.result__item + .result__item {
  margin-top: 24px;
  border-top: 0;
}

.search-results .result__title-text {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.search-results .result__description {
  margin: 6px 0 0;
  max-width: 62ch;
}

.search-results mark {
  background: transparent;
  color: inherit;
  padding: 0;
}

@media (max-width: 767px) {
  .search-results .com-finder__results-list > .result__item {
    grid-template-columns: 1fr;
  }

  .search-results .result__item > .result__image,
  .search-results .result__item > .result__title,
  .search-results .result__item > .result__description,
  .search-results .result__item > .result__taxonomy {
    grid-column: 1;
    grid-row: auto;
  }

  .search-results .search-img {
    max-width: 100%;
  }
}

/* --- Menu offcanvas --- */

.offcanvas-menu .offcanvas-inner ul.menu > li {
  border: inherit;
}

/* --- Quita logotipo del submenu offcanvas --- */

.offcanvas-menu .logo {
  max-width: 0px;
  margin: 0;
  display: none;
  cursor: none;
  pointer-events: none;
}

.offcanvas-menu .offcanvas-inner {
  font-size: 1rem;
}

.offcanvas-menu .mod-finder {
  width: 100%;
}

.offcanvas-menu .mod-finder .awesomplete,
.awesomplete,
.offcanvas-menu .mod-finder .js-finder-search-query {
  width: 100%;
}

.offcanvas-menu .mod-finder .js-finder-search-query {
  box-sizing: border-box;
  min-height: 48px;
  padding: 0.85rem 1rem;
  border: 1px solid #d5dfdf;
  border-radius: 4px;
  background-color: #f7f9fc;
  color: #555;
  font-size: 1rem;
  box-shadow: none;
}

.offcanvas-menu.border-menu .offcanvas-inner ul.menu > li > a {
  /* font-size: 1rem;
  display: block;
  padding: 10px 0 7px 10px; */
  /* margin-bottom: 1px; */
}

.offcanvas-menu .offcanvas-inner .sp-module ul > li ul > li > a {
  display: block;
  margin-bottom: 2px;
  padding: 10px 0 7px 10px;
  /* margin-bottom: 1px; */
}

.offcanvas-menu .offcanvas-inner ul.menu > li a:hover {
  /* background-color: var(--naranja-color); */
  border-bottom: solid 1px var(--naranja-color);
  /* border-top: solid 1px var(--naranja-color); */
  /* color: #fff; */
  /* font-weight: 600; */
}

.offcanvas-menu .mod-finder .js-finder-search-query:focus {
  border-color: var(--naranja-color);
  outline: 0;
}

.offcanvas-menu .offcanvas-inner .sp-module {
  margin-bottom: 0px;
}

.collapse.in {
  margin-left: 20px;
}

.offcanvas-menu .offcanvas-inner .menu-toggler {
  margin-right: 10px;
}

/* ===== BOOTSTRAP override ===== */

/* --- Tablas --- */
td,
th {
  padding: 2px 10px;
  padding-right: 10px;
  border: dotted 1px #ccc;
}
thead {
  background: #f1f1f1;
}

.btn-default {
  color: #333;
  background-color: #fff;
  border: none;
  border-radius: 0px;
}

.btn-secondary {
  background-color: inherit;
  border: none;
}

.mark,
mark {
  background-color: #ffff6b;
  padding: unset;
  padding-block: 2px;
}

/* ===== END BOOTSTRAP ===== */

/* ===== PORTADA ===== */
.portada article.item {
  max-width: 100vw;
  display: block;
  padding: 0px;
  /* background-color: red; */
}

/* modulo Boom Box */
.nt-portada-boombox {
  background-color: var(--naranja-color);
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  padding-block: clamp(3rem, 6vw, 6rem) clamp(2rem, 4vw, 4rem);
  background-color: var(--naranja-color);
}

.nt-portada-bannerTV {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  & img {
    width: 100vw;
    height: auto;
  }
}
@media (max-width: 768px) {
  .nt-portada-bannerTV img {
    object-fit: cover;
    object-position: center;
    height: 300px;
  }
}

/* --- Traductor --- */

#sp-top-bar .traductor {
  float: right;
}
.traductor .flag {
  font-weight: bold;
  color: #fff;
  padding-left: 10px;
}
a.flag span {
  font-size: 12px !important;
}

/* --- Banner promocional Netflix YouTube --- */
#netflix-banner {
  display: block;
}

#netflix-banner-mobile {
  display: none;
}

/* --- Acerca de nosotros (flex) --- */
.nosotros_flex_container {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}

.nosotros_flex_container_item {
  width: auto;
}

.nosotros_flex_container_item img {
  max-width: 170px;
  width: auto;
}

#nosotros_logo_NT {
  background-color: #fff;
  box-shadow: 0px 30px 60px 0px rgb(108 129 160 / 14%);
  padding: 30px 50px;
  margin: 10px auto 50px;
  display: block;
}

/* ===== END PORTADA ===== */

/* ===== BANNERS CATEGORIAS ===== */

.animated-text-words-wrapper {
  color: var(--naranja-color) !important;
}

/* --- Titulos --- */

/* --- Contenedor del titulo Helix --- */
#sp-title {
  font-size: inherit;
  display: flex;
  justify-content: center;
  border-bottom: solid 1px var(--gray30);
  padding-bottom: 1rem;
  max-width: 1440px;
  margin-inline: auto;
  margin-bottom: 1rem;
}

/* portada no tiene titulo de pagina, el bloque queda vacio pero conserva estas propiedades */
.portada #sp-title {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}

.sp-page-title {
  padding: 100px 0 0 0;
  background: none !important;
}

/* --- Breadcrumb --- */
.sp-page-title .breadcrumb {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
  /* opacity: 30%; */
}
li.breadcrumb-item,
.float-start {
  opacity: 0.5;
  color: red;
}
li.breadcrumb-item:hover,
li.breadcrumb-item:active {
  opacity: 1;
}

/* --- Titulo Helix H2 en banner --- */
.sp-page-title h2.sp-page-title-heading {
  /* font-size: clamp(1.5rem, 3vw, 2.5rem); */
  /* background: var(--naranja-color); */
  /* padding: 10px; */
  /* width: auto;
  text-align: center;
  color: #3e3b3b; */
}

/* --- Backgrounds categorias --- */
/* .electrodomesticos .sp-page-title {
  background-image: url(../../../images/categorias/banner-electrodomesticos.jpg);
}

.ledtv .sp-page-title {
  background-image: url(../../../images/categorias/banner-ledtv.jpg);
}

.audio .sp-page-title {
  background-image: url(../../../images/categorias/banner-audio.jpg);
}

.car-tuning .sp-page-title {
  background-image: url(../../../images/categorias/banner-car-audio.jpg);
}

.netflix .sp-page-title {
  background-image: url(../../../images/categorias/banner-netflix.jpg);
} */

/* --- Ruta de navegacion --- */

.breadcrumb {
  font-size: 1em;
}

/* --- Ruta de navegacion (texto) --- */
.sp-page-title .breadcrumb > span,
.sp-page-title .breadcrumb > li a,
.sp-page-title .breadcrumb > li,
.sp-page-title .breadcrumb > li + li:before,
.sp-page-title ol.breadcrumb a,
.sp-page-title ol.breadcrumb .active,
.sp-page-title ol.breadcrumb .fa {
  color: #444;
}

/* ===== END BANNERS CATEGORIAS ===== */

/* vista de listado de categorias */

.com-content-category-blog {
  margin-block: 1rem;
}
/* ===== NAVEGACION SUBCATEGORIAS (modulo menu en position1 de cada categoria) ===== */

.ledtv img#iconos-art {
  width: auto;
}

ul.menu {
  padding-left: 0;
}

.sp-module ul > li > a:before {
  margin: 0px;
  content: "";
}

/* --- Version anterior (modulo menu-ledtv, desactivado: ya no se usa) ---
.menu-ledtv {
  font-size: 18px;
  text-align: center;
}

.menu-ledtv li {
  margin: 10px;
}

.menu-ledtv li.current.active a {
  background-color: var(--naranja-color);
  color: #fff !important;
}

.menu-ledtv ul > li {
  border: none !important;
  display: inline-block;
}

.menu-ledtv ul > li a {
  padding: 0;
  color: #787878;
  font-size: 1rem;
}

.menu-ledtv ul > li a:hover {
  border-bottom: solid 1px var(--naranja-color);
}
--- */

/* --- Version actual (modulo nt-navegacion__subcat) --- */

.nt-navegacion__subcat {
  display: flex;
  justify-content: center;
  padding-block: 0.5rem;
  margin-inline: auto;
  /* background-color: #f7fafa; */
  max-width: 1440px;
}
.nt-navegacion__subcat ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px 1rem;
  text-align: center;
}

.nt-navegacion__subcat a {
  display: inline-block;
  padding-block: 0.5rem;
  color: var(--gray80) !important; /* justificado porque sobreescribe el style del template preset.css */
  font-size: clamp(14px, 2vw, 1rem);
  border-bottom: 2px solid transparent;
}

/* oculta la categoria en la que se esta navegando (ya la muestra el h1 del sp-page-title) */
.nt-navegacion__subcat li.current,
.nt-navegacion__subcat li.active {
  display: none;
}

.pagination .nt-navegacion__subcat li.current,
.nt-navegacion__subcat li.active {
  display: inherit;
}
.nt-navegacion__subcat a:hover,
.nt-navegacion__subcat a:focus,
.nt-navegacion__subcat li.current > a,
.nt-navegacion__subcat li.active > a {
  /* color: var(--naranja-color) !important; */
  border-bottom-color: var(--naranja-color);
}

/* ===== PRODUCTOS LISTADO POR CATEGORIAS (article-list / blog de categoria) ===== */
/* --- Estilos comunes --- */

/* --- Badge "destacado" --- */
.featured-article-badge {
  display: none;
}

/* --- Imagen intro (thumbnail de la tarjeta) --- */
.article-intro-image img {
  /* max-width: 400px; */
  margin: auto;
}

/* pisa margen negativo del core (template.css), pensado para que la imagen sangre hasta el borde de la card */
.article-list .article .article-intro-image,
.article-list .article .article-featured-video,
.article-list .article .article-featured-audio,
.article-list .article .article-feature-gallery {
  margin: 0;
}

/* --- Boton leer mas --- */
.readmore {
  display: flex;
  justify-content: center;
}
.article-list .article .readmore a {
  display: block;
  padding: 5px 10px 3px 10px;
  color: #838383;
  font-size: 0.8em;
  border-top: solid 1px #ccc;
}
.article-list .article .readmore a:hover {
  color: #fff;
  background: #555;
}

/* --- Tarjeta de articulo (titulo, texto) --- */
.article.item p,
h1,
h2,
h3,
h4,
h5 {
  text-align: center;
  letter-spacing: -0.5px;
}

.article-list .article {
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgb(0 0 0 / 6%);
  overflow: hidden;
  transition:
    transform 200ms ease,
    box-shadow 200ms ease;
}

.article-list .article:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 16px rgb(0 0 0 / 10%);
}

/* --- Zoom sutil de la imagen en hover (clippeado dentro de la ficha) --- */
.article-list .article .article-intro-image {
  overflow: hidden;
  border-radius: 8px;
  /* padding: 1rem; */
}

.article-list .article .article-intro-image img {
  transition: transform 300ms ease;
}

.article-list .article:hover .article-intro-image img {
  transform: scale(1.05);
}

.article h2,
.article h2 span {
  font-size: 15px;
  font-weight: 500;
  text-align: center;
  margin-top: 1rem;
  color: var(--black) !important; /*justificado porque sobreescribe estilos en linea aplicados con el editor*/
}

article.item h2 {
  margin-bottom: 1rem;
}

/* --- Paginacion --- */
.pagination {
  display: flex;
  justify-content: center;
  margin-top: 20px;
  & .page-item.disabled .page-link {
    background-color: greenyellow;
    display: none;
  }
}
.pagination-wrapper {
  margin-top: 20px;
}
.pagination > li > a,
.pagination > li > span {
  color: var(--gray60);
}

.page-link {
  border: none;
  margin-inline: 5px;
  background: none;
  color: var(--gray80);
}

/* ocultar ir a pagina final y a pagina inical (<< >>) */
.pagination .page-item:first-child,
.pagination .page-item:last-child {
  display: none;
}

.page-item.active .page-link {
  background-color: var(--naranja-color);
  border-color: var(--naranja-color);
  border-radius: 4px;
}

/* --- Imagen principal (vista individual del articulo, NO listado) --- */
.article-details .article-full-image img {
  border-radius: 0;
  max-width: 480px;
  /* margin-bottom: -50px; */
}

/* --- Botones generales selectores de subcategorias --- */
.btn {
  font-size: 14px;
  border-radius: 0px;
  padding: 5px 10px 3px 10px;
  /*box-shadow: 0px 1px 6px 0px rgb(0 0 0 / 10%);*/
}

.items-acordeon .btn:hover,
.btn:hover,
.readmore .btn:hover {
  background: #6a6a6a;
  color: #fff;
}

.readmore .btn {
  display: block;
  margin: 4px auto 0 auto;
  color: #838383;
  margin-top: -4px;
  font-size: 0.8em;
  border-top: solid 1px #ccc;
}

.descargas a,
.items-acordeon {
  padding: 5px 10px 3px 10px;
  font-size: 1em;
  color: #464646;
  font-weight: bold;
}
.descargas a:hover {
  background: #6a6a6a;
  color: #fff;
}
.descargas a,
.items-acordeon .btn {
  display: block;
  border-bottom: solid 1px #ccc;
  margin: 5px 0px;
  width: 100%;
}

/* ===== PRODUCTOS ARTICULO DESPLEGADO ===== */

.productos figcaption {
  border-top: solid 1px #ddd;
  padding: 10px 0;
  text-align: center;
}
.cont-articulo img,
.articulo,
.articulo img {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.articulo h2 {
  font-size: clamp(1.4rem, 5vw, 2rem);
  margin-top: 20px;
  font-weight: 600;
}

.cont- {
  display: flow-root;
}

/* ===== CAMPOS de especificaciones  ===== */
/* --- Oculto en listados blog --- */
.article-list .fields-container {
  display: none;
}

/* --- Contenedor de campos visible en articulo desplegado --- */
.fields-container {
  display: flow-root;
  overflow: hidden;
  margin: 20px 0px;
  padding: 2rem;
  /* border: solid 1px #ccc; */
  font-size: clamp(0.9rem, 1.2vw, 1.1rem);
  font-weight: 400;
  line-height: normal;
  width: 100%;
  background-color: #fcfcfc;
}

/* entradas generales */
.field-entry {
  border-bottom: dotted 1px #6c6969;
  padding-block: clamp(0.3rem, 1vw, 0.4rem);
}

/* columna etiquetas */
.field-label {
  width: 240px;
  display: inline-block;
  padding-right: 1rem;
}

/* columna valores */
.field-value {
  margin-top: 10px;
  line-height: 1.5;
}

/* titulos campos */
.nt-datasheet__title {
  display: block;
  font-size: 1.45rem;
  margin-top: 1rem;
  font-weight: 600;
}

/* .item-page .field-value:before {
  content: "|";
  padding-right: 10px;
  color: #ccc;
} */

/* titulos campos */

/* --- Campo archivos de sistema --- */

.item-page .system-files .field-value:before {
  display: none;
}

/* --- Etiquetas energeticas --- */
.energyTags {
  transition: 1s linear;
  max-width: 80px;
  margin: 20px 0px;
}
.energyTags:hover {
  max-width: 100%;
}

/* --- Campos administracion --- */

#jform_com_fields_accesorios_titulo,
#jform_com_fields_especificaciones_tecnicas_titulo,
#jform_com_fields_conectividad_titulo,
#jform_com_fields_smart_tv_titulo,
#jform_com_fields_descargas_titulo,
.etiqueta-campo {
  background-color: rgb(47, 131, 26);
}

/* --- Rating label --- */

.rating-label {
  max-width: 120px;
  display: inline;
  transition: all 0.2s;
  margin-top: 5px;
}

.rating-label:hover {
  max-width: 400px;
  transition: all 0.5s;
  width: auto;
  cursor: crosshair;
}
/* ===== END CAMPOS ===== */

/* --- Modulo descargas --- */
/* --- Selectores del modulo descargas al pie de los articulos --- */

/* .descargas {
} */
.descargas h2 {
  padding: 25px 0px 0px 0px;
  margin-top: 20px;
  font-size: 30px;
}
.descargas p {
  color: #535969;
  font-size: 12px;
}

/* .descargas-detalles {
} */

/* ===== DISPLAY CATEGORIAS SP ===== */

/* .categoria-btn .clearfix {
} */
.categorias-list h4 {
  padding: 15px 0px;
  line-height: 100%;
  font-size: 1rem;
  font-weight: 400;
}

/* ===== MEDIA QUERIES ===== */

/* --- Small devices (576px to 768px) --- */
@media (min-width: 576px) and (max-width: 768px) {
}

/* --- Medium devices (768px to 991.98px) --- */
@media (min-width: 768px) and (max-width: 991.98px) {
}

@media (max-width: 768px) {
  #valores h2 {
    font-weight: 600;
    font-size: 20px;
    line-height: 28px;
  }

  .portada p {
    /* font-family: "Open Sans"; */
    /* font-size: 14px; */
    line-height: 22px;
  }

  #netflix-banner {
    display: none;
  }
  #netflix-banner-mobile {
    display: block;
    width: 100%;
  }
  .sp-page-title {
    margin-bottom: 0px;
    padding-top: 50px;
  }

  .sp-page-title h2 {
    /* font-size: 24px; */
    text-align: center;
    margin-bottom: 10px;
    display: block;
  }
  .sp-page-title .breadcrumb {
    text-align: center;
    margin-top: 20px;
  }

  article.item {
    padding: 20px 0px;
    margin-bottom: 20px;
    border-top: dotted 1px #ddd;
  }

  /* .menu-ledtv desactivado, ver bloque comentado arriba */

  .audio .sp-page-title .breadcrumb > span,
  .audio .sp-page-title .breadcrumb > li a,
  .audio .sp-page-title .breadcrumb > li,
  .audio .sp-page-title .breadcrumb > li + li:before,
  .audio .sp-page-title ol.breadcrumb a,
  .audio .sp-page-title ol.breadcrumb .active,
  .audio .sp-page-title ol.breadcrumb .fa {
    color: rgb(0, 0, 0);
  }

  .col-xs-1,
  .col-xs-2,
  .col-xs-3,
  .col-xs-4,
  .col-xs-5,
  .col-xs-6,
  .col-xs-7,
  .col-xs-8,
  .col-xs-9,
  .col-xs-10,
  .col-xs-11,
  .col-xs-12 {
    float: left;
  }
  .col-xs-12,
  .col-12 {
    width: 100%;
  }
  .col-xs-11,
  .col-11 {
    width: 91.66666667%;
  }
  .col-xs-10,
  .col-10 {
    width: 83.33333333%;
  }
  .col-xs-9,
  .col-9 {
    width: 75%;
  }
  .col-xs-8,
  .col-8 {
    width: 66.66666667%;
  }
  .col-xs-7,
  .col-7 {
    width: 58.33333333%;
  }
  .col-xs-6,
  .col-6 {
    width: 50%;
  }
  .col-xs-5,
  .col-5 {
    width: 41.66666667%;
  }
  .col-xs-4,
  .col-4 {
    width: 33.33333333%;
  }
  .col-xs-3,
  .col-3 {
    width: 25%;
  }
  .col-xs-2,
  .col-2 {
    width: 16.66666667%;
  }
  .col-xs-1,
  .col-1 {
    width: 8.33333333%;
  }
}

/* ===== RESPONSIVE BOOTSTRAP PATCH ===== */

/* ===== PORTADA MODULO HTML PERSONALIZADO ===== */

.nt-home-intro {
  padding: clamp(6rem, 10vw, 10rem) 1.5rem;
  text-align: center;
  background: #fff;
}

.nt-home-intro__container {
  display: grid;
  gap: 1.5rem;
  max-width: 46rem;
  margin: 0 auto;
}

.nt-home-intro__eyebrow {
  display: flex;
  justify-content: center;
}

.nt-logotype {
  width: clamp(9rem, 18vw, 13rem);
  height: auto;
}

.nt-logotype__word {
  fill: #1d1d1f;
}

.nt-logotype__accent {
  fill: #cd5b1c;
}

.nt-home-intro__title {
  margin: 0;
  font-size: clamp(1.9rem, 4vw, 3rem);
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: #1d1d1f;
}

.nt-home-intro__title-accent {
  color: var(--naranja-color);
}

.nt-home-intro__title-brand {
  color: #5b6079;
}

.nt-home-intro__content {
  display: grid;
  gap: 1rem;
  color: #55565c;
  font-size: clamp(1rem, 1.2vw, 1.1rem);
  line-height: 1.6;
}

.nt-home-intro__content p {
  margin: 0;
}

.nt-home-intro__tagline {
  margin: 0.5rem 0 0;
  font-size: clamp(1.05rem, 1.4vw, 1.25rem);
  font-weight: 500;
  letter-spacing: 0.01em;
  color: #1d1d1f;
}

.nt-home-values {
  min-height: 26rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: #242020;
  color: var(--blanco-color);
}

.nt-home-values__title {
  margin-top: 1rem;
  font-size: clamp(1.3rem, 2.3vw, 2rem);
  line-height: 1.25;
  font-weight: 400;
  color: var(--naranja-color);
  padding: 0.5rem 1rem;
}

.nt-home-values__inner p {
  margin: 0;
  font-size: clamp(1rem, 1.25vw, 1.18rem);
  /* font-weight: 500; */
  line-height: 1.6;
  color: #a2a2a2;
}

p.nt-home-values__eyebrow {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgb(76, 76, 76);
}
.nt-home-values__logo {
  margin: 0.5rem 0 0;
}

.nt-home-values__logo img {
  display: block;
}

@media (max-width: 768px) {
  .nt-home-intro__container {
    gap: 1.35rem;
  }

  .nt-home-intro__title {
    font-size: clamp(1.75rem, 8.5vw, 2.4rem);
  }

  .nt-home-values {
    justify-content: center;
  }

  .nt-home-values__inner {
    padding: 2rem 1.25rem;
  }

  .nspArts,
  .nspLinksWrap {
    padding: 0 !important;
  }
}

/* ===== END PORTADA MODULO HTML PERSONALIZADO ===== */

/* --- Oculta boton Editar en frontend (!important justificado) --- */
.article-can-edit {
  display: none !important;
}

/* ===== NT HEADER (buscador-logo-menu) ===== */

/* --- Fila: 3 columnas, logo centrado real via 1fr/auto/1fr --- */
.nt-header__row {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 1rem;
  margin: 0;
}

.nt-header__col--search {
  justify-self: start;
}

.nt-header__col--logo {
  justify-self: center;
}

.nt-header__col--menu {
  justify-self: end;
}

/* --- Buscador colapsable a icono --- */
.nt-header-search {
  position: relative;
  display: grid;
  place-items: center;
}

.nt-header-search__toggle {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}

.nt-header-search__icon {
  width: 1.25rem;
  height: 1.25rem;
}

.nt-header-search__panel {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 20;
  width: max(16rem, 90vw);
  max-width: 22rem;
  margin-top: 0.5rem;
  padding: 0.5rem;
  background: #fff;
  border: 1px solid rgb(0 0 0 / 8%);
  border-radius: 0.5rem;
  box-shadow: 0 0.5rem 1.5rem rgb(0 0 0 / 12%);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-0.5rem);
  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s ease;
}

.nt-header-search--active .nt-header-search__panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.nt-header-search__panel .sp-module {
  margin: 0;
}

/* --- Logo mobile: wordmark SVG, altura limitada --- */
.logo-image-phone {
  height: 1rem;
  width: auto;
}

/* --- Hamburguesa: altura fija, tamaño consistente (toggler ya vive fuera del nav, ver header.php) --- */
.nt-header #offcanvas-toggler {
  display: inline-flex;
  align-items: center;
  height: 2.5rem;
  line-height: 2.5rem;
}

.nt-header .burger-icon {
  width: 1.5rem;
}

/* --- Estado sticky: fondo naranja + logo/lupa/hamburguesa en gris10 --- */
#sp-header.header-sticky {
  background-color: var(--naranja-color);
  transition: background-color 0.25s ease;
}

#sp-header.header-sticky #sp-logo .logo {
  position: relative;
}

#sp-header.header-sticky #sp-logo .logo-image,
#sp-header.header-sticky #sp-logo .logo-image-phone {
  visibility: hidden;
}

#sp-header.header-sticky #sp-logo .logo::after {
  content: "";
  position: absolute;
  inset: 0;
  /* puramente decorativo (swap de logo blanco); sin esto tapaba el <a> y bloqueaba el click */
  pointer-events: none;
  background-image: url("../../../images/logo/nt-onlyword-logo-f5f5f5.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

#sp-header.header-sticky .nt-header-search__toggle {
  color: var(--gray10);
}

#sp-header.header-sticky .burger-icon > span {
  background-color: var(--gray10);
}

/* ===== END NT HEADER (buscador-logo-menu) ===== */

/* ===== NT SLIDER HOME (mod_djimageslider) ===== */

/* --- Puntos de navegación centrados (pisa el top/right por defecto del módulo) --- */
.nt-slider-module .djslider-default .navigation-container-custom,
.djslider-default .navigation-numbers {
  left: 50%;
  right: auto;
  top: unset;
  bottom: 0px;
  transform: translateX(-50%);
}
.nt-slider-module .djslider-default .load-button {
  width: 1rem;
  height: 1rem;
}

/* --- Flechas prev/next centradas verticalmente ---
   El campo admin "Navigation bar vertical position" no es un px literal en pantalla:
   helper.php lo divide por el alto de slide configurado y lo vuelve %, por lo que en
   anchos responsive angostos el top calculado cae debajo de la imagen real y el JS del
   modulo compensa agregando padding-bottom al wrapper (core, no configurable via admin).
   Se fuerza centrado real y se anula ese padding-bottom inline (!important justificado). */
.djslider-default .navigation-container {
  top: 50% !important;
  transform: translateY(-50%);
}
.djslider-loader {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/*  botones de navegacion prev next */
/* Apunte: los generó el componente y no permitió personalizarlo a traves de la configuración por lo cual sobreescribí el png */

.djslider-default .navigation-container .next-button,
.djslider-default .navigation-container .prev-button {
  width: clamp(2rem, 4vw, 3rem);
}

.nt-slider-module .prev-button,
.nt-slider-module .next-button {
  transform: scale(0.8);
  opacity: 0.5;
  display: block;
  transition:
    transform 0.3s ease,
    opacity 0.3s ease;
  &:hover {
    transform: scale(1);
    opacity: 1;
  }
}

@media (max-width: 767px) {
  /* --- Altura mobile: pisa estilo inline generado por PHP del modulo (!important justificado, no editamos el core del componente) --- */
  .djslider,
  .djslider .slider-container,
  .djslider-in > li {
    height: 60vh !important;
  }

  /* --- Imagen recortada y centrada, sin deformar (pisa estilo inline del <img>; !important justificado) --- */
  img.dj-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    top: 0 !important;
    transform: none !important;
  }
}

/* ===== END NT SLIDER HOME ===== */

/* ===== TRADUCTOR Google Link ===== */

.nt-gtranslate_wrapper {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 0.5rem;
  /* background-color: red; */
}
