@font-face {
  font-family: 'NithyaRanjana';
  src:  url('https://cdn.staticdelivr.com/gh/callijatra/nithya-ranjana-webfont1/main/fonts/NithyaRanjanaDU-Regular.otf') format('otf'),
        url('https://cdn.staticdelivr.com/gh/callijatra/nithya-ranjana-webfont1/main/fonts/NithyaRanjanaDU-Regular.woff2') format('woff2'),
        url('https://cdn.staticdelivr.com/gh/callijatra/nithya-ranjana-webfont1/main/fonts/NithyaRanjanaDU-Regular.woff') format('woff'); /* Fallback format */
  font-weight: 100;
  font-display: swap; 
}

@layer utilities {
  .font-nithya-ranjana {
    font-family: 'NithyaRanjana', sans-serif;
  }

    /* Stylistic Set 1 */
    .font-nithya-ranjana-ss01 {
      font-family: 'NithyaRanjana', sans-serif;
      font-feature-settings: "ss01" 1;
    }
}

 /* Hero banner */
.hero {
  position: relative;
  height: 75vh;
  background: url(../images/banners/banner_1.jpg) center / cover no-repeat;
  color: #fff;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.75), rgba(0,0,0,0.15));
}
.hero-content {
  position: relative;
  z-index: 1;
}

/* Resource cards */
.resource-card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.resource-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 0.75rem 1.5rem rgba(0,0,0,0.15);
}

/* Gallery images */
.gallery img {
  object-fit: cover;
  height: 100%;
}
