/* =====================================================================
   Ajustes de Porto para acercarlo al prototipo.
   Lo principal (colores, fuentes, tipo de cabecera) se configura en
   Porto → Theme Options (ver GUIA-PORTO.md). Aquí solo van los detalles
   que Theme Options no cubre. Los selectores son los habituales de
   Porto 7.x; si tu tipo de cabecera usa otros, ajústalos con el
   inspector del navegador.
   ===================================================================== */

/* ---------- Base ---------- */
body{background:var(--sm-crema)}
body,p,.porto-u-sub-heading{font-family:var(--sm-texto)}
h1,h2,h3,h4,.page-title,.product_title,.woocommerce-loop-product__title.sm-display{font-family:var(--sm-display)}
::selection{background:var(--sm-electrico);color:#fff}

/* Home a ancho completo: sin márgenes del contenedor de Porto */
.sm-es-home #main .main-content{padding-top:0;padding-bottom:0}
.sm-es-home .page-top{display:none}

/* ---------- Barra superior ---------- */
#header .header-top{background:var(--sm-marino)!important;border-bottom:0;font-size:12.5px}
#header .header-top,#header .header-top a{color:#fff}

/* ---------- Cabecera principal ---------- */
#header .header-main{background:#fff}
#header .logo img{max-height:46px;width:auto}

/* Buscador redondeado con botón eléctrico */
#header .searchform{border:1.5px solid var(--sm-marino)!important;border-radius:999px!important;overflow:hidden;background:#fff}
#header .searchform input,#header .searchform select{border:0!important;background:transparent!important;font-family:var(--sm-texto)}
#header .searchform button{background:var(--sm-electrico)!important;color:#fff!important;border-radius:0!important}

/* Mini carro como píldora */
#mini-cart .cart-head{background:var(--sm-electrico);color:#fff;border-radius:999px;padding:0 16px;height:46px;display:flex;align-items:center}
#mini-cart .cart-head i,#mini-cart .cart-head .minicart-icon{color:#fff}
#mini-cart .cart-items{background:var(--sm-naranja)!important;color:#fff!important}

/* ---------- Menú principal (barra marino) ---------- */
#header .main-menu-wrap{background:var(--sm-marino)}
#header .main-menu > li.menu-item > a{font-family:var(--sm-texto);font-weight:600;font-size:14px;text-transform:none;letter-spacing:0;color:#fff;border-bottom:3px solid transparent;border-radius:0}
#header .main-menu > li.menu-item:hover > a,#header .main-menu > li.menu-item.active > a{background:rgba(255,255,255,.07)!important;color:#fff!important;border-bottom-color:var(--sm-electrico)}
/* Mega menú ("Wide") */
#header .main-menu .wide .popup > .inner{border-top:3px solid var(--sm-electrico);border-radius:0 0 14px 40px;box-shadow:0 30px 60px rgba(2,35,80,.18)}
#header .main-menu .wide li.sub > a{font-family:var(--sm-display);font-size:16px;font-weight:600;color:var(--sm-marino);text-transform:none}
#header .main-menu .wide li.sub li.menu-item > a{color:var(--sm-gris);font-size:13.5px}
#header .main-menu .wide li.sub li.menu-item > a:hover{color:var(--sm-electrico);background:none}
/* Ítem "Ofertas" con punto coral: agrega la clase CSS "sm-ofertas" al ítem del menú */
#header .main-menu > li.sm-ofertas > a::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--sm-coral);margin-right:6px;vertical-align:1px}

/* ---------- Botones globales de WooCommerce / Porto ---------- */
.btn-primary,.button.alt,.single_add_to_cart_button,.checkout-button,#place_order{background:var(--sm-electrico)!important;border-color:var(--sm-electrico)!important;border-radius:999px!important;font-family:var(--sm-texto);font-weight:700;text-transform:none!important;letter-spacing:0!important}
.btn-primary:hover,.button.alt:hover,.single_add_to_cart_button:hover{background:var(--sm-electrico-h)!important}
.onsale,.product-label .onsale{background:var(--sm-coral)!important;border-radius:999px!important}
.product-label .onhot,.product-label .new{background:var(--sm-electrico)!important;border-radius:999px!important}
ul.products li.product .price,.product .price{color:var(--sm-marino);font-family:var(--sm-display);font-weight:700}

/* ---------- Pie ---------- */
#footer{background:var(--sm-marino)!important;color:#B8C3DE}
#footer .widget-title,#footer h4{color:#fff;font-family:var(--sm-display);text-transform:none;font-weight:600;font-size:18px;letter-spacing:0}
#footer a{color:#B8C3DE}#footer a:hover{color:#fff}
#footer .footer-bottom{background:#011B40!important}

/* ---------- Móvil ---------- */
@media (max-width:860px){
  body{padding-bottom:64px}
  /* Evita que el botón "volver arriba" de Porto tape la barra inferior */
  #topcontrol,.scroll-to-top{bottom:80px!important}
}

/* sm-home-ancho: el home ocupa todo el ancho (slider de borde a borde, como el prototipo) */
.sm-es-home #main > .container-fluid,.sm-es-home #main > .container{padding-left:0;padding-right:0;max-width:none}
.sm-es-home #main .main-content-wrap{margin-left:0;margin-right:0}
.sm-es-home #main .main-content{padding-left:0;padding-right:0}
/* Puntos del slider visibles también en banners claros */
.sm-slider-full .sm-puntos button{background:rgba(2,35,80,.28)}
.sm-slider-full .sm-puntos button[aria-current="true"]{background:var(--sm-naranja)}

/* sm-cabecera: cabecera del prototipo aprobado sobre el tipo de cabecera de Porto
   (logo | buscador | carro  /  barra de menú azul marino a todo el ancho) */
.sm-anuncio{background:var(--sm-marino);color:#fff;font-family:var(--sm-texto);font-size:13.5px;font-weight:500;text-align:center;padding:9px 16px;line-height:1.4}
.sm-anuncio a{color:#fff;text-decoration:underline;font-weight:700}
.sm-anuncio a:hover{color:#fff}
#header .header-main{border-bottom:0;box-shadow:0 1px 0 var(--sm-linea)}
@media (min-width:992px){
  #header .header-main .header-container{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"logo search cart" "menu menu menu";align-items:center;column-gap:32px;min-height:0;padding-top:16px}
  #header .header-left{grid-area:logo}
  #header .header-main .header-container .header-right,#header .header-main .header-container .header-right-top{display:contents!important}
  #header .header-main .header-container .header-left{grid-area:logo;padding:0}
  #header .searchform-popup{grid-area:search;justify-self:stretch;max-width:640px;width:100%}
  #header #mini-cart{grid-area:cart;margin:0}
  #header .header-right-bottom{grid-area:menu;margin-top:16px;background:var(--sm-marino);box-shadow:50vw 0 0 0 var(--sm-marino),-50vw 0 0 0 var(--sm-marino)}
  #header #main-menu .main-menu{display:flex;justify-content:space-between;width:100%}
  #header .main-menu > li.menu-item > a{padding:16px 14px 13px!important;line-height:1.2;color:#fff!important;font-size:14.5px}
  #header .main-menu > li.menu-item.has-sub > a::after{color:#fff}
}
/* Buscador siempre visible y redondeado */
#header .searchform-popup .search-toggle{display:none}
#header .searchform-popup .searchform{display:block!important;position:static;box-shadow:none;width:100%;margin:0}
#header .searchform .searchform-fields{display:flex;height:48px}
#header .searchform input[type=text],#header .searchform input[type=search]{height:46px;padding:0 22px;font-size:15px;width:100%}
#header .searchform button{width:58px;height:46px}
/* Mega menú: columnas con título de categoría */
#header .main-menu .wide .popup li.sub > a{font-size:15.5px}
@media (max-width:991px){
  #header .searchform-popup{flex:1}
}

/* sm-cabecera-2: buscador a lo ancho, menú repartido y carro como píldora */
#header .searchform .searchform-fields > .text,#header .searchform .searchform-fields > span.text{flex:1;min-width:0}
#header .searchform .button-wrap{flex:0 0 auto}
#header .searchform .searchform-fields{border:0}
@media (min-width:992px){
  #header #main-menu{display:block;width:100%}
  #header #main-menu .main-menu{justify-content:space-between}
}
#mini-cart .cart-head{border-radius:999px;height:48px;padding:0 18px;gap:8px}
/* Se usa el pie propio del tema (prototipo aprobado) */
#footer{display:none!important}

/* Aviso de Porto solo visible para administradores */
.header-wrapper .porto-tooltip-wrap.header-tooltip{display:none!important}

/* =====================================================================
   FICHA DE PRODUCTO (v4.1) — body.sm-ficha
   ===================================================================== */
.sm-ficha .page-top{display:none!important}
.sm-ficha .main-content-wrap>.sidebar,.sm-ficha .porto-woo-product-sidebar{display:none!important}
.sm-ficha .main-content-wrap>.main-content{flex:0 0 100%!important;max-width:100%!important;width:100%!important}
.sm-ficha .column2{background:linear-gradient(180deg,var(--sm-tinte) 0,#fff 420px)}
.sm-ficha .column2{padding-top:28px}
.sm-ficha .product-nav,.sm-ficha .product-share,.sm-ficha .yith-wcwl-add-to-wishlist,.sm-ficha .summary .compare,.sm-ficha .summary .product_meta,.sm-ficha .woocommerce-product-rating:not(:has(.star-rating[aria-label*="Valorado"])){display:none!important}

/* Galería */
.sm-ficha .product-summary-wrap{background:#fff;border-radius:var(--sm-r);box-shadow:0 20px 60px -30px rgba(2,35,80,.35);padding:28px;margin-bottom:40px}
.sm-ficha .summary-before .product-image-slider,.sm-ficha .summary-before .woocommerce-product-gallery__wrapper{border-radius:var(--sm-r-s);overflow:hidden}
.sm-ficha .summary-before .product-images img{mix-blend-mode:multiply}
.sm-ficha .product-thumbnails .img-thumbnail,.sm-ficha .product-thumbs-slider .owl-item img{border-radius:12px}
.sm-ficha .onsale,.sm-ficha .labels .onsale{background:var(--sm-coral)!important;border-radius:20px!important;font-family:var(--sm-texto);font-weight:700}

/* Caja de compra fija */
@media (min-width:992px){
  .sm-ficha .product-summary-wrap>.row{align-items:flex-start}
  .sm-ficha .summary.entry-summary{position:sticky;top:110px;padding-left:28px}
}
.sm-ficha .summary{font-family:var(--sm-texto);color:var(--sm-marino)}
.sm-f-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.sm-f-marca{background:var(--sm-marino);color:#fff;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:20px}
.sm-f-sku{font-size:12px;color:var(--sm-gris);font-weight:600}
.sm-f-stock{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:20px}
.sm-f-stock--si{background:#E3F6EA;color:var(--sm-verde)}
.sm-f-stock--no{background:#FFE6E9;color:var(--sm-coral)}
.sm-ficha .summary .product_title{font-family:var(--sm-display)!important;font-weight:600!important;text-transform:none!important;font-size:clamp(26px,2.6vw,36px)!important;line-height:1.12!important;color:var(--sm-marino)!important;letter-spacing:0!important;margin:0 0 14px!important}
.sm-ficha .summary .price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 6px!important;font-family:var(--sm-display)!important}
.sm-ficha .summary .price ins,.sm-ficha .summary .price>.amount,.sm-ficha .summary .price>.woocommerce-Price-amount{order:1;color:var(--sm-electrico)!important;font-size:38px!important;font-weight:600!important;text-decoration:none}
.sm-ficha .summary .price del{order:2;color:var(--sm-gris)!important;font-size:18px!important;opacity:.8}
.sm-f-ahorro{display:inline-flex;align-items:center;gap:8px;background:#FFF0E6;color:var(--sm-naranja);font-weight:700;font-size:13px;padding:6px 12px 6px 6px;border-radius:20px;margin-bottom:16px}
.sm-f-ahorro b{background:var(--sm-naranja);color:#fff;padding:3px 8px;border-radius:14px}
.sm-ficha .summary .woocommerce-product-details__short-description{color:var(--sm-gris);font-size:14.5px;line-height:1.65;border-top:1px solid var(--sm-linea);padding-top:16px;margin-bottom:18px}
.sm-ficha .summary .woocommerce-product-details__short-description p:last-child{margin:0}

/* Cantidad + botón */
.sm-ficha form.cart{display:flex!important;gap:12px;align-items:stretch;flex-wrap:wrap;margin:0 0 12px!important;padding:0!important;border:0!important}
.sm-ficha form.cart .quantity{margin:0!important;border:2px solid var(--sm-linea);border-radius:999px;overflow:hidden;display:flex;height:54px}
.sm-ficha form.cart .quantity .qty,.sm-ficha form.cart .quantity button,.sm-ficha form.cart .quantity .plus,.sm-ficha form.cart .quantity .minus{border:0!important;background:transparent!important;height:50px!important;color:var(--sm-marino);font-weight:700}
.sm-ficha form.cart .single_add_to_cart_button{flex:1 1 200px;height:54px!important;line-height:54px!important;padding:0 28px!important;border-radius:999px!important;background:var(--sm-naranja)!important;border:0!important;color:#fff!important;font-family:var(--sm-texto)!important;font-weight:700!important;font-size:16px!important;text-transform:none!important;letter-spacing:0!important;box-shadow:0 12px 24px -12px rgba(255,98,5,.7);transition:transform .15s,background .15s}
.sm-ficha form.cart .single_add_to_cart_button:hover{background:var(--sm-naranja-h)!important;transform:translateY(-1px)}
.sm-f-wsp{display:flex;align-items:center;justify-content:center;gap:10px;height:52px;border-radius:999px;border:2px solid #25D366;color:#128C4A!important;font-weight:700;font-size:15px;text-decoration:none!important;margin-bottom:22px;transition:background .15s}
.sm-f-wsp:hover{background:#EAFBF1}
.sm-ficha .summary .stock.out-of-stock{display:none}

/* Beneficios + pagos */
.sm-f-benef{list-style:none;margin:0 0 18px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:var(--sm-tinte);border-radius:var(--sm-r-s)}
.sm-f-benef li{display:flex;gap:10px;align-items:flex-start;margin:0}
.sm-f-benef svg{flex:none;color:var(--sm-electrico);margin-top:2px}
.sm-f-benef strong{display:block;font-size:13px;color:var(--sm-marino)}
.sm-f-benef span{display:block;font-size:12px;line-height:1.45;color:var(--sm-gris)}
.sm-f-pagos{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px;color:var(--sm-gris)}
.sm-f-pagos span{font-weight:600;margin-right:4px}
.sm-f-pagos em{font-style:normal;font-weight:700;color:var(--sm-marino);border:1px solid var(--sm-linea);border-radius:8px;padding:4px 9px;background:#fff}

/* Pestañas */
.sm-ficha .woocommerce-tabs{background:#fff;border-radius:var(--sm-r);border:1px solid var(--sm-linea);padding:8px 28px 28px;margin-bottom:48px}
.sm-ficha .woocommerce-tabs .resp-tabs-list,.sm-ficha .woocommerce-tabs ul.tabs{display:flex;gap:8px;border:0!important;margin:12px 0 18px!important;padding:0!important}
.sm-ficha .woocommerce-tabs .resp-tabs-list li,.sm-ficha .woocommerce-tabs ul.tabs li{border:0!important;background:var(--sm-tinte)!important;border-radius:999px!important;padding:10px 20px!important;margin:0!important;font-family:var(--sm-texto);font-weight:700;font-size:13px!important;color:var(--sm-marino)!important;text-transform:none!important}
.sm-ficha .woocommerce-tabs .resp-tabs-list li.resp-tab-active,.sm-ficha .woocommerce-tabs ul.tabs li.active{background:var(--sm-electrico)!important;color:#fff!important}
.sm-ficha .woocommerce-tabs .resp-tabs-list li:after,.sm-ficha .woocommerce-tabs .resp-tabs-list li:before{display:none!important}
.sm-ficha .woocommerce-tabs .resp-tab-content,.sm-ficha .woocommerce-tabs .tab-content{border:0!important;padding:0!important;color:var(--sm-gris);font-size:15px;line-height:1.7}

/* Relacionados */
.sm-ficha .related.products>h2,.sm-ficha .related .slider-title,.sm-ficha .upsells .slider-title{font-family:var(--sm-display)!important;text-transform:none!important;font-size:28px!important;color:var(--sm-marino)!important;font-weight:600!important}
.sm-ficha .related .product-col .product-inner,.sm-ficha .related li.product .product-inner{border-radius:var(--sm-r-s);overflow:hidden}
.sm-ficha .related .price{color:var(--sm-electrico)!important;font-weight:700}

/* Barra fija en celular */
.sm-pbar{display:none}
@media (max-width:991px){
  .sm-ficha .product-summary-wrap{padding:16px}
  .sm-ficha .summary.entry-summary{padding-left:15px}
  .sm-f-benef{grid-template-columns:1fr}
  .sm-pbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:999;gap:12px;align-items:center;background:#fff;padding:10px 14px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -10px 30px -12px rgba(2,35,80,.35);font-family:var(--sm-texto)}
  .sm-pbar-info{flex:1;min-width:0;display:flex;flex-direction:column}
  .sm-pbar-n{font-size:12px;color:var(--sm-gris);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sm-pbar-p{font-weight:700;color:var(--sm-electrico);font-size:16px}
  .sm-pbar-p del{font-size:12px;color:var(--sm-gris);font-weight:500;margin-right:4px}
  .sm-pbar-p ins{text-decoration:none}
  .sm-pbar-btn{border:0;border-radius:999px;background:var(--sm-naranja);color:#fff!important;font-weight:700;padding:13px 22px;font-size:15px;text-decoration:none!important;white-space:nowrap}
  .sm-pbar-btn--wsp{background:#25D366}
  body.sm-ficha{padding-bottom:76px}
  body.sm-ficha .sm-wsp{bottom:88px!important}
}

/* sm-cabecera-movil (v4.1): menú | logo | carro  /  buscador a lo ancho */
@media (max-width:991px){
  .sm-anuncio{font-size:12px;padding:7px 12px}
  #header .header-main .header-container{display:grid!important;grid-template-columns:44px 1fr 48px;grid-template-areas:"menu logo cart" "search search search";align-items:center;gap:10px 8px;padding-top:10px!important;padding-bottom:12px!important;min-height:0!important}
  #header .header-main .header-left,#header .header-main .header-right,#header .header-main .header-right-top,#header .header-main .header-right-bottom{display:contents!important}
  #header .header-main .logo{grid-area:logo;justify-self:center;margin:0!important}
  #header .header-main .logo img{max-height:40px!important;width:auto!important;max-width:180px!important}
  #header .header-main .searchform-popup{grid-area:search;display:block!important;width:100%!important;margin:0!important}
  #header .header-main .searchform-popup .search-toggle{display:none!important}
  #header .header-main .searchform-popup .searchform{display:block!important;position:static!important;width:100%!important;box-shadow:none!important;padding:0!important;border:2px solid var(--sm-marino)!important;border-radius:999px!important;overflow:hidden}
  .sm-ficha .column2{padding-top:8px}
  #header .header-main .mini-cart{grid-area:cart;justify-self:end;margin:0!important}
  #header .header-main .mobile-toggle{grid-area:menu;justify-self:start;margin:0!important;background:var(--sm-marino)!important;border-radius:10px;width:40px;height:40px;display:flex!important;align-items:center;justify-content:center;font-size:18px}
  #header .header-main .header-right-bottom>*:not(.mobile-toggle){display:none!important}
}

/* =====================================================================
   SIN BARRAS LATERALES + TIENDA / CATEGORÍAS (v4.1.4)
   ===================================================================== */
.main-content-wrap>.sidebar{display:none!important}
.main-content-wrap>.main-content{flex:0 0 100%!important;max-width:100%!important;width:100%!important}

/* Cabecera de páginas internas con la marca (en vez de la franja negra) */
body:not(.sm-ficha) .page-top{background:var(--sm-tinte) var(--sm-onda-azul) repeat!important;border:0!important;padding:28px 0 26px!important}
body:not(.sm-ficha) .page-top:after,body:not(.sm-ficha) .page-top .page-title:after{display:none!important}
body:not(.sm-ficha) .page-top .page-title{font-family:var(--sm-display)!important;color:var(--sm-marino)!important;font-weight:600!important;font-size:clamp(28px,3vw,40px)!important;text-transform:none!important;letter-spacing:0!important;border:0!important}
.page-top .breadcrumb,.page-top .breadcrumb li,.page-top .breadcrumb a{color:var(--sm-gris)!important;font-family:var(--sm-texto);font-size:12.5px!important;text-transform:none!important;font-weight:600}
.page-top .breadcrumb a:hover{color:var(--sm-electrico)!important}
.page-top .page-title-border,.page-top .sort-source{display:none!important}

/* Barra de orden */
.woocommerce-page .shop-loop-before,.woocommerce-page .shop-loop-after{font-family:var(--sm-texto)}
.woocommerce-page .shop-loop-before select,.woocommerce-page .shop-loop-after select{border-radius:999px!important;border:2px solid var(--sm-linea)!important;padding:0 32px 0 14px!important;height:40px!important;color:var(--sm-marino)}
.woocommerce-page .gridlist-toggle a{border-radius:10px!important}
.woocommerce-page .gridlist-toggle a.active{background:var(--sm-electrico)!important;border-color:var(--sm-electrico)!important;color:#fff!important}

/* Tarjetas de producto en listados */
ul.products li.product .product-inner{background:#fff;border:1px solid var(--sm-linea);border-radius:var(--sm-r-s);padding:12px 12px 16px;transition:box-shadow .2s,transform .2s;height:100%}
ul.products li.product:hover .product-inner{box-shadow:0 18px 40px -22px rgba(2,35,80,.45);transform:translateY(-2px)}
ul.products li.product .product-image{border-radius:12px;overflow:hidden;background:var(--sm-crema)!important;border:0!important}
ul.products li.product .product-image img{mix-blend-mode:multiply}
ul.products li.product .category-list{font-size:11px!important;color:var(--sm-gris)!important;text-transform:uppercase;letter-spacing:.05em}
ul.products li.product .woocommerce-loop-product__title{font-family:var(--sm-texto)!important;font-weight:700!important;font-size:14px!important;color:var(--sm-marino)!important;text-transform:none!important;letter-spacing:0!important}
ul.products li.product .price{font-family:var(--sm-display)!important}
ul.products li.product .price ins,ul.products li.product .price>.amount{color:var(--sm-electrico)!important;font-size:19px!important;text-decoration:none}
ul.products li.product .price del{color:var(--sm-gris)!important;font-size:13px!important}
ul.products li.product .star-rating{display:none!important}
ul.products li.product .add-links .add_to_cart_button,ul.products li.product .add-links .button{border-radius:999px!important;background:var(--sm-naranja)!important;border:0!important;color:#fff!important;font-family:var(--sm-texto)!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;font-size:13px!important;padding:0 18px!important;height:40px!important;line-height:40px!important}
ul.products li.product .add-links .add_to_cart_button:hover{background:var(--sm-naranja-h)!important}
ul.products li.product .add-links .add_to_cart_button:before{color:#fff!important}
ul.products li.product .onsale{background:var(--sm-coral)!important;border-radius:20px!important;font-weight:700}
.woocommerce-pagination .page-numbers li a,.woocommerce-pagination .page-numbers li span{border-radius:999px!important;min-width:38px}
.woocommerce-pagination .page-numbers li span.current{background:var(--sm-electrico)!important;border-color:var(--sm-electrico)!important;color:#fff!important}
