/* ============================================
   NORDIKLUM — Premium Nordic Design
   Tom Dixon Level CSS v2.0
   ============================================ */

:root {
    --nk-black: #1a1a1a;
    --nk-white: #faf8f5;
    --nk-gold: #c8a96e;
    --nk-gray: #888;
    --nk-green: #7a8c6e;
    --nk-pure: #fff;
    --nk-dark: #111;
    --nk-border: #2a2a2a;
    --nk-serif: Georgia, 'Times New Roman', serif;
    --nk-sans: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* === RESET GLOBAL === */
body {
    background: var(--nk-white) !important;
    color: var(--nk-black) !important;
    font-family: var(--nk-sans) !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* === TIPOGRAFÍA PREMIUM === */
h1, h2, h3, h4, h5 {
    font-family: var(--nk-serif) !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.2 !important;
    color: var(--nk-black) !important;
}
h1 { font-size: 42px !important; }
h2 { font-size: 32px !important; }
h3 { font-size: 24px !important; }
p, li, span, td, th, label, .product-item-name {
    font-family: var(--nk-sans) !important;
}

/* === TOP BAR — OCULTAR AEKIT === */
.panel.wrapper {
    background: var(--nk-dark) !important;
    border-bottom: none !important;
}
.panel.header {
    background: var(--nk-dark) !important;
    color: var(--nk-white) !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 8px 20px !important;
    font-size: 12px !important;
    letter-spacing: 0.5px !important;
}
.panel.header a,
.panel.header span,
.panel.header .not-logged-in {
    color: rgba(255,255,255,0.7) !important;
    font-size: 12px !important;
}
.panel.header a:hover {
    color: var(--nk-gold) !important;
}
/* Ocultar texto AEKIT */
.panel.header .header.links li:first-child {
    display: none !important;
}

/* === HEADER PRINCIPAL === */
.page-header,
.page-header .header.content {
    background: var(--nk-dark) !important;
    border: none !important;
    box-shadow: none !important;
}
.header.content {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}
/* Logo */
.logo img {
    filter: brightness(0) invert(1) !important;
    max-height: 40px !important;
    transition: opacity 0.3s !important;
}
.logo img:hover {
    opacity: 0.8 !important;
}
/* Buscador estilo Tom Dixon */
.block-search {
    flex-grow: 1 !important;
    max-width: 400px !important;
    margin: 0 40px !important;
}
.block-search .control input {
    background: rgba(255,255,255,0.08) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    color: var(--nk-white) !important;
    border-radius: 0 !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s !important;
}
.block-search .control input:focus {
    border-color: var(--nk-gold) !important;
    background: rgba(255,255,255,0.12) !important;
}
.block-search .control input::placeholder {
    color: rgba(255,255,255,0.4) !important;
    font-size: 13px !important;
    letter-spacing: 1px !important;
}
/* Carrito */
.minicart-wrapper .action.showcart:before {
    color: var(--nk-white) !important;
    font-size: 24px !important;
}
.minicart-wrapper .counter.qty {
    background: var(--nk-gold) !important;
    color: var(--nk-black) !important;
    font-weight: 600 !important;
}

/* === NAVEGACIÓN TOM DIXON STYLE === */
.nav-sections {
    background: var(--nk-dark) !important;
    border-top: 1px solid var(--nk-border) !important;
    border-bottom: none !important;
}
.navigation {
    background: transparent !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
}
.navigation .level0 > .level-top {
    color: var(--nk-white) !important;
    font-family: var(--nk-sans) !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    letter-spacing: 0.5px !important;
    text-transform: none !important;
    padding: 15px 20px !important;
    border-bottom: 2px solid transparent !important;
    transition: all 0.3s ease !important;
}
.navigation .level0 > .level-top:hover,
.navigation .level0.active > .level-top,
.navigation .level0.has-active > .level-top {
    color: var(--nk-white) !important;
    border-bottom: 2px solid var(--nk-white) !important;
}
/* Dropdown */
.navigation .level0 .submenu {
    background: var(--nk-pure) !important;
    border: none !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.15) !important;
    padding: 30px !important;
    min-width: 220px !important;
}
.navigation .level0 .submenu a {
    color: var(--nk-black) !important;
    font-size: 14px !important;
    padding: 8px 0 !important;
    font-weight: 400 !important;
    border-bottom: none !important;
    transition: color 0.2s !important;
}
.navigation .level0 .submenu a:hover {
    color: var(--nk-gold) !important;
    background: transparent !important;
}
/* Sticky nav */
.nav-sections.stickydesktopnav {
    background: var(--nk-dark) !important;
    box-shadow: 0 2px 20px rgba(0,0,0,0.3) !important;
}

/* === BREADCRUMBS === */
.breadcrumbs {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 15px 20px !important;
}
.breadcrumbs a {
    color: var(--nk-gray) !important;
    font-size: 12px !important;
    letter-spacing: 0.5px !important;
}
.breadcrumbs .item:not(:last-child):after {
    color: #ccc !important;
}
.breadcrumbs li:last-child strong {
    color: var(--nk-black) !important;
    font-weight: 400 !important;
}

/* === PAGE CONTAINERS === */
.page-main {
    max-width: 1400px !important;
    margin: 0 auto !important;
}

/* === GRID CATEGORÍA — 4 COLUMNAS LIMPIAS === */
.products-grid .product-items {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 2px !important;
}
.products-grid .product-item,
.products-grid .product-li {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}
.products-grid .product-item-info {
    background: var(--nk-pure) !important;
    border: none !important;
    padding: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    transition: none !important;
}
.products-grid .product-item-info:hover {
    box-shadow: none !important;
    border: none !important;
}
/* Imagen producto — cuadrada, limpia */
.products-grid .product-image-container {
    width: 100% !important;
    display: block !important;
}
.products-grid .product-image-wrapper {
    padding-bottom: 120% !important;
    overflow: hidden !important;
}
.products-grid .product-image-photo {
    object-fit: cover !important;
    width: 100% !important;
    height: 100% !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    transition: transform 0.6s ease !important;
}
.products-grid .product-item-info:hover .product-image-photo {
    transform: scale(1.03) !important;
}
/* Info producto bajo imagen */
.products-grid .product-item-details {
    padding: 15px 15px 25px !important;
    text-align: left !important;
}
.products-grid .product-item-name {
    margin: 0 0 5px !important;
}
.products-grid .product-item-name a {
    font-family: var(--nk-sans) !important;
    color: var(--nk-black) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    letter-spacing: 0 !important;
}
.products-grid .product-item-name a:hover {
    color: var(--nk-black) !important;
    text-decoration: underline !important;
}
.products-grid .price-box {
    margin: 5px 0 0 !important;
}
.products-grid .price {
    font-family: var(--nk-sans) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: var(--nk-black) !important;
}
/* Ocultar botones add to cart en grid — estilo Tom Dixon */
.products-grid .product-item-actions,
.products-grid .actions-secondary,
.products-grid .action.tocart {
    display: none !important;
}
/* Labels de oferta */
.products-grid .product-label,
.products-grid .onsale {
    position: absolute !important;
    top: 15px !important;
    left: 15px !important;
    background: var(--nk-black) !important;
    color: var(--nk-pure) !important;
    font-size: 11px !important;
    letter-spacing: 1px !important;
    padding: 5px 12px !important;
    border-radius: 0 !important;
    z-index: 2 !important;
}

/* === FICHA PRODUCTO TOM DIXON STYLE === */
.catalog-product-view .column.main {
    display: flex !important;
    flex-wrap: wrap !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}
/* Galería lado izquierdo — grande */
.catalog-product-view .product.media {
    width: 58% !important;
    float: none !important;
    padding-right: 40px !important;
}
.catalog-product-view .product-info-main {
    width: 42% !important;
    float: none !important;
    padding-left: 20px !important;
    position: sticky !important;
    top: 20px !important;
    align-self: flex-start !important;
}
/* Título producto */
.product-info-main .page-title-wrapper h1.page-title {
    font-family: var(--nk-serif) !important;
    font-size: 32px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    color: var(--nk-black) !important;
    margin-bottom: 10px !important;
    letter-spacing: -0.01em !important;
}
/* SKU */
.product-info-main .product.attribute.sku .value {
    font-size: 12px !important;
    color: var(--nk-gray) !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
}
/* Precio */
.product-info-main .price-box .price {
    font-family: var(--nk-sans) !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    color: var(--nk-black) !important;
}
/* Stock */
.product-info-main .stock.available span {
    color: var(--nk-green) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}
/* Botón ADD TO CART — Tom Dixon style */
.catalog-product-view .box-tocart .action.tocart,
.catalog-product-view #product-addtocart-button {
    background: var(--nk-black) !important;
    color: var(--nk-pure) !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 18px 40px !important;
    width: 100% !important;
    transition: all 0.3s !important;
    font-family: var(--nk-sans) !important;
}
.catalog-product-view .box-tocart .action.tocart:hover,
.catalog-product-view #product-addtocart-button:hover {
    background: var(--nk-gold) !important;
    color: var(--nk-black) !important;
}
/* Qty input */
.catalog-product-view .field.qty {
    margin-bottom: 15px !important;
}
.catalog-product-view .input-text.qty {
    border: 1px solid #ddd !important;
    border-radius: 0 !important;
    width: 60px !important;
    text-align: center !important;
    font-size: 14px !important;
    padding: 10px !important;
}

