/* --> Stylo contactanos [Bloque 1]
-------------------------------------------------------------------*/
/* === Contáctenos v2 (marino + dorado) === */
.contact-v2{ 
    padding:0px 0; 
}

.contact-v2 .contact-lead{
    color:#cbd5e1; 
    margin:6px 0 18px; 
}

.cta-row{
  display:flex; 
  gap:12px; 
  flex-wrap:wrap; 
  align-items:center; 
  justify-content:flex-start;
  margin:8px 0 24px;
}

/* Reutiliza tus botones globales; incluyo por si no están */
.btn-primary, .btn-ghost{
  display:inline-block; 
  text-align:center;
  padding:12px 18px; 
  border-radius:12px; 
  font-weight:800; 
  letter-spacing:.2px;
  transition:transform .2s ease, filter .2s ease, box-shadow .2s ease, background .2s ease;
}

.btn-primary{
  color:#ffffff; 
  background:linear-gradient(135deg,var(--brand),var(--brand-2));
  box-shadow:0 10px 24px rgba(0,0,0,.35);
}

.btn-primary:hover{ 
    transform:translateY(-1px); 
    filter:saturate(1.05); 
}

.btn-ghost{ 
    color:var(--brand-2); 
    border:1px solid var(--brand); 
    background:transparent; 
}

.btn-ghost:hover{ 
    background:rgba(184,138,45,.06);
}


.contact-grid{
  display:grid; 
  gap:28px 32px;
  grid-template-columns: 1.15fr .85fr;
}

@media (max-width:960px){ 
    .contact-grid{ grid-template-columns:1fr; } 
}

/* Tarjetas principales */
.contact-card, .company-card{
  border:1px solid var(--border);
  border-radius:18px;
  background:rgba(15,30,51,.50); 
  backdrop-filter:saturate(1.15) blur(6px);
  box-shadow:var(--shadow);
}
.contact-card{ 
    padding:22px; 
}

.company-card{ 
    padding:20px; 
    align-self:start; 
    position:relative; 
}

.company-card::before{
  content:""; 
  position:absolute; 
  left:20px; 
  right:20px; 
  top:12px; 
  height:3px;
  background:linear-gradient(90deg,var(--brand),var(--brand-2)); 
  border-radius:6px;
}

/* Encabezado del formulario */
.form-head h3{
  margin:0 0 4px; 
  font-size:clamp(1.05rem,2.2vw,1.35rem);
  font-weight:800; 
  letter-spacing:.2px; 
  color:var(--text);
}

.form-head .sub{ 
    margin:0 0 12px; 
    color:#B9B2A3; 
}

/* Grid del formulario */
.form-grid{
  display:grid; 
  gap:14px 16px;
  grid-template-columns: 1fr 1fr;
}

.field-full{ 
    grid-column:1 / -1; 
}

.field-stack{ 
    display:flex; 
    gap:10px 16px; 
    flex-wrap:wrap; 
}

/* Campos */
.field label{ 
    display:block; 
    font-weight:700; 
    color:#B9B2A3; 
    margin:0 0 6px; 
}

.req{ 
    color:var(--brand-2); 
}

input[type="text"], input[type="email"], input[type="tel"], textarea{
  width:100%; 
  padding:12px 14px; 
  border-radius:12px; 
  border:1px solid var(--border);
  background:#0B1729; 
  color:var(--text); 
  outline:none;
}

input::placeholder, textarea::placeholder{ 
    color:#9ca3af; 
}

textarea{ 
    resize:vertical; 
    min-height:120px; 
}

/* Radios y checkboxes */
.opt{ 
    display:inline-flex; 
    align-items:center; 
    gap:8px; 
    color:#d9dbe3; 
}

.opt input{ 
    accent-color: var(--brand); 
}

.field-tags{ 
    gap:10px 8px; 
}

.field-tags .tag{
  display:inline-flex; 
  align-items:center; 
  gap:8px;
  padding:8px 12px; 
  border:1px solid var(--brand); 
  border-radius:999px;
  background:rgba(184,138,45,.06); 
  color:var(--brand-2); 
  font-weight:700; 
  font-size:.9rem;
}

.field-tags .tag input{ 
    accent-color: var(--brand); 
}

/* Consentimientos y confianza */
.checkbox{ 
    display:flex; 
    align-items:flex-start; 
    gap:8px; 
    color:#cbd5e1; 
}

.checkbox a{ 
    color:var(--brand-2); 
    text-decoration:underline; 
}

.checkbox input{ 
    margin-top:3px; 
}

.trust{ 
    display:flex; 
    flex-direction:column; 
    gap:4px; 
}

.trust small{ 
    color:#9ca3af; 
}

/* Acciones y mensajes */
.actions{ 
    margin-top:4px; 
}

.form-success, .form-error{
  display:none; 
  margin-top:12px; 
  font-weight:700;
}

.form-success{ 
    color:var(--success); 
}
.form-error{ 
    color:var(--error); 
}

.link-inline{ 
    color:var(--brand-2); 
    text-decoration:underline; 
}

/* Tarjeta de empresa */
.company-title{
  margin:8px 0 12px; 
  font-size:1.05rem; 
  font-weight:800; 
  letter-spacing:.2px; 
  color:var(--text);
}

.company-list{
  list-style:none; 
  padding:0; 
  margin:0 0 10px; 
  display:grid; 
  gap:10px;
}

.company-list .label{
  display:inline-block; 
  min-width:92px; 
  color:#B9B2A3; 
  font-weight:700; 
  text-transform:uppercase; 
  font-size:.78rem; 
  letter-spacing:.35px;
}

.company-list a{ 
    color:#d9dbe3; 
}

.company-list a:hover{ 
    color:#fff; 
    text-decoration:underline; 
}

.company-links{ 
    display:flex; 
    align-items:center; 
    flex-wrap:wrap; 
    gap:6px 10px; 
    margin-top:6px; 
}

.chip-link{
  display:inline-block; 
  padding:6px 10px; 
  border-radius:999px;
  border:1px solid var(--brand); 
  color:var(--brand-2);
  background:rgba(184,138,45,.06); 
  font-weight:700; 
  font-size:.9rem;
}

.chip-link:hover{ 
    filter:brightness(1.05); 
}

.dot{ 
    color:#9ca3af; 
}

/* Accesibilidad */
.contact-v2 a, .contact-v2 button{ 
    outline-offset:2px; 
}