/* ===========================================================
   LA ESTEPEÑA — Tema PrestaShop (capa de identidad)
   Sobrescribe el tema classic. Paleta granate / crema / dorado.
   =========================================================== */
:root {
  --granate: #6e1423;
  --granate-oscuro: #4a0e18;
  --rosa: #e9c9c5;
  --rosa-claro: #f6e6e3;
  --crema: #faf5ee;
  --crema-papel: #f3ead9;
  --dorado: #b08a3e;
  --tinta: #2a1417;
  --gris: #8a7a75;
  --linea: #e6d9c9;
  --serif: "Cormorant Garamond", "Times New Roman", serif;
  --display: "Cormorant SC", "Cormorant Garamond", serif;
  --sans: "Jost", "Helvetica Neue", Arial, sans-serif;
}

/* ---------- Base ---------- */
body {
  font-family: var(--sans);
  color: var(--tinta);
  background: var(--crema);
  font-weight: 300;
  letter-spacing: .01em;
}
#wrapper { background: var(--crema); }
.page-content, #content-wrapper { background: transparent; }

h1, h2, h3, h4, .h1, .h2, .h3 { font-family: var(--serif); color: var(--granate-oscuro); font-weight: 500; }
a { color: var(--granate); }
a:hover { color: var(--granate-oscuro); text-decoration: none; }

/* ---------- Botones ---------- */
.btn-primary,
.btn-secondary,
.btn-tertiary,
button.btn-primary,
.product-add-to-cart .add-to-cart,
.btn.btn-primary {
  background: var(--granate);
  border-color: var(--granate);
  color: #fff;
  font-family: var(--sans);
  font-weight: 400;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .8rem;
  border-radius: 0;
  padding: 13px 26px;
  transition: background .25s ease, color .25s ease;
}
.btn-primary:hover,
.btn-secondary:hover,
.product-add-to-cart .add-to-cart:hover,
.btn.btn-primary:hover {
  background: var(--granate-oscuro);
  border-color: var(--granate-oscuro);
  color: #fff;
}
.btn-secondary,
.btn-tertiary {
  background: transparent;
  color: var(--granate);
  border: 1px solid var(--granate);
}
.btn-secondary:hover { background: var(--granate); color: #fff; }

/* ---------- Barra de aviso superior ---------- */
.barra-aviso {
  background: var(--granate);
  color: var(--crema);
  text-align: center;
  font-size: .72rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  padding: 7px 16px;
  font-weight: 400;
}
.barra-aviso a { color: #fff; text-decoration: underline; }

/* ---------- Cabecera ---------- */
#header {
  background: var(--crema);
  box-shadow: 0 1px 0 var(--linea);
  color: var(--tinta);
}
#header .header-nav {
  background: var(--crema);
  border-bottom: 1px solid var(--linea);
  color: var(--gris);
  min-height: 0;
}
#header .header-nav a,
#header .header-top a { color: var(--tinta); }
#header .header-nav a:hover { color: var(--granate); }
#header .header-top { padding: 14px 0; }
#_desktop_logo img,
.logo { max-height: 64px; width: auto; }

/* Menú principal */
#_desktop_top_menu .top-menu a.dropdown-item,
#_desktop_top_menu .top-menu .sub-menu a,
.top-menu .top-menu-bottom a { color: var(--tinta); }
#_desktop_top_menu .top-menu > li > a {
  font-family: var(--sans);
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .8rem;
  font-weight: 400;
  color: var(--tinta);
}
#_desktop_top_menu .top-menu > li > a:hover,
#_desktop_top_menu .top-menu > li.active > a { color: var(--granate); }
.menu .sub-menu { border-top: 2px solid var(--granate); }

/* Iconos cabecera (buscar, usuario, carrito) */
#header .material-icons,
.blockcart .material-icons,
.user-info .material-icons { color: var(--granate); }
.blockcart.active { background: transparent; }
.cart-products-count {
  background: var(--granate);
  color: #fff;
}

/* Buscador */
.header-top .search-widget form input[type=text] {
  border: 1px solid var(--linea);
  border-radius: 0;
  background: #fff;
}
.header-top .search-widget form button[type=submit] { color: var(--granate); }

