/* ================================================================
   MODACO — Boutique Editorial / Cero Radius / Monospace (layout-modaco)
   ================================================================ */
body.layout-modaco { background: #ffffff; }

/* Header blanco, borde negro */
body.layout-modaco header { background: #ffffff !important; box-shadow: none !important; border-bottom: 1.5px solid var(--color-primario) !important; }
body.layout-modaco #category-buttons { background: #ffffff !important; border-top: 1px solid #e5e7eb !important; }
body.layout-modaco .header-logo-text strong { color: var(--color-primario) !important; font-family: var(--font-display); font-style: italic; letter-spacing: -0.01em; text-transform: none; }
body.layout-modaco .nav-link-btn, body.layout-modaco .quick-pill, body.layout-modaco .dropdown-btn { color: var(--color-primario) !important; font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; }
body.layout-modaco .nav-link-btn:hover, body.layout-modaco .quick-pill:hover { opacity: 0.6; }
body.layout-modaco .header-search-wrap { background: #f9f9f9; border-color: #d1d5db; border-radius: 0; }
body.layout-modaco .header-search-wrap input { color: var(--color-primario); background: transparent; font-size: 0.85rem; }
body.layout-modaco .header-search-wrap input::placeholder { color: #9ca3af; }
body.layout-modaco .header-cart-btn { background: var(--color-primario) !important; color: #fff !important; border-radius: 0; font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; }
body.layout-modaco .header-cart-btn:hover { background: var(--color-primario-hover) !important; }
body.layout-modaco #cart-count { background: #fff; color: var(--color-primario); border-radius: 0; border: 1px solid var(--color-primario); }

/* Cards — portrait 4:5, CERO radius */
body.layout-modaco .product-grid { grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 2rem 1rem; align-items: start; }
body.layout-modaco .product { background: transparent; border: none; box-shadow: none; padding: 0 0 0.5rem; overflow: visible; border-radius: 0; }
body.layout-modaco .product:hover { transform: none; box-shadow: none; }
body.layout-modaco .prod-img-wrap { aspect-ratio: 4/5; border-radius: 0; background: #f5f5f5; overflow: hidden; }
body.layout-modaco .prod-img-wrap img { object-fit: cover; }
body.layout-modaco .product:hover .prod-img-wrap img { transform: scale(1.03); }
body.layout-modaco .product h3 { color: var(--color-primario) !important; font-family: var(--font-display); font-style: italic; font-weight: 400; font-size: 0.9rem; padding: 0.7rem 0 0.1rem; letter-spacing: 0; }
body.layout-modaco .product p { color: var(--color-primario) !important; font-weight: 600; padding: 0 0 0.4rem; font-size: 0.88rem; font-family: 'DM Sans', sans-serif; }
body.layout-modaco .product > button:not(.quantity-controls button) { background: var(--color-primario); color: #fff; border-radius: 0; margin: 0 0 0.3rem; width: 100%; font-size: 0.72rem; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; transition: opacity 0.2s; opacity: 0; }
body.layout-modaco .product:hover > button:not(.quantity-controls button) { opacity: 1; }
body.layout-modaco .product > button:not(.quantity-controls button):hover { background: var(--color-primario-hover); opacity: 1; }
body.layout-modaco .quantity-controls { border-radius: 0; margin: 0 0 0.3rem; }
@media (hover: none) { body.layout-modaco .product > button:not(.quantity-controls button) { opacity: 1 !important; } }

/* Etiquetas monospace */
body.layout-modaco .product-badge { font-family: 'DM Mono', monospace !important; text-transform: uppercase; letter-spacing: 0.06em; border-radius: 0 !important; font-size: 0.65rem; }

/* Títulos */
body.layout-modaco .seccion-titulo { color: var(--color-primario); border-bottom: 1.5px solid var(--color-primario); font-family: var(--font-display); font-style: italic; font-weight: 400; text-transform: none; font-size: 1.05rem; }
body.layout-modaco .category-title { color: var(--color-primario); border-bottom: 1.5px solid var(--color-primario); font-family: var(--font-display); font-style: italic; font-weight: 400; text-transform: none; }

/* Strip */
body.layout-modaco .strip-info { background: var(--color-primario); }
body.layout-modaco .strip-item { color: #ffffff; font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; }
body.layout-modaco .strip-item strong, body.layout-modaco .strip-item span { color: #e5e7eb !important; }
body.layout-modaco .strip-item { border-color: rgba(255,255,255,.2) !important; }

/* Precios */
body.layout-modaco .precio-actual { color: var(--color-primario) !important; font-weight: 700; }

/* Carrito */
body.layout-modaco .cart-header { background: var(--color-primario); }
body.layout-modaco .cart-checkout-btn { background: var(--color-primario); border-radius: 0; text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.8rem; }
body.layout-modaco .cart-checkout-btn:hover { background: var(--color-primario-hover); }

/* Hero — negro, serif grande */
body.layout-modaco .hero-section { background: var(--color-primario); min-height: 520px; }
body.layout-modaco .hero-section.has-hero-bg .hero-overlay { background: rgba(0,0,0,.62) !important; }
body.layout-modaco .hero-tag { background: transparent; border: 1px solid rgba(255,255,255,.3); color: #d1d5db; border-radius: 0; letter-spacing: 0.12em; font-size: 0.66rem; text-transform: uppercase; font-family: 'DM Mono', monospace; }
body.layout-modaco .hero-titulo { font-family: var(--font-display); font-style: italic; font-weight: 400; color: #ffffff; font-size: clamp(2.8rem, 6vw, 5.5rem); line-height: 1.05; letter-spacing: -0.02em; }
body.layout-modaco .hero-sub { color: rgba(255,255,255,.55); font-size: 0.85rem; letter-spacing: 0.04em; text-transform: uppercase; font-family: 'DM Mono', monospace; }
body.layout-modaco .hero-cta { background: #ffffff; color: var(--color-primario); border-radius: 0; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; font-size: 0.78rem; padding: 1rem 2.5rem; }
body.layout-modaco .hero-cta:hover { background: #e5e7eb; filter: none; }

/* Categorías */
body.layout-modaco .cat-visual-card { background: #ffffff; border: 1.5px solid var(--color-primario); border-radius: 0; }
body.layout-modaco .cat-visual-card:hover { background: var(--color-primario); box-shadow: none; }
body.layout-modaco .cat-visual-card:hover .cat-visual-nombre { color: #ffffff !important; }
body.layout-modaco .cat-visual-card:hover .cat-visual-count { color: #9ca3af; }
body.layout-modaco .cat-visual-nombre { color: var(--color-primario) !important; font-family: var(--font-display); font-style: italic; font-weight: 400; }
body.layout-modaco .cat-visual-count { color: #6b7280; font-family: 'DM Mono', monospace; font-size: 0.72rem; }

/* Producto detalle */
body.layout-modaco .pd-ab-hero { grid-template-columns: 55fr 45fr; max-width: 1300px; margin: 0 auto; padding: 2rem 1.5rem; gap: 3rem; align-items: start; min-height: unset; overflow: visible; }
body.layout-modaco .pd-ab-images { grid-column: 1; grid-row: 1; position: sticky; top: 80px; background: #f5f5f5; border-radius: 0; }
body.layout-modaco .pd-carousel-frame { min-height: 420px; max-height: 80vh; border-radius: 0; }
body.layout-modaco .pd-ab-main-img { min-height: 420px; max-height: 80vh; border-radius: 0; object-fit: cover; background: #f5f5f5; }
body.layout-modaco .pd-ab-panel { grid-column: 2; grid-row: 1; background: transparent; border: none; border-top: 1.5px solid var(--color-primario); padding: 1.5rem 0 0; box-shadow: none; }
body.layout-modaco .pd-ab-title { color: var(--color-primario); font-family: var(--font-display); font-style: italic; font-weight: 400; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.08; }
body.layout-modaco .pd-price { color: var(--color-primario) !important; font-weight: 700; }
body.layout-modaco .pd-ab-btn-main { background: var(--color-primario); border-radius: 0; text-transform: uppercase; letter-spacing: 0.08em; }
body.layout-modaco .pd-ab-btn-main:hover:not(:disabled) { background: var(--color-primario-hover); }
body.layout-modaco .pd-ab-btn-main:disabled { background: rgba(0,0,0,.12); color: #6b7280; }
body.layout-modaco .pd-car-thumbs { background: rgba(245,245,245,.95); border-radius: 0; justify-content: center; width: 100%; box-sizing: border-box; }

@media (max-width: 768px) {
    body.layout-modaco .pd-ab-hero { grid-template-columns: 1fr; padding: 1rem; gap: 1.2rem; }
    body.layout-modaco .pd-ab-images { grid-column: 1; grid-row: 1; position: static; }
    body.layout-modaco .pd-ab-panel { grid-column: 1; grid-row: 2; border-top: 1.5px solid var(--color-primario); padding-top: 1.2rem; }
}
