/* GLOBAL 24 SOLUTION — Premium Corporate Landing */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Space+Grotesk:wght@500;600;700&family=Roboto+Mono:wght@400;500;600&display=swap');

:root {
  --bg-primary: #F5F3F0;
  --bg-secondary: #FFFFFF;
  --bg-accent: #FFF5F0;
  --text-primary: #1A1219;
  --text-secondary: #4A4350;
  --text-muted: #71687A;
  --brand-navy: #0A1628;
  --brand-navy-deep: #060E1A;
  --brand-red: #D42B2B;
  --brand-orange: #E85D1A;
  --brand-orange-hover: #C74D14;
  --brand-blue-globe: #4CA8E0;
  --alert-red: #D42B2B;
  --success-green: #38A169;
  --glass-bg: rgba(255,255,255,0.85);
  --glass-border: rgba(10,22,40,0.08);
  --glass-blur: 18px;
  --shadow-sm: 0 1px 3px rgba(10,22,40,0.06);
  --shadow-md: 0 4px 16px rgba(10,22,40,0.08);
  --shadow-lg: 0 10px 40px rgba(10,22,40,0.10);
  --shadow-xl: 0 20px 60px rgba(10,22,40,0.12);
  --shadow-glow: 0 0 30px rgba(232,93,26,0.15);
  --ease-out: cubic-bezier(0.16,1,0.3,1);
  --transition-fast: 0.2s var(--ease-out);
  --transition-normal: 0.4s var(--ease-out);
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
body { font-family:'Inter',sans-serif; background:var(--bg-primary); color:var(--text-primary); line-height:1.7; overflow-x:hidden; }
img { max-width:100%; height:auto; display:block; }
a { text-decoration:none; color:inherit; }

h1,h2,h3,h4 { font-family:'Space Grotesk',sans-serif; line-height:1.15; color:var(--brand-navy); }
h1 { font-size:clamp(2.4rem,5.5vw,3.8rem); font-weight:700; }
h2 { font-size:clamp(1.8rem,3.5vw,2.6rem); font-weight:700; }
h3 { font-size:clamp(1.1rem,2vw,1.4rem); font-weight:600; }

.mono { font-family:'Roboto Mono',monospace; font-weight:500; }

.section-label {
  font-family:'Roboto Mono',monospace; font-size:0.75rem; font-weight:600;
  letter-spacing:3px; text-transform:uppercase; color:var(--brand-orange);
  margin-bottom:12px; display:inline-block;
}
.section-subtitle { font-size:1.1rem; color:var(--text-secondary); max-width:600px; margin-bottom:50px; }
.section-header-center { text-align:center; display:flex; flex-direction:column; align-items:center; }

/* === BUTTONS === */
.btn {
  display:inline-flex; align-items:center; gap:10px; padding:16px 32px;
  font-family:'Inter',sans-serif; font-size:0.95rem; font-weight:700;
  border-radius:var(--radius-sm); border:none; cursor:pointer;
  transition:all var(--transition-fast); position:relative; overflow:hidden;
}
.btn-primary { background:linear-gradient(135deg,var(--brand-red),var(--brand-orange)); color:#FFF; box-shadow:0 4px 14px rgba(212,43,43,0.3); }
.btn-primary:hover { background:linear-gradient(135deg,#B82222,var(--brand-orange-hover)); transform:translateY(-2px); box-shadow:0 6px 20px rgba(212,43,43,0.4); }
.btn-secondary { background:transparent; color:var(--brand-navy); border:2px solid var(--brand-navy); }
.btn-secondary:hover { background:var(--brand-navy); color:#FFF; transform:translateY(-2px); }
.btn-whatsapp { background:#25D366; color:#FFF; box-shadow:0 4px 14px rgba(37,211,102,0.3); }
.btn-whatsapp:hover { background:#1EBE5A; transform:translateY(-2px); }
.btn-vip {
  background:var(--brand-navy); color:#FFF;
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 4px 14px rgba(10,22,40,0.25);
}
.btn-vip:hover { background:#0E1E38; transform:translateY(-2px); box-shadow:0 6px 20px rgba(10,22,40,0.35); }
.btn-vip svg { stroke:var(--brand-orange); }

/* Shimmer effect on primary buttons */
.btn-primary::after, .btn-whatsapp::after {
  content:''; position:absolute; top:0; left:-100%; width:100%; height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.25),transparent);
  animation:shimmer 3s ease-in-out infinite;
}
@keyframes shimmer { 0%{left:-100%} 50%{left:100%} 100%{left:100%} }

.btn-micro { font-size:0.78rem; color:var(--text-muted); margin-top:10px; display:block; text-align:center; }

/* === NAVIGATION === */
.glass-nav {
  position:fixed; width:100%; top:0; z-index:1000;
  background:var(--glass-bg); backdrop-filter:blur(var(--glass-blur));
  -webkit-backdrop-filter:blur(var(--glass-blur));
  border-bottom:1px solid var(--glass-border);
  padding:0 6%; height:72px; display:flex; align-items:center;
  transition:all var(--transition-normal);
}
.glass-nav.scrolled { box-shadow:var(--shadow-md); height:64px; }

.nav-inner {
  width:100%; max-width:1280px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
}

.nav-brand { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.logo-img { height:52px; }
.logo-text {
  font-family:'Space Grotesk',sans-serif; font-weight:900; font-size:1.5rem;
  letter-spacing:0.08em; text-transform:uppercase;
  background:linear-gradient(135deg,#D42B2B,#E85D1A);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.logo-24 {
  -webkit-text-fill-color:#E85D1A;
  font-weight:900;
}

.nav-links {
  display:flex; align-items:center; justify-content:center;
  gap:32px; list-style:none; flex-grow:1;
}
.nav-links a { font-size:0.9rem; font-weight:600; color:var(--text-secondary); transition:color var(--transition-fast); position:relative; }
.nav-links a::after { content:''; position:absolute; bottom:-4px; left:0; width:0; height:2px; background:var(--brand-orange); transition:width var(--transition-fast); }
.nav-links a:hover { color:var(--brand-navy); }
.nav-links a:hover::after { width:100%; }

.nav-actions { display:flex; align-items:center; gap:10px; flex-shrink:0; }

.nav-cta { padding:10px 22px !important; font-size:0.85rem !important; }

/* Ghost button — Plataformas */
.btn-ghost {
  background:transparent; color:var(--text-primary);
  border:1.5px solid var(--glass-border); box-shadow:none;
}
.btn-ghost:hover {
  background:rgba(10,22,40,0.05); border-color:var(--brand-orange);
  color:var(--brand-navy); transform:translateY(-1px);
}
.btn-ghost::after { display:none; }
.btn-ghost svg { stroke:var(--brand-orange); }

/* Mobile-only CTA items — hidden on desktop */
.nav-mobile-cta { display:none; }

.nav-toggle { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:8px; z-index:1001; }
.nav-toggle span { width:24px; height:2.5px; background:var(--text-primary); border-radius:2px; transition:all var(--transition-fast); }
.nav-toggle.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav-toggle.active span:nth-child(2) { opacity:0; }
.nav-toggle.active span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* === HERO === */
.hero {
  padding:130px 6% 80px; display:grid; grid-template-columns:1fr 1fr;
  gap:60px; align-items:center; min-height:92vh; position:relative;
}
.hero::before {
  content:''; position:absolute; inset:0;
  background-image:linear-gradient(rgba(10,22,40,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(10,22,40,0.03) 1px,transparent 1px);
  background-size:60px 60px; pointer-events:none;
}
.hero-content { position:relative; z-index:1; }
.hero-content h1 { margin-bottom:24px; }
.hero-content h1 span { color:var(--brand-red); }
.hero-description { font-size:1.15rem; color:var(--text-secondary); margin-bottom:36px; max-width:520px; line-height:1.8; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; }

.hero-stats { display:flex; gap:40px; margin-top:50px; padding-top:30px; border-top:1px solid var(--glass-border); }
.stat-item { display:flex; flex-direction:column; }
.stat-number { font-family:'Space Grotesk',sans-serif; font-size:2rem; font-weight:700; color:var(--brand-navy); line-height:1; }
.stat-label { font-size:0.8rem; color:var(--text-muted); margin-top:4px; font-weight:500; }

/* Hero Image */
.hero-visual { position:relative; z-index:1; }
.hero-image-wrapper {
  position:relative; border-radius:var(--radius-lg); overflow:hidden;
  box-shadow:var(--shadow-xl); border:1px solid var(--glass-border);
}
.hero-image-wrapper img { width:100%; height:auto; display:block; border-radius:var(--radius-lg); }

.live-badge {
  position:absolute; top:16px; left:16px; display:flex; align-items:center; gap:8px;
  background:rgba(0,0,0,0.7); backdrop-filter:blur(8px); padding:6px 14px; border-radius:20px; z-index:2;
}
.live-dot { width:8px; height:8px; background:var(--alert-red); border-radius:50%; animation:pulse-dot 1.5s ease-in-out infinite; }
.live-text { font-family:'Roboto Mono',monospace; font-size:0.7rem; font-weight:600; color:#FFF; letter-spacing:1.5px; text-transform:uppercase; }
@keyframes pulse-dot { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.3)} }

.float-card {
  position:absolute; background:var(--glass-bg); backdrop-filter:blur(12px);
  border:1px solid var(--glass-border); border-radius:var(--radius-md);
  padding:14px 18px; box-shadow:var(--shadow-lg); z-index:3; animation:float 4s ease-in-out infinite;
}
.float-card-top { top:-20px; right:-15px; }
.float-card-bottom { bottom:-15px; left:-15px; animation-delay:2s; }
.float-card .card-icon { margin-bottom:4px; }
.float-card .card-icon svg { width:20px; height:20px; stroke:var(--brand-red); }
.float-card .card-value { font-family:'Space Grotesk',sans-serif; font-size:1rem; font-weight:700; color:var(--brand-navy); }
.float-card .card-desc { font-size:0.7rem; color:var(--text-muted); font-weight:500; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }

/* Security Badge */
.security-badge {
  display:inline-flex; align-items:center; gap:8px; margin-top:16px;
  padding:8px 16px; background:rgba(10,22,40,0.06); border-radius:20px;
  font-size:0.78rem; font-weight:600; color:var(--brand-navy);
}
.security-badge svg { width:14px; height:14px; stroke:var(--success-green); }

/* === TRUST BAR === */
.trust-bar {
  padding:40px 6%; background:var(--bg-secondary); border-top:1px solid var(--glass-border);
  border-bottom:1px solid var(--glass-border); text-align:center;
}
.trust-bar p { font-size:0.8rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:2px; font-weight:600; margin-bottom:20px; }
.trust-logos { display:flex; justify-content:center; align-items:center; gap:48px; flex-wrap:wrap; opacity:0.5; }
.trust-logos span {
  font-family:'Space Grotesk',sans-serif; font-size:1.1rem; font-weight:700;
  color:var(--text-secondary); letter-spacing:1px;
}

/* === PROBLEMA === */
.problema { padding:100px 6%; background:var(--bg-secondary); position:relative; }
.problema-content { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.problema-image { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-xl); }
.problema-image img { width:100%; height:100%; object-fit:cover; }

.problema-cards { display:flex; flex-direction:column; gap:20px; }
.dolor-card {
  background:var(--bg-primary); border:1px solid var(--glass-border); border-radius:var(--radius-md);
  padding:28px 24px; transition:all var(--transition-normal); position:relative; overflow:hidden;
  display:flex; gap:20px; align-items:flex-start;
}
.dolor-card::before {
  content:''; position:absolute; top:0; left:0; width:3px; height:100%;
  background:linear-gradient(180deg,var(--alert-red),transparent); opacity:0; transition:opacity var(--transition-fast);
}
.dolor-card:hover { transform:translateX(4px); box-shadow:var(--shadow-lg); }
.dolor-card:hover::before { opacity:1; }

.dolor-icon-wrap {
  width:44px; height:44px; min-width:44px; background:rgba(212,43,43,0.08);
  border-radius:var(--radius-sm); display:flex; align-items:center; justify-content:center;
}
.dolor-icon-wrap svg { width:22px; height:22px; stroke:var(--alert-red); fill:none; stroke-width:2; }
.dolor-card h3 { color:var(--text-primary); margin-bottom:6px; font-size:1rem; }
.dolor-card p { font-size:0.88rem; color:var(--text-secondary); line-height:1.6; }
.dolor-stat { margin-top:8px; }
.dolor-stat strong { font-family:'Roboto Mono',monospace; font-size:1.2rem; font-weight:700; color:var(--alert-red); }

/* === SOLUCIÓN === */
.solucion { padding:100px 6%; background:var(--bg-primary); }
.solucion-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }

.servicio-card {
  background:var(--bg-secondary); border:1px solid var(--glass-border); border-radius:var(--radius-md);
  padding:40px 28px; transition:all var(--transition-normal); position:relative; overflow:hidden;
}
.servicio-card::before {
  content:''; position:absolute; top:0; left:0; width:100%; height:3px;
  background:linear-gradient(90deg,var(--brand-red),var(--brand-orange));
  transform:scaleX(0); transform-origin:left; transition:transform var(--transition-normal);
}
.servicio-card:hover { transform:translateY(-8px); box-shadow:0 12px 40px rgba(232,93,26,0.12); }
.servicio-card:hover::before { transform:scaleX(1); }

.servicio-icon {
  width:56px; height:56px;
  background:linear-gradient(135deg,rgba(232,93,26,0.08),rgba(10,22,40,0.08));
  border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center; margin-bottom:24px;
}
.servicio-icon svg { width:28px; height:28px; stroke:var(--brand-orange); fill:none; stroke-width:1.8; }
.servicio-card h3 { margin-bottom:12px; }
.servicio-card p { font-size:0.92rem; color:var(--text-secondary); line-height:1.7; }
.servicio-features { list-style:none; margin-top:20px; display:flex; flex-direction:column; gap:10px; }
.servicio-features li { font-size:0.85rem; color:var(--text-secondary); display:flex; align-items:center; gap:8px; }
.servicio-features li::before { content:'✓'; color:var(--success-green); font-weight:700; font-size:0.75rem; }

/* === TIMELINE === */
.timeline-section { padding:80px 6%; background:var(--bg-secondary); border-top:1px solid var(--glass-border); }
.timeline { display:flex; justify-content:center; gap:0; max-width:800px; margin:0 auto; position:relative; }
.timeline::before {
  content:''; position:absolute; top:28px; left:15%; right:15%; height:2px;
  background:linear-gradient(90deg,var(--brand-red),var(--brand-orange)); opacity:0.3;
}
.timeline-step { flex:1; text-align:center; position:relative; padding:0 16px; }
.timeline-dot {
  width:56px; height:56px; border-radius:50%; background:linear-gradient(135deg,var(--brand-red),var(--brand-orange));
  display:flex; align-items:center; justify-content:center; margin:0 auto 16px;
  color:#FFF; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:1.2rem;
  box-shadow:0 4px 20px rgba(212,43,43,0.3); position:relative; z-index:1;
}
.timeline-step h3 { font-size:0.95rem; margin-bottom:4px; }
.timeline-step p { font-size:0.8rem; color:var(--text-muted); }

/* === COUNTERS === */
.counters {
  padding:60px 6%; background:var(--brand-navy); position:relative; overflow:hidden;
}
.counters::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 20% 50%,rgba(212,43,43,0.2) 0%,transparent 50%),
             radial-gradient(circle at 80% 20%,rgba(232,93,26,0.18) 0%,transparent 50%);
}
.counters-grid { display:flex; justify-content:center; gap:60px; position:relative; z-index:1; flex-wrap:wrap; }
.counter-item { text-align:center; }
.counter-value {
  font-family:'Space Grotesk',sans-serif; font-size:clamp(2.4rem,4vw,3.2rem);
  font-weight:700; color:#FFF; line-height:1;
}
.counter-label { font-size:0.85rem; color:rgba(255,255,255,0.7); margin-top:6px; }

/* === POR QUÉ (with image) === */
.porque { padding:100px 6%; background:var(--bg-primary); }
.porque-layout { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.porque-image { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-xl); }
.porque-image img { width:100%; height:100%; object-fit:cover; }
.porque-cards { display:flex; flex-direction:column; gap:20px; }

.porque-card {
  display:flex; gap:20px; align-items:flex-start; padding:24px;
  background:var(--bg-secondary); border:1px solid var(--glass-border);
  border-radius:var(--radius-md); transition:all var(--transition-normal);
}
.porque-card:hover { transform:translateX(4px); box-shadow:var(--shadow-lg); }
.porque-icon-wrap {
  width:48px; height:48px; min-width:48px;
  background:linear-gradient(135deg,rgba(232,93,26,0.08),rgba(10,22,40,0.08));
  border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center;
}
.porque-icon-wrap svg { width:24px; height:24px; stroke:var(--brand-orange); fill:none; stroke-width:1.8; }
.porque-card h3 { margin-bottom:6px; color:var(--text-primary); }
.porque-card p { font-size:0.88rem; color:var(--text-secondary); line-height:1.6; }

/* === TESTIMONIALS === */
.testimonials { padding:100px 6%; background:var(--bg-secondary); }
.testimonials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.testimonial-card {
  background:var(--bg-primary); border:1px solid var(--glass-border); border-radius:var(--radius-md);
  padding:32px 28px; transition:all var(--transition-normal); position:relative;
}
.testimonial-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.testimonial-quote {
  font-size:0.95rem; color:var(--text-secondary); line-height:1.7;
  font-style:italic; margin-bottom:24px; position:relative; padding-left:20px;
}
.testimonial-quote::before {
  content:'"'; position:absolute; left:0; top:-4px;
  font-size:2rem; font-weight:700; color:var(--brand-red); font-style:normal; line-height:1;
}
.testimonial-author { display:flex; align-items:center; gap:14px; }
.testimonial-avatar { width:48px; height:48px; border-radius:50%; object-fit:cover; border:2px solid var(--glass-border); }
.testimonial-name { font-weight:700; font-size:0.9rem; color:var(--text-primary); }
.testimonial-role { font-size:0.78rem; color:var(--text-muted); }
.testimonial-metric { margin-top:4px; font-family:'Roboto Mono',monospace; font-size:0.75rem; font-weight:600; color:var(--brand-orange); }

/* === CTA FINAL === */
.contacto {
  padding:100px 6%; text-align:center; position:relative; overflow:hidden;
  background:var(--brand-navy-deep); color:#FFF;
}
.contacto-bg {
  position:absolute; inset:0; z-index:0;
  background-size:cover; background-position:center; opacity:0.25;
}
.contacto-wrapper { max-width:680px; margin:0 auto; position:relative; z-index:1; }
.contacto .section-label { color:rgba(255,255,255,0.5); }
.contacto h2 { color:#FFF; margin-bottom:16px; }
.contacto .section-subtitle { color:rgba(255,255,255,0.7); margin:0 auto 40px; }
.contacto-actions { display:flex; justify-content:center; gap:16px; flex-wrap:wrap; margin-bottom:12px; }
.contacto-info {
  display:flex; justify-content:center; gap:40px; flex-wrap:wrap;
  padding-top:30px; margin-top:30px; border-top:1px solid rgba(255,255,255,0.15);
}
.contacto-item { display:flex; align-items:center; gap:10px; font-size:0.9rem; color:rgba(255,255,255,0.7); }
.contacto-item svg { width:18px; height:18px; stroke:var(--brand-orange); fill:none; }

/* === FOOTER === */
.footer {
  background:var(--text-primary); color:rgba(255,255,255,0.5); padding:30px 6%;
  display:flex; justify-content:space-between; align-items:center; font-size:0.8rem;
}
.footer-brand { font-family:'Space Grotesk',sans-serif; font-weight:600; color:rgba(255,255,255,0.7); }
.footer a { color:var(--brand-orange); }
.footer a:hover { color:#FFF; }

/* === SCROLL ANIMATIONS === */
.reveal { opacity:0; transform:translateY(30px); transition:all 0.7s var(--ease-out); }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-left { opacity:0; transform:translateX(-40px); transition:all 0.7s var(--ease-out); }
.reveal-left.visible { opacity:1; transform:translateX(0); }
.reveal-right { opacity:0; transform:translateX(40px); transition:all 0.7s var(--ease-out); }
.reveal-right.visible { opacity:1; transform:translateX(0); }
.reveal-scale { opacity:0; transform:scale(0.92); transition:all 0.8s var(--ease-out); }
.reveal-scale.visible { opacity:1; transform:scale(1); }
.stagger-children > * { opacity:0; transform:translateY(20px); transition:all 0.5s var(--ease-out); }
.stagger-children.visible > *:nth-child(1){transition-delay:.1s}
.stagger-children.visible > *:nth-child(2){transition-delay:.2s}
.stagger-children.visible > *:nth-child(3){transition-delay:.3s}
.stagger-children.visible > *:nth-child(4){transition-delay:.4s}
.stagger-children.visible > * { opacity:1; transform:translateY(0); }

/* Typewriter for hero label */
.typewriter { overflow:hidden; white-space:nowrap; border-right:2px solid var(--brand-orange); animation:typing 2s steps(28) 0.5s forwards, blink 0.7s step-end infinite; width:0; }
@keyframes typing { from{width:0} to{width:100%} }
@keyframes blink { 50%{border-color:transparent} }

/* GPS radar pulse on hero image */
.radar-pulse { position:absolute; top:50%; left:50%; width:60px; height:60px; transform:translate(-50%,-50%); pointer-events:none; z-index:4; }
.radar-pulse::before, .radar-pulse::after {
  content:''; position:absolute; inset:0; border:2px solid var(--brand-red);
  border-radius:50%; animation:radar 2.5s ease-out infinite;
}
.radar-pulse::after { animation-delay:1.25s; }
@keyframes radar { 0%{transform:scale(0.5);opacity:1} 100%{transform:scale(3);opacity:0} }

/* Gradient text utility */
.gradient-text {
  background:linear-gradient(135deg,var(--brand-red),var(--brand-orange));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}

/* === VIDEO SHOWCASE === */
.video-showcase { padding:100px 6%; background:var(--bg-primary); }
.video-showcase-layout { display:grid; grid-template-columns:1.2fr 1fr; gap:50px; align-items:center; }
.video-showcase-player { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-xl); position:relative; }
.video-showcase-player video { width:100%; display:block; border-radius:var(--radius-lg); }
.video-showcase-content h2 { margin-bottom:16px; }
.video-showcase-content p { color:var(--text-secondary); margin-bottom:24px; line-height:1.8; }
.video-features-list { list-style:none; display:flex; flex-direction:column; gap:14px; }
.video-features-list li { display:flex; align-items:center; gap:12px; font-size:0.92rem; color:var(--text-secondary); }
.video-features-list li svg { width:20px; height:20px; min-width:20px; stroke:var(--success-green); fill:none; stroke-width:2; }

/* === PROFIT BANNER === */
.profit-banner { padding:100px 6%; background:var(--brand-navy); position:relative; overflow:hidden; }
.profit-banner::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at 30% 50%,rgba(212,43,43,0.15) 0%,transparent 60%),
             radial-gradient(ellipse at 70% 30%,rgba(232,93,26,0.12) 0%,transparent 50%);
}
.profit-banner-layout { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; position:relative; z-index:1; }
.profit-banner-image { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-xl); }
.profit-banner-image img { width:100%; height:auto; display:block; border-radius:var(--radius-lg); }
.profit-banner-content h2 { color:#FFF; margin-bottom:16px; }
.profit-banner-content p { color:rgba(255,255,255,0.75); margin-bottom:30px; line-height:1.8; font-size:1.05rem; }
.profit-banner-content .section-label { color:var(--brand-orange); }
.profit-stats { display:flex; gap:32px; margin-bottom:32px; flex-wrap:wrap; }
.profit-stat-item { display:flex; flex-direction:column; }
.profit-stat-value {
  font-family:'Space Grotesk',sans-serif; font-size:1.8rem; font-weight:700;
  background:linear-gradient(135deg,var(--brand-red),var(--brand-orange));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  line-height:1;
}
.profit-stat-label { font-size:0.78rem; color:rgba(255,255,255,0.5); margin-top:4px; font-weight:500; }

/* === COBERTURA SECTION === */
.cobertura-section { padding:100px 6%; background:var(--bg-secondary); border-top:1px solid var(--glass-border); }
.cobertura-layout { display:grid; grid-template-columns:1.1fr 1fr; gap:60px; align-items:center; max-width:1200px; margin:0 auto; }
.cobertura-image { border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-xl); }
.cobertura-image img { width:100%; height:auto; display:block; }
.cobertura-content h2 { margin-bottom:16px; }
.cobertura-content p { color:var(--text-secondary); margin-bottom:24px; line-height:1.8; }

/* === PLATAFORMAS (ACCESO) === */
.plataformas { padding:100px 6%; background:var(--brand-navy); position:relative; overflow:hidden; }
.plataformas::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(circle at 20% 70%,rgba(76,168,224,0.14) 0%,transparent 50%),
             radial-gradient(circle at 80% 20%,rgba(232,93,26,0.12) 0%,transparent 50%),
             radial-gradient(circle at 50% 50%,rgba(212,43,43,0.06) 0%,transparent 60%);
}
.plataformas .section-label { color:rgba(255,255,255,0.5); }
.plataformas h2 { color:#FFF; }
.plataformas .section-subtitle { color:rgba(255,255,255,0.6); }
.plataformas .section-header-center { position:relative; z-index:1; }

/* === PLATAFORMAS — TABLA POR DISPOSITIVO === */
.plat-table {
  position:relative; z-index:1;
  display:flex; flex-direction:column; gap:20px;
  max-width:860px; margin:0 auto;
}
.plat-row {
  border-radius:var(--radius-lg); overflow:hidden;
  border:1px solid rgba(255,255,255,0.13);
  background:rgba(255,255,255,0.04);
  box-shadow:0 4px 24px rgba(0,0,0,0.25);
}
.plat-device-header {
  display:flex; align-items:center; gap:10px;
  padding:14px 24px;
  font-size:0.68rem; font-weight:700; letter-spacing:2.5px; text-transform:uppercase;
  border-bottom:2px solid rgba(255,255,255,0.10);
}
.plat-device-pc {
  color:rgba(76,168,224,1);
  background:rgba(76,168,224,0.10);
  border-left:4px solid rgba(76,168,224,0.7);
}
.plat-device-android {
  color:rgba(61,220,132,1);
  background:rgba(61,220,132,0.10);
  border-left:4px solid rgba(61,220,132,0.7);
}
.plat-device-ios {
  color:rgba(218,218,230,0.95);
  background:rgba(218,218,230,0.06);
  border-left:4px solid rgba(218,218,230,0.4);
}
.plat-cards { display:grid; grid-template-columns:repeat(3,1fr); }
.plat-card {
  display:flex; flex-direction:column;
  padding:26px 24px 20px;
  border-right:1px solid rgba(255,255,255,0.11);
  text-decoration:none; color:inherit;
  transition:background var(--transition-fast);
  position:relative;
}
.plat-card:last-child { border-right:none; }
a.plat-card:hover { background:rgba(255,255,255,0.07); }
.plat-level {
  font-size:0.62rem; font-weight:700; letter-spacing:2px; text-transform:uppercase;
  color:var(--brand-orange); margin-bottom:8px;
}
.plat-name {
  font-family:'Space Grotesk',sans-serif;
  font-size:1rem; font-weight:700; color:#FFF; flex:1;
}
.plat-arrow {
  margin-top:18px; align-self:flex-end;
  stroke:rgba(255,255,255,0.25);
  transition:stroke var(--transition-fast),transform var(--transition-fast);
}
a.plat-card:hover .plat-arrow { stroke:var(--brand-orange); transform:translate(3px,-3px); }
.plat-card-na { opacity:0.28; pointer-events:none; }
.plat-card-na .plat-name { font-family:'Inter',sans-serif; font-size:0.82rem; font-style:italic; font-weight:400; }
.plat-note {
  display:flex; align-items:center; gap:8px; justify-content:center;
  margin-top:20px; position:relative; z-index:1;
  font-family:'Roboto Mono',monospace; font-size:0.72rem;
  color:rgba(255,255,255,0.35);
}
.plat-note svg { stroke:var(--brand-orange); fill:none; flex-shrink:0; }
.plat-note strong { color:var(--brand-orange); }

/* Hover glow for cards */
.servicio-card:hover { box-shadow:0 12px 40px rgba(212,43,43,0.12); }
.dolor-card:hover { box-shadow:0 8px 30px rgba(212,43,43,0.1); }

/* Parallax CTA overlay animation */
.contacto-bg { transition:transform 0.1s linear; }

/* === RESPONSIVE TABLET === */
/* === LEAD FORM === */
.lead-form {
  width:100%; max-width:580px; margin:36px auto 0;
  background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.12);
  border-radius:var(--radius-lg); padding:32px 28px; backdrop-filter:blur(8px);
  text-align:left;
}
.lead-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:20px; }
.lead-field { display:flex; flex-direction:column; gap:6px; }
.lead-field-full { grid-column:1/-1; }
.lead-field label { font-size:0.78rem; font-weight:600; color:rgba(255,255,255,0.6); letter-spacing:0.5px; }
.lead-field input,
.lead-field textarea {
  background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.14);
  border-radius:var(--radius-sm); padding:12px 14px;
  font-family:'Inter',sans-serif; font-size:0.9rem; color:#FFF;
  transition:border-color var(--transition-fast); outline:none; resize:none;
}
.lead-field input::placeholder,
.lead-field textarea::placeholder { color:rgba(255,255,255,0.3); }
.lead-field input:focus,
.lead-field textarea:focus { border-color:var(--brand-orange); background:rgba(255,255,255,0.11); }
.lead-submit { width:100%; justify-content:center; }
.lead-submit:disabled { opacity:0.6; cursor:not-allowed; transform:none !important; }
.lead-feedback { margin-top:14px; font-size:0.85rem; font-weight:600; text-align:center; min-height:20px; }
.lead-feedback-success { color:#68D391; }
.lead-feedback-error { color:#FC8181; }

/* === RESPONSIVE TABLET === */
@media(max-width:1024px){
  .hero{grid-template-columns:1fr;gap:40px;min-height:auto;padding:110px 5% 60px}
  .problema-content,.porque-layout,.video-showcase-layout,.profit-banner-layout,.cobertura-layout{grid-template-columns:1fr}
  .solucion-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}
}

/* === RESPONSIVE MOBILE === */
@media(max-width:768px){
  /* Nav */
  .nav-toggle{display:flex}
  .nav-actions{display:none}
  .nav-mobile-cta{display:list-item;padding-top:8px;border-top:1px solid var(--glass-border)}
  .nav-mobile-cta:first-of-type{margin-top:8px}
  .nav-links{position:fixed;top:0;right:-100%;width:280px;height:100vh;flex-direction:column;background:var(--bg-secondary);padding:100px 30px 30px;gap:24px;box-shadow:-10px 0 40px rgba(0,0,0,0.1);transition:right var(--transition-normal);flex-grow:0}
  .nav-links.open{right:0}
  .nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:999}
  .nav-overlay.open{display:block}

  /* Hero */
  .hero{grid-template-columns:1fr;text-align:center;padding:90px 5% 50px;gap:30px}
  .hero-description{margin:0 auto 28px;font-size:1rem}
  .hero-actions{justify-content:center}
  .hero-stats{justify-content:center;gap:16px;flex-wrap:wrap;margin-top:32px;padding-top:20px}
  .stat-number{font-size:1.6rem}
  .float-card{display:none}
  .radar-pulse{display:none}
  .typewriter{white-space:normal;width:auto;border:none;animation:none}
  .security-badge{margin:16px auto 0}
  .btn-micro{text-align:center}

  /* Section spacing — todas las secciones reducen vertical padding */
  .problema,.solucion,.video-showcase,.porque,.testimonials,.plataformas{padding:60px 5%}
  .contacto{padding:70px 5%}
  .timeline-section,.brand-gallery{padding:50px 5%}
  .counters{padding:50px 5%}
  .trust-bar{padding:28px 5%}

  /* Typography */
  .section-subtitle{font-size:0.95rem;margin-bottom:24px}
  .section-header-center{margin-bottom:30px!important}
  .section-label{font-size:0.7rem;letter-spacing:2px}

  /* Grids */
  .problema-content,.porque-layout,.video-showcase-layout,.profit-banner-layout,.cobertura-layout{grid-template-columns:1fr}
  .solucion-grid,.testimonials-grid{grid-template-columns:1fr}

  /* Cards */
  .dolor-card{padding:18px 14px;gap:12px}
  .dolor-icon-wrap{width:38px;height:38px;min-width:38px}
  .servicio-card{padding:28px 20px}
  .porque-card{padding:18px 14px;gap:14px}
  .testimonial-card{padding:24px 20px}

  /* Trust logos */
  .trust-logos{gap:16px}
  .trust-logos span{font-size:0.82rem;letter-spacing:0.5px}

  /* Timeline */
  .timeline{flex-direction:column;gap:24px;align-items:center}
  .timeline::before{display:none}
  .timeline-step{padding:0;width:100%;max-width:300px}

  /* Counters — 2 columnas en mobile */
  .counters-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:480px;margin:0 auto}

  /* Footer */
  .contacto-info{flex-direction:column;align-items:center;gap:16px}
  .footer{flex-direction:column;gap:10px;text-align:center}

  /* Profit banner */
  .profit-stats{gap:20px;justify-content:center}
  .profit-banner{padding:60px 5%}
  .profit-banner-layout{gap:40px}
  .profit-banner-content{text-align:center;display:flex;flex-direction:column;align-items:center}
  .profit-banner-content p{margin-bottom:24px}

  /* Media gallery */
  .media-gallery-video video{min-height:160px}

  /* Lead form */
  .lead-form{padding:24px 18px}
  .lead-form-grid{grid-template-columns:1fr}

  /* Plataformas mobile */
  .plataformas{padding:60px 5%}
  .plat-table{gap:16px}
  .plat-device-header{padding:13px 18px;font-size:0.67rem}
  .plat-cards{grid-template-columns:1fr}
  .plat-card{
    flex-direction:row; align-items:center; gap:14px;
    padding:15px 18px;
    border-right:none; border-bottom:1px solid rgba(255,255,255,0.10);
  }
  .plat-card:last-child{border-bottom:none}
  .plat-level{margin-bottom:0;width:52px;flex-shrink:0;font-size:0.6rem}
  .plat-name{font-size:0.9rem}
  .plat-arrow{margin-top:0;align-self:center}
}

