/* VARS */
:root {
    --font-primary: 'NyghtSerif', Serif;
    --font-secondary: 'Inter', sans-serif;
    --border-radius: 30px;
    --color-primary: #DADE8B;
    --color-secondary: #4F637D;
    --color-green: #ACBD70;
    --color-white: #fff;
    --color-black: #091021;
    --color-light-blue: #BAD4F5;
    --color-light-blue-text: #4F637DB2;
}

/* FONTS */
@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Regular.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-RegularItalic.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-RegularItalic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Light.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-LightItalic.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Medium.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-MediumItalic.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Bold.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-BoldItalic.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-BoldItaXlic.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Dark.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Dark.woff') format('woff');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'NyghtSerif';
    src: url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-DarkItalic.woff2') format('woff2'),
        url('../../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-DarkItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
}

@font-face {
    font-family: "NyghtSerif Regular";
    font-style: normal;
    font-weight: 400;
    src: url("../../../modules/iqitthemeeditor/views/fonts/NyghtSerif-Regular.woff") format("woff");
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-primary);
}

#main-page-content {
    min-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
}

#wrapper {
    flex: 1 !important;
}

#content-wrapper .page-title {
    font-weight: 400;
}

#header nav.header-nav {
    background: none;
    padding-top: 0;
    /* padding-bottom: 0; */
}

/* GENERAL CLASSES */
#product .discount-percentage {
    padding: 10px 20px;
}

.discount-percentage {
    border-radius: var(--border-radius);
    font-size: 14px;
    padding: 4px 10px;
    color: var(--color-secondary);
}

.regular-price {
    color: var(--color-light-blue-text);
    font-size: 16px;
    font-weight: 400;
}

.btn-primary,
.btn-secondary {
    padding: 6px 45px;
    border-radius: var(--border-radius);

}

.pa_custom-italic {
    font-style: italic;
    font-weight: 400;
}

.pa_display-flex {
    display: flex !important;
}

.pa_text-primary {
    color: var(--color-primary);
}

/* INDEX */
#index #header {
    background: none;
}

#index #wrapper {
    padding-bottom: 0;
    margin-top: -91px;
}

#index .pa_underline .elementor-heading-title {
    text-decoration: underline;
    cursor: pointer;
    color: var(--color-green);
}

#index #content .pa_hero-block {
    background-image: url('/img/cms/hero-banner.jpg');
}

#index .pa_underline .elementor-heading-title:hover {
    text-decoration: none;
}

#index #desktop-header.desktop-header-style-4:not(.stuck) li.cbp-hrmenu-tab a {
    color: var(--color-white);
}

#index .pa_index-product-carousel .elementor-column-wrap.elementor-element-populated {
    padding: 0px 15px;
}

.pa_index-carousel {
    display: flex;
    flex-direction: row;
    align-items: center;
    white-space: nowrap;
    gap: 20px;
}

.pa_index-carousel-inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    white-space: nowrap;
    gap: 20px;
    animation: pa-carousel-loop 20s linear infinite;
}

.pa_index-carousel img {
    height: 40px;
    width: auto;
    object-fit: contain;
    display: inline-block;
    vertical-align: middle;
    flex-shrink: 0;
}

.pa_index-carousel span {
    font-family: var(--font-primary, serif);
    color: var(--color-green);
    font-weight: 400;
    font-size: 40px;
    display: inline-block;
    vertical-align: middle;
    flex-shrink: 0;
}


#index .pa_index-marquee .elementor-container.elementor-column-gap-default {
    max-width: 100%;
}

#index section.elementor-blog-posts .swiper-wrapper .swiper-slide {
    margin-right: 20px;
}

#index section.elementor-blog-posts .swiper-wrapper .swiper-slide img {
    border-radius: 20px;
}

.simpleblog__listing__post__wrapper .post-title {
    font-family: var(--font-secondary);
    text-align: center;
    font-weight: 500;
    font-size: 18px;
    line-height: 24px;
}

.simpleblog__listing__post__wrapper__content p[itemprop="description"] {
    display: none !important;
}

.simpleblog__listing__post__wrapper__footer {
    display: none !important;
}

.simpleblog__listing__post__wrapper__content__headline {
    border-bottom: none !important;
}

@keyframes pa-carousel-loop {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-30%);
    }
}