/* === TABS PRODUCTO (DETAILS) — ESTILO TOM DIXON === */
.product.info.detailed {
    max-width: 1400px !important;
    margin: 60px auto 0 !important;
    padding: 0 20px !important;
    border-top: 1px solid #eee !important;
}
.product.data.items > .item.title {
    border: none !important;
    margin: 0 !important;
}
.product.data.items > .item.title > .switch {
    font-family: var(--nk-sans) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px !important;
    color: var(--nk-black) !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    padding: 15px 25px !important;
    background: transparent !important;
}
.product.data.items > .item.title.active > .switch {
    border-bottom-color: var(--nk-black) !important;
    color: var(--nk-black) !important;
}
.product.data.items > .item.content {
    border: none !important;
    padding: 30px 0 !important;
    font-size: 14px !important;
    line-height: 1.8 !important;
    color: #555 !important;
}

/* === TRUST BADGES / ENVÍO / GARANTÍA === */
.product-info-main .delivery-info,
.product-info-main .trust-badges,
.product-info-main .product-social-links {
    border-top: 1px solid #eee !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
}

/* === BARRA BENEFICIOS === */
.benefits-bar,
.usp-bar,
.block-static-block .benefits-bar {
    background: var(--nk-pure) !important;
    border-top: 1px solid #eee !important;
    border-bottom: 1px solid #eee !important;
    padding: 25px 0 !important;
    color: var(--nk-black) !important;
    font-size: 13px !important;
    letter-spacing: 0.5px !important;
}

