/* FROGGY PIXEL — CONTACTO PAGE — PREMIUM DESIGN SYSTEM
   Tokens, keyframes, and base utilities inherited from landing.css
   All classes prefixed with ct- to avoid collisions
   ═══════════════════════════════════════════════════════════════ */


/* ═══════════════════════════════════════
   CONTACT-SPECIFIC KEYFRAMES
   ═══════════════════════════════════════ */
@keyframes ctFadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes ctSlideL{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}
@keyframes ctSlideR{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
@keyframes ctSlideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@keyframes ctScaleIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
@keyframes ctPulseGlow{0%,100%{box-shadow:0 0 20px rgba(124,58,237,.2),0 0 40px rgba(124,58,237,.1)}50%{box-shadow:0 0 35px rgba(124,58,237,.35),0 0 60px rgba(124,58,237,.18)}}
@keyframes ctShimmer{0%{left:-100%}35%{left:100%}100%{left:100%}}
@keyframes ctConnectorPulse{0%{top:-3px;opacity:0}12%{opacity:.9}88%{opacity:.9}100%{top:calc(100% - 3px);opacity:0}}
@keyframes ctNodeGlow{0%,100%{box-shadow:0 0 6px rgba(124,58,237,.35);transform:translate(-50%,-50%) scale(1)}50%{box-shadow:0 0 14px rgba(124,58,237,.6);transform:translate(-50%,-50%) scale(1.2)}}

/* Active nav link indicator */
.header-nav-active{color:var(--p)!important}
.header-nav-active::after{width:100%!important;background:linear-gradient(90deg,var(--p),var(--s),var(--a))!important}


/* ═══════════════════════════════════════
   §1  HERO — ENCABEZADO + CTAs
   ═══════════════════════════════════════ */
.ct-hero-section{
    position:relative;min-height:72vh;display:flex;align-items:center;justify-content:center;
    padding:100px 2rem 4rem;overflow:hidden;
    background:linear-gradient(135deg,#fff 0%,#f8f4ff 50%,#f0f9ff 100%)}

/* Blobs — matching landing hero exactly */
.ct-hero-deco-1{position:absolute;width:480px;height:480px;background:radial-gradient(circle at 30% 70%,rgba(124,58,237,.16),transparent 60%);border-radius:40% 60% 70% 30%/40% 50% 60% 50%;top:-180px;left:-80px;animation:blobR 20s ease-in-out infinite;filter:blur(55px);opacity:.6}
.ct-hero-deco-2{position:absolute;width:380px;height:380px;background:radial-gradient(circle at 70% 30%,rgba(59,130,246,.14),transparent 60%);border-radius:60% 40% 30% 70%/60% 30% 70% 40%;top:40%;right:-130px;animation:blobR 25s ease-in-out infinite reverse;filter:blur(55px);opacity:.5}
.ct-hero-deco-3{position:absolute;width:320px;height:320px;background:radial-gradient(circle at 50% 50%,rgba(16,185,129,.1),transparent 60%);border-radius:30% 70% 70% 30%/30% 30% 70% 70%;bottom:-80px;left:30%;animation:blobR 22s ease-in-out infinite;filter:blur(55px);opacity:.4}
.ct-hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(124,58,237,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,.03) 1px,transparent 1px);background-size:60px 60px;z-index:1}

.ct-hero-content{
    position:relative;z-index:10;max-width:780px;width:100%;
    display:flex;flex-direction:column;align-items:center;text-align:center;gap:2rem}

/* Badge */
.ct-hero-badge{
    display:inline-flex;gap:.5rem;
    background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(59,130,246,.1));
    border:1.5px solid rgba(124,58,237,.3);border-radius:var(--r-f);
    padding:.5rem 1.1rem;font-size:.75rem;font-weight:600;color:var(--p);
    backdrop-filter:blur(10px);animation:ctSlideDown .8s ease-out .1s both}

