:root {
  --ipak-blue: #5972b7;
  --magenta:   #9e1f63;
  --light-bg:  #f8f9fa;
}

body {
  font-family: 'Open Sans', system-ui, -apple-system, sans-serif;
  color: #333;
  line-height: 1.6;
}

.bg-gradient-header {
  background: linear-gradient(to right, #ffffff 0%, var(--ipak-blue) 100%);
}

.text-ipak-blue { color: var(--ipak-blue); }

.btn-magenta {
  /*background-color: var(--magenta);
  border-color: var(--magenta); */
  background-color: #8f1c59;
  border-color: #8f1c59;
  color: white;
}

.btn-magenta:hover {
  /*background-color: #7d184e;
  border-color: #7d184e; */
  background-color: #661440;
  border-color: #661440;
  color: #5972b7;
}

/* Improved navbar link styling – more separation, pill-like */
.navbar-nav .nav-link {
  color: white;
  font-weight: 500;
  padding: 0.75rem 1.25rem !important;     /* more horizontal padding */
  margin: 0 0.25rem;                        /* space between items */
  border-radius: 0.5rem;                    /* soft rounded corners */
  transition: all 0.2s ease;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .nav-link:focus {
  color: white;
  background-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

/* Accessibility: Skip link */
.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  background: var(--ipak-blue);
  color: white;
  padding: 8px;
  z-index: 1000;
}

.skip-link:focus {
  top: 0;
}

.hero-section {
  padding: 4rem 0;
  background-color: var(--light-bg);
}

.content-section {
  padding: 3rem 0;
  max-width: 900px;
  margin: 0 auto;
}

footer {
  background-color: var(--ipak-blue);
  color: white;
  padding: 2rem 0;
  font-size: 0.95rem;
}

/* Hamburger / Collapsed menu improvements */
.navbar-collapse {
  /*background: rgba(0, 0, 0, 0.4);*/          /* subtle dark overlay for contrast */
  border-radius: 0.5rem;
  padding: 1rem;
  margin-top: 1rem;                        /* space from logo on mobile */
}

.navbar-nav .nav-link {
  text-align: end;                         /* right-align text in menu items */
  color: white !important;                 /* force white for safety */
}

/* Optional: make toggler icon more visible if needed */
.navbar-toggler-icon {
  filter: brightness(0) invert(1);         /* makes icon white/high-contrast */
}

/* Modern Hero – full background image with overlay that always covers */
.hero-modern {
  min-height: 70vh;                      /* adjust as needed – 70-90vh often works well */
  height: 70vh;                          /* fixed height helps consistency across widths */
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  /*color: white;*/
  /*color: var(--ipak-blue);*/
  color: black;                     /* text color on text over the main image */
  text-align: center;
}


/*
** this was the gradient overlay over the background image - optional - removed to lighten up the page
** inset - covers entire parent **
.hero-modern::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(87, 87, 87, 0.05) 0%,
    rgba(87, 87, 87, 0.20) 60%,               
    rgba(87, 87, 87, 0.35) 100%
    );
  z-index: 1;
}
*/

.hero-bg {
  position: absolute;
  inset: 0;
  background-image: url('images/Homepage Image-1920x800.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 0;
  opacity: .20;             /* adjust opacity for desired effect */
}

/* Content wrapper – sits above the overlay */
.hero-content {
  position: relative;
  z-index: 2;
  max-width: 900px;
  padding: 2rem 1rem;
}

.text-corinthia {
  font-family: "Corinthia", cursive;
  font-weight: 400;
  font-style: normal;
   font-size: clamp(2.5rem, 6vw, 4rem);  /* min 40px, preferred 6% of viewport width, max 80px */
}
.text-corinthia-bold {
  font-family: "Corinthia", cursive;
  font-weight: 700;
  font-style: normal;
  font-size: clamp(2.5rem, 6vw, 4rem);  /* min 40px, preferred 6% of viewport width, max 80px */
}
/*
.text-shadow {
  text-shadow: 0px 3px 10px rgba(0, 0, 0, 0.8);
}
*/
/*
.text-shadow {
  text-shadow: 0 2px 10px rgba(0,0,0,0.7);
}
*/

/* Responsive adjustments */
@media (max-width: 992px) {
  .hero-modern {
    min-height: 65vh;
    height: auto;                        /* let content dictate on smaller screens */
    padding: 4rem 0;
  }
}

@media (max-width: 768px) {
  .hero-modern {
    min-height: 60vh;
  }
  .display-3 {
    font-size: 2.5rem;
  }
}

/* additions for community.html here */
/* Hover underline for links in side list */
.hover-underline {
  transition: all 0.2s ease;
}
.hover-underline:hover {
  text-decoration: underline;
  color: var(--magenta) !important;
}

/* Make hero-modern more flexible on this page */
.hero-modern {
  background-color: white; /* or var(--light-bg) if preferred */
}

/* Ensure image stays left-aligned on large screens */
@media (min-width: 992px) {
  .text-lg-start img {
    margin-left: 0;
  }
}

/* Smaller link text in the sidebar */
#community .list-unstyled a {
  font-size: 0.95rem;           /* slightly smaller than body text */
  line-height: 1.6;
}

/* For this page's illustration – no extra rounding */
.hero-modern img.img-fluid {
  border-radius: 0; /* ensure no rounding if applied elsewhere */
}
img.img-fluid {
  border-radius: 0; /* ensure no rounding if applied elsewhere */
  opacity: .9;       /* slightly lighten image */
}

/* Make text centered and slightly larger lead for mockup feel */
.content-section .lead {
  font-size: 1.35rem;
  font-weight: 500;
}