/* ---------- Pie ---------- */
#footer {
  background: var(--granate);
  color: var(--crema);
  padding-top: 56px;
}
#footer a, #footer .h3, #footer h3, #footer li a { color: var(--crema); }
#footer a:hover { color: #fff; text-decoration: underline; }
#footer .h3, #footer .title-block, #footer h3 {
  font-family: var(--serif);
  font-style: italic;
  color: #fff;
  text-transform: none;
  letter-spacing: .02em;
}
.footer-container { background: transparent; box-shadow: none; margin-top: 0; }
.footer-container li a { opacity: .9; }
#footer .links .collapse { display: block; }

/* Newsletter del footer */
.block-contact, .blockreassurance { color: inherit; }

/* ---------- Bloque de "reassurance" (beneficios) ---------- */
.blockreassurance .block-title { color: var(--granate-oscuro); font-family: var(--serif); }

/* ---------- Tarjetas de producto ---------- */
.product-miniature .thumbnail-container,
.product-miniature .card {
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.product-miniature img { border-radius: 0; }
.product-title, .product-miniature .product-title a {
  font-family: var(--serif);
  font-style: italic;
  font-size: 1.15rem;
  color: var(--granate-oscuro);
  text-transform: none;
  letter-spacing: 0;
}
.product-price-and-shipping .price,
.product-miniature .price,
.product-prices .current-price .price {
  color: var(--tinta);
  font-family: var(--serif);
  font-weight: 500;
}

/* ---------- Encabezado de página / categoría ---------- */
#category #left-column, #category .block-category {
  background: var(--crema);
}
.page-header h1, #main .page-header h1, .h1.page-title {
  font-family: var(--serif);
  font-style: italic;
  color: var(--granate-oscuro);
}

/* ---------- Misc ---------- */
.breadcrumb a, .breadcrumb li::after { color: var(--gris); }
hr { border-color: var(--linea); }
.card { border-color: var(--linea); border-radius: 0; }

/* ===========================================================
   HOME a medida — romper contenedor classic y maquetar widgets
   =========================================================== */
body#index #wrapper { padding: 0; background: var(--crema); }
body#index #wrapper > .container { max-width: none; width: 100%; padding: 0; margin: 0; }
body#index #main { width: 100%; max-width: none; padding: 0; margin: 0; float: none; }
body#index #content-wrapper { width: 100%; max-width: none; padding: 0; margin: 0; float: none; }
body#index #content.page-home { padding: 0; box-shadow: none; border: none; background: transparent; }
body#index .laestepena-home { background: var(--crema); }
body#index .breadcrumb { display: none; }

/* títulos y enlaces propios de los módulos de producto: ocultar */
.home-productos .products-section-title,
.home-productos .section-title,
.home-productos > h2,
.home-productos .h2 { display: none !important; }
.home-productos .all-product-link,
.home-productos .featured-products .all-product-link { display: none !important; }

/* rejilla de productos al estilo del diseño */
.home-productos .featured-products,
.home-productos .products { margin: 0; }
.home-productos .products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
  list-style: none;
  padding: 0;
}
.home-productos .product-miniature,
.home-productos .js-product-miniature { width: auto; max-width: none; margin: 0; padding: 0; }
.home-productos .thumbnail-container,
.home-productos .product-miniature .card {
  box-shadow: none; border: none; background: #fff; width: auto; height: auto; border-radius: 0;
}
.home-productos .thumbnail-container:hover { box-shadow: 0 18px 40px rgba(74,14,24,.10); }
.home-productos .product-thumbnail { display: block; }
.home-productos .product-thumbnail img { width: 100%; height: auto; border-radius: 0; }
.home-productos .product-description { padding: 14px 10px 22px; text-align: center; }
.home-productos .product-title { font-family: var(--serif); font-style: italic; font-size: 1.18rem; margin: 6px 0; }
.home-productos .product-title a { color: var(--granate-oscuro); }
.home-productos .product-price-and-shipping { text-align: center; }
.home-productos .price { color: var(--tinta); font-family: var(--serif); font-weight: 500; font-size: 1.05rem; }
.home-productos .highlighted-informations,
.home-productos .variant-links { display: none; }

