/* Ajustes propios del sitio nuevo (equipo dinámico, formularios, pie) */
.team-section .team-member .image { aspect-ratio: 1008 / 960; overflow: hidden; background: #ecedf1; }
.team-section .team-member .image img { height: 100%; object-fit: cover; }
.team-section .team-member .member-info h3 { text-transform: none; }
.team-section .team-member .member-info .designation { margin-top: 4px; }
#team-grid .empty-note { color: #777; padding: 20px 0; }

/* Formulario de contacto: mensajes */
.form-feedback { padding: 14px 18px; border-radius: 4px; margin-bottom: 20px; font-size: 15px; line-height: 1.5; }
.form-feedback-ok { background: #e8f5ec; color: #1f6b45; border: 1px solid #b9dec7; }
.form-feedback-error { background: #fdeaea; color: #94191e; border: 1px solid #f1bcbc; }
.contact-form input.error_input, .contact-form textarea.error_input { border-color: #bc282d !important; }
.contact-form button[disabled] { opacity: .65; cursor: wait; }
.info-block .theme-btn { margin-top: 6px; }
.info-block .theme-btn .fab { margin-right: 6px; }

/* Newsletter del pie */
.main-footer .newsletter-widget #subscribe_msg { font-size: 14px; margin: 8px 0 10px; }
.main-footer .newsletter-widget #news_email { padding-right: 56px; }
.main-footer .newsletter-widget .form-group { position: relative; }

/* Enlaces de teléfono / correo con el color del texto */
.info-section .text a, .contact-info .text a { color: inherit; }
.info-section .text a:hover, .contact-info .text a:hover { color: #bc282d; }
.info-section .text a, .middle-bar h3 a { text-decoration: none; }

/* El menú ahora tiene más de una opción: evita que se parta en pantallas medianas */
@media (min-width: 992px) { .main-menu .navigation > li > a { white-space: nowrap; } }

/* Legibilidad: textos rojo/azul sobre fondos del mismo tono (barra superior y botón "Consulta Gratuita") */
.main-header .top-bar .text a, .main-header .top-bar .text a:hover { color: #ffffff !important; text-decoration: underline; }
