/* ============================== *
* ADDITIONAL CHANGES
* ============================== */
h1 {
    color: #000000;
}
.slider {
    margin-top: 0;
}
.slide img {
    border: none;
    box-shadow: none;
}
.homepage__callouts .callout {
    box-shadow: none;
}
@media screen and (min-width: 1440px) {
.banner {
    width: 100%;
}
}
.homepage__callouts h2 {
  font-weight: narrow;
  color: #000000;
  font-size: 32px;
}
a.button, button.button, input[type=submit].button {
    color: black;
}
.footer-wrapper {
	background: #041e42;
	color: #041e42;
}
footer.footer--site A:link,
footer.footer--site A:visited,
footer.footer--site A:active {
	color: #FFF;
}
footer.footer--site .copyright P {
	color: #FFF;
}
footer.footer--site .logo-space img {
    filter: brightness(0) invert(1);
}
/* Quick fix for that extra space between Callouts :D - GF-081023 */
.homepage__callouts .callout {
    margin-bottom: -6px;
}
.dropzone { 
    display: block !important;
}

/* Digital Products - Product Not Available for Ordering */
.product__ordering H3 {
    display: none;
}

/* Slider Adjustment */
.slide.style-c .slide__image {
    width: 99%;
}
.product-landing .product__images ul {
    grid-template: auto/repeat(2, 1fr);
}

.homepage__callouts .callouts {
    grid-template: auto / repeat(2, 2fr);
}
.product-landing .product__images ul {
    grid-template: auto/repeat(2, 1fr);
}

/* ============================== *
* ROLE-BASED HERO UNITS OVERRIDE
* ============================== */

/* ============================== *
* ROLE-BASED HERO UNITS OVERRIDE — FINAL CLICKABLE VERSION
* ============================== */

/* 1. Hide default heroes if any role-specific or public heroes exist */
.homepage__callouts .callouts:has([data-hero="role"]) [data-hero="default"],
.homepage__callouts .callouts:has([data-hero="public"]) [data-hero="default"] {
    display: none !important;
}

/* 2. Hide empty role/public containers to remove invisible overlays */
.homepage__callouts .callouts [data-hero="role"]:empty,
.homepage__callouts .callouts [data-hero="public"]:empty {
    display: none !important;
    pointer-events: none !important;
}

/* 3. Default heroes — only when no role or public heroes exist */
.homepage__callouts .callouts:not(:has([data-hero="role"])):not(:has([data-hero="public"])) [data-hero="default"] {
    display: block !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 5 !important;   /* ensure clickable */
}

/* 4. Public heroes — when present */
.homepage__callouts .callouts:has([data-hero="public"]) [data-hero="public"] {
    display: block !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 5 !important;   /* ensure clickable */
}

/* 5. Role heroes — when present */
.homepage__callouts .callouts:has([data-hero="role"]) [data-hero="role"] {
    display: block !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 5 !important;   /* ensure clickable */
}

/* 6. Prevent any hidden hero (default/public/role) from blocking clicks */
.homepage__callouts .callouts [data-hero="default"][style*="display: none"],
.homepage__callouts .callouts [data-hero="public"][style*="display: none"],
.homepage__callouts .callouts [data-hero="role"][style*="display: none"] {
    pointer-events: none !important;
    z-index: 0 !important;
}


/* ============================== *
 * MAIN NAVIGATION ONE-LINE FIX + DROPDOWN ADJUSTMENT
 * ============================== */
.nav--site .nav-list {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  gap: 1.75rem;
  white-space: nowrap;
}

/* Keep normal link readability */
.nav--site .nav-list li a {
  font-size: 0.95em;
  letter-spacing: -0.2px;
  padding: 0.25rem 0.75rem 0.25rem 0.5rem; /* extra right padding for arrow space */
  line-height: 1.2;
  position: relative;
}

/* Fix dropdown arrow positioning so it doesn’t overlap text */
.nav--site .nav-list li.has-children > a::after {
  content: "▾"; /* small downward arrow */
  font-size: 0.7em;
  margin-left: 6px;
  vertical-align: middle;
  position: relative;
  top: -1px;
  pointer-events: none;
}

/* Restore proper dropdown menu layout */
.nav--site .nav-list li.has-children ul.child {
  position: absolute;
  display: none;
  background: #fff;
  padding: 0.5rem 0;
  list-style: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  border-radius: 3px;
  z-index: 999;
  min-width: 180px;
  white-space: normal; /* allow wrapping inside dropdown */
}

/* Show dropdown on hover */
.nav--site .nav-list li.has-children:hover > ul.child {
  display: block;
}

/* Dropdown link formatting */
.nav--site .nav-list li.has-children ul.child li a {
  display: block;
  padding: 0.5rem 1rem;
  font-size: 0.9em;
  color: #000;
  text-align: left;
  white-space: nowrap;
}

.nav--site .nav-list li.has-children ul.child li a:hover {
  background-color: #f5f5f5;
}