#about {
  color: #000;
}

#about h2,
#about p {
  color: #000 !important;
}


#about::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url('images/about-bg.jpg') center/cover no-repeat;
  opacity: 0.6; /* transparency for image only */
  z-index: -1;
}

#about .container {
  position: relative;
  z-index: 2;
}


.social-big {
  font-size: 3rem; /* Adjust as needed */
}

.card-body {
  display: flex;
  flex-direction: column;
  justify-content: center; /* vertical centering */
  height: 100%;
}

.partner-logo {
  filter: none !important;           /* Show original, colorful logos */
  transition: transform 0.3s ease, filter 0.3s ease;
  cursor: pointer;
}
.partner-logo:hover {
  transform: scale(1.3);             /* 30% larger on hover */
}

#about::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.6); /* White overlay for readability */
  z-index: -1;
}

/* =======================
   Hydragon Styling (WCAG AA Compliant)
   ======================= */

:root {
  /* Accessible brand colours */
  --hydragon-blue: #0f5a99;        /* Brand blue, passes WCAG AA */
  --hydragon-blue-dark: #0c477a;   /* Hover/dark accent */
  --hydragon-dark-bg: #233756;     /* Footer/nav background */
  --hydragon-footer-txt: #e9e9e9;  /* Footer text */
}

/* ----- ABOUT Section ----- */
#about {
  position: relative;
  color: #000; /* Default black text */
}

#about h2,
#about p {
  color: #000;
}

#about::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url('images/about-bg.jpg') center/cover no-repeat;
  z-index: -1;
}

#about::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.6);
  z-index: -1;
}

#about .container {
  position: relative;
  z-index: 2;
}

/* ----- ICON sizing ----- */
.social-big {
  font-size: clamp(2rem, 2vw + 1rem, 3rem);
}

/* ----- Card body vertical centering ----- */
.card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

/* ----- Partner logos hover effect ----- */
.partner-logo {
  filter: none !important;
  transition: transform 0.3s ease, filter 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
}

.partner-logo:hover {
  transform: scale(1.15);
  filter: brightness(1.1);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
}

/* ----- Accessible Links & Primary Text ----- */
.text-primary,
a {
  color: var(--hydragon-blue) !important;
}

a:hover,
.text-primary:hover {
  color: var(--hydragon-blue-dark) !important;
}

/* ----- Buttons and Calls to Action ----- */
.cta-btn,
.btn-primary {
  background-color: var(--hydragon-blue) !important;
  color: #fff !important;
  border-color: var(--hydragon-blue) !important;
}

.cta-btn:hover,
.btn-primary:hover {
  background-color: var(--hydragon-blue-dark) !important;
  border-color: var(--hydragon-blue-dark) !important;
}

/* ----- Navbar and Footer Text Contrast ----- */
.navbar-dark .navbar-nav .nav-link {
  color: #fff !important;
}

.navbar-dark .navbar-nav .nav-link:hover {
  color: #e6e6e6 !important;
}

footer,
footer a {
  color: var(--hydragon-footer-txt) !important;
}

footer a:hover {
  color: #ffffff !important;
}

.orcid-link .fa-orcid {
  transition: transform 0.15s;
}
.orcid-link .fa-orcid:hover {
  transform: scale(1.18);
}

.publication-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 10px #e3e3e3;
  transition: box-shadow 0.25s;
  height: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.publication-card .enlarge-on-hover img {
  transition: transform 0.22s cubic-bezier(.4,1.8,.6,1);
}

.publication-card .enlarge-on-hover:hover img,
.publication-card .enlarge-on-hover:focus img {
  transform: scale(1.2);
  z-index: 1;
}

.doi-link {
  word-break: break-all;
  color: var(--hydragon-blue, #0f5a99);
}
.doi-link:hover {
  color: var(--hydragon-blue-dark, #0c477a);
  text-decoration: underline;
}

body {
  padding-top: 70px; /* Adjust value if your navbar is taller or shorter */
}

.navbar .navbar-brand {
  color: #fff !important;
}
.navbar .navbar-brand span {
  color: #fff !important;
}

#research {
  position: relative;
  background-image: url('images/scheme_topics.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

#research .container {
  position: relative;
  z-index: 2;
}

/* Optional: semi-transparent overlay for readability */
#research::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.7); /* white overlay, adjust opacity as needed */
  z-index: 1;
  pointer-events: none;
}
#research .container {
  position: relative;
  z-index: 2;
}