.spinner{display:inline-flex;align-items:center;justify-content:center}.spinner__circle{border-radius:50%;animation:spin 1s linear infinite;border:2px solid transparent}.spinner--small .spinner__circle{width:16px;height:16px;border-width:1.5px}.spinner--medium .spinner__circle{width:20px;height:20px;border-width:2px}.spinner--large .spinner__circle{width:24px;height:24px;border-width:2.5px}.spinner--primary .spinner__circle{border-top-color:var(--color-primary);border-right-color:var(--color-primary);border-bottom-color:#006b9633;border-left-color:#006b9633}.spinner--white .spinner__circle{border-top-color:#fff;border-right-color:#fff;border-bottom-color:#ffffff4d;border-left-color:#ffffff4d}.spinner--accent .spinner__circle{border-top-color:var(--color-accent);border-right-color:var(--color-accent);border-bottom-color:#4ecdc433;border-left-color:#4ecdc433}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.contact{background-color:var(--color-secondary);position:relative;overflow:hidden}.contact:before{content:"";position:absolute;top:-50px;left:0;right:0;height:100px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120'%3E%3Cpath d='M0,60 C400,90 800,30 1200,60 L1200,0 L0,0 Z' fill='%234ECDC4' opacity='0.12'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:cover;z-index:1}.contact__header{text-align:center;margin-bottom:4rem}.contact__title{font-size:2.5rem;color:var(--color-primary);margin-bottom:1rem}.contact__subtitle{font-size:1.2rem;color:var(--color-text);max-width:700px;margin:0 auto;line-height:1.6}.contact__content{display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:start}.contact__form{background-color:var(--color-white);padding:2.5rem;border-radius:12px;box-shadow:var(--shadow-medium)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:0}.form-group{display:flex;flex-direction:column;margin-bottom:1.5rem}.form-label{font-weight:600;color:var(--color-text);margin-bottom:.5rem;font-size:.9rem}.form-input,.form-select,.form-textarea{padding:1rem;border:2px solid #e2e8f0;border-radius:var(--border-radius);font-family:inherit;font-size:1rem;transition:var(--transition);height:48px;width:100%;box-sizing:border-box}.form-input[type=date]{padding:.75rem 1rem;line-height:1.2;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-select{background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;padding-left:1rem;line-height:1.2;text-align:left;vertical-align:middle;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0 1rem}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0077be1a}.form-textarea{resize:vertical;min-height:120px;height:auto;padding-top:1rem;padding-bottom:1rem}.form-group--full{grid-column:1 / -1}.contact__submit{width:100%;padding:1rem;font-size:1.1rem;font-weight:600}.contact__submit:disabled{opacity:.8;cursor:not-allowed}.contact__submit--loading{position:relative}.contact__submit-content{display:flex;align-items:center;justify-content:center;gap:.5rem}.contact__submit-content span{font-size:1rem;font-weight:600}.contact__message{margin-top:1rem;padding:1rem;border-radius:var(--border-radius);text-align:center;font-weight:500}.contact__message--success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.contact__message--error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.contact__info{display:flex;flex-direction:column;gap:1.5rem;height:fit-content}.contact__card{background-color:var(--color-white);padding:2rem;border-radius:12px;box-shadow:var(--shadow-light);height:100%;display:flex;flex-direction:column}.contact__card h3{color:var(--color-primary);font-size:1.3rem;margin-bottom:1.5rem;text-align:center}.contact__methods{display:flex;flex-direction:column;gap:1.5rem}.contact__method{display:flex;align-items:center;gap:1rem}.contact__method--whatsapp{align-items:center}.contact__method-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:var(--color-secondary);border-radius:50%;color:var(--color-primary);flex-shrink:0}.contact__method-text{display:flex;flex-direction:column;justify-content:center;min-height:40px}.contact__method strong{display:block;color:var(--color-text);margin-bottom:.2rem;line-height:1.2}.contact__link{color:var(--color-primary);text-decoration:underline;transition:var(--transition);line-height:1.2}.contact__link:hover{color:var(--color-accent)}.contact__method--whatsapp{background:linear-gradient(135deg,#25d366,#128c7e);border-radius:var(--border-radius);padding:1rem 1.5rem;color:#fff;border:none;box-shadow:0 4px 15px #25d3664d;align-items:center}.contact__method--whatsapp strong{color:#fff}.contact__method-icon--whatsapp{background:#fff3;color:#fff}.contact__method-content{display:flex;flex-direction:column;justify-content:center}.contact__whatsapp-link{display:flex;flex-direction:column;text-decoration:none;color:#fff;transition:var(--transition)}.contact__whatsapp-link:hover{color:#ffffffe6;transform:translateY(-1px)}.contact__whatsapp-link strong{color:#fff;font-size:1rem;margin-bottom:.1rem;line-height:1.2}.contact__whatsapp-cta{color:#fffc;font-size:.85rem;font-weight:400;letter-spacing:.3px;line-height:1.2}.contact__response-time{background-color:var(--color-white);border-radius:12px;box-shadow:var(--shadow-light);overflow:hidden;flex:1;display:flex;flex-direction:column}.response-time-card{padding:1.5rem;display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,var(--color-accent),#f39c12);color:var(--color-white)}.response-time-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#fff3;border-radius:50%;flex-shrink:0}.response-time-card strong{display:block;font-size:1rem}.response-time-card p{margin:0;opacity:.9;font-size:.9rem}@media(max-width:768px){.contact__title{font-size:2rem}.contact__content{grid-template-columns:1fr;gap:2rem}.contact__form{padding:2rem}.form-row{grid-template-columns:1fr;gap:0}.form-group{margin-bottom:1.5rem}.contact__method{align-items:center;gap:.8rem}.contact__method:not(.contact__method--whatsapp){flex-direction:column;text-align:center;padding:1rem;background:#fffc;border-radius:var(--border-radius-small);border:1px solid rgba(0,107,150,.1)}.contact__method:not(.contact__method--whatsapp) strong{font-size:.9rem;color:var(--color-primary);margin-bottom:.5rem;display:block}.contact__method:not(.contact__method--whatsapp) .contact__link{font-size:.95rem;font-weight:500;padding:.5rem 0;display:block;color:var(--color-text);transition:var(--transition)}.contact__method:not(.contact__method--whatsapp) .contact__link:hover{color:var(--color-primary);transform:translateY(-1px)}.contact__method:not(.contact__method--whatsapp) .contact__method-icon{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);color:#fff;box-shadow:var(--shadow-light)}.response-time-card{flex-direction:column;text-align:center;gap:.5rem}}@media(max-width:480px){.contact{padding:2rem 0}.contact__header{margin-bottom:2rem}.contact__form,.contact__card{padding:1.5rem}}