@media (max-width: 960px) { .home-productos .products { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .home-productos .products { grid-template-columns: repeat(2, 1fr); gap: 16px; } }

/* ===========================================================
   CONSISTENCIA GLOBAL — unificar el diseño en TODAS las páginas
   Elimina el azul (#24b9d7) residual del tema classic y aplica
   la paleta granate/crema/dorado en catálogo, ficha, carrito,
   checkout, cliente, CMS y formularios.
   =========================================================== */

/* ---------- Precios ---------- */
.current-price,
.current-price .price,
.current-price-value,
.product-prices .current-price,
.product-prices .current-price-value,
.product-price .current-price-value {
  color: var(--tinta) !important;
  font-family: var(--serif);
  font-weight: 500;
}
.has-discount .current-price-value,
.product-price.has-discount .current-price-value { color: var(--granate) !important; }
.regular-price { color: var(--gris); }

/* ---------- Flags de producto (Novedad / Oferta / Fuera de stock) ---------- */
.product-flags .product-flag,
.product-flag {
  background: var(--granate) !important;
  color: #fff !important;
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 400;
}
.product-flag.out_of_stock { background: var(--gris) !important; }
.product-flag.new         { background: var(--dorado) !important; }
.product-flag.discount,
.product-flag.on-sale     { background: var(--granate) !important; }

/* ---------- Pestañas de la ficha (Descripción / Detalles) ---------- */
.tabs .nav-tabs { border-bottom-color: var(--linea); }
.tabs .nav-tabs .nav-link { color: var(--gris); }
.tabs .nav-tabs .nav-link.active,
.nav-tabs .nav-link.active.js-product-nav-active {
  color: var(--granate) !important;
  background: transparent;
  border: 0;
  border-bottom: 3px solid var(--granate);
}

/* ---------- Botón "default" del classic (p.ej. Seleccionar archivo) ---------- */
.btn-default,
label.btn-default,
.btn.btn-default {
  background: var(--granate);
  border-color: var(--granate);
  color: #fff;
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-weight: 400;
}
.btn-default:hover,
.btn.btn-default:hover {
  background: var(--granate-oscuro);
  border-color: var(--granate-oscuro);
  color: #fff;
}

/* ---------- Foco de formularios en tono marca (no azul) ---------- */
.form-control:focus,
input:focus, textarea:focus, select:focus {
  border-color: var(--granate) !important;
  box-shadow: none !important;
  outline: none;
}

/* ---------- Radios/checks y paginación activos (evita azul classic) ---------- */
.custom-radio input:checked + span,
.custom-checkbox input:checked + span {
  background-color: var(--granate) !important;
  border-color: var(--granate) !important;
}
.page-list .current a,
.pagination .current a,
.pagination li.active a {
  background: var(--granate);
  border-color: var(--granate);
  color: #fff;
}
.page-list a:hover { color: var(--granate); }

/* ---------- Columna izquierda de categoría ---------- */
/* Ocultar bloques vacíos heredados del classic (proveedores / marcas) */
#search_filters_suppliers,
#search_filters_brands { display: none !important; }

/* Árbol de categorías coherente con el resto del sitio */
#left-column .block-categories {
  background: #fff;
  border: 1px solid var(--linea);
  border-radius: 0;
  box-shadow: none;
}
#left-column .block-categories a { color: var(--tinta); }
#left-column .block-categories a:hover { color: var(--granate); }
#left-column .block-categories .h6,
#left-column .block-categories .title_block,
#left-column .block-categories .category-top-menu > li > .h6 {
  color: var(--granate-oscuro);
  font-family: var(--serif);
}

/* ---------- Carrito / checkout: acentos coherentes ---------- */
.cart-summary-line .value,
.cart-total .value { color: var(--tinta); }
.checkout-step .step-title,
.checkout-step .step-number { color: var(--granate-oscuro); }
.checkout-step.-current .step-title { color: var(--granate); }
a.showdetails, .link, .cart-detailed-actions a { color: var(--granate); }

/* ---------- Ficha: miniatura seleccionada y contenedor de precio ---------- */
.product-images .thumb.selected,
.js-thumb.selected,
.thumb.js-thumb.selected { border-color: var(--granate) !important; }
.product-price,
.product-price.h5 { color: var(--tinta) !important; }

/* ===========================================================
   HOME — arreglos de consistencia (rejilla featured + footer)
   Añadido tras revisión completa de la home.
   =========================================================== */

/* Rejilla de productos destacados (sección "La Caja Real" y similares):
   el módulo featuredproducts trae columnas Bootstrap flotadas del classic
   que colapsaban las tarjetas. Las forzamos a rejilla como el resto. */