@media screen and (max-width: 767px) {
    #index #mobile-header {
        border-bottom: none;
    }

    #index .flex-row-cats .elementor-widget-wrap {
        display: flex;
        flex-direction: row;
        justify-content: center;
    }

    #index .pa_index-product-carousel .elementor-column-wrap.elementor-element-populated {
        padding: 0;
    }

    #index #content .pa_hero-block {
        background-image: url('/img/cms/hero-banner_mobile.jpg');
        background-position: center;
    }

    #index #content .pa_hero-block .elementor-column-wrap .elementor-widget-wrap {
        height: 100%;
    }

    #index #content .pa_hero-block .elementor-column-wrap .elementor-widget-wrap .elementor-inner-section {
        position: absolute;
        top: 13em;
    }

    #index #content .pa_hero-block .elementor-column-wrap .elementor-widget-wrap .pa_custom_button_light {
        position: absolute;
        bottom: 2em;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
    }

    #index .elementor-section .gato1 {
        width: 200px;
        margin-left: 15px;
    }

    #index .elementor-section .gato2 {
        width: 200px;
        margin-left: -15px;
    }

    .pa_index-icon-grid .elementor-row {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, 1fr);
        gap: 16px;
        padding: 3em;
    }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {}

/* PRODUCT GRID */
.js-product-miniature-wrapper .product-thumbnail picture img {
    width: 100%;
}

.js-product-miniature-wrapper span.regular-price.text-muted {
    color: #4F637D80 !important;
}

.js-product-miniature-wrapper .product-description .product-title {
    font-family: Inter, Sans-serif;
    font-size: 14px;
}

.js-product-miniature-wrapper .product-description div.row {
    flex-direction: column;
}

.js-product-miniature-wrapper .product-description div.row .product-miniature-right {
    text-align: left;
}

.js-product-miniature-wrapper .product-description div.row .product-miniature-right .product-price-and-shipping {
    display: flex;
    align-items: center;
}

.js-product-miniature-wrapper .product-description div.row .product-miniature-right .product-price-and-shipping .product-price {
    font-size: 16px;
}

.js-product-miniature-wrapper .product-description div.row .product-miniature-right .product-price-and-shipping .regular-price.text-muted {
    font-size: 14px;
    margin-left: 10px;
}

ul.product-flags.js-product-flags li {
    border-radius: var(--border-radius);
    font-size: 14px;
    height: 15px !important;
    padding: 4px 10px;
    color: #4F637D;
}

ul.product-flags.js-product-flags {
    margin: 10px 0px 0px 10px;
}

/* CATEGORY */
#pa_category-header-wrapper {
    display: flex;
    justify-content: space-between;
    margin-top: 59px;
    align-items: center;
}

#pa_category-header-wrapper #js-product-list-top.products-selection {
    margin: 0;
    padding: 0;
    border-top: none;
    border-bottom: none;
}

#category #content-wrapper .page-title {
    margin-bottom: 0;
    padding-bottom: 0;
}

#category #wrapper {
    padding-top: 0;
}

.products-selection .form-control {
    border-radius: 25px;
}

/* PRODUCT */
#product .product-prices.js-product-prices {
    display: flex;
    margin-bottom: 16px;
}

#product h1.h1.page-title {
    font-weight: 400;
    margin-bottom: 30px;
}

#product .product_header_container .product-description {
    color: var(--color-light-blue-text);
    font-size: 14px;
    margin-bottom: 30px;
}

#product .tax-shipping-delivery-label {
    font-size: 14px;
}

#product .product-cover img {
    margin: 0 auto;
    width: 100%;
}

.products-grid {
    margin-left: -0.5em !important;
    margin-right: -0.5em !important;
}

.products-grid .js-product-miniature-wrapper {
    padding: 0.5em !important;
}

#product #col-product-info {
    padding: 2em 1.5em 2em 1.5em;
    border: 1px solid var(--color-secondary);
    border-radius: var(--border-radius);
}

#product .product-description-section .section-title span {
    font-style: italic;
}

#product .images-container {
    padding-bottom: 0;
    margin-bottom: 0;
}

#product .after-cover-tumbnails2.mt-4,
#product .product-info-row {
    margin-top: 0 !important;
}

#product #product-images-large #swiper-wrapper-column-images {
    margin: -6px;
}

#product #main-product-wrapper .product-lmage-large {
    padding: 6px;
}

#product .tabs.product-tabs.product-sections {
    margin-top: 12px;
}

#product .product-info-row {
    margin-bottom: 0;
}

#product .product-description-section>.elementor+.section-title {
    margin-top: 2em;
}

#product #product-details-wrapper {
    display: none;
}

#product section.category-products .section-title {
    font-size: 48px;
    font-weight: 400;
    line-height: 50px;
    margin-bottom: 48px;
    padding-bottom: 0;
}

#product .product-prices.js-product-prices * {
    font-weight: 400 !important;
}

