/**
 * Primeros Pueblos Atomic Design System
 * Stable layer loaded from mu-plugins, after theme/plugin styles.
 *
 * Atoms: tokens, typography, links, buttons, fields, media.
 * Molecules: nav groups, forms, product cards, notices.
 * Organisms: header, footer, WooCommerce product/cart/checkout surfaces.
 */

:root {
    --pp-color-ink: #080808;
    --pp-color-text: #202020;
    --pp-color-muted: #777777;
    --pp-color-subtle: #a6a6a6;
    --pp-color-line: #d8d8d8;
    --pp-color-soft-line: #ececec;
    --pp-color-surface: #ffffff;
    --pp-color-surface-warm: #f7f7f4;
    --pp-color-surface-soft: #fbfbfc; /* gris muy suave (footer) */
    --pp-color-accent: #ef4056;
    --pp-color-accent-soft: #ffe5ea;
    --pp-color-success: #497a41;
    --pp-color-warning: #a46400;
    --pp-font-sans: Roboto, Inter, "Helvetica Neue", Arial, sans-serif;
    --pp-font-serif: Georgia, "Times New Roman", serif;
    --pp-step-0: 0;
    --pp-step-1: 4px;
    --pp-step-2: 8px;
    --pp-step-3: 12px;
    --pp-step-4: 16px;
    --pp-step-5: 24px;
    --pp-step-6: 32px;
    --pp-step-7: 48px;
    --pp-step-8: 64px;
    --pp-step-9: 96px;
    --pp-radius-xs: 0;
    --pp-radius-sm: 2px;
    --pp-radius-md: 4px;
    --pp-shadow-glass: 0 12px 38px rgba(0, 0, 0, 0.10);
    --pp-shadow-card: 0 8px 28px rgba(0, 0, 0, 0.06);
    --pp-container: min(100% - 40px, 1440px);
    --pp-transition: 180ms ease;
}

body.pp-atomic-design {
    color: var(--pp-color-text);
    font-family: var(--pp-font-sans);
    line-height: 1.55;
    text-rendering: optimizeLegibility;
}

body.pp-atomic-design h1,
body.pp-atomic-design h2,
body.pp-atomic-design h3,
body.pp-atomic-design .elementor-heading-title,
body.pp-atomic-design .product_title {
    color: var(--pp-color-ink);
    font-family: var(--pp-font-serif);
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.08;
}

body.pp-atomic-design h4,
body.pp-atomic-design h5,
body.pp-atomic-design h6,
body.pp-atomic-design .woocommerce-loop-product__title {
    color: var(--pp-color-ink);
    font-family: var(--pp-font-sans);
    font-weight: 600;
    letter-spacing: 0.02em;
}

body.pp-atomic-design p {
    letter-spacing: 0;
}

body.pp-atomic-design a {
    color: inherit;
    text-underline-offset: 0.22em;
    transition: color var(--pp-transition), border-color var(--pp-transition), opacity var(--pp-transition);
}

body.pp-atomic-design a:hover {
    color: var(--pp-color-accent);
}

body.pp-atomic-design :focus-visible {
    outline: 2px solid var(--pp-color-accent);
    outline-offset: 3px;
}

body.pp-atomic-design img,
body.pp-atomic-design video {
    max-width: 100%;
}

body.pp-atomic-design .elementor-section.elementor-section-boxed > .elementor-container,
body.pp-atomic-design .elementor-container,
body.pp-atomic-design .container,
body.pp-atomic-design .container-fluid {
    max-width: var(--pp-container);
}

body.pp-atomic-design .elementor-widget-button .elementor-button,
body.pp-atomic-design a.elementor-button,
body.pp-atomic-design .button,
body.pp-atomic-design button:not(.navbar-toggler):not(.mfp-close),
body.pp-atomic-design input[type="submit"],
body.pp-atomic-design .woocommerce a.button,
body.pp-atomic-design .woocommerce button.button,
body.pp-atomic-design .woocommerce input.button,
body.pp-atomic-design .woocommerce #respond input#submit {
    align-items: center;
    background: transparent;
    border: 1px solid var(--pp-color-ink);
    border-radius: var(--pp-radius-xs);
    color: var(--pp-color-ink);
    display: inline-flex;
    font-family: var(--pp-font-sans);
    font-size: 13px;
    font-weight: 700;
    gap: 8px;
    justify-content: center;
    letter-spacing: 0.08em;
    line-height: 1;
    min-height: 42px;
    padding: 13px 22px;
    text-transform: none;
    transition: background var(--pp-transition), border-color var(--pp-transition), color var(--pp-transition), transform var(--pp-transition);
}

body.pp-atomic-design .elementor-widget-button .elementor-button:hover,
body.pp-atomic-design a.elementor-button:hover,
body.pp-atomic-design .button:hover,
body.pp-atomic-design button:not(.navbar-toggler):not(.mfp-close):hover,
body.pp-atomic-design input[type="submit"]:hover,
body.pp-atomic-design .woocommerce a.button:hover,
body.pp-atomic-design .woocommerce button.button:hover,
body.pp-atomic-design .woocommerce input.button:hover,
body.pp-atomic-design .woocommerce #respond input#submit:hover {
    background: var(--pp-color-ink);
    border-color: var(--pp-color-ink);
    color: #ffffff;
    transform: translateY(-1px);
}

body.pp-atomic-design .woocommerce a.button.alt,
body.pp-atomic-design .woocommerce button.button.alt,
body.pp-atomic-design .woocommerce input.button.alt,
body.pp-atomic-design .woocommerce #place_order,
body.pp-atomic-design .woocommerce .checkout-button,
body.pp-atomic-design .woocommerce .single_add_to_cart_button {
    --bs-btn-bg: var(--pp-color-ink);
    --bs-btn-border-color: var(--pp-color-ink);
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #ffffff;
    --bs-btn-hover-border-color: var(--pp-color-ink);
    --bs-btn-hover-color: var(--pp-color-ink);
    background: var(--pp-color-ink);
    background-color: var(--pp-color-ink);
    border-color: var(--pp-color-ink);
    color: #ffffff;
}

body.pp-atomic-design .woocommerce a.button.alt:hover,
body.pp-atomic-design .woocommerce button.button.alt:hover,
body.pp-atomic-design .woocommerce input.button.alt:hover,
body.pp-atomic-design .woocommerce #place_order:hover,
body.pp-atomic-design .woocommerce .checkout-button:hover,
body.pp-atomic-design .woocommerce .single_add_to_cart_button:hover {
    background: #ffffff;
    background-color: #ffffff;
    color: var(--pp-color-ink);
}

body.pp-atomic-design input[type="text"],
body.pp-atomic-design input[type="email"],
body.pp-atomic-design input[type="tel"],
body.pp-atomic-design input[type="password"],
body.pp-atomic-design input[type="search"],
body.pp-atomic-design input[type="number"],
body.pp-atomic-design input[type="url"],
body.pp-atomic-design textarea,
body.pp-atomic-design select,
body.pp-atomic-design .woocommerce .select2-container .select2-selection {
    background: #ffffff;
    border: 1px solid var(--pp-color-line);
    border-radius: var(--pp-radius-xs);
    color: var(--pp-color-ink);
    font-family: var(--pp-font-sans);
    font-size: 15px;
    min-height: 44px;
    padding: 11px 14px;
    transition: border-color var(--pp-transition), box-shadow var(--pp-transition);
    width: 100%;
}

body.pp-atomic-design input:focus,
body.pp-atomic-design textarea:focus,
body.pp-atomic-design select:focus,
body.pp-atomic-design .woocommerce .select2-container--focus .select2-selection {
    border-color: var(--pp-color-ink);
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.06);
    outline: 0;
}

body.pp-atomic-design label,
body.pp-atomic-design .wpforms-field-label,
body.pp-atomic-design .woocommerce form .form-row label {
    color: var(--pp-color-ink);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.18em;
    margin-bottom: 8px;
    text-transform: none;
}

body.pp-atomic-design .woocommerce-message,
body.pp-atomic-design .woocommerce-info,
body.pp-atomic-design .woocommerce-error,
body.pp-atomic-design .elementor-alert {
    background: var(--pp-color-surface-warm);
    border: 1px solid var(--pp-color-soft-line);
    border-radius: var(--pp-radius-xs);
    color: var(--pp-color-ink);
    padding: 16px 20px 16px 58px;
    position: relative;
}

body.pp-atomic-design .woocommerce-message::before,
body.pp-atomic-design .woocommerce-info::before,
body.pp-atomic-design .woocommerce-error::before {
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
}

body.pp-atomic-design .woocommerce-message {
    border-left: 4px solid var(--pp-color-success);
}

body.pp-atomic-design .woocommerce-info {
    border-left: 4px solid var(--pp-color-ink);
}

body.pp-atomic-design .woocommerce-error {
    border-left: 4px solid var(--pp-color-accent);
}

body.pp-atomic-design .navbar#js-header {
    border-radius: 0;
    left: 0;
    min-height: 112px;
    padding-inline: clamp(22px, 4vw, 78px);
    right: 0;
    top: 0;
    width: 100%;
    z-index: 1000;
    transition: background var(--pp-transition), box-shadow var(--pp-transition), border-color var(--pp-transition), min-height var(--pp-transition);
}

body.pp-atomic-design.home .navbar#js-header:not(.pp-is-scrolled):not(:hover),
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.22);
    box-shadow: none;
}

body.pp-atomic-design .navbar#js-header.pp-is-scrolled,
body.pp-atomic-design:not(.home) .navbar#js-header,
body.pp-atomic-design.pp-menu-open .navbar#js-header,
body.pp-atomic-design .navbar#js-header:hover {
    background: rgba(255, 255, 255, 0.80) !important;
    backdrop-filter: blur(22px) saturate(170%);
    -webkit-backdrop-filter: blur(22px) saturate(170%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.62);
    box-shadow: var(--pp-shadow-glass);
}

body.pp-atomic-design .navbar#js-header.pp-is-scrolled {
    min-height: 86px;
}

body.pp-atomic-design .navbar#js-header .navbar-brand img {
    display: block;
    height: auto;
    max-height: 54px;
    object-fit: contain;
}

body.pp-atomic-design .navbar#js-header .nav-link {
    color: var(--pp-color-ink);
    font-size: clamp(11px, 0.85vw, 14px);
    font-weight: 500;
    letter-spacing: 0.22em;
    line-height: 1.2;
    padding: 12px 0;
    text-transform: none;
}

body.pp-atomic-design.home .navbar#js-header:not(.pp-is-scrolled):not(:hover) .nav-link,
body.pp-atomic-design.home .navbar#js-header:not(.pp-is-scrolled):not(:hover) .navbar__buscador,
body.pp-atomic-design.home .navbar#js-header:not(.pp-is-scrolled):not(:hover) .navbar__bolsa {
    color: #ffffff;
}

body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .nav-link,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__buscador,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__buscador a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__cuenta,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__cuenta a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__bolsa,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__bolsa a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar-toggler {
    color: #ffffff !important;
    text-shadow: 0 1px 12px rgba(0, 0, 0, 0.42);
}

body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__buscador a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__cuenta a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__bolsa a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar-toggler {
    background: transparent;
    box-shadow: none;
}

body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__buscador a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__cuenta a,
body.pp-atomic-design.home:not(.pp-menu-open) .navbar#js-header:not(.pp-is-scrolled) .navbar__bolsa a {
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.40));
}

body.pp-atomic-design.pp-no-hero-banner .navbar#js-header,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar.navbar--sticky.sticky-top#js-header,
body.pp-atomic-design.pp-no-hero-banner .navbar.navbar--sticky.sticky-top#js-header {
    background: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(22px) saturate(170%);
    -webkit-backdrop-filter: blur(22px) saturate(170%);
    border-bottom: 1px solid rgba(8, 8, 8, 0.08);
    box-shadow: var(--pp-shadow-glass);
}

body.pp-atomic-design.pp-no-hero-banner .navbar#js-header > .container-custom,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header > .container-custom,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar.navbar--sticky.sticky-top#js-header > .container-custom,
body.pp-atomic-design.pp-no-hero-banner .navbar.navbar--sticky.sticky-top#js-header > .container-custom {
    background: rgba(255, 255, 255, 0.80) !important;
    border-color: rgba(8, 8, 8, 0.08) !important;
    box-shadow: var(--pp-shadow-glass), inset 0 1px 0 rgba(255, 255, 255, 0.52) !important;
}

body.pp-atomic-design.pp-no-hero-banner .navbar#js-header > .container-custom::before,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header > .container-custom::before,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar.navbar--sticky.sticky-top#js-header > .container-custom::before,
body.pp-atomic-design.pp-no-hero-banner .navbar.navbar--sticky.sticky-top#js-header > .container-custom::before {
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.06) 42%, rgba(255, 255, 255, 0.22)) !important;
    opacity: 1 !important;
}

