.elementor-991137 .elementor-element.elementor-element-1145af3{--display:flex;}.elementor-991137 .elementor-element.elementor-element-5ae5534{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-991137 .elementor-element.elementor-element-5ae5534:not(.elementor-motion-effects-element-type-background), .elementor-991137 .elementor-element.elementor-element-5ae5534 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#8B0000;}.elementor-991137 .elementor-element.elementor-element-b366a1d{text-align:center;}.elementor-991137 .elementor-element.elementor-element-b366a1d .elementor-heading-title{font-size:32px;font-weight:600;color:#FFFFFF;}.elementor-991137 .elementor-element.elementor-element-b366a1d > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-991137 .elementor-element.elementor-element-d8a5109{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-991137 .elementor-element.elementor-element-9424b55{text-align:center;}.elementor-991137 .elementor-element.elementor-element-9424b55 .elementor-heading-title{font-size:30px;font-weight:600;}.elementor-991137 .elementor-element.elementor-element-b2ffd29{text-align:center;font-size:20px;line-height:1.7em;}.elementor-991137 .elementor-element.elementor-element-b2ffd29 > .elementor-widget-container{padding:0px 0px 0px 0px;}@media(max-width:767px){.elementor-991137 .elementor-element.elementor-element-d8a5109{--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-991137 .elementor-element.elementor-element-b2ffd29{text-align:justify;}}/* Start custom CSS for html, class: .elementor-element-cd54aa1 */.programs {
  max-width: 1100px;
  margin: auto;
  font-family: "Poppins", sans-serif;
}

/* Year Card */
.year {
  background: #fff;
  margin-bottom: 30px;
  border-radius: 12px;
  padding: 15px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.05);
}

/* Year Title */
.year-title {
  text-align: center;
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 15px;
  color: #8b0000;
  position: relative;
}

/* underline accent */
.year-title::after {
  content: "";
  width: 60px;
  height: 3px;
  background: #8b0000;
  display: block;
  margin: 8px auto 0;
}

/* Rows */
.row {
  display: grid;
  grid-template-columns: 70px 1fr 120px;
  padding: 12px 15px;
  align-items: center;
  border-radius: 8px;
  margin-bottom: 6px;
  background: #f9f9f9;
  transition: 0.3s;
}

/* Header */
.row.header {
  background: #eee;
  font-weight: 600;
}

/* Alternate rows (soft red tint instead of brown) */
.row.alt {
  background: rgba(139, 0, 0, 0.05);
}

/* Hover */
.row:hover {
  background: rgba(139, 0, 0, 0.08);
}
.row a:visited, .row a:hover{
    color: #fff;
}

/* View Button */
.row a {
  background: #8b0000;
  color: #fff;
  padding: 6px 14px;
  border-radius: 20px;
  text-decoration: none;
  font-size: 13px;
  display: inline-block;
}

/* Mobile */
@media (max-width: 768px) {
  .row {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}
/* Mobile Fix */
@media (max-width: 768px) {

  /* Keep table layout but allow scroll */
.programs {
  overflow-x: auto;
}

/* Table row */
.row {
  display: grid;
  grid-template-columns: 60px 300px 80px; /* fixed width for mobile */
  min-width: 450px; /* forces horizontal scroll */
  align-items: center;
}

/* Header */
.row.header {
  font-weight: 600;
  background: #eee;
}

/* Alternate row */
.row.alt {
  background: rgba(139, 0, 0, 0.08);
}

/* View button */
.row a {
  background: #8b0000;
  color: #fff;
  padding: 6px 12px;
  border-radius: 20px;
  text-decoration: none;
}

/* Optional: highlight active row like your screenshot */
.row:first-child {
  background: #1f2f5a;
  color: #fff;
}

.row:first-child a {
  background: #fff;
  color: #1f2f5a;
}
 .row {
    display: grid;
    grid-template-columns: 40px 1fr 60px; /* smaller columns */
    padding: 10px;
    gap: 5px;
  }

  /* Header */
  .row.header {
    font-size: 12px;
  }

  /* Sl.No */
  .row div:nth-child(1) {
    font-size: 12px;
    font-weight: 600;
  }

  /* Program name */
  .row div:nth-child(2) {
    font-size: 13px;
    line-height: 1.3;
  }

  /* Link */
  .row div:nth-child(3) {
    text-align: right;
  }

  /* Button */
  .row a {
    padding: 4px 10px;
    font-size: 11px;
  }
}/* End custom CSS */