/* ============================================================================
   REDES & TI — subidentidad visual premium (azul/celeste/blanco).
   AISLADO: solo aplica bajo body.rt (landing /soluciones-redes-ti).
   No afecta ecommerce, home ni otras landings. Prefijo .rt-.
   ============================================================================ */
.rt{
  --rt-bg:#060b16; --rt-bg2:#0a1120; --rt-panel:#0e1726; --rt-panel2:#121d31;
  --rt-line:#1e2e46; --rt-line2:#2a3f5f; --rt-cyan:#38bdf8; --rt-cyan2:#22d3ee;
  --rt-blue:#2563eb; --rt-ink:#eef4fd; --rt-mut:#94a7c4; --rt-faint:#5f7396;
  --rt-sans:'Barlow',system-ui,-apple-system,sans-serif;
  background:var(--rt-bg); color:var(--rt-ink); font-family:var(--rt-sans);
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
.rt .wrap{max-width:1220px;margin:0 auto;padding:0 26px}
.rt h1,.rt h2,.rt h3{font-family:var(--rt-sans);font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0}
.rt p{margin:0}
.rt a{color:inherit;text-decoration:none}
.rt img{max-width:100%;display:block}
.rt :focus-visible{outline:2px solid var(--rt-cyan);outline-offset:3px;border-radius:5px}
.rt-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--rt-cyan);font-weight:700;
  letter-spacing:.24em;text-transform:uppercase;font-size:12.5px}
.rt-eyebrow::before{content:"";width:30px;height:2px;background:linear-gradient(90deg,var(--rt-cyan),transparent)}

