/* ==================================================
   HISPASEEDS BLACK
   Archivo: assets/css/responsive.css
   Propósito: Hoja de estilos documentada para ajustes
   visuales más rápidos y seguros.
   ================================================== */

/* === SECCIÓN =========================================================== */
/* ======================================================
   GLOBAL RESPONSIVE LAYER · 3.1.12
   Cobertura general para móvil, tablet y desktop
   ====================================================== */

html {
    -webkit-text-size-adjust: 100%;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    overflow-x: clip;
}

body {
    text-wrap: pretty;
}

img,
svg,
video,
canvas,
iframe {
    max-width: 100%;
    height: auto;
}

iframe {
    display: block;
    border: 0;
}

table {
    width: 100%;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

pre,
code,
kbd,
samp {
    white-space: pre-wrap;
    word-break: break-word;
}

input,
select,
textarea,
button {
    max-width: 100%;
}

.site,
.site-content,
.content-area,
.site-main,
.entry-content,
.ast-container,
.ast-article-single,
.woocommerce,
.woocommerce-page,
.woocommerce div.product,
.woocommerce ul.products,
.woocommerce ul.products li.product,
.hs-grow-guide,
.hs-guide-layout,
.hs-guide-content,
.hs-guide-sidebar,
.luxe-container,
.luxe-home-hero,
.luxe-home-hero__grid,
.luxe-home-hero__content,
.luxe-product-grid,
.hs-listing-grid,
.hs-listing-card,
.hs-listing-card__body,
.luxe-footer__grid {
    min-width: 0;
}

.ast-container,
.luxe-container {
    width: min(100% - 32px, var(--luxe-container, 1240px));
}

.site-main > *:first-child,
.entry-content > *:first-child {
    margin-top: 0;
}

.wp-block-image,
.wp-block-group,
.wp-block-columns,
.wp-block-cover,
.wp-block-media-text,
.wp-block-table,
.wp-block-embed,
.wp-block-gallery {
    max-width: 100%;
}

.wp-block-columns {
    gap: clamp(16px, 2vw, 28px);
}

.alignwide,
.alignfull {
    max-width: 100%;
}

.hs-listing-card,
.luxe-product-card,
.woocommerce ul.products li.product {
    overflow: hidden;
}

.hs-listing-card__media img,
.luxe-product-card__image img,
.woocommerce ul.products li.product img,
.woocommerce div.product div.images img {
    display: block;
    width: 100%;
    height: auto;
}

.hs-listing-card__title,
.hs-section h2,
.hs-guide-hero h1,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce div.product .product_title {
    overflow-wrap: anywhere;
}

.hs-listing-card__excerpt,
.hs-listing-card__excerpt p,
.entry-content p,
.entry-content li,
.hs-section p,
.hs-section li,
.woocommerce div.product .summary p {
    overflow-wrap: anywhere;
}

body.blog .site-main,
body.archive .site-main,
body.search .site-main,
body.single-post .site-main,
body.page .site-main {
    overflow-x: clip;
}

/* Desktop amplio */
@media (min-width: 1200px) {
    .site-header .ast-builder-grid-row {
        min-height: 92px;
    }

    .woocommerce ul.products {
        margin-left: 0;
        margin-right: 0;
    }
}

/* Tablet horizontal y laptops pequeñas */
@media (max-width: 1180px) {
    .luxe-product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hs-guide-layout {
        grid-template-columns: 220px minmax(0, 1fr);
        gap: 36px;
    }

    .luxe-home-hero__content {
        padding: 56px 40px;
        max-width: 640px;
    }

    .woocommerce div.product {
        gap: 28px;
    }
}

/* Tablet */
@media (max-width: 921px) {
    html,
    body {
        overflow-x: hidden;
    }

    .ast-container,
    .luxe-container,
    .site-header .ast-container,
    .site-header .ast-builder-grid-row-container {
        width: min(100% - 28px, var(--luxe-container, 1240px)) !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .site-header .ast-builder-grid-row {
        min-height: 76px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .site-header .custom-logo-link img,
    .site-header .custom-logo {
        max-height: 52px;
    }

    .luxe-home-hero,
    .luxe-home-hero__grid {
        min-height: auto;
    }

    .luxe-home-hero__content {
        padding: 56px 28px;
        max-width: 100%;
    }

    .luxe-home-hero__content h1 {
        max-width: 12ch;
    }

    .luxe-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .hs-listing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .woocommerce ul.products,
    .woocommerce-page ul.products {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .woocommerce ul.products::before,
    .woocommerce ul.products::after,
    .woocommerce-page ul.products::before,
    .woocommerce-page ul.products::after {
        display: none;
    }

    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 100% !important;
        margin: 0 !important;
        float: none !important;
    }

    .woocommerce div.product {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .woocommerce div.product div.images,
    .woocommerce div.product div.summary {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }

    .woocommerce div.product div.images {
        margin-bottom: 24px !important;
    }

    .hs-grow-guide {
        padding-top: 52px;
        padding-bottom: 72px;
    }

    .hs-guide-layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .hs-guide-sidebar {
        position: static;
        top: auto;
        width: 100%;
        padding-top: 0;
        margin: 0;
    }

    .hs-guide-sidebar ul {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        padding-bottom: 6px;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .hs-guide-sidebar ul::-webkit-scrollbar {
        display: none;
    }

    .hs-guide-sidebar li {
        flex: 0 0 auto;
    }

    .hs-guide-sidebar a {
        white-space: nowrap;
        padding: 10px 14px;
        border: 1px solid rgba(200, 161, 90, 0.18);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.02);
        transform: none !important;
    }

    .hs-guide-content {
        max-width: 100%;
    }

    .luxe-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .luxe-footer__brand {
        grid-column: 1 / -1;
        max-width: 100%;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .luxe-section,
    .hs-editorial,
    .hs-listing,
    .hs-empty,
    .woocommerce-page .site-main {
        padding-top: 28px;
        padding-bottom: 52px;
    }

    .site-header {
        position: sticky !important;
        top: 0;
    }

    .site-header .ast-builder-grid-row {
        min-height: 68px;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .site-header .custom-logo-link img,
    .site-header .custom-logo {
        max-height: 44px;
    }

    .luxe-home-hero {
        border-bottom-width: 0;
    }

    .luxe-home-hero__content {
        padding: 42px 20px 46px;
    }

    .luxe-home-hero__content h1 {
        max-width: 100%;
        font-size: clamp(2.25rem, 11vw, 3.2rem);
        line-height: 0.98;
    }

    .luxe-home-hero__content p {
        font-size: 0.98rem;
        line-height: 1.65;
    }

    .luxe-home-hero__actions,
    .hs-guide-cta__actions,
    .entry-content .wp-block-buttons {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .luxe-home-hero__actions > *,
    .hs-guide-cta__actions > *,
    .entry-content .wp-block-buttons > * {
        width: 100%;
    }

    .luxe-btn,
    .hs-button,
    .wp-block-button__link,
    .wp-element-button,
    .ast-button,
    .button,
    a.button,
    button,
    input[type="submit"] {
        width: 100%;
        justify-content: center;
    }

    .luxe-product-grid,
    .hs-listing-grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .hs-listing-card__body,
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        padding-left: 16px;
        padding-right: 16px;
    }

    .hs-listing-card__body {
        padding-top: 16px;
        padding-bottom: 18px;
    }

    .hs-listing-card__title {
        font-size: 1.08rem;
    }

    .hs-pagination .nav-links {
        gap: 6px;
        justify-content: flex-start;
    }

    .hs-pagination .page-numbers {
        min-width: 40px;
        min-height: 40px;
        padding: 0 10px;
    }

    .woocommerce ul.products li.product .button,
    .woocommerce ul.products li.product a.button,
    .woocommerce-page ul.products li.product .button,
    .woocommerce-page ul.products li.product a.button,
    .woocommerce ul.products li.product .added_to_cart,
    .woocommerce-page ul.products li.product .added_to_cart {
        width: 100% !important;
        margin: 10px 0 0 !important;
    }

    .woocommerce div.product form.cart,
    .woocommerce div.product .quantity,
    .woocommerce div.product .single_add_to_cart_button,
    .woocommerce div.product .variations,
    .woocommerce div.product .reset_variations {
        width: 100%;
    }

    .woocommerce div.product .summary {
        overflow: hidden;
    }

    .hs-grow-guide {
        padding: 40px 0 56px !important;
    }

    .hs-guide-hero,
    .hs-guide-highlight,
    .hs-guide-content,
    .hs-section,
    .hs-guide-cta {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .hs-guide-hero {
        padding: 10px 0 24px;
        margin-bottom: 28px;
    }

    .hs-guide-hero h1 {
        max-width: 100%;
        font-size: clamp(2.2rem, 10vw, 3.2rem);
        line-height: 1;
    }

    .hs-guide-hero p,
    .hs-guide-highlight p,
    .hs-section p,
    .hs-section li,
    .hs-faq-item p {
        font-size: 0.98rem;
        line-height: 1.72;
    }

    .hs-guide-highlight {
        padding: 20px;
        margin: 20px 0 28px;
        border-radius: 16px;
    }

    .hs-section {
        margin-bottom: 48px;
        scroll-margin-top: 92px;
    }

    .hs-section h2,
    .hs-faq-item h3,
    .hs-guide-cta h2 {
        font-size: clamp(1.6rem, 7vw, 2.2rem);
        line-height: 1.08;
    }

    .hs-section ul,
    .hs-section ol {
        padding-left: 20px;
    }

    .hs-faq-item,
    .hs-grow-guide #faq .hs-faq-item {
        padding: 18px !important;
        border-radius: 16px !important;
    }

    .luxe-footer__top {
        padding: 32px 0 18px;
    }

    .luxe-footer__grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .luxe-footer__heading {
        margin-bottom: 10px;
    }

    .luxe-footer__links li + li {
        margin-top: 8px;
    }

    .luxe-footer__bottom-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .luxe-footer__meta--right {
        text-align: left;
    }
}

/* Mobile pequeño */
@media (max-width: 479px) {
    .ast-container,
    .luxe-container,
    .site-header .ast-container,
    .site-header .ast-builder-grid-row-container,
    .hs-grow-guide .ast-container {
        width: min(100% - 24px, var(--luxe-container, 1240px)) !important;
    }

    .luxe-home-hero__content {
        padding-left: 18px;
        padding-right: 18px;
    }

    .hs-listing-card__body,
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        padding-left: 14px;
        padding-right: 14px;
    }

    .hs-guide-sidebar a {
        padding: 9px 12px;
        font-size: 0.9rem;
    }

    .hs-guide-highlight,
    .hs-guide-cta,
    .hs-faq-item,
    .hs-grow-guide #faq .hs-faq-item {
        border-radius: 14px !important;
    }
}


/* ==========================================
   v3.1.13 · Guide FAQ dark cards hard override
   ========================================== */
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq > *,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item > *,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .wp-block-group,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .wp-block-group__inner-container,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .has-background,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .is-layout-flow,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .is-layout-constrained,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .elementor-widget-container,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .elementor-accordion,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .elementor-tab-content {
    background: transparent !important;
    background-color: transparent !important;
}

body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item {
    padding: 24px !important;
    margin: 0 0 16px !important;
    border: 1px solid rgba(255, 217, 120, 0.14) !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(8, 8, 8, 0.96) 0%, rgba(18, 18, 18, 0.98) 100%) !important;
    background-color: #0d0d0d !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.35) !important;
}

body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item h3,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item p,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item li,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item strong,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item span {
    background: transparent !important;
    background-color: transparent !important;
}

body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item h3 {
    color: #fff4d2 !important;
}

body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item p,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item li,
body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item span {
    color: #f3ecda !important;
}

@media (max-width: 768px) {
    body.page-template-page-guia-de-cultivo .hs-grow-guide #faq .hs-faq-item {
        padding: 18px !important;
        border-radius: 16px !important;
    }
}


/* ==========================================
   v3.1.14 · Hard override dark cards for blog / wiki listings
   ========================================== */
body.blog .hs-listing-grid > article.hs-listing-card,
body.archive .hs-listing-grid > article.hs-listing-card,
body.search .hs-listing-grid > article.hs-listing-card,
body.blog article.hs-listing-card.post,
body.archive article.hs-listing-card.post,
body.search article.hs-listing-card.post,
body.blog article.hs-listing-card.type-post,
body.archive article.hs-listing-card.type-post,
body.search article.hs-listing-card.type-post {
    background: linear-gradient(180deg, rgba(12, 12, 12, 0.98) 0%, rgba(20, 20, 20, 0.98) 100%) !important;
    background-color: #111111 !important;
    border: 1px solid rgba(200, 161, 90, 0.22) !important;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28) !important;
}

body.blog .hs-listing-grid > article.hs-listing-card > *,
body.archive .hs-listing-grid > article.hs-listing-card > *,
body.search .hs-listing-grid > article.hs-listing-card > *,
body.blog .hs-listing-grid > article.hs-listing-card .hs-listing-card__body,
body.archive .hs-listing-grid > article.hs-listing-card .hs-listing-card__body,
body.search .hs-listing-grid > article.hs-listing-card .hs-listing-card__body,
body.blog .hs-listing-grid > article.hs-listing-card .entry-content,
body.archive .hs-listing-grid > article.hs-listing-card .entry-content,
body.search .hs-listing-grid > article.hs-listing-card .entry-content,
body.blog .hs-listing-grid > article.hs-listing-card .entry-summary,
body.archive .hs-listing-grid > article.hs-listing-card .entry-summary,
body.search .hs-listing-grid > article.hs-listing-card .entry-summary,
body.blog .hs-listing-grid > article.hs-listing-card .wp-block-group,
body.archive .hs-listing-grid > article.hs-listing-card .wp-block-group,
body.search .hs-listing-grid > article.hs-listing-card .wp-block-group,
body.blog .hs-listing-grid > article.hs-listing-card .has-background,
body.archive .hs-listing-grid > article.hs-listing-card .has-background,
body.search .hs-listing-grid > article.hs-listing-card .has-background,
body.blog .hs-listing-grid > article.hs-listing-card div:not(.hs-listing-card__media):not(.hs-listing-card__meta),
body.archive .hs-listing-grid > article.hs-listing-card div:not(.hs-listing-card__media):not(.hs-listing-card__meta),
body.search .hs-listing-grid > article.hs-listing-card div:not(.hs-listing-card__media):not(.hs-listing-card__meta) {
    background: transparent !important;
    background-color: transparent !important;
}

body.blog .hs-listing-grid > article.hs-listing-card .hs-listing-card__title,
body.archive .hs-listing-grid > article.hs-listing-card .hs-listing-card__title,
body.search .hs-listing-grid > article.hs-listing-card .hs-listing-card__title,
body.blog .hs-listing-grid > article.hs-listing-card .hs-listing-card__title a,
body.archive .hs-listing-grid > article.hs-listing-card .hs-listing-card__title a,
body.search .hs-listing-grid > article.hs-listing-card .hs-listing-card__title a {
    color: #f5f1e8 !important;
}

body.blog .hs-listing-grid > article.hs-listing-card .hs-listing-card__meta,
body.archive .hs-listing-grid > article.hs-listing-card .hs-listing-card__meta,
body.search .hs-listing-grid > article.hs-listing-card .hs-listing-card__meta {
    color: rgba(245, 241, 232, 0.56) !important;
}

body.blog .hs-listing-grid > article.hs-listing-card .hs-listing-card__excerpt,
body.archive .hs-listing-grid > article.hs-listing-card .hs-listing-card__excerpt,
body.search .hs-listing-grid > article.hs-listing-card .hs-listing-card__excerpt,
body.blog .hs-listing-grid > article.hs-listing-card .hs-listing-card__excerpt p,
body.archive .hs-listing-grid > article.hs-listing-card .hs-listing-card__excerpt p,
body.search .hs-listing-grid > article.hs-listing-card .hs-listing-card__excerpt p,
body.blog .hs-listing-grid > article.hs-listing-card p,
body.archive .hs-listing-grid > article.hs-listing-card p,
body.search .hs-listing-grid > article.hs-listing-card p {
    color: #cfc7b8 !important;
}

body.blog .hs-listing-grid > article.hs-listing-card .hs-listing-card__media,
body.archive .hs-listing-grid > article.hs-listing-card .hs-listing-card__media,
body.search .hs-listing-grid > article.hs-listing-card .hs-listing-card__media {
    background: #0f0f0f !important;
}
