/* ============================================
   ГРАНДШИНА — Advantages Section
   4-column feature blocks with icons
   ============================================ */

/* ============================================
   CSS Variables for Full Customization
   ============================================ */

.advantages-section {
  --advantages-bg: #f8f9fa;
  --advantages-padding-y: 60px;
  --advantages-padding-x: 30px;
  --advantages-card-bg: #ffffff;
  --advantages-card-padding: 35px 25px;
  --advantages-card-radius: 12px;
  --advantages-card-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  --advantages-card-shadow-hover: 0 10px 30px rgba(0, 0, 0, 0.12);
  --advantages-icon-size: 64px;
  --advantages-icon-color: #e94560;
  --advantages-title-size: 18px;
  --advantages-title-weight: 600;
  --advantages-title-color: #1a1a2e;
  --advantages-text-size: 14px;
  --advantages-text-color: #666666;
  --advantages-text-line-height: 1.6;
  --advantages-gap: 30px;
  --advantages-transition: 0.3s ease;

  background-color: var(--advantages-bg);
  padding: var(--advantages-padding-y) 0;
}

.advantages-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--advantages-padding-x);
}

/* ============================================
   Advantages Grid
   ============================================ */

.advantages-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--advantages-gap);
  align-items: stretch;
}

/* ============================================
   Advantage Card
   ============================================ */

.advantage-card {
  background-color: var(--advantages-card-bg);
  border-radius: var(--advantages-card-radius);
  padding: var(--advantages-card-padding);
  text-align: center;
  transition: all var(--advantages-transition);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  position: relative;
  height: 100%;
}

.advantage-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--advantages-card-shadow-hover);
}

/* Icon Container */
.advantage-icon {
  width: var(--advantages-icon-size);
  height: var(--advantages-icon-size);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  color: var(--advantages-icon-color);
  transition: color var(--advantages-transition);
}

.advantage-card:hover .advantage-icon {
  color: var(--advantages-icon-hover, var(--advantages-icon-color));
}

.advantage-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.advantage-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Title */
.advantage-title {
  font-size: var(--advantages-title-size);
  font-weight: var(--advantages-title-weight);
  color: var(--advantages-title-color);
  margin: 0;
  line-height: 1.3;
}

/* Text */
.advantage-text {
  font-size: var(--advantages-text-size);
  color: var(--advantages-text-color);
  line-height: var(--advantages-text-line-height);
  margin: 0;
  flex: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

/* ============================================
   Tablet Styles (768px – 1024px)
   ============================================ */

@media (max-width: 1024px) {
  :root {
    --advantages-padding-x: 20px;
    --advantages-card-padding: 30px 20px;
    --advantages-icon-size: 56px;
    --advantages-title-size: 17px;
    --advantages-gap: 25px;
  }

  .advantages-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ============================================
   Mobile Styles (<768px)
   ============================================ */

@media (max-width: 768px) {
  :root {
    --advantages-padding-x: 15px;
    --advantages-padding-y: 40px;
    --advantages-card-padding: 25px 20px;
    --advantages-icon-size: 48px;
    --advantages-title-size: 16px;
    --advantages-text-size: 14px;
    --advantages-gap: 20px;
  }

  .advantages-grid {
    grid-template-columns: 1fr;
    gap: var(--advantages-gap);
  }

  .advantage-card {
    padding: var(--advantages-card-padding);
  }
}

/* ============================================
   Small Mobile (<480px)
   ============================================ */

@media (max-width: 480px) {
  :root {
    --advantages-padding-y: 30px;
    --advantages-card-padding: 20px 15px;
    --advantages-icon-size: 44px;
    --advantages-title-size: 15px;
  }
}

/* ============================================
   Accessibility
   ============================================ */

@media (prefers-reduced-motion: reduce) {
  .advantage-card {
    transition: none;
  }

  .advantage-card:hover {
    transform: none;
  }
}
