@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@1,400;1,500;1,600&display=swap');

*, *::before, *::after {
  border-radius: 0 !important;
}

:root {
  --font-sans: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-serif: 'Playfair Display', Georgia, Cambria, "Times New Roman", Times, serif;
  --font-main: var(--font-sans);

  --nola-white: #FFFFFF;
  --nola-black: #000000;

  --nola-ink: #003D3C;
  --nola-ink-soft: #004A49;

  --nola-lime-100: #F5F8CF;
  --nola-lime-300: #E3EB7B;
  --nola-lime-500: #CFDB40;
  --nola-lime-700: #838C1A;
  --nola-lime-800: #6E760F;

  --nola-deep-teal-900: #003D3C;
  --nola-deep-teal-800: #005A59;

  --nola-teal-100: #E6F4F3;
  --nola-teal-300: #67C6BE;
  --nola-teal-500: #028F83;
  --nola-teal-700: #027A6F;
  --nola-teal-800: #02665D;

  --nola-aqua-100: #CCF5F5;
  --nola-aqua-300: #66E0E0;
  --nola-aqua-500: #00CCCC;
  --nola-aqua-700: #008A8A;
  --nola-aqua-800: #007575;

  --nola-red-100: #FFE0DB;
  --nola-red-300: #FF8F80;
  --nola-red-500: #FC3D25;
  --nola-red-700: #C82F1E;
  --nola-red-800: #A82618;

  --nola-lavender-100: #EFE8F4;
  --nola-lavender-300: #D6C6E4;
  --nola-lavender-500: #BDA4D3;
  --nola-lavender-700: #71627F;
  --nola-lavender-800: #5E526A;

  --nola-peach-100: #FFE6DE;
  --nola-peach-300: #FFCBBE;
  --nola-peach-500: #FFAB92;
  --nola-peach-700: #996758;
  --nola-peach-800: #805649;

  --nola-yellow-100: #FEFFD6;
  --nola-yellow-300: #FDFFAE;
  --nola-yellow-700: #969C00;
  --nola-yellow-800: #747800;

  --page-margin: clamp(1.25rem, 4vw, 5rem);
  --section-padding-y: clamp(5rem, 10vw, 9rem);
  --grid-gap: clamp(1.5rem, 3vw, 4rem);
  --max-width: 1440px;
  --header-height: 88px;

  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-md: 1.125rem;
  --text-lg: 1.375rem;
  --text-xl: 1.75rem;
  --text-2xl: 2.5rem;
  --text-3xl: 3.5rem;
  --text-hero: clamp(3.25rem, 7vw, 7.5rem);

  /* --- Semantic Color Tokens --- */
  --color-page-bg: var(--nola-white);
  --color-page-text: var(--nola-black);

  --color-ink: var(--nola-ink);
  --color-muted: rgba(0, 0, 0, 0.66);

  --color-dark-bg: var(--nola-black);
  --color-dark-text: var(--nola-white);

  --color-brand-bg: var(--nola-deep-teal-800);
  --color-brand-text: var(--nola-white);

  --color-lime-bg: var(--nola-lime-500);
  --color-lime-text: var(--nola-ink);

  --color-aqua-bg: var(--nola-aqua-500);
  --color-aqua-text: var(--nola-black);

  --color-red-bg: var(--nola-red-500);
  --color-red-text: var(--nola-black);

  --color-lavender-bg: var(--nola-lavender-500);
  --color-lavender-text: var(--nola-ink);

  --color-peach-bg: var(--nola-peach-500);
  --color-peach-text: var(--nola-ink);

  --color-yellow-bg: var(--nola-yellow-300);
  --color-yellow-text: var(--nola-ink);

  --color-link-light-bg: var(--nola-ink);
  --color-link-dark-bg: var(--nola-yellow-300);

  --color-focus-light-bg: var(--nola-black);
  --color-focus-dark-bg: var(--nola-yellow-300);

  --color-border-light: rgba(0, 0, 0, 0.18);
  --color-border-dark: rgba(255, 255, 255, 0.24);

  /* --- Legacy Mappings --- */
  --color-white: var(--nola-white);
  --color-black: var(--nola-black);
  --color-charcoal: var(--nola-black);
  --color-deep-grey: var(--nola-ink);
  --color-slate: var(--nola-ink-soft);
  --color-off-white: var(--nola-white);
  --color-stone: var(--nola-lavender-100);
  
  --color-gray-100: var(--nola-black);
  --color-gray-200: var(--nola-black);
  --color-gray-400: var(--nola-ink-soft);
  --color-gray-500: var(--nola-ink-soft);
  --color-gray-600: var(--nola-ink);
  --color-gray-800: var(--nola-ink);
  
  --color-accent: var(--nola-aqua-500);
  --color-accent-dark: var(--nola-deep-teal-800);
  --color-copper: var(--nola-peach-500);
  --color-earth: var(--nola-peach-700);

  --color-primary: var(--nola-aqua-500);
  --color-primary-dark: var(--nola-deep-teal-800);
  --color-primary-bright: var(--nola-lime-500);
  --color-primary-500: var(--nola-aqua-500);
  --color-primary-800: var(--nola-deep-teal-800);
  --color-primary-900: var(--nola-deep-teal-900);
  
  --color-accent-lime: var(--nola-lime-500);
  --color-accent-cyan: var(--nola-aqua-500);
  --color-accent-orange: var(--nola-red-500);
  --color-bright-teal-500: var(--nola-aqua-500);
  --color-green-400: var(--nola-teal-500);
  --color-green-500: var(--nola-teal-500);
  --color-dark-green: var(--nola-deep-teal-800);
  --color-dark-green-deep: var(--nola-deep-teal-900);
  --color-cream: var(--nola-yellow-100);
  --color-lavender-50: var(--nola-lavender-100);
  --color-lavender-100: var(--nola-lavender-100);
  --color-lavender-200: var(--nola-lavender-300);
  
  --color-support-lavender: var(--nola-lavender-500);
  --color-support-peach: var(--nola-peach-500);
  --color-support-cream: var(--nola-yellow-100);
  
  --color-bg: var(--nola-white);
  --color-text: var(--nola-black);
  
  --color-mineral-green: #0F2D2A;
  
  --transition-smooth: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
  --transition-fast: all 0.3s ease;
}


* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  background-color: var(--color-white);
  color: var(--color-charcoal);
  font-family: var(--font-sans);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
  overflow-x: hidden;
  max-width: 100vw;
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
}

img, video {
  max-width: 100%;
  height: auto;
}

/* Layout container padding */
.grid-x-padding {
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
}

a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition-fast);
}

img, video {
  max-width: 100%;
  display: block;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-sans);
  color: var(--color-primary-dark);
  font-weight: 400;
  line-height: 1.15;
  margin-top: 0;
  margin-bottom: 1.5rem;
}

h1, .h1 {
  font-size: clamp(2.2rem, 5vw, 3.2rem);
  font-weight: 300;
}

h2, .h2 {
  font-size: clamp(1.8rem, 4vw, 2.4rem);
  font-weight: 300;
}

h3, .h3 {
  font-size: clamp(1.35rem, 3vw, 1.7rem);
  font-weight: 400;
}

h4, .h4 {
  font-size: clamp(1.15rem, 2vw, 1.35rem);
  font-weight: 500;
}

h5, .h5 {
  font-size: 1.05rem;
  font-weight: 600;
}

h1 em, h2 em, h3 em {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 400;
}

/* Universal Body Typography Classes */
.b1 {
  font-size: 1.15rem;
  font-weight: 300;
  line-height: 1.6;
}

.b2, p {
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.6;
}

.b3 {
  font-size: 0.9rem;
  font-weight: 300;
  line-height: 1.5;
}

.b4 {
  font-size: 0.82rem;
  font-weight: 400;
  line-height: 1.5;
}

.b5 {
  font-size: 0.72rem;
  font-weight: 400;
  line-height: 1.4;
}

/* Overrides for Dark Backgrounds */
.section-dark h1, .section-dark .h1,
.section-dark h2, .section-dark .h2,
.section-dark h3, .section-dark .h3,
.section-dark h4, .section-dark .h4,
.section-dark h5, .section-dark .h5,
.VertPage_cta h2, .VertPage_cta .h2,
.VertPage_hero h1, .VertPage_hero .h1,
.CorpServices_hero h1, .CorpServices_hero .h1,
.PageBanner_title {
  color: var(--color-white) !important;
}


/* Viewport fade-in scroll animation standard */
.animOpacityStart {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1), transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.animOpacityStart.active {
  opacity: 1;
  transform: translateY(0);
}

/* Header & Navbar */
.Menu_menuWrapper__QeEwJ {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  pointer-events: none;
}

.Menu_navbar__woOc_ {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 80px;
  background-color: var(--color-bg);
  border-bottom: 1px solid var(--color-gray-200);
  color: var(--color-text);
  pointer-events: auto;
  position: relative;
  z-index: 10005;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  padding: 0 !important; /* Touch screen edges */
}

/* Dark theme page headers (unscrolled) */
.Menu_navbar__woOc_.Menu_themeDark__w8fG2:not(.scrolled) {
  background-color: transparent !important;
  border-bottom: none;
  color: var(--color-white) !important;
}

/* Scrolled sticky state */
.Menu_navbar__woOc_.scrolled {
  background-color: var(--color-white) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  color: var(--color-charcoal) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.Navbar_leftGroup {
  display: flex;
  align-items: center;
  height: 100%;
}

/* Hamburger toggle */
.Navbar_menuToggle {
  width: 80px;
  height: 80px;
  background-color: #028F83; /* Nola brand green */
  border: none;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  padding: 0;
  transition: background-color 0.3s ease;
}

.Navbar_menuToggle:hover {
  background-color: var(--nola-deep-teal-800);
}

.Navbar_menuToggle span {
  display: block;
  width: 24px;
  height: 1.8px;
  background-color: #fff;
  transition: all 0.3s ease;
}

.SearchIcon path, .ArrowIcon path {
  stroke-width: 1.8px;
}

.Menu_logo__L8aFW {
  padding-left: 4rem;
  display: flex;
  align-items: center;
}

.Logo_brand__header {
  height: 26px;
  width: auto;
}

/* Toggle Logo Colors dynamically */
.Menu_navbar__woOc_:not(.scrolled).Menu_themeDark__w8fG2 .logo-dark {
  display: none !important;
}
.Menu_navbar__woOc_:not(.scrolled).Menu_themeDark__w8fG2 .logo-light {
  display: block !important;
}
.Menu_navbar__woOc_.scrolled .logo-dark {
  display: block !important;
}
.Menu_navbar__woOc_.scrolled .logo-light {
  display: none !important;
}

.Navbar_rightGroup {
  display: flex;
  align-items: center;
  height: 100%;
}

.Navbar_utilityLinks {
  display: flex;
  align-items: center;
  height: 100%;
  gap: 2.5rem;
  margin-right: 2rem;
}

.Navbar_utilityLink {
  font-size: 0.85rem;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.1em;
  color: currentColor;
  opacity: 0.8;
  transition: opacity 0.3s ease, color 0.3s ease;
}

.Navbar_utilityLink:hover {
  opacity: 1;
  color: var(--color-primary) !important;
}

.Menu_navbar__woOc_:not(.scrolled).Menu_themeDark__w8fG2 .Navbar_utilityLink:hover {
  color: var(--color-accent-lime) !important;
}

/* Terminal Login Button — positioned in utility links bar, styled via BtnMain_btnMain__axrAA */
.Navbar_loginBtn {
  align-self: center;
  margin-left: 0.5rem;
  flex-shrink: 0;
}
@media (max-width: 900px) {
  .Navbar_loginBtn { display: none !important; }
}


/* Search toggle */
.Navbar_searchToggle {
  width: 80px;
  height: 80px;
  background-color: #000000;
  border-radius: 0 !important;
  border: none;
  color: #ffffff;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s ease;
}

.Navbar_searchToggle:hover {
  background-color: #000000;
}

.Navbar_searchToggle svg {
  transition: transform 0.3s ease;
}
.Navbar_searchToggle:hover svg {
  transform: scale(1.1);
}

/* Glencore Drawer Slide-out from Left */
.Menu_menuOverlay__U6NCq {
  position: fixed;
  top: 0;
  left: 0;
  width: 400px;
  max-width: 100vw;
  height: 100vh;
  height: 100dvh;
  max-height: 100vh;
  max-height: 100dvh;
  overflow: hidden !important;
  background-color: var(--color-white);
  z-index: 10000;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
  transform: translateX(-100%);
}

.Menu_menuOverlay__U6NCq.open {
  transform: translateX(0);
  pointer-events: auto;
}



.Drawer_header {
  height: 80px;
  display: flex;
  align-items: center;
  padding: 0 !important;
  visibility: hidden;
  flex-shrink: 0 !important;
}

.Navbar_menuClose {
  width: 80px;
  height: 80px;
  background-color: var(--color-primary);
  border: none;
  color: #ffffff;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s ease;
}

.Navbar_menuClose:hover {
  background-color: var(--color-primary-dark);
}

/* Ensure navbar toggles, play buttons, and slider arrow buttons are always a perfect 1:1 square ratio */
.Navbar_menuToggle,
.Navbar_searchToggle,
.Navbar_menuClose,
.SliderTile_btn__fieYp,
.ValueTile_icon__Remd5 {
  aspect-ratio: 1 / 1 !important;
  flex-shrink: 0 !important;
}

.Navbar_menuClose svg {
  transition: transform 0.3s ease;
}
.Navbar_menuClose:hover svg {
  transform: rotate(90deg);
}

.Drawer_linksWrapper {
  padding: 2.5rem 2rem !important;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  flex-grow: 1;
  flex-shrink: 1 !important;
  min-height: 0 !important;
}

.Drawer_linkItem {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.8rem 0;
  font-size: 0.85rem;
  font-weight: 300;
  color: var(--color-text);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  transition: color 0.3s ease;
}

.Drawer_linkItem a {
  flex-grow: 1;
}

.Drawer_linkArrow {
  position: relative;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0 !important;
  transition: transform 0.3s ease;
}

.Drawer_linkArrow::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-top: 1.2px solid var(--color-gray-500);
  border-right: 1.2px solid var(--color-gray-500);
  transform: rotate(45deg);
  transition: border-color 0.3s ease;
}

.Drawer_linkItem:hover {
  color: var(--color-primary);
}
.Drawer_linkItem:hover .Drawer_linkArrow {
  transform: translateX(4px);
}
.Drawer_linkItem:hover .Drawer_linkArrow::after {
  border-color: var(--color-primary);
}

/* Drawer dropdown verticals */
.Drawer_hasDropdown {
  flex-direction: column;
  align-items: stretch;
  cursor: pointer;
}

.Drawer_dropdownTrigger {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.Drawer_dropdownArrow {
  font-size: 1.15rem;
  font-weight: 100;
  color: var(--color-gray-400);
  transition: transform 0.3s ease;
}

.Drawer_dropdownMenu {
  max-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding-left: 1rem;
  gap: 0.8rem;
  transition: max-height 0.35s ease, margin-top 0.35s ease;
}

.Drawer_dropdownMenu.open {
  max-height: 350px;
  margin-top: 1rem;
}

.Drawer_dropdownMenu a {
  font-size: 0.85rem;
  color: var(--color-gray-600);
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.1em;
  padding: 0.5rem 0;
}

.Drawer_dropdownMenu a:hover {
  color: var(--color-primary);
}

.Drawer_footer {
  padding: 2rem !important;
  background-color: var(--color-gray-100);
  border-top: 1px solid var(--color-gray-200);
  flex-shrink: 0 !important;
}

.Drawer_desc {
  font-size: 0.85rem;
  color: var(--color-gray-500);
  line-height: 1.4;
  margin-bottom: 1.5rem;
}

.Drawer_contactBtn {
  display: block;
  width: 100%;
  text-align: center;
  justify-content: center;
}

/* Backdrop Overlay */
.Drawer_backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: transparent;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}

.Drawer_backdrop.open {
  opacity: 1;
  pointer-events: auto;
}

/* Search Overlay */
.Menu_searchOverlay {
  position: fixed;
  top: 0;
  right: 80px;
  left: auto;
  width: calc((100vw - 80px) * 0.6);
  height: 80px;
  background-color: transparent;
  z-index: 10020;
  display: flex;
  justify-content: flex-end; /* Align to the right side */
  align-items: center;
  pointer-events: none;
}

