/*
Theme Name: ACU Child Theme
Template: kingster
Version: 1.0
*/

/* Your custom CSS goes below */
/* ===== ACU Impact Highlights ===== */

.acu-impact-section{
max-width:1200px;
margin:80px auto;
padding:0 20px;
font-family:Georgia, serif;
}

.acu-impact-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

.acu-impact-card{
background:#ffffff;
padding:30px 25px;
border-radius:8px;
box-shadow:0 8px 20px rgba(0,0,0,0.08);
position:relative;
transition:all .35s ease;
}

.acu-impact-card:hover{
transform:translateY(-6px);
box-shadow:0 15px 30px rgba(0,0,0,0.15);
}

.acu-impact-card:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:4px;
background:#7b001c;
}

.acu-impact-number{
font-size:34px;
font-weight:700;
color:#7b001c;
margin-bottom:10px;
}

.acu-impact-title{
font-size:20px;
font-weight:600;
margin-bottom:10px;
color:#222;
}

.acu-impact-text{
font-size:15px;
line-height:1.6;
color:#555;
}

/* Responsive */

@media(max-width:900px){

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

}

@media(max-width:600px){

.acu-impact-grid{
grid-template-columns:1fr;
}

}

.alumreg {
  position: relative;
  background: #ffffff;
  overflow: hidden;
}

/* dotted wave background */
.alumreg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  /* DOTS ONLY — white-safe */
  background-image:
    radial-gradient(rgba(0,0,0,0.08) 0.8px, transparent 0.8px);
  background-size: 22px 22px;

  /* wave motion */
  animation: alumregWaveDots 18s linear infinite;
}

/* ensure content is untouched */
.alumreg > * {
  position: relative;
  z-index: 1;
}

/* smooth wave movement */
@keyframes alumregWaveDots {
  0% {
    background-position: 0 0;
  }
  50% {
    background-position: 60px 30px;
  }
  100% {
    background-position: 0 0;
  }
}

/* accessibility */
@media (prefers-reduced-motion: reduce) {
  .alumreg::before {
    animation: none;
  }
}
.acu-timeline-horizontal{
display:flex;
justify-content:space-between;
align-items:flex-start;
padding:60px 20px;
position:relative;
flex-wrap:wrap;
}

.acu-timeline-horizontal::before{
content:"";
position:absolute;
top:20px;
left:5%;
right:5%;
height:3px;
background:#d9d9d9;
}

.acu-timeline-item{
width:20%;
text-align:center;
position:relative;
}

.acu-dot{
width:14px;
height:14px;
background:#0b2d5c;
border-radius:50%;
margin:0 auto 20px;
border:3px solid white;
box-shadow:0 0 0 3px rgba(0,0,0,0.1);
}

.acu-year{
font-weight:bold;
color:#b21f2d;
margin-bottom:8px;
font-size:16px;
}

.acu-timeline-item h3{
font-size:22px;
margin:10px 0;
}

.acu-timeline-item p{
font-size:14px;
line-height:1.6;
color:#555;
}

/* Mobile */

@media(max-width:900px){

.acu-timeline-horizontal{
flex-direction:column;
}

.acu-timeline-horizontal::before{
display:none;
}

.acu-timeline-item{
width:100%;
margin-bottom:40px;
}

}