/*
Theme Name: Sakana Sushi Fusión
Description: Tema hijo de Astra con la marca de Sakana: colores, tipografía, hero animado, barra superior, WhatsApp, filtros del menú en móvil y textos de restaurante. La integración con UNICO vive en el plugin wemeik-unico, que no depende del tema.
Template: astra
Version: 1.0.0
Requires PHP: 7.4
Text Domain: sakana
*/

/* Paleta. Las --ast-global-color-* son de Astra; --wu-accent es el color que usa el plugin wemeik-unico */
:root{--ast-global-color-0:#E1251B;--ast-global-color-1:#B81A12;--ast-global-color-2:#141414;--ast-global-color-3:#3D3D3D;--sk-red:#E1251B;--sk-red-d:#B81A12;--sk-ink:#141414;--sk-cream:#F6EDE1;--sk-cream-d:#EADBC6;--sk-green:#4CAF50;--sk-line:#E6DCCD;--wu-accent:var(--sk-red)}
/* Plugin wemeik-unico: adiciones y observaciones con la marca (el plugin trae un estilo neutro) */
.wu-group:not(.wu-invalid){border-color:var(--sk-line)}.wu-group{background:#fff}.wu-group legend{text-transform:uppercase;letter-spacing:.3px;font-weight:800}.wu-count{color:var(--sk-red);opacity:1!important}
body,button,input,select,textarea,.ast-button,.woocommerce a.button{font-family:'Poppins',system-ui,sans-serif}
h1,h2,h3,h4,.site-title,.woocommerce-loop-product__title{font-family:'Poppins',system-ui,sans-serif}
body{background:var(--sk-cream);color:#2b2b2b;overflow-x:hidden}
.site-header .ast-primary-header-bar,.ast-primary-header-bar{background:#fff}
body.page:not(.woocommerce-page) #primary{margin-top:0;margin-bottom:0;padding-top:0}
.ast-page-builder-template .site-content>.ast-container{padding-left:0;padding-right:0}
.ast-separate-container,.ast-plain-container{background:var(--sk-cream)}
.sk-topbar{background:var(--sk-ink);color:#e9e2d6;font-size:13px;text-align:center;padding:7px 16px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.sk-topbar a{color:#ff6b61;text-decoration:none;font-weight:600}
.sk-topbar .sk-sep{opacity:.5}
.site-title a,.site-title a:hover{color:var(--sk-red)!important;font-weight:900;letter-spacing:-.5px;text-transform:uppercase}
.site-description{font-size:12px}
.main-header-menu .menu-link{font-weight:600}
.main-header-menu .current-menu-item>.menu-link{color:var(--sk-red)!important}
.sk-wrap{max-width:1200px!important;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px;box-sizing:border-box}/* !important: Astra pone max-width:none a los hijos de .entry-content en plantillas page-builder */
.sk-full{width:100vw;margin-left:calc(50% - 50vw)}
.ast-page-builder-template .entry-content>.sk-full{width:auto;margin-left:0}
.sk-pad{padding-top:32px;padding-bottom:48px}
.sk-hero{background:var(--sk-cream);padding:56px 0 40px}
.sk-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:32px;align-items:center}
.sk-hero h1{font-size:clamp(46px,7.4vw,96px);line-height:.92;margin:10px 0 18px;font-weight:900;letter-spacing:-2px;color:var(--sk-ink);text-transform:uppercase}
.sk-hero h1 em{font-style:normal;color:var(--sk-red)}
.sk-hero-sm{background:var(--sk-ink);color:#fff;padding:56px 0 48px;position:relative;overflow:hidden}
.sk-hero-sm h1{font-size:clamp(32px,5vw,56px);color:#fff;text-transform:uppercase;letter-spacing:-1px;font-weight:900;margin:8px 0 12px}
.sk-hero-sm h1 em{font-style:normal;color:var(--sk-red)}
.sk-hero-sm .sk-lead{color:#d6cfc4}
.sk-hero-sm::after{content:"SAKANA";position:absolute;right:-20px;bottom:-40px;font-size:180px;font-weight:900;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.07);line-height:1;pointer-events:none}
.sk-hero-img{position:relative;text-align:center}
.sk-hero-img img{width:100%;max-width:520px;aspect-ratio:1;object-fit:cover;border-radius:50%;border:10px solid #fff;box-shadow:0 30px 60px rgba(20,20,20,.25)}
.sk-hero-img .sk-badge{position:absolute;left:4%;bottom:10%;background:var(--sk-red);color:#fff;border-radius:16px;padding:12px 16px;font-weight:800;line-height:1.15;box-shadow:0 12px 28px rgba(225,37,27,.4);text-align:left}
.sk-hero-img .sk-badge small{display:block;font-weight:500;font-size:12px;opacity:.9}
.sk-eyebrow{display:inline-block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1.6px;color:var(--sk-red)}
.sk-lead{font-size:18px;color:#4a4a4a;max-width:560px;margin:0}
.sk-lead strong{color:var(--sk-red)}
.sk-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.sk-btn{display:inline-block;background:var(--sk-red);color:#fff!important;padding:14px 28px;border-radius:999px;font-weight:700;text-decoration:none!important;transition:transform .15s,background .15s,box-shadow .15s;box-shadow:0 10px 24px rgba(225,37,27,.3)}
.sk-btn:hover{background:var(--sk-red-d);transform:translateY(-2px)}
.sk-btn-ghost{background:transparent;border:2px solid var(--sk-ink);color:var(--sk-ink)!important;box-shadow:none}
.sk-btn-ghost:hover{background:var(--sk-ink);color:#fff!important}
.sk-hero-sm .sk-btn-ghost{border-color:#fff;color:#fff!important}
.sk-dark{background:var(--sk-ink) radial-gradient(900px 300px at 20% 0,rgba(225,37,27,.18),transparent 60%);color:#e9e2d6;padding:64px 0}
.sk-dark h2{color:#fff;text-transform:uppercase;font-weight:900;letter-spacing:-.5px;font-size:clamp(26px,3.4vw,38px);text-align:center;margin:0 0 12px}
.sk-dark h2 em{font-style:normal;color:var(--sk-red)}
.sk-dark p{max-width:820px;margin:0 auto 12px;text-align:center;color:#cfc7ba}
.sk-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.sk-stat{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px}
.sk-stat i{flex:0 0 46px;height:46px;border-radius:50%;background:var(--sk-red);display:flex;align-items:center;justify-content:center;color:#fff;font-style:normal}
.sk-stat i svg{width:22px;height:22px}
.sk-stat strong{display:block;font-size:30px;font-weight:900;color:#fff;line-height:1}
.sk-stat span{font-size:13px;color:#bfb7aa;line-height:1.3}
.sk-head{display:flex;justify-content:space-between;align-items:flex-end;margin-top:56px;margin-bottom:12px;gap:12px;flex-wrap:wrap}
.sk-head>*{margin-left:0!important;margin-right:0!important}/* Astra centra con margin:auto a los nietos de .entry-content */
.sk-head h2{margin:0;font-size:clamp(26px,3.2vw,36px);font-weight:900;text-transform:uppercase;letter-spacing:-.5px;color:var(--sk-ink)}
.sk-head h2 em{font-style:normal;color:var(--sk-red)}
.sk-head p{margin:4px 0 0;color:#6b6257}
.sk-head a{color:var(--sk-red);font-weight:700;text-decoration:none}
.sk-master{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sk-award{background:#fff;border:1px solid var(--sk-line);border-radius:18px;overflow:hidden;text-decoration:none!important;color:inherit!important;transition:transform .2s,box-shadow .2s;position:relative}
.sk-award:nth-child(even){margin-top:36px}
.sk-award:hover{transform:translateY(-4px) rotate(-.5deg);box-shadow:0 18px 40px rgba(20,20,20,.12)}
.sk-award img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.sk-award div{padding:14px 16px 16px}
.sk-award b{display:block;font-size:17px;font-weight:800;text-transform:uppercase;color:var(--sk-ink)}
.sk-award span{color:var(--sk-red);font-weight:600;font-size:14px}
.sk-award em{position:absolute;top:12px;left:12px;background:var(--sk-ink);color:#fff;font-style:normal;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px}
.sk-sedes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sk-sede{background:#fff;border:1px solid var(--sk-line);border-radius:16px;padding:20px}
.sk-sede h3{margin:0 0 6px;font-size:17px;font-weight:800;text-transform:uppercase;color:var(--sk-red)}
.sk-sede p{margin:0;color:#4a4a4a;font-size:15px}
.sk-faq{max-width:900px;margin:0 auto}
.sk-faq details{background:#fff;border:1px solid var(--sk-line);border-radius:14px;padding:16px 20px;margin-bottom:10px}
.sk-faq summary{cursor:pointer;font-weight:700;color:var(--sk-ink);list-style:none;display:flex;justify-content:space-between;gap:12px}
.sk-faq summary::after{content:"+";color:var(--sk-red);font-weight:900;font-size:20px;line-height:1}
.sk-faq details[open] summary::after{content:"–"}
.sk-faq details p{margin:10px 0 0;color:#4a4a4a}
.sk-split{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;margin-top:56px}
.sk-split img{width:100%;border-radius:22px;box-shadow:0 20px 50px rgba(20,20,20,.15)}
.sk-cta{background:var(--sk-red);color:#fff;border-radius:22px;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:24px;margin:56px 0 24px;background-image:radial-gradient(600px 200px at 90% 0,rgba(255,255,255,.18),transparent 60%)}
.sk-cta h2{color:#fff;margin:0 0 6px;font-size:30px;font-weight:900;text-transform:uppercase}
.sk-cta p{margin:0;color:#ffe3e0}
.sk-cta .sk-btn{background:#fff;color:var(--sk-red)!important;box-shadow:none}
.sk-cta .sk-actions{margin-top:0;flex-shrink:0}
.sk-marquee{background:var(--sk-cream);overflow:hidden;padding:18px 0 0;line-height:.85}
.sk-marquee-track{display:flex;width:max-content;animation:sk-marquee 40s linear infinite}
.sk-marquee span{font-size:clamp(56px,9vw,120px);font-weight:900;color:var(--sk-red);padding-right:24px;letter-spacing:-3px}
.sk-marquee .sk-o{color:var(--sk-ink)}
@keyframes sk-marquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.sk-marquee-track{animation:none}}
.site-footer,.site-below-footer-wrap{background:var(--sk-ink)!important}
.site-footer,.site-footer a,.ast-footer-copyright{color:#cfc7ba!important}
/* WooCommerce */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{border:1px solid var(--sk-line);border-radius:18px;padding:10px 10px 16px;background:#fff;transition:box-shadow .2s,transform .2s;position:relative}
.woocommerce ul.products li.product:hover{box-shadow:0 14px 34px rgba(20,20,20,.12);transform:translateY(-3px)}
.woocommerce ul.products li.product img{border-radius:12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-weight:700;color:var(--sk-ink);font-size:16px}
.woocommerce ul.products li.product .price{color:var(--sk-red)!important;font-weight:800}
.woocommerce ul.products li.product .button,.woocommerce a.button.alt,.woocommerce button.button.alt,.wc-block-components-button:not(.is-link){background:var(--sk-red)!important;color:#fff!important;border-radius:999px!important;font-weight:700}
.woocommerce ul.products li.product .button:hover{background:var(--sk-red-d)!important}
.woocommerce ul.products li.product-category{padding:0;overflow:hidden}
.woocommerce ul.products li.product-category h2{font-size:15px!important;padding:12px 14px 14px!important;margin:0!important;text-transform:uppercase;font-weight:800}
.woocommerce ul.products li.product-category img{border-radius:0}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{position:static;background:#fff!important;text-align:left}/* Astra lo superpone a la imagen */
.woocommerce ul.products li.product-category>a,.woocommerce ul.products li.product-category>a img{height:auto!important}
.woocommerce ul.products li.product-category mark.count{background:none;color:var(--sk-red)}
.sk-prot{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#8a7f72;margin-bottom:2px}
.sk-tags{position:absolute;top:18px;left:18px;display:flex;flex-direction:column;gap:4px;z-index:2;align-items:flex-start}
.sk-tag{background:#fff;color:var(--sk-ink);font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.sk-tag-recomendado{background:var(--sk-ink);color:#fff}.sk-tag-picante{color:var(--sk-red)}.sk-tag-vegetariano{color:#2E7D32}
.woocommerce span.onsale{background:var(--sk-red)!important;color:#fff!important;font-weight:800}
.sk-note{font-size:13px;color:#8a7f72;margin-top:-8px}
.sk-wa-quote{display:inline-block;margin:14px 0 6px;font-weight:700;color:#2B8A3E!important}
.wemeik-unico-doc{background:#fff;border:1px dashed var(--sk-line);border-radius:10px;padding:10px 14px}
.single-product div.product .product_title{font-weight:900;text-transform:uppercase;letter-spacing:-.5px}
.single-product div.product p.price,.single-product div.product span.price{color:var(--sk-red)!important;font-weight:800}
.sk-wa{position:fixed;right:20px;bottom:20px;z-index:9999;display:flex;align-items:center;gap:8px;background:#25D366;color:#fff!important;padding:12px 18px;border-radius:999px;box-shadow:0 8px 24px rgba(0,0,0,.2);font-weight:700;text-decoration:none!important}
.sk-wa svg{width:22px;height:22px}
/* Filtros (barra lateral del menú) */
.ast-left-sidebar #secondary .widget{background:#fff;border:1px solid var(--sk-line);border-radius:16px;padding:18px 18px 14px;margin-bottom:16px}
.ast-left-sidebar #secondary .widget-title{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px;color:var(--sk-ink)}
.ast-left-sidebar #secondary .widget ul{margin:0;list-style:none}
.ast-left-sidebar #secondary .widget li{padding:3px 0}
.ast-left-sidebar #secondary .widget li a{color:#3d3d3d;text-decoration:none}
.ast-left-sidebar #secondary .widget li a:hover,.ast-left-sidebar #secondary .widget li.current-cat>a,.ast-left-sidebar #secondary .widget li.chosen a{color:var(--sk-red)}
.ast-left-sidebar #secondary .widget li.current-cat>a,.ast-left-sidebar #secondary .widget li.chosen a{font-weight:700}
.ast-left-sidebar #secondary .count{color:#b3a999;font-size:13px}
.ast-left-sidebar #secondary .widget_product_categories li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 6px}
.ast-left-sidebar #secondary .widget_product_categories li>ul{flex:1 1 100%;margin:2px 0 4px 12px}
.ast-left-sidebar #secondary .widget_product_categories li li{flex-wrap:nowrap;font-size:14px}
.ast-left-sidebar #secondary .widget_product_categories .count{white-space:nowrap}
/* Carrito de la cabecera: burbuja con la cantidad y panel lateral con la marca */
.ast-site-header-cart .ast-cart-menu-wrap .count{color:transparent!important}
.ast-site-header-cart .ast-count-text{position:absolute;top:-9px;right:-11px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--sk-ink);color:#fff;font-size:11px;font-weight:800;line-height:20px;text-align:center;box-sizing:border-box}
.astra-cart-drawer .astra-cart-drawer-title{font-weight:900;text-transform:uppercase;letter-spacing:-.3px}
.astra-cart-drawer .woocommerce-mini-cart__buttons .button{border-radius:999px!important;font-weight:700!important}
.astra-cart-drawer .woocommerce-mini-cart__buttons a.checkout{background:var(--sk-red)!important}
.astra-cart-drawer .woocommerce-mini-cart__buttons .button:not(.checkout){background:#fff!important;color:var(--sk-ink)!important;border:2px solid var(--sk-ink)!important}
.ast-left-sidebar #secondary .widget_layered_nav ul{display:flex;flex-wrap:wrap;gap:6px}
.ast-left-sidebar #secondary .widget_layered_nav li{padding:0}
.ast-left-sidebar #secondary .widget_layered_nav li a{display:inline-block;border:1px solid var(--sk-line);border-radius:999px;padding:4px 12px;font-size:14px}
.ast-left-sidebar #secondary .widget_layered_nav li.chosen a{background:var(--sk-red);border-color:var(--sk-red);color:#fff}
.ast-left-sidebar #secondary .widget_layered_nav li.chosen a::before{display:none}
.ast-left-sidebar #secondary .widget_layered_nav .count{display:none}
.ast-left-sidebar #secondary .woocommerce-product-search{display:flex;flex-wrap:wrap;gap:8px}.ast-left-sidebar #secondary .woocommerce-product-search .search-field{flex:1 1 100%;border-radius:999px}.ast-left-sidebar #secondary .woocommerce-product-search button{width:100%;border-radius:999px;background:var(--sk-ink)}
.woocommerce .widget_price_filter .ui-slider .ui-slider-range,.woocommerce .widget_price_filter .ui-slider .ui-slider-handle{background:var(--sk-red)}
.woocommerce .widget_price_filter .price_slider_amount .button{background:var(--sk-ink);color:#fff;border-radius:999px}
.sk-filter-btn,.sk-filter-close,.sk-filter-backdrop{display:none}
@media (max-width:921px){
 .sk-filter-btn{display:inline-block;background:var(--sk-ink);color:#fff;border:0;border-radius:999px;padding:10px 18px;font-weight:700;margin:0 0 16px;cursor:pointer}
 .ast-left-sidebar #secondary{position:fixed;top:0;left:0;bottom:0;width:min(86vw,340px);background:var(--sk-cream);z-index:10001;overflow-y:auto;margin:0;padding:60px 16px 24px;border:0;transform:translateX(-105%);transition:transform .25s}
 .sk-filters-open{overflow:hidden}
 .sk-filters-open #secondary{transform:none}
 .sk-filters-open .sk-filter-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:10000}
 .sk-filters-open .sk-filter-close{display:block;position:fixed;top:12px;left:calc(min(86vw,340px) - 52px);z-index:10002;width:40px;height:40px;border:0;border-radius:50%;background:#fff;color:var(--sk-ink);font-size:26px;line-height:1;cursor:pointer}
 .sk-hero-grid,.sk-split{grid-template-columns:1fr}
 .sk-hero-img{order:-1}.sk-hero-img img{max-width:360px}
 .sk-stats,.sk-master{grid-template-columns:1fr 1fr}
 .sk-award:nth-child(even){margin-top:0}
 .sk-sedes{grid-template-columns:1fr 1fr}
 .sk-cta{flex-direction:column;align-items:flex-start;padding:28px}
}
@media (max-width:544px){
 .sk-stats,.sk-sedes{grid-template-columns:1fr}
 .sk-hero{padding:32px 0}
 .sk-hero h1{letter-spacing:-1px}
 .sk-wa span{display:none}
 .sk-topbar .sk-sep,.sk-topbar span:nth-of-type(3){display:none}
}
