/* =============================================================
   SYLO SCIFI — main.css  |  v1.0.0  |  sylo.es
   Secciones:
   01. Tokens dark/light (variables CSS)
   02. Reset y base
   03. Cursor personalizado
   04. Navegación
   05. Hero
   06. Secciones
   07. Stats / Cards / Servicios / Proyectos
   08. Diferenciadores / Steps / Tech / Contacto / Footer
   09. Logos dark/light
   10. Iconos SVG
   11. Keyframes y animaciones
   12. Responsive
   13. Overrides por modo
   14. Página Seguros
============================================================= */
*{margin:0;padding:0;box-sizing:border-box}

/* ── DARK: verde profundo de Sylo ── */
[data-theme="dark"]{
  --bg-primary:#071a10;
  --bg-alt:#091f13;
  --bg-card:rgba(5,22,12,0.92);
  --bg-glass:rgba(0,255,120,0.04);
  --border-glass:rgba(0,255,120,0.18);
  --border-card:rgba(0,255,120,0.08);
  --neon:#00e87a;
  --neon-dim:rgba(0,232,122,0.35);
  --neon-glow:rgba(0,232,122,0.4);
  --neon-soft:rgba(0,232,122,0.12);
  --text-h:#ffffff;
  --text-p:#cdeedd;
  --text-faint:#90c4a8;
  --nav-bg:rgba(7,26,16,0.82);
  --footer-bg:rgba(5,18,10,0.98);
  --logo-f:brightness(0) invert(1);
  --logo-tech-f:brightness(0) invert(1);
  --icon-f:invert(1) brightness(1.5) sepia(1) saturate(3) hue-rotate(80deg);
  --grid-c:rgba(0,255,120,0.04);
  --particle-c:0,232,122;
  --outline-stroke:rgba(0,232,122,0.25);
  --stat-c:#00e87a;
  --scan-op:0.03;
  --section-label-c:rgba(0,232,122,0.5);
}

/* ── LIGHT: blanco limpio ── */
[data-theme="light"]{
  --bg-primary:#f5f8f6;
  --bg-alt:#eaf2ed;
  --bg-card:rgba(255,255,255,0.95);
  --bg-glass:rgba(0,100,50,0.04);
  --border-glass:rgba(0,120,60,0.18);
  --border-card:rgba(0,120,60,0.12);
  --neon:#00874a;
  --neon-dim:rgba(0,135,74,0.35);
  --neon-glow:rgba(0,135,74,0.3);
  --neon-soft:rgba(0,135,74,0.08);
  --text-h:#000000;
  --text-p:#000000;
  --text-faint:#333333;
  --nav-bg:rgba(245,248,246,0.9);
  --footer-bg:rgba(234,242,237,0.98);
  --logo-f:none;
  --logo-tech-f:brightness(0) saturate(100%) invert(25%) sepia(80%) saturate(500%) hue-rotate(120deg);
  --icon-f:brightness(0) saturate(100%) invert(25%) sepia(80%) saturate(400%) hue-rotate(120deg);
  --grid-c:rgba(0,120,60,0.07);
  --particle-c:0,135,74;
  --outline-stroke:rgba(0,135,74,0.25);
  --stat-c:#00874a;
  --scan-op:0.012;
  --section-label-c:rgba(0,135,74,0.55);
}

html{scroll-behavior:smooth}
body{
  background:var(--bg-primary);color:var(--text-p);
  font-family:'Rajdhani',sans-serif;overflow-x:hidden;
  cursor:none;transition:background 0.4s,color 0.4s;
}