/* H1 */
.ct-hero-h1{
    font-family:var(--fd);font-size:clamp(2rem,5vw,3.25rem);font-weight:900;
    line-height:1.18;letter-spacing:-.035em;padding-bottom:.08em;
    background:linear-gradient(135deg,#4c1d95,#5b21b6 30%,#1e3a8a 60%,#3730a3);
    background-size:200% 200%;-webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:ctSlideDown 1s ease-out .2s both,gradShift 8s ease-in-out infinite}

/* Subtitle */
.ct-hero-sub{
    font-size:1.05rem;line-height:1.7;color:var(--n6);max-width:560px;
    font-weight:400;animation:ctFadeUp 1s ease-out .3s both}

.ct-hero-text{display:flex;flex-direction:column;align-items:center;gap:.75rem}


/* ── CTAs ROW — two big action cards ── */
.ct-ctas-row{
    display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;width:100%;max-width:620px;
    animation:ctFadeUp 1s ease-out .45s both}

.ct-cta-card{
    text-decoration:none;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);
    border:2px solid rgba(124,58,237,.12);border-radius:var(--r-xl);
    padding:1.5rem 1.25rem;transition:all .5s cubic-bezier(.34,1.56,.64,1);
    box-shadow:0 8px 32px rgba(0,0,0,.06),0 2px 8px rgba(124,58,237,.05);
    position:relative;overflow:hidden;cursor:pointer;display:block}

/* Subtle lift on hover — no shimmer for contact page (cleaner) */
.ct-cta-card::before{display:none}

.ct-cta-card:hover{
    transform:translateY(-4px);border-color:rgba(124,58,237,.3);
    box-shadow:0 12px 36px rgba(124,58,237,.12),0 4px 12px rgba(0,0,0,.06)}

/* WhatsApp variant */
.ct-cta-whatsapp{border-color:rgba(37,211,102,.15)}
.ct-cta-whatsapp:hover{border-color:rgba(37,211,102,.4);box-shadow:0 16px 48px rgba(37,211,102,.12),0 4px 16px rgba(0,0,0,.08)}
.ct-cta-whatsapp::before{background:linear-gradient(90deg,transparent,rgba(37,211,102,.06),transparent)}

.ct-cta-inner{display:flex;align-items:center;gap:1rem}

.ct-cta-icon{
    width:52px;height:52px;background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(139,92,246,.06));
    border-radius:var(--r-l);display:flex;align-items:center;justify-content:center;
    color:var(--p);flex-shrink:0;transition:all var(--t)}
.ct-cta-card:hover .ct-cta-icon{transform:scale(1.1) rotate(-6deg)}