#product .product-description-section>.elementor~.section-title.product-section-title,
#product .product-description-section>.elementor~.section-content .section-title.product-section-title {
    margin-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 14px;
}

#product .section-title.product-section-title {
    font-size: 36px;
    font-weight: 400;
    line-height: 50px;
    font-style: italic;
}

#product .product_header_container .badge-discount {
    margin-bottom: 30px;
}

@media screen and (min-width: 1024px) {
    #product .col-product-image {
        padding-right: 0;
    }

    #product .col-product-info {
        padding-left: 0;
    }
}

/* FOOTER  */

#footer div.elementor-social-icons-wrapper {
    .elementor-social-icon-tiktok {
        outline: 1px solid var(--color-white);
        outline-offset: -5px;
    }

    .elementor-social-icon-instagram {
        outline: 1px solid var(--color-white);
        outline-offset: -5px;
    }

    .elementor-social-icon-facebook {
        outline: 1px solid var(--color-white);
        outline-offset: -5px;
    }
}

#footer #footer-container-main {
    background: var(--color-black);
}

#footer .elementor-links .block-links ul>li a::before {
    display: none;
}

#footer .elementor-links .block-links ul>li a {
    padding-left: 0;
}

#footer-container-main .block-content.footer-contact a {
    font-size: 14px;
    font-family: Inter, Sans-serif;
    font-weight: 500;
    font-style: normal;
    color: var(--color-white);
}

#footer #footer-container-main .block {
    padding-bottom: 0;
}

#footer #footer-copyrights-flex {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

#footer #footer-copyrights-flex i {
    margin-right: 0.5rem;
}

#footer #footer-copyrights-flex p {
    margin: 0;
    color: var(--color-black);
}

/* BLOG */
#module-ph_simpleblog-list p[itemprop="description"] {
    color: var(--color-light-blue-text);
}

#module-ph_simpleblog-list .simpleblog__listing__post__wrapper img {
    border-radius: 30px;
}

.ps-shoppingcart.dropdown #blockcart-content {
    min-width: 420px;
}

/* CART */
#cart .product-price {
    font-weight: 300;
}

/* #cart .cart-grid-right .cart-summary *,
#checkout .cart-grid-right .cart-summary * {
    color: var(--color-secondary);
} */


/* TOUCHSPIN (QUANTITIES) */
.bootstrap-touchspin {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    border: 1px solid var(--color-secondary);
    border-radius: var(--border-radius);
    overflow: hidden;
    background: var(--color-white);
}

/* Input de cantidad */
.bootstrap-touchspin input.form-control,
.bootstrap-touchspin input[type="number"] {
    width: 40px !important;
    min-width: 40px;
    max-width: 50px;
    height: 36px;
    text-align: center;
    border: none !important;
    background: transparent;
    font-size: 14px;
    font-weight: 500;
    padding: 0;
    -moz-appearance: textfield;
}

.bootstrap-touchspin input[type="number"]::-webkit-inner-spin-button,
.bootstrap-touchspin input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.bootstrap-touchspin input:focus {
    outline: none;
    box-shadow: none;
}

/* Botones de + y - */
.bootstrap-touchspin .input-group-btn {
    display: flex;
    align-items: center;
}

.bootstrap-touchspin .btn-touchspin {
    width: 36px;
    height: 36px;
    padding: 9px 20px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none !important;
    color: var(--color-secondary);
    font-size: 16px;
    font-weight: 400;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.bootstrap-touchspin .btn-touchspin:hover {
    background-color: rgba(79, 99, 125, 0.1);
}

/* Ocultar prefijos y postfijos */
.bootstrap-touchspin .bootstrap-touchspin-prefix,
.bootstrap-touchspin .bootstrap-touchspin-postfix {
    display: none !important;
}

/* Quitar el ancho fijo del contenedor .qty en producto */
.product-quantity .qty {
    width: auto;
    height: auto;
}

.product-quantity .qty .input-group {
    height: auto;
}

/* Block cart (carrito lateral/modal) */
.block-cart-content .bootstrap-touchspin {
    width: auto;
    min-width: 100px;
}

.block-cart-content .block-cart-product-quantity {
    height: auto;
}

/* Página del carrito */
.cart-overview .bootstrap-touchspin {
    max-width: 120px;
}

/* Listado de productos */
.input-group-add-cart .bootstrap-touchspin {
    width: auto;
    min-width: 90px;
}

/* Quick view modal */
.quickview .bootstrap-touchspin {
    width: auto;
}

#blockcart-content .cart-products .bootstrap-touchspin {
    width: unset !important;
}