.laestepena-home .featured-products .products{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px;
  margin:0;padding:0;list-style:none;
}
.laestepena-home .featured-products .products>.js-product,
.laestepena-home .featured-products .products>.product{
  width:100%!important;max-width:100%!important;flex:0 0 100%!important;
  float:none!important;margin:0!important;padding:0!important;
}
.laestepena-home .featured-products .product-miniature,
.laestepena-home .featured-products .product-miniature>.thumbnail-container,
.laestepena-home .featured-products .product-miniature .card{
  width:100%!important;max-width:100%!important;display:block!important;
  border:none;box-shadow:none;background:#fff;
}
.laestepena-home .featured-products .thumbnail-container{position:relative;}
.laestepena-home .featured-products .thumbnail-container .product-thumbnail,
.laestepena-home .featured-products .product-thumbnail img{
  width:100%!important;height:auto!important;display:block;
}
.laestepena-home .featured-products .product-description{padding:14px 10px 22px;text-align:center;}
.laestepena-home .featured-products .product-flag{
  position:absolute;top:10px;left:0;width:auto;height:auto;padding:6px 12px;line-height:1.1;
}
.laestepena-home .featured-products .all-product-link{display:none!important;}
@media(max-width:960px){ .laestepena-home .featured-products .products{grid-template-columns:repeat(2,1fr);} }
@media(max-width:560px){ .laestepena-home .featured-products .products{grid-template-columns:repeat(2,1fr);gap:16px;} }

/* Footer claro a medida (home): los enlaces heredaban color crema y quedaban
   invisibles sobre el fondo crema. Los ponemos en tono tinta legible. */
html body .laestepena-home footer.footer .footer-grid a,
html body footer.footer .contenedor .footer-grid a,
html body footer.footer .footer-grid a{
  color:var(--tinta)!important;opacity:1!important;
}
html body footer.footer .footer-grid a:hover{
  color:var(--granate)!important;text-decoration:underline;
}

/* ===========================================================
   LISTADOS (categoría/búsqueda) — sin sidebar, rejilla a todo
   el ancho como el diseño ORIGINAL de la tienda.
   =========================================================== */
#category #left-column,
#category #search_filters_wrapper,
.category #left-column,
#search #left-column { display:none!important; }

#category #content-wrapper,
#category #content-wrapper.left-column,
.category #content-wrapper,
#search #content-wrapper {
  width:100%!important; max-width:100%!important; flex:0 0 100%!important;
}
#category #main .row, #search #main .row { display:block!important; }

#category #js-product-list .products,
#category .products.row,
#search #js-product-list .products {
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  gap:28px!important; float:none!important;
}
#category #js-product-list .products>.js-product,
#category .products.row>.js-product,
#search #js-product-list .products>.js-product {
  width:100%!important; max-width:100%!important; flex:0 0 100%!important;
  float:none!important; margin:0!important;
}
@media(max-width:960px){
  #category #js-product-list .products,
  #search #js-product-list .products { grid-template-columns:repeat(2,1fr)!important; }
}

/* ===========================================================
   PARTE 2 — Ancho completo (como la plantilla, --w:1500) en
   páginas de contenido + limpieza de listados. (No afecta home)
   =========================================================== */
body:not(#index) #wrapper .container{
  max-width:1500px!important;width:100%!important;
  padding-left:32px!important;padding-right:32px!important;
}

/* Colapsar la cabecera de categoría vacía (min-height 220px fijo) */
body#category .block-category,
body#search  .block-category{
  min-height:0!important;padding:0!important;margin:0 0 16px!important;
  background:transparent!important;border:none!important;box-shadow:none!important;
}
body#category .block-category .block-category-inner:empty{display:none!important;}

/* Rejilla de listados con el gap de la plantilla */
body#category #js-product-list .products,
body#search  #js-product-list .products{ gap:44px 28px!important; }

/* ---------- Ficha: tira de miniaturas (evita imagen estirada/borrosa) ---------- */
.product-images.js-qv-product-images{
  display:flex!important;gap:10px!important;flex-wrap:wrap!important;border:none!important;margin-top:14px;
}
.product-images .thumb-container,
.product-images .thumb{ width:auto!important;max-width:none!important;border:none!important;box-shadow:none!important; }
.product-images img.thumb,
.product-images .thumb-container img{
  width:82px!important;height:82px!important;max-width:82px!important;object-fit:cover!important;
  border:1px solid var(--linea)!important;border-radius:0;
}
.product-images .thumb.selected,
.product-images .js-thumb.selected{ border-color:var(--granate)!important; }