/* ── CURSOR ── */
#cursor{position:fixed;width:10px;height:10px;border-radius:50%;background:var(--neon);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform 0.1s;box-shadow:0 0 16px var(--neon-glow)}
#cursor-ring{position:fixed;width:36px;height:36px;border-radius:50%;border:1px solid var(--neon-dim);pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:left 0.12s ease,top 0.12s ease,transform 0.2s,border-color 0.3s}
#bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}
.scanline{position:fixed;top:0;left:0;right:0;height:2px;background:var(--neon);opacity:var(--scan-op);animation:scanline 9s linear infinite;pointer-events:none;z-index:50}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 52px;
  background:var(--nav-bg);backdrop-filter:blur(24px);
  border-bottom:1px solid var(--border-glass);
  transition:background 0.4s,border-color 0.4s;
  gap:16px;
}
.nav-logo img{height:30px;filter:var(--logo-f);transition:filter 0.4s;display:block}
.nav-links{display:flex;gap:24px;list-style:none}
.nav-links a{font-size:11px;font-weight:500;color:var(--text-p);text-decoration:none;letter-spacing:2px;text-transform:uppercase;transition:color 0.3s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:0;height:1px;background:var(--neon);transform:scaleX(0);transition:transform 0.3s}
.nav-links a:hover{color:var(--neon)}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-right{display:flex;align-items:center;gap:12px}
.nav-cta{
  padding:8px 20px;border:1px solid var(--neon);background:var(--neon-soft);
  color:var(--neon);font-family:'Rajdhani',sans-serif;font-size:11px;font-weight:600;
  letter-spacing:2px;text-transform:uppercase;text-decoration:none;transition:all 0.3s;
  clip-path:polygon(7px 0%,100% 0%,calc(100% - 7px) 100%,0% 100%);cursor:none;
}
.nav-cta:hover{background:var(--neon-dim);box-shadow:0 0 20px var(--neon-glow)}

/* LANG SWITCH */
.lang-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-glass);background:transparent;display:flex;align-items:center;justify-content:center;overflow:hidden;text-decoration:none;transition:all 0.3s;flex-shrink:0;position:relative;z-index:10}
.lang-btn::after{content:'';position:absolute;inset:0;border-radius:50%;background:rgba(0,232,122,0.22);transition:opacity 0.3s;pointer-events:none}
.lang-btn:hover{border-color:var(--neon);box-shadow:0 0 18px var(--neon-glow)}
.lang-btn:hover::after{opacity:0}
.lang-btn svg{width:100%;height:100%;display:block}
[data-theme="light"] .lang-btn::after{background:rgba(0,135,74,0.2)}

/* THEME TOGGLE — visible en nav */
#theme-toggle{
  width:40px;height:40px;border-radius:50%;
  border:1px solid var(--border-glass);
  background:var(--neon-soft);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:all 0.3s;flex-shrink:0;
  position:relative;z-index:10;
}
#theme-toggle:hover{border-color:var(--neon);box-shadow:0 0 18px var(--neon-glow)}
#theme-toggle svg{width:18px;height:18px;stroke:var(--neon);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}

/* ── HERO ── */
#hero{position:relative;z-index:10;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:130px 60px 90px;text-align:center;flex-direction:column}
.hero-logo{margin-bottom:36px;animation:fadeInUp 1s 0.2s both}
.hero-logo img{height:70px;filter:var(--logo-f);transition:filter 0.4s}
.hero-eyebrow{font-family:'Share Tech Mono',monospace;font-size:10px;color:var(--neon);letter-spacing:4px;text-transform:uppercase;margin-bottom:20px;opacity:0.65;animation:fadeInUp 1s 0.35s both}
.hero-eyebrow em{color:var(--neon-dim);font-style:normal;margin:0 8px}
h1.hero-title{font-family:'Orbitron',sans-serif;font-size:clamp(30px,5.5vw,72px);font-weight:900;line-height:1.12;color:var(--text-h);margin-bottom:10px;animation:fadeInUp 1s 0.5s both;transition:color 0.4s}
h1.hero-title .accent{color:transparent;-webkit-text-stroke:2px var(--neon)}
.hero-sub{font-size:clamp(12px,1.8vw,16px);color:var(--text-faint);letter-spacing:3px;text-transform:uppercase;margin-bottom:40px;font-weight:300;animation:fadeInUp 1s 0.65s both}
.hero-badges{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:44px;animation:fadeInUp 1s 0.8s both}
.badge{padding:5px 14px;border:1px solid var(--border-glass);background:var(--bg-glass);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--neon);font-family:'Share Tech Mono',monospace}
.hero-cta-group{display:flex;gap:12px;justify-content:center;animation:fadeInUp 1s 1s both;flex-wrap:wrap}
.btn-primary{padding:14px 36px;background:var(--neon);color:#071a10;font-family:'Rajdhani',sans-serif;font-weight:700;font-size:12px;letter-spacing:3px;text-transform:uppercase;border:none;text-decoration:none;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);transition:all 0.3s;cursor:none}
[data-theme="light"] .btn-primary{color:#fff}
.btn-primary:hover{box-shadow:0 0 36px var(--neon-glow);transform:translateY(-2px)}
.btn-secondary{padding:14px 36px;border:1px solid var(--border-glass);background:transparent;color:var(--neon);font-family:'Rajdhani',sans-serif;font-size:12px;letter-spacing:3px;text-transform:uppercase;text-decoration:none;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);transition:all 0.3s;cursor:none}
.btn-secondary:hover{background:var(--bg-glass);box-shadow:0 0 20px var(--neon-glow)}
.scroll-ind{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;animation:fadeInUp 1s 1.4s both}
.scroll-line{width:1px;height:44px;background:linear-gradient(to bottom,var(--neon),transparent);animation:scrollPulse 2s ease-in-out infinite}
.scroll-txt{font-size:9px;letter-spacing:3px;color:var(--neon-dim);text-transform:uppercase;font-family:'Share Tech Mono',monospace}

/* ── SECTIONS ── */
section{position:relative;z-index:10;padding:100px 60px;transition:background 0.4s}
section.alt{background:var(--bg-alt)}
.sec-label{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--section-label-c);letter-spacing:4px;text-transform:uppercase;margin-bottom:10px;display:flex;align-items:center;gap:10px}
.sec-label::before{content:'';width:24px;height:1px;background:var(--neon);opacity:0.5;flex-shrink:0}
h2.sec-title{font-family:'Orbitron',sans-serif;font-size:clamp(24px,3.5vw,46px);font-weight:700;color:var(--text-h);margin-bottom:16px;line-height:1.2;transition:color 0.4s}
h2.sec-title .hl{color:var(--neon)}
.sec-desc{font-size:15px;color:var(--text-p);max-width:560px;line-height:1.85;font-weight:300}