body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .nav-link,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .nav-link,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__buscador,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__buscador,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__buscador a,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__buscador a,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__cuenta,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__cuenta,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__cuenta a,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__cuenta a,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__bolsa,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__bolsa,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__bolsa a,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__bolsa a,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar-toggler,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar-toggler,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar-toggler-icon,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar-toggler-icon {
    color: var(--pp-color-ink) !important;
    text-shadow: none !important;
}

body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__buscador a,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__buscador a,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__cuenta a,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__cuenta a,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__bolsa a,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__bolsa a,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar-toggler,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar-toggler {
    background: transparent !important;
    filter: none !important;
    box-shadow: none !important;
}

body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .nav-link:hover,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .nav-link:hover,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .nav-link:focus,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .nav-link:focus,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__buscador a:hover,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__buscador a:hover,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__cuenta a:hover,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__cuenta a:hover,
body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__bolsa a:hover {
    color: var(--pp-color-accent) !important;
}

body.pp-atomic-design.pp-no-hero-banner .navbar#js-header .navbar__bolsa--qty {
    background: var(--pp-color-ink);
    color: #ffffff !important;
}

body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header .navbar__bolsa--qty {
    background: var(--pp-color-ink);
    color: #ffffff !important;
}

body.pp-atomic-design .navbar#js-header > .container-custom {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    max-width: none !important;
    width: 100% !important;
}

body.pp-atomic-design .navbar#js-header > .container-custom::before,
body.pp-atomic-design .navbar#js-header > .container-custom::after {
    background: none !important;
    content: none !important;
    display: none !important;
    opacity: 0 !important;
}

body.pp-atomic-design:not(.home) .navbar#js-header,
body.pp-atomic-design:not(.home) .navbar.navbar--sticky.sticky-top#js-header,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar#js-header,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar.navbar--sticky.sticky-top#js-header {
    background: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-bottom: 1px solid rgba(8, 8, 8, 0.08) !important;
    box-shadow: 0 14px 34px rgba(8, 8, 8, 0.08) !important;
    padding-inline: 0 !important;
}

body.pp-atomic-design:not(.home) .navbar#js-header > .container-custom,
body.pp-atomic-design:not(.home) .navbar.navbar--sticky.sticky-top#js-header > .container-custom,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar#js-header > .container-custom,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar.navbar--sticky.sticky-top#js-header > .container-custom {
    padding-inline: clamp(24px, 4vw, 78px) !important;
}

body.pp-atomic-design:not(.home) .navbar#js-header .nav-link,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar__buscador,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar__buscador a,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar__cuenta,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar__cuenta a,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar__bolsa,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar__bolsa a,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar-toggler,
body.pp-atomic-design:not(.home) .navbar#js-header .navbar-toggler-icon {
    color: var(--pp-color-ink) !important;
    text-shadow: none !important;
}

body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled,
body.pp-atomic-design.home .navbar.navbar--sticky.sticky-top#js-header.pp-is-scrolled {
    background:
        radial-gradient(circle at 18% 0%, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0) 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.08) 56%, rgba(255, 255, 255, 0.18)) !important;
    backdrop-filter: blur(26px) saturate(185%);
    -webkit-backdrop-filter: blur(26px) saturate(185%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.34);
    box-shadow: 0 20px 54px rgba(31, 28, 24, 0.12), 0 6px 18px rgba(31, 28, 24, 0.06);
}

body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled > .container-custom,
body.pp-atomic-design.home .navbar.navbar--sticky.sticky-top#js-header.pp-is-scrolled > .container-custom {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled > .container-custom::before,
body.pp-atomic-design.home .navbar.navbar--sticky.sticky-top#js-header.pp-is-scrolled > .container-custom::before {
    background: none !important;
    opacity: 0 !important;
}

body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .nav-link,
body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .navbar__buscador,
body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .navbar__buscador a,
body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .navbar__cuenta,
body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .navbar__cuenta a,
body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .navbar__bolsa,
body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .navbar__bolsa a,
body.pp-atomic-design.home .navbar#js-header.pp-is-scrolled .navbar-toggler {
    color: var(--pp-color-ink) !important;
    filter: none !important;
    text-shadow: none !important;
}

body.pp-atomic-design .navbar#js-header .nav-link,
body.pp-atomic-design .navbar#js-header .nav-link:hover,
body.pp-atomic-design .navbar#js-header .nav-link:focus,
body.pp-atomic-design .navbar#js-header .nav-link.active,
body.pp-atomic-design .navbar#js-header .show > .nav-link,
body.pp-atomic-design .navbar#js-header .navbar__buscador a,
body.pp-atomic-design .navbar#js-header .navbar__buscador a:hover,
body.pp-atomic-design .navbar#js-header .navbar__buscador a:focus,
body.pp-atomic-design .navbar#js-header .navbar__cuenta a,
body.pp-atomic-design .navbar#js-header .navbar__cuenta a:hover,
body.pp-atomic-design .navbar#js-header .navbar__cuenta a:focus,
body.pp-atomic-design .navbar#js-header .navbar__bolsa a,
body.pp-atomic-design .navbar#js-header .navbar__bolsa a:hover,
body.pp-atomic-design .navbar#js-header .navbar__bolsa a:focus,
body.pp-atomic-design .navbar#js-header .navbar-toggler,
body.pp-atomic-design .navbar#js-header .navbar-toggler:hover,
body.pp-atomic-design .navbar#js-header .navbar-toggler:focus {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

body.pp-atomic-design .navbar#js-header .navbar-toggler {
    outline: 0;
}

body.pp-atomic-design .navbar#js-header .navbar__buscador a,
body.pp-atomic-design .navbar#js-header .navbar__cuenta a,
body.pp-atomic-design .navbar#js-header .navbar__bolsa a {
    align-items: center;
    color: currentColor;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    line-height: 1;
    position: relative;
    text-decoration: none !important;
    width: 34px;
}

body.pp-atomic-design .navbar#js-header .navbar__buscador i,
body.pp-atomic-design .navbar#js-header .navbar__cuenta i,
body.pp-atomic-design .navbar#js-header .navbar__bolsa i {
    display: none !important;
}

body.pp-atomic-design .navbar#js-header .navbar__buscador a::before,
body.pp-atomic-design .navbar#js-header .navbar__cuenta a::before,
body.pp-atomic-design .navbar#js-header .navbar__cuenta a::after,
body.pp-atomic-design .navbar#js-header .navbar__bolsa a::before,
body.pp-atomic-design .navbar#js-header .navbar__bolsa a::after {
    content: "";
    display: block;
    pointer-events: none;
    position: absolute;
}

body.pp-atomic-design .navbar#js-header .navbar__buscador a::before {
    border: 2px solid currentColor;
    border-radius: 50%;
    height: 18px;
    left: 6px;
    top: 5px;
    width: 18px;
}

body.pp-atomic-design .navbar#js-header .navbar__buscador a::after {
    background: currentColor;
    border-radius: 999px;
    content: "";
    display: block;
    height: 2px;
    left: 21px;
    pointer-events: none;
    position: absolute;
    top: 22px;
    transform: rotate(45deg);
    transform-origin: left center;
    width: 10px;
}

body.pp-atomic-design .navbar#js-header .navbar__cuenta a::before {
    border: 2px solid currentColor;
    border-radius: 50%;
    height: 10px;
    left: 12px;
    top: 5px;
    width: 10px;
}

body.pp-atomic-design .navbar#js-header .navbar__cuenta a::after {
    border: 2px solid currentColor;
    border-bottom: 0;
    border-radius: 14px 14px 0 0;
    height: 12px;
    left: 8px;
    top: 18px;
    width: 18px;
}

body.pp-atomic-design .navbar#js-header .navbar__bolsa a::before {
    border: 2px solid currentColor;
    border-radius: 2px;
    height: 19px;
    left: 8px;
    top: 11px;
    width: 19px;
}

body.pp-atomic-design .navbar#js-header .navbar__bolsa a::after {
    border: 2px solid currentColor;
    border-bottom: 0;
    border-radius: 12px 12px 0 0;
    height: 10px;
    left: 13px;
    top: 5px;
    width: 9px;
}

body.pp-atomic-design .navbar#js-header .nav-link:hover,
body.pp-atomic-design .navbar#js-header .nav-link:focus {
    color: var(--pp-color-accent);
}

body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu {
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border: 1px solid var(--pp-color-soft-line);
    border-radius: 0;
    box-shadow: var(--pp-shadow-glass);
    margin-top: 0;
}

body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu,
body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu a,
body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu span,
body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu .elementor-heading-title,
body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu .elementor-icon-list-text {
    font-family: var(--pp-font-sans) !important;
}