.Menu_searchOverlay.open {
  pointer-events: auto;
}

.SearchOverlay_bgClose {
  position: absolute;
  top: 0;
  left: auto;
  right: -80px;
  width: 100vw;
  height: 100vh;
  background: transparent;
  border: none;
  cursor: default;
  display: none;
}

.Menu_searchOverlay.open .SearchOverlay_bgClose {
  display: block;
}

.Navbar_searchToggle {
  position: relative;
  z-index: 10025; /* So it sits above if needed */
}

.Navbar_searchToggle.active .SearchIcon {
  display: none !important;
}

.Navbar_searchToggle.active .ArrowIcon {
  display: block !important;
}

.SearchOverlay_container {
  position: relative;
  width: 100%;
  max-width: 1200px;
  display: flex;
  height: 80px;
  z-index: 2;
  padding: 0 !important;
  overflow: hidden; /* Clips the input while it slides in */
}

.SearchOverlay_input {
  flex: 1;
  background: var(--color-accent-cyan);
  border: 6px solid var(--color-accent-cyan); /* Cyan border */
  border-right: none;
  outline: none !important;
  box-shadow: none !important;
  font-size: 1.4rem;
  color: var(--color-primary-dark);
  font-family: var(--font-sans);
  padding: 0 1.5rem;
  line-height: normal !important; /* Ensure vertical text centering by overriding body line-height inheritance */
  transform: translateX(100%);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.Menu_searchOverlay.open .SearchOverlay_input {
  transform: translateX(0);
}

.SearchOverlay_input:focus,
.SearchOverlay_input:active,
.SearchOverlay_input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

.SearchOverlay_input::placeholder {
  color: rgba(0, 0, 0, 0.4);
}

.SearchOverlay_submit {
  background-color: #000000;
  border: none;
  color: #ffffff;
  cursor: pointer;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s ease;
  padding: 0;
  flex-shrink: 0 !important;
  aspect-ratio: 1 / 1 !important;
}

.SearchOverlay_submit:hover {
  background-color: var(--color-primary-dark);
}

/* SearchOverlay_close — the explicit × button used inside search container on verticals pages */
.SearchOverlay_close {
  background-color: #000000 !important;
  border: none !important;
  color: #ffffff !important;
  cursor: pointer !important;
  width: 80px !important;
  height: 80px !important;
  min-width: 80px !important;
  min-height: 80px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  transition: background-color 0.3s ease;
}

.SearchOverlay_close:hover {
  background-color: var(--color-primary-dark) !important;
}

.SearchOverlay_close svg {
  width: 20px !important;
  height: 20px !important;
  stroke: #ffffff !important;
}

.SearchOverlay_closeIcon {
  display: none;
}

/* Responsive Hide for utility links */
@media (max-width: 992px) {
  .Navbar_utilityLinks {
    display: none !important;
  }
  .Menu_searchOverlay {
    width: calc(100vw - 80px);
  }
}





.BtnPlay_btnMain__Y0EQ1 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 1.5rem;
  min-width: auto;
  max-width: 100%;
  box-sizing: border-box;
  font-size: 0.85rem;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background-image: none !important;
  background-color: var(--color-primary-dark) !important;
  color: var(--color-white) !important;
  border: 2px solid var(--color-primary-dark) !important;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.BtnPlay_btnMain__Y0EQ1:hover {
  background-color: transparent !important;
  color: var(--color-accent-lime) !important;
  border-color: var(--color-accent-lime) !important;
}

.Header_cookieBar___FctY {
  position: fixed;
  bottom: 2rem;
  left: 5vw;
  right: 5vw;
  background-color: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  padding: 1.5rem 2rem;
  border-radius: 0;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 999;
  border: 1px solid rgba(0, 0, 0, 0.05);
  transition: var(--transition-smooth);
}

.Header_cookieBar___FctY.hidden {
  opacity: 0;
  transform: translateY(50px);
  pointer-events: none;
}

.Header_buttons__OfAVO {
  display: flex;
  gap: 1rem;
}

.Header_decline__Uxaym, .Header_accept__q3aJM {
  padding: 1.5rem;
  border-radius: 0;
  font-size: 0.9rem;
  cursor: pointer;
  font-weight: 300;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease !important;
}

.Header_decline__Uxaym {
  background-color: transparent !important;
  border: 1px solid var(--color-gray-200) !important;
  color: var(--color-gray-500) !important;
}

.Header_accept__q3aJM {
  background-color: var(--color-green-500) !important;
  color: var(--color-white) !important;
  border: 1px solid var(--color-green-500) !important;
}

/* Footer layout */
.Footer_main__T4eSu {
  background-color: var(--color-primary-dark); /* #005A59 */
  color: var(--color-white);
  padding-top: clamp(6rem, 10vw, 10rem);
  padding-bottom: clamp(4rem, 6vw, 6rem);
  margin-top: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
}

.Footer_gridWrapper__ECodo {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  gap: 4rem;
  width: 100%;
}

@media (max-width: 1024px) {
  .Footer_gridWrapper__ECodo {
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
  }
  .Footer_logoBlock__Pzpxw {
    grid-column: span 2;
  }
  .TeamModule_membersWrapper__2NTOZ {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
  }
}

@media (max-width: 640px) {
  .Footer_gridWrapper__ECodo {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
  .Footer_logoBlock__Pzpxw {
    grid-column: span 1;
  }
}

.Footer_midColumn {
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
}

.Footer_rightColumn {
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
  height: 100%;
}

.Footer_logoRow__new {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 2rem;
}

.Footer_logo__L_5Nh {
  background: url("../images/logo_teal.png") no-repeat center left;
  background-size: contain;
  height: 38px;
  width: 188px;
  filter: brightness(0) invert(1); /* Ensure it displays as white logo in dark footer */
}

.Footer_logoDivider__new {
  width: 1px;
  height: 40px;
  background-color: rgba(255, 255, 255, 0.25);
}

.Footer_logoTagline__new {
  font-size: 1.15rem;
  font-weight: 500;
  color: var(--color-white);
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.Footer_logoTagline__new span {
  display: block;
}

.Footer_desc____S66 {
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.6;
}

.Footer_blockTitle__6bu7I {
  font-size: 0.9rem;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-primary-bright); /* Accent cyan color */
  margin-bottom: 1.5rem;
}

.Footer_blockLink__czTSG, .Footer_address__i9aHB {
  display: block;
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 1rem;
  line-height: 1.6;
}

.Footer_addressText__new {
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.6;
}

.Footer_deleteAccountLink__new {
  display: inline-block;
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;
  margin-top: auto;
  padding-top: 1rem;
  transition: color 0.3s ease;
}

.Footer_deleteAccountLink__new:hover {
  color: var(--color-primary-bright);
}

.Footer_blockLink__czTSG:hover {
  color: var(--color-primary-bright);
}

.Footer_emailLink__k7r_a {
  margin-top: 1.5rem;
}

.Footer_emailLink__k7r_a a {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.8);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  padding-bottom: 2px;
}

.Footer_emailLink__k7r_a a:hover {
  color: var(--color-primary-bright);
  border-color: var(--color-primary-bright);
}

.Footer_bottomBar {
  grid-column: span 3;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 2.5rem;
  margin-top: 4rem;
  width: 100%;
}

@media (max-width: 1024px) {
  .Footer_bottomBar {
    grid-column: span 2;
  }
}

@media (max-width: 640px) {
  .Footer_bottomBar {
    grid-column: span 1;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
}

.Footer_copyrights__91usP, .Footer_policies__CWbZC, .Footer_by247__J2liS {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.6);
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}

.Footer_policies__CWbZC {
  display: flex;
  gap: 2rem;
}

.Footer_policies__CWbZC a:hover {
  color: var(--color-primary-bright);
}

.Footer_by247__J2liS {
  text-align: right;
}

.Footer_link247__0lSBN {
  font-weight: 300;
  color: var(--color-white);
}

.Footer_link247__0lSBN:hover {
  color: var(--color-primary-bright);
}


/* ==================== HOMEPAGE UNIQUE STYLES ==================== */

/* Hero Header Slider */
.Header_header__c3A45 {
  position: relative;
  height: 100vh;
  width: 100vw;
  overflow: hidden;
  background-color: var(--color-dark-green);
}

.Header_tileWrapper__2fr6M {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
}

/* Active / Maxi Slide (Full Screen Background) */
.Header_tileWrapper__2fr6M.Header_maxi__O4_hA {
  opacity: 1;
  z-index: 10;
  pointer-events: auto;
  transform: scale(1);
}

.Header_maxi__O4_hA .Header_tileImgWrapper__10BLE {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.Header_maxi__O4_hA .Header_tileImgWrapper__10BLE::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.7) 100%);
  z-index: 15;
}

.Header_maxi__O4_hA .Header_tileDesc__qxduL {
  position: absolute;
  top: 0;
  left: var(--global-padding-x);
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  width: 60vw;
  z-index: 30;
  padding: 0;
  color: var(--color-white);
}

.Header_maxi__O4_hA .Header_cta__YcFim {
  background-color: var(--color-primary-dark) !important;
  color: var(--color-white) !important;
  border: 2px solid var(--color-primary-dark) !important;
  padding: 1.5rem;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  text-transform: uppercase !important;
  font-size: 12px;
  font-weight: 700 !important;
  letter-spacing: 1.5px;
  cursor: pointer !important;
  width: max-content !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  transition: color 0.3s ease, border-color 0.3s ease !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.Header_maxi__O4_hA .Header_cta__YcFim:hover {
  color: var(--color-primary-dark) !important;
  background-color: transparent !important;
  border-color: var(--color-accent-cyan) !important;
}

.Header_maxi__O4_hA .Header_cta__YcFim svg {
  display: none !important;
}

.Header_maxi__O4_hA .Header_cta__YcFim::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-color: var(--color-accent-cyan) !important;
  z-index: -1 !important;
  transform: translateY(100%) !important;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: block !important;
}

.Header_maxi__O4_hA .Header_cta__YcFim:hover::before {
  transform: translateY(0) !important;
}

.Header_maxi__O4_hA .Header_cta__YcFim::after {
  content: "→" !important;
  position: static !important;
  background: none !important;
  z-index: auto !important;
  font-size: 1rem;
  display: inline-block !important;
  transition: transform 0.3s ease;
  transform: none;
  margin-left: 10px !important;
}

.Header_maxi__O4_hA .Header_cta__YcFim:hover::after {
  transform: translateX(4px) !important;
}

/* Next Story / Mini Slide (Reference Match) */
.Header_tileWrapper__2fr6M.Header_mini__1ph_C {
  display: none !important;
  width: 320px;
  height: 480px;
  bottom: 0;
  top: auto;
  left: auto;
  right: 5vw;
  z-index: 40;
  opacity: 1;
  cursor: pointer;
  flex-direction: column;
  overflow: hidden;
  background: var(--color-support-cream);
  border: none;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.15);
  transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
  transform: translateY(0) scale(1);
  border-radius: 0;
}

@keyframes Header_miniReveal__7wVpV {
  0% { transform: translateY(100%); opacity: 0; }
}

.Header_mini__1ph_C .Header_tileImgWrapper__10BLE {
  height: 45%; /* Taller image proportion */
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
}

.Header_mini__1ph_C .Header_tileImgWrapper__10BLE img {
  transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.Header_mini__1ph_C .Header_tileImgWrapper__10BLE::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.05); /* Very slight darkening */
  z-index: 5;
  pointer-events: none;
}

.Header_mini__1ph_C .Header_tileDesc__qxduL {
  background-color: transparent;
  padding: 2.2rem 2rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  flex-grow: 1;
  box-sizing: border-box;
  position: relative;
  z-index: 10;
}

.Header_mini__1ph_C .Header_tileDesc__qxduL::before {
  display: none;
}

.Header_mini__1ph_C .Header_title__S6rUv {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.01em;
  margin-bottom: 1rem;
  color: #000000;
  opacity: 1;
  transform: none;
}

.Header_mini__1ph_C .Header_title__S6rUv em {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: 500;
  color: #000000;
}

.Header_mini__1ph_C .Header_subtitle__fi5N5 {
  font-size: 1.15rem;
  line-height: 1.5;
  color: #2F3E3B; /* Deep slate teal for premium feel */
  margin-bottom: auto; /* Let it push the CTA to the bottom */
  opacity: 1;
  transform: none;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.Header_mini__1ph_C .Header_cta__YcFim {
  font-size: 0 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #000000 !important;
  width: max-content;
  background: none !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: 2px solid #000000 !important;
  border-radius: 0 !important;
  padding: 0 0 0.4rem 0 !important;
  transform: none !important;
  opacity: 1 !important;
  pointer-events: none;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center;
  margin-top: 2rem; /* Ensure gap from subtitle if short */
}

.Header_mini__1ph_C .Header_cta__YcFim::before {
  content: "NEXT STORY";
  font-size: 0.95rem;
  display: inline-block;
  position: static !important;
  background: none !important;
  transform: none !important;
  z-index: auto !important;
  color: #000000;
  margin-right: 0.5rem;
  font-weight: 500;
}

.Header_mini__1ph_C .Header_cta__YcFim::after {
  content: "\2192";
  font-size: 1.4rem;
  display: inline-block;
  transition: transform 0.3s ease;
  color: #000000;
  font-weight: 300;
  transform: translateY(2px);
}

.Header_mini__1ph_C .Header_cta__YcFim:hover::after {
  transform: translate(4px, 2px);
}

.Header_mini__1ph_C .Header_cta__YcFim svg {
  display: none !important;
}

.Header_mini__1ph_C:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.2);
}

.Header_mini__1ph_C:hover::after {
  width: 100%;
}

.Header_mini__1ph_C:hover .Header_tileImgWrapper__10BLE img {
  transform: scale(1.08);
}

/* Hidden Slide State */
.Header_tileWrapper__2fr6M.Header_hidden__AG2tw {
  opacity: 0;
  z-index: 5;
  pointer-events: none;
}

