/*
Theme Name: SoporteParaWeb Child
Theme URI: https://soporteparaweb.com
Description: Child theme para SoporteParaWeb - Optimizado para conversión y SEO
Author: Tu Nombre
Author URI: https://soporteparaweb.com
Template: avas
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: soporteparaweb-child
Tags: wordpress, elementor, conversion, seo, guatemala
*/

/* ═══════════════════════════════════════════════════════ */
/* VARIABLES GLOBALES */
/* ═══════════════════════════════════════════════════════ */
:root {
    --navy: #0A1628; --blue: #1346A0; --blue-mid: #1E5EDB; --blue-glow: #2E7DFF;
    --orange: #F26419; --orange-dk: #D4500C; --green: #16A34A; --green-lt: #DCFCE7;
    --red: #DC2626; --amber: #F59E0B;
    --bg: #FFFFFF; --bg-soft: #F0F4FB; --bg-dark: #0A1628;
    --txt: #111827; --txt-mid: #4B5563; --txt-lt: #9CA3AF; --txt-white: #FFFFFF;
    --border: #E5EAF2;
    --shadow-sm: 0 2px 8px rgba(10,22,40,.07);
    --shadow-md: 0 8px 32px rgba(10,22,40,.12);
    --shadow-lg: 0 24px 64px rgba(10,22,40,.16);
    --radius: 12px; --radius-lg: 20px;
}

/* Reset básico para el child theme */
.spw-section * { box-sizing: border-box; margin: 0; padding: 0; }
.spw-section a { text-decoration: none; transition: all .2s ease; }
.spw-section img { max-width: 100%; height: auto; display: block; }

/* Tipografía */
.spw-section { font-family: 'DM Sans', sans-serif; color: var(--txt); line-height: 1.65; }
.spw-section h1, .spw-section h2, .spw-section h3, .spw-section h4 { 
    font-family: 'Syne', sans-serif; line-height: 1.2; font-weight: 700; color: var(--txt);
}

/* Helpers */
.spw-container { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.spw-section { padding: 96px 24px; }
.spw-tag {
    display: inline-block; font-size: 12px; font-weight: 600; letter-spacing: .08em;
    text-transform: uppercase; padding: 5px 14px; border-radius: 99px; margin-bottom: 18px;
}
.spw-tag--blue { background: #EFF6FF; color: var(--blue-mid); }
.spw-tag--white { background: rgba(255,255,255,.12); color: rgba(255,255,255,.85); }
.spw-tag--orange { background: #FFF7ED; color: var(--orange); }

.spw-sec-title { font-size: clamp(28px, 4vw, 40px); color: var(--txt); margin-bottom: 16px; }
.spw-sec-sub { font-size: 17px; color: var(--txt-mid); max-width: 560px; margin: 0 auto; }
.spw-sec-head { text-align: center; margin-bottom: 64px; }

/* Botones */
.spw-btn {
    display: inline-flex; align-items: center; gap: 10px;
    font-family: 'DM Sans', sans-serif; font-weight: 600; font-size: 15px;
    padding: 15px 30px; border-radius: 8px; border: none; cursor: pointer;
    transition: all .22s ease; white-space: nowrap;
}
.spw-btn-orange { background: var(--orange); color: #fff; }
.spw-btn-orange:hover { background: var(--orange-dk); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(242,100,25,.35); }
.spw-btn-ghost { background: rgba(255,255,255,.1); color: #fff; border: 1.5px solid rgba(255,255,255,.3); }
.spw-btn-ghost:hover { background: rgba(255,255,255,.2); }
.spw-btn-blue { background: var(--blue-mid); color: #fff; }
.spw-btn-blue:hover { background: var(--blue); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(30,94,219,.35); }
.spw-btn-outline-blue { background: transparent; color: var(--blue-mid); border: 2px solid var(--blue-mid); }
.spw-btn-outline-blue:hover { background: var(--blue-mid); color: white; }
.spw-btn-lg { padding: 18px 36px; font-size: 16px; }
.spw-btn-wa { background: #25D366; color: white !important; font-weight: 700; }
.spw-btn-wa:hover { background: #128C7E; transform: translateY(-2px); box-shadow: 0 8px 24px rgba(37,211,102,.35); }

/* Animaciones */
@keyframes blink { 0%,100% { opacity: 1; } 50% { opacity: .3; } }
@keyframes pulse-orange { 
    0%,100% { box-shadow: 0 0 0 0 rgba(242,100,25,.4); } 
    50% { box-shadow: 0 0 0 8px rgba(242,100,25,0); } 
}

/* Responsive */
@media (max-width: 900px) {
    .spw-grid-2 { grid-template-columns: 1fr !important; }
    .spw-grid-4 { grid-template-columns: repeat(2, 1fr) !important; }
    .spw-flex-wrap { flex-wrap: wrap; }
    .spw-hide-mobile { display: none !important; }
}
@media (max-width: 600px) {
    .spw-section { padding: 64px 20px !important; }
    .spw-btn { width: 100%; justify-content: center; }
}

/* WhatsApp flotante */
.spw-wa-float {
    position: fixed; bottom: 28px; right: 28px; z-index: 9999;
}
.spw-wa-float a {
    display: flex; align-items: center; gap: 10px;
    background: #25D366; color: white; padding: 14px 22px;
    border-radius: 99px; font-weight: 700; font-size: 14px;
    text-decoration: none; box-shadow: 0 8px 28px rgba(37,211,102,.45);
    transition: all .25s;
}
.spw-wa-float a:hover { background: #128C7E; transform: scale(1.05); }
.spw-wa-float i { font-size: 22px; }
@media (max-width: 600px) {
    .spw-wa-float a span { display: none; }
    .spw-wa-float a { padding: 14px; border-radius: 50%; }
}