body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu.pp-megamenu-accordion {
    max-height: min(78vh, 760px);
    overflow-y: auto;
    padding: clamp(24px, 3.5vw, 46px) clamp(22px, 4vw, 64px);
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-section,
body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-container,
body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-column,
body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-widget-wrap {
    display: block !important;
    max-width: 100% !important;
    width: 100% !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-container {
    margin-inline: auto;
    max-width: 560px !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-section {
    padding: 0 !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-column:not(.pp-megamenu-accordion__item) {
    margin: 0 0 18px;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item {
    border-bottom: 1px solid rgba(8, 8, 8, 0.12);
    margin: 0 !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item > .elementor-widget-wrap {
    padding: 0 !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item .elementor-widget-heading {
    margin: 0 !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__trigger {
    align-items: center;
    color: var(--pp-color-ink) !important;
    cursor: pointer;
    display: flex !important;
    font-family: var(--pp-font-sans);
    font-size: clamp(22px, 2.1vw, 34px);
    font-weight: 600;
    justify-content: space-between;
    line-height: 1.12;
    padding: 18px 0 !important;
    text-decoration: none !important;
    width: 100%;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__trigger::after {
    content: "+";
    font-family: var(--pp-font-sans);
    font-size: 22px;
    font-weight: 400;
    line-height: 1;
    margin-left: 24px;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item.is-open .pp-megamenu-accordion__trigger::after {
    content: "-";
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel {
    display: none !important;
    margin: -2px 0 18px !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item.is-open .pp-megamenu-accordion__panel {
    display: block !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-items {
    display: grid;
    gap: 8px;
    list-style: none !important;
    margin: 0;
    padding: 0 0 4px;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-item {
    list-style: none !important;
    margin: 0 !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-item::before,
body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-item::after {
    content: none !important;
    display: none !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-item::marker {
    content: "" !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-icon {
    display: none !important;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel a {
    align-items: flex-start;
    color: var(--pp-color-muted) !important;
    display: inline-flex;
    font-size: 16px;
    gap: 10px;
    line-height: 1.35;
    padding: 2px 0;
    text-decoration: none;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel a::before {
    background: currentColor;
    border-radius: 999px;
    content: "";
    flex: 0 0 4px;
    height: 4px;
    margin-top: 0.58em;
    width: 4px;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel a:hover,
body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel a:focus {
    color: var(--pp-color-ink) !important;
    text-decoration: underline;
    text-underline-offset: 4px;
}

body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card {
    display: none !important;
}

@media (min-width: 992px) {
    body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu.pp-megamenu-accordion {
        --pp-mega-left-offset: 0px;
        --pp-mega-left-width: clamp(300px, 22vw, 360px);
        --pp-mega-gap: clamp(36px, 5vw, 80px);
        --pp-mega-panel-left: calc(var(--pp-mega-left-offset) + var(--pp-mega-left-width) + var(--pp-mega-gap));
        --pp-mega-panel-top: clamp(38px, 4vw, 56px);
        left: 0 !important;
        margin: 0 !important;
        max-height: calc(100vh - var(--pp-nav-bottom, 129px));
        min-height: min(72vh, 620px);
        overflow-x: hidden;
        padding: 22px 0 28px;
        position: fixed !important;
        right: 0 !important;
        top: var(--pp-nav-height, 129px) !important;
        transform: none !important;
        width: 100vw !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-container {
        margin-left: var(--pp-mega-left-offset);
        margin-right: auto;
        max-width: var(--pp-mega-left-width) !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-section,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-container,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-column,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-widget-wrap {
        position: static !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-column:not(.pp-megamenu-accordion__item),
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item {
        max-width: var(--pp-mega-left-width) !important;
        width: var(--pp-mega-left-width) !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-column:not(.pp-megamenu-accordion__item) {
        margin-bottom: 8px;
        padding-inline: 34px !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .pp-megamenu-accordion__label-hidden {
        display: none !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion .elementor-column:not(.pp-megamenu-accordion__item) .elementor-heading-title {
        color: rgba(8, 8, 8, 0.56) !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        letter-spacing: 0.12em !important;
        line-height: 1.25 !important;
        text-transform: none !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__trigger {
        font-size: 16px;
        font-weight: 500;
        letter-spacing: 0.055em;
        line-height: 1.25;
        min-height: 58px;
        padding: 0 34px !important;
        text-transform: none;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__trigger::after {
        content: ">";
        font-size: 20px;
        font-weight: 300;
        margin-left: 18px;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item.is-open:not(.is-hover):not(:hover):not(:focus-within) .pp-megamenu-accordion__panel {
        display: none !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item:hover .pp-megamenu-accordion__panel,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item:focus-within .pp-megamenu-accordion__panel,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel:hover,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel:focus-within,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item.is-hover .pp-megamenu-accordion__panel {
        display: block !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item:hover .pp-megamenu-accordion__trigger,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item:focus-within .pp-megamenu-accordion__trigger,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__item.is-hover .pp-megamenu-accordion__trigger {
        background: rgba(8, 8, 8, 0.035);
        color: var(--pp-color-accent) !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel {
        height: calc(100% - var(--pp-mega-panel-top) - 42px);
        left: var(--pp-mega-panel-left);
        margin: 0 !important;
        max-height: none;
        overflow-y: auto;
        padding-top: 4px;
        position: absolute;
        top: var(--pp-mega-panel-top);
        width: clamp(380px, 48vw, 760px) !important;
        max-width: calc(100vw - var(--pp-mega-panel-left) - 56px) !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-items {
        column-gap: clamp(34px, 5vw, 80px);
        display: grid;
        grid-template-columns: repeat(2, minmax(170px, 1fr));
        row-gap: 9px;
        padding-bottom: 0;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel .elementor-icon-list-icon {
        display: none !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-accordion__panel a {
        color: var(--pp-color-ink) !important;
        font-size: 14px;
        font-weight: 400;
        letter-spacing: 0;
        line-height: 1.45;
    }
}

@media (min-width: 1360px) {
    body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu.pp-megamenu-accordion--with-featured {
        --pp-mega-featured-right: clamp(32px, 4vw, 72px);
        --pp-mega-featured-height: clamp(263px, 17.5vw, 335px);
        --pp-mega-featured-width: clamp(420px, 28vw, 536px);
        --pp-mega-featured-gap: clamp(28px, 4vw, 64px);
    }

    body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu.pp-megamenu-accordion--with-featured .pp-megamenu-accordion__panel {
        max-width: calc(100vw - var(--pp-mega-panel-left) - var(--pp-mega-featured-width) - var(--pp-mega-featured-right) - var(--pp-mega-featured-gap)) !important;
        width: clamp(360px, 34vw, 620px) !important;
    }

    body.pp-atomic-design .navbar#js-header .dropdown-menu.megamenu.pp-megamenu-accordion--with-featured.pp-megamenu-featured-visible > .pp-megamenu-featured-card {
        background: #f4f1ec;
        color: #fff !important;
        display: block !important;
        height: var(--pp-mega-featured-height);
        isolation: isolate;
        overflow: hidden;
        position: absolute;
        right: var(--pp-mega-featured-right);
        text-decoration: none !important;
        top: var(--pp-mega-panel-top);
        width: var(--pp-mega-featured-width);
        z-index: 2;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card::after {
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 34%, rgba(0, 0, 0, 0.72) 100%);
        content: "";
        inset: 0;
        pointer-events: none;
        position: absolute;
        z-index: 1;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__media,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__media img {
        display: block;
        height: 100%;
        width: 100%;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__media img {
        object-fit: cover;
        transition: transform 0.45s ease;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card:hover .pp-megamenu-featured-card__media img,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card:focus .pp-megamenu-featured-card__media img {
        transform: scale(1.04);
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__body {
        bottom: 0;
        display: grid;
        gap: 7px;
        left: 0;
        padding: clamp(16px, 1.4vw, 22px);
        position: absolute;
        right: 0;
        z-index: 2;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__label,
    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__cta {
        color: rgba(255, 255, 255, 0.78) !important;
        font-family: var(--pp-font-sans) !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        letter-spacing: 0.16em !important;
        line-height: 1.2 !important;
        text-transform: none !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__title {
        color: #fff !important;
        font-family: var(--pp-font-serif) !important;
        font-size: clamp(19px, 1.55vw, 26px) !important;
        font-weight: 700 !important;
        letter-spacing: 0 !important;
        line-height: 1.05 !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__price {
        color: rgba(255, 255, 255, 0.88) !important;
        font-family: var(--pp-font-sans) !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
    }

    body.pp-atomic-design .navbar#js-header .pp-megamenu-featured-card__cta {
        color: #fff !important;
        margin-top: 6px;
    }
}

@media (min-width: 768px) {
    body.pp-atomic-design.home .elementor-25128 .elementor-element-f9bd025 {
        --pp-home-mosaic-gap: 8px;
        --pp-home-mosaic-height: clamp(560px, 53.5vw, 780px);
        align-items: stretch !important;
        display: grid !important;
        gap: var(--pp-home-mosaic-gap) !important;
        grid-template-columns: minmax(0, 1.44fr) minmax(0, 1fr) !important;
        margin-inline: auto !important;
        max-width: 1440px !important;
        padding: 8px !important;
        width: 100% !important;
    }

    body.pp-atomic-design.home .elementor-25128 .elementor-element-f9bd025 > .e-con-inner {
        display: contents !important;
    }

    body.pp-atomic-design.home .elementor-25128 .elementor-element-f1e7f16,
    body.pp-atomic-design.home .elementor-25128 .elementor-element-ae2196a {
        height: var(--pp-home-mosaic-height) !important;
        margin: 0 !important;
        min-height: 0 !important;
        width: auto !important;
    }

    body.pp-atomic-design.home .elementor-25128 .elementor-element-ae2196a {
        display: grid !important;
        gap: var(--pp-home-mosaic-gap) !important;
        grid-template-rows: 1.2fr 1fr !important;
    }

    body.pp-atomic-design.home .elementor-25128 .elementor-element-bbf12a4,
    body.pp-atomic-design.home .elementor-25128 .elementor-element-bbb5e80 {
        height: auto !important;
        margin: 0 !important;
        min-height: 0 !important;
        width: auto !important;
    }
}

@media (max-width: 767.98px) {
    body.pp-atomic-design.home .elementor-25128 .elementor-element-f9bd025 {
        display: grid !important;
        gap: 8px !important;
        grid-template-columns: 1fr !important;
        padding: 8px !important;
    }

    body.pp-atomic-design.home .elementor-25128 .elementor-element-ae2196a {
        display: grid !important;
        gap: 8px !important;
    }
}

@media (min-width: 992px) {
    body.pp-atomic-design .navbar#js-header .navbar-collapse {
        justify-content: center;
    }

    body.pp-atomic-design .navbar#js-header .navbar-nav {
        align-items: center;
        gap: clamp(28px, 4vw, 72px);
        justify-content: center;
        margin-inline: auto;
        width: auto;
    }
}

@media (max-width: 991.98px) {
    body.pp-atomic-design .navbar#js-header {
        min-height: 84px;
        padding-inline: 18px;
    }

    body.pp-atomic-design .navbar#js-header .navbar-collapse {
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: blur(18px);
        -webkit-backdrop-filter: blur(18px);
        border-top: 1px solid var(--pp-color-soft-line);
        margin-inline: -18px;
        margin-top: 14px;
        padding: 20px 18px 24px;
    }

    body.pp-atomic-design .navbar#js-header .nav-link {
        color: var(--pp-color-ink) !important;
        font-size: 14px;
        padding: 14px 0;
    }
}

body.pp-atomic-design .woocommerce ul.products {
    display: grid;
    gap: clamp(24px, 3vw, 42px);
    grid-template-columns: repeat(auto-fit, minmax(min(230px, 100%), 1fr));
}

body.pp-atomic-design .woocommerce ul.products::before,
body.pp-atomic-design .woocommerce ul.products::after {
    display: none;
}

body.pp-atomic-design .woocommerce ul.products li.product,
body.pp-atomic-design .elementor-widget-image-box,
body.pp-atomic-design .elementor-widget-call-to-action {
    border-radius: var(--pp-radius-xs);
}

/* Creators page: Elementor nested tabs act as the reusable listing organism. */
body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tabs-heading {
    column-gap: clamp(24px, 2.4vw, 44px) !important;
    justify-content: center !important;
    margin-bottom: clamp(48px, 4.5vw, 72px) !important;
    row-gap: 18px !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tab-title {
    background: transparent !important;
    border: 0 !important;
    color: var(--pp-color-muted) !important;
    flex-basis: auto !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    line-height: 1.25 !important;
    min-height: 0 !important;
    padding: 0 !important;
    text-transform: none !important;
    width: auto !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tab-title .e-n-tab-title-text {
    color: inherit !important;
    font: inherit !important;
    letter-spacing: inherit !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tab-title:hover,
body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tab-title:focus,
body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"] {
    color: var(--pp-color-accent) !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tabs-content {
    overflow: visible !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] {
    padding: 0 !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] > .e-con-inner {
    display: grid !important;
    gap: clamp(44px, 5vw, 72px) clamp(28px, 3vw, 44px) !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    max-width: min(100%, 1140px) !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] > .e-con-inner > .e-con {
    --content-width: 100%;
    --width: 100%;
    align-self: start !important;
    margin: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    position: relative !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] > .e-con-inner > .e-con > .e-con-inner {
    display: block !important;
    max-width: 100% !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-widget-image-box,
body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-image-box-wrapper,
body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-image-box-content {
    text-align: center !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-image-box-img {
    margin: 0 0 16px !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-image-box-img img {
    aspect-ratio: 1.68 / 1;
    display: block;
    filter: grayscale(100%);
    height: auto !important;
    object-fit: cover;
    width: 100% !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-image-box-title {
    color: var(--pp-color-accent) !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(20px, 1.5vw, 24px) !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    margin: 0 0 10px !important;
    text-align: center !important;
    text-transform: none !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-image-box-title a {
    color: inherit !important;
    text-decoration: none !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .elementor-image-box-description {
    color: var(--pp-color-muted) !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(15px, 1.1vw, 18px) !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    text-align: center !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] > .e-con-inner > .e-con .elementor-widget-button {
    height: 100% !important;
    inset: 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
    position: absolute !important;
    width: 100% !important;
    z-index: 2 !important;
}

body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] > .e-con-inner > .e-con .elementor-button {
    height: 100% !important;
    width: 100% !important;
}

@media (max-width: 991.98px) {
    body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] > .e-con-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs .e-n-tabs-heading {
        justify-content: flex-start !important;
        overflow-x: auto;
        padding-bottom: 8px;
        row-gap: 12px !important;
    }

    body.pp-atomic-design.page-id-401 .elementor-widget-n-tabs [id^="e-n-tab-content"] > .e-con-inner {
        grid-template-columns: 1fr !important;
    }
}

/* Collections 2026 page: reusable collection cards and editorial rows. */
body.pp-atomic-design.page-id-22676 .elementor-22676 {
    background: #ffffff;
}

body.pp-atomic-design.page-id-22676 .elementor-22676 > .e-con-boxed > .e-con-inner {
    max-width: min(100% - 36px, 1140px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-9ec8713 {
    --align-items: center !important;
    --justify-content: center !important;
    background-position: center center !important;
    background-size: cover !important;
}

body.pp-atomic-design.page-id-22676 .elementor-22676 .elementor-element-9ec8713.e-con-boxed > .e-con-inner {
    align-items: center !important;
    justify-content: center !important;
    max-width: min(100% - 36px, 1140px) !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-44ac477 {
    align-self: center !important;
    margin-inline: auto !important;
    text-align: center !important;
    width: auto !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-44ac477 img {
    display: block !important;
    height: auto !important;
    margin-inline: auto !important;
    max-width: min(432px, 58vw) !important;
    width: min(432px, 58vw) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8900f6e > .e-con-inner {
    max-width: min(100% - 36px, 620px) !important;
}

/* About page: editorial layout using existing Elementor widgets. */
body.pp-atomic-design.page-id-937 .elementor-937 {
    background: #ffffff;
}

body.pp-atomic-design.page-id-937 .elementor-937 > .e-con-boxed > .e-con-inner {
    max-width: min(100% - 92px, 1140px) !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-92a129b {
    padding-top: clamp(58px, 6vw, 92px) !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-92a129b > .e-con-inner {
    align-items: start !important;
    display: grid !important;
    gap: clamp(42px, 5vw, 64px) !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.02fr) !important;
    padding: 0 !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-92a129b > .e-con-inner > .e-con {
    --content-width: 100%;
    --width: 100%;
    margin: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-8e5f3cf,
body.pp-atomic-design.page-id-937 .elementor-element-8e5f3cf .elementor-widget-container {
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-8e5f3cf img {
    aspect-ratio: 3 / 4;
    display: block;
    height: auto !important;
    object-fit: cover;
    object-position: center center;
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-0a5df77 > .e-con-inner {
    align-items: start !important;
    gap: 22px !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-d6b6194 .elementor-heading-title {
    color: #d93442 !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(26px, 2.8vw, 34px) !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.15 !important;
    text-transform: none !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-3deccb5,
body.pp-atomic-design.page-id-937 .elementor-element-3deccb5 p {
    color: #9ca2a8 !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.58 !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-3deccb5 p {
    margin: 0 0 18px !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-3deccb5 a {
    color: #d93442 !important;
    text-decoration: none !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba {
    margin-top: 12px !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba p {
    margin: 0 !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote {
    border: 0 !important;
    color: #9a9fa4 !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(18px, 1.8vw, 23px) !important;
    font-style: normal !important;
    font-weight: 800 !important;
    line-height: 1.38 !important;
    margin: 0 !important;
    padding: 34px 0 0 !important;
    position: relative;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::before,
body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::after {
    color: #ef4056;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 58px;
    font-weight: 800;
    line-height: 0;
    position: relative;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::before {
    content: "“";
    display: block;
    margin-bottom: 14px;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::after {
    bottom: -12px;
    content: "”";
    margin-left: 10px;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote footer {
    color: #ef4056 !important;
    display: block;
    font-family: var(--pp-font-sans) !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 800 !important;
    letter-spacing: 0.36em !important;
    line-height: 1.4 !important;
    margin-top: 18px !important;
    text-transform: none !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote {
    padding: 48px 58px 0 0 !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::before,
body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::after {
    margin: 0 !important;
    pointer-events: none;
    position: absolute;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::before {
    content: "\201C";
    left: 0;
    top: 24px;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote::after {
    bottom: 40px;
    content: "\201D";
    right: 0;
}

body.pp-atomic-design.page-id-937 .elementor-element-ac80dba blockquote footer {
    margin-top: 24px !important;
    position: relative;
    z-index: 1;
}

body.pp-atomic-design.page-id-937 .elementor-element-fcbd55b {
    padding-top: clamp(56px, 6vw, 82px) !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-fcbd55b > .e-con-inner {
    max-width: min(100% - 92px, 770px) !important;
    padding: 0 !important;
}

body.pp-atomic-design.page-id-937 .elementor-937 .elementor-element-fcbd55b.e-con-boxed > .e-con-inner {
    max-width: min(100% - 92px, 770px) !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-0a009a6,
body.pp-atomic-design.page-id-937 .elementor-element-0a009a6 .elementor-widget-container,
body.pp-atomic-design.page-id-937 .elementor-element-0a009a6 .elementor-wrapper {
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-0a009a6 .elementor-wrapper {
    aspect-ratio: 16 / 9;
    margin-inline: auto !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-8744110 {
    padding-top: clamp(56px, 6vw, 78px) !important;
    padding-bottom: clamp(64px, 7vw, 100px) !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-8744110 > .e-con-inner {
    max-width: min(100% - 92px, 1140px) !important;
    padding: 0 !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-bcc372b,
body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .elementor-image-gallery {
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery {
    display: grid !important;
    gap: clamp(16px, 2vw, 22px) !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    margin: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery br {
    display: none !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery-item {
    float: none !important;
    margin: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery-icon,
body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery-icon a {
    aspect-ratio: 1.33 / 1 !important;
    display: block !important;
    height: 100% !important;
    overflow: hidden !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-bcc372b img {
    aspect-ratio: 1.33 / 1 !important;
    border: 0 !important;
    display: block !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery-caption {
    display: none !important;
}

@media (max-width: 991.98px) {
    body.pp-atomic-design.page-id-937 .elementor-937 > .e-con-boxed > .e-con-inner,
    body.pp-atomic-design.page-id-937 .elementor-element-fcbd55b > .e-con-inner,
    body.pp-atomic-design.page-id-937 .elementor-element-8744110 > .e-con-inner {
        max-width: min(100% - 44px, 760px) !important;
    }

    body.pp-atomic-design.page-id-937 .elementor-element-92a129b > .e-con-inner {
        grid-template-columns: 1fr !important;
    }

    body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    body.pp-atomic-design.page-id-937 .elementor-937 > .e-con-boxed > .e-con-inner,
    body.pp-atomic-design.page-id-937 .elementor-element-fcbd55b > .e-con-inner,
    body.pp-atomic-design.page-id-937 .elementor-element-8744110 > .e-con-inner {
        max-width: min(100% - 28px, 520px) !important;
    }

    body.pp-atomic-design.page-id-937 .elementor-element-bcc372b .gallery {
        grid-template-columns: 1fr !important;
    }
}

body.pp-atomic-design.page-id-22676 .elementor-element-8900f6e .elementor-heading-title,
body.pp-atomic-design.page-id-22676 .elementor-element-a59c8bf .elementor-heading-title {
    color: var(--pp-color-ink) !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(22px, 2vw, 30px) !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    text-align: center !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8900f6e .elementor-widget-text-editor,
body.pp-atomic-design.page-id-22676 .elementor-element-8900f6e .elementor-widget-text-editor p {
    color: var(--pp-color-muted) !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 13px !important;
    line-height: 1.7 !important;
    text-align: center !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-7842c74 {
    padding-bottom: clamp(52px, 6vw, 92px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-7842c74 > .e-con-inner {
    gap: clamp(26px, 3vw, 42px) !important;
    max-width: min(100% - 36px, 1140px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 {
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 > .e-con-inner {
    align-items: start !important;
    display: grid !important;
    gap: clamp(30px, 4vw, 52px) clamp(24px, 3vw, 44px) !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    max-width: 100% !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 > .e-con-inner > .e-con {
    --content-width: 100%;
    --width: 100%;
    margin: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 > .e-con-inner > .e-con > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    max-width: 100% !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 .elementor-widget-image,
body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 .elementor-widget-heading,
body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 .elementor-widget-button {
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 .elementor-widget-image img {
    aspect-ratio: 1 / 1;
    display: block;
    height: auto !important;
    object-fit: cover;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 .elementor-heading-title {
    color: var(--pp-color-muted) !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    text-align: center !important;
    text-transform: none !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 .elementor-button {
    background: #292929 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #ffffff !important;
    display: flex !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    justify-content: center !important;
    letter-spacing: 0.12em !important;
    line-height: 1 !important;
    min-height: 28px !important;
    padding: 9px 12px !important;
    text-transform: none !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-f6cded7 {
    align-self: start !important;
    padding-top: 18px !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-f6cded7 > .e-con-inner {
    justify-content: start !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-6bf48df {
    margin-top: 2px !important;
    text-align: center !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-6bf48df .elementor-button {
    background: #f3f3f3 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--pp-color-ink) !important;
    display: inline-flex !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    min-height: 30px !important;
    padding: 10px 18px !important;
    text-transform: none !important;
    width: auto !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-db2969f > .e-con-inner {
    max-width: min(100% - 36px, 340px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-db2969f .gallery {
    display: flex !important;
    gap: 18px;
    justify-content: center;
}

body.pp-atomic-design.page-id-22676 .elementor-element-db2969f .gallery-item {
    float: none !important;
    margin: 0 !important;
    width: auto !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-db2969f .gallery-icon {
    height: auto !important;
    width: auto !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-db2969f img {
    height: 48px !important;
    object-fit: contain !important;
    width: 48px !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-813df48 .elementor-heading-title,
body.pp-atomic-design.page-id-22676 .elementor-element-173b381 .elementor-heading-title,
body.pp-atomic-design.page-id-22676 .elementor-element-3253667 .elementor-heading-title,
body.pp-atomic-design.page-id-22676 .elementor-element-68adf26 .elementor-heading-title {
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(22px, 2vw, 30px) !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-813df48 .elementor-widget-text-editor,
body.pp-atomic-design.page-id-22676 .elementor-element-173b381 .elementor-widget-text-editor,
body.pp-atomic-design.page-id-22676 .elementor-element-3253667 .elementor-widget-text-editor,
body.pp-atomic-design.page-id-22676 .elementor-element-68adf26 .elementor-widget-text-editor {
    color: var(--pp-color-muted) !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-813df48 img,
body.pp-atomic-design.page-id-22676 .elementor-element-173b381 img,
body.pp-atomic-design.page-id-22676 .elementor-element-3253667 img,
body.pp-atomic-design.page-id-22676 .elementor-element-68adf26 img {
    aspect-ratio: 1.5 / 1;
    object-fit: cover;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-625da5b {
    background: #f7657f !important;
    margin-inline: calc(50% - 50vw) !important;
    max-width: 100vw !important;
    padding-block: clamp(92px, 10vw, 170px) clamp(92px, 9vw, 150px) !important;
    width: 100vw !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-625da5b > .e-con-inner {
    align-items: center !important;
    gap: 24px !important;
    max-width: min(100% - 48px, 1080px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-22676 .elementor-element-625da5b.e-con-boxed > .e-con-inner {
    max-width: min(100% - 48px, 1080px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-625da5b .elementor-heading-title {
    color: #ffffff !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(34px, 4vw, 48px) !important;
    font-weight: 800 !important;
    line-height: 1.12 !important;
    text-align: center !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-625da5b .elementor-widget-text-editor,
body.pp-atomic-design.page-id-22676 .elementor-element-625da5b .elementor-widget-text-editor p {
    color: #ffffff !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(16px, 1.5vw, 20px) !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
    margin: 0 !important;
    text-align: center !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 {
    margin-top: 14px !important;
    max-width: 1070px !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-form-fields-wrapper {
    align-items: center !important;
    display: grid !important;
    gap: 30px 30px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-field-group {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-field-label {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-field {
    background: #f8f9fc !important;
    border: 1px solid #e1e4eb !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    color: var(--pp-color-ink) !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 18px !important;
    height: 54px !important;
    line-height: 54px !important;
    padding: 0 18px !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-field::placeholder {
    color: #aeb3bb !important;
    opacity: 1 !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .e-form__buttons {
    display: flex !important;
    grid-column: 1 / -1 !important;
    justify-content: center !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-button {
    align-items: center !important;
    background: #000000 !important;
    border: 1px solid #000000 !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    display: inline-flex !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    justify-content: center !important;
    letter-spacing: 0 !important;
    min-height: 54px !important;
    min-width: 235px !important;
    padding: 0 34px !important;
    text-transform: none !important;
    width: auto !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-button:hover,
body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-button:focus {
    background: #ffffff !important;
    color: #000000 !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-499b3f7 {
    --content-width: min(100% - 56px, 1620px);
    margin-inline: calc(50% - 50vw) !important;
    max-width: 100vw !important;
    padding-block: clamp(86px, 8vw, 122px) clamp(48px, 5vw, 72px) !important;
    width: 100vw !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-499b3f7 > .e-con-inner {
    width: 100% !important;
    max-width: min(100% - 56px, 1620px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-22676 .elementor-element-499b3f7.e-con-boxed > .e-con-inner {
    max-width: min(100% - 56px, 1620px) !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4,
body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .elementor-image-gallery {
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .gallery {
    display: grid !important;
    gap: clamp(22px, 2.2vw, 34px) !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    margin: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .gallery br {
    display: none !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .gallery-item {
    float: none !important;
    margin: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .gallery-icon,
body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .gallery-icon a {
    aspect-ratio: 1.25 / 1 !important;
    display: block !important;
    height: 100% !important;
    overflow: hidden !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 img {
    aspect-ratio: 1.25 / 1 !important;
    border: 0 !important;
    display: block !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    width: 100% !important;
}

@media (max-width: 991.98px) {
    body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 > .e-con-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-form-fields-wrapper,
    body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    body.pp-atomic-design.page-id-22676 .elementor-element-5c10957 > .e-con-inner {
        grid-template-columns: 1fr !important;
    }

    body.pp-atomic-design.page-id-22676 .elementor-element-625da5b {
        padding-block: 72px !important;
    }

    body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-form-fields-wrapper,
    body.pp-atomic-design.page-id-22676 .elementor-element-cbdeee4 .gallery {
        grid-template-columns: 1fr !important;
    }

    body.pp-atomic-design.page-id-22676 .elementor-element-13b7cc7 .elementor-button {
        width: 100% !important;
    }
}

body.pp-atomic-design .woocommerce ul.products li.product {
    background: transparent;
    box-shadow: none;
    margin: 0 !important;
    overflow: visible;
    width: auto !important;
}

body.pp-atomic-design .woocommerce ul.products li.product a img {
    aspect-ratio: 1 / 1.18;
    background: var(--pp-color-surface-warm);
    display: block;
    height: auto;
    margin-bottom: 16px;
    object-fit: cover;
    width: 100%;
}

body.pp-atomic-design .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 13px;
    letter-spacing: 0.08em;
    line-height: 1.35;
    margin: 0 0 8px;
    min-height: 0;
    text-transform: none;
}

body.pp-atomic-design .woocommerce ul.products li.product .price,
body.pp-atomic-design .woocommerce div.product p.price,
body.pp-atomic-design .woocommerce div.product span.price {
    color: var(--pp-color-ink);
    font-family: var(--pp-font-sans);
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

body.pp-atomic-design .woocommerce .star-rating,
body.pp-atomic-design .woocommerce .star-rating span {
    color: var(--pp-color-ink);
}

body.pp-atomic-design.single-product div.product {
    color: var(--pp-color-text);
}

body.pp-atomic-design.single-product div.product .summary {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

body.pp-atomic-design.single-product div.product .product_title {
    font-size: clamp(34px, 4vw, 58px);
    margin-bottom: 2px;
}

body.pp-atomic-design.single-product .woocommerce-product-details__short-description {
    color: var(--pp-color-muted);
    font-size: 16px;
    max-width: 620px;
}

body.pp-atomic-design.single-product form.cart,
body.pp-atomic-design .woocommerce div.product form.cart {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

body.pp-atomic-design .woocommerce .quantity .qty {
    height: 46px;
    min-height: 46px;
    text-align: center;
    width: 74px;
}

body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid var(--pp-color-line);
    display: flex;
    gap: 24px;
    margin-top: 42px;
    padding: 0;
}

body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs li::after {
    display: none;
}

body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent;
    border: 0;
    border-radius: 0;
    margin: 0;
    padding: 0 0 12px;
}

body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: var(--pp-color-muted);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: none;
}

body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-bottom: 2px solid var(--pp-color-ink);
}

body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--pp-color-ink);
}

body.pp-atomic-design .woocommerce-cart table.cart,
body.pp-atomic-design .woocommerce-checkout table.shop_table,
body.pp-atomic-design .woocommerce table.shop_table {
    border: 1px solid var(--pp-color-soft-line);
    border-radius: 0;
}

body.pp-atomic-design .woocommerce table.shop_table th {
    color: var(--pp-color-ink);
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: none;
}

body.pp-atomic-design .woocommerce table.shop_table td,
body.pp-atomic-design .woocommerce table.shop_table th {
    border-top-color: var(--pp-color-soft-line);
    padding: 16px;
}

body.pp-atomic-design .elementor-location-footer,
body.pp-atomic-design footer.footer,
body.pp-atomic-design .form-footer {
    background: #ffffff;
    color: var(--pp-color-ink);
}

body.pp-atomic-design .pp-o-footer {
    padding: clamp(72px, 8vw, 102px) 42px clamp(52px, 6vw, 78px) !important;
    background-color: var(--pp-color-surface-soft) !important; /* gris muy suave */
}

body.pp-atomic-design .pp-o-footer > .elementor-container {
    display: grid;
    gap: clamp(32px, 4vw, 72px);
    grid-template-columns: minmax(160px, 0.8fr) minmax(210px, 1fr) minmax(330px, 1.45fr) minmax(360px, 1.35fr);
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1760px !important;
    width: 100% !important;
    align-items: start;
}

body.pp-atomic-design .pp-o-footer > .elementor-container > .elementor-column {
    --width: 100%;
    display: flex !important;
    flex: 1 1 0 !important;
    flex-basis: 0 !important;
    inline-size: auto !important;
    max-width: none !important;
    min-width: 0;
    justify-self: stretch;
    width: auto !important;
}

body.pp-atomic-design .pp-o-footer__brand {
    flex-grow: 0.9 !important;
}

body.pp-atomic-design .pp-o-footer__contact {
    flex-grow: 1 !important;
}

body.pp-atomic-design .pp-o-footer__stores {
    flex-grow: 1.45 !important;
}

body.pp-atomic-design .pp-o-footer__newsletter {
    flex-grow: 1.2 !important;
}

body.pp-atomic-design .pp-o-footer > .elementor-container > .elementor-column > .elementor-widget-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design .pp-o-footer .elementor-widget-container {
    overflow-wrap: anywhere;
}

body.pp-atomic-design .pp-o-footer .elementor-widget-text-editor,
body.pp-atomic-design .pp-o-footer .elementor-icon-list-text,
body.pp-atomic-design .pp-o-footer .elementor-field,
body.pp-atomic-design .pp-o-footer p {
    font-size: 16px;
    line-height: 1.55;
}

body.pp-atomic-design .pp-o-footer .elementor-icon-list-items,
body.pp-atomic-design .pp-o-footer ul {
    padding-left: 0;
}

body.pp-atomic-design .pp-o-footer .elementor-icon-list-item {
    align-items: flex-start;
}

body.pp-atomic-design .pp-m-newsletter .elementor-form-fields-wrapper {
    display: grid;
    gap: 18px 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.pp-atomic-design .pp-m-newsletter .elementor-field-group {
    display: block !important;
    margin: 0;
    padding: 0 !important;
    width: auto !important;
}

body.pp-atomic-design .pp-m-newsletter .elementor-field-label {
    display: block;
    margin: 0 0 8px;
    width: 100%;
}

body.pp-atomic-design .pp-m-newsletter .elementor-field {
    display: block;
    min-width: 0;
    width: 100%;
}

body.pp-atomic-design .pp-m-newsletter .elementor-field-type-email,
body.pp-atomic-design .pp-m-newsletter .e-form__buttons {
    grid-column: 1 / -1;
}

body.pp-atomic-design .pp-m-newsletter .e-form__buttons {
    display: flex !important;
    justify-content: flex-start;
}

body.pp-atomic-design .pp-m-newsletter .elementor-button {
    width: auto;
}

body.pp-atomic-design .elementor-location-footer h2,
body.pp-atomic-design .elementor-location-footer h3,
body.pp-atomic-design .elementor-location-footer h4,
body.pp-atomic-design footer.footer h2,
body.pp-atomic-design footer.footer h3,
body.pp-atomic-design footer.footer h4 {
    font-family: var(--pp-font-serif);
    letter-spacing: 0;
}

body.pp-atomic-design .elementor-location-footer a,
body.pp-atomic-design footer.footer a,
body.pp-atomic-design .form-footer a {
    color: var(--pp-color-ink);
}

body.pp-atomic-design .elementor-location-footer a:hover,
body.pp-atomic-design footer.footer a:hover,
body.pp-atomic-design .form-footer a:hover {
    color: var(--pp-color-accent);
}

body.pp-atomic-design .wpforms-container input,
body.pp-atomic-design .wpforms-container select,
body.pp-atomic-design .wpforms-container textarea {
    max-width: 100%;
}

@media (max-width: 1199.98px) and (min-width: 768px) {
    body.pp-atomic-design .pp-o-footer > .elementor-container {
        display: flex;
        flex-wrap: wrap;
        gap: 44px 56px;
    }

    body.pp-atomic-design .pp-o-footer > .elementor-container > .elementor-column {
        flex: 1 1 calc(50% - 28px) !important;
        max-width: calc(50% - 28px) !important;
    }

    body.pp-atomic-design .pp-o-footer .elementor-heading-title {
        font-size: clamp(26px, 3.1vw, 34px);
    }

    body.pp-atomic-design .pp-o-footer .elementor-widget-text-editor,
    body.pp-atomic-design .pp-o-footer .elementor-icon-list-text,
    body.pp-atomic-design .pp-o-footer .elementor-field,
    body.pp-atomic-design .pp-o-footer p {
        font-size: 15px;
        line-height: 1.45;
    }
}

body.pp-atomic-design.woocommerce div.product p.price,
body.pp-atomic-design.woocommerce div.product span.price {
    color: var(--pp-color-ink);
    font-family: var(--pp-font-sans);
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

body.pp-atomic-design.woocommerce .button.alt,
body.pp-atomic-design.woocommerce .checkout-button,
body.pp-atomic-design.woocommerce #place_order,
body.pp-atomic-design.woocommerce .single_add_to_cart_button,
body.pp-atomic-design.woocommerce-page .button.alt,
body.pp-atomic-design.woocommerce-page .checkout-button,
body.pp-atomic-design.woocommerce-page #place_order,
body.pp-atomic-design.woocommerce-page .single_add_to_cart_button {
    --bs-btn-bg: var(--pp-color-ink);
    --bs-btn-border-color: var(--pp-color-ink);
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #ffffff;
    --bs-btn-hover-border-color: var(--pp-color-ink);
    --bs-btn-hover-color: var(--pp-color-ink);
    background: var(--pp-color-ink);
    background-color: var(--pp-color-ink);
    border-color: var(--pp-color-ink);
    color: #ffffff;
}

body.pp-atomic-design.woocommerce .button.alt:hover,
body.pp-atomic-design.woocommerce .checkout-button:hover,
body.pp-atomic-design.woocommerce #place_order:hover,
body.pp-atomic-design.woocommerce .single_add_to_cart_button:hover,
body.pp-atomic-design.woocommerce-page .button.alt:hover,
body.pp-atomic-design.woocommerce-page .checkout-button:hover,
body.pp-atomic-design.woocommerce-page #place_order:hover,
body.pp-atomic-design.woocommerce-page .single_add_to_cart_button:hover {
    background: #ffffff;
    background-color: #ffffff;
    color: var(--pp-color-ink);
}

body.pp-atomic-design.woocommerce form.cart,
body.pp-atomic-design.woocommerce div.product form.cart {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

body.pp-atomic-design.woocommerce .quantity .qty,
body.pp-atomic-design.woocommerce-page .quantity .qty {
    height: 46px;
    min-height: 46px;
    text-align: center;
    width: 74px;
}

body.pp-atomic-design.woocommerce div.product form.cart .quantity,
body.pp-atomic-design.woocommerce-page div.product form.cart .quantity {
    display: inline-flex;
    width: auto;
}

body.pp-atomic-design.woocommerce div.product form.cart .btn-group-input-number,
body.pp-atomic-design.woocommerce-page div.product form.cart .btn-group-input-number {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    gap: 8px;
    overflow: visible;
}

body.pp-atomic-design.woocommerce div.product form.cart .btn-group-input-number .btn-input-number,
body.pp-atomic-design.woocommerce-page div.product form.cart .btn-group-input-number .btn-input-number {
    align-items: center;
    background: #ffffff;
    border: 1px solid var(--pp-color-ink) !important;
    border-radius: 999px !important;
    color: var(--pp-color-ink);
    display: inline-flex;
    height: 44px;
    justify-content: center;
    min-height: 44px;
    min-width: 44px;
    padding: 0;
    transition: background var(--pp-transition), color var(--pp-transition), border-color var(--pp-transition);
    width: 44px;
}

body.pp-atomic-design.woocommerce div.product form.cart .btn-group-input-number .btn-input-number:hover,
body.pp-atomic-design.woocommerce-page div.product form.cart .btn-group-input-number .btn-input-number:hover,
body.pp-atomic-design.woocommerce div.product form.cart .btn-group-input-number .btn-input-number:focus,
body.pp-atomic-design.woocommerce-page div.product form.cart .btn-group-input-number .btn-input-number:focus {
    background: var(--pp-color-ink);
    color: #ffffff;
}

body.pp-atomic-design.woocommerce div.product form.cart .btn-group-input-number .qty,
body.pp-atomic-design.woocommerce-page div.product form.cart .btn-group-input-number .qty {
    -moz-appearance: textfield;
    background: #ffffff;
    border: 1px solid var(--pp-color-ink) !important;
    border-radius: 999px !important;
    color: var(--pp-color-ink);
    font-size: 16px;
    height: 44px;
    line-height: 44px;
    margin: 0;
    min-height: 44px;
    padding: 0 12px;
    text-align: center;
    width: 58px;
}

body.pp-atomic-design.woocommerce div.product form.cart .btn-group-input-number .qty::-webkit-outer-spin-button,
body.pp-atomic-design.woocommerce-page div.product form.cart .btn-group-input-number .qty::-webkit-outer-spin-button,
body.pp-atomic-design.woocommerce div.product form.cart .btn-group-input-number .qty::-webkit-inner-spin-button,
body.pp-atomic-design.woocommerce-page div.product form.cart .btn-group-input-number .qty::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid var(--pp-color-line);
    display: flex;
    gap: 24px;
    margin-top: 42px;
    padding: 0;
}

body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
    display: none;
}

body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent;
    border: 0;
    border-radius: 0;
    margin: 0;
    padding: 0 0 12px;
}

body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: var(--pp-color-muted);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: none;
}

body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-bottom: 2px solid var(--pp-color-ink);
}

body.pp-atomic-design.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--pp-color-ink);
}

body.pp-atomic-design.woocommerce button.single_add_to_cart_button.alt,
body.pp-atomic-design.woocommerce-page button.single_add_to_cart_button.alt,
body.pp-atomic-design.woocommerce a.checkout-button,
body.pp-atomic-design.woocommerce-page a.checkout-button,
body.pp-atomic-design.woocommerce button#place_order,
body.pp-atomic-design.woocommerce-page button#place_order {
    --bs-btn-bg: var(--pp-color-ink);
    --bs-btn-border-color: var(--pp-color-ink);
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #ffffff;
    --bs-btn-hover-border-color: var(--pp-color-ink);
    --bs-btn-hover-color: var(--pp-color-ink);
    background: var(--pp-color-ink);
    background-color: var(--pp-color-ink);
    border-color: var(--pp-color-ink);
    color: #ffffff;
}

body.pp-atomic-design.woocommerce button.single_add_to_cart_button.alt:hover,
body.pp-atomic-design.woocommerce-page button.single_add_to_cart_button.alt:hover,
body.pp-atomic-design.woocommerce a.checkout-button:hover,
body.pp-atomic-design.woocommerce-page a.checkout-button:hover,
body.pp-atomic-design.woocommerce button#place_order:hover,
body.pp-atomic-design.woocommerce-page button#place_order:hover {
    background: #ffffff;
    background-color: #ffffff;
    border-color: var(--pp-color-ink);
    color: var(--pp-color-ink);
}

body.pp-atomic-design .pp-u-container {
    margin-inline: auto;
    max-width: var(--pp-container);
}

body.pp-atomic-design .pp-u-section {
    padding-block: clamp(56px, 7vw, 116px);
}

body.pp-atomic-design .pp-u-muted {
    color: var(--pp-color-muted);
}

@media (max-width: 767.98px) {
    :root {
        --pp-container: min(100% - 28px, 1440px);
    }

    body.pp-atomic-design {
        overflow-x: hidden;
    }

    body.pp-atomic-design .woocommerce-message,
    body.pp-atomic-design .woocommerce-info,
    body.pp-atomic-design .woocommerce-error {
        padding-left: 54px;
    }

    body.pp-atomic-design .pp-o-footer > .elementor-container {
        display: grid !important;
        gap: 36px;
        grid-template-columns: 1fr !important;
        max-width: 100% !important;
    }

    body.pp-atomic-design .pp-o-footer > .elementor-container > .elementor-column {
        flex: 1 1 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    body.pp-atomic-design .pp-m-newsletter .elementor-form-fields-wrapper {
        grid-template-columns: 1fr;
    }

    body.pp-atomic-design .pp-o-footer .elementor-widget,
    body.pp-atomic-design .pp-o-footer .elementor-widget-wrap,
    body.pp-atomic-design .pp-o-footer .elementor-widget-container,
    body.pp-atomic-design .pp-o-footer .elementor-form {
        max-width: 100% !important;
        width: 100% !important;
    }

    body.pp-atomic-design .elementor-widget-button .elementor-button,
    body.pp-atomic-design a.elementor-button,
    body.pp-atomic-design .button,
    body.pp-atomic-design button:not(.navbar-toggler):not(.mfp-close),
    body.pp-atomic-design input[type="submit"],
    body.pp-atomic-design .woocommerce a.button,
    body.pp-atomic-design .woocommerce button.button,
    body.pp-atomic-design .woocommerce input.button,
    body.pp-atomic-design .woocommerce #respond input#submit {
        min-height: 40px;
        padding: 12px 18px;
    }

    body.pp-atomic-design.single-product div.product .product_title {
        font-size: 32px;
    }

    body.pp-atomic-design .woocommerce div.product .woocommerce-tabs ul.tabs {
        flex-wrap: wrap;
        gap: 16px;
    }
}

body.pp-atomic-design.home .menu-categorias-productos {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: clamp(24px, 5vw, 72px);
    justify-content: center;
}

body.pp-atomic-design.home .menu-categorias-productos .cat-producto {
    align-items: center;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--pp-color-ink) !important;
    cursor: pointer;
    display: inline-flex;
    font-size: 13px;
    font-weight: 700;
    justify-content: center;
    letter-spacing: 0.12em;
    line-height: 1.2;
    min-height: 0 !important;
    padding: 0 0 9px !important;
    text-transform: none;
    width: auto;
}

body.pp-atomic-design.home .menu-categorias-productos .cat-producto:hover,
body.pp-atomic-design.home .menu-categorias-productos .cat-producto:focus {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: var(--pp-color-ink) !important;
}

body.pp-atomic-design.home .menu-categorias-productos .cat-producto.activo,
body.pp-atomic-design.home .menu-categorias-productos .cat-producto[aria-selected="true"] {
    border-bottom-color: var(--pp-color-ink) !important;
}

body.pp-atomic-design:not(.home) .navbar#js-header.pp-o-nav,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header.pp-o-nav,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar#js-header.pp-o-nav,
body.pp-atomic-design:not(.home) .navbar.navbar--sticky.sticky-top#js-header.pp-o-nav,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar.navbar--sticky.sticky-top#js-header.pp-o-nav,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar.navbar--sticky.sticky-top#js-header.pp-o-nav {
    background: #ffffff !important;
    background-image: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-bottom: 1px solid rgba(8, 8, 8, 0.08) !important;
    box-shadow: 0 14px 34px rgba(8, 8, 8, 0.08) !important;
    padding-inline: 0 !important;
}

body.pp-atomic-design:not(.home) .navbar#js-header.pp-o-nav > .container-custom,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar#js-header.pp-o-nav > .container-custom,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar#js-header.pp-o-nav > .container-custom,
body.pp-atomic-design:not(.home) .navbar.navbar--sticky.sticky-top#js-header.pp-o-nav > .container-custom,
body.pp-atomic-design:not(.home):not(.page-id-25128) .navbar.navbar--sticky.sticky-top#js-header.pp-o-nav > .container-custom,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar.navbar--sticky.sticky-top#js-header.pp-o-nav > .container-custom {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    max-width: none !important;
    padding-inline: clamp(24px, 4vw, 78px) !important;
    width: 100% !important;
}

body.pp-atomic-design:not(.home) .navbar#js-header.pp-o-nav > .container-custom::before,
body.pp-atomic-design:not(.home) .navbar#js-header.pp-o-nav > .container-custom::after,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar#js-header.pp-o-nav > .container-custom::before,
body.pp-atomic-design.pp-no-hero-banner:not(.home) .navbar#js-header.pp-o-nav > .container-custom::after {
    background: none !important;
    content: none !important;
    display: none !important;
    opacity: 0 !important;
}

body.pp-atomic-design .elementor-widget-button .elementor-button:not(.cat-producto):not(.btn-input-number),
body.pp-atomic-design a.elementor-button:not(.cat-producto):not(.btn-input-number),
body.pp-atomic-design .button:not(.cat-producto):not(.btn-input-number),
body.pp-atomic-design button:not(.navbar-toggler):not(.mfp-close):not(.cat-producto):not(.btn-input-number),
body.pp-atomic-design input[type="submit"],
body.pp-atomic-design .woocommerce a.button:not(.cat-producto):not(.btn-input-number),
body.pp-atomic-design .woocommerce button.button:not(.cat-producto):not(.btn-input-number),
body.pp-atomic-design .woocommerce input.button,
body.pp-atomic-design .woocommerce #respond input#submit {
    align-items: center !important;
    border-radius: var(--pp-radius-xs) !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    gap: 8px !important;
    height: auto !important;
    justify-content: center !important;
    letter-spacing: 0.08em !important;
    line-height: 1 !important;
    min-height: 42px !important;
    padding: 13px 22px !important;
    text-decoration: none !important;
    text-transform: none !important;
}

body.pp-atomic-design .elementor-widget-button .elementor-button:not(.cat-producto):not(.btn-input-number):hover,
body.pp-atomic-design a.elementor-button:not(.cat-producto):not(.btn-input-number):hover,
body.pp-atomic-design .button:not(.cat-producto):not(.btn-input-number):hover,
body.pp-atomic-design button:not(.navbar-toggler):not(.mfp-close):not(.cat-producto):not(.btn-input-number):hover,
body.pp-atomic-design input[type="submit"]:hover,
body.pp-atomic-design .woocommerce a.button:not(.cat-producto):not(.btn-input-number):hover,
body.pp-atomic-design .woocommerce button.button:not(.cat-producto):not(.btn-input-number):hover,
body.pp-atomic-design .woocommerce input.button:hover,
body.pp-atomic-design .woocommerce #respond input#submit:hover {
    text-decoration: none !important;
}

body.pp-atomic-design button[type="submit"]:not(.navbar-toggler):not(.mfp-close):not(.cat-producto):not(.btn-input-number),
body.pp-atomic-design input[type="submit"],
body.pp-atomic-design .woocommerce a.button.alt,
body.pp-atomic-design .woocommerce button.button.alt,
body.pp-atomic-design .woocommerce input.button.alt,
body.pp-atomic-design .woocommerce #place_order,
body.pp-atomic-design .woocommerce .checkout-button,
body.pp-atomic-design .woocommerce .single_add_to_cart_button {
    background: var(--pp-color-ink) !important;
    background-color: var(--pp-color-ink) !important;
    border: 1px solid var(--pp-color-ink) !important;
    color: #ffffff !important;
}

/* =========================================================================
   Componente: Product Card  (pp-c-product-card)
   Estandariza la tarjeta de producto de WooCommerce al sistema de diseño.
   Alineado a tokens (--pp-*). Convive con el namespace legacy .tarjeta*
   (aditivo); al cargar después del CSS del tema, estas reglas son canónicas.
   ========================================================================= */
body.pp-atomic-design .pp-c-product-card {
    display: flex; /* card llena su celda -> CTAs alineados entre cards de la fila */
    flex-direction: column;
    height: 100%;
    color: var(--pp-color-ink);
    margin-bottom: var(--pp-step-5);
    transition: transform var(--pp-transition), box-shadow var(--pp-transition);
}
body.pp-atomic-design .pp-c-product-card__media {
    position: relative;
    overflow: hidden;
    border-radius: var(--pp-radius-md);
    background: var(--pp-color-surface-warm);
}
body.pp-atomic-design .pp-c-product-card__media img {
    display: block;
    width: 100%;
    height: 400px;
    object-fit: cover;
    transition: transform var(--pp-transition);
}
body.pp-atomic-design .pp-c-product-card__zoom {
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    color: var(--pp-color-surface);
    font-size: 1.25rem;
    background: transparent;
    transition: background var(--pp-transition);
}
body.pp-atomic-design .pp-c-product-card__body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto; /* el cuerpo ocupa el alto restante para alinear el CTA al fondo */
    text-align: center;
    padding: var(--pp-step-4);
    background: var(--pp-color-surface);
    transition: transform var(--pp-transition);
}
body.pp-atomic-design .pp-c-product-card__title,
body.pp-atomic-design .pp-c-product-card__title:link,
body.pp-atomic-design .pp-c-product-card__title:visited,
body.pp-atomic-design .pp-c-product-card__title:hover,
body.pp-atomic-design .pp-c-product-card__title:focus {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.6em !important; /* 2 lineas -> ritmo vertical uniforme entre cards */
    font-family: var(--pp-font-sans);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    /* gana al color de enlace global de Elementor (#6EC1E4) */
    color: var(--pp-color-ink) !important;
    margin-bottom: var(--pp-step-2);
    text-decoration: none;
}
body.pp-atomic-design .pp-c-product-card__price {
    display: block;
    font-size: 1rem;
    font-weight: 600;
    color: var(--pp-color-ink);
    /* gana al legacy .tarjeta__precio{margin-bottom:20px !important} */
    margin-bottom: 0 !important;
}
body.pp-atomic-design .pp-c-product-card__price del {
    color: var(--pp-color-subtle);
    font-weight: 400;
    margin-right: var(--pp-step-1);
}
body.pp-atomic-design .pp-c-product-card__price ins {
    text-decoration: none;
    color: var(--pp-color-accent);
}
/* CTA de la card: negro/blanco -> rojo (accent)/blanco al hover. En punta (radius 0).
   Siempre visible y a lo ancho del cuerpo; margin-top:auto lo alinea al fondo. */
body.pp-atomic-design .pp-c-product-card__action,
body.pp-atomic-design .pp-c-product-card .btn-woocommerce,
body.pp-atomic-design .pp-c-product-card .add_to_cart_btn,
body.pp-atomic-design .pp-c-product-card a.add_to_cart_button,
body.pp-atomic-design .pp-c-product-card .button,
body.pp-atomic-design .pp-c-product-card .add-request-quote-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: auto;
    padding: 12px 22px !important;
    min-height: 42px;
    width: 100%;
    visibility: visible !important;
    border: 1px solid var(--pp-color-ink) !important;
    border-radius: var(--pp-radius-xs) !important;
    background: var(--pp-color-ink) !important;
    background-color: var(--pp-color-ink) !important;
    color: #ffffff !important;
    font-family: var(--pp-font-sans);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: none;
    text-decoration: none;
    transition: background-color var(--pp-transition), border-color var(--pp-transition), color var(--pp-transition);
}
body.pp-atomic-design .pp-c-product-card__action:hover,
body.pp-atomic-design .pp-c-product-card__action:focus,
body.pp-atomic-design .pp-c-product-card .btn-woocommerce:hover,
body.pp-atomic-design .pp-c-product-card .btn-woocommerce:focus,
body.pp-atomic-design .pp-c-product-card .add_to_cart_btn:hover,
body.pp-atomic-design .pp-c-product-card .add_to_cart_btn:focus,
body.pp-atomic-design .pp-c-product-card a.add_to_cart_button:hover,
body.pp-atomic-design .pp-c-product-card .button:hover,
body.pp-atomic-design .pp-c-product-card .add-request-quote-button:hover,
body.pp-atomic-design .pp-c-product-card .add-request-quote-button:focus {
    background: var(--pp-color-accent) !important;
    background-color: var(--pp-color-accent) !important;
    border-color: var(--pp-color-accent) !important;
    color: #ffffff !important;
}
@media (hover: hover) {
    body.pp-atomic-design .pp-c-product-card:hover { box-shadow: var(--pp-shadow-card); }
    body.pp-atomic-design .pp-c-product-card:hover .pp-c-product-card__media img { transform: scale(1.06); }
    body.pp-atomic-design .pp-c-product-card:hover .pp-c-product-card__body { transform: translateY(calc(-1 * var(--pp-step-2))); }
    body.pp-atomic-design .pp-c-product-card:hover .pp-c-product-card__zoom { display: grid; background: rgba(8, 8, 8, 0.45); }
}
@media (prefers-reduced-motion: reduce) {
    body.pp-atomic-design .pp-c-product-card,
    body.pp-atomic-design .pp-c-product-card * { transition: none !important; }
    body.pp-atomic-design .pp-c-product-card:hover .pp-c-product-card__media img,
    body.pp-atomic-design .pp-c-product-card:hover .pp-c-product-card__body { transform: none !important; }
}

/* Aire entre el boton "Cargar mas" y el footer */
body.pp-atomic-design .load-more-container {
    margin-bottom: var(--pp-step-8);
}

/* ============================================================
   Utilidades de columnas para TITULARES (heroes/banners).
   Aplicar en Elementor: widget Encabezado > Avanzado > Clases CSS.
   Ej: pp-cols-6 (titular a 6/12 de ancho). pp-cols-sm-* = movil.
   ============================================================ */
body.pp-atomic-design [class*="pp-cols-"] .elementor-heading-title { display: inline-block; }
body.pp-atomic-design .pp-cols-1 .elementor-heading-title { max-width: calc(100% * 1 / 12); }
body.pp-atomic-design .pp-cols-2 .elementor-heading-title { max-width: calc(100% * 2 / 12); }
body.pp-atomic-design .pp-cols-3 .elementor-heading-title { max-width: calc(100% * 3 / 12); }
body.pp-atomic-design .pp-cols-4 .elementor-heading-title { max-width: calc(100% * 4 / 12); }
body.pp-atomic-design .pp-cols-5 .elementor-heading-title { max-width: calc(100% * 5 / 12); }
body.pp-atomic-design .pp-cols-6 .elementor-heading-title { max-width: calc(100% * 6 / 12); }
body.pp-atomic-design .pp-cols-7 .elementor-heading-title { max-width: calc(100% * 7 / 12); }
body.pp-atomic-design .pp-cols-8 .elementor-heading-title { max-width: calc(100% * 8 / 12); }
body.pp-atomic-design .pp-cols-9 .elementor-heading-title { max-width: calc(100% * 9 / 12); }
body.pp-atomic-design .pp-cols-10 .elementor-heading-title { max-width: calc(100% * 10 / 12); }
body.pp-atomic-design .pp-cols-11 .elementor-heading-title { max-width: calc(100% * 11 / 12); }
body.pp-atomic-design .pp-cols-12 .elementor-heading-title { max-width: calc(100% * 12 / 12); }
@media (max-width: 767px) {
  body.pp-atomic-design .pp-cols-sm-1 .elementor-heading-title { max-width: calc(100% * 1 / 12); }
  body.pp-atomic-design .pp-cols-sm-2 .elementor-heading-title { max-width: calc(100% * 2 / 12); }
  body.pp-atomic-design .pp-cols-sm-3 .elementor-heading-title { max-width: calc(100% * 3 / 12); }
  body.pp-atomic-design .pp-cols-sm-4 .elementor-heading-title { max-width: calc(100% * 4 / 12); }
  body.pp-atomic-design .pp-cols-sm-5 .elementor-heading-title { max-width: calc(100% * 5 / 12); }
  body.pp-atomic-design .pp-cols-sm-6 .elementor-heading-title { max-width: calc(100% * 6 / 12); }
  body.pp-atomic-design .pp-cols-sm-7 .elementor-heading-title { max-width: calc(100% * 7 / 12); }
  body.pp-atomic-design .pp-cols-sm-8 .elementor-heading-title { max-width: calc(100% * 8 / 12); }
  body.pp-atomic-design .pp-cols-sm-9 .elementor-heading-title { max-width: calc(100% * 9 / 12); }
  body.pp-atomic-design .pp-cols-sm-10 .elementor-heading-title { max-width: calc(100% * 10 / 12); }
  body.pp-atomic-design .pp-cols-sm-11 .elementor-heading-title { max-width: calc(100% * 11 / 12); }
  body.pp-atomic-design .pp-cols-sm-12 .elementor-heading-title { max-width: calc(100% * 12 / 12); }
}

/* Columnas tambien en titulares del slider (widget Slides). */
body.pp-atomic-design [class*="pp-cols-"] .elementor-slide-heading { display: inline-block; }
body.pp-atomic-design .pp-cols-1 .elementor-slide-heading { max-width: calc(100% * 1 / 12); }
body.pp-atomic-design .pp-cols-2 .elementor-slide-heading { max-width: calc(100% * 2 / 12); }
body.pp-atomic-design .pp-cols-3 .elementor-slide-heading { max-width: calc(100% * 3 / 12); }
body.pp-atomic-design .pp-cols-4 .elementor-slide-heading { max-width: calc(100% * 4 / 12); }
body.pp-atomic-design .pp-cols-5 .elementor-slide-heading { max-width: calc(100% * 5 / 12); }
body.pp-atomic-design .pp-cols-6 .elementor-slide-heading { max-width: calc(100% * 6 / 12); }
body.pp-atomic-design .pp-cols-7 .elementor-slide-heading { max-width: calc(100% * 7 / 12); }
body.pp-atomic-design .pp-cols-8 .elementor-slide-heading { max-width: calc(100% * 8 / 12); }
body.pp-atomic-design .pp-cols-9 .elementor-slide-heading { max-width: calc(100% * 9 / 12); }
body.pp-atomic-design .pp-cols-10 .elementor-slide-heading { max-width: calc(100% * 10 / 12); }
body.pp-atomic-design .pp-cols-11 .elementor-slide-heading { max-width: calc(100% * 11 / 12); }
body.pp-atomic-design .pp-cols-12 .elementor-slide-heading { max-width: calc(100% * 12 / 12); }
@media (max-width: 767px) {
  body.pp-atomic-design .pp-cols-sm-1 .elementor-slide-heading { max-width: calc(100% * 1 / 12); }
  body.pp-atomic-design .pp-cols-sm-2 .elementor-slide-heading { max-width: calc(100% * 2 / 12); }
  body.pp-atomic-design .pp-cols-sm-3 .elementor-slide-heading { max-width: calc(100% * 3 / 12); }
  body.pp-atomic-design .pp-cols-sm-4 .elementor-slide-heading { max-width: calc(100% * 4 / 12); }
  body.pp-atomic-design .pp-cols-sm-5 .elementor-slide-heading { max-width: calc(100% * 5 / 12); }
  body.pp-atomic-design .pp-cols-sm-6 .elementor-slide-heading { max-width: calc(100% * 6 / 12); }
  body.pp-atomic-design .pp-cols-sm-7 .elementor-slide-heading { max-width: calc(100% * 7 / 12); }
  body.pp-atomic-design .pp-cols-sm-8 .elementor-slide-heading { max-width: calc(100% * 8 / 12); }
  body.pp-atomic-design .pp-cols-sm-9 .elementor-slide-heading { max-width: calc(100% * 9 / 12); }
  body.pp-atomic-design .pp-cols-sm-10 .elementor-slide-heading { max-width: calc(100% * 10 / 12); }
  body.pp-atomic-design .pp-cols-sm-11 .elementor-slide-heading { max-width: calc(100% * 11 / 12); }
  body.pp-atomic-design .pp-cols-sm-12 .elementor-slide-heading { max-width: calc(100% * 12 / 12); }
}

/* ============================================================
   Separacion de cards de producto = inicio (grid uniforme 46px).
   Aplica a tienda/categorias/relacionados (loops del tema), no a
   los widgets de Elementor (.elementor-grid) que ya usan su grid.
   ============================================================ */
body.pp-atomic-design ul.products:not(.elementor-grid) {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 46px;
    margin: 0 0 40px;
}
/* El clearfix ::before/::after se convierte en celda fantasma dentro del grid
   y empuja el primer producto a la columna 2 (descuadra la 1a fila a 3 cards). */
body.pp-atomic-design ul.products:not(.elementor-grid)::before,
body.pp-atomic-design ul.products:not(.elementor-grid)::after {
    display: none !important;
    content: none !important;
}
body.pp-atomic-design ul.products:not(.elementor-grid) > li.product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
}
@media (max-width: 1024px) {
    body.pp-atomic-design ul.products:not(.elementor-grid) { grid-template-columns: repeat(3, 1fr); gap: 32px; }
}
@media (max-width: 767px) {
    body.pp-atomic-design ul.products:not(.elementor-grid) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        max-width: 100%;
    }
}

@media (max-width: 575.98px) {
    body.pp-atomic-design ul.products:not(.elementor-grid) {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    body.pp-atomic-design .pp-c-product-card__media img {
        height: min(78vw, 320px);
        object-fit: contain;
        background: #ffffff;
    }
}

/* Hero Regalos Corporativos (ec759ff): texto blanco (contraste) + boton = inicio */
body.pp-atomic-design .elementor-element-ec759ff .elementor-widget-text-editor,
body.pp-atomic-design .elementor-element-ec759ff .elementor-widget-text-editor p,
body.pp-atomic-design .elementor-element-ec759ff .elementor-widget-text-editor a {
    color: #ffffff !important;
}
body.pp-atomic-design .elementor-element-ec759ff .elementor-button {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    text-transform: none !important;
    font-weight: 500 !important;
    letter-spacing: 1.8px !important;
    padding: 12px 24px !important;
}
body.pp-atomic-design .elementor-element-ec759ff .elementor-button:hover {
    background: #080808 !important;
    background-color: #080808 !important;
    color: #ffffff !important;
}

/* Mega menu Colecciones (Elementor) — igual que Tienda + imagen destacada */
body.pp-atomic-design .megamenu .elementor { padding: 0 !important; }
body.pp-atomic-design .megamenu .pp-mm-coltitle .elementor-heading-title {
    font-family: var(--pp-font-sans) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 1.44px !important;
    text-transform: none !important;
    color: rgba(8, 8, 8, 0.56) !important;
    margin: 0 0 14px !important;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--pp-color-soft-line);
}
/* Columnas: lista 60% (izq) + card destacada 40% (der), como referencia Tienda */
body.pp-atomic-design .megamenu .elementor-element-ppmmc110 { flex: 1 1 auto !important; }
body.pp-atomic-design .megamenu .elementor-element-ppmmc120 {
    flex: 0 0 40% !important;
    max-width: 40% !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    gap: 0 !important;
}
/* Centrar todos los widgets de la card (imagen, título, botón) en su columna */
body.pp-atomic-design .megamenu .elementor-element-ppmmc120 .elementor-widget { width: 100% !important; align-self: stretch !important; }
body.pp-atomic-design .megamenu .elementor-element-ppmmc120 .elementor-heading-title,
body.pp-atomic-design .megamenu .elementor-element-ppmmc120 .elementor-widget-container { text-align: center !important; }
body.pp-atomic-design .megamenu .elementor-element-ppmmc120 .elementor-button-wrapper { text-align: center !important; }

/* Lista con divisores 1px (igual a Tienda): 16px/500, fila con borde inferior */
body.pp-atomic-design .pp-megamenu-list { list-style: none; margin: 0; padding: 0; }
body.pp-atomic-design .pp-megamenu-list li { margin: 0; border-bottom: 1px solid rgba(8, 8, 8, 0.12); }
body.pp-atomic-design .pp-megamenu-list li:last-child { border-bottom: 0; }
body.pp-atomic-design .pp-megamenu-list a {
    display: block;
    padding: 16px 0;
    color: var(--pp-color-ink);
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    transition: color var(--pp-transition);
}
body.pp-atomic-design .pp-megamenu-list a:hover { color: var(--pp-color-accent); }

/* Card destacada: imagen 4:5, centrada dentro de su columna 40% */
body.pp-atomic-design .megamenu .elementor-element-ppmmc120 .elementor-widget { margin: 0 !important; }
body.pp-atomic-design .megamenu .pp-mm-feat { text-align: center; width: 100%; }
body.pp-atomic-design .megamenu .pp-mm-feat img {
    width: 100% !important;
    max-width: 250px !important;
    aspect-ratio: 4 / 5;
    height: auto !important;
    object-fit: cover;
    border-radius: var(--pp-radius-md);
    margin: 0 auto;
    display: block;
}
body.pp-atomic-design .megamenu .pp-mm-feattitle .elementor-heading-title {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--pp-color-ink) !important;
    text-align: center;
    margin: 16px 0 0 !important;
}
body.pp-atomic-design .megamenu .pp-mm-featbtn { text-align: center; width: 100%; margin-top: 14px !important; }
body.pp-atomic-design .megamenu .pp-mm-featbtn .elementor-button {
    background: var(--pp-color-ink) !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 0 !important;
    text-transform: none;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 10px 22px;
}
body.pp-atomic-design .megamenu .pp-mm-featbtn .elementor-button:hover { background: var(--pp-color-accent) !important; }

/* ============================================================
   BANNERS INTERNOS HOMOLOGADOS — altura = hero del home (variable
   --pp-banner-height, default 100vh, editable desde Elementor),
   imagen de referencia cuando falta, titular + miga de pan centrados.
   Cubre: .pp-page-banner (páginas), .banner-simple y
   .banner-simple--categoria (WooCommerce).
   ============================================================ */
body.pp-atomic-design {
    --pp-banner-fallback: url('/wp-content/uploads/2023/01/banner.webp');
    /* Altura de los banners internos = hero del home (Slides "Fit to Screen" = 100vh).
       Editable desde Elementor > Site Settings > Custom CSS sobreescribiendo esta variable,
       p. ej.:  body.pp-atomic-design{ --pp-banner-height: 70vh; }  */
    --pp-banner-height: 100vh;
}
body.pp-atomic-design .pp-page-banner,
body.pp-atomic-design .banner-simple,
body.pp-atomic-design .banner-simple--categoria {
    position: relative;
    min-height: var(--pp-banner-height);
    height: var(--pp-banner-height);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 20px;
    margin: 0 0 40px;
    background-color: var(--pp-color-ink);
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    overflow: hidden;
}
/* Imagen de referencia para banners sin imagen propia */
body.pp-atomic-design .pp-page-banner,
body.pp-atomic-design .banner-simple:not(.banner-simple--categoria) {
    background-image: var(--pp-banner-fallback);
}
/* Overlay para legibilidad del texto sobre la foto */
body.pp-atomic-design .pp-page-banner::before,
body.pp-atomic-design .banner-simple::before,
body.pp-atomic-design .banner-simple--categoria::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(8, 8, 8, 0.28), rgba(8, 8, 8, 0.48));
    z-index: 0;
}
/* Contenido por encima del overlay */
body.pp-atomic-design .pp-page-banner__inner,
body.pp-atomic-design .banner-simple > .container,
body.pp-atomic-design .banner-simple--categoria > .container {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: var(--pp-container);
    margin: 0 auto;
    text-align: center;
}
/* Titular blanco serif */
body.pp-atomic-design .pp-page-banner__title,
body.pp-atomic-design .banner-simple__titulo {
    font-family: var(--pp-font-serif) !important;
    color: #ffffff !important;
    font-size: clamp(30px, 4vw, 48px) !important;
    line-height: 1.1 !important;
    margin: 0 0 14px !important;
    text-align: center !important;
}
/* ============================================================
   COMPONENTE ÚNICO DE MIGA DE PAN — pp-c-breadcrumb
   Se usa en TODOS los banners y barras (page-banner, banner WooCommerce,
   crumb-bar de páginas Elementor, blog). Modificador --light para
   colocarlo sobre imagen (texto blanco).
   ============================================================ */
body.pp-atomic-design .pp-c-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    font-size: 14px;
    line-height: 1.4;
    color: var(--pp-color-muted);
}
body.pp-atomic-design .pp-c-breadcrumb__link { color: var(--pp-color-muted); text-decoration: none; }
body.pp-atomic-design .pp-c-breadcrumb__link:hover { color: var(--pp-color-accent); }
body.pp-atomic-design .pp-c-breadcrumb__sep { color: var(--pp-color-muted); }
body.pp-atomic-design .pp-c-breadcrumb__current { color: var(--pp-color-accent); }
/* Variante sobre imagen (banners 400px): blanco */
body.pp-atomic-design .pp-c-breadcrumb--light,
body.pp-atomic-design .pp-c-breadcrumb--light .pp-c-breadcrumb__link,
body.pp-atomic-design .pp-c-breadcrumb--light .pp-c-breadcrumb__sep { color: rgba(255, 255, 255, 0.85); }
body.pp-atomic-design .pp-c-breadcrumb--light .pp-c-breadcrumb__link:hover { color: #ffffff; }
body.pp-atomic-design .pp-c-breadcrumb--light .pp-c-breadcrumb__current { color: #ffffff; }
/* Dentro de un banner 400px se centra junto al titular */
body.pp-atomic-design .pp-page-banner .pp-c-breadcrumb,
body.pp-atomic-design .banner-simple .pp-c-breadcrumb { justify-content: center; }

/* La descripción de categoría dentro del banner también en blanco */
body.pp-atomic-design .banner-simple--categoria .term-description,
body.pp-atomic-design .banner-simple--categoria p { color: rgba(255, 255, 255, 0.9) !important; }

/* Carrusel hero de categoría/tienda (si existiera): cap a 400px */
body.pp-atomic-design #bannerPrincipal .carousel-item img,
body.pp-atomic-design .banner-shop .carousel-item img {
    height: var(--pp-banner-height) !important;
    object-fit: cover;
}

/* Barra contenedora para la miga en páginas Elementor con hero propio
   (Corporativos, Novios). Solo aporta fondo/espaciado; la miga es el
   componente pp-c-breadcrumb. */
body.pp-atomic-design .pp-crumb-bar {
    background: var(--pp-color-surface-warm);
    border-bottom: 1px solid var(--pp-color-soft-line);
    padding: 14px 20px;
}
body.pp-atomic-design .pp-crumb-bar__inner {
    max-width: var(--pp-container);
    margin: 0 auto;
}

/* Creadores: ocultar el H1 duplicado (el banner homologado ya muestra el titular) */
body.pp-atomic-design .elementor-element-fabbd59 { display: none !important; }

/* Hardening visual post-merge: WooCommerce demo notice debe quedar eliminado. */
body.pp-atomic-design.woocommerce-demo-store,
html body.pp-atomic-design.woocommerce-demo-store {
    padding-top: 0 !important;
}

body.pp-atomic-design .woocommerce-store-notice.demo_store,
body.pp-atomic-design p.demo_store,
body.pp-atomic-design .woocommerce-store-notice__dismiss-link {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

/* La home se monta dentro de un wrapper Bootstrap heredado; liberarlo evita el look encapsulado. */
body.pp-atomic-design.home.page-id-25128 > .container.padding-top,
body.pp-atomic-design.home.page-id-25128 > .container.padding-top > .row,
body.pp-atomic-design.home.page-id-25128 > .container.padding-top > .row > .col {
    margin: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.home.page-id-25128 > .container.padding-top {
    padding-top: 0 !important;
}

body.pp-atomic-design.home.page-id-25128 .elementor-25128 > .elementor-element-d9c910f,
body.pp-atomic-design.home.page-id-25128 .elementor-25128 > .elementor-element-d9c910f > .e-con-inner,
body.pp-atomic-design.home.page-id-25128 .elementor-25128 .elementor-element-765141c,
body.pp-atomic-design.home.page-id-25128 .elementor-25128 .elementor-element-765141c .elementor-slides-wrapper {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

/* -----------------------------------------------------------------
   Home · bloque editorial (Canastos / Set de aperitivos / Gourmet)
   "Set de aperitivos" estaba centrado; se homologa a bottom-left como
   Gourmet y Canastos: texto pegado abajo y alineado a la izquierda.
   ----------------------------------------------------------------- */
body.pp-atomic-design .elementor-element-bbf12a4 {
    justify-content: flex-end !important;
}
body.pp-atomic-design .elementor-element-bbf12a4 .elementor-heading-title {
    text-align: left !important;
}

body.pp-atomic-design.home .elementor-25128 .elementor-element-e583b9a {
    height: 100% !important;
    justify-content: flex-end !important;
    min-height: 100% !important;
}

body.pp-atomic-design.home .elementor-25128 .elementor-element-6469972 {
    transform: translateY(2px) !important;
}

/* -----------------------------------------------------------------
   Colecciones 2026 (page-id-22676) · hero: centrar el logo
   "Objetos con alma" (estaba alineado a la derecha del banner).
   ----------------------------------------------------------------- */
body.pp-atomic-design.page-id-22676 .elementor-element-6be6f34 {
    align-self: center !important;
}

/* Categorías Colecciones 2026 en grilla de 3 por fila (estilo Tienda) */
body.pp-atomic-design.page-id-22676 .elementor-element-f81b0df,
body.pp-atomic-design.page-id-22676 .elementor-element-913dee3,
body.pp-atomic-design.page-id-22676 .elementor-element-a9b493d,
body.pp-atomic-design.page-id-22676 .elementor-element-7afb4f2 {
    width: calc(33.333% - 16px) !important;
    max-width: calc(33.333% - 16px) !important;
    flex: 0 0 calc(33.333% - 16px) !important;
}
@media (max-width: 767px) {
    body.pp-atomic-design.page-id-22676 .elementor-element-f81b0df,
    body.pp-atomic-design.page-id-22676 .elementor-element-913dee3,
    body.pp-atomic-design.page-id-22676 .elementor-element-a9b493d,
    body.pp-atomic-design.page-id-22676 .elementor-element-7afb4f2 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
}

/* Collections 2026 category cards: compact editorial grid. */
body.pp-atomic-design.page-id-22676 .elementor-element-03d0659 {
    padding-bottom: clamp(52px, 6vw, 84px) !important;
    padding-top: clamp(50px, 6vw, 72px) !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-03d0659 > .e-con-inner {
    max-width: min(100% - 48px, 1020px) !important;
    padding: 0 !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-46f224b {
    margin-bottom: 30px !important;
    text-align: center !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-46f224b .elementor-heading-title {
    color: #1f1f1f !important;
    font-family: var(--pp-font-sans) !important;
    font-size: clamp(18px, 1.6vw, 22px) !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-46f224b .elementor-heading-title::after {
    background: #1f1f1f;
    content: "";
    display: block;
    height: 2px;
    margin: 12px auto 0;
    width: 38px;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 {
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 > .e-con-inner {
    align-items: start !important;
    display: grid !important;
    gap: 36px 68px !important;
    grid-template-columns: repeat(3, minmax(0, 260px)) !important;
    justify-content: center !important;
    max-width: 100% !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 > .e-con-inner > .e-con,
body.pp-atomic-design.page-id-22676 .elementor-element-f81b0df,
body.pp-atomic-design.page-id-22676 .elementor-element-913dee3,
body.pp-atomic-design.page-id-22676 .elementor-element-a9b493d,
body.pp-atomic-design.page-id-22676 .elementor-element-7afb4f2,
body.pp-atomic-design.page-id-22676 .elementor-element-12a9c54,
body.pp-atomic-design.page-id-22676 .elementor-element-e3114cc {
    --content-width: 100% !important;
    --width: 100% !important;
    align-self: start !important;
    flex: initial !important;
    grid-column: auto !important;
    margin: 0 !important;
    max-width: 260px !important;
    min-height: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 > .e-con-inner > .e-con > .e-con-inner {
    align-items: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    justify-content: flex-start !important;
    max-width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-913dee3 > .e-con-inner {
    padding-top: 18px !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 .elementor-widget-image,
body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 .elementor-widget-heading,
body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 .elementor-widget-button {
    margin: 0 !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 .elementor-widget-image .elementor-widget-container {
    aspect-ratio: 1 / 1;
    overflow: hidden;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 .elementor-widget-image img {
    aspect-ratio: 1 / 1;
    display: block;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    object-position: center center;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 .elementor-heading-title {
    color: #777777 !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    text-align: center !important;
    text-transform: none !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 .elementor-button {
    background: #292929 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #ffffff !important;
    display: flex !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    justify-content: center !important;
    letter-spacing: 0.12em !important;
    line-height: 1 !important;
    min-height: 26px !important;
    padding: 8px 12px !important;
    text-transform: none !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-ef1a1cd {
    margin-top: 10px !important;
    text-align: center !important;
    width: 100% !important;
}

body.pp-atomic-design.page-id-22676 .elementor-element-ef1a1cd .elementor-button {
    background: #f3f3f3 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #303030 !important;
    font-family: var(--pp-font-sans) !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    min-height: 30px !important;
    padding: 10px 18px !important;
    text-transform: none !important;
}

@media (max-width: 900px) {
    body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 > .e-con-inner {
        gap: 32px 36px !important;
        grid-template-columns: repeat(2, minmax(0, 260px)) !important;
    }
}

@media (max-width: 640px) {
    body.pp-atomic-design.page-id-22676 .elementor-element-03d0659 > .e-con-inner {
        max-width: min(100% - 32px, 320px) !important;
    }

    body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 > .e-con-inner {
        grid-template-columns: minmax(0, 300px) !important;
    }

    body.pp-atomic-design.page-id-22676 .elementor-element-8c4b0c4 > .e-con-inner > .e-con,
    body.pp-atomic-design.page-id-22676 .elementor-element-f81b0df,
    body.pp-atomic-design.page-id-22676 .elementor-element-913dee3,
    body.pp-atomic-design.page-id-22676 .elementor-element-a9b493d,
    body.pp-atomic-design.page-id-22676 .elementor-element-7afb4f2,
    body.pp-atomic-design.page-id-22676 .elementor-element-12a9c54,
    body.pp-atomic-design.page-id-22676 .elementor-element-e3114cc {
        max-width: 300px !important;
    }

    body.pp-atomic-design.page-id-22676 .elementor-element-913dee3 > .e-con-inner {
        padding-top: 0 !important;
    }
}
