/* ══════════════════════════════════════════════════════════
   Huntex — Página Serviços v2
   ══════════════════════════════════════════════════════════ */

/* ─── Reset & Vars ──────────────────────────────────────── */
.page-servicos-v2 *, .page-servicos-v2 *::before, .page-servicos-v2 *::after {
    box-sizing: border-box;
}
.page-servicos-v2 {
    --sv-navy:    #020407;
    --sv-blue:    #0057ff;
    --sv-cyan:    #00d4ff;
    --sv-purple:  #7c3aed;
    --sv-teal:    #0d9488;
    --sv-pink:    #db2777;
    --sv-orange:  #ea580c;
    --sv-gold:    #d97706;
    --sv-text:    #e2e8f0;
    --sv-muted:   #94a3b8;
    --sv-border:  rgba(255,255,255,.07);
    --sv-card:    rgba(255,255,255,.03);
    --sv-grad:    linear-gradient(90deg,#0057ff,#00d4ff);
    background: var(--sv-navy);
    color: var(--sv-text);
    overflow-x: hidden;
}

/* ─── Utilitários ───────────────────────────────────────── */
.sv-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: .72rem; font-weight: 700; letter-spacing: .14em;
    text-transform: uppercase; color: var(--sv-cyan); margin-bottom: 14px;
}
.sv-eyebrow::before {
    content: ''; display: inline-block; width: 22px; height: 2px;
    background: var(--sv-cyan); border-radius: 2px; flex-shrink: 0;
}
.sv-h1 { font-size: clamp(2.4rem,6vw,4.2rem); font-weight:900; line-height:1.06; color:#fff; margin:0 0 24px; }
.sv-h2 { font-size: clamp(1.8rem,3.5vw,2.8rem); font-weight:800; line-height:1.15; color:#fff; margin:0 0 18px; }
.sv-lead { font-size:1.1rem; color:var(--sv-muted); line-height:1.8; max-width:580px; margin-bottom:36px; }
.sv-desc { color:var(--sv-muted); line-height:1.8; font-size:1rem; margin-bottom:18px; }
.sv-gradient { background:var(--sv-grad); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.sv-req { color:var(--sv-blue); }

/* ══════════════════════════════════════════════════════════
   HERO
   ══════════════════════════════════════════════════════════ */
.sv-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: var(--sv-navy);
}

/* Spline fullbleed */
.sv-spline-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}
.sv-hero-fallback {
    position: absolute; inset: 0; z-index: 0; display: none;
    background: radial-gradient(ellipse 80% 60% at 30% 40%, rgba(0,87,255,.25) 0%, transparent 70%),
                radial-gradient(ellipse 60% 50% at 70% 60%, rgba(0,212,255,.15) 0%, transparent 70%),
                var(--sv-navy);
}
.sv-hero-overlay {
    position: absolute; inset: 0; z-index: 1; pointer-events: none;
    background: linear-gradient(
        to bottom,
        rgba(2,4,7,.45) 0%,
        rgba(2,4,7,.3) 40%,
        rgba(2,4,7,.6) 80%,
        rgba(2,4,7,1) 100%
    );
}

.sv-hero-content {
    position: relative; z-index: 2;
    padding-top: 160px; padding-bottom: 120px;
    max-width: 820px;
}

.sv-hero-label {
    display: inline-flex; align-items: center; gap: 8px;
    background: rgba(0,87,255,.1); border: 1px solid rgba(0,87,255,.25);
    border-radius: 99px; padding: 6px 16px;
    font-size: .76rem; font-weight: 700; color: var(--sv-cyan);
    letter-spacing: .07em; text-transform: uppercase; margin-bottom: 24px;
}
.sv-hero-label i { font-size: 1rem; }

.sv-hero-cta { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-bottom: 52px; }
.sv-link {
    display: flex; align-items: center; gap: 8px;
    color: var(--sv-muted); font-size: .9rem; text-decoration: none;
    cursor: pointer; transition: color .2s;
}
.sv-link:hover { color: var(--sv-cyan); }
.sv-link i { font-size: 1.1rem; }

.sv-hero-stats {
    display: flex; align-items: center; gap: 28px; flex-wrap: wrap;
}
.sv-stat { text-align: center; }
.sv-stat-n { display: block; font-size: 1.8rem; font-weight: 900; color: #fff; line-height: 1; }
.sv-stat-n sup { font-size: .85rem; color: var(--sv-cyan); }
.sv-stat-l { display: block; font-size: .7rem; color: var(--sv-muted); margin-top: 4px; text-transform: uppercase; letter-spacing: .05em; }
.sv-stat-sep { width: 1px; height: 36px; background: var(--sv-border); }

.sv-scroll-indicator {
    position: absolute; bottom: 32px; left: 50%; transform: translateX(-50%);
    z-index: 2; display: flex; flex-direction: column; align-items: center;
}
.sv-scroll-line {
    width: 1px; height: 48px;
    background: linear-gradient(to bottom, transparent, rgba(0,212,255,.5), transparent);
    animation: sv-scroll-pulse 2s ease-in-out infinite;
}
@keyframes sv-scroll-pulse {
    0%, 100% { opacity: 0; transform: scaleY(.5); }
    50%       { opacity: 1; transform: scaleY(1); }
}

/* ══════════════════════════════════════════════════════════
   SECTION HEADER
   ══════════════════════════════════════════════════════════ */
.sv-section-header { text-align: center; margin-bottom: 60px; }
.sv-section-header .sv-eyebrow::before { display: none; }
.sv-section-sub { color: var(--sv-muted); font-size: 1rem; line-height: 1.7; max-width: 560px; margin: 0 auto; }

/* ══════════════════════════════════════════════════════════
   GRID DE SERVIÇOS
   ══════════════════════════════════════════════════════════ */
.sv-grid-section { padding: 100px 0; }

.sv-services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* Card base */
.sv-card {
    position: relative;
    background: var(--sv-card);
    border: 1px solid var(--sv-border);
    border-radius: 18px;
    padding: 26px 22px;
    overflow: hidden;
    display: flex; flex-direction: column; gap: 0;
    transition: transform .25s, border-color .25s;
    cursor: default;
}
.sv-card:hover { transform: translateY(-5px); }
.sv-card-glow {
    position: absolute; inset: -1px; border-radius: inherit;
    pointer-events: none; opacity: 0; transition: opacity .3s;
    background: linear-gradient(135deg, rgba(0,87,255,.12), transparent 55%);
}
.sv-card:hover .sv-card-glow { opacity: 1; }

/* Cores por tipo */
.sv-card--blue:hover   { border-color: rgba(0,87,255,.35); }
.sv-card--cyan:hover   { border-color: rgba(0,212,255,.3); }
.sv-card--purple:hover { border-color: rgba(124,58,237,.3); }
.sv-card--pink:hover   { border-color: rgba(219,39,119,.3); }
.sv-card--teal:hover   { border-color: rgba(13,148,136,.3); }
.sv-card--orange:hover { border-color: rgba(234,88,12,.3); }
.sv-card--gold:hover   { border-color: rgba(217,119,6,.3); }

.sv-card-top { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.sv-card-icon {
    width: 48px; height: 48px; border-radius: 12px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
}
.sv-card--blue   .sv-card-icon { background: rgba(0,87,255,.15); }
.sv-card--cyan   .sv-card-icon { background: rgba(0,212,255,.12); }
.sv-card--purple .sv-card-icon { background: rgba(124,58,237,.15); }
.sv-card--pink   .sv-card-icon { background: rgba(219,39,119,.12); }
.sv-card--teal   .sv-card-icon { background: rgba(13,148,136,.12); }
.sv-card--orange .sv-card-icon { background: rgba(234,88,12,.12); }
.sv-card--gold   .sv-card-icon { background: rgba(217,119,6,.12); }
.sv-card-icon i { font-size: 1.4rem; }
.sv-card--blue   .sv-card-icon i { color: #6b9fff; }
.sv-card--cyan   .sv-card-icon i { color: var(--sv-cyan); }
.sv-card--purple .sv-card-icon i { color: #a78bfa; }
.sv-card--pink   .sv-card-icon i { color: #f472b6; }
.sv-card--teal   .sv-card-icon i { color: #2dd4bf; }
.sv-card--orange .sv-card-icon i { color: #fb923c; }
.sv-card--gold   .sv-card-icon i { color: #fbbf24; }

.sv-card-tag {
    font-size: .68rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .1em; color: var(--sv-muted); flex: 1;
}
.sv-card-title { font-size: 1.05rem; font-weight: 700; color: #fff; margin: 0 0 10px; }
.sv-card-desc  { font-size: .83rem; color: var(--sv-muted); line-height: 1.6; margin: 0 0 14px; flex: 1; }

.sv-card-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px; }
.sv-tag {
    background: rgba(255,255,255,.05); border: 1px solid var(--sv-border);
    color: var(--sv-muted); font-size: .65rem; font-weight: 600;
    padding: 3px 9px; border-radius: 99px; text-transform: uppercase; letter-spacing: .05em;
}
.sv-card-cta {
    display: flex; align-items: center; gap: 6px; font-size: .8rem; font-weight: 700;
    color: var(--sv-cyan); text-decoration: none; cursor: pointer;
    transition: gap .2s, opacity .2s; margin-top: auto; padding-top: 4px;
}
.sv-card-cta:hover { gap: 10px; }

/* ══════════════════════════════════════════════════════════
   SERVIÇOS DETALHADOS — ROWS ALTERNADAS
   ══════════════════════════════════════════════════════════ */
.sv-details-section { padding: 80px 0 100px; }

.sv-detail-row {
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px;
    align-items: center; padding: 80px 0;
    border-bottom: 1px solid var(--sv-border);
}
.sv-detail-row:first-of-type { padding-top: 0; }
.sv-detail-row:last-of-type  { border-bottom: none; }
.sv-detail-row.sv-flip .sv-detail-content { order: 2; }
.sv-detail-row.sv-flip .sv-detail-visual   { order: 1; }

.sv-detail-tag {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: .73rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .1em; border-radius: 99px; padding: 5px 14px;
    margin-bottom: 18px; width: fit-content;
}
.sv-detail-tag--blue   { background: rgba(0,87,255,.12);   border: 1px solid rgba(0,87,255,.2);   color: #6b9fff; }
.sv-detail-tag--cyan   { background: rgba(0,212,255,.1);   border: 1px solid rgba(0,212,255,.18); color: var(--sv-cyan); }
.sv-detail-tag--teal   { background: rgba(13,148,136,.1);  border: 1px solid rgba(13,148,136,.2); color: #2dd4bf; }
.sv-detail-tag--purple { background: rgba(124,58,237,.12); border: 1px solid rgba(124,58,237,.2); color: #a78bfa; }
.sv-detail-tag i { font-size: 1rem; }

.sv-detail-title { font-size: clamp(1.3rem,2.5vw,2rem); font-weight:800; color:#fff; line-height:1.25; margin:0 0 18px; }
.sv-detail-desc  { color:var(--sv-muted); line-height:1.8; font-size:.95rem; margin:0 0 22px; }

.sv-detail-list { list-style: none; padding: 0; margin: 0 0 28px; display: flex; flex-direction: column; gap: 10px; }
.sv-detail-list li {
    display: flex; align-items: flex-start; gap: 10px;
    font-size: .88rem; color: var(--sv-text); line-height: 1.5;
}
.sv-detail-list li i { color: #4ade80; font-size: 1.1rem; flex-shrink: 0; margin-top: 1px; }

/* Visual card */
.sv-visual-card {
    position: relative; border-radius: 20px; padding: 48px 36px;
    background: var(--sv-card); border: 1px solid var(--sv-border);
    overflow: hidden; display: flex; flex-direction: column;
    align-items: center; justify-content: center; text-align: center;
    min-height: 340px;
}
.sv-visual-glow {
    position: absolute; inset: 0; pointer-events: none;
    background: radial-gradient(circle at 50% 30%, rgba(0,87,255,.12), transparent 70%);
}
.sv-visual-card--cyan .sv-visual-glow { background: radial-gradient(circle at 50% 30%, rgba(0,212,255,.1), transparent 70%); }
.sv-visual-card--teal .sv-visual-glow { background: radial-gradient(circle at 50% 30%, rgba(13,148,136,.1), transparent 70%); }

.sv-visual-icon {
    width: 80px; height: 80px; border-radius: 20px;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 28px; position: relative; z-index: 1;
}
.sv-visual-card--blue   .sv-visual-icon { background: rgba(0,87,255,.15); border: 1px solid rgba(0,87,255,.25); }
.sv-visual-card--blue   .sv-visual-icon i { color: #6b9fff; font-size: 2.2rem; }
.sv-visual-card--cyan   .sv-visual-icon { background: rgba(0,212,255,.1); border: 1px solid rgba(0,212,255,.2); }
.sv-visual-card--cyan   .sv-visual-icon i { color: var(--sv-cyan); font-size: 2.2rem; }
.sv-visual-card--teal   .sv-visual-icon { background: rgba(13,148,136,.1); border: 1px solid rgba(13,148,136,.2); }
.sv-visual-card--teal   .sv-visual-icon i { color: #2dd4bf; font-size: 2.2rem; }

.sv-visual-metric { position: relative; z-index: 1; margin-bottom: 28px; }
.sv-vm-value {
    display: block; font-size: 3.5rem; font-weight: 900; line-height: 1;
    background: var(--sv-grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
    margin-bottom: 6px;
}
.sv-vm-label { font-size: .82rem; color: var(--sv-muted); }

.sv-visual-dots {
    position: absolute; bottom: 20px; right: 20px;
    display: grid; grid-template-columns: repeat(3,1fr); gap: 6px;
    opacity: .4;
}
.sv-vdot { width: 5px; height: 5px; border-radius: 50%; background: rgba(0,212,255,.5); }

/* ══════════════════════════════════════════════════════════
   SPLINE ACCENT — Organic Dot Grid
   ══════════════════════════════════════════════════════════ */
.sv-spline-accent {
    position: relative; height: 380px; overflow: hidden;
    border-top: 1px solid var(--sv-border);
    border-bottom: 1px solid var(--sv-border);
}
.sv-spline-accent-inner {
    position: absolute; inset: 0;
    opacity: 0; transition: opacity 1s ease;
}
.sv-spline-visible .sv-spline-accent-inner { opacity: 1; }
.sv-spline-accent.sv-no-spline .sv-spline-accent-inner { display: none; }
.sv-spline-accent.sv-no-spline {
    background: radial-gradient(ellipse at 50% 50%, rgba(0,87,255,.12), rgba(0,212,255,.05), transparent 80%);
}

.sv-accent-overlay {
    position: absolute; inset: 0; z-index: 1; pointer-events: none;
    background: linear-gradient(
        to bottom,
        rgba(2,4,7,.8) 0%,
        rgba(2,4,7,.3) 30%,
        rgba(2,4,7,.3) 70%,
        rgba(2,4,7,.8) 100%
    );
}
.sv-accent-content {
    position: relative; z-index: 2; height: 100%;
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    text-align: center; padding: 0 24px; gap: 28px;
}
.sv-accent-title {
    font-size: clamp(1.5rem, 3vw, 2.2rem); font-weight: 800; color: #fff; line-height: 1.3;
    margin: 0;
}

/* ══════════════════════════════════════════════════════════
   PROCESSO
   ══════════════════════════════════════════════════════════ */
.sv-process { padding: 100px 0; }
.sv-process-grid {
    display: grid; grid-template-columns: repeat(3,1fr); gap: 24px;
}
.sv-process-item {
    background: var(--sv-card); border: 1px solid var(--sv-border);
    border-radius: 16px; padding: 28px 22px;
    transition: border-color .2s, transform .2s;
}
.sv-process-item:hover { border-color: rgba(0,87,255,.3); transform: translateY(-4px); }
.sv-process-num { font-size: 2.8rem; font-weight: 900; line-height: 1; background: linear-gradient(180deg,rgba(0,87,255,.4),transparent); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; margin-bottom: 12px; }
.sv-process-icon { width:44px; height:44px; background:linear-gradient(135deg,rgba(0,87,255,.15),rgba(0,212,255,.08)); border-radius:10px; display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.sv-process-icon i { font-size:1.3rem; color:var(--sv-cyan); }
.sv-process-item h3 { font-size:.95rem; font-weight:700; color:#fff; margin:0 0 8px; }
.sv-process-item p  { font-size:.83rem; color:var(--sv-muted); line-height:1.6; margin:0; }

/* ══════════════════════════════════════════════════════════
   FORMULÁRIO
   ══════════════════════════════════════════════════════════ */
.sv-form-section { padding: 100px 0 120px; }
.sv-form-wrap {
    display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: start;
}
.sv-form-text { position: sticky; top: 100px; }

.sv-form-promises { display: flex; flex-direction: column; gap: 12px; margin-top: 28px; }
.sv-promise { display:flex; align-items:center; gap:10px; font-size:.88rem; color:var(--sv-muted); }
.sv-promise i { color:var(--sv-cyan); font-size:1rem; }

.sv-quick-services { margin-top: 32px; }
.sv-qs-label { font-size:.73rem; font-weight:700; color:var(--sv-muted); text-transform:uppercase; letter-spacing:.08em; display:block; margin-bottom:10px; }
.sv-qs-pills { display:flex; flex-wrap:wrap; gap:7px; }
.sv-qs-pills span {
    background:rgba(0,87,255,.08); border:1px solid rgba(0,87,255,.15);
    color:rgba(0,212,255,.7); font-size:.72rem; font-weight:600;
    padding:3px 11px; border-radius:99px; letter-spacing:.04em;
}

/* Card com borda gradiente animada */
.sv-form-card {
    position: relative;
    border-radius: 26px;
    background: linear-gradient(135deg, #0057ff, #00d4ff 50%, rgba(124,58,237,.7) 75%, #0057ff);
    background-size: 300% 300%;
    animation: sv-border-anim 6s ease infinite;
    padding: 2px;
    box-shadow: 0 0 80px rgba(0,87,255,.2), 0 0 160px rgba(0,87,255,.06);
}
@keyframes sv-border-anim {
    0%, 100% { background-position: 0% 50%; }
    50%       { background-position: 100% 50%; }
}
.sv-form-card-inner {
    background: rgba(3,7,16,.97);
    border-radius: 24px;
    padding: 36px;
    position: relative;
    z-index: 1;
}

.sv-form-top { display:flex; align-items:center; gap:8px; font-size:.74rem; color:var(--sv-muted); text-transform:uppercase; letter-spacing:.09em; margin-bottom:16px; }
.sv-form-dot { width:8px; height:8px; border-radius:50%; background:var(--sv-cyan); box-shadow:0 0 8px var(--sv-cyan); animation:sv-blink 2s ease-in-out infinite; }
@keyframes sv-blink { 0%,100%{opacity:1;} 50%{opacity:.4;} }

.sv-form-title { font-size:1.55rem; font-weight:800; color:#fff; line-height:1.25; margin:0 0 8px; }
.sv-form-sub   { font-size:.86rem; color:var(--sv-muted); line-height:1.6; margin:0 0 22px; }

/* Campos */
.sv-form { display:flex; flex-direction:column; }
.sv-field { display:flex; flex-direction:column; gap:6px; margin-bottom:16px; }
.sv-field label { font-size:.74rem; font-weight:700; color:var(--sv-muted); text-transform:uppercase; letter-spacing:.06em; }
.sv-field-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.sv-field-row .sv-field { margin-bottom:16px; }

.sv-input-wrap { position:relative; display:flex; align-items:center; }
.sv-input-wrap > i:first-child { position:absolute; left:14px; color:rgba(0,87,255,.5); font-size:1rem; pointer-events:none; z-index:1; }

.sv-input-wrap input,
.sv-input-wrap select,
.sv-input-wrap textarea {
    width: 100%; background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08); border-radius: 10px;
    padding: .73rem 1rem .73rem 2.7rem; color: #e2e8f0;
    font-size: .9rem; font-family: 'Inter', system-ui, sans-serif;
    transition: border-color .2s, box-shadow .2s, background .2s;
    outline: none; -webkit-appearance: none;
}
.sv-input-wrap input::placeholder,
.sv-input-wrap textarea::placeholder { color: rgba(148,163,184,.3); }
.sv-input-wrap input:focus,
.sv-input-wrap select:focus,
.sv-input-wrap textarea:focus {
    border-color: var(--sv-blue);
    box-shadow: 0 0 0 3px rgba(0,87,255,.18);
    background: rgba(0,87,255,.04);
}
.sv-input-wrap.input-error input,
.sv-input-wrap.input-error select,
.sv-input-wrap.input-error textarea { border-color:rgba(239,68,68,.4); box-shadow:0 0 0 3px rgba(239,68,68,.1); }
.sv-input-wrap textarea { padding-top:.75rem; resize:vertical; min-height:88px; }
.sv-textarea-wrap { align-items:flex-start; }
.sv-textarea-wrap > i:first-child { top:14px; position:absolute; }
.sv-select-wrap select option { background:#0c1a2e; color:#e2e8f0; }
.sv-sel-arrow { position:absolute; right:12px; color:rgba(0,87,255,.5); pointer-events:none; font-size:1.1rem; }

/* Botão */
.sv-submit-btn {
    display: flex !important; align-items: center !important; justify-content: center !important;
    gap: .6rem; width: 100% !important; padding: 1rem 1.5rem !important;
    font-size: .92rem !important; margin-top: .4rem; margin-bottom: 1rem;
    background: linear-gradient(135deg,#0057ff 0%,#1a6bff 50%,#00a8d4 100%) !important;
    border: none !important; border-radius: 10px !important; color: #fff !important;
    font-family: 'Inter',system-ui,sans-serif !important; font-weight: 700 !important;
    letter-spacing: .02em; cursor: pointer;
    transition: transform .15s, box-shadow .2s !important;
    box-shadow: 0 4px 28px rgba(0,87,255,.45) !important;
    position: relative; overflow: hidden;
}
.sv-submit-btn::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,.15),transparent 50%); opacity:0; transition:opacity .2s; }
.sv-submit-btn:hover::before { opacity:1; }
.sv-submit-btn:hover { transform:translateY(-2px) !important; box-shadow:0 8px 36px rgba(0,87,255,.6) !important; }
.sv-submit-btn:disabled { opacity:.7; cursor:not-allowed; transform:none !important; }
.sv-submit-btn .btn-icon { font-size:1.1rem; }

.sv-spinner { display:inline-block; width:14px; height:14px; border:2px solid rgba(255,255,255,.3); border-top-color:#fff; border-radius:50%; animation:sv-rot .65s linear infinite; vertical-align:middle; }
@keyframes sv-rot { to { transform:rotate(360deg); } }

.sv-form-footer { display:flex; align-items:center; justify-content:center; gap:.5rem; font-size:.68rem; color:rgba(148,163,184,.3); margin-top: 4px; }
.sv-form-footer i { color:rgba(0,87,255,.35); }

/* Feedback */
.sv-feedback { display:none; margin-bottom:14px; }
.sv-feedback-inner { display:flex; align-items:flex-start; gap:.65rem; padding:.9rem 1.1rem; border-radius:10px; font-size:.85rem; font-weight:500; line-height:1.45; }
.sv-feedback-success { background:rgba(16,185,129,.1); border:1px solid rgba(16,185,129,.25); color:#34d399; }
.sv-feedback-success i { font-size:1.1rem; flex-shrink:0; }
.sv-feedback-error   { background:rgba(239,68,68,.08); border:1px solid rgba(239,68,68,.2); color:#f87171; }
.sv-feedback-error   i { font-size:1.1rem; flex-shrink:0; }

/* ══════════════════════════════════════════════════════════
   RESPONSIVO
   ══════════════════════════════════════════════════════════ */
@media (max-width: 1100px) {
    .sv-services-grid { grid-template-columns: repeat(2,1fr); }
    .sv-process-grid  { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 900px) {
    .sv-detail-row            { grid-template-columns: 1fr; gap: 40px; }
    .sv-detail-row.sv-flip .sv-detail-content,
    .sv-detail-row.sv-flip .sv-detail-visual { order: unset; }
    .sv-form-wrap             { grid-template-columns: 1fr; }
    .sv-form-text             { position: static; }
    .sv-hero-stats            { gap: 16px; }
    .sv-spline-accent         { height: 280px; }
}
@media (max-width: 640px) {
    .sv-hero-content          { padding-top: 130px; padding-bottom: 80px; }
    .sv-services-grid         { grid-template-columns: 1fr; }
    .sv-process-grid          { grid-template-columns: 1fr; }
    .sv-field-row             { grid-template-columns: 1fr; }
    .sv-form-card-inner       { padding: 24px 20px; }
    .sv-detail-row            { padding: 48px 0; }
    .sv-stat-sep              { display: none; }
    .sv-hero-stats            { justify-content: center; }
}