/* STATS */
.stat-block{display:flex;gap:48px;margin-top:48px;padding:32px 0;border-top:1px solid var(--border-glass);border-bottom:1px solid var(--border-glass);transition:border-color 0.4s;flex-wrap:wrap}
.stat-num{font-family:'Orbitron',sans-serif;font-size:42px;font-weight:900;color:var(--stat-c);line-height:1;margin-bottom:6px;transition:color 0.4s}
.stat-lbl{font-size:11px;color:var(--text-faint);letter-spacing:2px;text-transform:uppercase}

/* CARDS */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:52px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:64px}
.card{padding:40px 34px;background:var(--bg-glass);border:1px solid var(--border-glass);position:relative;overflow:hidden;transition:all 0.4s}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--neon),transparent);opacity:0;transition:opacity 0.4s}
.card:hover{background:var(--neon-soft);border-color:var(--neon-dim)}
.card:hover::before{opacity:1}
.card-num{font-family:'Orbitron',sans-serif;font-size:10px;color:var(--neon-dim);letter-spacing:3px;margin-bottom:18px}
.card-title{font-family:'Orbitron',sans-serif;font-size:16px;font-weight:600;color:var(--text-h);margin-bottom:12px;transition:color 0.4s}
.card-body{font-size:13px;color:var(--text-p);line-height:1.85;font-weight:300}
.card-arrow{position:absolute;bottom:20px;right:20px;width:40px;height:40px;border:1px solid var(--border-glass);display:flex;align-items:center;justify-content:center;color:var(--neon-dim);font-size:16px}

/* SERVICE CARDS */
.svc-card{padding:40px 28px;background:var(--bg-card);border:1px solid var(--border-card);position:relative;overflow:hidden;transition:all 0.45s;cursor:none}
.svc-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--neon);transform:scaleX(0);transform-origin:left;transition:transform 0.4s}
.svc-card:hover{background:var(--neon-soft);transform:translateY(-3px);box-shadow:0 14px 40px rgba(0,0,0,0.18)}
.svc-card:hover::after{transform:scaleX(1)}
.svc-tag{font-family:'Orbitron',sans-serif;font-size:24px;font-weight:900;color:transparent;-webkit-text-stroke:1px var(--neon);margin-bottom:18px;display:block;transition:all 0.3s}
.svc-card:hover .svc-tag{-webkit-text-stroke-color:var(--neon);text-shadow:0 0 14px var(--neon-glow)}
.svc-name{font-family:'Orbitron',sans-serif;font-size:12px;font-weight:600;color:var(--neon);letter-spacing:2px;margin-bottom:12px}
.svc-desc{font-size:13px;color:var(--text-p);line-height:1.8;font-weight:300}

