/* Advanced Search Input Placeholder */
.ks-section-search .kuad-advanced-search-input::placeholder,
.wp-block-kuad-advanced-search .kuad-advanced-search-input::placeholder,
.kuad-advanced-search-input::placeholder {
    color: #999999 !important;
    opacity: 0.8 !important;
}

.ks-section-search .kuad-advanced-search-filter,
.wp-block-kuad-advanced-search .kuad-advanced-search-filter,
.kuad-advanced-search-filter {
    height: 48px !important;
    border-radius: 50px !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    padding: 0 16px !important;
    font-family: var(--ks-body-font, 'Poppins', sans-serif) !important;
    font-size: 14px !important;
    color: #555555 !important;
    background-color: #f9f9f9 !important;
    margin-right: 12px !important;
    outline: none !important;
    cursor: pointer !important;
    min-width: 110px !important;
}

.ks-section-search .kuad-advanced-search-submit,
.wp-block-kuad-advanced-search .kuad-advanced-search-submit,
.kuad-advanced-search-submit {
    height: 48px !important;
    padding: 0 28px !important;
    border-radius: 50px !important;
    background-color: var(--ks-primary-color, #2D1A68) !important;
    color: #ffffff !important;
    font-family: var(--ks-heading-font, 'Poppins', sans-serif) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 15px rgba(45, 26, 104, 0.2) !important;
    flex-shrink: 0 !important;
}

.ks-section-search .kuad-advanced-search-submit:hover,
.wp-block-kuad-advanced-search .kuad-advanced-search-submit:hover,
.kuad-advanced-search-submit:hover {
    background-color: var(--ks-secondary-color, #C05A86) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(192, 90, 134, 0.25) !important;
}

.ks-section-search .kuad-advanced-search-submit-arrow,
.wp-block-kuad-advanced-search .kuad-advanced-search-submit-arrow,
.kuad-advanced-search-submit-arrow {
    width: 16px !important;
    height: 16px !important;
    transition: transform 0.2s ease !important;
}

.ks-section-search .kuad-advanced-search-submit:hover .kuad-advanced-search-submit-arrow,
.wp-block-kuad-advanced-search .kuad-advanced-search-submit:hover .kuad-advanced-search-submit-arrow,
.kuad-advanced-search-submit:hover .kuad-advanced-search-submit-arrow {
    transform: translateX(3px) !important;
}

@media (max-width: 768px) {

    .ks-section-search .kuad-advanced-search-submit,
    .wp-block-kuad-advanced-search .kuad-advanced-search-submit {
        width: 100% !important;
        justify-content: center !important;
    }
}


/* ============================================================
   NEWSLETTER UPGRADE (TOUCH COMPLIANT ROW)
   ============================================================ */
.ks-section-newsletter .wp-block-group {
    max-width: 650px !important;
    margin: 0 auto !important;
}

/* Align inputs and buttons in a premium row */
.ks-section-newsletter form,
.ks-section-newsletter .ks-newsletter-form-wrap,
.ks-m-newsletter-form,
.wp-block-kuad-newsletter form {
    display: flex !important;
    flex-direction: row !important;
    gap: 15px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 35px auto 0 auto !important;
    width: 100% !important;
    max-width: 650px !important;
}

.ks-section-newsletter .ks-m-newsletter-input-wrapper,
.ks-m-newsletter-form .ks-m-newsletter-input-wrapper,
.wp-block-kuad-newsletter .ks-m-newsletter-input-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    margin-bottom: 0 !important;
    width: auto !important;
    min-width: 0 !important;
}

.ks-m-newsletter-input-wrapper .ks-m-newsletter-icon-container {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    left: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 24px !important;
    width: 24px !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

.ks-m-newsletter-input-wrapper .ks-m-newsletter-icon-container svg {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ks-section-newsletter input[type="email"],
.ks-section-newsletter input[type="text"],
.wp-block-kuad-newsletter input[type="email"],
.wp-block-kuad-newsletter input[type="text"],
.ks-m-newsletter-email,
input[type="email"].ks-m-newsletter-email {
    flex-grow: 1 !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    line-height: 52px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(45, 26, 104, 0.15) !important;
    padding: 0 20px 0 52px !important;
    font-family: var(--ks-body-font, 'Poppins', sans-serif) !important;
    font-size: 15px !important;
    background-color: #ffffff !important;
    outline: none !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.01) !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.ks-section-newsletter input[type="email"]:focus,
.wp-block-kuad-newsletter input[type="email"]:focus,
.ks-m-newsletter-email:focus {
    border-color: #2D1A68 !important;
    box-shadow: 0 4px 15px rgba(45, 26, 104, 0.08) !important;
}

.ks-section-newsletter button,
.ks-section-newsletter input[type="submit"],
.wp-block-kuad-newsletter button,
.wp-block-kuad-newsletter input[type="submit"],
.ks-m-newsletter-submit,
input[type="submit"].ks-m-newsletter-submit {
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    line-height: 52px !important;
    border-radius: 16px !important;
    padding: 0 35px !important;
    font-family: var(--ks-heading-font, 'Poppins', sans-serif) !important;
    font-weight: 700 !important;
    font-size: 14.5px !important;
    background-color: #C05A86 !important;
    /* Rose accent button */
    color: #ffffff !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 4px 15px rgba(192, 90, 134, 0.2) !important;
    flex-shrink: 0 !important;
    width: auto !important;
    max-width: 220px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.ks-section-newsletter button:hover,
.ks-section-newsletter input[type="submit"]:hover,
.ks-m-newsletter-submit:hover {
    background-color: #2D1A68 !important;
    box-shadow: 0 6px 20px rgba(45, 26, 104, 0.25) !important;
}

@media (max-width: 600px) {

    .ks-section-newsletter form,
    .ks-section-newsletter .ks-newsletter-form-wrap,
    .ks-m-newsletter-form,
    .wp-block-kuad-newsletter form {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
    }

    .ks-section-newsletter .ks-m-newsletter-input-wrapper,
    .ks-m-newsletter-form .ks-m-newsletter-input-wrapper,
    .wp-block-kuad-newsletter .ks-m-newsletter-input-wrapper {
        margin-bottom: 12px !important;
        width: 100% !important;
    }

    .ks-section-newsletter input[type="email"],
    .ks-m-newsletter-email {
        width: 100% !important;
    }

    .ks-section-newsletter button,
    .ks-section-newsletter input[type="submit"],
    .ks-m-newsletter-submit {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ============================================================
   FOOTER DESIGN INTEGRATION OVERRIDES
   ============================================================ */
/* Prevent FSE logo widgets from drawing blue bounding boxes */
.wp-block-site-logo,
.ks-footer-widget-logo-container {
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
}

/* Spacing and alignments inside columns */
.ks-site-footer .wp-block-column {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.ks-footer-slogar {
    margin-top: 12px !important;
}

.ks-footer-address-title,
.ks-footer-phones-title,
.ks-footer-hours-title,
.ks-footer-payment-title,
.ks-footer-socials-title,
.ks-footer-email-title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.ks-footer-contact-item,
.ks-footer-hours-item,
.ks-footer-email-item {
    margin-top: -8px !important;
    margin-bottom: 15px !important;
}

.ks-footer-social-icons {
    margin-top: 8px !important;
    margin-bottom: 25px !important;
}

.ks-site-footer .ks-payment-methods-wrapper,
.ks-site-footer .ks-payment-icons {
    margin-top: -8px !important;
}


.ks-site-footer h3,
.ks-site-footer strong {
    color: #2D1A68 !important;
    font-family: var(--ks-heading-font, 'Poppins', sans-serif) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-bottom: 5px !important;
    border-bottom: 2px solid rgba(45, 26, 104, 0.05) !important;
    padding-bottom: 8px !important;
}

/* Clean floating payment cards widget alignment */
.ks-site-footer .ks-payment-methods-wrapper,
.ks-site-footer .ks-payment-icons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-top: 10px !important;
}

.ks-site-footer .ks-payment-icons img {
    height: 28px !important;
    width: auto !important;
    object-fit: contain !important;
}

.ks-site-footer a {
    color: #555555 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.ks-site-footer a:hover {
    color: #C05A86 !important;
}

/* Fluid Spacing & Section respiration (v7.1) */
.ks-section-featured-products,
.ks-section-services,
.ks-section-about,
.ks-section-testimonies,
.ks-section-news,
.ks-section-contact,
.ks-section-faq {
    padding: clamp(60px, 8vw, 100px) 0 !important;
    box-sizing: border-box !important;
}

/* Heading Typography letter-spacing (v7.1) */
.ks-heading-primary,
.ks-heading-white,
h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-heading,
.ks-footer-heading,
.woocommerce-loop-product__title,
.woocommerce div.product .product_title {
    letter-spacing: -0.02em !important;
}

/* Internal Page card wrapper & container (v7.1) */
.ks-internal-page-container {
    background-color: #fafafa !important;
    padding: clamp(40px, 6vw, 80px) 20px !important;
    box-sizing: border-box !important;
}

.ks-internal-page-content-card {
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: clamp(24px, 5vw, 60px) !important;
    box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.03), -4px -4px 20px rgba(255, 255, 255, 0.8) !important;
    border: 1px solid rgba(0, 0, 0, 0.02) !important;
    box-sizing: border-box !important;
}

/* Upgraded WooCommerce product gallery zoom/lightbox/flexslider support (v7.1) */
.woocommerce div.product div.images .flex-viewport {
    border-radius: var(--ks-card-radius, 16px) !important;
    box-shadow: var(--ks-card-shadow) !important;
    border: 1px solid var(--ks-card-border-color) !important;
    overflow: hidden !important;
    margin-bottom: 12px !important;
}

.woocommerce div.product div.images .flex-control-thumbs {
    display: flex !important;
    gap: 8px !important;
    margin-top: 10px !important;
    list-style: none !important;
    padding: 0 !important;
}

.woocommerce div.product div.images .flex-control-thumbs li {
    width: 20% !important;
    float: none !important;
    margin: 0 !important;
}

.woocommerce div.product div.images .flex-control-thumbs img {
    border-radius: 8px !important;
    border: 2px solid transparent !important;
    transition: all 0.25s ease !important;
    opacity: 0.7 !important;
    cursor: pointer !important;
}

.woocommerce div.product div.images .flex-control-thumbs img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs img:hover {
    border-color: var(--ks-secondary-color, #C05A86) !important;
    opacity: 1 !important;
}

/* Lightbox popup optimization */
.pswp__bg {
    background: rgba(45, 26, 104, 0.95) !important;
}

/* Inactive commercial modules promo card styling */
.ks-inactive-store-card {
    transition: all 0.3s ease !important;
}

.ks-inactive-store-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 8px 8px 25px rgba(0, 0, 0, 0.05), -8px -8px 25px rgba(255, 255, 255, 0.9) !important;
}

/* ============================================================
   NEUMORPHIC SUBTLE (SOFT UI) UX/UI SYSTEM
   ============================================================ */

/* Base container for all content blocks inside internal pages */
.ks-section-widget-container,
.ks-column-padded-card,
.ks-internal-page-content-card,
.ks-inactive-store-card {
    background: var(--ks-neumorphic-bg, #FFFFFF) !important;
    border-radius: 20px !important;
    border: var(--ks-neumorphic-border) !important;
    box-shadow: var(--ks-neumorphic-shadow-dark) !important;
    padding: clamp(20px, 4vw, 40px) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

/* Subtle Hover Effect for interactive neumorphic containers */
.ks-section-widget-container:hover,
.ks-column-padded-card:hover,
.ks-internal-page-content-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 8px 8px 20px rgba(163, 177, 198, 0.45), -8px -8px 20px rgba(255, 255, 255, 0.9) !important;
}


/* 4. Quiénes Somos / Staff & Services Grid styling */
.ks-about-image img,
.ks-team-member-card img {
    border-radius: 20px !important;
    box-shadow: var(--ks-neumorphic-shadow-dark) !important;
    border: var(--ks-neumorphic-border) !important;
}

.ks-team-member-card {
    background: var(--ks-neumorphic-bg, #FFFFFF) !important;
    border-radius: 18px !important;
    padding: 24px !important;
    border: var(--ks-neumorphic-border) !important;
    box-shadow: var(--ks-neumorphic-shadow-dark) !important;
    text-align: center !important;
}

/* Services items neumorphism overrides */
.ks-service-card,
.ks-services-grid-item {
    background: var(--ks-neumorphic-bg, #FFFFFF) !important;
    border-radius: 20px !important;
    padding: 30px !important;
    box-shadow: var(--ks-neumorphic-shadow-dark) !important;
    border: var(--ks-neumorphic-border) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.ks-service-card:hover,
.ks-services-grid-item:hover {
    transform: translateY(-4px) !important;
    box-shadow: 8px 8px 22px rgba(163, 177, 198, 0.45), -8px -8px 20px rgba(255, 255, 255, 0.9) !important;
}

/* 5. Novedades / News Card items */
.ks-news-card-item,
.ks-news-post-thumbnail-box {
    background: var(--ks-neumorphic-bg, #FFFFFF) !important;
    border-radius: 18px !important;
    border: var(--ks-neumorphic-border) !important;
}