/* === BOTONES GENERALES (NO FICHA) === */
button.action.primary,
.action.primary {
    background: var(--nk-black) !important;
    color: var(--nk-pure) !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    padding: 14px 30px !important;
    transition: all 0.3s !important;
    font-family: var(--nk-sans) !important;
}
button.action.primary:hover,
.action.primary:hover {
    background: var(--nk-gold) !important;
    color: var(--nk-black) !important;
}

/* === FOOTER TOM DIXON === */
.page-footer {
    background: var(--nk-dark) !important;
    color: rgba(255,255,255,0.7) !important;
    margin-top: 0 !important;
}
.footer-top {
    background: var(--nk-dark) !important;
    border-bottom: 1px solid var(--nk-border) !important;
    padding: 40px 0 !important;
}
.footer-links {
    background: var(--nk-dark) !important;
    padding: 50px 0 !important;
}
.footer-links .page-main {
    max-width: 1400px !important;
}
.page-footer h3,
.page-footer h4,
.page-footer .footer-title,
.footer-links h3,
.footer-links h4 {
    color: var(--nk-pure) !important;
    font-family: var(--nk-sans) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin-bottom: 20px !important;
}
.page-footer a,
.footer-links a {
    color: rgba(255,255,255,0.5) !important;
    font-size: 13px !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
}
.page-footer a:hover,
.footer-links a:hover {
    color: var(--nk-pure) !important;
}
.footer-bottom {
    background: var(--nk-dark) !important;
    border-top: 1px solid var(--nk-border) !important;
    padding: 20px 0 !important;
    font-size: 12px !important;
    color: rgba(255,255,255,0.3) !important;
}

/* === NEWSLETTER === */
.block.newsletter input {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.3) !important;
    color: var(--nk-pure) !important;
    border-radius: 0 !important;
    padding: 10px 0 !important;
    font-size: 13px !important;
}
.block.newsletter input::placeholder {
    color: rgba(255,255,255,0.3) !important;
}
.block.newsletter .action.subscribe {
    background: var(--nk-pure) !important;
    color: var(--nk-black) !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
}

/* === FORMULARIOS === */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
textarea,
select {
    border: 1px solid #ddd !important;
    border-radius: 0 !important;
    padding: 12px 14px !important;
    font-size: 14px !important;
    transition: border-color 0.3s !important;
}
input:focus, textarea:focus, select:focus {
    border-color: var(--nk-black) !important;
    box-shadow: none !important;
    outline: none !important;
}

/* === LINKS === */
a {
    color: var(--nk-black) !important;
    transition: color 0.2s !important;
}
a:hover {
    color: var(--nk-gold) !important;
}

/* === RESPONSIVE 2 COLUMNAS MOBILE === */
@media (max-width: 1024px) {
    .products-grid .product-items {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}
@media (max-width: 768px) {
    .products-grid .product-items {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .catalog-product-view .product.media,
    .catalog-product-view .product-info-main {
        width: 100% !important;
        padding: 0 !important;
    }
    .catalog-product-view .product-info-main {
        position: relative !important;
    }
    h1 { font-size: 28px !important; }
}

/* === SCROLLBAR === */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--nk-white); }
::-webkit-scrollbar-thumb { background: #ccc; }
::-webkit-scrollbar-thumb:hover { background: var(--nk-black); }

/* === OCULTAR PARÁSITOS === */
.page-main > .columns ~ div:not(.columns):not(.product-info-main):not(.gallery-placeholder) > h2[style*="font-size:28px"] { display: none !important; }
.page-main > .columns ~ div:not(.columns):not(.product-info-main):not(.gallery-placeholder) > h2[style*="font-size:28px"] ~ * { display: none !important; }

/* === PROMOTION BAR TOP (estilo Tom Dixon) === */
.top-promotion,
.promotion-wrapper {
    background: var(--nk-gold) !important;
    color: var(--nk-black) !important;
    text-align: center !important;
    padding: 10px !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
    font-weight: 500 !important;
}
.top-promotion a,
.promotion-wrapper a {
    color: var(--nk-black) !important;
    text-decoration: underline !important;
}
