.contacto-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:start}
.contacto-form{display:flex;flex-direction:column;gap:20px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-group{display:flex;flex-direction:column;gap:8px}
.form-group label{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--text-2)}
.form-group input,.form-group select,.form-group textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:14px 16px;font-family:var(--font-body);font-size:15px;color:var(--text);transition:border-color .2s,box-shadow .2s;width:100%}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-3)}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:rgba(212,160,23,.5);box-shadow:0 0 0 3px rgba(212,160,23,.08)}
.form-group select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239998A8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}
.form-group select option{background:var(--surface)}
.form-group textarea{resize:vertical;min-height:120px}
.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.checkbox-item{display:flex;align-items:center;gap:10px;background:var(--bg-3);border:1px solid var(--border);border-radius:var(--r-sm);padding:12px 14px;font-size:14px;color:var(--text-2);cursor:pointer;transition:border-color .2s,background .2s}
.checkbox-item:hover{border-color:rgba(212,160,23,.3)}
.checkbox-item input{accent-color:var(--gold);width:16px;height:16px;cursor:pointer}
.form-submit{margin-top:8px;align-self:flex-start}
.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none!important}
.form-disclaimer{font-size:12px;color:var(--text-3);line-height:1.6}
.form-success{background:rgba(37,211,102,.08);border:1px solid rgba(37,211,102,.2);border-radius:var(--r-md);padding:24px;flex-direction:column;align-items:center;text-align:center;gap:8px;color:#25D366}
.form-success span{font-size:32px}
.form-success strong{font-family:var(--font-display);font-size:18px}
.form-success p{font-size:14px;color:var(--text-2)}
.contacto-sidebar{display:flex;flex-direction:column;gap:16px;position:sticky;top:calc(var(--nav-h) + 24px)}
.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;display:flex;align-items:flex-start;gap:16px;transition:border-color .3s,transform .3s}
.contact-card:hover{border-color:rgba(212,160,23,.2);transform:translateY(-2px)}
.contact-card-icon{width:48px;height:48px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-card h4{font-family:var(--font-display);font-size:15px;font-weight:700;margin-bottom:4px}
.contact-card p{font-size:13px;color:var(--text-2);margin-bottom:12px}
.contact-link{color:var(--gold);font-weight:500;font-size:14px;transition:color .2s}
.contact-link:hover{color:var(--gold-lt)}
.contact-promesas{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:12px}
.contact-promesa{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-2)}
@media(max-width:900px){.contacto-grid{grid-template-columns:1fr}.contacto-sidebar{position:static}}
@media(max-width:600px){.form-row{grid-template-columns:1fr}.checkbox-grid{grid-template-columns:1fr}}