/* nav: tinte azul dentro de la landing (no toca el nav global) */
.rt.lp .lp-head{background:rgba(6,11,22,.72);backdrop-filter:blur(10px);border-bottom:1px solid var(--rt-line)}
.rt.lp .lp-nav a{color:#cbd8ec}
.rt.lp .lp-nav a:hover{color:#fff}
.rt.lp .lp-cta{background:var(--rt-cyan)!important;color:#04101f!important;border-radius:9px;font-weight:700}
.rt.lp .lp-cta:hover{background:#5cc9fb!important}

/* botones */
.rt-btn{display:inline-flex;align-items:center;gap:9px;padding:14px 24px;border-radius:11px;font-weight:600;
  font-size:15px;border:1px solid transparent;transition:transform .18s ease,background .18s ease,border-color .18s ease}
.rt-btn svg{width:17px;height:17px}
.rt-btn-p{background:var(--rt-cyan);color:#04101f}
.rt-btn-p:hover{background:#5cc9fb;transform:translateY(-2px)}
.rt-btn-wa{background:#25d366;color:#053}
.rt-btn-wa:hover{filter:brightness(1.06);transform:translateY(-2px)}
.rt-btn-o{border-color:var(--rt-line2);color:#dbe6f6;background:rgba(255,255,255,.03)}
.rt-btn-o:hover{border-color:var(--rt-cyan);transform:translateY(-2px)}

/* ---------- HERO — composición split premium ---------- */
.rt-hero{position:relative;min-height:min(92vh,780px);display:flex;align-items:center;overflow:hidden;
  background:radial-gradient(135% 130% at 0% 0%,#0b1728 0%,#070e1c 52%,#05090f 100%);border-bottom:1px solid var(--rt-line)}
.rt-hero-photo{position:absolute;inset:0;z-index:0}
.rt-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:70% center}
.rt-hero-photo::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,#05090f 0%,rgba(6,11,22,.97) 29%,rgba(6,11,22,.52) 52%,rgba(8,18,38,.22) 78%,rgba(10,26,52,.14) 100%),
  linear-gradient(180deg,rgba(5,9,15,.5),transparent 24%,transparent 58%,rgba(5,9,15,.82)),
  radial-gradient(60% 75% at 80% 42%,rgba(37,99,235,.2),transparent 70%)}
.rt-hero-grid{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.6;
  background-image:linear-gradient(rgba(56,189,248,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(56,189,248,.055) 1px,transparent 1px);
  background-size:76px 76px;mask-image:linear-gradient(90deg,#000 24%,transparent 60%)}
.rt-hero-tag{position:absolute;right:28px;bottom:26px;z-index:3;display:inline-flex;align-items:center;gap:9px;
  padding:9px 15px;border-radius:999px;background:rgba(7,14,28,.62);backdrop-filter:blur(8px);
  border:1px solid var(--rt-line2);font-size:12.5px;color:#cfe0f5;font-weight:500}
.rt-hero-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--rt-cyan);box-shadow:0 0 0 4px rgba(56,189,248,.18)}
.rt-hero .wrap{position:relative;z-index:2;width:100%}
.rt-hero-content{max-width:566px;padding:96px 0 84px}
.rt-hero h1{font-size:clamp(38px,4.9vw,60px);font-weight:800;margin:22px 0 0;color:#fff;line-height:1.08;letter-spacing:-.022em;text-wrap:balance}
.rt-hero h1 .ac{background:linear-gradient(92deg,var(--rt-cyan),var(--rt-cyan2));-webkit-background-clip:text;background-clip:text;color:transparent}
.rt-hero-sub{font-size:clamp(15.5px,1.35vw,18px);color:#b9cbe6;max-width:46ch;margin-top:20px;line-height:1.6}
.rt-hero-bullets{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.rt-hero-bullets span{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:#d3e2f6;font-weight:500;
  border:1px solid var(--rt-line2);background:rgba(12,24,46,.5);border-radius:9px;padding:8px 13px}
.rt-hero-bullets span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--rt-cyan)}
.rt-ctas{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}
.rt-hero .rt-btn{height:52px;padding:0 24px}
.rt-trust{display:inline-grid;grid-auto-flow:column;grid-auto-columns:max-content;gap:36px;margin-top:36px;padding-top:26px;border-top:1px solid var(--rt-line)}
.rt-trust .t{display:flex;flex-direction:column;gap:3px}
.rt-trust b{font-size:23px;font-weight:800;color:#fff;line-height:1}
.rt-trust span{font-size:11.5px;color:var(--rt-faint);letter-spacing:.02em}

/* ---------- secciones ---------- */
.rt-sec{padding:82px 0;border-bottom:1px solid var(--rt-line);position:relative}
.rt-sec.alt{background:var(--rt-bg2)}
.rt-head{max-width:70ch;margin-bottom:44px}
.rt-head h2{font-size:clamp(28px,3.4vw,44px);font-weight:800;margin-top:14px;color:#fff}
.rt-head h2 .ac{color:var(--rt-cyan)}
.rt-head p{color:var(--rt-mut);font-size:17px;margin-top:14px;line-height:1.6}

/* Qué hacemos — chips de capacidades */
.rt-caps{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center}
.rt-caps-list{display:flex;flex-wrap:wrap;gap:10px}
.rt-caps-list span{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:#d5e2f4;font-weight:500;
  border:1px solid var(--rt-line);background:var(--rt-panel);border-radius:10px;padding:11px 15px;transition:border-color .2s,transform .2s}
.rt-caps-list span:hover{border-color:var(--rt-cyan);transform:translateY(-2px)}
.rt-caps-list span svg{width:16px;height:16px;color:var(--rt-cyan)}
.rt-caps-media{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--rt-line);aspect-ratio:4/3}
.rt-caps-media img{width:100%;height:100%;object-fit:cover}
.rt-caps-media::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,transparent 55%,rgba(37,99,235,.28))}

/* Soluciones — tarjetas premium */
.rt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rt-card{background:var(--rt-panel);border:1px solid var(--rt-line);border-radius:16px;padding:26px 24px;position:relative;
  transition:border-color .22s,transform .22s,background .22s;overflow:hidden}
.rt-card::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--rt-cyan),var(--rt-blue));transition:width .35s ease}
.rt-card:hover{border-color:var(--rt-line2);transform:translateY(-4px);background:var(--rt-panel2)}
.rt-card:hover::before{width:100%}
.rt-card .ic{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(150deg,rgba(56,189,248,.16),rgba(37,99,235,.1));color:var(--rt-cyan);margin-bottom:18px;border:1px solid var(--rt-line)}
.rt-card .ic svg{width:24px;height:24px}
.rt-card h3{font-size:19.5px;font-weight:700;color:#fff}
.rt-card p{color:var(--rt-mut);font-size:14px;margin-top:9px;line-height:1.55}

/* Por qué — filas enterprise */
.rt-why{display:grid;grid-template-columns:repeat(2,1fr);gap:0 44px}
.rt-why .it{display:flex;gap:16px;padding:22px 0;border-bottom:1px solid var(--rt-line)}
.rt-why .ic{flex:0 0 auto;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:rgba(56,189,248,.1);color:var(--rt-cyan)}
.rt-why .ic svg{width:20px;height:20px}
.rt-why h3{font-size:17px;font-weight:700;color:#fff}
.rt-why p{font-size:13.5px;color:var(--rt-mut);margin-top:4px;line-height:1.5}

/* Proyectos */
.rt-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rt-shot{position:relative;margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--rt-line);aspect-ratio:4/3;background:var(--rt-panel)}
.rt-shot img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.rt-shot:hover img{transform:scale(1.06)}
.rt-shot figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 12px;font-size:12.5px;color:#eaf3ff;font-weight:500;
  background:linear-gradient(transparent,rgba(4,10,20,.86));opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s}
.rt-shot:hover figcaption,.rt-shot:focus-within figcaption{opacity:1;transform:none}

/* Proceso */
.rt-proc{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border:1px solid var(--rt-line);border-radius:16px;overflow:hidden;background:var(--rt-panel)}
.rt-step{padding:26px 20px;border-right:1px solid var(--rt-line);position:relative}
.rt-step:last-child{border-right:none}
.rt-step .num{font-size:26px;font-weight:800;color:var(--rt-cyan);line-height:1;opacity:.5}
.rt-step h3{font-size:15.5px;font-weight:700;color:#fff;margin-top:12px}
.rt-step p{font-size:12.5px;color:var(--rt-mut);margin-top:6px;line-height:1.45}

/* CTA final */
.rt-cta{position:relative;padding:88px 0;overflow:hidden;background:linear-gradient(120deg,#081326,#0a1a38 55%,#0b2450)}
.rt-cta-grid{position:absolute;inset:0;pointer-events:none;opacity:.4;
  background-image:linear-gradient(rgba(56,189,248,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(56,189,248,.08) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(80% 80% at 70% 30%,#000,transparent 75%)}
.rt-cta .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
.rt-cta h2{font-size:clamp(30px,3.8vw,50px);font-weight:800;color:#fff;text-wrap:balance}
.rt-cta .lead{color:#bcd0ec;font-size:18px;margin-top:18px;line-height:1.55;max-width:44ch}
.rt-cta-contact{margin-top:28px;display:flex;flex-direction:column;gap:11px}
.rt-cta-contact a,.rt-cta-contact span{display:inline-flex;align-items:center;gap:11px;color:#bcd0ec;font-size:15px}
.rt-cta-contact a:hover{color:#fff}
.rt-cta-contact svg{width:18px;height:18px;color:var(--rt-cyan)}
.rt-form{background:rgba(8,16,32,.72);backdrop-filter:blur(8px);border:1px solid var(--rt-line2);border-radius:18px;padding:28px}
.rt-form h3{font-size:21px;font-weight:700;color:#fff}
.rt-form .fnote{color:var(--rt-faint);font-size:13px;margin:4px 0 18px}
.rt-form form{display:grid;gap:12px}
.rt-form label{font-size:12.5px;color:var(--rt-mut);font-weight:600;margin-bottom:-6px}
.rt-form input,.rt-form textarea{width:100%;background:rgba(4,10,20,.7);border:1px solid var(--rt-line2);border-radius:10px;
  padding:12px 14px;color:#eaf3ff;font-family:inherit;font-size:14.5px}
.rt-form input:focus,.rt-form textarea:focus{outline:none;border-color:var(--rt-cyan)}
.rt-form button{margin-top:6px;background:var(--rt-cyan);color:#04101f;border:none;border-radius:11px;padding:14px;
  font-weight:700;font-size:15.5px;cursor:pointer;transition:background .2s}
.rt-form button:hover{background:#5cc9fb}
.rt-form .ok{display:none;margin-top:14px;color:#34d399;font-weight:600}
.rt-form.sent form{display:none}.rt-form.sent .ok{display:block}

/* reveal (mejora progresiva; visible por defecto) */
.rt-reveal{transition:opacity .6s ease,transform .6s ease}
.rt-anim .rt-reveal{opacity:0;transform:translateY(20px)}
.rt-anim .rt-reveal.in{opacity:1;transform:none}

/* footer tinte */
.rt.lp .lp-foot{background:var(--rt-bg2);border-top:1px solid var(--rt-line);color:var(--rt-mut)}
.rt.lp .lp-foot a{color:#b8c8e0}.rt.lp .lp-foot a:hover{color:#fff}
.rt.lp .lp-wa{background:#25d366}

/* ---------- responsive ---------- */
@media (max-width:960px){
  .rt-hero{min-height:auto}
  .rt-hero-photo img{object-position:62% center}
  .rt-hero-photo::after{background:
    linear-gradient(180deg,rgba(5,9,15,.55),rgba(5,9,15,.72) 45%,rgba(5,9,15,.92)),
    radial-gradient(90% 60% at 50% 22%,rgba(37,99,235,.22),transparent 70%)}
  .rt-hero-grid{mask-image:none;opacity:.3}
  .rt-hero-content{max-width:none;padding:66px 0 56px}
  .rt-hero h1{font-size:clamp(34px,8vw,46px)}
  .rt-hero-tag{display:none}
  .rt-caps{grid-template-columns:1fr;gap:30px}.rt-caps-media{order:-1}
  .rt-grid{grid-template-columns:repeat(2,1fr)}
  .rt-why{grid-template-columns:1fr;gap:0}
  .rt-proc{grid-template-columns:repeat(3,1fr)}
  .rt-gallery{grid-template-columns:repeat(2,1fr)}
  .rt-cta .wrap{grid-template-columns:1fr;gap:34px}
}
@media (max-width:560px){
  .rt-sec{padding:52px 0}
  .rt-grid{grid-template-columns:1fr}
  .rt-proc{grid-template-columns:repeat(2,1fr)}
  .rt-gallery{grid-template-columns:1fr}
  .rt-step{border-right:none;border-bottom:1px solid var(--rt-line)}
  .rt-trust{gap:18px}
  .rt-shot figcaption{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){
  .rt *,.rt *::before,.rt *::after{transition:none!important;animation:none!important}
  .rt-anim .rt-reveal{opacity:1;transform:none}
}
