  /* Container layout */
.brand-container {
  display: flex;
}

.brand-container > div {
  flex: 1; /* Default equal split unless overridden */
}

.brand-container > div:first-child {
  flex: 0 0 40%; /* Image side */
}

.brand-container > div:last-child {
  flex: 0 0 60%; /* Logo side */
}

/* Brand title styles */
#brand-title {
  background-color: #0b2341; /* Navy background */
  background: url('/binaries/images/home/geo-background.png') no-repeat center center;
  background-size: cover; /* Makes the image fill the whole area */
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  height: 100%;
}

#brand-title .logo {
  display: inline-block;
  font-family: Arial, sans-serif;
  font-weight: 900;
  color: white;
  width: 100%;
  padding-top:80px;
}

#brand-title .top {
  display: flex;
  align-items: center;
  font-size: clamp(2rem, 7vw, 6.5rem); /* Fluid scaling */
  font-weight: bold;
}

#brand-title .white-band {
  background-color: #FFFFFF; /* White */
  color: #0b2341;
  display: flex;
  align-items: center;
  padding: 0 clamp(1.5rem, 3vw, 2.1rem) 0 clamp(2rem, 5vw, 4rem);
  clip-path: polygon(0 0, 100% 0, calc(100% - clamp(20px, 4vw, 59px)) 100%, 0 100%);
}

#brand-title .stripes {
  display: flex;
  gap: clamp(5px, 1vw, 8px);
  margin-left: clamp(20px, 5vw, 50px);
  z-index: 1;
}

#brand-title .stripe {
  background-color: #0b2341; /* Navy stripes */
  width: clamp(5px, 1vw, 15px);
  height: clamp(60px, 15vw, 150px);
  transform: skewX(-22deg);
}

#brand-title .bottom {
/*  background-color: #0b2341;  Navy background */
  font-size: clamp(2rem, 7vw, 6.5rem);
  padding: 0 0 0 clamp(2rem, 5vw, 4rem);
}

/* Mobile stacking */
@media (max-width: 768px) {
  .brand-container {
    flex-direction: column;
  }

  .brand-container > div {
    flex: none;
    width: 100% !important;
  }
  #brand-title .logo {
	padding-top:0;
  }
  #brand-title .white-band {
    justify-content: space-between;
  }
.button-row {
    flex-direction: column;   /* Stack vertically */
	justify-content: center; /* Center horizontally */
    align-items: center;
  }

  .button-row a {
    width: 100%;              /* Full width buttons */
  }
}

.button-row a {
    display: inline-block;
    text-decoration: none;
    color: #ffffff;
    padding: 0.5rem 0.75rem;
    font-size: clamp(0.75rem, 2vw, 1rem);
    font-weight: bold;
    border-radius: 4px;
    transition: background-color 0.2s ease;
    border: 1px solid #fff;
    background-color: rgba(255, 255, 255, 0.15);
	text-align:center;
}

.button-row a:hover {
  background-color: #0b2341;
}
			
.button-row {
  display: flex;
  justify-content: center; /* Truly center in full column width */
  gap: 1rem;
  margin-top: 1.5rem;
  flex-wrap: wrap;
}
/* --- Carousel Layout --- */
#home-carousel {
  position: relative;
  overflow: hidden;
  width: 100%;
}

#home-carousel .slides-wrapper {
  display: flex;
  transition: transform 0.6s ease-in-out;
  width: 100%;
}

#home-carousel .hcb-slide {
  flex: 0 0 100%;
  box-sizing: border-box;
}

/* --- Controls Overlaid at Bottom Center --- */
#home-carousel .controls {
  position: absolute;
  bottom: 25px; /* distance from bottom of slide */
  left: 20%;
/*   transform: translateX(-50%); */
  display: flex;
  gap: 0.5rem;
  align-items: center;
  background: rgba(11, 35, 65, 0.7); /* semi-transparent for contrast */
  padding: 0.5rem 1rem;
  border-radius: 6px;
  z-index: 10;
}

/* --- Buttons & Dots --- */
#home-carousel .controls button {
  cursor: pointer;
  color: #fff;
  background: transparent;
  border: 1px solid #fff;
  padding: 0.25rem 0.5rem;
}

#home-carousel .dots {
  display: flex;
  gap: 0.25rem;
}

#home-carousel .dots button {
  background: #fff;
  width: 10px;
  height: 10px;
  border: none;
}

#home-carousel .dots button[aria-current="true"] {
  background: orange; /* active state */
  outline: none;
}

/* --- Visually Hidden Utility --- */
.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* --- Focus Ring for Accessibility --- */
#home-carousel :focus {
  outline: 3px solid #000;
  outline-offset: 2px;
}

/* --- Reduced Motion Preference --- */
@media (prefers-reduced-motion: reduce) {
  #home-carousel .slides-wrapper {
    transition: none;
  }
}

