/*
Theme Name: Incubator Child
Template: incubator
Theme URI: http://keydesign-themes.com/incubator/
Author: Key-Design
Author URI: http://themeforest.net/user/Key-Design
Description: Incubator - WordPress Startup Business Theme
Version: 1.9.2
Tags: one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images, flexible-header, post-formats, sticky-post, translation-ready
*/

/* ═══════════════════════════════════════════════════════════
   AUDIO TRIANA - Modern Design Overrides
   ═══════════════════════════════════════════════════════════ */

/* ── Google Font: Inter ── */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

/* ── Typography Reset ── */
body,
body .box,
.container,
.container p {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    font-size: 16px !important;
    color: #334155 !important;
    line-height: 1.7 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.container h1, .container h2, .container h3,
.container h4, .container h5, .container h6,
.vc_custom_heading,
.wpb_text_column h1, .wpb_text_column h2, .wpb_text_column h3 {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-weight: 800 !important;
    color: #1d4ae0 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.2 !important;
}

/* Gradient text for main section headings */
.vc_custom_heading h2,
.wpb_content_element h2,
.wpb_text_column h2 {
    background: linear-gradient(135deg, #1d4ae0 0%, #4a7aff 60%, #2457e2 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    display: inline-block !important;
}

/* Subtitles / description text under headings */
.vc_custom_heading + .wpb_text_column p,
.wpb_content_element h2 + p {
    color: #64748b !important;
    font-size: 1.05rem !important;
    font-weight: 400 !important;
}

p, .wpb_text_column p {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
    color: #475569 !important;
    line-height: 1.8 !important;
    font-size: 16px !important;
}

a {
    color: #2457e2;
    transition: color .2s ease;
}
a:hover {
    color: #1a3fb8;
}

/* ── Navigation ── */
.navbar-default .nav li a {
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    letter-spacing: 0.02em !important;
}

/* ═══════════════════════════════════════════════════════════
   VISUAL COMPOSER - Icon Boxes ("Principales caracteristicas")
   ═══════════════════════════════════════════════════════════ */

/* Card-style icon boxes */
.tek_iconbox {
    background: #fff !important;
    border-radius: 16px !important;
    padding: 28px 24px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,.06), 0 4px 16px rgba(36,87,226,.06) !important;
    transition: all .3s cubic-bezier(.4,0,.2,1) !important;
    border: 1px solid rgba(226,232,240,.6) !important;
    margin-bottom: 20px !important;
}
.tek_iconbox:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 30px rgba(36,87,226,.12), 0 2px 8px rgba(0,0,0,.06) !important;
    border-color: rgba(36,87,226,.15) !important;
}