/* DIFFERENTIATORS */
.diff-row{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:64px}
.diff-item{padding:32px 24px;border-left:1px solid var(--border-glass);transition:all 0.4s}
.diff-item:hover{border-left-color:var(--neon);background:var(--bg-glass)}
.diff-num{font-family:'Orbitron',sans-serif;font-size:40px;font-weight:900;color:transparent;-webkit-text-stroke:2px rgba(0,232,122,0.60);line-height:1;margin-bottom:16px;transition:all 0.4s}
.diff-item:hover .diff-num{-webkit-text-stroke-color:var(--neon);text-shadow:0 0 20px var(--neon-glow)}
.diff-name{font-family:'Orbitron',sans-serif;font-size:12px;font-weight:700;color:var(--neon);letter-spacing:2px;text-transform:uppercase;margin-bottom:10px}
.diff-body{font-size:13px;color:var(--text-p);line-height:1.75;font-weight:300}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:52px;position:relative}
.steps::before{content:'';position:absolute;top:48px;left:12.5%;right:12.5%;height:1px;background:linear-gradient(90deg,transparent,var(--neon),transparent);opacity:0.2}
.step{padding:32px 18px;text-align:center;position:relative;z-index:1;transition:all 0.4s}
.step-circle{width:92px;height:92px;border-radius:50%;border:1px solid var(--border-glass);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 20px;background:var(--bg-glass);transition:all 0.4s;position:relative}
.step:hover .step-circle{background:var(--neon-soft);border-color:var(--neon);box-shadow:0 0 28px var(--neon-glow)}
.step-circle::before{content:'';position:absolute;inset:-8px;border-radius:50%;border:1px solid var(--border-glass)}
.step-code{font-family:'Orbitron',sans-serif;font-size:9px;font-weight:700;color:var(--neon);letter-spacing:1px}
.step-n{font-family:'Orbitron',sans-serif;font-size:17px;font-weight:900;color:var(--text-h);transition:color 0.4s}
.step-label{font-family:'Orbitron',sans-serif;font-size:15px;font-weight:700;color:var(--text-h);margin-bottom:8px;transition:color 0.4s}
.step-body{font-size:13px;color:var(--text-p);line-height:1.7;font-weight:300}

/* TECH */
.tech-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-top:64px}
.tech-vis{position:relative;height:360px;border:1px solid var(--border-glass);background:var(--bg-glass);overflow:hidden;transition:all 0.4s}
#tech-canvas{width:100%;height:100%}
.drop2b-block{display:flex;align-items:center;gap:14px;margin-bottom:28px;padding:18px 20px;border:1px solid var(--border-glass);background:var(--bg-glass)}
.drop2b-block img{height:40px;filter:var(--logo-tech-f);transition:filter 0.4s;flex-shrink:0}
.drop2b-label{font-family:'Orbitron',sans-serif;font-size:11px;color:var(--neon);letter-spacing:2px;margin-bottom:4px}
.drop2b-sub{font-size:12px;color:var(--text-faint)}
.tech-row{padding:18px 0;border-bottom:1px solid var(--border-glass);display:flex;align-items:center;gap:14px;transition:all 0.3s;cursor:none}
.tech-row:hover{border-bottom-color:var(--neon-dim);padding-left:8px}
.tech-dot{width:6px;height:6px;border-radius:50%;background:var(--neon-dim);flex-shrink:0;transition:all 0.3s}
.tech-row:hover .tech-dot{background:var(--neon);box-shadow:0 0 8px var(--neon)}
.tech-name{font-family:'Orbitron',sans-serif;font-size:11px;font-weight:600;color:var(--text-p);letter-spacing:1px;transition:color 0.3s}
.tech-row:hover .tech-name{color:var(--text-h)}
.tech-tag{margin-left:auto;font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--text-p);letter-spacing:2px}