.ct-cta-icon-wa{background:linear-gradient(135deg,rgba(37,211,102,.12),rgba(37,211,102,.05));color:#25d366}
.ct-cta-whatsapp:hover .ct-cta-icon-wa{background:linear-gradient(135deg,rgba(37,211,102,.2),rgba(37,211,102,.1))}

.ct-cta-text{display:flex;flex-direction:column;text-align:left;flex:1;min-width:0}
.ct-cta-label{font-size:1rem;font-weight:700;color:var(--n8);font-family:var(--fd)}
.ct-cta-detail{font-size:.78rem;color:var(--n5);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.ct-cta-arrow{color:var(--n4);flex-shrink:0;transition:all var(--t)}
.ct-cta-card:hover .ct-cta-arrow{color:var(--p);transform:translate(3px,-3px)}
.ct-cta-whatsapp:hover .ct-cta-arrow{color:#25d366}

@media(max-width:576px){
    .ct-ctas-row{grid-template-columns:1fr}
    .ct-hero-section{min-height:auto;padding:90px 1.25rem 3rem}
}


/* ── EXPECTATIONS ── */
.ct-expectations{
    display:flex;gap:2rem;flex-wrap:wrap;justify-content:center;
    animation:ctFadeUp 1s ease-out .6s both}
.ct-expect-item{
    display:flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;
    color:var(--n5);transition:all var(--t)}
.ct-expect-item:hover{color:var(--p);transform:translateY(-2px)}
@media(max-width:576px){.ct-expectations{flex-direction:column;align-items:center;gap:.75rem}}


/* ═══════════════════════════════════════
   §2  MOTIVOS DE CONTACTO
   ═══════════════════════════════════════ */
.ct-motivos-section{
    padding:5rem 1.5rem;
    background:linear-gradient(180deg,#f5f3ff,#fff 50%,#f8f4ff);
    position:relative;overflow:hidden}
.ct-motivos-section::before{
    content:'';position:absolute;inset:0;
    background:radial-gradient(circle at 30% 0%,rgba(124,58,237,.06),transparent 50%),
               radial-gradient(circle at 70% 100%,rgba(59,130,246,.05),transparent 50%);
    z-index:0;pointer-events:none}

.ct-motivos-header{text-align:center;position:relative;z-index:1;margin-bottom:3rem}

.ct-motivos-grid{
    display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem;
    max-width:1200px;margin:0 auto;position:relative;z-index:1}

.ct-motivo-card{
    background:linear-gradient(135deg,#fff,rgba(249,250,251,.92));backdrop-filter:blur(10px);
    border:2px solid rgba(124,58,237,.1);border-radius:var(--r-xl);
    padding:1.75rem 1.25rem;text-align:center;
    transition:all .5s cubic-bezier(.34,1.56,.64,1);cursor:default;
    box-shadow:0 4px 20px rgba(0,0,0,.05),0 1px 6px rgba(124,58,237,.04);
    position:relative;overflow:hidden;animation:ctFadeUp .8s ease-out both}
.ct-motivo-card:nth-child(1){animation-delay:.15s}
.ct-motivo-card:nth-child(2){animation-delay:.22s}
.ct-motivo-card:nth-child(3){animation-delay:.29s}
.ct-motivo-card:nth-child(4){animation-delay:.36s}
.ct-motivo-card:nth-child(5){animation-delay:.43s}

/* Decorative glow */
.ct-motivo-card::before{
    content:'';position:absolute;top:-50%;right:-50%;width:160px;height:160px;
    background:radial-gradient(circle,rgba(124,58,237,.08),transparent 70%);
    border-radius:50%;opacity:0;transition:all .5s cubic-bezier(.34,1.56,.64,1)}
.ct-motivo-card:hover::before{opacity:1;top:-30%;right:-30%}

.ct-motivo-card:hover{
    transform:translateY(-5px);border-color:rgba(124,58,237,.25);
    box-shadow:0 12px 36px rgba(124,58,237,.1),0 4px 12px rgba(0,0,0,.05)}

.ct-motivo-icon{
    width:52px;height:52px;
    background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(139,92,246,.06));
    border-radius:var(--r-l);display:flex;align-items:center;justify-content:center;
    color:var(--p);margin:0 auto 1rem;transition:all var(--t)}
.ct-motivo-card:hover .ct-motivo-icon{transform:scale(1.15) rotate(-8deg);
    background:linear-gradient(135deg,rgba(124,58,237,.2),rgba(139,92,246,.15))}

.ct-motivo-title{font-size:.95rem;font-weight:700;color:var(--n8);margin-bottom:.4rem}
.ct-motivo-desc{font-size:.78rem;color:var(--n5);line-height:1.55}

@media(max-width:1024px){.ct-motivos-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.ct-motivos-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.ct-motivos-grid{grid-template-columns:1fr}}


/* ═══════════════════════════════════════
   §3  INFORMACIÓN DE CONTACTO + CORPORATIVA
   ═══════════════════════════════════════ */
.ct-info-section{
    padding:5rem 1.5rem;
    background:linear-gradient(135deg,#fff 0%,#f8f4ff 40%,#f0f9ff 100%);
    position:relative;overflow:hidden}
.ct-info-section::before{
    content:'';position:absolute;inset:0;
    background:radial-gradient(circle at 25% 50%,rgba(124,58,237,.06),transparent 50%),
               radial-gradient(circle at 75% 50%,rgba(59,130,246,.05),transparent 50%);
    z-index:0;pointer-events:none}

.ct-info-wrapper{
    max-width:1100px;margin:0 auto;position:relative;z-index:1;
    display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:flex-start}

.ct-info-h2{font-size:clamp(1.5rem,3vw,2rem)}

/* Left column — contact info */
.ct-info-left{animation:ctSlideL 1s ease-out .2s both}
.ct-info-items{display:flex;flex-direction:column;gap:1.25rem;margin-top:1.5rem}

.ct-info-row{
    display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;
    background:rgba(255,255,255,.88);backdrop-filter:blur(12px);
    border:1.5px solid rgba(124,58,237,.08);border-radius:var(--r-l);
    transition:all var(--t);box-shadow:0 2px 10px rgba(0,0,0,.04)}
.ct-info-row:hover{
    border-color:rgba(124,58,237,.22);transform:translateX(4px);
    box-shadow:0 6px 20px rgba(124,58,237,.08)}

.ct-info-icon{
    width:40px;height:40px;
    background:linear-gradient(135deg,rgba(124,58,237,.1),rgba(139,92,246,.05));
    border-radius:var(--r-m);display:flex;align-items:center;justify-content:center;
    color:var(--p);flex-shrink:0}
.ct-info-icon-wa{background:linear-gradient(135deg,rgba(37,211,102,.1),rgba(37,211,102,.05));color:#25d366}

.ct-info-label{display:block;font-size:.7rem;font-weight:700;color:var(--n4);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.ct-info-value{display:block;font-size:.9rem;font-weight:600;color:var(--n8)}
.ct-info-link{color:var(--p);text-decoration:none;transition:color var(--t)}
.ct-info-link:hover{color:var(--s)}

/* Right column — corporate */
.ct-info-right{animation:ctSlideR 1s ease-out .2s both}
.ct-corp-items{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;margin-bottom:1.5rem}
.ct-corp-row{
    display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;
    background:rgba(255,255,255,.85);border:1.5px solid rgba(124,58,237,.06);
    border-radius:var(--r-m);transition:all var(--t)}
.ct-corp-row:hover{border-color:rgba(124,58,237,.18);transform:translateX(3px)}
.ct-corp-label{display:block;font-size:.65rem;font-weight:700;color:var(--n4);text-transform:uppercase;letter-spacing:.06em;margin-bottom:1px}
.ct-corp-value{display:block;font-size:.88rem;font-weight:600;color:var(--n8)}

/* Legal links */
.ct-legal-links{display:flex;flex-direction:column;gap:.5rem}
.ct-legal-link{
    display:inline-flex;align-items:center;gap:.5rem;
    font-size:.82rem;font-weight:600;color:var(--p);text-decoration:none;
    padding:.5rem .75rem;border-radius:var(--r-m);
    transition:all var(--t);background:rgba(124,58,237,.04)}
.ct-legal-link:hover{background:rgba(124,58,237,.1);transform:translateX(4px);color:var(--s)}

@media(max-width:768px){.ct-info-wrapper{grid-template-columns:1fr}}


/* ═══════════════════════════════════════
   §4  BLOQUE DE CONFIANZA
   ═══════════════════════════════════════ */
.ct-trust-section{
    padding:3.5rem 1.5rem;
    background:linear-gradient(135deg,#fff,rgba(248,250,252,.95));
    border-top:1px solid rgba(124,58,237,.08);border-bottom:1px solid rgba(124,58,237,.08)}

.ct-trust-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;
    max-width:1200px;margin:0 auto}

.ct-trust-item{
    display:flex;align-items:flex-start;gap:1rem;
    padding:1.5rem 1.25rem;
    background:linear-gradient(135deg,rgba(124,58,237,.05),rgba(59,130,246,.03));
    border:1.5px solid rgba(124,58,237,.1);border-radius:var(--r-xl);
    transition:all .5s cubic-bezier(.34,1.56,.64,1);
    box-shadow:0 4px 16px rgba(0,0,0,.04);animation:ctFadeUp .8s ease-out both}
.ct-trust-item:nth-child(1){animation-delay:.1s}
.ct-trust-item:nth-child(2){animation-delay:.18s}
.ct-trust-item:nth-child(3){animation-delay:.26s}
.ct-trust-item:nth-child(4){animation-delay:.34s}

.ct-trust-item:hover{
    border-color:rgba(124,58,237,.2);transform:translateY(-3px);
    box-shadow:0 8px 24px rgba(124,58,237,.08)}

.ct-trust-icon{
    width:48px;height:48px;
    background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(139,92,246,.06));
    border-radius:var(--r-l);display:flex;align-items:center;justify-content:center;
    color:var(--p);flex-shrink:0;transition:all var(--t)}
.ct-trust-item:hover .ct-trust-icon{transform:scale(1.1) rotate(-6deg)}

.ct-trust-title{display:block;font-size:.88rem;font-weight:700;color:var(--n8);margin-bottom:.25rem}
.ct-trust-desc{display:block;font-size:.75rem;color:var(--n5);line-height:1.5}

@media(max-width:1024px){.ct-trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.ct-trust-grid{grid-template-columns:1fr}}


/* ═══════════════════════════════════════
   §5  B2B SIGNAL
   ═══════════════════════════════════════ */
.ct-b2b-section{
    position:relative;padding:4rem 1.5rem;overflow:hidden;
    background:linear-gradient(135deg,#0a0e27,#1a1f3a 40%,#0f2d4a 80%,#0a0e27)}

.ct-b2b-glow-1{
    position:absolute;width:350px;height:350px;
    background:radial-gradient(circle,rgba(124,58,237,.2),transparent 70%);
    border-radius:50%;top:-100px;left:15%;filter:blur(60px);
    animation:aaGlow1 6s ease-in-out infinite;pointer-events:none}
.ct-b2b-glow-2{
    position:absolute;width:300px;height:300px;
    background:radial-gradient(circle,rgba(59,130,246,.15),transparent 70%);
    border-radius:50%;bottom:-80px;right:15%;filter:blur(60px);
    animation:aaGlow2 7s ease-in-out infinite;pointer-events:none}

.ct-b2b-inner{position:relative;z-index:1;max-width:800px;margin:0 auto}
.ct-b2b-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.25rem}

.ct-b2b-icon{
    width:80px;height:80px;
    background:linear-gradient(135deg,rgba(124,58,237,.2),rgba(59,130,246,.15));
    border:2px solid rgba(124,58,237,.3);border-radius:var(--r-xl);
    display:flex;align-items:center;justify-content:center;color:var(--p4);
    box-shadow:0 0 24px rgba(124,58,237,.2)}

.ct-b2b-title{
    font-family:var(--fd);font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:900;
    color:#fff;line-height:1.15;letter-spacing:-.03em;
    text-shadow:0 0 30px rgba(124,58,237,.3)}

.ct-b2b-desc{font-size:1rem;color:rgba(255,255,255,.75);line-height:1.7;max-width:560px;font-weight:400}

.ct-b2b-btn{
    display:inline-flex;align-items:center;gap:.6rem;
    background:linear-gradient(135deg,var(--p),var(--s))!important;
    color:#fff;font-weight:700;font-size:.92rem;
    padding:.85rem 2rem;border-radius:var(--r-l);border:none;
    text-decoration:none;cursor:pointer;
    box-shadow:0 12px 40px rgba(124,58,237,.35);
    transition:all .5s cubic-bezier(.34,1.56,.64,1);
    position:relative;overflow:hidden}
.ct-b2b-btn::before{display:none}
.ct-b2b-btn:hover{transform:translateY(-3px);box-shadow:0 14px 48px rgba(124,58,237,.4)}


/* ═══════════════════════════════════════
   §6  MINI FORMULARIO
   ═══════════════════════════════════════ */
.ct-form-section{
    padding:5rem 1.5rem;
    background:linear-gradient(180deg,#fff,#f5f3ff 50%,#f0f9ff);
    position:relative;overflow:hidden}
.ct-form-section::before{
    content:'';position:absolute;inset:0;
    background:radial-gradient(circle at 50% 0%,rgba(124,58,237,.06),transparent 40%);
    z-index:0;pointer-events:none}

.ct-form-wrapper{max-width:720px;margin:0 auto;position:relative;z-index:1}
.ct-form-header{text-align:center;margin-bottom:2.5rem}

.ct-form-body{
    background:rgba(255,255,255,.92);backdrop-filter:blur(16px);
    border:2px solid rgba(124,58,237,.1);border-radius:var(--r-xl);
    padding:2.5rem;box-shadow:0 12px 48px rgba(0,0,0,.06),0 2px 12px rgba(124,58,237,.05);
    display:flex;flex-direction:column;gap:1.25rem;
    animation:ctScaleIn .8s ease-out .2s both}

.ct-form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
@media(max-width:576px){.ct-form-row-2{grid-template-columns:1fr}}

.ct-form-field{display:flex;flex-direction:column;gap:.4rem}

.ct-form-label{
    font-size:.75rem;font-weight:700;color:var(--n5);
    text-transform:uppercase;letter-spacing:.06em;font-family:var(--fd)}

.ct-form-input{
    width:100%;padding:.75rem 1rem;
    background:rgba(255,255,255,.95);border:1.5px solid rgba(124,58,237,.12);
    border-radius:var(--r-m);font-size:.9rem;font-family:var(--fb);
    color:var(--n8);font-weight:500;outline:none;
    transition:all var(--t);box-shadow:0 2px 8px rgba(0,0,0,.03)}
.ct-form-input:focus{
    border-color:rgba(124,58,237,.4);
    box-shadow:0 4px 16px rgba(124,58,237,.1),0 0 0 3px rgba(124,58,237,.06);
    transform:translateY(-1px)}
.ct-form-input::placeholder{color:var(--n4);font-weight:400}

.ct-form-textarea{
    width:100%;padding:.75rem 1rem;resize:vertical;min-height:100px;
    background:rgba(255,255,255,.95);border:1.5px solid rgba(124,58,237,.12);
    border-radius:var(--r-m);font-size:.9rem;font-family:var(--fb);
    color:var(--n8);font-weight:500;outline:none;
    transition:all var(--t);box-shadow:0 2px 8px rgba(0,0,0,.03);line-height:1.6}
.ct-form-textarea:focus{
    border-color:rgba(124,58,237,.4);
    box-shadow:0 4px 16px rgba(124,58,237,.1),0 0 0 3px rgba(124,58,237,.06);
    transform:translateY(-1px)}
.ct-form-textarea::placeholder{color:var(--n4);font-weight:400}

/* Dropdown override to match design system */
.ct-form-dropdown .Select-control,
.ct-form-dropdown .dash-dropdown .Select-control{
    border:1.5px solid rgba(124,58,237,.12)!important;border-radius:var(--r-m)!important;
    background:rgba(255,255,255,.95)!important;box-shadow:0 2px 8px rgba(0,0,0,.03)!important;
    font-family:var(--fb)!important}

.ct-form-actions{display:flex;align-items:center;gap:1.25rem;margin-top:.5rem}

.ct-form-btn{
    background:linear-gradient(135deg,var(--p),var(--s))!important;
    color:#fff!important;font-weight:700!important;
    padding:.75rem 2rem!important;border-radius:var(--r-l)!important;
    border:none!important;cursor:pointer;
    font-size:.9rem!important;
    box-shadow:0 8px 28px rgba(124,58,237,.3);
    transition:all .5s cubic-bezier(.34,1.56,.64,1)!important;
    position:relative;overflow:hidden}
.ct-form-btn::before{display:none}
.ct-form-btn:hover{
    transform:translateY(-2px)!important;
    box-shadow:0 10px 32px rgba(124,58,237,.35)!important}

.ct-form-status{flex:1}
.ct-form-status-msg{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600}


/* ═══════════════════════════════════════
   §7  SIGUIENTE PASO — POST-CONTACTO
   ═══════════════════════════════════════ */
.ct-steps-section{
    padding:5rem 1.5rem;
    background:linear-gradient(180deg,#f5f0ff,#fff,#eef5ff);
    position:relative;overflow:hidden}
.ct-steps-section::before{
    content:'';position:absolute;inset:0;
    background:radial-gradient(circle at 50% -20%,rgba(124,58,237,.08),transparent 50%);
    z-index:0}

.ct-steps-header{text-align:center;position:relative;z-index:1;margin-bottom:3rem}

.ct-steps-row{
    display:flex;align-items:stretch;gap:0;
    max-width:1000px;margin:0 auto;position:relative;z-index:1}

.ct-step-card{
    flex:1;background:linear-gradient(135deg,#fff,rgba(249,250,251,.9));
    border:2px solid rgba(124,58,237,.12);border-radius:var(--r-xl);
    padding:2rem 1.5rem;text-align:center;
    transition:all .5s cubic-bezier(.34,1.56,.64,1);
    box-shadow:0 8px 32px rgba(124,58,237,.08);
    position:relative;overflow:hidden;animation:ctFadeUp .8s ease-out both}
.ct-step-card:nth-child(1){animation-delay:.2s}
.ct-step-card:nth-child(3){animation-delay:.4s}
.ct-step-card:nth-child(5){animation-delay:.6s}

/* Decorative glow */
.ct-step-card::before{
    content:'';position:absolute;top:0;right:0;width:150px;height:150px;
    background:linear-gradient(135deg,var(--p),var(--s));opacity:.04;
    border-radius:50%;filter:blur(50px);transition:all var(--t)}
.ct-step-card:hover::before{width:200px;height:200px;opacity:.1}

.ct-step-card:hover{
    transform:translateY(-8px);border-color:rgba(124,58,237,.3);
    box-shadow:0 20px 52px rgba(124,58,237,.14),0 0 20px rgba(124,58,237,.06)}

.ct-step-num{
    font-family:var(--fd);font-size:2rem;font-weight:900;
    background:linear-gradient(135deg,var(--p),var(--s));
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;line-height:1;
    margin-bottom:.5rem;opacity:.2}

.ct-step-icon{
    width:56px;height:56px;
    background:linear-gradient(135deg,var(--p),var(--s));
    border-radius:var(--r-l);display:flex;align-items:center;justify-content:center;
    color:#fff;margin:0 auto 1rem;
    box-shadow:0 8px 24px rgba(124,58,237,.3);
    animation:ctPulseGlow 3.5s ease-in-out infinite;transition:all var(--t)}
.ct-step-card:hover .ct-step-icon{transform:scale(1.1)}

.ct-step-title{font-size:1rem;font-weight:700;color:var(--n8);margin-bottom:.5rem}
.ct-step-desc{font-size:.85rem;color:var(--n5);line-height:1.6}

/* Connector between steps */
.ct-step-connector{
    width:48px;min-width:48px;display:flex;align-items:center;justify-content:center;
    position:relative;flex-shrink:0}

.ct-step-connector::before{
    content:'';position:absolute;top:50%;left:0;right:0;height:3px;
    transform:translateY(-50%);
    background:linear-gradient(90deg,rgba(124,58,237,.06),rgba(124,58,237,.45),rgba(59,130,246,.45),rgba(59,130,246,.06));
    border-radius:2px;box-shadow:0 0 10px rgba(124,58,237,.12)}

.ct-step-connector::after{
    content:'';position:absolute;right:-1px;top:50%;transform:translateY(-50%);
    border-left:8px solid var(--s5);border-top:5px solid transparent;
    border-bottom:5px solid transparent;
    filter:drop-shadow(0 0 6px rgba(59,130,246,.4));z-index:2}

@media(max-width:768px){
    .ct-steps-row{flex-direction:column;gap:0;max-width:400px}
    .ct-step-connector{width:100%;min-width:unset;height:36px;min-height:36px}
    .ct-step-connector::before{
        top:0;bottom:0;left:50%;right:auto;width:3px;height:100%;
        transform:translateX(-50%);
        background:linear-gradient(180deg,rgba(124,58,237,.06),rgba(124,58,237,.45),rgba(59,130,246,.45),rgba(59,130,246,.06))}
    .ct-step-connector::after{
        right:auto;top:auto;bottom:-1px;left:50%;transform:translateX(-50%);
        border-left:5px solid transparent;border-right:5px solid transparent;
        border-top:8px solid var(--s5);border-bottom:none}
}


/* ═══════════════════════════════════════
   §8  AYUDA RÁPIDA
   ═══════════════════════════════════════ */
.ct-help-section{
    padding:4rem 1.5rem;
    background:linear-gradient(135deg,#fff,#f8f4ff 50%,#f0f9ff);
    border-top:1px solid rgba(124,58,237,.08)}

.ct-help-wrapper{
    max-width:1100px;margin:0 auto;
    display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:center}

.ct-help-left{animation:ctSlideL .8s ease-out .2s both}
.ct-help-text{display:flex;flex-direction:column;gap:.5rem}
.ct-help-title{font-family:var(--fd);font-size:1.5rem;font-weight:800;color:var(--n8);line-height:1.2}
.ct-help-sub{font-size:.9rem;color:var(--n5);line-height:1.6;font-weight:400}

.ct-help-links{display:flex;flex-direction:column;gap:.75rem;animation:ctSlideR .8s ease-out .2s both}

.ct-help-link{
    display:flex;align-items:center;gap:1rem;
    padding:1rem 1.25rem;text-decoration:none;
    background:rgba(255,255,255,.88);backdrop-filter:blur(12px);
    border:1.5px solid rgba(124,58,237,.08);border-radius:var(--r-l);
    transition:all .4s cubic-bezier(.34,1.56,.64,1);
    box-shadow:0 2px 10px rgba(0,0,0,.04)}
.ct-help-link:hover{
    border-color:rgba(124,58,237,.2);transform:translateX(4px);
    box-shadow:0 6px 18px rgba(124,58,237,.08)}

.ct-help-link-icon{
    width:40px;height:40px;
    background:linear-gradient(135deg,rgba(124,58,237,.1),rgba(139,92,246,.05));
    border-radius:var(--r-m);display:flex;align-items:center;justify-content:center;
    color:var(--p);flex-shrink:0;transition:all var(--t)}
.ct-help-link:hover .ct-help-link-icon{transform:scale(1.1) rotate(-6deg)}

.ct-help-link-label{display:block;font-size:.9rem;font-weight:700;color:var(--n8)}
.ct-help-link-desc{display:block;font-size:.75rem;color:var(--n5);font-weight:500;margin-top:1px}

.ct-help-link-arrow{color:var(--n4);flex-shrink:0;margin-left:auto;transition:all var(--t)}
.ct-help-link:hover .ct-help-link-arrow{color:var(--p);transform:translateX(4px)}

@media(max-width:768px){
    .ct-help-wrapper{grid-template-columns:1fr}
    .ct-help-left{text-align:center}
    .ct-help-text{align-items:center}
}


/* ═══════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════ */
@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important}
}