 /* data-analytics.php */



 
.service-section {
    max-width: 1450px;
    height: 1500%;
    padding: 60px 20px;
    background: linear-gradient(135deg, #ffffff 0%, #e0f4ff 100%);
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}


/* ----- Sections ----- */
section {
  max-width: 1350px;
  max-height: 100%;
  margin: 26px auto;
  padding: 18px 22px;
  background: #fff; /* White background */
  border-radius: 8px; /* optional: rounded section */
}

/* Section titles */
h2.title {
  text-align: center;
  color: var(--accent);
  margin: 12px 0 8px 0;
  font-weight: 600;
  letter-spacing: 0.2px;
  position: relative;
  font-size: 24px;
}

/* animated underline */
h2.title::after {
  content: "";
  display: block;
  width: 140px;
  height: 3px;
  margin: 12px auto 0;
  border-radius: 3px;
  background: linear-gradient(90deg, #9fd1e8, var(--accent));
  transform-origin: left;
  animation: underlineAppear .9s ease both;
}
@keyframes underlineAppear {
  from { transform: translateX(-12px) scaleX(.1); opacity: 0 }
  to { transform: translateX(0) scaleX(1); opacity: 1 }
}

/* small center dot for the data section */
.dot {
  text-align: center;
  margin: -8px 0 18px;
}
.dot span {
  display: inline-block;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: #5aa08d;
  box-shadow: 0 0 8px rgba(90,160,141,0.18);
  animation: dotPulse 2s infinite;
}
@keyframes dotPulse {
  0% { transform: scale(.9); opacity: .9 }
  50% { transform: scale(1.2); opacity: 1 }
  100% { transform: scale(.9); opacity: .9 }
}

/* ----- Two-column layout (table) ----- */
table.presentation { width: 100%; border-collapse: collapse; background: #fff }
table.presentation td { vertical-align: top; padding: 14px; background: #fff }

/* Make the icon cell fixed width & center */
.iconCell { width: 64px; padding-right: 12px; background: #fff }
.iconCell svg { display: block; margin: auto; transition: transform .36s ease, filter .36s ease; }
.iconCell svg:hover { transform: translateY(-4px) scale(1.06); filter: drop-shadow(0 6px 12px rgba(47,111,149,0.12)); }

/* Card body text */
.card { background: #fff; padding: 10px; border-radius: 8px }
.card h3 { margin: 0 0 8px 0; font-size: 18px; color: #14334a }
.card p { margin: 0; color: #475569; font-size: 14px }

/* subtle entry animation for each row */
.fadeInUp { opacity: 0; transform: translateY(10px); animation: fadeUp .7s ease forwards }
.fadeInUp.delay-1 { animation-delay: .08s }
.fadeInUp.delay-2 { animation-delay: .16s }
.fadeInUp.delay-3 { animation-delay: .24s }
.fadeInUp.delay-4 { animation-delay: .32s }
@keyframes fadeUp {
  to { opacity: 1; transform: translateY(0) }
}

/* ----- Data illustration area ----- */
.illustration { background: #fff; padding: 10px; border-radius: 8px }
.illustration svg { max-width: 100%; height: auto; display: block; transform-origin: center; animation: float 6s ease-in-out infinite }
@keyframes float {
  0% { transform: translateY(0) }
  50% { transform: translateY(-6px) }
  100% { transform: translateY(0) }
}

/* ----- Four-cards strip (badges) ----- */
.four-cards { display: block; margin-top: 8px; background: #fff; padding: 14px; border-radius: 8px }
.four-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; align-items: start }
.badgeWrap { background: #fff; border-radius: 14px; padding: 14px; text-align: center; box-shadow: var(--shadow); transition: transform .28s cubic-bezier(.2,.9,.2,1), box-shadow .28s; overflow: visible }
.badgeWrap:hover { transform: translateY(-8px); box-shadow: 0 18px 40px rgba(10,30,70,0.12) }
.badgeSvg { width: 110px; height: 140px; margin: 0 auto; display: block }

.badgeTitle { font-size: 12px; color: #10202b; margin-top: 10px; margin-bottom: 8px; font-weight: 700; letter-spacing: .4px }
.badgeText { font-size: 12px; color: #fff; padding: 10px; border-radius: 8px; line-height: 1.15 }

/* colors for badge text background */
.badge-1 .badgeText { background: #2f3b72 }
.badge-2 .badgeText { background: #18a58f }
.badge-3 .badgeText { background: #c73d45 }
.badge-4 .badgeText { background: #f07a2b }

/* number circle bounce */
.badgeSvg circle.number { transform-origin: center; animation: bounceIn .9s cubic-bezier(.2,.9,.3,1) }
@keyframes bounceIn {
  0% { transform: scale(.2); opacity: 0 }
  60% { transform: scale(1.08); opacity: 1 }
  100% { transform: scale(1) }
}

/* bottom polygon / hex accent small bob */
.badgeSvg polygon, .badgeSvg rect { transition: transform .5s ease }
.badgeWrap:hover .badgeSvg polygon { transform: translateY(-6px) }
.badgeWrap:hover .badgeSvg path { transform: translateY(-4px) }

/* ----- Responsiveness ----- */
@media (max-width:1024px){
  .four-grid { grid-template-columns: repeat(2,1fr) }
  table.presentation td { display: block; width: 100%; padding: 12px 6px }
  .iconCell { width: 56px }
}
@media (max-width:640px){
  body { padding: 14px }
  h2.title { font-size: 20px }
  .four-grid { grid-template-columns: 1fr }
  .badgeSvg { width: 86px; height: 110px }
  .card h3 { font-size: 16px }
}

/* small utility */
.muted { color: var(--muted); font-size: 13px }