.Header_videoPlayer__9JKSO {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.Header_tileWrapper__2fr6M.active .Header_videoPlayer__9JKSO {
  animation: Header_kenBurns__anim 20s infinite ease-in-out;
}

@keyframes Header_kenBurns__anim {
  0% { transform: scale(1.02); }
  50% { transform: scale(1.07); }
  100% { transform: scale(1.02); }
}

.Header_title__S6rUv {
  font-size: clamp(2.8rem, 6.5vw, 6.0rem);
  line-height: 1.05;
  letter-spacing: -0.02em;
  margin-bottom: 2rem;
}

.Header_title__S6rUv p {
  margin: 0;
}

.Header_title__S6rUv em {
  color: var(--color-white); /* Elegant white serif contrast */
}

.Header_subtitle__fi5N5 {
  font-size: clamp(1rem, 1.8vw, 1.25rem);
  font-weight: 300;
  line-height: 1.6;
  margin-bottom: 3rem;
  max-width: 600px;
  color: rgba(255, 255, 255, 0.85) !important;
}

.Header_cta__YcFim {
  display: inline-block;
}

/* Slider Controls */
.Header_indicator__8G2zg {
  position: absolute;
  bottom: 3.5rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  z-index: 50;
}

.Header_indicatorField__8gskC {
  width: 10px;
  height: 10px;
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 0;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.Header_indicatorField__8gskC.active {
  width: 32px;
  background-color: rgba(255, 255, 255, 0.2);
}

.Header_active__z2ttm {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  border-radius: 0;
  background-color: var(--color-accent-lime);
  transition: width 0.1s linear;
}

.Header_indicatorField__8gskC.active .Header_active__z2ttm {
  width: 100%;
}

.Header_indicatorField__8gskC.active .Header_active__z2ttm.animating {
  width: 100%;
  transition: width 6s linear;
}

.Header_indicatorField__8gskC .Header_active__z2ttm.completed {
  width: 100%;
  transition: none;
}

.Header_explore__WHBSN {
  position: absolute;
  bottom: 3.5rem;
  left: 7.5vw;
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.7rem;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 0.1em;
  pointer-events: none;
  font-family: var(--font-sans);
}

.Header_explore__mouse {
  width: 20px;
  height: 30px;
  border: 1px solid #ffffff;
  border-radius: 20px; /* Capsule shape */
  position: relative;
  display: inline-block;
  box-sizing: border-box;
}

.Header_explore__dot {
  position: absolute;
  left: 50%;
  top: 6px;
  width: 1px;
  height: 6px;
  background-color: #ffffff; /* White scroll line */
  border-radius: 2px;
  transform: translateX(-50%);
  animation: Header_scrollDot__anim 2s infinite ease-in-out;
}

.Header_explore__text {
  display: inline-block;
}

@keyframes Header_scrollDot__anim {
  0% { transform: translate(-50%, 0); opacity: 0; }
  20% { opacity: 1; }
  80% { transform: translate(-50%, 12px); opacity: 0; }
  100% { transform: translate(-50%, 12px); opacity: 0; }
}

/* Slider sweep overlay */
.Header_overlay__2q7LH {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  background-color: var(--color-dark-charcoal); /* clean dark overlay */
  z-index: 45; /* above active slide and mini card, but below indicators */
  pointer-events: none;
}

.Header_overlay__2q7LH.animating {
  animation: Header_overlaySweep 1s cubic-bezier(0.76, 0, 0.24, 1) forwards;
}

@keyframes Header_overlaySweep {
  0% {
    left: 0;
    width: 0%;
  }
  45%, 55% {
    left: 0;
    width: 100%;
  }
  100% {
    left: 100%;
    width: 0%;
  }
}

/* Main Large Headline */
.Headline_headline__7jFqd {
  background-color: #F7F7F5;
  padding-top: clamp(10rem, 12vw, 12rem);
  padding-bottom: clamp(10rem, 12vw, 12rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.Headline_mainHeadline__cuuNF {
  font-size: clamp(2.2rem, 5vw, 4.2rem); /* 56px - 72px equivalent */
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.02em;
  max-width: 1400px;
  color: var(--color-text);
  margin: 0 auto;
}

/* Video showreel & featured post block */
.page_postVideo__XjkSD {
  background-color: var(--color-bg); /* White background */
  padding-top: clamp(10rem, 12vw, 12rem);
  padding-bottom: clamp(10rem, 12vw, 12rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 0; /* Fused together */
  row-gap: 0;
  margin-bottom: 0;
}

.FeaturedPost_main__jTdRd {
  grid-column: span 5;
  background-color: #F7F7F5;
  padding: 4.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 600px;
  border-top: 0.5px solid rgba(0, 0, 0, 0.08);
  border-left: 0.5px solid rgba(0, 0, 0, 0.08);
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.08);
  border-right: none;
}

@media (max-width: 1024px) {
  .FeaturedPost_main__jTdRd {
    grid-column: span 12;
    height: auto;
    padding: 3rem;
    border-right: 0.5px solid rgba(0, 0, 0, 0.08);
    border-bottom: none;
  }
}

.FeaturedPost_topBar__Wndk_ {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.CategoryLabel_label__oylXS {
  background-color: var(--color-primary-bright); /* Accent #00CCCC */
  color: var(--color-primary-dark);
  padding: 0.4rem 1.2rem;
  font-size: 0.85rem;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.FeaturedPost_date__L9Vr_ {
  font-size: 0.95rem;
  color: var(--color-gray-500);
}

.FeaturedPost_textWrapper__HxdWc {
  margin: 3rem 0;
}

.FeaturedPost_title__jFSIQ {
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  font-weight: 400;
  line-height: 1.15;
  margin-bottom: 1.5rem;
}

.FeaturedPost_desc__H868D {
  font-size: clamp(1.05rem, 1.2vw, 1.2rem);
  color: var(--color-gray-500);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.page_videoPlayer__xosLM {
  grid-column: span 7;
  position: relative;
  overflow: hidden;
  height: 600px;
  border-top: 0.5px solid rgba(0, 0, 0, 0.08);
  border-right: 0.5px solid rgba(0, 0, 0, 0.08);
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.08);
  border-left: none;
}

@media (max-width: 1024px) {
  .page_videoPlayer__xosLM {
    grid-column: span 12;
    height: 400px;
    border-left: 0.5px solid rgba(0, 0, 0, 0.08);
  }
}

.VideoPlayer_player__SCv03 {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.VideoPlayer_darken__OP7QJ {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.3);
}

.VideoPlayer_overlay__V4TfI {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 3rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--color-white);
  z-index: 10;
}

.VideoPlayer_topBar__H_ssS {
  font-size: 1.2rem;
  font-weight: 400;
}

.VideoPlayer_bottomBar__VgSGC {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* About Intro Section */
.AboutSection_aboutSection__L0b5_ {
  background-color: var(--color-bg); /* White background */
  padding-top: clamp(10rem, 12vw, 12rem);
  padding-bottom: clamp(10rem, 12vw, 12rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 2.5rem;
  row-gap: 3rem;
  margin-top: 0;
  margin-bottom: 0;
}

.AboutSection_leftCol__bNIqI {
  grid-column: span 3;
  font-size: 1.25rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-weight: 600;
  color: var(--color-primary);
}

.AboutSection_rightCol__2GHic {
  grid-column: span 9;
}

.AboutSection_aboutHeadline___BUbs {
  font-size: clamp(2.2rem, 5vw, 4.2rem); /* 56px - 72px equivalent */
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin-bottom: 4rem;
  color: var(--color-text);
}

.AboutSection_btnWrapper__sgRHm {
  margin-bottom: 5rem;
}

.AboutSection_bottomWrap__nhPtr {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-top: 1px solid var(--color-gray-200);
  padding-top: 4rem;
  gap: 4rem;
}

.AboutSection_aboutDesc__hSEZ_ {
  font-size: clamp(1.1rem, 1.5vw, 1.35rem);
  max-width: 700px;
  line-height: 1.6;
  color: var(--color-gray-500);
}

.AboutSection_logomark__wNqOK {
  display: none;
}

/* Fixed Parallax Image */
.FixedImage_main__lnyKd {
  height: 85vh;
  width: 100vw;
  overflow: hidden;
  position: relative;
  margin-bottom: 0;
}

.FixedImage_fixedImage__Kb_1O {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

/* Draggable Cards Slider System */
.splide.Slider_main__cCNcb {
  background-color: #F3EFE9 !important; /* Pale beige */
  position: relative;
  width: 100vw;
  overflow: hidden;
  padding-top: 0 !important;
  padding-bottom: clamp(10rem, 12vw, 12rem);
  cursor: grab;
  user-select: none;
  margin-top: 0;
  margin-bottom: 0;
}

.splide.Slider_main__cCNcb:active {
  cursor: grabbing;
}

.splide__track {
  width: 100%;
  overflow: visible;
}

.splide__list {
  display: flex;
  list-style: none;
  padding-left: var(--global-padding-x);
}

.splide__slide.SliderTile_main__e7YFh {
  flex-shrink: 0;
  width: 32vw;
  min-width: 380px;
  height: 680px;
  margin-right: 2.5rem;
  overflow: hidden;
  position: relative;
  padding: 4.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  background-color: var(--color-white) !important;
  color: var(--color-text);
}

.SliderTile_videoPlayer__sHwOx {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.SliderTile_videoPlayer__sHwOx video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.15;
}

.SliderTile_vidOverlay__IErkm {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0.92;
  transition: var(--transition-smooth);
}

.SliderTile_content__fYLCe {
  position: relative;
  z-index: 10;
}

.SliderTile_no__LyXFS {
  font-size: 1.25rem;
  font-weight: 300;
  margin-bottom: 2rem;
  color: var(--color-primary-bright); /* Accent #00CCCC */
  letter-spacing: 0.05em;
}

.SliderTile_title__RUCpX {
  font-size: clamp(2rem, 3.5vw, 2.8rem);
  font-weight: 400;
  line-height: 1.15;
}

.SliderTile_hoverBlock__7jPqj {
  position: relative;
  z-index: 10;
  margin-top: auto;
  opacity: 0.9;
  font-size: 1.15rem;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.SliderTile_btn__fieYp {
  align-self: flex-start;
  width: 44px;
  height: 44px;
  border-radius: 50% !important;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-primary-500);
  color: var(--color-white);
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  border: 2px solid transparent !important;
  transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease !important;
}

/* Custom interactive Floating drag mouse label */
.Slider_dragBtn__vF0Y_ {
  position: fixed;
  width: 80px;
  height: 80px;
  background-color: var(--color-primary-bright); /* Accent #00CCCC */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-primary-dark); /* Dark text contrast */
  font-size: 0.9rem;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  pointer-events: none;
  z-index: 999;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.splide.Slider_main__cCNcb:hover .Slider_dragBtn__vF0Y_ {
  transform: translate(-50%, -50%) scale(1);
}

/* Second Headline */
.SecondHeadline_secondHeadline__7g4uc {
  background-color: #F3EFE9 !important; /* Pale beige */
  padding-top: clamp(10rem, 12vw, 12rem);
  padding-bottom: 5rem !important;
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.SecondHeadline_headline2__ycs1D {
  font-size: clamp(2.2rem, 5vw, 4.2rem); /* 56px - 72px equivalent */
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.02em;
  max-width: 1400px;
  color: var(--color-text);
  margin: 0 auto;
}

/* Vertical values tiles grid */
.VerticalValues_main__5zhyK {
  background-color: var(--color-bg); /* White background */
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 4rem;
  padding-top: clamp(10rem, 12vw, 12rem);
  padding-bottom: clamp(10rem, 12vw, 12rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  margin: 0;
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  color: var(--color-text);
  box-sizing: border-box;
}

.VerticalValues_leftCol__fARUz {
  grid-column: span 5;
}

.VerticalValues_leftColWrapper__5J7UZ {
  position: sticky;
  top: 140px;
  display: flex;
  flex-direction: column;
  gap: 4rem;
  align-items: flex-start;
}

.VerticalValues_title__7NJZO {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.2;
  color: var(--color-text);
}

.VerticalValues_rightCol__gWJkC {
  grid-column: span 7;
}

.ValueTile_linkWrapper__2xQes {
  display: block;
  border-top: 1px solid var(--color-gray-200);
  padding: 4.5rem 0;
  transition: var(--transition-smooth);
}

.ValueTile_linkWrapper__2xQes:last-child {
  border-bottom: 1px solid var(--color-gray-200);
}

.ValueTile_main__3LWJ_ {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 3rem;
  color: var(--color-text);
}

.ValueTile_title__TymgM {
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 1.5rem;
  color: var(--color-primary);
}

.ValueTile_desc__8KU83 {
  font-size: clamp(1.05rem, 1.3vw, 1.2rem);
  color: var(--color-gray-500);
  line-height: 1.6;
  max-width: 600px;
}

.ValueTile_icon__Remd5 {
  width: 52px;
  height: 52px;
  border: 1px solid var(--color-gray-200);
  border-radius: 50% !important;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition-smooth);
}

.ValueTile_linkWrapper__2xQes:hover .ValueTile_icon__Remd5 {
  background-color: var(--color-primary-bright); /* Accent #00CCCC */
  border-color: var(--color-primary-bright);
  transform: rotate(45deg);
}

.ValueTile_linkWrapper__2xQes:hover .ValueTile_icon__Remd5 svg g stroke {
  stroke: var(--color-primary-dark);
}

/* Contact modules */
.ContactModule_main__N5SFB {
  display: flex;
  flex-direction: row;
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  margin-bottom: 0;
}

.ContactModule_main__N5SFB a {
  width: 50%;
  display: block;
}

@media (max-width: 768px) {
  .ContactModule_main__N5SFB {
    flex-direction: column;
  }
  .ContactModule_main__N5SFB a {
    width: 100%;
  }
}

.ContactModuleTile_main__soX9k {
  border: none !important;
  background-image: none !important;
  padding: 6rem 5vw;
  height: 520px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  z-index: 1;
  color: var(--color-white) !important;
  transition: background-color 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.ContactModuleTile_main__soX9k::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: #00CCCC !important;
  z-index: -1;
  transform: translateY(100%);
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
  display: block !important;
}

.ContactModuleTile_content___jR18 {
  max-width: 600px;
}

.ContactModuleTile_title__mzSWU {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.15;
  margin-bottom: 1.5rem;
  color: var(--color-white) !important;
}

.ContactModuleTile_desc__SgknB {
  font-size: clamp(1.05rem, 1.3vw, 1.25rem);
  color: rgba(255, 255, 255, 0.8) !important;
  line-height: 1.6;
}

.ContactModuleTile_desc__SgknB::after {
  content: '↗';
  display: block;
  font-size: 1.5rem;
  margin-top: 1.5rem;
  line-height: 1;
  transition: transform 0.4s ease;
}

.ContactModuleTile_main__soX9k:hover .ContactModuleTile_desc__SgknB::after {
  transform: translate(4px, -4px);
}

.ContactModuleTile_cta__u0aIL {
  text-transform: uppercase;
  font-weight: 300;
  font-size: 0.85rem;
  letter-spacing: 0.15em;
  align-self: flex-start;
  border-bottom: 1.5px solid currentColor;
  padding-bottom: 6px;
  color: var(--color-bright-teal-500) !important;
}

/* Background colors for split blocks */
.ContactModule_main__N5SFB a:nth-child(1) .ContactModuleTile_main__soX9k {
  background-color: #028F83 !important; /* Main Teal */
  padding-left: var(--global-padding-x) !important;
  padding-right: 5vw !important;
}

.ContactModule_main__N5SFB a:nth-child(1) .ContactModuleTile_main__soX9k:hover::before {
  transform: translateY(0);
  background-color: #CFDB40 !important; /* Nola Lime */
}

.ContactModule_main__N5SFB a:nth-child(2) .ContactModuleTile_main__soX9k {
  background-color: #00CCCC !important; /* Bright Cyan */
  padding-left: 5vw !important;
  padding-right: var(--global-padding-x) !important;
}

.ContactModule_main__N5SFB a:nth-child(2) .ContactModuleTile_main__soX9k:hover::before {
  transform: translateY(0);
  background-color: #005A59 !important; /* Footer Dark Teal flow-in */
}

@media (max-width: 992px) {
  .ContactModule_main__N5SFB a:nth-child(1) .ContactModuleTile_main__soX9k {
    padding-left: 7.5vw !important;
    padding-right: 5vw !important;
  }
  .ContactModule_main__N5SFB a:nth-child(2) .ContactModuleTile_main__soX9k {
    padding-left: 5vw !important;
    padding-right: 7.5vw !important;
  }
}

@media (max-width: 768px) {
  .ContactModule_main__N5SFB a:nth-child(1) .ContactModuleTile_main__soX9k,
  .ContactModule_main__N5SFB a:nth-child(2) .ContactModuleTile_main__soX9k {
    padding-left: 7.5vw !important;
    padding-right: 7.5vw !important;
  }
  .ContactModule_main__N5SFB a:nth-child(2) .ContactModuleTile_main__soX9k {
    border-left: none !important;
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
  }
}


/* ==================== ABOUT PAGE UNIQUE STYLES ==================== */

.Header_main__Bsevg {
  padding-top: 180px;
  padding-bottom: 6rem;
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
}

.Header_logoWrapper__DCdvx {
  margin-bottom: 3rem;
}

.Header_logo__6TXzq {
  width: auto;
  height: auto;
}

.Header_headline__tINjL h1 {
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 400;
  line-height: 1.25;
  max-width: 1400px;
}

.Parallax_main__QVnpC {
  height: 80vh;
  width: 100vw;
  overflow: hidden;
  position: relative;
  margin-bottom: 8rem;
}

.Parallax_imgWrapper___9U_w {
  height: 120%;
  width: 100%;
  position: absolute;
  top: -10%;
  left: 0;
  background-size: cover;
  background-position: center;
}

.SecondHeadline_main__miarM {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.SecondHeadline_title__NFdil {
  font-size: clamp(2.2rem, 5vw, 4rem);
  font-weight: 400;
  line-height: 1.15;
  max-width: 1100px;
}

.SliderTile_heightOverride__G9m_L {
  height: 500px !important;
}

/* Team Module grid */
.TeamModule_main__IV6FC {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.TeamModule_topBar__ZEcgg {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-bottom: 1px solid var(--color-gray-200);
  padding-bottom: 2rem;
  margin-bottom: 4rem;
}

.TeamModule_title__xY7_Q {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 400;
}

.TeamModule_membersWrapper__2NTOZ {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3rem 2rem;
}

.TeamModuleTile_main__TL3ew {
  display: block;
}

.TeamModuleTile_imgMask__ucRJX {
  aspect-ratio: 3/4;
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 1.5rem;
}

.TeamModuleTile_imgWrapper__Qgcnc {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.TeamModuleTile_main__TL3ew:hover .TeamModuleTile_imgWrapper__Qgcnc {
  transform: scale(1.08);
}

.TeamModuleTile_name__Fw1X9 {
  font-size: 1.2rem;
  font-weight: 300;
  margin-bottom: 0.4rem;
}

.TeamModuleTile_position__5OVuo {
  font-size: 0.95rem;
  color: var(--color-gray-500);
}

/* Advantages Section */
.Advantages_main__uXsgi {
  background-color: var(--color-dark-green-deep);
  color: var(--color-white);
  padding: 10rem 0;
}

.Advantages_headline__Eq3XH h2 {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 400;
  margin-bottom: 6rem;
}

.Advantages_tilesWrapper__vThzN {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid rgba(255,255,255,0.1);
}

.AdvTile_main__Vejnl {
  border-right: 1px solid rgba(255,255,255,0.1);
  padding: 6rem 5vw;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.AdvTile_main__Vejnl:last-child {
  border-right: none;
}

.AdvTile_title__A_e3_ {
  font-size: 2rem;
  font-weight: 400;
  margin-bottom: 1.5rem;
}

.AdvTile_subtitle__LQabH {
  font-size: 1.15rem;
  color: rgba(255,255,255,0.7);
  line-height: 1.6;
}

/* Company Values sliding tiles section */
.CompanyValues_main__syAif {
  padding: 10rem 5vw;
  overflow: hidden;
  background-color: var(--color-cream);
}

.CompanyValues_topBar__Gn_m7 {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 6rem;
}

.CompanyValues_title__fEQNw h3 {
  font-size: clamp(2rem, 4vw, 3rem);
}

.CompanyValues_subtitle__0LY0u {
  font-size: 1.1rem;
  color: var(--color-gray-500);
}

.CompanyValues_tilesWrapper__CD_rB {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.CompanyValuesTile_main__QNct1 {
  background-color: var(--color-white);
  border-radius: 20px;
  padding: 3rem;
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 4rem;
  align-items: center;
  min-height: 280px;
}

.CompanyValuesTile_title___RPPL h4 {
  font-size: 2rem;
  font-weight: 400;
  margin-bottom: 1.5rem;
}

.CompanyValuesTile_subtitle__yW7G4 {
  font-size: 1.15rem;
  color: var(--color-gray-500);
  line-height: 1.6;
}

.CompanyValuesTile_imgWrapper__3qMs6 {
  height: 200px;
  background-size: cover;
  background-position: center;
  border-radius: 12px;
}

/* Sustainability page section */
.SustanabilityModule_main__iHjjg {
  padding-top: 10rem;
  padding-bottom: 10rem;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 3rem 2rem;
}

.SustanabilityModule_headline__Wo9vk {
  grid-column: span 12;
}

.SustanabilityModule_headline__Wo9vk h2 {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 400;
}

.SustanabilityModule_desc1__wNQjv {
  grid-column: span 4;
  font-size: 1.15rem;
  line-height: 1.6;
  color: var(--color-gray-800);
}

.SustanabilityModule_desc2__qDX_H {
  grid-column: span 4;
  font-size: 1.15rem;
  line-height: 1.6;
  color: var(--color-gray-800);
}

.SustanabilityModule_desc3__mSSAO {
  grid-column: span 4;
  font-size: 1.15rem;
  line-height: 1.6;
  color: var(--color-gray-800);
}

.SustanabilityModule_imgWrapper__USOYM {
  grid-column: span 12;
  height: 60vh;
  border-radius: 24px;
  margin-top: 2rem;
}

.SustanabilityModule_readMoreModule__tB3TT {
  grid-column: span 12;
  background-color: var(--color-green-500);
  color: var(--color-white);
  padding: 4rem 5vw;
  border-radius: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 4rem;
  position: relative;
  overflow: hidden;
}

.SustanabilityModule_moduleTitle__cbUaF {
  font-size: 2rem;
  font-weight: 400;
  margin-bottom: 1rem;
}

.SustanabilityModule_moduleDesc__CihMj {
  font-size: 1.1rem;
  opacity: 0.8;
}


/* ==================== PLATFORM PAGE STYLES ==================== */

.Header_main__0QyU8 {
  height: 100vh;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding-bottom: 10rem;
}

.Header_bgVid__5Rdbp {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.Header_bgVid__5Rdbp video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.Header_bgVidOverlay__dS2iL {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.45);
  z-index: 2;
}

.Header_contentWrapper__tx8Nk {
  position: relative;
  z-index: 10;
  color: var(--color-white);
}

.Header_contentWrapper__tx8Nk h1 {
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 400;
  line-height: 1.25;
  max-width: 1200px;
}

.Features_main__6URlL {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  margin-top: -60px;
  position: relative;
  z-index: 50;
  margin-bottom: 10rem;
}

.FeatureTile_tileWrapper__evt6I {
  background-color: var(--color-white);
  border-radius: 20px;
  padding: 3rem;
  box-shadow: 0 10px 40px rgba(0,0,0,0.04);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 380px;
  border: 1px solid rgba(0,0,0,0.03);
}

.FeatureTile_title___gGfU {
  font-size: 1.15rem;
  line-height: 1.6;
  color: var(--color-gray-800);
}

.FeatureTile_botWrapper__JI7SU {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid var(--color-gray-200);
  padding-top: 2rem;
  margin-top: 2rem;
}

.FeatureTile_desc__VE3xH {
  font-weight: 300;
  font-size: 1.1rem;
  text-transform: uppercase;
}

.FeatureTile_icon__h6mfy {
  width: 44px;
  height: 44px;
}

/* Earth Video Scroll Element */
.Earth_main__gn54H {
  height: 100vh;
  position: relative;
  overflow: hidden;
  background-color: var(--color-dark-green-deep);
  display: flex;
  align-items: center;
  justify-content: center;
}

.Earth_videoWrapper__xk8VJ {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

.Earth_videoBox__AnBNK {
  position: relative;
  width: 100%;
  height: 100%;
}

.Earth_video__C52QC {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.Earth_mask__xoVVU {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle, transparent 20%, var(--color-dark-green-deep) 70%);
}

.Earth_overlay__DZuL1 {
  position: relative;
  z-index: 10;
  color: var(--color-white);
  text-align: center;
  max-width: 1200px;
  padding: 0 5vw;
}

.Earth_title__FWi82 h2 {
  font-size: clamp(2rem, 5vw, 4rem);
  font-weight: 400;
  line-height: 1.2;
  transition: opacity 0.3s ease;
}

/* Platform Detailed Text & Video Modules */
.TextModule_main__V_zvx {
  padding-top: 10rem;
  padding-bottom: 10rem;
  border-bottom: 1px solid var(--color-gray-200);
}

.TextModule_moduleWrapper__9pbDw {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 4rem;
}

.TextModule_title__JkzZO {
  font-size: clamp(1.8rem, 3.5vw, 2.5rem);
  font-weight: 400;
  line-height: 1.25;
  position: sticky;
  top: 120px;
}

.TextModule_par__M12y3 {
  font-size: 1.2rem;
  line-height: 1.6;
  color: var(--color-gray-800);
  margin-bottom: 3rem;
}

.TextModule_videoWrapper__eG9lW, .TextModule_imgWrapper__R0dsJ {
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 3rem;
}

.TextModule_imgWrapper__R0dsJ {
  height: 400px;
}

.VideoModule_main__WFEPl {
  padding: 10rem 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: var(--color-cream);
}

.VideoModule_videoWrapper__w8KvW {
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(0,0,0,0.1);
  margin-bottom: 4rem;
}

/* Pre-footer Section */
.PreFooter_main__PIKhW {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  margin-top: 10rem;
}

.Financial_main__yhRbF {
  background-color: var(--color-cream);
  border-radius: 24px;
  padding: 5vw;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 500px;
}

.Financial_title__x0o6h {
  font-size: 2.5rem;
  font-weight: 400;
  margin-bottom: 2rem;
}

.Financial_par__y_07G {
  font-size: 1.2rem;
  line-height: 1.6;
}

.Financial_bottom__N9ULQ {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 4rem;
}

.Financial_icon__Ibqjd {
  width: 48px;
  height: 48px;
}

.Map_main__oIH_ {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 500px;
}

.Map_topPar__IxoIB, .Map_botPar__my3_h {
  font-size: 1.15rem;
  line-height: 1.6;
  color: var(--color-gray-800);
}

.Map_map__29ZB7 {
  height: 300px;
  margin: 3rem 0;
}


/* ==================== SUSTAINABILITY PAGE STYLES ==================== */

.Header_main__DbtuP {
  padding-top: 200px;
  padding-bottom: 6rem;
  background-color: var(--color-lavender-100); /* Premium Lavender light brand field */
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  margin-bottom: 4rem;
  border-bottom: 1px solid var(--color-lavender-200);
}

.Header_headline__R3DO2 {
  font-size: clamp(3rem, 7vw, 6rem);
  font-weight: 400;
  margin-bottom: 3rem;
  color: var(--color-primary-900); /* Editorial typography weight */
}

.Header_spacerLine__Z95e_ {
  height: 1px;
  background-color: var(--color-primary-800);
  width: 100%;
}

.Welcome_main__Ma45h {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  padding: 6rem 5vw;
  margin-bottom: 8rem;
  background-color: var(--color-lavender-50); /* Soft lavender tint sheet */
  border-radius: 32px;
  margin-left: 5vw;
  margin-right: 5vw;
  color: #000000;
}

.Welcome_leftCol__BVOMP {
  border-radius: 24px;
  height: 70vh;
}

.Welcome_rightCol__Wm5Gy {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.Welcome_par__c43LJ {
  font-size: 1.25rem;
  line-height: 1.6;
  color: var(--color-gray-800);
}

.Welcome_secondImg__IKrR2 {
  height: 250px;
  border-radius: 20px;
  align-self: flex-end;
}

/* Moving Marquee banner styling */
.Marquee_main__fkR1W {
  background-color: var(--color-dark-green-deep);
  color: var(--color-white);
  padding: 3rem 0;
  overflow: hidden;
  white-space: nowrap;
  margin-bottom: 8rem;
}

.Marquee_text__2_M07 {
  display: inline-block;
  font-size: clamp(2rem, 5vw, 4rem);
  text-transform: uppercase;
  font-weight: 300;
  padding-left: 100%;
  animation: marquee 20s linear infinite;
}

@keyframes marquee {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(-100%, 0, 0); }
}

/* Quote and Story layout */
.Story_main__t_OC0 {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 6vw;
  padding: 6rem 5vw;
  margin-bottom: 10rem;
  background-color: var(--color-lavender-50);
  border-radius: 32px;
  margin-left: 5vw;
  margin-right: 5vw;
  color: #000000;
}

.Story_picture__NNyp1 {
  border-radius: 20px;
  height: 450px;
  margin-bottom: 1.5rem;
}

.Story_name__ekhoW {
  font-size: 1.4rem;
  font-weight: 300;
  margin-bottom: 0.4rem;
  color: var(--color-primary-900);
}

.Story_position__MfHRJ {
  font-size: 1rem;
  color: var(--color-primary-800);
}

.Story_par__lbaG1 {
  font-size: 1.25rem;
  line-height: 1.6;
  color: rgba(0, 0, 0, 0.85);
  white-space: pre-line;
}

.VideoPlayer_main__Ka3wr {
  padding: 0 5vw;
  margin-bottom: 8rem;
}

.VideoPlayer_wrapper__6WmdF {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  height: 70vh;
}

.VideoPlayer_player__yEVZX {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.VideoPlayer_darken__pdj_m {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.4);
}

.VideoPlayer_overlay__u9CEN {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 5vw;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--color-white);
  z-index: 10;
}

.VideoPlayer_title__TfmpX {
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 400;
  margin-bottom: 1.5rem;
  max-width: 800px;
}

.VideoPlayer_desc__xM_iz {
  font-size: 1.2rem;
  line-height: 1.6;
  max-width: 700px;
  opacity: 0.85;
}


/* ==================== NEWSROOM PAGE STYLES ==================== */

.Header_main__L0w8b {
  padding-top: 180px;
  padding-bottom: 4rem;
}

.Header_main__L0w8b h1 {
  font-size: clamp(3rem, 6vw, 5rem);
  font-weight: 400;
  margin-bottom: 2rem;
}

.Header_desc__WPmSw {
  font-size: 1.25rem;
  color: var(--color-gray-500);
  max-width: 800px;
  line-height: 1.5;
}

.ContentGrid_main__2wEkp {
  margin-bottom: 8rem;
}

.FeaturedModule_gridWrapper__oPD_B {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 2rem;
  margin-bottom: 2rem;
}

.FeaturedModule_primary__7ntsk {
  background-color: var(--color-dark-green-deep);
  border-radius: 24px;
  overflow: hidden;
  height: 500px;
  position: relative;
  z-index: 1;
}

.FeaturedModule_primary__7ntsk a {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  padding: 4rem;
  position: relative;
  z-index: 5;
}

.FeaturedModule_cover__u5VRe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0.7;
}

.FeaturedModule_title__zBSga {
  font-size: clamp(1.8rem, 3.5vw, 2.5rem);
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 1.5rem;
}

.FeaturedModule_catLabel__n2Wk7 {
  align-self: flex-start;
  background-color: var(--color-white);
  color: var(--color-text);
  padding: 0.4rem 1.2rem;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 400;
}

.FeaturedModule_secondary__ExjZT {
  background-color: var(--color-cream);
  border-radius: 24px;
  padding: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 500px;
}

.FeaturedModule_secondary__ExjZT .FeaturedModule_catLabel__n2Wk7 {
  background-color: var(--color-text);
  color: var(--color-white);
}

.FullWArt_moduleWrapper__cI6d3 {
  background-color: var(--color-gray-100);
  border-radius: 24px;
  padding: 4rem;
  margin-bottom: 2rem;
  position: relative;
  overflow: hidden;
}

.FullWArt_moduleWrapper__cI6d3 a {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 4rem;
}

.FullWArt_moduleTitle__k1o_P {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.3;
  max-width: 800px;
}

.FullWArt_catLabel__vJc0c {
  background-color: var(--color-text);
  color: var(--color-white);
  padding: 0.4rem 1.2rem;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 400;
}

.ContactModule_moduleWrapper__0dIce {
  background-color: var(--color-cream);
  border-radius: 24px;
  padding: 4rem 5vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ContactModule_title__5wBEF {
  font-size: clamp(1.8rem, 3vw, 2.5rem);
  font-weight: 400;
  margin-bottom: 1rem;
}

.ContactModule_desc__gDkMh {
  font-size: 1.15rem;
  color: var(--color-gray-500);
}


/* ==================== CONTACT PAGE UNIQUE STYLES ==================== */

.Header_main__OxERA {
  padding-top: 180px;
  padding-bottom: 6rem;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 3rem 2rem;
}

.Header_headlineWrapper__yYcJN {
  grid-column: span 12;
}

.Header_headline__kItuz {
  font-size: clamp(3rem, 7vw, 5.5rem);
  font-weight: 400;
}

.Header_firstAddress__koeR3, .Header_secondAddress__vAxCS {
  grid-column: span 4;
}

.Header_officeLabel__PsU1o {
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 300;
  color: var(--color-green-500);
  margin-bottom: 1rem;
}

.Header_officeAddress__RUnke {
  font-size: 1.25rem;
  line-height: 1.6;
  color: var(--color-gray-800);
  white-space: pre-line;
}

.Header_email__mGHc9 {
  grid-column: span 4;
  align-self: flex-end;
}

.Header_email__mGHc9 a {
  font-size: 1.8rem;
  font-weight: 400;
  color: var(--color-text);
  border-bottom: 2px solid var(--color-text);
  padding-bottom: 4px;
  display: inline-block;
  transition: var(--transition-fast);
}

.Header_email__mGHc9 a:hover {
  color: var(--color-green-500);
  border-bottom-color: var(--color-green-500);
  padding-left: 5px;
}


/* ==================== CONTACT FORM UNIQUE STYLES ==================== */

.ContactForm_main__a23f6 {
  background-color: var(--color-gray-100);
  padding-top: 8rem;
  padding-bottom: 10rem;
  border-radius: 40px;
  margin-left: var(--global-padding-x);
  margin-right: var(--global-padding-x);
  margin-bottom: 8rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.ContactForm_label__fV3b6 {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 400;
  color: var(--color-dark-green);
  margin-bottom: 4rem;
  position: relative;
}

.ContactForm_label__fV3b6::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 60px;
  height: 3px;
  background-color: var(--color-green-500);
}

.ContactForm_formWrapper__OT7Bj {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem 2rem;
  width: 100%;
  max-width: 900px;
}

.ContactForm_inputWrapper__CqVGx {
  position: relative;
  width: 100%;
}

.ContactForm_inputWrapper__CqVGx:nth-child(1),
.ContactForm_inputWrapper__CqVGx:nth-child(6) {
  grid-column: span 2;
}

.ContactForm_field__QLDr9 {
  width: 100%;
  padding: 1rem 0.5rem;
  background: transparent;
  border: none;
  border-bottom: 1.5px solid rgba(0, 0, 0, 0.1);
  font-size: 1.15rem;
  font-family: var(--font-sans);
  color: var(--color-text);
  transition: border-color var(--transition-fast), background-color var(--transition-fast);
  outline: none;
}

.ContactForm_field__QLDr9:focus {
  border-bottom-color: var(--color-green-500);
  background-color: rgba(6, 159, 125, 0.02);
}

select.ContactForm_field__QLDr9 {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23111111' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  padding-right: 40px;
  cursor: pointer;
}

textarea.ContactForm_field__QLDr9 {
  resize: vertical;
  min-height: 120px;
}

.ContactForm_formBottom__i21V3 {
  grid-column: span 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 3rem;
  gap: 3rem;
}

.ContactForm_consent__lTrUS {
  font-size: 0.95rem;
  color: var(--color-gray-500);
  line-height: 1.5;
  max-width: 600px;
}

.ContactForm_consent__lTrUS a {
  text-decoration: underline;
  color: var(--color-text);
  font-weight: 400;
}

.ContactForm_consent__lTrUS a:hover {
  color: var(--color-green-500);
}

.ContactForm_submitBtn__B7u_w {
  padding: 1.5rem;
  font-size: 0.85rem;
  font-weight: 300;
    text-transform: uppercase;
  letter-spacing: 0.05em;
  border: 1px solid var(--color-primary-dark) !important;
  background-color: var(--color-primary-dark) !important;
  color: var(--color-white) !important;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  outline: none;
  box-shadow: none;
}

.ContactForm_submitBtn__B7u_w::after {
  content: " >";
  font-family: var(--font-sans);
  font-weight: 300;
  margin-left: 0.6rem;
  display: inline-block;
  transition: transform 0.3s ease;
}

.ContactForm_submitBtn__B7u_w:hover::after {
  transform: translateX(4px);
}

.ContactForm_submitBtn__B7u_w:hover {
  background-color: var(--color-accent-cyan) !important;
  border-color: var(--color-accent-cyan) !important;
  color: var(--color-primary-dark) !important;
}

/* --- Navigation Verticals Dropdown menu --- */
.Menu_dropdown__container {
  position: relative;
  display: inline-block;
}

.Menu_dropdown__trigger {
  display: inline-flex !important;
  align-items: center;
}

.Menu_dropdown__container:hover .Menu_dropdown__trigger svg {
  transform: rotate(180deg);
}

.Menu_dropdown__menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  width: 320px;
  background-color: var(--color-white);
  border: 1px solid var(--color-gray-200);
  border-radius: 12px;
  padding: 1rem 0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 1000;
}

.Menu_dropdown__container:hover .Menu_dropdown__menu {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

/* For pages starting with dark overlay header */
.Menu_navbar__woOc_.Menu_themeDark__w8fG2 .Menu_dropdown__menu {
  background-color: var(--color-primary-dark);
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.Menu_dropdown__item {
  display: block;
  padding: 0.75rem 1.5rem;
  font-size: 0.9rem;
  font-weight: 400;
  color: var(--color-text);
  transition: var(--transition-fast);
  text-align: left;
}

.Menu_navbar__woOc_.Menu_themeDark__w8fG2 .Menu_dropdown__item {
  color: var(--color-white);
}

.Menu_dropdown__item:hover {
  background-color: var(--color-gray-100);
  color: var(--color-primary-bright) !important;
}

.Menu_navbar__woOc_.Menu_themeDark__w8fG2 .Menu_dropdown__item:hover {
  background-color: rgba(255, 255, 255, 0.05);
  color: var(--color-accent-lime) !important;
}

@media (max-width: 992px) {
  .Header_tileWrapper__2fr6M.Header_mini__1ph_C {
    display: none !important;
  }
  .Header_maxi__O4_hA .Header_tileDesc__qxduL {
    width: 85vw !important;
    left: 7.5vw !important;
  }
  .Header_explore__WHBSN {
    display: none !important;
  }

  .Menu_hamburger__toggle {
    display: flex;
  }
  .Menu_desktopLinks__nav {
    display: none;
  }
  .Menu_desktopCtaContainer__nav {
    display: none;
  }

  .AdvTile_main__Vejnl:last-child {
    border-bottom: none;
  }
  .CompanyValuesTile_main__QNct1 {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .CompanyValuesTile_imgWrapper__3qMs6 {
    width: 100% !important;
  }
  .Features_main__6URlL {
    grid-template-columns: 1fr;
  }
  .TextModule_moduleWrapper__9pbDw {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .TextModule_title__JkzZO {
    position: relative;
    top: 0;
  }
  .PreFooter_main__PIKhW {
    grid-template-columns: 1fr;
  }
  .Welcome_main__Ma45h {
    grid-template-columns: 1fr;
  }
  .Story_main__t_OC0 {
    grid-template-columns: 1fr;
  }
  .FeaturedModule_gridWrapper__oPD_B {
    grid-template-columns: 1fr;
  }
  .FeaturedModule_primary__7ntsk, .FeaturedModule_secondary__ExjZT {
    height: 400px;
  }
  .Header_main__OxERA {
    grid-template-columns: 1fr;
  }
  .Header_firstAddress__koeR3, .Header_secondAddress__vAxCS, .Header_email__mGHc9 {
    grid-column: span 1;
  }
  .ContactForm_formWrapper__OT7Bj {
    grid-template-columns: 1fr;
  }
  .ContactForm_inputWrapper__CqVGx:nth-child(1), .ContactForm_inputWrapper__CqVGx:nth-child(5), .ContactForm_inputWrapper__CqVGx:nth-child(6), .ContactForm_formBottom__i21V3 {
    grid-column: span 1;
  }
  .ContactForm_formBottom__i21V3 {
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;
  }
  .ContactForm_main__a23f6 {
    margin-left: 7.5vw;
    margin-right: 7.5vw;
  }
  .Footer_main__T4eSu {
    padding-left: 7.5vw;
    padding-right: 7.5vw;
  }
}

@media (max-width: 576px) {
  .Footer_gridWrapper__ECodo {
    grid-template-columns: 1fr;
  }
  .Footer_addressBlock__lw8jk {
    grid-column: span 1;
  }
  .Footer_policies__CWbZC {
    flex-direction: column;
    gap: 1rem;
  }
  .Footer_by247__J2liS {
    text-align: left;
  }
  .TeamModule_membersWrapper__2NTOZ {
    grid-template-columns: 1fr;
  }
  .FeaturedPost_main__jTdRd {
    padding: 2rem;
  }
  .VideoPlayer_overlay__V4TfI {
    padding: 2rem;
  }
}

/* Reduced Motion Override */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-delay: 0s !important;
    animation-duration: 0s !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0s !important;
    scroll-behavior: auto !important;
    transform: none !important;
  }
}



/* ==================== VERTICAL PAGES COMMON STYLES ==================== */

.VertPage_hero {
  position: relative;
  height: 70vh;
  width: 100vw;
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: var(--color-primary-dark);
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.VertPage_heroBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
  animation: VertPage_zoomHero__anim 20s infinite ease-in-out;
}

@keyframes VertPage_zoomHero__anim {
  0% { transform: scale(1.03); }
  50% { transform: scale(1.08); }
  100% { transform: scale(1.03); }
}

.VertPage_heroOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.2) 30%, rgba(0, 0, 0, 0) 45%);
  z-index: 2;
}

.VertPage_heroContent {
  position: relative;
  z-index: 3;
  width: 100%;
  color: var(--color-white);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
}

.VertPage_heroLabel {
  font-size: 0.85rem;
  font-weight: 400;
  text-transform: uppercase;
  color: var(--color-bright-teal-500);
  letter-spacing: 0.15em;
  margin-bottom: 1.5rem;
}

.VertPage_heroTitle {
  font-size: clamp(2.5rem, 5vw, 4.2rem);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin-bottom: 1.5rem;
}

.VertPage_heroCopy {
  font-size: clamp(1.1rem, 1.5vw, 1.35rem);
  line-height: 1.6;
  max-width: 750px;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 2.5rem;
}

.VertPage_heroBtns {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}

/* Strategic Thesis */
.VertPage_thesis {
  background-color: var(--color-white);
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 4rem;
}

.VertPage_thesisLeft {
  grid-column: span 4;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
  font-weight: 400;
  line-height: 1.25;
  color: var(--color-primary-dark);
}

.VertPage_thesisRight {
  grid-column: span 8;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.VertPage_thesisRight p {
  font-size: 1.2rem;
  line-height: 1.65;
  color: var(--color-gray-500);
}

/* Why This Vertical Matters */
.VertPage_matters {
  background-color: var(--color-support-cream); /* F7F7F5 */
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 4rem;
  align-items: center;
}

.VertPage_mattersLeft {
  grid-column: span 6;
}

.VertPage_mattersRight {
  grid-column: span 6;
  height: 500px;
  overflow: hidden;
  box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

.VertPage_mattersRight img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.VertPage_mattersHeading {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--color-primary-dark);
  margin-bottom: 2rem;
}

.VertPage_mattersCopy {
  font-size: 1.15rem;
  line-height: 1.65;
  color: var(--color-gray-500);
}

/* Platform Role */
.VertPage_role {
  background-color: var(--color-white);
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 4rem;
}

.VertPage_roleLeft {
  grid-column: span 4;
}

.VertPage_roleHeading {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--color-primary-dark);
  margin-bottom: 2rem;
}

.VertPage_roleCopy {
  font-size: 1.15rem;
  line-height: 1.65;
  color: var(--color-gray-500);
}

.VertPage_roleRight {
  grid-column: span 8;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
}

.VertPage_roleCard {
  background-color: var(--color-gray-100);
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border-top: 1px solid var(--color-gray-200);
}

.VertPage_roleCardTitle {
  font-size: 1.3rem;
  font-weight: 300;
  color: var(--color-primary-dark);
}

.VertPage_roleCardDesc {
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--color-gray-500);
}

/* Core Industries Served */
.VertPage_industries {
  background-color: var(--color-support-cream); /* F7F7F5 */
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.VertPage_industriesHeading {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--color-primary-dark);
  margin-bottom: 4rem;
}

.VertPage_industriesGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}

.VertPage_industryCard {
  background-color: var(--color-white);
  padding: 3rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  border-top: 1px solid var(--color-gray-200);
  height: 100%;
}

.VertPage_industryCardTitle {
  font-size: 1.4rem;
  font-weight: 300;
  color: var(--color-primary-dark);
}

.VertPage_industryCardDesc {
  font-size: 1.1rem;
  line-height: 1.6;
  color: var(--color-gray-500);
}

/* Nola Operating Approach */
.VertPage_approach {
  background-color: var(--color-white);
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 4rem;
}

.VertPage_approachLeft {
  grid-column: span 5;
}

.VertPage_approachHeading {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--color-primary-dark);
  margin-bottom: 2rem;
}

.VertPage_approachCopy {
  font-size: 1.15rem;
  line-height: 1.65;
  color: var(--color-gray-500);
}

.VertPage_approachRight {
  grid-column: span 7;
  display: flex;
  flex-direction: column;
}

.VertPage_approachItem {
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--color-gray-200);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.15rem;
  font-weight: 400;
  color: var(--color-primary-dark);
}

/* Technology, Documentation and Traceability */
.VertPage_tech {
  background-color: var(--color-dark-green-deep); /* deep technical green */
  color: var(--color-white);
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 4rem;
  align-items: center;
}

.VertPage_techLeft {
  grid-column: span 6;
}

.VertPage_techHeading {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--color-white);
  margin-bottom: 2rem;
}

.VertPage_techCopy {
  font-size: 1.15rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.7);
}

.VertPage_techRight {
  grid-column: span 6;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.VertPage_techItem {
  background-color: rgba(255, 255, 255, 0.05);
  padding: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 1.1rem;
  font-weight: 300;
}

/* Sustainability and Governance */
.VertPage_esg {
  background-color: var(--color-white);
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.VertPage_esgHeading {
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--color-primary-dark);
  margin-bottom: 4rem;
}

.VertPage_esgGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}

.VertPage_esgCard {
  background-color: var(--color-support-cream); /* F7F7F5 */
  padding: 3rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  border-top: 1px solid var(--color-gray-200);
}

.VertPage_esgCardTitle {
  font-size: 1.3rem;
  font-weight: 300;
  color: var(--color-primary-dark);
}

.VertPage_esgCardDesc {
  font-size: 1.1rem;
  line-height: 1.6;
  color: var(--color-gray-500);
}

/* Related Verticals */
.VertPage_related {
  background-color: var(--color-support-cream); /* F7F7F5 */
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
}

.VertPage_relatedHeading {
  font-size: clamp(1.8rem, 3vw, 2.5rem);
  font-weight: 400;
  color: var(--color-primary-dark);
  margin-bottom: 4rem;
}

.VertPage_relatedGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}

.VertPage_relatedCard {
  background-color: var(--color-white);
  padding: 3rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-top: 1px solid var(--color-gray-200);
  height: 320px;
  transition: var(--transition-fast);
}

.VertPage_relatedCard:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.VertPage_relatedCardTitle {
  font-size: 1.4rem;
  font-weight: 300;
  color: var(--color-primary-dark);
}

.VertPage_relatedCardDesc {
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--color-gray-500);
  margin-top: 1rem;
}

.VertPage_relatedCardLink {
  font-size: 0.9rem;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-primary);
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.5rem;
}

/* Final CTA */
.VertPage_cta {
  background-color: var(--color-primary-dark); /* #005A59 */
  color: var(--color-white);
  padding-top: clamp(7.5rem, 10vw, 10rem);
  padding-bottom: clamp(7.5rem, 10vw, 10rem);
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
  width: 100vw;
  position: relative;
  left: auto;
  right: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.VertPage_ctaHeading {
  font-size: clamp(2.2rem, 5vw, 3.8rem);
  font-weight: 400;
  line-height: 1.15;
  margin-bottom: 1.5rem;
  max-width: 900px;
}

.VertPage_ctaCopy {
  font-size: 1.25rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 3rem;
  max-width: 700px;
}

.VertPage_ctaBtns {
  display: flex;
  gap: 1.5rem;
}

/* Responsive adjustments */
@media (max-width: 992px) {
  .VertPage_thesis, .VertPage_matters, .VertPage_role, .VertPage_approach, .VertPage_tech {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 3rem;
  }
  .VertPage_thesisLeft, .VertPage_thesisRight, 
  .VertPage_mattersLeft, .VertPage_mattersRight,
  .VertPage_roleLeft, .VertPage_roleRight,
  .VertPage_approachLeft, .VertPage_approachRight,
  .VertPage_techLeft, .VertPage_techRight {
    grid-column: span 12;
  }
  .VertPage_industriesGrid, .VertPage_esgGrid, .VertPage_relatedGrid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .VertPage_roleRight {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .VertPage_mattersRight {
    height: 350px;
  }
}




/* Hamburger X transition */
/* Fix logo visibility since drawer is now white */
/* Base menu-open logic */
body.menu-open .Menu_navbar__woOc_ .logo-light { display: none !important; }
body.menu-open .Menu_navbar__woOc_ .logo-dark { display: block !important; }

/* High specificity overrides for dark theme pages */
body.menu-open .Menu_navbar__woOc_:not(.scrolled).Menu_themeDark__w8fG2 .logo-light { display: none !important; }
body.menu-open .Menu_navbar__woOc_:not(.scrolled).Menu_themeDark__w8fG2 .logo-dark { display: block !important; }


body.menu-open .Navbar_menuToggle span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
body.menu-open .Navbar_menuToggle span:nth-child(2) {
  opacity: 0;
}
body.menu-open .Navbar_menuToggle span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* --- Global Typography System --- */
body {
  font-family: var(--font-main);
  background-color: var(--color-bg);
  color: var(--color-text);
}

.hero-title {
  font-size: var(--text-hero);
  line-height: 1.02;
  font-weight: 300;
  letter-spacing: -0.065em;
  font-family: var(--font-main);
}

.section-title {
  font-size: clamp(2.4rem, 4.8vw, 5rem);
  line-height: 1.05;
  font-weight: 300;
  letter-spacing: -0.055em;
  font-family: var(--font-main);
}

.body-copy {
  font-size: 1.05rem;
  line-height: 1.75;
  font-weight: 400;
  letter-spacing: -0.01em;
  font-family: var(--font-main);
}

.nav-link {
  font-size: 0.72rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  font-family: var(--font-main);
}

/* Sidebar Light Theme Overrides */
.Menu_menuOverlay__U6NCq .Drawer_linkItem,
.Menu_menuOverlay__U6NCq .Drawer_dropdownMenu a,
.Menu_menuOverlay__U6NCq .Drawer_desc,
.Menu_menuOverlay__U6NCq .Drawer_dropdownTrigger,
.Menu_menuOverlay__U6NCq .Drawer_dropdownArrow {
  color: var(--color-charcoal) !important;
}

.Menu_menuOverlay__U6NCq .Drawer_footer {
  background-color: var(--color-off-white) !important;
  border-top: 1px solid var(--color-stone) !important;
}

/* Glencore layout overrides */
.Navbar_searchToggle {
  width: 80px;
  height: 80px;
  background-color: #000000 !important;
  color: #ffffff !important;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: background-color 0.3s;
  padding: 0;
}
.Navbar_searchToggle:hover {
  background-color: #000000 !important;
}
.Navbar_utilityLinks {
  display: flex;
  gap: 2.5rem;
  padding-right: 2rem;
}
.Menu_logo__L8aFW {
  padding-left: 4rem !important;
  padding-right: 2rem !important;
  display: flex;
  align-items: center;
}
.Navbar_leftGroup {
  display: flex;
  align-items: center;
  height: 100%;
}
.Menu_navbar__woOc_ {
  padding: 0 !important; /* Force edge to edge */
}

/* =========================================================================
   NOLA WEBSITE STYLE GUIDE COMPONENTS V2
   ========================================================================= */

.hero-title {
  max-width: 1120px;
  margin: 0;
  font-family: var(--font-sans);
  font-size: var(--text-hero);
  line-height: 0.98;
  font-weight: 300;
  letter-spacing: -0.065em;
}

.hero-title em {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 500;
  letter-spacing: -0.035em;
}

.section-title {
  margin: 0;
  font-size: clamp(2.4rem, 4.8vw, 5rem);
  line-height: 1.05;
  font-weight: 300;
  letter-spacing: -0.055em;
}

.section-light {
  background: var(--nola-white);
  color: var(--nola-black);
}
.section-dark {
  background: var(--nola-black);
  color: var(--nola-white);
}
.section-brand {
  background: var(--nola-deep-teal-800);
  color: var(--nola-white);
}
.section-lime {
  background: var(--nola-lime-500);
  color: var(--nola-ink);
}
.section-teal {
  background: var(--nola-teal-500);
  color: var(--nola-black);
}
.section-aqua {
  background: var(--nola-aqua-500);
  color: var(--nola-black);
}
.section-red {
  background: var(--nola-red-500);
  color: var(--nola-black);
}
.section-lavender {
  background: var(--nola-lavender-500);
  color: var(--nola-ink);
}
.section-peach {
  background: var(--nola-peach-500);
  color: var(--nola-ink);
}
.section-yellow {
  background: var(--nola-yellow-300);
  color: var(--nola-ink);
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  color: currentColor;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
}
.text-link::after {
  content: "→";
}
.section-dark .text-link,
.section-brand .text-link {
  color: var(--nola-yellow-300);
}
.section-light .text-link {
  color: var(--nola-deep-teal-800);
}

.button {
  min-height: 48px;
  padding: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  border: 2px solid transparent;
  border-radius: 0 !important;
  background-clip: padding-box !important;
  font-family: var(--font-sans);
  font-size: 0.88rem;
  line-height: 1;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  z-index: 1;
  transition: color 0.3s ease, border-color 0.3s ease;
}

.button::before {
  content: "";
  position: absolute;
  top: -2px; left: -2px; right: -2px; bottom: -2px; /* Expand to cover the transparent border */
  background-color: var(--color-primary-teal) !important;
  z-index: -1;
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.button:hover::before {
  transform: translateY(0);
}

.button:hover {
  color: var(--nola-black) !important;
  border-color: transparent !important;
}

.button-black {
  background: var(--nola-black);
  color: var(--nola-white);
  border-color: var(--nola-black);
}
.button-deep-teal {
  background: var(--nola-deep-teal-800);
  color: var(--nola-white);
  border-color: var(--nola-deep-teal-800);
}
.button-lime {
  background: var(--nola-lime-500);
  color: var(--nola-black);
  border-color: var(--nola-black);
}
.button-aqua {
  background: var(--nola-aqua-500);
  color: var(--nola-black);
  border-color: var(--nola-black);
}
.button-red {
  background: var(--nola-red-500);
  color: var(--nola-black);
  border-color: var(--nola-black);
}
.button-yellow {
  background: var(--nola-yellow-300);
  color: var(--nola-ink);
  border-color: var(--nola-ink);
}

/* Override legacy buttons */
.BtnMain_btnMain__axrAA {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.85rem !important;
  min-height: 48px !important;
  padding: 1.5rem !important;
  border: 2px solid var(--nola-deep-teal-800) !important;
  background: var(--nola-black) !important;
  background-clip: padding-box !important;
  color: var(--nola-white) !important;
  font-size: 0.88rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  border-radius: 0 !important;
  position: relative;
  overflow: hidden;
  z-index: 1;
  transition: color 0.3s ease, border-color 0.3s ease;
}
.BtnMain_btnMain__axrAA:hover {
  color: var(--nola-black) !important;
  border-color: transparent !important;
}

:focus-visible {
  outline: 3px solid var(--nola-black);
  outline-offset: 4px;
}
.section-dark :focus-visible,
.section-brand :focus-visible {
  outline-color: var(--nola-yellow-300);
}
.section-yellow :focus-visible,
.section-lime :focus-visible,
.section-aqua :focus-visible,
.section-lavender :focus-visible,
.section-peach :focus-visible,
.section-red :focus-visible {
  outline-color: var(--nola-black);
}

.button:focus-visible, .BtnMain_btnMain__axrAA:focus-visible {
  outline: 3px solid var(--nola-black);
  outline-offset: 4px;
  box-shadow: 0 0 0 7px var(--nola-white);
}
.section-dark .button:focus-visible,
.section-brand .button:focus-visible,
.section-dark .BtnMain_btnMain__axrAA:focus-visible,
.section-brand .BtnMain_btnMain__axrAA:focus-visible {
  outline-color: var(--nola-yellow-300);
  box-shadow: 0 0 0 7px var(--nola-black);
}

.tag {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 1rem;
  border-radius: 999px;
  border: 2px solid currentColor;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.tag-lime { background: var(--nola-lime-500); color: var(--nola-black); }
.tag-aqua { background: var(--nola-aqua-500); color: var(--nola-black); }
.tag-red { background: var(--nola-red-500); color: var(--nola-black); }
.tag-lavender { background: var(--nola-lavender-500); color: var(--nola-ink); }
.tag-peach { background: var(--nola-peach-500); color: var(--nola-ink); }
.tag-yellow { background: var(--nola-yellow-300); color: var(--nola-ink); }
.tag-dark { background: var(--nola-black); color: var(--nola-white); border-color: var(--nola-black); }
.tag-brand { background: var(--nola-deep-teal-800); color: var(--nola-white); border-color: var(--nola-deep-teal-800); }

.card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--nola-black);
}
.card {
  min-height: 320px;
  padding: clamp(1.5rem, 3vw, 3rem);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.card-title {
  margin: 0;
  font-size: clamp(1.75rem, 3vw, 3rem);
  line-height: 1.05;
  font-weight: 400;
  letter-spacing: -0.055em;
}
.card-copy {
  margin-top: 1.2rem;
  font-size: 1rem;
  line-height: 1.65;
}
.card-dark { background: var(--nola-black); color: var(--nola-white); }
.card-brand { background: var(--nola-deep-teal-800); color: var(--nola-white); }
.card-lime { background: var(--nola-lime-500); color: var(--nola-ink); }
.card-aqua { background: var(--nola-aqua-500); color: var(--nola-black); }
.card-red { background: var(--nola-red-500); color: var(--nola-black); }
.card-lavender { background: var(--nola-lavender-500); color: var(--nola-ink); }
.card-peach { background: var(--nola-peach-500); color: var(--nola-ink); }
.card-yellow { background: var(--nola-yellow-300); color: var(--nola-ink); }

.form-label {
  color: currentColor;
  font-size: 0.9rem;
  font-weight: 800;
}
.form-input, .form-textarea, .form-select {
  width: 100%;
  min-height: 54px;
  padding: 0 1rem;
  border: 2px solid var(--nola-black);
  border-radius: 0.75rem !important;
  background: var(--nola-white);
  color: var(--nola-black);
  font: inherit;
}
.form-error {
  color: var(--nola-black);
  font-size: 0.9rem;
  font-weight: 800;
}
.form-error::before { content: "Error: "; }

body {
  background: var(--nola-white);
  color: var(--nola-black);
}
.Navbar_menuToggle { background-color: var(--nola-aqua-500) !important; }
.Navbar_menuToggle:hover { background-color: var(--nola-aqua-300) !important; }
.Footer_main__T4eSu, .site-footer, footer {
  background: #005A59 !important;
  color: var(--nola-white) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
}
.Footer_main__T4eSu a, footer a, .site-footer a { color: var(--nola-lime-500) !important; }



.FeaturedPost_readMoreLink {
  color: var(--nola-black);
  text-decoration: none;
  font-family: var(--font-sans);
  font-size: 0.9rem;
  font-weight: 400;
  display: inline-block;
  display: inline-block;
  margin-top: 1rem;
}
.FeaturedPost_readMoreLink:hover {
  color: var(--nola-aqua-700);
}


/* =========================================================================
   GLOBAL PALETTE UPDATE (Muted Teal & Neutrals)
   ========================================================================= */

:root {
  /* Global Padding */
  --global-padding-x: 7.5vw;

  /* Light neutral */
  --color-off-white: #F7F7F5; /* card backgrounds, light panels */

  /* Text neutrals */
  --color-white: #FFFFFF; /* hero headings, nav links, icons */
  --color-black: #000000; /* search block / deepest UI areas */

  /* Dark overlays */
  --color-hero-overlay: rgba(0, 0, 0, 0.55); /* dark overlay over hero images */
  --color-dark-charcoal: #080609; /* very dark background fallback */

  /* Brand teal */
  --color-primary-teal: #00CCCC; /* highlighted italic words, active slider, accent text */
  --color-menu-teal: #028F83; /* hamburger/menu block background */

  /* Deep teal text */
  --color-deep-teal: #028F83; /* card headings, CTA text */

  /* Muted teal/grey */
  --color-muted-teal: #6B7E7C; /* paragraph text on light cards */
  --color-soft-teal: #8AA2A1; /* secondary muted UI text */

  /* Lines / borders */
  --color-border-teal: rgba(64, 141, 131, 0.35);
}

/* 1. Hero Blocks */
.Header_header__c3A45 {
  background-color: var(--color-dark-charcoal) !important;
}
.Header_header__c3A45::before,
.Header_header__c3A45 .Header_overlay {
  background: var(--color-hero-overlay) !important;
}
.Header_maxi__O4_hA .Header_title__S6rUv {
  color: var(--color-white) !important;
}
.Header_title__S6rUv em,
.hero .accent {
  color: var(--color-primary-teal) !important;
}
.Header_active__z2ttm.animating {
  background-color: var(--color-primary-teal) !important;
}

/* 2. Cards & Insights */
.card,
.FeaturedPost_main__jTdRd,
.News_postBlock__2E7H4,
.News_featuredBlock__QYI3R,
.Home_insightCard__XYZ {
  background-color: var(--color-off-white) !important;
}
.card h3,
.card-title,
.FeaturedPost_title__jFSIQ,
.News_title__abc {
  color: var(--color-deep-teal) !important;
}
.card p,
.card-copy,
.FeaturedPost_desc__H868D,
.News_desc__xyz {
  color: var(--color-muted-teal) !important;
}
.card a,
.FeaturedPost_readMoreLink,
.text-link {
  color: var(--color-deep-teal) !important;
}

/* 3. Navigation Buttons */
.Navbar_menuToggle {
  background-color: var(--color-menu-teal) !important;
}
.Navbar_menuToggle:hover {
  background-color: var(--color-deep-teal) !important;
}
.Navbar_searchToggle {
  background-color: var(--color-black) !important;
  color: var(--color-white) !important;
}

/* 4. CTA Buttons */

/* Unify font sizes, weights, and text transforms across all buttons sitewide */
.HeroTextLink,
.BtnMain_btnMain__axrAA,
.button,
.Drawer_contactBtn,
.ContactForm_submitBtn__B7u_w,
.BtnPlay_btnMain__Y0EQ1,
.Header_decline__Uxaym,
.Header_accept__q3aJM {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  flex-shrink: 0 !important; /* Ensure buttons never squash horizontally, preserving their design aspect ratio */
}

/* Master boxed button layouts and styles */
.HeroTextLink,
.BtnMain_btnMain__axrAA,
.button,
.Drawer_contactBtn,
.ContactForm_submitBtn__B7u_w,
.BtnPlay_btnMain__Y0EQ1 {
  padding: 1.5rem !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background-color: var(--color-primary-dark) !important; /* Dark green/teal #005A59 */
  color: var(--color-white) !important;
  border: 2px solid var(--color-primary-dark) !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease !important;
}

.BtnPlay_btnMain__Y0EQ1 {
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease !important;
}

/* Universal button suffix arrow */
.BtnMain_btnMain__axrAA::after,
.button::after,
.Drawer_contactBtn::after,
.HeroTextLink::after,
.ContactForm_submitBtn__B7u_w::after,
.Navbar_loginBtn::after,
.Header_maxi__O4_hA .Header_cta__YcFim::after {
  content: "→" !important;
  position: static !important;
  margin-left: 10px !important;
  transition: transform 0.3s ease !important;
  display: inline-block !important;
  font-family: var(--font-sans) !important;
  font-size: 1em !important; /* Let arrow scale with text */
  font-weight: 700 !important; /* Unified arrow weight */
  line-height: 1 !important;
}

.BtnMain_btnMain__axrAA:hover::after,
.button:hover::after,
.Drawer_contactBtn:hover::after,
.HeroTextLink:hover::after,
.ContactForm_submitBtn__B7u_w:hover::after,
.Navbar_loginBtn:hover::after,
.Header_maxi__O4_hA .Header_cta__YcFim:hover::after {
  transform: translateX(4px) !important;
}

/* Hover reveal ::before element */
.BtnMain_btnMain__axrAA::before,
.button::before,
.Drawer_contactBtn::before,
.BtnPlay_btnMain__Y0EQ1::before,
.HeroTextLink::before,
.SliderTile_btn__fieYp::before,
.Header_decline__Uxaym::before,
.Header_accept__q3aJM::before,
.ContactForm_submitBtn__B7u_w::before,
.Navbar_loginBtn::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-color: var(--color-accent-cyan) !important;
  z-index: -1 !important;
  transform: translateY(100%) !important;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: block !important;
}

.BtnMain_btnMain__axrAA:hover::before,
.button:hover::before,
.Drawer_contactBtn:hover::before,
.BtnPlay_btnMain__Y0EQ1:hover::before,
.HeroTextLink:hover::before,
.SliderTile_btn__fieYp:hover::before,
.Header_decline__Uxaym:hover::before,
.Header_accept__q3aJM:hover::before,
.ContactForm_submitBtn__B7u_w:hover::before,
.Navbar_loginBtn:hover::before {
  transform: translateY(0) !important;
}

.BtnMain_btnMain__axrAA:hover,
.button:hover,
.Drawer_contactBtn:hover,
.BtnPlay_btnMain__Y0EQ1:hover,
.HeroTextLink:hover,
.SliderTile_btn__fieYp:hover,
.Header_decline__Uxaym:hover,
.Header_accept__q3aJM:hover,
.ContactForm_submitBtn__B7u_w:hover,
.Navbar_loginBtn:hover {
  color: var(--nola-ink) !important;
  background-color: transparent !important;
  border-color: var(--color-accent-cyan) !important;
}

/* Universal Secondary Button styling (transparent with white border) */
.BtnMain_btnMain__axrAA.BtnMain_secondary,
.button.BtnMain_secondary {
  background-color: transparent !important;
  color: var(--color-white) !important;
  border: 2px solid var(--color-white) !important;
}

.BtnMain_btnMain__axrAA.BtnMain_secondary::before,
.button.BtnMain_secondary::before {
  background-color: var(--color-accent-cyan) !important;
}

.BtnMain_btnMain__axrAA.BtnMain_secondary:hover,
.button.BtnMain_secondary:hover {
  color: var(--nola-ink) !important;
  border-color: var(--color-accent-cyan) !important;
}


/* Ensure slide button SVG arrows turn dark green on hover */
.SliderTile_btn__fieYp:hover svg g,
.SliderTile_btn__fieYp:hover svg path {
  stroke: var(--color-primary-dark) !important;
}


/* 5. Specific overrides from earlier */
.Headline_headline__7jFqd {
  background-color: var(--color-off-white) !important;
}
.AboutSection_aboutSection__L0b5_ {
  background-color: var(--color-off-white) !important;
}
.CategoryLabel_label__oylXS {
  background-color: var(--color-primary-teal) !important;
  color: var(--color-black) !important;
}

/* =========================================================================
   SEARCH BAR & HERO CARD OVERHAUL OVERRIDES
   ========================================================================= */

/* Search overhaul styling to match reference design exactly */
.Navbar_searchToggle {
  width: 80px !important;
  height: 80px !important;
  background-color: #000000 !important;
  border-radius: 0 !important;
  border: none !important;
  color: #ffffff !important;
  cursor: pointer !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  transition: background-color 0.3s ease !important;
}

.Navbar_searchToggle:hover {
  background-color: var(--color-primary-dark) !important;
}

.SearchOverlay_input {
  background: var(--color-accent-cyan) !important;
  border: 15px solid var(--color-accent-cyan) !important;
  border-right: none !important;
  color: #000000 !important;
  height: 80px !important;
  box-sizing: border-box !important;
  font-size: 1.4rem;
  padding: 0 1.5rem !important;
  border-radius: 0 !important;
}

.SearchOverlay_container {
  max-width: 100% !important;
  width: 100% !important;
}

/* Floating Hero Card at bottom right corner */
.HeroMobileCard,
.HeroMobileCard * {
  font-family: var(--font-sans) !important;
}

.HeroMobileCard em {
  font-style: italic !important;
  color: var(--color-accent-cyan) !important;
}

.HeroMobileCard {
  position: absolute;
  bottom: 3.5rem;
  right: 7.5vw;
  z-index: 45;
  width: clamp(240px, 22vw, 320px) !important;
  aspect-ratio: 2 / 3 !important;
  height: auto !important;
  background: #f5f3ef;
  box-shadow: 0 20px 60px rgba(0,0,0,0.35);
  overflow: hidden;
  animation: heroCardSlideIn 0.3s ease-out 0s both;
  cursor: pointer;
  display: none !important; /* Hidden by default; selectively shown on landscape tablets, laptops, desktops, and TVs */
  flex-direction: column !important;
}

/* Make video parent div height proportional */
.HeroMobileCard > div:first-child {
  width: 100% !important;
  height: 45.83% !important; /* 220px / 480px */
  overflow: hidden !important;
  position: relative !important;
}

.HeroMobileCard_title {
  font-size: clamp(0.9rem, 1.25vw, 1.35rem) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  display: block !important;
  margin: 0 0 4% 0 !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

.HeroMobileCard_desc {
  font-size: clamp(0.75rem, 0.9vw, 0.95rem) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 0 6% 0 !important;
  line-height: 1.45 !important;
}

.HeroMobileCard_content {
  width: 100% !important;
  height: 54.17% !important; /* 260px / 480px */
  padding: 7.5% !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
}

@keyframes heroCardSlideIn {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.HeroMobileCard_link {
  font-size: clamp(0.7rem, 0.8vw, 0.9rem) !important;
  text-decoration: none !important;
  margin-top: auto !important; /* Push link to the bottom of content container */
  font-weight: 500 !important;
}

.HeroMobileCard_link:hover {
  color: #028F83 !important; /* Brand green hover */
  text-decoration: none !important;
}

/* =========================================================================
   HOMEPAGE RESPONSIVELY OPTIMIZED BREAKPOINTS & LAYOUT OVERRIDES
   ========================================================================= */

/* A. General Typography & Hero Font Adjustments */
@media (orientation: portrait) {
  .Header_title__S6rUv,
  .Header_title__S6rUv * {
    font-size: clamp(2.4rem, 9.5vw, 6.5rem) !important;
    line-height: 1.05 !important;
  }
}

@media (max-width: 767px) {
  .Header_title__S6rUv {
    margin-bottom: 1.5rem !important;
  }
  .Header_subtitle__fi5N5 {
    font-size: clamp(1.1rem, 2.2vw, 1.25rem) !important;
    margin-bottom: 2rem !important;
    line-height: 1.5 !important;
  }
}

/* B. Button, Toggle & Layout Sizing Optimization across Viewport Breakpoints */

/* 1. Desktop Screens (>= 1200px) */
@media (min-width: 1200px) {
  /* Rectangular buttons */
  .HeroTextLink,
  .BtnMain_btnMain__axrAA,
  .button,
  .Drawer_contactBtn,
  .ContactForm_submitBtn__B7u_w,
  .BtnPlay_btnMain__Y0EQ1,
  .Header_decline__Uxaym,
  .Header_accept__q3aJM {
    padding: 1.15rem 2.0rem !important;
    font-size: 12px !important;
    letter-spacing: 1.5px !important;
  }
  
  .SliderTile_btn__fieYp {
    width: 44px !important;
    height: 44px !important;
  }
  
  .ValueTile_icon__Remd5 {
    width: 52px !important;
    height: 52px !important;
  }
  
  /* Header heights, Toggles & Search Overlay */
  .Menu_navbar__woOc_,
  .Drawer_header,
  .Menu_searchOverlay,
  .SearchOverlay_container {
    height: 80px !important;
  }
  .Navbar_menuToggle,
  .Navbar_searchToggle,
  .Navbar_menuClose,
  .SearchOverlay_close,
  .SearchOverlay_submit {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    min-height: 80px !important;
  }
  .Menu_searchOverlay {
    right: 80px !important;
    width: calc((100vw - 80px) * 0.6) !important;
  }
  .SearchOverlay_bgClose {
    right: -80px !important;
  }
}

/* 2. Laptops / Large Tablets (1024px to 1199px) */
@media (min-width: 1024px) and (max-width: 1199px) {
  /* Rectangular buttons */
  .HeroTextLink,
  .BtnMain_btnMain__axrAA,
  .button,
  .Drawer_contactBtn,
  .ContactForm_submitBtn__B7u_w,
  .BtnPlay_btnMain__Y0EQ1,
  .Header_decline__Uxaym,
  .Header_accept__q3aJM {
    padding: 1.0rem 1.75rem !important;
    font-size: 11.5px !important;
    letter-spacing: 1.2px !important;
  }
  
  .SliderTile_btn__fieYp {
    width: 44px !important;
    height: 44px !important;
  }
  
  .ValueTile_icon__Remd5 {
    width: 52px !important;
    height: 52px !important;
  }
  
  /* Header heights, Toggles & Search Overlay */
  .Menu_navbar__woOc_,
  .Drawer_header,
  .Menu_searchOverlay,
  .SearchOverlay_container {
    height: 72px !important;
  }
  .Navbar_menuToggle,
  .Navbar_searchToggle,
  .Navbar_menuClose,
  .SearchOverlay_close,
  .SearchOverlay_submit {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
  }
  .Menu_searchOverlay {
    right: 72px !important;
    width: calc((100vw - 72px) * 0.6) !important;
  }
  .SearchOverlay_bgClose {
    right: -72px !important;
  }
}

/* 3. Tablets (768px to 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
  /* Rectangular buttons */
  .HeroTextLink,
  .BtnMain_btnMain__axrAA,
  .button,
  .Drawer_contactBtn,
  .ContactForm_submitBtn__B7u_w,
  .BtnPlay_btnMain__Y0EQ1,
  .Header_decline__Uxaym,
  .Header_accept__q3aJM {
    padding: 0.95rem 1.5rem !important;
    font-size: 12px !important;
    letter-spacing: 1.2px !important;
  }
  
  .SliderTile_btn__fieYp {
    width: 40px !important;
    height: 40px !important;
  }
  
  .ValueTile_icon__Remd5 {
    width: 44px !important;
    height: 44px !important;
  }
  
  /* Header heights, Toggles & Search Overlay */
  .Menu_navbar__woOc_,
  .Drawer_header,
  .Menu_searchOverlay,
  .SearchOverlay_container {
    height: 80px !important;
  }
  .Navbar_menuToggle,
  .Navbar_searchToggle,
  .Navbar_menuClose,
  .SearchOverlay_close,
  .SearchOverlay_submit {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    min-height: 80px !important;
  }
  .Menu_logo__L8aFW {
    padding-left: 2rem !important;
  }
  .Menu_searchOverlay {
    right: 80px !important;
    width: calc(100vw - 80px) !important;
  }
  .SearchOverlay_bgClose {
    right: -80px !important;
  }
  .SearchOverlay_input {
    font-size: 1.25rem !important;
    border-width: 4px !important;
    height: 80px !important;
  }
  
  .BtnMain_btnMain__axrAA::after,
  .button::after,
  .Drawer_contactBtn::after,
  .HeroTextLink::after,
  .ContactForm_submitBtn__B7u_w::after,
  .Header_maxi__O4_hA .Header_cta__YcFim::after {
    margin-left: 6px !important;
  }
}

/* 4. Mobile Portrait (480px to 767px) */
@media (min-width: 480px) and (max-width: 767px) {
  /* Rectangular buttons */
  .HeroTextLink,
  .BtnMain_btnMain__axrAA,
  .button,
  .Drawer_contactBtn,
  .ContactForm_submitBtn__B7u_w,
  .BtnPlay_btnMain__Y0EQ1,
  .Header_decline__Uxaym,
  .Header_accept__q3aJM {
    padding: 0.85rem 1.25rem !important;
    font-size: 12px !important;
    letter-spacing: 1.0px !important;
  }
  
  .SliderTile_btn__fieYp {
    width: 32px !important;
    height: 32px !important;
  }
  
  .ValueTile_icon__Remd5 {
    width: 36px !important;
    height: 36px !important;
  }
  
  /* Header heights, Toggles & Search Overlay */
  .Menu_navbar__woOc_,
  .Drawer_header,
  .Menu_searchOverlay,
  .SearchOverlay_container {
    height: 72px !important;
  }
  .Navbar_menuToggle,
  .Navbar_searchToggle,
  .Navbar_menuClose,
  .SearchOverlay_close,
  .SearchOverlay_submit {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
  }
  .Menu_logo__L8aFW {
    padding-left: 1rem !important;
  }
  .Menu_searchOverlay {
    right: 72px !important;
    width: calc(100vw - 72px) !important;
  }
  .SearchOverlay_bgClose {
    right: -72px !important;
  }
  .SearchOverlay_input {
    font-size: 1.15rem !important;
    border-width: 4px !important;
    height: 72px !important;
  }
  
  .BtnMain_btnMain__axrAA::after,
  .button::after,
  .Drawer_contactBtn::after,
  .HeroTextLink::after,
  .ContactForm_submitBtn__B7u_w::after,
  .Header_maxi__O4_hA .Header_cta__YcFim::after {
    margin-left: 5px !important;
  }
}

/* 5. Extra Small Mobile (< 480px) */
@media (max-width: 479px) {
  /* Rectangular buttons */
  .HeroTextLink,
  .BtnMain_btnMain__axrAA,
  .button,
  .Drawer_contactBtn,
  .ContactForm_submitBtn__B7u_w,
  .BtnPlay_btnMain__Y0EQ1,
  .Header_decline__Uxaym,
  .Header_accept__q3aJM {
    padding: 0.8rem 1.0rem !important;
    font-size: 12px !important;
    letter-spacing: 0.8px !important;
  }
  
  .SliderTile_btn__fieYp {
    width: 28px !important;
    height: 28px !important;
  }
  
  .ValueTile_icon__Remd5 {
    width: 32px !important;
    height: 32px !important;
  }
  
  /* Header heights, Toggles & Search Overlay */
  .Menu_navbar__woOc_,
  .Drawer_header,
  .Menu_searchOverlay,
  .SearchOverlay_container {
    height: 64px !important;
  }
  .Navbar_menuToggle,
  .Navbar_searchToggle,
  .Navbar_menuClose,
  .SearchOverlay_close,
  .SearchOverlay_submit {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
  }
  .Menu_logo__L8aFW {
    padding-left: 1rem !important;
  }
  .Menu_searchOverlay {
    right: 64px !important;
    width: calc(100vw - 64px) !important;
  }
  .SearchOverlay_bgClose {
    right: -64px !important;
  }
  .SearchOverlay_input {
    font-size: 1.0rem !important;
    border-width: 3px !important;
    height: 64px !important;
  }
  
  .BtnMain_btnMain__axrAA::after,
  .button::after,
  .Drawer_contactBtn::after,
  .HeroTextLink::after,
  .ContactForm_submitBtn__B7u_w::after,
  .Header_maxi__O4_hA .Header_cta__YcFim::after {
    margin-left: 4px !important;
  }
}

/* C. Hero Mobile Card Responsiveness (Fluid Proportional Aspect Ratio Scaling) */

/* Enforce visibility on laptops, desktops, and TVs (>= 1024px) */
@media (min-width: 1024px) {
  .HeroMobileCard {
    display: flex !important;
    aspect-ratio: 2 / 3 !important;
    height: auto !important;
  }
}

/* Enforce visibility & scaling ONLY on landscape tablets (768px to 1023px, landscape) */
@media (min-width: 768px) and (max-width: 1023px) and (orientation: landscape) {
  .HeroMobileCard {
    display: flex !important;
    right: var(--global-padding-x) !important;
    left: auto !important;
    bottom: 2.25rem !important;
    width: clamp(150px, 18vw, 180px) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25) !important;
    aspect-ratio: 2 / 3 !important;
    height: auto !important;
  }
  
  .HeroMobileCard_title {
    font-size: clamp(0.8rem, 1.2vw, 0.95rem) !important;
    margin-bottom: 3% !important;
  }
  
  .HeroMobileCard_desc {
    display: none !important; /* Hide description on tablet to keep it compact */
  }
  
  .HeroMobileCard_link {
    font-size: clamp(0.65rem, 1vw, 0.75rem) !important;
  }
  
  .Header_indicator__8G2zg {
    bottom: 2.25rem !important;
  }
}

/* Portrait tablets (768px to 1023px, portrait): Keep card hidden, reset indicators to bottom */
@media (min-width: 768px) and (max-width: 1023px) and (orientation: portrait) {
  .Header_indicator__8G2zg {
    bottom: 3.5rem !important;
  }
}

/* Mobile Screens (max-width: 768px) - Both Portrait and Landscape (since it must not show on smaller devices) */
@media (max-width: 768px) {
  .HeroMobileCard {
    display: none !important; /* Hide card completely on mobile screens */
  }
  
  /* Indicators positioned cleanly at default bottom since card is hidden */
  .Header_indicator__8G2zg {
    bottom: 3.5rem !important;
  }

  /* Centralize logo on mobile screens */
  .Menu_navbar__woOc_ .Menu_logo__L8aFW {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10 !important;
  }
  .Menu_navbar__woOc_ .Menu_logo__L8aFW a {
    display: flex !important;
    align-items: center !important;
  }

  /* Cookie consent banner optimization for mobile layout stacking */
  .Header_cookieBar___FctY {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 1.25rem !important;
    text-align: center !important;
    padding: 1.25rem 1.5rem !important;
    bottom: 1.5rem !important;
    left: 15px !important;
    right: 15px !important;
  }
  .Header_buttons__OfAVO {
    justify-content: center !important;
    width: 100% !important;
  }
  .Header_decline__Uxaym, 
  .Header_accept__q3aJM {
    flex: 1 !important;
    justify-content: center !important;
  }
}

/* Extra Small Mobile (max-width: 480px) */
@media (max-width: 479px) {
  .Header_indicator__8G2zg {
    bottom: 3.5rem !important;
  }
}

/* D. Reset Layout Breakouts (Disable -50vw full-width hacks on mobile/tablet) */
@media (max-width: 768px), (max-width: 1024px) and (orientation: portrait) {
  .Headline_headline__7jFqd,
  .page_postVideo__XjkSD,
  .AboutSection_aboutSection__L0b5_,
  .SecondHeadline_secondHeadline__7g4uc,
  .splide.Slider_main__cCNcb,
  .VerticalValues_main__5zhyK,
  .ContactModule_main__N5SFB,
  .Footer_main__T4eSu {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: 0 !important;
    right: 0 !important;
    position: relative !important;
  }
}

/* E. Section Vertical Paddings Adjustments */
@media (max-width: 768px), (max-width: 1024px) and (orientation: portrait) {
  .Headline_headline__7jFqd,
  .page_postVideo__XjkSD,
  .AboutSection_aboutSection__L0b5_,
  .SecondHeadline_secondHeadline__7g4uc,
  .splide.Slider_main__cCNcb,
  .VerticalValues_main__5zhyK,
  .Footer_main__T4eSu {
    padding-top: clamp(3.5rem, 8vw, 5.5rem) !important;
    padding-bottom: clamp(3.5rem, 8vw, 5.5rem) !important;
  }
  .SecondHeadline_secondHeadline__7g4uc {
    padding-bottom: 3.5rem !important;
  }
}

/* F. About Intro Section Stacking */
@media (max-width: 768px), (max-width: 1024px) and (orientation: portrait) {
  .AboutSection_aboutSection__L0b5_ {
    display: flex !important;
    flex-direction: column !important;
    gap: 2.5rem !important;
  }
  .AboutSection_leftCol__bNIqI,
  .AboutSection_rightCol__2GHic {
    width: 100% !important;
    max-width: 100% !important;
  }
  .AboutSection_leftCol__bNIqI {
    font-size: 1.1rem !important;
  }
  .AboutSection_aboutHeadline___BUbs {
    font-size: clamp(1.8rem, 5vw, 2.5rem) !important;
    line-height: 1.2 !important;
    margin-bottom: 2.5rem !important;
  }
  .AboutSection_btnWrapper__sgRHm {
    margin-bottom: 3rem !important;
  }
  .AboutSection_bottomWrap__nhPtr {
    flex-direction: column !important;
    gap: 2rem !important;
    padding-top: 2rem !important;
  }
  .AboutSection_aboutDesc__hSEZ_ {
    font-size: 1.1rem !important;
    max-width: 100% !important;
  }
}

/* G. Post & Video Showreel Stacking */
@media (max-width: 1024px) {
  .page_postVideo__XjkSD {
    display: flex !important;
    flex-direction: column !important;
  }
  .FeaturedPost_main__jTdRd,
  .page_videoPlayer__xosLM {
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 768px) {
  .FeaturedPost_main__jTdRd {
    padding: 2rem !important;
    height: auto !important;
  }
  .FeaturedPost_textWrapper__HxdWc {
    margin: 2rem 0 !important;
  }
  .FeaturedPost_title__jFSIQ {
    font-size: clamp(1.5rem, 3.5vw, 2.2rem) !important;
  }
  .FeaturedPost_desc__H868D {
    font-size: 1.05rem !important;
    -webkit-line-clamp: none !important;
    line-clamp: none !important;
  }
  .page_videoPlayer__xosLM {
    height: 320px !important;
  }
}
@media (max-width: 480px) {
  .page_videoPlayer__xosLM {
    height: 240px !important;
  }
}

/* H. Fixed Image Height adjustment */
@media (max-width: 768px) {
  .FixedImage_main__lnyKd {
    height: 45vh !important;
  }
}

/* I. Draggable Cards Slider Responsive Adjustments */
@media (max-width: 1024px) {
  .splide__slide.SliderTile_main__e7YFh {
    width: 45vw !important;
    min-width: 320px !important;
    height: 520px !important;
    padding: 2.5rem !important;
    margin-right: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  /* Disable drag cursor and enable standard overflow */
  .splide.Slider_main__cCNcb {
    cursor: default !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    padding-bottom: 4rem !important; /* Reduce bottom padding */
  }
  
  .Slider_dragBtn__vF0Y_ {
    display: none !important; /* Hide drag mouse indicator label */
  }
  
  .splide__track {
    overflow: visible !important;
  }
  
  /* Stack list vertically, override JS inline transforms */
  .splide__list {
    display: flex !important;
    flex-direction: column !important;
    gap: 1.5rem !important;
    width: 100% !important;
    transform: none !important;
    padding-left: var(--global-padding-x) !important;
    padding-right: var(--global-padding-x) !important;
    box-sizing: border-box !important;
  }
  
  .splide__slide.SliderTile_main__e7YFh {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    height: 380px !important; /* Premium height for stacked cards */
    padding: 2rem !important;
  }
  
  .SliderTile_title__RUCpX {
    font-size: clamp(1.4rem, 4vw, 1.9rem) !important;
  }
  .SliderTile_hoverBlock__7jPqj {
    font-size: 1rem !important;
    gap: 1.25rem !important;
  }
  .SliderTile_no__LyXFS {
    font-size: 1.1rem !important;
    margin-bottom: 1rem !important;
  }
}

/* J. Sticky Vertical Values Section Stacking */
@media (max-width: 768px), (max-width: 1024px) and (orientation: portrait) {
  .VerticalValues_main__5zhyK {
    display: flex !important;
    flex-direction: column !important;
    gap: 3.5rem !important;
  }
  .VerticalValues_leftCol__fARUz,
  .VerticalValues_rightCol__gWJkC {
    width: 100% !important;
    max-width: 100% !important;
  }
  .VerticalValues_leftColWrapper__5J7UZ {
    position: relative !important;
    top: 0 !important;
    gap: 2rem !important;
  }
  .VerticalValues_title__7NJZO {
    font-size: clamp(1.4rem, 4.5vw, 2.2rem) !important;
    line-height: 1.25 !important;
  }
  .ValueTile_linkWrapper__2xQes {
    padding: 2.25rem 0 !important;
  }
  .ValueTile_main__3LWJ_ {
    gap: 1.5rem !important;
  }
}

/* K. Bottom Contact Modules (Tiles) */
@media (max-width: 768px) {
  .ContactModuleTile_main__soX9k {
    height: auto !important;
    padding: 4.5rem var(--global-padding-x) !important;
    gap: 3rem !important;
  }
  .ContactModuleTile_title__mzSWU {
    font-size: clamp(1.5rem, 4vw, 2.2rem) !important;
    margin-bottom: 1rem !important;
  }
}

/* L. Footer Logo & Tagline responsive stack */
@media (max-width: 576px) {
  .Footer_logoRow__new {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1rem !important;
  }
  .Footer_logoDivider__new {
    display: none !important;
  }
  .Footer_logoTagline__new span {
    display: inline !important;
  }
  .Footer_logoTagline__new span::after {
    content: " ";
  }
}

/* M. Mobile Rotation / Landscape Orientation Overrides (Short Viewports) */
@media (max-height: 500px) and (orientation: landscape) {
  .Header_title__S6rUv {
    font-size: clamp(1.7rem, 6.5vh, 2.4rem) !important;
    margin-bottom: 0.85rem !important;
    line-height: 1.1 !important;
  }
  .Header_subtitle__fi5N5 {
    font-size: 0.95rem !important;
    margin-bottom: 1.25rem !important;
    line-height: 1.4 !important;
  }
  .Header_indicator__8G2zg {
    bottom: 3.5rem !important;
  }
  .HeroMobileCard {
    display: none !important; /* Hide card in mobile landscape orientation */
  }
  .splide__slide.SliderTile_main__e7YFh {
    height: 380px !important;
    padding: 1.5rem !important;
  }
  .SliderTile_title__RUCpX {
    font-size: 1.35rem !important;
  }
  .SliderTile_hoverBlock__7jPqj {
    font-size: 0.9rem !important;
    gap: 0.75rem !important;
  }
  .ContactModuleTile_main__soX9k {
    height: auto !important;
    padding: 3rem var(--global-padding-x) !important;
  }
}

/* N. Drawer Menu Overlay Screen-Width for Viewports < 1024px */
@media (max-width: 1023px) {
  .Menu_menuOverlay__U6NCq {
    width: 100vw !important;
    max-width: 100vw !important;
  }
}

/* =====================================================================
   O. iPad Sidebar Comprehensive Optimizations
   Covers all iPad generations:
   - iPad mini (1-6): 744×1133 / 768×1024
   - iPad (1-10): 768×1024 / 820×1180
   - iPad Air (1-5): 768×1024 / 820×1180
   - iPad Pro 9.7": 768×1024
   - iPad Pro 10.5": 834×1112
   - iPad Pro 11" (1-4): 834×1194
   - iPad Pro 12.9" (1-6): 1024×1366
   - iPad Pro 13" M4: 1032×1376
   ===================================================================== */

/* 1. iPad Pro 12.9" + 13" in PORTRAIT (1024px–1376px wide, portrait)
      These fall into the desktop breakpoint by width but are iPads in portrait.
      Force full-screen drawer so it matches every other iPad. */
@media (min-width: 1024px) and (max-width: 1399px) and (orientation: portrait) {
  .Menu_menuOverlay__U6NCq {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
  }

  /* Drawer_header height must match the navbar at this breakpoint */
  .Drawer_header {
    height: 80px !important;
  }
  .Navbar_menuClose {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    min-height: 80px !important;
  }
}

/* 2. ALL iPads — Portrait mode (768px–1399px, portrait)
      Generous vertical link padding & font size for seated viewing distance */
@media (min-width: 744px) and (max-width: 1399px) and (orientation: portrait) {
  .Menu_menuOverlay__U6NCq {
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
  }

  /* Links area: taller rows for easy tapping */
  .Drawer_linksWrapper {
    padding: 3rem 2.5rem !important;
  }

  .Drawer_linkItem {
    padding: 1rem 0 !important;
    font-size: 1.2rem !important;
  }

  /* Dropdown sub-links */
  .Drawer_dropdownMenu a {
    font-size: 1rem !important;
    padding: 0.55rem 0 !important;
  }

  /* Footer: more breathing room */
  .Drawer_footer {
    padding: 2.5rem !important;
  }

  .Drawer_desc {
    font-size: 0.9rem !important;
    margin-bottom: 1.75rem !important;
    line-height: 1.5 !important;
  }
}

/* 3. ALL iPads — Landscape mode (768px–1399px height, landscape)
      Height is reduced (e.g. 768px on iPad Pro 12.9" landscape),
      so compact everything to prevent vertical overflow */
@media (min-width: 768px) and (max-width: 1399px) and (orientation: landscape) {
  .Menu_menuOverlay__U6NCq {
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
  }

  /* Compact link rows so all links + footer fit inside screen height */
  .Drawer_linksWrapper {
    padding: 1.25rem 2rem !important;
  }

  .Drawer_linkItem {
    padding: 0.6rem 0 !important;
    font-size: 1.05rem !important;
  }

  /* Sub-links compact */
  .Drawer_dropdownMenu a {
    font-size: 0.9rem !important;
    padding: 0.35rem 0 !important;
  }

  /* Compact footer */
  .Drawer_footer {
    padding: 1.25rem 2rem !important;
  }

  .Drawer_desc {
    font-size: 0.82rem !important;
    margin-bottom: 1rem !important;
    line-height: 1.35 !important;
  }

  /* Contact button compact */
  .Drawer_contactBtn {
    padding: 0.75rem 1rem !important;
    font-size: 11px !important;
  }
}

/* 4. iPad mini 6 portrait specific (744px width)
      Narrowest iPad — tighten horizontal padding slightly */
@media (min-width: 744px) and (max-width: 767px) and (orientation: portrait) {
  .Drawer_linksWrapper {
    padding: 2.5rem 2rem !important;
  }
  .Drawer_footer {
    padding: 2rem !important;
  }
}

/* 5. Short landscape iPads (height ≤ 900px, landscape)
      iPad mini / standard iPad landscape: only ~768px tall.
      Further reduce vertical spacing to prevent footer cutoff. */
@media (max-height: 900px) and (orientation: landscape) and (min-width: 768px) {
  .Drawer_linksWrapper {
    padding: 1rem 2rem !important;
  }

  .Drawer_linkItem {
    padding: 0.5rem 0 !important;
    font-size: 1rem !important;
  }

  .Drawer_dropdownMenu.open {
    max-height: 200px !important;
    margin-top: 0.5rem !important;
  }

  .Drawer_footer {
    padding: 1rem 2rem !important;
  }

  .Drawer_desc {
    display: none !important; /* Hide description on very short landscape to save space */
  }
}

/* Legal and utility routes */
.LegalPage_main {
  padding-top: 160px;
  padding-bottom: clamp(5rem, 9vw, 8rem);
  background-color: var(--color-white);
}

.LegalPage_shell {
  max-width: 980px;
  margin: 0 auto;
  padding-left: var(--global-padding-x);
  padding-right: var(--global-padding-x);
}

.LegalPage_label {
  color: var(--color-primary-dark);
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  margin-bottom: 1.25rem;
  text-transform: uppercase;
}

.LegalPage_title {
  color: var(--color-primary-dark);
  font-size: clamp(3rem, 7vw, 6rem);
  font-weight: 500;
  line-height: 0.98;
  margin-bottom: 1.5rem;
  max-width: 860px;
}

.LegalPage_intro {
  color: var(--color-gray-500);
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  line-height: 1.55;
  margin-bottom: clamp(3rem, 6vw, 5rem);
  max-width: 780px;
}

.LegalPage_section {
  border-top: 1px solid rgba(0, 90, 89, 0.18);
  display: grid;
  gap: 1.5rem;
  grid-template-columns: minmax(180px, 0.36fr) 1fr;
  padding: 2rem 0;
}

.LegalPage_section h2 {
  color: var(--color-primary-dark);
  font-size: clamp(1.2rem, 2vw, 1.65rem);
  font-weight: 500;
}

.LegalPage_section p,
.LegalPage_section li {
  color: var(--color-gray-500);
  font-size: 1rem;
  line-height: 1.65;
}

.LegalPage_section p + p,
.LegalPage_section ul + p,
.LegalPage_section p + ul {
  margin-top: 1rem;
}

.LegalPage_section ul {
  margin-left: 1.1rem;
}

.LegalPage_action {
  align-items: center;
  background-color: var(--color-support-cream);
  display: flex;
  gap: 1.5rem;
  justify-content: space-between;
  margin-top: clamp(3rem, 6vw, 5rem);
  padding: clamp(2rem, 5vw, 4rem);
}

.LegalPage_actionText {
  color: var(--color-primary-dark);
  font-size: clamp(1.4rem, 2.6vw, 2.1rem);
  font-weight: 500;
  line-height: 1.15;
  max-width: 600px;
}

@media (max-width: 760px) {
  .LegalPage_main {
    padding-top: 130px;
  }

  .LegalPage_section {
    grid-template-columns: 1fr;
  }

  .LegalPage_action {
    align-items: flex-start;
    flex-direction: column;
  }
}

