/* ============================================================
   BLUE CURRENT GROUP — CONTACTO.CSS
   ============================================================ */

/* ---------------- CANALES ---------------- */
.channels{
  position:relative;
  z-index:5;
  margin-top:-46px;
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr;
  gap:14px;
}
.channel{
  position:relative;
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  padding:24px 24px 26px;
  display:flex;flex-direction:column;gap:5px;
  box-shadow:var(--shadow-card);
  min-width:0;
  transition:border-color var(--ease) .3s, transform var(--ease) .3s;
}
.channel:hover{border-color:var(--navy-900);transform:translateY(-4px);}
.channel .ci{
  display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;
  border-radius:var(--radius-sm);
  background:var(--navy-50);
  color:var(--navy-900);
  margin-bottom:12px;
}
.channel .ci svg{width:20px;height:20px;}
.channel .ct{font-size:12px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-soft);}
.channel .cv{font-family:var(--f-display);font-size:17px;color:var(--navy-900);overflow-wrap:anywhere;}
.channel .go{
  position:absolute;top:22px;right:22px;
  width:30px;height:30px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--navy-50);color:var(--navy-900);
  transition:background var(--ease) .3s, color var(--ease) .3s;
}
.channel .go svg{width:14px;height:14px;}
.channel:hover .go{background:var(--blue-500);color:var(--white);}
.ch-main{background:var(--navy-950);border-color:var(--navy-950);}
.ch-main .ci{background:var(--blue-500);color:var(--white);}
.ch-main .ct{color:rgba(255,255,255,0.6);}
.ch-main .cv{color:var(--white);}
.ch-main .go{background:rgba(255,255,255,0.12);color:var(--white);}
@media (max-width:980px){.channels{grid-template-columns:1fr;}}

/* ---------------- FORMULARIO + LATERAL ---------------- */
.contact-grid{
  display:grid;
  grid-template-columns:1.15fr 0.85fr;
  gap:clamp(28px,4vw,52px);
  align-items:start;
}
.form-card{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:clamp(28px,4vw,46px);
}
.form-card h2{font-size:clamp(24px,2.6vw,34px);margin-top:14px;}
.form-intro{margin-top:12px;color:var(--ink-soft);font-size:15px;}
.form-intro strong{color:var(--navy-900);font-weight:600;}

fieldset.field{border:none;padding:0;margin:28px 0 0;}
fieldset legend{font-size:13.5px;font-weight:600;color:var(--navy-900);margin-bottom:12px;padding:0;}
.interest{display:flex;flex-wrap:wrap;gap:8px;}
.interest button{
  padding:11px 16px;
  border-radius:100px;
  border:1px solid var(--line);
  background:var(--white);
  font-size:13.5px;font-weight:500;color:var(--ink-soft);
  transition:all var(--ease) .25s;
}
.interest button:hover{border-color:var(--navy-900);color:var(--navy-900);}
.interest button.is-active{background:var(--navy-900);border-color:var(--navy-900);color:var(--white);}

.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;}
.field{position:relative;}
.field.full{grid-column:1/-1;}
.field input,.field textarea{
  width:100%;
  font-family:var(--f-body);
  font-size:15.5px;
  color:var(--ink);
  background:var(--pearl);
  border:1px solid var(--line);
  border-radius:var(--radius-sm);
  padding:24px 15px 10px;
  transition:border-color var(--ease) .25s, background var(--ease) .25s;
}
.field textarea{resize:vertical;min-height:140px;}
.field label{
  position:absolute;left:16px;top:17px;
  font-size:15px;color:var(--ink-soft);
  pointer-events:none;
  transition:all var(--ease) .2s;
}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--blue-500);background:var(--white);}
.field input:focus + label,
.field input:not(:placeholder-shown) + label,
.field textarea:focus + label,
.field textarea:not(:placeholder-shown) + label{
  top:8px;font-size:11px;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:var(--blue-500);
}
.field .err{display:none;font-size:12.5px;font-weight:500;color:#c2410c;margin-top:6px;}
.field.has-error input{border-color:#ea580c;}
.field.has-error .err{display:block;}
#errInterest{display:none;font-size:12.5px;font-weight:500;color:#c2410c;margin-top:8px;}
#errInterest.show{display:block;}
.field .count{position:absolute;right:14px;bottom:12px;font-size:12px;color:var(--ink-soft);}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;}
.form-ok{
  display:none;align-items:center;gap:10px;
  margin-top:20px;padding:14px 16px;
  border-radius:var(--radius-sm);
  background:var(--blue-100);
  color:var(--blue-600);
  font-weight:500;font-size:14.5px;
}
.form-ok svg{width:17px;height:17px;flex-shrink:0;}
.form-ok.show{display:flex;}

/* ---------------- LATERAL ---------------- */
.side{position:sticky;top:104px;display:flex;flex-direction:column;gap:14px;}
.map-frame{
  border-radius:var(--radius-md);
  overflow:hidden;
  aspect-ratio:16/10;
  border:1px solid var(--line);
  background:var(--navy-900);
}
.map-frame iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(0.4) contrast(1.04);}
.side-office{
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  padding:22px 24px;
  background:var(--white);
}
.so-flag{
  display:inline-block;
  font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--blue-500);margin-bottom:10px;
}
.side-office h3{font-size:19px;}
.side-office p{margin-top:8px;font-size:14.5px;color:var(--ink-soft);line-height:1.6;}
.side-office a{
  display:inline-flex;align-items:center;gap:7px;
  margin-top:12px;font-size:13.5px;font-weight:600;color:var(--navy-900);
}
.side-office a svg{width:14px;height:14px;}
.side-office a:hover{color:var(--blue-500);}
.side-hours{
  display:flex;align-items:center;gap:10px;
  font-size:13.5px;color:var(--ink-soft);
  padding:4px 2px;
}
.side-hours svg{width:16px;height:16px;color:var(--blue-500);flex-shrink:0;}
@media (max-width:980px){
  .contact-grid{grid-template-columns:1fr;}
  .side{position:static;}
}
@media (max-width:560px){.form-grid{grid-template-columns:1fr;}}

/* ---------------- DATA ROOM ---------------- */
.dataroom-end{padding-top:0;}
.dataroom{
  position:relative;
  background:var(--navy-950);
  color:var(--white);
  border-radius:var(--radius-md);
  padding:30px clamp(24px,3.5vw,40px);
  display:flex;align-items:center;justify-content:space-between;
  gap:28px;flex-wrap:wrap;
  box-shadow:var(--shadow-soft);
}
.dr-copy{display:flex;align-items:flex-start;gap:20px;}
.dr-ic{
  flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  width:50px;height:50px;border-radius:var(--radius-sm);
  background:var(--blue-500);color:var(--white);
}
.dr-ic svg{width:23px;height:23px;}
.dataroom h2{color:var(--white);font-size:clamp(22px,2.4vw,28px);}
.dataroom p{color:rgba(255,255,255,0.68);font-size:15px;margin-top:8px;max-width:520px;}
.dataroom .btn-primary{background:var(--white);color:var(--navy-900);}
.dataroom .btn-primary:hover{background:var(--blue-300);color:var(--navy-950);}

@media (max-width:760px){.dataroom{flex-direction:column;align-items:flex-start;}}