/* ---------- Pulido móvil ---------- */
@media(max-width:575px){
  .product-flag{ font-size:.62rem!important;padding:5px 9px!important;letter-spacing:.03em!important;line-height:1.1; }
  body:not(#index) #wrapper .container{ padding-left:16px!important;padding-right:16px!important; }
}

/* ===========================================================
   PARTE 3 — Card de producto IGUAL que la plantilla (.producto)
   Cuadro 1:1 con borde fino, imagen contenida sobre blanco,
   etiqueta pequeña arriba-izquierda, título cursiva + precio serif
   centrados. Aplica a listados de categoría y búsqueda.
   =========================================================== */
#category .product-miniature, #search .product-miniature{ text-align:center; width:100%; background:transparent; }

#category .thumbnail-container, #search .thumbnail-container{
  width:100%!important;max-width:100%!important;background:transparent!important;box-shadow:none!important;border:none!important;margin:0!important;}
#category .thumbnail-top, #search .thumbnail-top{ width:100%!important; }

#category .product-thumbnail, #search .product-thumbnail{
  position:relative!important;display:block!important;width:100%!important;aspect-ratio:1/1;background:#fff!important;
  border:1px solid var(--linea)!important;overflow:hidden;margin-bottom:18px!important;}
#category .product-thumbnail picture, #search .product-thumbnail picture{display:block;width:100%;height:100%;}
#category .product-thumbnail img, #search .product-thumbnail img{
  position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center;background:#fff;}

#category .highlighted-informations, #search .highlighted-informations{display:none!important;}

#category .product-description, #search .product-description{
  background:transparent!important;text-align:center!important;padding:0!important;border:none!important;box-shadow:none!important;}

/* Etiqueta pequeña arriba-izquierda (como .etiqueta de la plantilla) */
#category .product-flags, #search .product-flags{
  top:14px!important;left:14px!important;right:auto!important;bottom:auto!important;width:auto!important;display:block!important;margin:0!important;padding:0!important;}
#category .product-flags .product-flag, #search .product-flags .product-flag{
  position:static!important;display:inline-block!important;width:auto!important;max-width:none!important;height:auto!important;
  margin:0 0 4px 0!important;font-size:.62rem!important;letter-spacing:.18em!important;padding:5px 10px!important;line-height:1;}
#category .product-flag.out_of_stock, #search .product-flag.out_of_stock{
  background:rgba(42,20,23,.85)!important;color:var(--rosa-claro)!important;}

/* Título en cursiva y precio en serif, centrados */
#category .product-title, #category .product-title a,
#search .product-title, #search .product-title a{
  font-style:italic!important;font-weight:400;font-size:1.25rem!important;color:var(--granate-oscuro)!important;text-transform:none!important;}
#category .product-price-and-shipping .price, #search .product-price-and-shipping .price{
  font-family:var(--serif)!important;font-size:1.15rem!important;color:var(--tinta)!important;}

@media(max-width:575px){
  #category .product-title, #search .product-title{font-size:1.05rem!important;}
  #category .product-price-and-shipping .price, #search .product-price-and-shipping .price{font-size:1rem!important;}
  #category .product-flags .product-flag, #search .product-flags .product-flag{font-size:.55rem!important;padding:4px 8px!important;}
}

/* La plantilla no lleva icono de deseos en la card -> ocultarlo en listados */
#category .product-miniature .wishlist-button-add,
#search  .product-miniature .wishlist-button-add{ display:none!important; }

/* ===========================================================
   PARTE 4 — Barra de aviso + ficha de producto (como plantilla)
   =========================================================== */

/* Enlace de la barra de aviso en blanco (era gris, ilegible) */
.barra-aviso a, .barra-aviso a:hover{ color:#fff!important; }

/* --- Ficha de producto --- */
/* Título serif cursiva granate, grande (como .ficha-info h1) */
#product .product-title, #product h1[itemprop=name], #product .h1.product-title{
  font-family:var(--serif)!important;font-style:italic!important;font-weight:400!important;
  color:var(--granate-oscuro)!important;font-size:clamp(2rem,3.2vw,2.6rem)!important;line-height:1.1;}