/* Icon circles */
.tek_iconbox .icon-circle,
.tek_iconbox .iconbox-icon-container {
    background: linear-gradient(135deg, #2457e2 0%, #4a7aff 100%) !important;
    color: #fff !important;
    border-radius: 14px !important;
    width: 52px !important;
    height: 52px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}
.tek_iconbox .icon-circle i,
.tek_iconbox .iconbox-icon-container i,
.tek_iconbox .fa {
    color: #fff !important;
    font-size: 20px !important;
}

/* Icon box titles */
.tek_iconbox h5,
.tek_iconbox .iconbox-title,
.tek_iconbox_title {
    font-family: 'Inter', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #1d4ae0 !important;
    margin: 0 0 6px !important;
    letter-spacing: -0.01em !important;
}

/* Icon box text */
.tek_iconbox p,
.tek_iconbox .iconbox-content,
.tek_iconbox .text_box {
    font-family: 'Inter', sans-serif !important;
    color: #64748b !important;
    font-size: .9rem !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* ═══════════════════════════════════════════════════════════
   VISUAL COMPOSER - General Row/Column Improvements
   ═══════════════════════════════════════════════════════════ */

.vc_row {
    margin-bottom: 0 !important;
}

.wpb_text_column {
    font-family: 'Inter', sans-serif !important;
}

/* Section headings in VC */
.vc_custom_heading h2,
.wpb_content_element h2 {
    font-size: 2.2rem !important;
    margin-bottom: 16px !important;
    position: relative !important;
}

/* Decorative line under section headings */
.vc_custom_heading h2::after,
.wpb_content_element h2::after {
    content: '' !important;
    display: block !important;
    width: 60px !important;
    height: 4px !important;
    background: linear-gradient(90deg, #2457e2, #4a7aff) !important;
    border-radius: 2px !important;
    margin-top: 12px !important;
}

/* Single image rounded */
.wpb_single_image img {
    border-radius: 16px;
}

/* ═══════════════════════════════════════════════════════════
   CONTACT FORM 7 - "Contacta con nosotros"
   ═══════════════════════════════════════════════════════════ */

/* Form container */
.wpcf7 {
    background: linear-gradient(180deg, #f0f4ff 0%, #fff 40%) !important;
    border-radius: 24px !important;
    padding: 48px 44px !important;
    box-shadow: 0 8px 40px rgba(36,87,226,.1), 0 2px 8px rgba(0,0,0,.04) !important;
    border: 1px solid rgba(36,87,226,.1) !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    position: relative !important;
    overflow: hidden !important;
}
/* Decorative top accent bar */
.wpcf7::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 5px !important;
    background: linear-gradient(90deg, #1d4ae0, #4a7aff, #2457e2) !important;
}

/* Labels */
.wpcf7 label,
.wpcf7-form label {
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: .9rem !important;
    color: #334155 !important;
    display: block !important;
    margin-bottom: 6px !important;
    text-transform: none !important;
}

/* Input fields */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="number"],
.wpcf7 textarea,
.wpcf7 select {
    font-family: 'Inter', sans-serif !important;
    width: 100% !important;
    padding: 14px 18px !important;
    border: 2px solid #dde4f0 !important;
    border-radius: 14px !important;
    font-size: 1rem !important;
    color: #1e293b !important;
    background: #fff !important;
    transition: all .25s ease !important;
    outline: none !important;
    height: auto !important;
    box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
    -webkit-appearance: none !important;
    text-transform: none !important;
    font-weight: 400 !important;
}
.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus {
    border-color: #2457e2 !important;
    background: #fff !important;
    box-shadow: 0 0 0 4px rgba(36,87,226,.12), 0 1px 3px rgba(0,0,0,.04) !important;
}
.wpcf7 textarea {
    min-height: 140px !important;
    resize: vertical !important;
}

/* Submit button */
.wpcf7 input[type="submit"],
.wpcf7 .wpcf7-submit {
    font-family: 'Inter', sans-serif !important;
    background: linear-gradient(135deg, #1d4ae0 0%, #2457e2 50%, #4a7aff 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 14px !important;
    padding: 16px 40px !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all .3s cubic-bezier(.4,0,.2,1) !important;
    text-transform: none !important;
    letter-spacing: 0.01em !important;
    width: 100% !important;
    height: auto !important;
    box-shadow: 0 4px 16px rgba(36,87,226,.3) !important;
    margin-top: 8px !important;
}
.wpcf7 input[type="submit"]:hover,
.wpcf7 .wpcf7-submit:hover {
    background: linear-gradient(135deg, #1639b8 0%, #1d4ae0 50%, #2457e2 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 28px rgba(36,87,226,.4) !important;
}

/* Form spacing */
.wpcf7-form p {
    margin-bottom: 16px !important;
}

/* Checkbox / acceptance */
.wpcf7 .wpcf7-acceptance label {
    font-size: .85rem !important;
    font-weight: 400 !important;
    color: #64748b !important;
}

/* ═══════════════════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════════════════ */

footer#footer {
    background: #1d4ae0 !important;
    color: #e0e8ff !important;
    font-family: 'Inter', sans-serif !important;
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
}
footer#footer .upper-footer {
    background: #1d4ae0 !important;
    color: #e0e8ff !important;
    font-family: 'Inter', sans-serif !important;
    padding: 80px 0 60px !important;
    overflow: visible !important;
    height: auto !important;
}
footer#footer .widget-title,
footer#footer h1, footer#footer h2, footer#footer h3,
footer#footer h4, footer#footer h5, footer#footer h6 {
    color: #fff !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
footer#footer p,
footer#footer li,
footer#footer span,
footer#footer .footer_widget,
footer#footer .footer_widget p,
footer#footer .footer_widget li,
footer#footer .footer_widget span {
    font-family: 'Inter', sans-serif !important;
    font-size: .9rem !important;
    line-height: 1.7 !important;
    color: #e0e8ff !important;
}
footer#footer a {
    color: #bdd0ff !important;
    transition: color .2s ease !important;
}
footer#footer a:hover {
    color: #fff !important;
}
footer#footer .lower-footer {
    background: #1639b8 !important;
    color: #d0dcff !important;
    padding: 30px 0 !important;
    font-family: 'Inter', sans-serif !important;
    text-align: center !important;
    overflow: visible !important;
    height: auto !important;
}
footer#footer.fixed {
    position: relative !important;
}
footer#footer .lower-footer .pull-left,
footer#footer .lower-footer .pull-right {
    float: none !important;
    text-align: center !important;
}
footer#footer .upper-footer .container {
    text-align: center !important;
}
footer#footer .lower-footer span,
footer#footer .lower-footer p,
footer#footer .lower-footer a {
    font-size: .85rem !important;
    color: #d0dcff !important;
}
footer#footer .lower-footer a {
    color: #bdd0ff !important;
}
footer#footer .lower-footer a:hover {
    color: #fff !important;
}

/* ═══════════════════════════════════════════════════════════
   GLOBAL POLISH
   ═══════════════════════════════════════════════════════════ */

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Better image rendering */
img {
    image-rendering: -webkit-optimize-contrast;
}

/* Selection color */
::selection {
    background: rgba(36,87,226,.15);
    color: #0f172a;
}

/* Back to top button */
.back-to-top {
    background: #2457e2 !important;
    border-radius: 12px !important;
    width: 44px !important;
    height: 44px !important;
    box-shadow: 0 4px 14px rgba(36,87,226,.3) !important;
    transition: all .3s ease !important;
}
.back-to-top:hover {
    background: #1d4ae0 !important;
    transform: translateY(-2px) !important;
}
.back-to-top i {
    color: #fff !important;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    .wpcf7 {
        padding: 28px 20px !important;
        border-radius: 18px !important;
    }
    .tek_iconbox {
        padding: 20px 18px !important;
    }
    body,
    body .box,
    .container p {
        font-size: 15px !important;
    }
    .vc_custom_heading h2,
    .wpb_content_element h2 {
        font-size: 1.6rem !important;
    }
    footer#footer .upper-footer {
        padding: 50px 0 36px !important;
    }
}