/* PROJECTS */
.proj-card{padding:34px 28px;background:var(--bg-card);border:1px solid var(--border-card);position:relative;overflow:hidden;transition:all 0.4s;cursor:none}
.proj-card:hover{border-color:var(--neon-dim);background:var(--neon-soft)}
.proj-tag{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--neon);letter-spacing:3px;text-transform:uppercase;margin-bottom:14px}
.proj-name{font-family:'Orbitron',sans-serif;font-size:18px;font-weight:700;color:var(--text-h);margin-bottom:12px;line-height:1.3;transition:color 0.4s}
.proj-desc{font-size:13px;color:var(--text-p);line-height:1.7;margin-bottom:24px;font-weight:300}
.icon-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.icon-item{display:flex;align-items:center;gap:10px}
.icon-item img{width:26px;height:26px;filter:var(--icon-f);transition:filter 0.4s;flex-shrink:0;opacity:0.85}
.icon-item span{font-size:11px;color:var(--text-p);line-height:1.35}
.proj-glow{position:absolute;bottom:-40px;right:-40px;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,var(--neon-glow) 0%,transparent 70%);opacity:0.18;transition:all 0.4s}
.proj-card:hover .proj-glow{transform:scale(2.4)}

/* SYLO TECH LOGO */
.sylo-tech-logo{margin-bottom:22px}
.sylo-tech-logo img{height:38px;filter:var(--logo-tech-f);transition:filter 0.4s}

/* CONTACT */
#contacto{background:var(--bg-primary);text-align:center}
.contact-box{max-width:740px;margin:64px auto 0;padding:64px 52px;border:1px solid var(--border-glass);background:var(--bg-glass);position:relative;overflow:hidden;transition:all 0.4s}
.contact-box::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--neon),transparent)}
.contact-info{margin-top:40px;display:flex;flex-direction:column;gap:18px;align-items:center}
.contact-row{display:flex;align-items:baseline;gap:12px;font-size:14px;flex-wrap:wrap;justify-content:center}
.contact-lbl{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--neon);letter-spacing:3px;min-width:70px;text-align:right;flex-shrink:0;opacity:0.75}
.contact-sep{color:var(--neon-dim)}
.contact-val{color:var(--text-p)}
.contact-val a{color:var(--neon);text-decoration:none}

/* FOOTER */
footer{position:relative;z-index:10;padding:32px 60px;border-top:1px solid var(--border-glass);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:var(--footer-bg);transition:all 0.4s}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;justify-content:center}
.footer-links a{font-size:10px;color:var(--text-faint);text-decoration:none;letter-spacing:1px;transition:color 0.3s}
.footer-links a:hover{color:var(--neon)}
.footer-copy{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--text-faint);letter-spacing:2px;text-align:right}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.75s ease,transform 0.75s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.d1{transition-delay:0.1s}.d2{transition-delay:0.2s}.d3{transition-delay:0.3s}.d4{transition-delay:0.4s}

@keyframes fadeInUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes scrollPulse{0%,100%{opacity:0.35}50%{opacity:1}}
@keyframes scanline{0%{top:-2px}100%{top:100%}}

@media(max-width:900px){
  nav{padding:14px 20px}
  .nav-links{display:none}
  section{padding:72px 20px}
  .grid2,.grid3,.diff-row,.steps,.tech-layout{grid-template-columns:1fr}
  .steps::before{display:none}
  .tech-vis{height:200px}
  footer{grid-template-columns:1fr;justify-items:center;padding:32px 20px;gap:16px}
  .footer-copy{text-align:center}
  #hero{padding:110px 20px 70px}
  .seg-hero{padding:110px 20px 60px}
  .seg-form-box{padding:24px}
  .legal-hero{padding:110px 20px 40px}
  .legal-content{padding:24px 20px 60px}
}

