.contacto-hero { background: linear-gradient(135deg, var(--navy) 0%, #0055b3 100%); padding: 8rem 0 3.5rem; color: white; text-align: center; }
.contacto-hero h1 { font-size: 2.5rem; font-weight: 800; margin-bottom: .5rem; }
.contacto-hero p  { opacity: .8; font-size: 1.1rem; margin: 0; }

main.contacto { padding-top: 3rem; padding-bottom: 5rem; }

.success-msg { display:flex; align-items:center; gap:.6rem; background:#f0fdf4; border:1px solid #bbf7d0; border-radius:10px; padding:1rem 1.2rem; color:#15803d; font-size:.95rem; font-weight:500; margin-bottom:1.5rem; }

.info-item { display:flex; align-items:center; gap:.9rem; margin-bottom:1.5rem; }
.info-item svg { width:20px; height:20px; fill:var(--gold); flex-shrink:0; }
.info-item span { color:rgba(255,255,255,.85); font-size:.9rem; }

/* Form inputs estilo login */
.c-field { margin-bottom: 1.1rem; }
.c-field label { display:block; font-size:.8rem; font-weight:600; color:#4a5568; margin-bottom:.4rem; letter-spacing:.03em; text-transform:uppercase; }
.c-wrap { position:relative; }
.c-wrap .c-icon { position:absolute; left:13px; top:50%; transform:translateY(-50%); color:#a0aec0; pointer-events:none; display:flex; }
.c-wrap .c-icon-top { position:absolute; left:13px; top:14px; color:#a0aec0; pointer-events:none; display:flex; }
.c-wrap input, .c-wrap textarea {
    width:100%; border:1.5px solid #e2e8f0; border-radius:12px;
    padding:.75rem .75rem .75rem 2.8rem;
    font-size:.95rem; color:#1a202c; background:#f8faff;
    transition:border-color .2s, box-shadow .2s, background .2s;
    outline:none; font-family:inherit;
}
.c-wrap textarea { min-height:130px; resize:vertical; padding-top:.8rem; }
.c-wrap input:focus, .c-wrap textarea:focus { border-color:#0069cc; background:white; box-shadow:0 0 0 3px rgba(0,105,204,.1); }
.c-wrap input::placeholder, .c-wrap textarea::placeholder { color:#cbd5e0; }

.btn-contacto-send {
    width:100%; background:linear-gradient(135deg, #003580, #0069cc);
    color:white; border:none; border-radius:12px;
    padding:.85rem; font-size:1rem; font-weight:700;
    cursor:pointer; transition:all .2s; margin-top:.4rem;
    box-shadow:0 4px 16px rgba(0,105,204,.3); font-family:inherit;
}
.btn-contacto-send:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,105,204,.4); }

@media(max-width:768px) {
    .contacto-hero { padding: 9rem 0 3rem; }
    .contacto-hero h1 { font-size: 1.8rem; }
    .contacto-hero p  { font-size: .92rem; }
    .contacto-wrapper { flex-direction: column !important; }
    .info-col, .form-col { width: 100%; flex: none !important; }
    .info-col { padding: 2.5rem 1.5rem; }
    .form-col { padding: 2rem 1.5rem; }
    main.contacto { padding-top: 0; padding-bottom: 3rem; }
}
@media(max-width:480px) {
    .contacto-hero { padding: 8rem 0 2.5rem; }
    .contacto-hero h1 { font-size: 1.4rem; }
    .info-col { padding: 2rem 1.2rem; }
    .form-col { padding: 1.5rem 1.2rem; }
    .c-wrap input, .c-wrap textarea { font-size: .88rem; }
    .btn-contacto-send { font-size: .92rem; padding: .8rem; }
}