/* Precio serif granate grande (como .ficha-precio) */
#product .product-prices .current-price .current-price-value,
#product .product-price, #product .current-price-value{
  color:var(--granate)!important;font-family:var(--serif)!important;font-size:1.9rem!important;font-weight:500!important;}
#product .product-prices{ margin:6px 0 18px; }

/* Ocultar el bloque "Reassurance" con texto placeholder sin configurar */
#product .blockreassurance_product, .blockreassurance_product{ display:none!important; }

/* ===========================================================
   PARTE 5 — Ficha: bloque de garantías igual que la plantilla
   =========================================================== */
.ficha-extras{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:28px 0; }
.ficha-extra{ display:flex; gap:10px; align-items:flex-start; padding:14px; border:1px solid var(--linea); background:var(--crema-papel); }
.ficha-extra svg{ stroke:var(--granate); width:22px; height:22px; flex-shrink:0; }
.ficha-extra > div{ display:flex; flex-direction:column; }
.ficha-extra strong{ font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; color:var(--granate); display:block; margin-bottom:4px; }
.ficha-extra span{ font-size:.82rem; color:var(--gris); }
@media(max-width:575px){ .ficha-extras{ grid-template-columns:1fr; } }

/* ===========================================================
   PARTE 6 — Home "featured" (La Caja Real): MISMA card que los
   listados (cuadro 1:1 con borde, etiqueta pequeña, sin corazón)
   =========================================================== */
.laestepena-home .featured-products .product-miniature{ text-align:center; }
.laestepena-home .featured-products .thumbnail-container{ background:transparent!important; box-shadow:none!important; border:none!important; }
.laestepena-home .featured-products .product-thumbnail{
  position:relative!important; display:block!important; width:100%!important; aspect-ratio:1/1; background:#fff!important;
  border:1px solid var(--linea)!important; overflow:hidden; margin-bottom:16px!important; }
.laestepena-home .featured-products .product-thumbnail picture{ display:block; width:100%; height:100%; }
.laestepena-home .featured-products .product-thumbnail img{
  position:absolute!important; inset:0; width:100%!important; height:100%!important; object-fit:contain!important; object-position:center; background:#fff; }
.laestepena-home .featured-products .highlighted-informations{ display:none!important; }
.laestepena-home .featured-products .product-flags{
  top:14px!important; left:14px!important; right:auto!important; bottom:auto!important; width:auto!important; display:block!important; margin:0!important; padding:0!important; }
.laestepena-home .featured-products .product-flags .product-flag{
  position:static!important; display:inline-block!important; width:auto!important; max-width:none!important; height:auto!important;
  margin:0 0 4px 0!important; font-size:.62rem!important; letter-spacing:.18em!important; padding:5px 10px!important; line-height:1; }
.laestepena-home .featured-products .product-flag.out_of_stock{ background:rgba(42,20,23,.85)!important; color:var(--rosa-claro)!important; }
.laestepena-home .featured-products .product-miniature .wishlist-button-add{ display:none!important; }


/* ===========================================================
   PARTE 7 — Icono hamburguesa: SOLO móvil (<=960px). 3 rayas
   apiladas (☰), mismo tamaño y espaciado que los demás iconos.
   En escritorio queda oculto por el tema (no forzamos display).
   =========================================================== */
@media (max-width: 960px){
  .nav-burger{
    display:inline-flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:20px!important;
    height:20px!important;
    gap:4px!important;
    padding:0!important;
    margin:0!important;
  }
  .nav-burger span{ margin:0!important; width:20px!important; height:2px!important; }
}

/* ===========================================================
   PARTE 8 — Móvil: evitar desborde horizontal que hacía que el
   navegador redujera la escala y el contenido se viera estrecho
   (drawer off-canvas / 100vw / cabecera con logo que no encogía).
   =========================================================== */
html, body{ overflow-x:hidden!important; max-width:100%; }

@media (max-width: 960px){
  .header-grid{ gap:10px!important; padding:12px 16px!important; }
  .header-grid .logo img{ max-width:150px!important; height:auto!important; }
}

/* ===========================================================
   PARTE 9 — Cabecera móvil (fix aportado por el cliente):
   iconos pegados a la derecha y logo a 207px para que la fila
   ocupe bien el ancho sin desbordar.
   =========================================================== */
@media (max-width: 960px){
  .iconos{ margin-left:auto; padding-left:0; border-left:none; }
  .header-grid .logo img{ max-width:207px !important; height:auto !important; }
}
