@font-face {
    font-family: Montserrat;
    src: url(../fonts/Montserrat/Montserrat-VariableFont_wght.ttf);
}

@font-face {
    font-family: RobotoCondensed;
    src: url(../fonts/RobotoCondensed/RobotoCondensed-VariableFont_wght.ttf);
}

.font-montserrat{
    font-family: Montserrat;
}

.font-roboto-condensed{
    font-family: RobotoCondensed;
}
/* Sponsor Marquee */
.marquee-container { overflow: hidden; white-space: nowrap; display: flex; width: 100%; }
.marquee-content { display: flex; animation: marquee linear infinite; }
.marquee-content:hover { animation-play-state: paused; }
@keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.sponsor-item { flex-shrink: 0; width: 150px; display: flex; justify-content: center; align-items: center; padding: 0 2rem; }

/* User Content Styles (CKEditor output) */
.user-content h1 { font-size: 2.25rem; font-weight: 700; margin-top: 1.5rem; margin-bottom: 1rem; line-height: 1.2; color: #075985; }
.user-content h2 { font-size: 1.875rem; font-weight: 600; margin-top: 1.5rem; margin-bottom: 1rem; line-height: 1.3; color: #075985; }
.user-content h3 { font-size: 1.5rem; font-weight: 600; margin-top: 1.25rem; margin-bottom: 1rem; line-height: 1.4; color: #075985; }
.user-content h4 { font-size: 1.25rem; font-weight: 600; margin-top: 1.25rem; margin-bottom: 0.75rem; line-height: 1.5; color: #075985; }
.user-content p { margin-bottom: 1rem; line-height: 1.6; }
.user-content ul { list-style-type: disc; padding-left: 1.5rem; margin-bottom: 1rem; }
.user-content ol { list-style-type: decimal; padding-left: 1.5rem; margin-bottom: 1rem; }
.user-content a { color: #2563eb; text-decoration: underline; }
.user-content blockquote { border-left: 4px solid #e5e7eb; padding-left: 1rem; font-style: italic; color: #6b7280; margin-bottom: 1rem; }

/* Doctor Card Styles */
.doctor-card-wrapper { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); transition: transform 0.2s ease, box-shadow 0.2s ease; border: 1px solid #e5e7eb; display: flex; flex-direction: column; height: 100%; }
.doctor-card-wrapper:hover { transform: translateY(-4px); box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); }
.doctor-card { display: flex; flex-direction: column; height: 100%; }
.doctor-card-header { background: #075985; padding: 2rem 1rem; display: flex; justify-content: center; align-items: center; position: relative; }
.doctor-card-avatar { width: 120px; height: 120px; border-radius: 50%; border: 4px solid #fff; overflow: hidden; background: #f3f4f6; box-shadow: 0 4px 6px rgba(0,0,0,0.1); z-index: 10; margin-bottom: -60px; }
.doctor-card-avatar img { width: 100%; height: 100%; object-fit: cover; }
.doctor-card-body { padding: 4rem 1.5rem 1.5rem 1.5rem; text-align: center; flex: 1; display: flex; flex-direction: column; }
.doctor-card-body h3 { font-size: 1.25rem; font-weight: 700; color: #111827; margin-bottom: 0.25rem; font-family: Montserrat, sans-serif; }
.doctor-card-subtitle { display: block; font-size: 0.875rem; color: #4b5563; font-weight: 500; margin-bottom: 0.5rem; }
.doctor-card-specialty { display: inline-block; font-size: 0.75rem; font-weight: 700; color: #0284c7; background: #e0f2fe; padding: 0.25rem 0.75rem; border-radius: 9999px; margin-bottom: 0.5rem; }
.doctor-card-cedula { display: block; font-size: 0.75rem; color: #6b7280; margin-bottom: 1rem; }
.doctor-card-badge { display: inline-flex; align-items: center; justify-content: center; background: #ca8a04; color: #fff; font-size: 0.75rem; font-weight: 700; padding: 0.35rem 0.75rem; border-radius: 0.375rem; margin-bottom: 1.5rem; gap: 0.25rem; }
.doctor-card-contact { display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 1.5rem; text-align: left; font-size: 0.875rem; color: #4b5563; }
.doctor-card-contact a, .doctor-card-contact .info-line { display: flex; items-center; gap: 0.5rem; color: #4b5563; text-decoration: none; transition: color 0.2s; }
.doctor-card-contact a:hover { color: #0284c7; }
.doctor-card-contact .icon-wrap { width: 20px; display: flex; justify-content: center; color: #0284c7; }
.doctor-card-map-btn { display: inline-flex; justify-content: center; items-center; gap: 0.5rem; background: #f3f4f6; color: #374151; font-weight: 600; font-size: 0.875rem; padding: 0.5rem 1rem; border-radius: 0.375rem; transition: background 0.2s; border: 1px solid #e5e7eb; text-decoration: none; margin-top: auto; }
.doctor-card-map-btn:hover { background: #e5e7eb; }
.doctor-card-btn { display: flex; justify-content: center; align-items: center; gap: 0.5rem; background: #25d366; color: #fff; font-weight: 700; font-size: 0.875rem; padding: 0.75rem 1rem; text-decoration: none; transition: background 0.2s; }
.doctor-card-btn:hover { background: #128c7e; }
