:root {
    --primary: #07a37f;
    --dark-accent: #045c4a;
    --light-accent: #5fd9c1;
    --neutral-light: #f5f5f5;
    --neutral-dark: #17382e;
    --complementary-pop: #a3072a;
}

/*
=========================================
BACKGROUND COLORS
=========================================
*/
.bg-light{
    background-color: #f0fbf8;
}

/*
=========================================
NAVBAR
=========================================
*/
nav{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
}
nav a,
nav ul a{
    font-weight: 400;
}
.bg-liquid-glass{
    background: rgba(255, 255, 255, 0);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(5.5px);
    -webkit-backdrop-filter: blur(5.5px);
    border: 1px solid rgba(255, 255, 255, 0.10);
}
.sidenav{
    z-index: 1001;
}
.nav-logo {
  height: 50px;
  margin-top: 0.5rem;
}
@media only screen and (max-width: 992px) {
    .nav-logo {
        margin-top: 0.1rem;
    }
}

.hero {
    position: relative;
    height: 100vh;
    overflow: hidden;
    background: url(/assets/images/slides/spc.jpg) center/cover no-repeat;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-direction: column;
    color: white;
    text-align: center;
    padding-bottom: 50px;
}

.hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6); /* black overlay with 50% opacity */
  z-index: 1; /* sits above background but below carousel */
}

.hero h1 {
    font-size: 3rem;
    margin: 0.6rem 0 0.6rem 0;
}
.hero h2{
    font-size: 2.5rem;
    margin: 0.6rem 0 3rem 0;
}
.btn-custom {
    background-color: var(--complementary-pop);
}
.section {
    padding: 50px 20px;
}
.card .card-action a {
    color: var(--primary);
}
footer {
    background-color: var(--neutral-dark);
    color: #fff;
    padding: 20px 0;
}

footer a{
    color: #fff;
}

.section-vision-mision{
    text-align: center;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden; 
}

.section-vision-mision h2{
    margin-bottom: 5rem;
}

/* Circle base style */
.circle {
  position: absolute;
  border-radius: 50%;
  opacity: 0.3;
  z-index: 0; /* keep circles behind content */
}

/* Custom positions */
.circle1 {
  width: 120px;
  height: 120px;
  top: 40px;
  left: 60px;
  background: var(--primary);
}

.circle2 {
  width: 180px;
  height: 180px;
  bottom: 50px;
  right: 80px;
  background: #cadb10;
}

.circle3 {
  width: 90px;
  height: 90px;
  top: 150px;
  left: 250px;
  background: #ff32d6;
}

.section-promotion{
    min-height: 400px;
    display: flex;
    align-items: center;   /* Vertically center content */
    justify-content: center;
    background: linear-gradient(135deg, #0077cc, #00b894);
    color: #fff;
}
.section-promotion h1{
    font-size: 120px;
}

.section-newsevents .card-image {
  height: 200px;          /* fixed height for all images */
  overflow: hidden;       /* hides anything outside the box */
}

.section-newsevents .card-image img {
  width: 100%;            /* stretch to full width */
  height: 100%;           /* fill the container height */
  object-fit: cover;      /* crop image to fit without distortion */
}

.section-newsevents .btn-floating{
    z-index: 1000;
}

.banner {
  position: relative;       /* allows absolute positioning inside */
  overflow: hidden;         /* ensures no spillover */
}

.banner img {
    display: block;
    width: 100%;
    min-height: 400px;
    object-fit: cover;
    object-position: left center; /* keep left side visible */
}

.banner-title {
    position: absolute;
    bottom: 20px;             /* stick to bottom */
    left: 50%;                /* move to horizontal center */
    transform: translateX(-50%); /* perfectly center it */
    color: #fff;              /* white text for contrast */
    font-size: 2rem;          /* adjust size */
    font-weight: bold;
    text-shadow: 2px 2px 6px rgba(0,0,0,0.6); 
}

/*
=========================================
CARDS
=========================================
*/
/* From Uiverse.io by andrew-demchenk0 */ 
.card {
  --main-color: #000;
  --submain-color: #78858F;
  --bg-color: #fff;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  position: relative;
  width: 100%;
  height: 384px;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 20px;
  background: var(--bg-color);
}

.card__img {
  height: 192px;
  width: 100%;
}

.card__img img {
  height: 100%;
  width: 100%;
  border-radius: 20px 20px 0 0;
}

.card__avatar {
  position: absolute;
  width: 114px;
  height: 114px;
  background: var(--bg-color);
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  top: calc(50% - 57px);
}

.card__avatar img {
  width: 100px;
  height: 100px;
}

.card__title {
  margin-top: 60px;
  font-weight: 500;
  font-size: 18px;
  color: var(--main-color);
}

.card__subtitle {
  margin-top: 10px;
  font-weight: 400;
  font-size: 15px;
  color: var(--submain-color);
}

.card__btn {
  margin-top: 15px;
  width: 76px;
  height: 31px;
  border: 2px solid var(--main-color);
  border-radius: 4px;
  font-weight: 700;
  font-size: 11px;
  color: var(--main-color);
  background: var(--bg-color);
  text-transform: uppercase;
  transition: all 0.3s;
}

.card__btn-solid {
  background: var(--main-color);
  color: var(--bg-color);
}

.card__btn:hover {
  background: var(--main-color);
  color: var(--bg-color);
}

.card__btn-solid:hover {
  background: var(--bg-color);
  color: var(--main-color);
}