/* ================================================================
   NÓRDICO — Escandinavo / Limpio (layout-nordico)
   ================================================================ */
body.layout-nordico { background: #f4f4f2; }

body.layout-nordico header { background: var(--color-primario) !important; box-shadow: none !important; border-bottom: none !important; }
body.layout-nordico #category-buttons { background: var(--color-primario-hover) !important; border-top: 1px solid rgba(255,255,255,.06) !important; }
body.layout-nordico .header-logo-text strong { color: #fff !important; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; font-size: 0.9rem; }
body.layout-nordico .nav-link-btn, body.layout-nordico .quick-pill, body.layout-nordico .dropdown-btn { color: rgba(255,255,255,.8) !important; font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; }
body.layout-nordico .nav-link-btn:hover, body.layout-nordico .quick-pill:hover { color: #fff !important; opacity: 1; }
body.layout-nordico .header-search-wrap { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.12); }
body.layout-nordico .header-search-wrap input { color: #fff; background: transparent; }
body.layout-nordico .header-search-wrap input::placeholder { color: rgba(255,255,255,.3); }

/* ── Catálogo: 4-col ultra-limpio MUJI, botón invisible hasta hover ── */
body.layout-nordico .product-grid { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 0.6rem; }
body.layout-nordico .product {
    background: #fff !important;
    border-radius: 0; border: none;
    border-bottom: 1px solid #e8e8e6;
    box-shadow: none; padding: 0 0 0.85rem; overflow: hidden;
    transition: background .18s ease;
}
body.layout-nordico .product:hover { background: #f8f8f6 !important; transform: none; box-shadow: none; }
body.layout-nordico .prod-img-wrap { aspect-ratio: 1/1; border-radius: 0; background: #f4f4f2; }
body.layout-nordico .product h3 { padding: 0.6rem 0.75rem 0.08rem; font-size: 0.8rem; font-weight: 400; color: #3d4a52 !important; line-height: 1.32; margin: 0; letter-spacing: 0.01em; }
body.layout-nordico .product p { padding: 0 0.75rem 0.5rem; font-size: 0.98rem; font-weight: 700; color: var(--color-primario) !important; margin: 0; letter-spacing: -0.01em; }
body.layout-nordico .product > button:not(.quantity-controls button) {
    background: var(--color-primario); color: #fff; border-radius: 0;
    font-size: 0.64rem; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase;
    padding: 0.52rem 0.8rem; margin: 0; width: 100%;
    opacity: 0; transition: opacity .22s ease;
}
body.layout-nordico .product:hover > button:not(.quantity-controls button) { opacity: 1; }
body.layout-nordico .product .quantity-controls { margin: 0; width: 100%; background: #f0f0ee; border-radius: 0; border-top: 1px solid #e2e4e3; }
body.layout-nordico .product .quantity-controls button { color: var(--color-primario); border-radius: 0; }
/* Relacionados: mostrar botón siempre */
body.layout-nordico .pd-ab-related-section .product > button:not(.quantity-controls button),
body.layout-nordico .pd-ab-rec-track .product > button:not(.quantity-controls button) { opacity: 1 !important; }
@media (hover: none) { body.layout-nordico .product > button:not(.quantity-controls button) { opacity: 1; } }

body.layout-nordico .seccion-titulo { color: #3d4a52; border-bottom-color: #dde0de; font-size: 0.62rem; letter-spacing: 0.2em; text-transform: uppercase; font-weight: 600; }
body.layout-nordico .category-title { color: var(--color-primario); border-bottom-color: #dde0de; font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 600; }
body.layout-nordico .strip-info { background: var(--color-primario); }
body.layout-nordico .strip-item, body.layout-nordico .strip-item strong, body.layout-nordico .strip-item span { color: rgba(255,255,255,.7) !important; border-color: rgba(255,255,255,.08) !important; }
body.layout-nordico .precio-actual { color: var(--color-primario) !important; }
body.layout-nordico .cart-checkout-btn { background: var(--color-primario); border-radius: 5px; }
body.layout-nordico .cart-checkout-btn:hover { background: var(--color-primario-hover); }
body.layout-nordico .cat-visual-card { background: #fff; border: 1px solid #e2e4e3; border-radius: 6px; box-shadow: none; }
body.layout-nordico .cat-visual-card:hover { border-color: var(--color-primario); box-shadow: 0 2px 12px rgba(28,43,58,.1); }
body.layout-nordico .cat-visual-nombre { color: var(--color-primario) !important; font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; }
body.layout-nordico .cat-visual-count { color: #8a9aa5; }

/* ── Hero: foto grande con overlay minimalista ── */
body.layout-nordico .hero-section { min-height: 460px; background: var(--color-primario); text-align: left; }
body.layout-nordico .hero-content { max-width: 680px; padding: 5rem 3rem; margin: 0; }
body.layout-nordico .hero-tag { background: transparent; border: none; padding: 0; color: rgba(255,255,255,.32); font-size: 0.58rem; letter-spacing: 0.36em; text-transform: uppercase; margin-bottom: 1.8rem; border-radius: 0; backdrop-filter: none; }
body.layout-nordico .hero-titulo { font-size: clamp(2.2rem, 4.5vw, 4rem); font-weight: 300; letter-spacing: -0.01em; color: #f4f4f2; line-height: 1.1; margin-bottom: 1.2rem; }
body.layout-nordico .hero-sub { color: rgba(244,244,242,.42); font-size: 0.88rem; font-weight: 300; max-width: 460px; margin-bottom: 2.4rem; }
body.layout-nordico .hero-cta { background: #fff; color: var(--color-primario); border-radius: 4px; font-weight: 600; font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; padding: 0.88rem 2.4rem; }
body.layout-nordico .hero-cta:hover { background: #f4f4f2; filter: none; }
body.layout-nordico .hero-section.has-hero-bg .hero-overlay { background: rgba(28,43,58,.6) !important; }

/* ── Producto detalle: panel izq, imagen der — limpio tipo MUJI ── */
body.layout-nordico .pd-ab-hero { grid-template-columns: 40fr 60fr; max-width: 1140px; margin: 0 auto; min-height: 78vh; }
body.layout-nordico .pd-ab-images { grid-column: 2; grid-row: 1; background: #f4f4f2; }
body.layout-nordico .pd-carousel-frame { min-height: 78vh; max-height: 84vh; border-radius: 0; }
body.layout-nordico .pd-ab-main-img { min-height: 78vh; max-height: 84vh; border-radius: 0; object-fit: cover; background: #f4f4f2; }
body.layout-nordico .pd-ab-panel { grid-column: 1; grid-row: 1; background: #fff; border-left: none; border-right: 1px solid #e2e4e3; border-top: none; padding: 4rem 3rem 5rem; display: flex; flex-direction: column; justify-content: center; }
body.layout-nordico .pd-ab-title { color: var(--color-primario); font-weight: 300; letter-spacing: -0.01em; font-size: clamp(1.5rem, 2.8vw, 2.4rem); line-height: 1.2; }
body.layout-nordico .pd-price { color: var(--color-primario) !important; font-size: 2.2rem; font-weight: 700; letter-spacing: -0.02em; }
body.layout-nordico .pd-ab-rule { background: #e2e4e3; }
body.layout-nordico .pd-ab-btn-main { background: var(--color-primario); border-radius: 4px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; font-size: 0.76rem; height: 50px; transition: background .18s; }
body.layout-nordico .pd-ab-btn-main:hover:not(:disabled) { background: var(--color-primario-hover); opacity: 1; }
body.layout-nordico .pd-ab-btn-main.agregado { background: #15803d; }
body.layout-nordico .pd-ab-btn-main:disabled, body.layout-nordico .pd-ab-btn-main.pd-btn-disabled { background: #e5e7eb; color: #9ca3af; }
body.layout-nordico .pd-variante-pill { border-radius: 3px; }
body.layout-nordico .pd-variante-pill.active { background: var(--color-primario); border-color: var(--color-primario); }
body.layout-nordico .pd-ab-wsp-link { letter-spacing: 0.04em; }
body.layout-nordico .pd-ab-editorial { background: #f4f4f2; }
body.layout-nordico .pd-ab-related-section, body.layout-nordico .pd-ab-reviews-section, body.layout-nordico .pd-ab-cta { background: #f4f4f2; }
body.layout-nordico .pd-car-thumbs { background: rgba(244,244,242,.95); border-top: 1px solid #e2e4e3; position: relative; bottom: unset; left: unset; transform: none; width: 100%; box-sizing: border-box; backdrop-filter: none; justify-content: center; }
body.layout-nordico .pd-ab-nav { background: #fff; border-bottom-color: #e2e4e3; }
body.layout-nordico .pd-ab-back { color: rgba(28,43,58,.38); }
body.layout-nordico .pd-ab-back:hover { color: var(--color-primario); }
body.layout-nordico .pd-breadcrumb a { color: rgba(28,43,58,.46); }
body.layout-nordico .pd-breadcrumb a:hover { color: var(--color-primario); }

@media (max-width: 820px) {
    body.layout-nordico .pd-ab-hero { grid-template-columns: 1fr; min-height: unset; }
    body.layout-nordico .pd-ab-images { grid-column: 1; grid-row: 1; }
    body.layout-nordico .pd-carousel-frame { min-height: 50vw; max-height: 60vh; }
    body.layout-nordico .pd-ab-main-img { min-height: 50vw; max-height: 60vh; }
    body.layout-nordico .pd-ab-panel { grid-column: 1; grid-row: 2; border-right: none; border-top: 1px solid #e2e4e3; padding: 2rem 1.5rem; }
}

/* ── Carrito acorde al tema ── */
body.layout-nordico .header-cart-btn { background: #fff !important; color: var(--color-primario) !important; border-radius: 4px; box-shadow: none; font-weight: 600; }
body.layout-nordico .header-cart-btn:hover { background: #e8edf2 !important; }
body.layout-nordico #cart-count { background: var(--color-primario); color: #fff; border-radius: 3px; }
body.layout-nordico .cart-header { background: var(--color-primario); }
body.layout-nordico .quantity-controls { border-radius: 4px; }
body.layout-nordico .quantity-controls button { border-radius: 4px; }