@media(max-width:480px){
  /* Nav en pantallas muy pequeñas */
  .glass-nav{padding:0 4%}
  .logo-text{font-size:1.2rem;letter-spacing:0.05em}

  /* Hero */
  .hero{padding:85px 4% 40px}

  /* Buttons */
  .btn{width:100%;justify-content:center}
  .hero-actions{flex-direction:column;align-items:stretch}
  .contacto-actions{flex-direction:column;align-items:stretch}
  .hero-stats{flex-direction:column;align-items:center;gap:14px}

  /* Cards */
  .dolor-card{padding:16px 12px;gap:10px}
  .dolor-icon-wrap{width:34px;height:34px;min-width:34px}
  .dolor-icon-wrap svg{width:18px;height:18px}
  .porque-card{padding:14px 12px;gap:12px}
  .porque-icon-wrap{width:40px;height:40px;min-width:40px}

  /* Counters — 1 columna en teléfonos muy pequeños */
  .counters-grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .counter-value{font-size:2rem}

  /* Trust */
  .trust-logos span{font-size:0.75rem}
  .trust-logos{gap:12px}

  /* Footer */
  .footer{padding:24px 4%;font-size:0.75rem}

  /* Profit stats */
  .profit-stat-value{font-size:1.5rem}

  /* Plataformas — extra compacto en pantallas pequeñas */
  .plat-table{gap:12px}
  .plat-device-header{padding:11px 14px;font-size:0.62rem;letter-spacing:2px}
  .plat-card{padding:13px 14px;gap:10px}
  .plat-level{width:46px;font-size:0.58rem}
  .plat-name{font-size:0.85rem}
}
