/* ══════════════════════════════════════════
   NEXT TECH — CSS ADICIONAL WORDPRESS v4
   ══════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

/* ── 1. Reset total de estructura WordPress ── */
html {
  overflow-x: hidden !important;
}

body, body.page, body.home {
  margin: 0 !important;
  padding: 0 !important;
  background: #050f1a !important;
  overflow-x: hidden !important;
  width: 100% !important;
  max-width: 100vw !important;
}

/* ── 2. Ocultar elementos nativos del tema ── */
#masthead,
.site-header,
#colophon,
.site-footer,
.entry-header,
.entry-title,
.entry-footer,
.site-header-wrap {
  display: none !important;
}

/* ── 3. Neutralizar todos los wrappers ── */
#page,
#content,
#primary,
#main,
.site-content,
.entry-content,
.wp-site-blocks,
.is-layout-flow,
.is-layout-constrained,
.responsive-max-width,
article.entry {
  all: unset !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

/* ── 4. Bloque HTML sin restricciones ── */
.wp-block-html {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.entry-content > * {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ── 5. Estilo de landing ── */
:root{
  --dark:#050f1a;
  --dark2:#081929;
  --dark3:#0d2137;
  --blue:#0077B6;
  --blue2:#0096D6;
  --blue-dim:#023e5c;
  --blue-light:#e8f4fd;
  --accent:#00B4D8;
  --text:#0d1b2a;
  --gray:#4a6075;
  --light:#f7fafd;
  --border:#d0e4f0;
  --white:#ffffff;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{font-family:'Inter',sans-serif;color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}

/* ── NAV ── */
.nt-nav{background:var(--dark);padding:0 6%;display:flex;align-items:center;justify-content:space-between;height:70px;position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(0,119,182,.15)}
.nt-logo{display:flex;align-items:center;gap:14px}
.nt-logo-badge{width:38px;height:38px;background:var(--blue);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:14px;color:#fff;letter-spacing:-.5px;flex-shrink:0}
.nt-logo-name{color:#fff;font-size:17px;font-weight:700;letter-spacing:-.2px}
.nt-logo-sub{color:#4a7a98;font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;display:block;margin-top:1px}
.nt-nav-links{display:flex;gap:32px;align-items:center}
.nt-nav-links a{color:#7a9db5;font-size:13px;font-weight:500;letter-spacing:.3px;transition:color .2s}
.nt-nav-links a:hover{color:#fff}
.nt-nav-cta{background:var(--blue);color:#fff!important;padding:9px 22px;border-radius:6px;font-weight:600;font-size:13px!important;letter-spacing:.2px;transition:background .2s}
.nt-nav-cta:hover{background:var(--blue2)!important}

/* ── HERO ── */
.nt-hero{background:var(--dark);min-height:580px;display:flex;align-items:center;padding:80px 6%;position:relative;overflow:hidden}
.nt-hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 80% 50%,rgba(0,119,182,.12) 0%,transparent 70%);pointer-events:none}
.nt-hero-line{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,transparent,var(--blue),transparent)}
.nt-hero-content{position:relative;z-index:1;max-width:680px}
.nt-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:var(--accent);letter-spacing:2.5px;text-transform:uppercase;margin-bottom:24px}
.nt-eyebrow-line{width:32px;height:1.5px;background:var(--accent)}
.nt-hero h1{font-size:52px;font-weight:800;line-height:1.1;color:#fff;margin-bottom:20px;letter-spacing:-1.5px}
.nt-hero h1 em{color:var(--blue2);font-style:normal}
.nt-hero-desc{font-size:16px;color:#7a9db5;line-height:1.8;max-width:520px;margin-bottom:40px;font-weight:400}
.nt-hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.nt-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border-radius:6px;font-weight:600;font-size:14px;transition:all .2s;letter-spacing:.2px}
.nt-btn-primary{background:var(--blue);color:#fff}
.nt-btn-primary:hover{background:var(--blue2);transform:translateY(-1px)}
.nt-btn-outline{border:1.5px solid rgba(0,119,182,.5);color:#7ab4d0;background:transparent}
.nt-btn-outline:hover{border-color:var(--blue);color:#fff;background:rgba(0,119,182,.1)}
.nt-btn-arrow{font-size:16px;transition:transform .2s}
.nt-btn-primary:hover .nt-btn-arrow{transform:translateX(3px)}
.nt-hero-stats{display:flex;gap:0;margin-top:56px;border-top:1px solid rgba(255,255,255,.07);padding-top:40px}
.nt-stat{flex:1;padding-right:32px;border-right:1px solid rgba(255,255,255,.07)}
.nt-stat:last-child{border-right:none;padding-right:0;padding-left:32px}
.nt-stat:not(:first-child):not(:last-child){padding-left:32px}
.nt-stat-num{font-size:36px;font-weight:800;color:#fff;letter-spacing:-1px;line-height:1}
.nt-stat-num span{color:var(--blue2)}
.nt-stat-label{font-size:12px;color:#4a7a98;margin-top:6px;line-height:1.4;font-weight:400}

/* ── STRIP CLIENTES ── */
.nt-clients-strip{background:var(--dark2);padding:28px 6%;display:flex;align-items:center;gap:48px;border-bottom:1px solid rgba(0,119,182,.1)}
.nt-clients-label{font-size:11px;color:#3a6a88;font-weight:600;letter-spacing:2px;text-transform:uppercase;white-space:nowrap;flex-shrink:0}
.nt-clients-divider{width:1px;height:28px;background:rgba(0,119,182,.2);flex-shrink:0}
.nt-clients-logos{display:flex;gap:40px;align-items:center;flex-wrap:wrap}
.nt-client-name{font-size:15px;font-weight:700;color:#3a6a88;letter-spacing:1px;transition:color .2s}
.nt-client-name:hover{color:var(--blue2)}

/* ── SERVICIOS ── */
.nt-services{padding:88px 6%;background:var(--white)}
.nt-section-header{margin-bottom:56px}
.nt-section-tag{font-size:11px;font-weight:700;color:var(--blue);letter-spacing:2.5px;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.nt-section-tag::after{content:'';flex:1;height:1px;background:var(--border);max-width:60px}
.nt-section-header h2{font-size:36px;font-weight:800;color:var(--dark);letter-spacing:-1px;line-height:1.15;margin-bottom:14px}
.nt-section-header p{font-size:16px;color:var(--gray);max-width:520px;line-height:1.7}
.nt-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border)}
.nt-srv{background:var(--white);padding:36px 32px;transition:all .25s;position:relative;overflow:hidden}
.nt-srv::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nt-srv:hover{background:var(--light)}
.nt-srv:hover::before{transform:scaleX(1)}
.nt-srv-num{font-size:11px;font-weight:700;color:var(--border);letter-spacing:2px;margin-bottom:20px;font-family:'Inter',monospace}
.nt-srv-icon{font-size:22px;margin-bottom:16px;display:block;opacity:.8}
.nt-srv h3{font-size:17px;font-weight:700;color:var(--dark);margin-bottom:10px;letter-spacing:-.3px}
.nt-srv p{font-size:13px;color:var(--gray);line-height:1.7}
.nt-srv-tag{display:inline-block;margin-top:20px;font-size:11px;color:var(--blue);font-weight:600;letter-spacing:.5px}

/* ── PROPUESTA DE VALOR ── */
.nt-value{background:var(--dark);padding:88px 6%}
.nt-value-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.nt-value-left .nt-section-tag{color:var(--accent)}
.nt-value-left .nt-section-tag::after{background:rgba(255,255,255,.1)}
.nt-value-left h2{font-size:36px;font-weight:800;color:#fff;letter-spacing:-1px;line-height:1.15;margin-bottom:20px}
.nt-value-left p{font-size:15px;color:#7a9db5;line-height:1.8;margin-bottom:32px}
.nt-value-pills{display:flex;flex-wrap:wrap;gap:10px}
.nt-pill{background:rgba(0,119,182,.15);border:1px solid rgba(0,119,182,.3);color:#7ab4d0;font-size:12px;font-weight:500;padding:6px 14px;border-radius:4px;letter-spacing:.3px}
.nt-value-right{display:flex;flex-direction:column;gap:2px}
.nt-value-item{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);padding:28px;transition:all .25s}
.nt-value-item:hover{background:rgba(0,119,182,.08);border-color:rgba(0,119,182,.3)}
.nt-value-item-top{display:flex;align-items:center;gap:16px;margin-bottom:10px}
.nt-value-num{font-size:11px;font-weight:700;color:var(--blue);letter-spacing:2px;width:28px;flex-shrink:0}
.nt-value-item h4{font-size:15px;font-weight:700;color:#fff;letter-spacing:-.2px}
.nt-value-item p{font-size:13px;color:#5a8aa5;line-height:1.65;padding-left:44px}

/* ── SECTORES ── */
.nt-sectors{padding:88px 6%;background:var(--light)}
.nt-sectors-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:0}
.nt-sector{background:#fff;border:1.5px solid var(--border);border-radius:8px;padding:32px 24px;transition:all .25s;position:relative}
.nt-sector::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--blue);border-radius:0 0 8px 8px;opacity:0;transition:opacity .25s}
.nt-sector:hover{border-color:var(--blue);box-shadow:0 8px 32px rgba(0,119,182,.1);transform:translateY(-4px)}
.nt-sector:hover::after{opacity:1}
.nt-sector-icon{width:44px;height:44px;background:var(--blue-light);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:20px}
.nt-sector h3{font-size:15px;font-weight:700;color:var(--dark);margin-bottom:10px;letter-spacing:-.2px}
.nt-sector p{font-size:13px;color:var(--gray);line-height:1.65}

/* ── CLIENTES DETALLE ── */
.nt-clients{padding:80px 6%;background:var(--white);border-top:1px solid var(--border)}
.nt-clients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border);margin-top:0}
.nt-client-card{background:var(--white);padding:40px 32px;display:flex;flex-direction:column;gap:12px;transition:background .2s}
.nt-client-card:hover{background:var(--light)}
.nt-client-logo{font-size:22px;font-weight:900;color:var(--dark);letter-spacing:-1px}
.nt-client-sector{font-size:11px;font-weight:600;color:var(--blue);letter-spacing:2px;text-transform:uppercase}
.nt-client-desc{font-size:13px;color:var(--gray);line-height:1.6;margin-top:4px}

/* ── CONTACTO ── */
.nt-contact{padding:88px 6%;background:var(--dark)}
.nt-contact-grid{display:grid;grid-template-columns:5fr 7fr;gap:80px;align-items:start}
.nt-contact-left .nt-section-tag{color:var(--accent)}
.nt-contact-left .nt-section-tag::after{background:rgba(255,255,255,.1)}
.nt-contact-left h2{font-size:36px;font-weight:800;color:#fff;letter-spacing:-1px;line-height:1.15;margin-bottom:16px}
.nt-contact-left p{font-size:15px;color:#7a9db5;line-height:1.7;margin-bottom:40px}
.nt-contact-info{display:flex;flex-direction:column;gap:16px}
.nt-contact-item{display:flex;align-items:center;gap:16px;padding:18px 20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:6px;transition:border-color .2s}
.nt-contact-item:hover{border-color:rgba(0,119,182,.4)}
.nt-contact-item-icon{width:36px;height:36px;background:rgba(0,119,182,.15);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.nt-contact-item-label{font-size:11px;color:#3a6a88;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-bottom:3px}
.nt-contact-item-value{font-size:14px;color:#a0c4d8;font-weight:500}
.nt-contact-item-value a{color:var(--blue2);transition:color .2s}
.nt-contact-item-value a:hover{color:#fff}
.nt-form{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:36px}
.nt-form h3{font-size:18px;font-weight:700;color:#fff;margin-bottom:24px;letter-spacing:-.3px}
.nt-form-row{margin-bottom:16px}
.nt-form-row label{display:block;font-size:11px;font-weight:600;color:#4a7a98;margin-bottom:6px;letter-spacing:1px;text-transform:uppercase}
.nt-form-row input,.nt-form-row textarea,.nt-form-row select{width:100%;padding:11px 16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:14px;font-family:'Inter',sans-serif;color:#c0d8e8;transition:border .2s}
.nt-form-row input::placeholder,.nt-form-row textarea::placeholder{color:#3a6a88}
.nt-form-row input:focus,.nt-form-row textarea:focus,.nt-form-row select:focus{outline:none;border-color:var(--blue);background:rgba(0,119,182,.08)}
.nt-form-row select{color:#3a6a88}
.nt-form-row textarea{height:100px;resize:vertical}
.nt-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.nt-wa-btn{display:flex;align-items:center;justify-content:center;gap:10px;background:#128C7E;color:#fff;padding:13px;border-radius:6px;font-weight:600;font-size:14px;cursor:pointer;border:none;width:100%;transition:all .2s;font-family:'Inter',sans-serif;letter-spacing:.3px;margin-top:4px}
.nt-wa-btn:hover{background:#075E54;transform:translateY(-1px)}

/* ── FOOTER ── */
.nt-footer{background:var(--dark2);padding:32px 6%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid rgba(0,119,182,.12)}
.nt-footer-left{display:flex;align-items:center;gap:12px}
.nt-footer-badge{width:30px;height:30px;background:var(--blue);border-radius:6px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:11px;color:#fff}
.nt-footer-name{color:#3a6a88;font-size:13px;font-weight:500}
.nt-footer-right{color:#2a4a5e;font-size:12px;text-align:right}
.nt-footer-right a{color:#3a6a88;margin-left:16px;transition:color .2s}
.nt-footer-right a:hover{color:var(--blue2)}

@media(max-width:900px){
  .nt-services-grid{grid-template-columns:1fr 1fr}
  .nt-sectors-grid{grid-template-columns:1fr 1fr}
  .nt-clients-grid{grid-template-columns:1fr}
  .nt-value-grid,.nt-contact-grid{grid-template-columns:1fr;gap:48px}
  .nt-hero h1{font-size:36px}
  .nt-hero-stats{flex-direction:column;gap:24px}
  .nt-stat{border-right:none;border-bottom:1px solid rgba(255,255,255,.07);padding:0 0 20px 0}
  .nt-stat:last-child{border-bottom:none;padding-left:0}
}
@media(max-width:640px){
  .nt-nav-links{display:none}
  .nt-services-grid{grid-template-columns:1fr}
  .nt-sectors-grid{grid-template-columns:1fr}
  .nt-form-grid{grid-template-columns:1fr}
  .nt-hero{padding:60px 5%}
  .nt-hero h1{font-size:30px}
  .nt-clients-strip{flex-wrap:wrap;gap:24px}
}