/* ========== Cardiology Playful Design ========== */
/* Красная палитра — сердце, кровь, жизнь */

:root {
  --c-red: #E53935;
  --c-red-dark: #C62828;
  --c-red-light: #EF5350;
  --c-coral: #FF7043;
  --c-coral-light: #FF8A80;
  --c-rose: #FF5252;
  --c-amber: #FFB300;
}

.specialty-hero { position: relative; }

.why-section { position: relative; overflow: hidden; }
.why-section::after {
  content: ''; position: absolute; top: 10%; right: -2%;
  width: 130px; height: 130px;
  background: radial-gradient(circle, rgba(229, 57, 53, 0.08) 0%, transparent 70%);
  border-radius: 50%; pointer-events: none;
  animation: float-bg-card 7s ease-in-out infinite;
}

.services-section { position: relative; overflow: hidden; }
.services-section::after {
  content: ''; position: absolute; bottom: 5%; left: -2%;
  width: 100px; height: 100px;
  background: radial-gradient(circle, rgba(239, 83, 80, 0.08) 0%, transparent 70%);
  border-radius: 50%; pointer-events: none;
  animation: float-bg-card 8s ease-in-out infinite reverse;
}

@keyframes float-bg-card {
  0%, 100% { transform: translateY(0) scale(1); opacity: 0.5; }
  50% { transform: translateY(-20px) scale(1.1); opacity: 0.8; }
}

.specialty-hero__title .highlight-cardiology {
  color: var(--c-red) !important; font-weight: 900 !important; position: relative;
}
.specialty-hero__title .highlight-cardiology::after {
  content: ' ❤️'; font-size: 0.5em; display: inline-block;
  animation: heart-beat 2s ease-in-out infinite;
}
@keyframes heart-beat {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.2); }
}
.specialty-hero__title::before {
  content: '💓'; position: absolute; top: -25px; left: -35px; font-size: 22px;
  animation: symbol-float-card 3s ease-in-out infinite;
}
.specialty-hero__title::after {
  content: '✨'; position: absolute; bottom: -20px; right: -25px; font-size: 18px;
  animation: symbol-float-card 3.5s ease-in-out infinite 0.8s;
}
@keyframes symbol-float-card {
  0%, 100% { transform: translateY(0) rotate(0deg); opacity: 0.7; }
  50% { transform: translateY(-10px) rotate(10deg); opacity: 1; }
}

.specialty-hero__feature:nth-child(1) .specialty-hero__feature-icon {
  background: linear-gradient(135deg, #E53935, #C62828) !important;
}
.specialty-hero__feature:nth-child(2) .specialty-hero__feature-icon {
  background: linear-gradient(135deg, #EF5350, #E53935) !important;
}
.specialty-hero__feature:nth-child(3) .specialty-hero__feature-icon {
  background: linear-gradient(135deg, #FF7043, #E53935) !important;
}
.specialty-hero__feature:nth-child(4) .specialty-hero__feature-icon {
  background: linear-gradient(135deg, #FF5252, #EF5350) !important;
}

.section-title { position: relative; display: inline-block; }
.section-title::after {
  content: ''; display: block; width: 80px; height: 5px; margin: 12px auto 0;
  border-radius: 10px;
  background: linear-gradient(90deg, #E53935, #EF5350, #FF7043, #FF5252);
  animation: gradient-shift-card 3s ease-in-out infinite;
  background-size: 200% 100%;
}
@keyframes gradient-shift-card {
  0%, 100% { background-position: 0% 50%; width: 80px; }
  50% { background-position: 100% 50%; width: 120px; }
}

.why-section__card:nth-child(1) .why-section__card-icon {
  background: linear-gradient(135deg, #E53935, #C62828) !important;
}
.why-section__card:nth-child(2) .why-section__card-icon {
  background: linear-gradient(135deg, #EF5350, #E53935) !important;
}
.why-section__card:nth-child(3) .why-section__card-icon {
  background: linear-gradient(135deg, #FF7043, #E53935) !important;
}
.why-section__card:nth-child(4) .why-section__card-icon {
  background: linear-gradient(135deg, #FF5252, #EF5350) !important;
}
.why-section__card:nth-child(5) .why-section__card-icon {
  background: linear-gradient(135deg, #E53935, #FF7043) !important;
}
.why-section__card:nth-child(6) .why-section__card-icon {
  background: linear-gradient(135deg, #FF8A80, #FF5252) !important;
}
.why-section__card:hover { transform: translateY(-10px) scale(1.03) !important; }
.why-section__card:hover .why-section__card-icon {
  animation: icon-wiggle-card 0.5s ease-in-out !important;
}
@keyframes icon-wiggle-card {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(-8deg) scale(1.1); }
  50% { transform: rotate(8deg) scale(1.15); }
  75% { transform: rotate(-5deg) scale(1.1); }
}

.services-section__item:nth-child(1) .services-section__header-icon { color: #E53935 !important; }
.services-section__item:nth-child(2) .services-section__header-icon { color: #EF5350 !important; }
.services-section__item:nth-child(3) .services-section__header-icon { color: #FF7043 !important; }
.services-section__item:nth-child(4) .services-section__header-icon { color: #FF5252 !important; }
.services-section__item:nth-child(5) .services-section__header-icon { color: #E53935 !important; }
.services-section__item:nth-child(6) .services-section__header-icon { color: #EF5350 !important; }
.services-section__item--active .services-section__header-icon {
  color: white !important; animation: icon-pop-card 0.4s ease-out !important;
}
@keyframes icon-pop-card {
  0% { transform: scale(0.8); } 50% { transform: scale(1.2); } 100% { transform: scale(1.1); }
}
.services-section__includes li i { background: #E53935 !important; color: white !important; }
.services-section__btn {
  background: linear-gradient(135deg, #E53935, #EF5350) !important;
  box-shadow: 0 4px 20px rgba(229, 57, 53, 0.3) !important;
}
.services-section__btn:hover { box-shadow: 0 8px 30px rgba(229, 57, 53, 0.5) !important; }

.when-to-visit__icon { background: linear-gradient(135deg, #E53935, #EF5350) !important; }

@media (max-width: 768px) {
  .specialty-hero__title::before, .specialty-hero__title::after { display: none; }
}