/* ── ICONOS ENTORNO — con icono SVG + texto big ── */
.svc-head { display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.svc-icon {
  width:38px; height:38px; flex-shrink:0; object-fit:contain;
  filter: brightness(0) invert(1) sepia(1) saturate(2) hue-rotate(80deg);
  opacity:0.72; transition: filter 0.35s, transform 0.35s, opacity 0.35s;
}
[data-theme="light"] .svc-icon {
  filter: brightness(0) saturate(100%) invert(25%) sepia(70%) saturate(600%) hue-rotate(120deg);
  opacity:0.8;
}
.svc-card:hover .svc-icon {
  opacity:1; transform:scale(1.1);
  filter: brightness(0) invert(1) sepia(1) saturate(3) hue-rotate(80deg) drop-shadow(0 0 5px rgba(0,232,122,0.5));
}
[data-theme="light"] .svc-card:hover .svc-icon {
  filter: brightness(0) saturate(100%) invert(25%) sepia(70%) saturate(600%) hue-rotate(120deg) drop-shadow(0 0 4px rgba(0,106,56,0.4));
}

/* ── ICONOS DIFERENCIADORES ── */
.diff-head { display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.diff-icon {
  width:30px; height:30px; flex-shrink:0;
  filter: brightness(0) invert(1) sepia(1) saturate(2) hue-rotate(80deg);
  opacity:0.55; transition: filter 0.35s, opacity 0.35s;
}
[data-theme="light"] .diff-icon {
  filter: brightness(0) saturate(100%) invert(25%) sepia(70%) saturate(600%) hue-rotate(120deg);
  opacity:0.65;
}
.diff-item:hover .diff-icon {
  opacity:1;
  filter: brightness(0) invert(1) sepia(1) saturate(3) hue-rotate(80deg) drop-shadow(0 0 4px rgba(0,232,122,0.4));
}
[data-theme="light"] .diff-item:hover .diff-icon {
  filter: brightness(0) saturate(100%) invert(25%) sepia(70%) saturate(600%) hue-rotate(120deg) drop-shadow(0 0 3px rgba(0,106,56,0.35));
}

/* ── ICONOS PROYECTOS — filtro correcto por modo ── */
[data-theme="dark"]  .icon-item img { filter: brightness(0) invert(1) sepia(1) saturate(2) hue-rotate(80deg); opacity:0.8; }
[data-theme="light"] .icon-item img { filter: brightness(0) saturate(100%) invert(25%) sepia(70%) saturate(600%) hue-rotate(120deg); opacity:0.85; }

/* Nav links: dark mode color differs from --text-p */
[data-theme="dark"]  .nav-links a { color: #90c4a8; }

/* Sec-label más legible */
[data-theme="dark"]  .sec-label { color: rgba(0,232,122,0.75); }
[data-theme="light"] .sec-label { color: rgba(0,100,50,0.85); }

/* card-num/proj-tag/tech-tag: differ from --text-p/-faint base */
[data-theme="dark"]  .card-num, [data-theme="dark"]  .proj-tag,
[data-theme="dark"]  .tech-tag { color: #90c4a8; }
[data-theme="light"] .card-num, [data-theme="light"] .proj-tag,
[data-theme="light"] .tech-tag { color: #333333; }

/* scroll-txt: base uses --neon-dim, override to solid color */
[data-theme="dark"]  .scroll-txt { color: #90c4a8; }
[data-theme="light"] .scroll-txt { color: #333333; }

/* ══ LOGOS: dark = blanco | light = verde #00667d ══
   .logo-dark  → SVG fill #ffffff  → visible en dark, oculto en light
   .logo-color → SVG fill #00667d  → oculto en dark, visible en light  */
.logo-dark  { display:inline-flex; line-height:0; }
.logo-color { display:none;        line-height:0; }
[data-theme="light"] .logo-dark  { display:none !important; }
[data-theme="light"] .logo-color { display:inline-flex !important; }
/* dark es el estado por defecto — logo-dark visible, logo-color oculto */

/* diff-num: light mode uses darker green stroke */
[data-theme="light"] .diff-num { -webkit-text-stroke: 2px rgba(0,80,50,0.55); }

/* diff-icon: números de los diferenciadores acompañantes */
[data-theme="dark"]  .diff-icon  { opacity: 0.70; }
[data-theme="light"] .diff-icon  { opacity: 0.75; }

/* contact-lbl por modo */
[data-theme="dark"]  .contact-lbl { color: #7dcfa8; opacity: 1; }
[data-theme="light"] .contact-lbl { color: #0f5a38; opacity: 1; }
[data-theme="dark"]  .contact-sep { color: rgba(0,232,122,0.50); }
[data-theme="light"] .contact-sep { color: rgba(0,100,50,0.60); }

/* ══════════════════════════════════════════════════════════════
   14. PÁGINA SEGUROS
══════════════════════════════════════════════════════════════ */

/* Hero */
.seg-hero{position:relative;z-index:10;min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:130px 60px 80px;text-align:center}
.seg-hero-title{font-family:'Orbitron',sans-serif;font-size:clamp(28px,4.5vw,62px);font-weight:900;line-height:1.12;color:var(--text-h);margin-bottom:10px;animation:fadeInUp 1s 0.5s both;transition:color 0.4s}
.seg-hero-title .accent{color:transparent;-webkit-text-stroke:2px var(--neon)}

/* Formulario CF7 */
.seg-form-box{max-width:740px;margin:52px auto 0;padding:52px;border:1px solid var(--border-glass);background:var(--bg-glass);position:relative;overflow:hidden}
.seg-form-box::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--neon),transparent)}
.seg-form-box .wpcf7-form{display:flex;flex-direction:column;gap:16px}
.seg-form-box label{display:block;font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--neon);letter-spacing:3px;text-transform:uppercase;margin-bottom:6px;opacity:0.75}
.seg-form-box input[type="text"],
.seg-form-box input[type="email"],
.seg-form-box input[type="tel"],
.seg-form-box select,
.seg-form-box textarea{width:100%;padding:12px 16px;background:transparent;border:1px solid var(--border-glass);color:var(--text-p);font-family:'Rajdhani',sans-serif;font-size:14px;transition:border-color 0.3s,background 0.3s;outline:none;-webkit-appearance:none;appearance:none}
.seg-form-box input[type="text"]:focus,
.seg-form-box input[type="email"]:focus,
.seg-form-box input[type="tel"]:focus,
.seg-form-box select:focus,
.seg-form-box textarea:focus{border-color:var(--neon);background:var(--neon-soft)}
.seg-form-box textarea{height:120px;resize:vertical}
.seg-form-box input[type="submit"]{padding:14px 36px;background:var(--neon);color:#071a10;font-family:'Rajdhani',sans-serif;font-weight:700;font-size:12px;letter-spacing:3px;text-transform:uppercase;border:none;cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);transition:all 0.3s;margin-top:4px}
.seg-form-box input[type="submit"]:hover{box-shadow:0 0 36px var(--neon-glow);transform:translateY(-2px)}
.seg-form-box .wpcf7-list-item{display:flex;align-items:flex-start;gap:10px;margin:0}
.seg-form-box .wpcf7-list-item-label{font-size:12px;color:var(--text-faint);line-height:1.5}
.seg-form-box .wpcf7-not-valid-tip{font-size:10px;color:#ff4444;display:block;margin-top:4px}
.seg-form-box .wpcf7-response-output{border-color:var(--neon-dim) !important;color:var(--text-p);font-size:12px;padding:12px 16px;margin-top:16px}

[data-theme="light"] .seg-form-box input[type="text"],
[data-theme="light"] .seg-form-box input[type="email"],
[data-theme="light"] .seg-form-box input[type="tel"],
[data-theme="light"] .seg-form-box select,
[data-theme="light"] .seg-form-box textarea{background:rgba(255,255,255,0.7);color:#000}
[data-theme="light"] .seg-form-box input[type="submit"]{color:#fff}

/* ── ÚNETE AL EQUIPO ── */
.unete-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:48px}

/* ── PÁGINAS LEGALES ── */
.legal-hero{position:relative;z-index:10;min-height:35vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:130px 60px 60px;text-align:center}
.legal-content{position:relative;z-index:10;max-width:860px;margin:0 auto;padding:40px 60px 100px}
.legal-content h2{font-family:'Orbitron',sans-serif;font-size:18px;font-weight:700;color:var(--text-h);margin:40px 0 14px;letter-spacing:1px;transition:color 0.4s}
.legal-content h3{font-family:'Orbitron',sans-serif;font-size:13px;font-weight:600;color:var(--neon);margin:28px 0 10px;letter-spacing:1px}
.legal-content p{font-size:14px;color:var(--text-p);line-height:1.85;margin-bottom:14px;font-weight:300}
.legal-content ul,.legal-content ol{padding-left:20px;margin-bottom:14px;font-size:14px;color:var(--text-p);font-weight:300}
.legal-content li{margin-bottom:6px;line-height:1.75}
.legal-content a{color:var(--neon);text-decoration:none}
.legal-content a:hover{text-decoration:underline}
.legal-content strong{color:var(--text-h);font-weight:600}

