/* ── CONTACTO PAGE ────────────────────────────────────────────── */
.contacto-section { padding:6rem 5rem; background:var(--blanco); }
.contacto-grid { display:grid; grid-template-columns:1fr 1.5fr; gap:5rem; align-items:start; }
.contacto-info .section-label { margin-bottom:0.8rem; }
.contacto-info h2 { font-family:var(--serif); font-size:clamp(1.6rem,2.5vw,2.2rem); font-weight:700; color:var(--tierra); line-height:1.15; margin-bottom:1.5rem; }
.contacto-info p { font-size:0.92rem; color:var(--gris-warm); line-height:1.75; margin-bottom:1.8rem; }
.contacto-items { display:flex; flex-direction:column; gap:0; }
.contacto-item { display:flex; align-items:flex-start; gap:1.2rem; padding:1.2rem 0; border-bottom:1px solid rgba(92,61,30,0.1); }
.contacto-item:last-child { border-bottom:none; }
.ci-icon { width:44px; height:44px; border-radius:50%; background:rgba(200,150,60,0.1); display:flex; align-items:center; justify-content:center; font-size:1.1rem; flex-shrink:0; }
.ci-label { font-family:var(--sans); font-size:0.68rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; color:var(--dorado); margin-bottom:0.2rem; }
.ci-value { font-size:0.95rem; color:var(--tierra); font-weight:500; }
.ci-value a { color:var(--tierra); text-decoration:none; transition:color 0.3s; }
.ci-value a:hover { color:var(--dorado); }
.ci-note { font-size:0.78rem; color:var(--gris-warm); margin-top:0.1rem; }

/* ── FORMULARIOS ──────────────────────────────────────────────── */
.form-box {
  background: var(--blanco);
  border: 1px solid rgba(92,61,30,0.12);
  border-radius: 2px;
  padding: 2.5rem;
}
.form-box h3 { font-family:var(--serif); font-size:1.3rem; font-weight:700; color:var(--tierra); margin-bottom:0.4rem; }
.form-box .form-subtitle { font-size:0.85rem; color:var(--gris-warm); margin-bottom:2rem; line-height:1.5; }

.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.form-group { display:flex; flex-direction:column; gap:0.4rem; margin-bottom:1.2rem; }
.form-group label { font-size:0.78rem; font-weight:500; letter-spacing:0.08em; text-transform:uppercase; color:var(--gris-warm); }
.form-group input,
.form-group textarea,
.form-group select {
  width:100%; padding:0.85rem 1rem;
  border:1px solid rgba(92,61,30,0.2);
  border-radius:2px;
  font-family:var(--sans); font-size:0.92rem; color:var(--tierra);
  background:var(--blanco);
  transition:border-color 0.3s, box-shadow 0.3s;
  outline:none;
}
.form-group input:focus,
.form-group textarea:focus { border-color:var(--dorado); box-shadow:0 0 0 3px rgba(200,150,60,0.1); }
.form-group textarea { resize:vertical; min-height:110px; line-height:1.5; }
.form-group input[type="checkbox"] { width:auto; }

.lopd-row { display:flex; align-items:flex-start; gap:0.8rem; margin-bottom:1.2rem; }
.lopd-row input[type="checkbox"] { margin-top:3px; flex-shrink:0; accent-color:var(--dorado); width:16px; height:16px; }
.lopd-label { font-size:0.78rem; color:var(--gris-warm); line-height:1.5; }
.lopd-label a { color:var(--dorado); text-decoration:none; }
.lopd-detail { font-size:0.72rem; color:rgba(107,96,88,0.65); line-height:1.5; margin-top:0.8rem; margin-bottom:1.2rem; background:var(--crema); padding:1rem; border-radius:2px; }

.recaptcha-wrap { margin-bottom:1.5rem; }

.form-msg {
  display:none; padding:1rem 1.2rem; border-radius:2px; font-size:0.88rem; line-height:1.5; margin-bottom:1rem;
}
.form-msg--ok { background:rgba(74,92,42,0.1); color:var(--oliva); border-left:3px solid var(--oliva); }
.form-msg--error { background:rgba(180,30,30,0.08); color:#8b1a1a; border-left:3px solid #c0392b; }

.req { color:var(--dorado); }

/* ── SECCIÓN DISTRIBUIDOR ─────────────────────────────────────── */
.dist-section {
  background:var(--tierra);
  padding:6rem 5rem;
}
.dist-section-inner { display:grid; grid-template-columns:1fr 1.6fr; gap:5rem; align-items:start; }
.dist-section-text .section-label { color:rgba(200,150,60,0.7); }
.dist-section-text h2 { font-family:var(--serif); font-size:clamp(1.6rem,2.5vw,2.2rem); font-weight:700; color:var(--crema); line-height:1.15; margin-bottom:1.2rem; }
.dist-section-text p { font-size:0.92rem; color:rgba(245,237,216,0.6); line-height:1.75; margin-bottom:1.2rem; }
.dist-section-checks { list-style:none; display:flex; flex-direction:column; gap:0.8rem; margin-top:1.5rem; }
.dist-section-checks li { display:flex; align-items:flex-start; gap:0.8rem; font-size:0.88rem; color:rgba(245,237,216,0.7); }
.dist-section-checks li::before { content:'✓'; color:var(--dorado); flex-shrink:0; font-weight:700; }

/* form oscuro */
.form-box--dark { background:rgba(255,255,255,0.05); border-color:rgba(200,150,60,0.15); }
.form-box--dark h3 { color:var(--crema); }
.form-box--dark .form-subtitle { color:rgba(245,237,216,0.5); }
.form-box--dark label { color:rgba(245,237,216,0.6); }
.form-box--dark input,
.form-box--dark textarea,
.form-box--dark select {
  background:rgba(255,255,255,0.06); border-color:rgba(200,150,60,0.2);
  color:var(--crema);
}
.form-box--dark input::placeholder,
.form-box--dark textarea::placeholder { color:rgba(245,237,216,0.3); }
.form-box--dark input:focus,
.form-box--dark textarea:focus { border-color:var(--dorado); box-shadow:0 0 0 3px rgba(200,150,60,0.15); }
.form-box--dark .lopd-label { color:rgba(245,237,216,0.5); }
.form-box--dark .lopd-detail { background:rgba(255,255,255,0.06); color:rgba(245,237,216,0.4); }

@media(max-width:1024px){
  .contacto-section,.dist-section{padding:4rem 2rem;}
  .contacto-grid,.dist-section-inner{grid-template-columns:1fr;gap:3rem;}
  .form-row{grid-template-columns:1fr;}
}
