.contact{background:var(--white)}.contact__banner{margin-bottom:2rem}.contact__actions{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2.5rem;display:grid}.contact__action{border-radius:var(--radius-lg);border:1px solid var(--border-light);background:var(--surface);transition:all var(--transition);flex-direction:column;gap:.35rem;padding:1.25rem 1.5rem;display:flex}.contact__action:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.contact__action--phone{border-top:4px solid var(--blue)}.contact__action--email{border-top:4px solid var(--orange)}.contact__action--whatsapp{border-top:4px solid #25d366}.contact__action-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-light);font-size:.68rem;font-weight:700}.contact__action strong{color:var(--blue-dark);word-break:break-word;font-size:.92rem;font-weight:700}.contact__banner .photo-frame{border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg)}.contact__grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(2.5rem,5vw,4rem);display:grid}.contact__info h3{font-family:var(--font-display);color:var(--blue-dark);letter-spacing:-.02em;margin-bottom:1.75rem;font-size:1.85rem;font-weight:800}.contact__details{background:var(--surface);border-radius:var(--radius-xl);border:1px solid var(--border-light);flex-direction:column;gap:0;display:flex;overflow:hidden}.contact__detail{border-bottom:1px solid var(--border-light);transition:background var(--transition);padding:1.15rem 1.5rem}.contact__detail:last-child{border-bottom:none}.contact__detail:hover{background:var(--white)}.contact__detail dt{letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:.3rem;font-size:.65rem;font-weight:700}.contact__detail dd{color:var(--text);font-size:.95rem;font-weight:600;line-height:1.6}.contact__detail a:hover{color:var(--blue)}.contact__form{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);padding:2.5rem;position:relative;overflow:hidden}.contact__form:before{content:"";background:linear-gradient(to right, var(--orange), var(--blue), var(--green));height:4px;position:absolute;top:0;left:0;right:0}.contact__form h3{font-family:var(--font-display);color:var(--blue-dark);letter-spacing:-.02em;margin-bottom:2rem;font-size:1.5rem;font-weight:800}.contact__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact__field{margin-bottom:1.1rem}.contact__field label{color:var(--text);letter-spacing:.03em;margin-bottom:.45rem;font-size:.78rem;font-weight:700;display:block}.contact__field input,.contact__field textarea,.contact__field select{width:100%;font-family:var(--font-body);border:2px solid var(--border-light);border-radius:var(--radius);background:var(--surface);color:var(--text);transition:all var(--transition);padding:.85rem 1.1rem;font-size:.9rem}.contact__field select{cursor:pointer;appearance:none;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='%23666' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.contact__field input:focus,.contact__field textarea:focus,.contact__field select:focus{border-color:var(--blue);background:var(--white);outline:none;box-shadow:0 0 0 4px #1458861a}.contact__field textarea{resize:vertical;min-height:130px}.contact__submit{width:100%;margin-top:.5rem}.contact__submit:disabled{opacity:.7;cursor:not-allowed}.contact__info,.contact__form{transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s cubic-bezier(.22,1,.36,1)}.contact__info:hover,.contact__form:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.contact__status{border-radius:var(--radius);margin-bottom:1rem;padding:.85rem 1rem;font-size:.88rem;line-height:1.55;animation:.4s cubic-bezier(.22,1,.36,1) both reveal-expand}.contact__status--success{background:var(--green-light);color:var(--green-dark);border:1px solid #55b84840}.contact__status--error{color:#9b2c2c;background:#fff0ee;border:1px solid #9b2c2c33}@media (width<=800px){.contact__actions,.contact__grid{grid-template-columns:1fr}}@media (width<=520px){.contact__row{grid-template-columns:1fr}.contact__form{padding:1.75rem}}
