/* ==========================================================================

   Appellate Tribunal - Modern Corporate Government Portal

   Department of Revenue, Ministry of Finance, Government of India

   ========================================================================== */



/* --------------------------------------------------------------------------

   1. CSS Custom Properties / Design Tokens

   -------------------------------------------------------------------------- */

:root {

  --site-title-font-size: 16px;

  --site-content-font-size: 14px;



  /* Brand Primary Colors (Deep Navy / Corporate Blue) */

  --primary-950: #29136C;

  --primary-850: #0f203c;

  --primary-800: #142b52;

  --primary-700: #1d3e75;

  --primary-600: #29136C;

  --primary-500: #29136C;

  --primary-400: #29136C;

  --primary-100: #dbeafe;

  --primary-50: #eff6ff;



  /* Accent Colors (Refined Gold / Saffron & Tech Teal) */

  --accent-gold: #c59a3f;

  --accent-gold-hover: #b0872e;

  --accent-gold-light: #fdf8eb;

  --accent-gold-border: #e9d19a;

  --accent-teal: #0ea5e9;

  --accent-emerald: #10b981;

  --accent-amber: #f59e0b;



  /* Neutral Tones */

  --bg-body: #ffffff;

  --bg-surface: #ffffff;

  --bg-subtle: #e1e6eb;

  --bg-muted: #f1f5f9;

  --bg-dark: #0b172a;

  --bg-dark-surface: #112240;

  --bg-dark-subtle: #172d54;



  /* Text Colors */

  --text-main: #0f172a;

  --text-muted: #475569;

  --text-subtle: #64748b;

  --text-light: #94a3b8;

  --text-white: #ffffff;

  --text-white-subtle: #cbd5e1;



  /* Borders & Dividers */

  --border-subtle: #e2e8f0;

  --border-light: #cbd5e1;

  --border-dark: #1e365d;

  --border-gold: rgba(197, 154, 63, 0.4);



  /* Shadows */

  --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);

  --shadow-sm: 0 4px 6px -1px rgba(15, 23, 42, 0.07), 0 2px 4px -2px rgba(15, 23, 42, 0.05);

  --shadow-md: 0 10px 15px -3px rgba(15, 23, 42, 0.08), 0 4px 6px -4px rgba(15, 23, 42, 0.04);

  --shadow-lg: 0 20px 25px -5px rgba(15, 23, 42, 0.1), 0 8px 10px -6px rgba(15, 23, 42, 0.04);

  --shadow-xl: 0 25px 50px -12px rgba(15, 23, 42, 0.18);

  --shadow-glow: 0 0 35px rgba(37, 99, 235, 0.25);

  --shadow-gold-glow: 0 0 25px rgba(197, 154, 63, 0.25);



  /* Border Radii */

  --radius-sm: 6px;

  --radius-md: 10px;

  --radius-lg: 16px;

  --radius-xl: 24px;

  --radius-full: 9999px;



  /* Typography */

  --font-family-base: 'Poppins', sans-serif;

  --font-heading: 'Poppins', sans-serif;

  --font-family-heading: 'Poppins', sans-serif;

  --font-size-base: 1rem;



  /* Transitions */

  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);

  --transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);

  --transition-smooth: 350ms cubic-bezier(0.16, 1, 0.3, 1);

}



/* High Contrast & Dark Mode Accessibility Tokens */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) {

  --bg-body: #121212;

  --bg-surface: #1e1e1e;

  --bg-subtle: #181818;

  --bg-muted: #252525;

  --text-main: #f5f5f5;

  --text-muted: #cbd5e1;

  --text-subtle: #94a3b8;

  --text-light: #64748b;

  --border-subtle: #383838;

  --border-light: #475569;

  --primary-950: #0a0a0a;

  --primary-800: #1a1a1a;

  --primary-700: #2563eb;

  --primary-600: #60a5fa;

  --primary-500: #3b82f6;

  --primary-50: #1e293b;

  --accent-gold: #fde047;

  --accent-gold-hover: #facc15;

  --accent-gold-light: #252525;

  --accent-gold-border: #854d0e;

}



/* Font Size Scaling */

body.font-size-sm {

  font-size: 14px;

}



body.font-size-md {

  font-size: 16px;

}



body.font-size-lg {

  font-size: 18px;

}



/* --------------------------------------------------------------------------

   2. Base & Reset

   -------------------------------------------------------------------------- */

*,

*::before,

*::after {

  box-sizing: border-box;

}



html {

  scroll-behavior: smooth;

  font-size: 16px;

}



button, input, optgroup, select, textarea {

  font-family: var(--font-family-base);

}



body {

  font-family: var(--font-family-base);

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-main);

  background-color: var(--bg-body);

  line-height: 1.65;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

  overflow-x: hidden;

}



h1,

h2,

h3,

h4,

h5,

h6 {

  font-family: var(--font-family-heading);

  color: var(--text-main);

  font-weight: 700;

  letter-spacing: -0.02em;

  line-height: 1.25;

}



p {

  margin-bottom: 1rem;

  color: var(--text-muted);

}



a {

  color: var(--primary-600);

  text-decoration: none;

  transition: color var(--transition-fast);

}



a:hover {

  color: var(--primary-700);

}



img,

svg {

  max-width: 100%;

  height: auto;

  vertical-align: middle;

}



/* Skip link for keyboard accessibility */

.skip-to-content {

  position: absolute;

  top: -100px;

  left: 1rem;

  background: var(--accent-gold);

  color: #000;

  padding: 0.75rem 1.5rem;

  font-weight: 600;

  z-index: 99999;

  border-radius: var(--radius-sm);

  box-shadow: var(--shadow-lg);

  transition: top var(--transition-fast);

}



.skip-to-content:focus {

  top: 1rem;

}



/* Focus styles for keyboard accessibility */

:focus-visible {

  outline: 3px solid var(--accent-gold);

  outline-offset: 2px;

}



/* --------------------------------------------------------------------------

   3. Utility Classes & Layout

   -------------------------------------------------------------------------- */

.section-padding {

  padding-top: 5.5rem;

  padding-bottom: 5.5rem;

}



.section-padding-sm {

  padding-top: 3.5rem;

  padding-bottom: 3.5rem;

}



.section-eyebrow {

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  color: var(--primary-600);

  background: var(--primary-50);

  padding: 0.35rem 0.85rem;

  border-radius: var(--radius-full);

  margin-bottom: 1rem;

  border: 1px solid rgba(37, 99, 235, 0.15);

}



.section-eyebrow.gold {

  color: var(--accent-gold);

  background: rgba(197, 154, 63, 0.12);

  border-color: rgba(197, 154, 63, 0.3);

}



.section-heading-lg {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 800;

  color: var(--text-main);

  margin-bottom: 1rem;

}



.section-lead {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  max-width: 680px;

  line-height: 1.6;

}



/* Section Background Themes */

.bg-theme-white {

  background-color: #ffffff;

}



.bg-theme-subtle {

  background-color: var(--bg-subtle);

}



.bg-theme-muted {

  background-color: var(--bg-muted);

}



.bg-theme-dark {

  background-color: var(--primary-950);

  color: var(--text-white);

}



.bg-theme-dark h1,

.bg-theme-dark h2,

.bg-theme-dark h3,

.bg-theme-dark h4 {

  color: var(--text-white);

}



.bg-theme-dark p {

  color: var(--text-white-subtle);

}



/* --------------------------------------------------------------------------

   4. Government Utility Top Strip

   -------------------------------------------------------------------------- */

.gov-utility-strip {

  background-color: var(--primary-950);

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-white-subtle);

  padding: 0.35rem 0;

  position: relative;

  z-index: 1030;

}



.gov-brand-links {

  display: flex;

  align-items: center;

  gap: 0.6rem;

  flex-wrap: wrap;

}



.gov-flag-icon {

  width: 18px;

  height: 12px;

  border-radius: 2px;

}



.gov-brand-links span {

  opacity: 0.85;

}



.gov-brand-links a {

  color: var(--text-white-subtle);

  font-weight: 500;

}



.gov-brand-links a:hover {

  color: #ffffff;

  text-decoration: underline;

}



.utility-controls {

  display: flex;

  align-items: center;

  justify-content: flex-end;

  gap: 1rem;

  flex-wrap: wrap;

}



.accessibility-btn-group {

  display: inline-flex;

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.12);

  border-radius: var(--radius-sm);

  padding: 1px;

}



.btn-acc {

  background: transparent;

  border: none;

  color: var(--text-white-subtle);

  padding: 0.15rem 0.45rem;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  border-radius: 3px;

  cursor: pointer;

  transition: all var(--transition-fast);

}



.btn-acc:hover,

.btn-acc.active {

  background: rgba(255, 255, 255, 0.2);

  color: #ffffff;

}



.btn-theme-toggle {

  background: transparent;

  border: 1px solid rgba(255, 255, 255, 0.12);

  color: var(--text-white-subtle);

  padding: 0.2rem 0.5rem;

  border-radius: var(--radius-sm);

  font-size: var(--site-content-font-size, 14px);

  cursor: pointer;

}



.btn-theme-toggle:hover {

  background: rgba(255, 255, 255, 0.15);

  color: #fff;

}



.lang-switch {

  color: var(--accent-gold);

  font-weight: 600;

  border: 1px solid rgba(197, 154, 63, 0.4);

  padding: 0.15rem 0.5rem;

  border-radius: var(--radius-sm);

  background: rgba(197, 154, 63, 0.1);

  cursor: pointer;

}



.lang-switch:hover {

  background: var(--accent-gold);

  color: #000;

}



/* --------------------------------------------------------------------------

   5. Main Navigation Header

   -------------------------------------------------------------------------- */

.main-header {

  background-color: #ffffff;

  border-bottom: 1px solid var(--border-subtle);

  position: sticky;

  top: 0;

  z-index: 1020;

  transition: box-shadow var(--transition-base), background-color var(--transition-base);

}



.main-header.scrolled {

  box-shadow: var(--shadow-md);

}



.navbar-brand-wrapper {

  display: inline-flex;

  align-items: center;

  gap: 0.95rem;

  text-decoration: none;

  background: transparent !important;

  border: none !important;

  box-shadow: none !important;

  padding: 0;

  max-width: 100%;

}



.header-emblem-wrap {

  display: flex;

  align-items: center;

  justify-content: center;

  flex-shrink: 0;

}



.header-emblem {

  height: 62px;

  width: auto;

  max-width: 50px;

  object-fit: contain;

  display: block;

}



.emblem-dark {

  display: none !important;

}



.emblem-light {

  display: block !important;

}



.header-brand-text {

  display: flex;

  flex-direction: column;

  justify-content: center;

  line-height: 1.25;

}



.dept-title-main {

  font-family: var(--font-family-heading, 'Poppins', sans-serif);

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: #061a33;

  letter-spacing: -0.01em;

  margin-bottom: 0.15rem;

  line-height: 1.25;

}



.dept-title-sub {

  font-family: var(--font-family-base, 'Poppins', sans-serif);

  font-size: var(--site-title-font-size, 16px);

  font-weight: 600;

  color: #1e3a5f;

  margin-bottom: 0.12rem;

  line-height: 1.25;

}



.dept-title-meta {

  font-family: var(--font-family-base, 'Poppins', sans-serif);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 500;

  color: #556987;

  line-height: 1.25;

}



@media (max-width: 991.98px) {

  .dept-title-main {

    font-size: var(--site-title-font-size, 16px);

  }

  .dept-title-sub {

    font-size: var(--site-title-font-size, 16px);

  }

  .dept-title-meta {

    font-size: var(--site-content-font-size, 14px);

  }

  .header-emblem {

    height: 52px;

  }

}



@media (max-width: 575.98px) {

  .navbar-brand-wrapper {

    gap: 0.65rem;

  }

  .dept-title-main {

    font-size: var(--site-title-font-size, 16px);

  }

  .dept-title-sub {

    font-size: var(--site-title-font-size, 16px);

  }

  .dept-title-meta {

    font-size: var(--site-content-font-size, 14px);

  }

  .header-emblem {

    height: 44px;

  }

}



/* Navigation Links */

.navbar-nav .nav-link {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: #1e293b;

  padding: 0.6rem 0.4rem !important;

  border-radius: var(--radius-sm);

  transition: all var(--transition-fast);

  white-space: nowrap !important;

  word-break: keep-all !important;

}



.navbar-nav .nav-link:hover,

.navbar-nav .nav-link.active {

  color: var(--primary-600);

  /* background: var(--primary-50); */

}



/* Direct Child Dropdown on Desktop Hover */

@media (min-width: 992px) {

  .nav-item.dropdown:hover > .dropdown-menu {

    display: block;

    animation: fadeInDown 200ms ease;

  }

}



.dropdown-menu {

  border: 1px solid var(--border-subtle);

  box-shadow: var(--shadow-lg);

  border-radius: var(--radius-md);

  padding: 0.5rem;

  min-width: 220px;

}



.dropdown-item {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 500;

  color: var(--text-muted);

  padding: 0.5rem 0.85rem;

  border-radius: var(--radius-sm);

  transition: all var(--transition-fast);

}



.dropdown-item:hover {

  background-color: var(--primary-50);

  color: var(--primary-600);

}



/* ==========================================================================

   Multi-Level Submenu & Related Offices Dropdown

   ========================================================================== */

.dropdown-submenu {

  position: relative;

}



.dropdown-submenu-toggle {

  cursor: pointer;

  user-select: none;

}



.submenu-arrow {

  display: inline-block;

  transition: transform var(--transition-fast), color var(--transition-fast);

  color: var(--text-subtle);

}



/* Desktop Hover & Positioning */

@media (min-width: 992px) {

  .dropdown-submenu > .dropdown-submenu-menu {

    position: absolute;

    top: 0;

    left: 100%;

    margin-top: -6px;

    margin-left: 3px;

    min-width: 170px;

    display: none;

    z-index: 1050;

    border-radius: var(--radius-md);

    box-shadow: 0 16px 36px -4px rgba(15, 23, 42, 0.16), 0 4px 12px -2px rgba(0, 0, 0, 0.08);

    border: 1px solid var(--border-subtle);

    background-color: #ffffff;

    padding: 0.5rem;

  }



  /* Invisible hover bridge: covers the gap between Related Offices trigger and nested menu */

  .dropdown-submenu > .dropdown-submenu-menu::before {

    content: '';

    position: absolute;

    top: -12px;

    bottom: -12px;

    left: -18px;

    width: 26px;

    background: transparent;

    pointer-events: auto;

    z-index: 1;

  }



  /* Reveal submenu when parent item is hovered or focused */

  .dropdown-submenu:hover > .dropdown-submenu-menu,

  .dropdown-submenu:focus-within > .dropdown-submenu-menu,

  .dropdown-submenu > .dropdown-submenu-menu.show {

    display: block;

    animation: fadeInSubmenu 180ms cubic-bezier(0.16, 1, 0.3, 1) forwards;

  }



  .dropdown-submenu:hover > .dropdown-submenu-toggle,

  .dropdown-submenu:focus-within > .dropdown-submenu-toggle {

    background-color: var(--primary-50);

    color: var(--primary-600);

  }



  .dropdown-submenu:hover > .dropdown-submenu-toggle .submenu-arrow,

  .dropdown-submenu:focus-within > .dropdown-submenu-toggle .submenu-arrow {

    transform: translateX(3px);

    color: var(--primary-600);

  }

}



@keyframes fadeInSubmenu {

  from {

    opacity: 0;

    transform: translateX(-6px);

  }

  to {

    opacity: 1;

    transform: translateX(0);

  }

}



/* Office items in submenu */

.dropdown-submenu-menu .dropdown-item {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 500;

  color: var(--text-muted);

  padding: 0.5rem 0.85rem;

  border-radius: var(--radius-sm);

  transition: all var(--transition-fast);

}



.dropdown-submenu-menu .dropdown-item.office-link {

  color: var(--text-muted);

  cursor: pointer;

}



.dropdown-submenu-menu .dropdown-item.office-link:hover,

.dropdown-submenu-menu .dropdown-item.office-link:focus {

  background-color: var(--primary-50);

  color: var(--primary-600);

}



.dropdown-submenu-menu .dropdown-item.office-pending {

  cursor: default;

  color: var(--text-muted);

  user-select: none;

}



.dropdown-submenu-menu .dropdown-item.office-pending:hover,

.dropdown-submenu-menu .dropdown-item.office-pending:focus {

  background-color: var(--primary-50);

  color: var(--primary-600);

}



/* Mobile & Offcanvas Responsive Nested Dropdown */

@media (max-width: 991.98px) {

  .dropdown-submenu > .dropdown-submenu-menu {

    display: none;

    position: static;

    float: none;

    box-shadow: none;

    border: 1px solid var(--border-subtle);

    background-color: #f8fafc;

    margin: 0.4rem 0.5rem 0.5rem 1.25rem;

    border-radius: var(--radius-sm);

    padding: 0.25rem 0;

  }



  .dropdown-submenu.open > .dropdown-submenu-menu,

  .dropdown-submenu > .dropdown-submenu-menu.show {

    display: block;

    animation: fadeInDown 150ms ease;

  }



  .dropdown-submenu.open > .dropdown-submenu-toggle .submenu-arrow,

  .dropdown-submenu > .dropdown-submenu-toggle[aria-expanded="true"] .submenu-arrow {

    transform: rotate(90deg);

  }

}



.btn-header-cta {

  background: linear-gradient(135deg, var(--primary-800) 0%, var(--primary-950) 100%);

  color: #ffffff !important;

  font-weight: 600;

  font-size: var(--site-content-font-size, 14px);

  padding: 0.55rem 1.15rem;

  border-radius: var(--radius-md);

  border: 1px solid var(--border-gold);

  box-shadow: var(--shadow-sm);

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  transition: all var(--transition-base);

}



.btn-header-cta:hover {

  background: linear-gradient(135deg, var(--primary-700) 0%, var(--primary-800) 100%);

  color: #ffffff;

  transform: translateY(-1px);

  box-shadow: var(--shadow-md);

}



.btn-search-trigger {

  width: 38px;

  height: 38px;

  border-radius: var(--radius-full);

  border: 1px solid var(--border-subtle);

  background: var(--bg-subtle);

  color: var(--text-muted);

  display: flex;

  align-items: center;

  justify-content: center;

  cursor: pointer;

  transition: all var(--transition-fast);

}



.btn-search-trigger:hover {

  background: var(--primary-50);

  color: var(--primary-600);

  border-color: var(--primary-400);

}



/* --------------------------------------------------------------------------

   5.5. Tribunal Image Slider (Post-Navigation Carousel)

   -------------------------------------------------------------------------- */

.tribunal-hero-slider {

  position: relative;

  background-color: var(--primary-950);

  overflow: hidden;

  border-bottom: 1px solid rgba(255, 255, 255, 0.1);

}



.tribunal-carousel .carousel-item {

  height: 580px;

  background-color: var(--primary-950);

  position: relative;

}



@media (max-width: 991.98px) {

  .tribunal-carousel .carousel-item {

    height: 480px;

  }

}



@media (max-width: 575.98px) {

  .tribunal-carousel .carousel-item {

    height: 420px;

  }

}



.carousel-slide-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;

  transform: scale(1.02);

  transition: transform 7s cubic-bezier(0.25, 1, 0.5, 1);

}



.carousel-item.active .carousel-slide-img {

  transform: scale(1.08);

}



.carousel-overlay {

  position: absolute;

  inset: 0;

  background: linear-gradient(90deg,

      rgba(6, 14, 26, 0.90) 0%,

      rgba(11, 23, 42, 0.68) 48%,

      rgba(15, 32, 60, 0.20) 100%);

  z-index: 1;

}



.carousel-caption-corporate {

  position: absolute;

  inset: 0;

  display: flex;

  align-items: center;

  z-index: 2;

  text-align: left;

  padding: 2rem 0;

}



.slide-content-wrap {

  max-width: 680px;

}



.slide-badge {

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  background: rgba(197, 154, 63, 0.2);

  border: 1px solid rgba(197, 154, 63, 0.45);

  color: var(--accent-gold);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  padding: 0.35rem 0.85rem;

  border-radius: var(--radius-full);

  margin-bottom: 1.25rem;

  backdrop-filter: blur(8px);

}



.slide-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 800;

  color: #ffffff;

  line-height: 1.18;

  letter-spacing: -0.025em;

  margin-bottom: 1rem;

  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);

}



.slide-desc {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-white-subtle);

  line-height: 1.6;

  margin-bottom: 1.75rem;

  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);

}



.carousel-nav-btn {

  width: 48px;

  height: 48px;

  border-radius: 50%;

  background: rgba(15, 23, 42, 0.6);

  border: 1px solid rgba(255, 255, 255, 0.2);

  backdrop-filter: blur(10px);

  color: #ffffff;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1.25rem;

  transition: all var(--transition-base);

  top: 50%;

  transform: translateY(-50%);

  opacity: 0.85;

}



.carousel-nav-btn:hover {

  background: var(--primary-600);

  border-color: var(--primary-400);

  color: #ffffff;

  opacity: 1;

}



.carousel-indicators-corporate {

  display: none !important;

}



/* --------------------------------------------------------------------------

   5.6. Important News Ticker Strip (Post-Slider)

   -------------------------------------------------------------------------- */

.news-ticker-strip {

  background: linear-gradient(90deg, var(--primary-950) 0%, var(--primary-950) 100%);

  border-bottom: 1px solid rgba(197, 154, 63, 0.3);

  color: #ffffff;

  padding: 0.55rem 0;

  position: relative;

  z-index: 25;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);

}



.ticker-wrap {

  display: flex;

  align-items: center;

  gap: 1.25rem;

  overflow: hidden;

}



.ticker-label-badge {

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  background: linear-gradient(135deg, var(--accent-gold) 0%, var(--accent-gold-hover) 100%);

  color: #000000;

  font-family: var(--font-family-heading);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 800;

  letter-spacing: 0.06em;

  text-transform: uppercase;

  padding: 0.35rem 0.85rem;

  border-radius: var(--radius-sm);

  white-space: nowrap;

  flex-shrink: 0;

  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);

}



.ticker-pulse-dot {

  width: 7px;

  height: 7px;

  background-color: #dc2626;

  border-radius: 50%;

  box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7);

  animation: pulseRed 1.8s infinite;

}



@keyframes pulseRed {

  0% {

    transform: scale(0.95);

    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7);

  }



  70% {

    transform: scale(1);

    box-shadow: 0 0 0 6px rgba(220, 38, 38, 0);

  }



  100% {

    transform: scale(0.95);

    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0);

  }

}



.ticker-content-viewport {

  flex-grow: 1;

  overflow: hidden;

  position: relative;

  height: 26px;

  display: flex;

  align-items: center;

}



.ticker-items-list {

  display: flex;

  align-items: center;

  gap: 3rem;

  white-space: nowrap;

  animation: tickerScroll 32s linear infinite;

}



.ticker-items-list:hover,

.news-ticker-strip.paused .ticker-items-list {

  animation-play-state: paused;

}



@keyframes tickerScroll {

  0% {

    transform: translateX(0);

  }



  100% {

    transform: translateX(-50%);

  }

}



.ticker-item-link {

  color: var(--text-white-subtle);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 500;

  text-decoration: none;

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  transition: color var(--transition-fast);

}



.ticker-item-link:hover {

  color: var(--accent-gold);

}



.ticker-date-tag {

  background: rgba(255, 255, 255, 0.1);

  color: #93c5fd;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  font-family: monospace;

  padding: 0.15rem 0.45rem;

  border-radius: 3px;

}



.ticker-controls-group {

  display: flex;

  align-items: center;

  gap: 0.4rem;

  flex-shrink: 0;

}



.btn-ticker-ctrl {

  background: rgba(255, 255, 255, 0.08);

  border: 1px solid rgba(255, 255, 255, 0.15);

  color: var(--text-white-subtle);

  width: 26px;

  height: 26px;

  border-radius: 4px;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: var(--site-content-font-size, 14px);

  cursor: pointer;

  transition: all var(--transition-fast);

}



.btn-ticker-ctrl:hover {

  background: rgba(255, 255, 255, 0.2);

  color: #ffffff;

}



/* --------------------------------------------------------------------------

   6. Corporate Hero Section

   -------------------------------------------------------------------------- */

.hero-corporate {

 background:

    radial-gradient(circle at 85% 20%, rgba(81, 50, 160, 0.22) 0%, transparent 50%),

    radial-gradient(circle at 10% 80%, rgba(123, 75, 196, 0.12) 0%, transparent 40%),

    linear-gradient(160deg, #29136C 0%, #1F0F50 60%, #160B38 100%);

  color: #ffffff;

  position: relative;

  overflow: hidden;

  padding-top: 4.5rem;

  padding-bottom: 5.5rem;

}



/* Subtle blueprint / grid overlay */

.hero-corporate::before {

  content: '';

  position: absolute;

  inset: 0;

  background-image:

    linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),

    linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);

  background-size: 40px 40px;

  opacity: 0.7;

  pointer-events: none;

}



.hero-content {

  position: relative;

  z-index: 2;

}



.hero-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 800;

  line-height: 1.15;

  color: #ffffff;

  margin-bottom: 1.25rem;

  letter-spacing: -0.03em;

}



.hero-title-gradient {

  background: linear-gradient(135deg, #ffffff 30%, #93c5fd 80%, var(--accent-gold) 100%);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

}



.hero-description {

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.65;

  color: var(--text-white-subtle);

  margin-bottom: 2rem;

  max-width: 580px;

}



.hero-cta-group {

  display: flex;

  align-items: center;

  gap: 1rem;

  flex-wrap: wrap;

  margin-bottom: 2rem;

}



.btn-hero-primary {

  background: linear-gradient(135deg, var(--primary-600) 0%, var(--primary-700) 100%);

  color: #ffffff;

  font-weight: 600;

  font-size: var(--site-content-font-size, 14px);

  padding: 0.85rem 1.75rem;

  border-radius: var(--radius-md);

  box-shadow: 0 10px 20px -5px rgba(37, 99, 235, 0.5);

  border: 1px solid rgba(255, 255, 255, 0.2);

  display: inline-flex;

  align-items: center;

  gap: 0.6rem;

  transition: all var(--transition-base);

}



.btn-hero-primary:hover {

  color: #ffffff;

  background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%);

  transform: translateY(-2px);

  box-shadow: 0 15px 25px -5px rgba(37, 99, 235, 0.65);

}



.btn-hero-secondary {

  background: rgba(255, 255, 255, 0.08);

  backdrop-filter: blur(10px);

  color: #ffffff;

  font-weight: 600;

  font-size: var(--site-content-font-size, 14px);

  padding: 0.85rem 1.75rem;

  border-radius: var(--radius-md);

  border: 1px solid rgba(255, 255, 255, 0.18);

  display: inline-flex;

  align-items: center;

  gap: 0.6rem;

  transition: all var(--transition-base);

}



.btn-hero-secondary:hover {

  background: rgba(255, 255, 255, 0.16);

  color: #ffffff;

  border-color: rgba(255, 255, 255, 0.35);

  transform: translateY(-2px);

}



.hero-trust-badge {

  display: flex;

  align-items: center;

  gap: 0.75rem;

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-white-subtle);

  border-top: 1px solid rgba(255, 255, 255, 0.12);

  padding-top: 1.25rem;

  max-width: 500px;

}



.hero-trust-badge i {

  color: var(--accent-gold);

  font-size: 1.1rem;

}



/* Hero Right Visual: High-Tech Tribunal Interactive Card */

.hero-visual-card {

  background: rgba(17, 34, 64, 0.85);

  backdrop-filter: blur(16px);

  border: 1px solid rgba(255, 255, 255, 0.15);

  border-radius: var(--radius-lg);

  padding: 2rem;

  box-shadow: var(--shadow-xl), 0 0 40px rgba(15, 23, 42, 0.6);

  position: relative;

  overflow: hidden;

}



.hero-visual-card::after {

  content: '';

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  height: 3px;

  background: linear-gradient(90deg, var(--accent-gold) 0%, var(--primary-500) 50%, var(--accent-teal) 100%);

}



.digital-seal-badge {

  display: flex;

  align-items: center;

  justify-content: space-between;

  border-bottom: 1px solid rgba(255, 255, 255, 0.1);

  padding-bottom: 1.25rem;

  margin-bottom: 1.5rem;

}



.seal-pill {

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  background: rgba(16, 185, 129, 0.15);

  color: #34d399;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  padding: 0.35rem 0.75rem;

  border-radius: var(--radius-full);

  border: 1px solid rgba(16, 185, 129, 0.3);

}



.seal-pulse {

  width: 8px;

  height: 8px;

  border-radius: 50%;

  background-color: #34d399;

  box-shadow: 0 0 0 0 rgba(52, 211, 153, 0.7);

  animation: pulseGreen 2s infinite;

}



@keyframes pulseGreen {

  0% {

    transform: scale(0.95);

    box-shadow: 0 0 0 0 rgba(52, 211, 153, 0.7);

  }



  70% {

    transform: scale(1);

    box-shadow: 0 0 0 8px rgba(52, 211, 153, 0);

  }



  100% {

    transform: scale(0.95);

    box-shadow: 0 0 0 0 rgba(52, 211, 153, 0);

  }

}



.hero-card-stat-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 1rem;

  margin-bottom: 1.5rem;

}



.hero-mini-stat {

  background: rgba(255, 255, 255, 0.04);

  border: 1px solid rgba(255, 255, 255, 0.08);

  border-radius: var(--radius-md);

  padding: 1rem;

  transition: background var(--transition-fast);

}



.hero-mini-stat:hover {

  background: rgba(255, 255, 255, 0.08);

}



.hero-mini-stat-label {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-white-subtle);

  text-transform: uppercase;

  letter-spacing: 0.05em;

  margin-bottom: 0.25rem;

}



.hero-mini-stat-val {

  font-size: 1.35rem;

  font-weight: 800;

  color: #ffffff;

  font-family: var(--font-family-heading);

}



.hero-action-box {

  background: linear-gradient(135deg, rgba(37, 99, 235, 0.15) 0%, rgba(197, 154, 63, 0.1) 100%);

  border: 1px solid rgba(255, 255, 255, 0.15);

  border-radius: var(--radius-md);

  padding: 1.25rem;

}



/* --------------------------------------------------------------------------

   7. Horizontal Trust / Statistics Strip

   -------------------------------------------------------------------------- */

.trust-stats-strip {

  background: #ffffff;

  border-bottom: 1px solid var(--border-subtle);

  position: relative;

  z-index: 10;

  box-shadow: var(--shadow-sm);

}



.stat-item {

  padding: 1.75rem 1.25rem;

  border-right: 1px solid var(--border-subtle);

  display: flex;

  flex-direction: column;

  justify-content: center;

  transition: background var(--transition-fast);

}



.stat-item:hover {

  background-color: var(--bg-subtle);

}



.stat-item:last-child {

  border-right: none;

}



.stat-number {

  font-family: var(--font-family-heading);

  font-size: 2.2rem;

  font-weight: 800;

  color: var(--primary-950);

  line-height: 1.1;

  letter-spacing: -0.03em;

  display: flex;

  align-items: baseline;

  gap: 0.2rem;

}



.stat-number .stat-accent {

  color: var(--accent-gold);

}



.stat-label {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: var(--text-subtle);

  margin-top: 0.35rem;

  line-height: 1.3;

}



/* --------------------------------------------------------------------------

   8. Quick Services (4-Column Grid)

   -------------------------------------------------------------------------- */

.service-card-modern {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-lg);

  padding: 2rem 1.75rem;

  height: 100%;

  display: flex;

  flex-direction: column;

  position: relative;

  transition: all var(--transition-smooth);

  box-shadow: var(--shadow-sm);

  overflow: hidden;

}



.service-card-modern::before {

  content: '';

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 3px;

  background: transparent;

  transition: background var(--transition-fast);

}



.service-card-modern:hover {

  transform: translateY(-6px);

  box-shadow: var(--shadow-xl);

  border-color: rgba(37, 99, 235, 0.3);

}



.service-card-modern:hover::before {

  background: linear-gradient(90deg, var(--primary-600), var(--accent-gold));

}



.service-icon-box {

  width: 56px;

  height: 56px;

  border-radius: var(--radius-md);

  background: var(--primary-50);

  color: var(--primary-600);

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1.6rem;

  margin-bottom: 1.5rem;

  transition: all var(--transition-base);

}



.service-card-modern:hover .service-icon-box {

  background: var(--primary-600);

  color: #ffffff;

  transform: scale(1.05);

}



.service-card-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: var(--text-main);

  margin-bottom: 0.6rem;

}



.service-card-desc {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.55;

  margin-bottom: 1.5rem;

  flex-grow: 1;

}



.service-card-action {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  color: var(--primary-600);

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  transition: gap var(--transition-fast);

}



.service-card-modern:hover .service-card-action {

  gap: 0.85rem;

  color: var(--primary-700);

}



/* --------------------------------------------------------------------------

   9. About Tribunal Section & Leadership Dual Panels (Edge-to-Edge Image Layout)

   -------------------------------------------------------------------------- */

.about-tab-content-area {

  min-height: 140px;

  position: relative;

}



.about-tab-pane {

  animation: fadeInAboutPane 0.25s ease-in-out;

}



.about-tab-pane p:last-child {

  margin-bottom: 0;

}



@keyframes fadeInAboutPane {

  from {

    opacity: 0;

    transform: translateY(3px);

  }

  to {

    opacity: 1;

    transform: translateY(0);

  }

}



.about-tabs-nav {

  display: flex;

  gap: 1rem;

}



.about-tab-btn {

  flex: 1 1 0;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  padding: 0.625rem 1.25rem;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  line-height: 1.5;

  color: #29136C;

  background-color: #ffffff;

  border: 1.5px solid #29136C;

  border-radius: 0.375rem;

  cursor: pointer;

  text-decoration: none;

  transition: all 0.25s ease-in-out;

  user-select: none;

  box-shadow: 0 1px 2px rgba(41, 19, 108, 0.05);

}



.about-tab-btn:hover {

  color: #ffffff;

  background-color: #29136C;

  border-color: #29136C;

  box-shadow: 0 4px 10px rgba(41, 19, 108, 0.2);

}



.about-tab-btn.active,

.about-tab-btn[aria-selected="true"] {

  color: #ffffff;

  background-color: #29136C;

  border-color: #29136C;

  box-shadow: 0 4px 12px rgba(41, 19, 108, 0.28);

}



.about-tab-btn:focus-visible {

  outline: none;

  box-shadow: 0 0 0 0.25rem rgba(41, 19, 108, 0.35);

}



@media (max-width: 575.98px) {

  .about-tabs-nav {

    flex-direction: column;

    gap: 0.75rem;

  }

  .about-tab-btn {

    width: 100%;

  }

}



.about-leadership-wrap {

  display: flex;

  flex-direction: column;

  gap: 1.25rem;

}



.leader-dual-card {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-lg);

  padding: 0;

  display: flex;

  flex-direction: row;

  align-items: stretch;

  box-shadow: var(--shadow-sm);

  transition: all var(--transition-smooth);

  position: relative;

  overflow: hidden;

  min-height: 175px;

}



.leader-dual-card::before {

  display: none !important;

  content: none !important;

}



.leader-dual-card:hover {

  transform: translateY(-4px);

  border-color: var(--primary-400);

  box-shadow: var(--shadow-xl);

}



.leader-dual-card:hover::before {

  display: none !important;

  opacity: 0 !important;

}



.leader-dual-img-wrap {

  width: 155px;

  min-width: 155px;

  flex-shrink: 0;

  background: var(--primary-950);

  overflow: hidden;

  position: relative;

}



.leader-dual-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: top center;

  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);

  display: block;

}



.leader-dual-card:hover .leader-dual-img {

  transform: scale(1.08);

}



.leader-dual-body {

  padding: 1.35rem 1.5rem;

  display: flex;

  flex-direction: column;

  justify-content: center;

  flex-grow: 1;

}



.leader-dual-badge {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.05em;

  color: var(--primary-600);

  background: var(--primary-50);

  padding: 0.2rem 0.6rem;

  border-radius: var(--radius-full);

  display: inline-block;

  margin-bottom: 1.35rem;

  border: 1px solid rgba(37, 99, 235, 0.15);

  align-self: flex-start;

}



.leader-dual-name {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 800;

  color: var(--text-main);

  margin-bottom: 0.2rem;

  line-height: 1.25;

}



.leader-dual-role {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: var(--accent-gold-hover);

  margin-bottom: 0.45rem;

}



.leader-dual-desc {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.48;

  margin-bottom: 1.75rem;

}



.leader-dual-link {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  color: var(--primary-600);

  display: inline-flex;

  align-items: center;

  gap: 0.35rem;

  text-decoration: none;

  transition: gap var(--transition-fast);

  align-self: flex-start;

}



.leader-dual-card:hover .leader-dual-link {

  color: var(--primary-700);

  gap: 0.6rem;

}



@media (max-width: 575.98px) {

  .leader-dual-card {

    flex-direction: column;

  }



  .leader-dual-img-wrap {

    width: 100%;

    min-width: 100%;

    height: 220px;

  }



  .leader-dual-body {

    padding: 1.25rem;

  }

}



.about-visual-panel {

  background: linear-gradient(145deg, var(--primary-950) 0%, var(--primary-800) 100%);

  border-radius: var(--radius-xl);

  padding: 3rem 2.5rem;

  color: #ffffff;

  position: relative;

  overflow: hidden;

  box-shadow: var(--shadow-xl);

  border: 1px solid rgba(255, 255, 255, 0.1);

}



.about-visual-panel::before {

  content: '01';

  position: absolute;

  top: -20px;

  right: 10px;

  font-size: 10rem;

  font-weight: 900;

  font-family: var(--font-family-heading);

  color: rgba(255, 255, 255, 0.04);

  line-height: 1;

  pointer-events: none;

}



.about-feature-item {

  display: flex;

  gap: 1rem;

  align-items: flex-start;

  margin-bottom: 1.5rem;

}



.about-feature-icon {

  width: 40px;

  height: 40px;

  border-radius: var(--radius-sm);

  background: rgba(197, 154, 63, 0.15);

  border: 1px solid rgba(197, 154, 63, 0.3);

  color: var(--accent-gold);

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1.2rem;

  flex-shrink: 0;

}



/* --------------------------------------------------------------------------

   10. Key Areas of Work (01 to 06)

   -------------------------------------------------------------------------- */

.area-card-modern {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-lg);

  padding: 2rem 1.75rem;

  height: 100%;

  position: relative;

  transition: all var(--transition-smooth);

  box-shadow: var(--shadow-xs);

}



.area-card-modern:hover {

  transform: translateY(-5px);

  border-color: var(--primary-500);

  box-shadow: var(--shadow-lg);

}



.area-number {

  font-family: var(--font-family-heading);

  font-size: 1.8rem;

  font-weight: 900;

  color: var(--border-light);

  line-height: 1;

  margin-bottom: 1.25rem;

  transition: color var(--transition-fast);

}



.area-card-modern:hover .area-number {

  color: var(--accent-gold);

}



.area-card-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  margin-bottom: 0.5rem;

  color: var(--text-main);

}



.area-card-desc {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.5;

  margin-bottom: 0;

}



/* --------------------------------------------------------------------------

   11. Case Management (Dark Blue Section)

   -------------------------------------------------------------------------- */

.case-service-block {

  background: rgba(255, 255, 255, 0.04);

  border: 1px solid rgba(255, 255, 255, 0.1);

  border-radius: var(--radius-lg);

  padding: 2.25rem 2rem;

  height: 100%;

  display: flex;

  flex-direction: column;

  justify-content: space-between;

  transition: all var(--transition-smooth);

}



.case-service-block:hover {

  background: rgba(255, 255, 255, 0.08);

  border-color: var(--accent-gold);

  transform: translateY(-4px);

}



.case-service-num {

  font-family: var(--font-family-heading);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 800;

  letter-spacing: 0.1em;

  color: var(--accent-gold);

  margin-bottom: 1rem;

}



.case-service-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: #ffffff;

  margin-bottom: 0.75rem;

}



.case-service-desc {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-white-subtle);

  line-height: 1.55;

  margin-bottom: 1.75rem;

}



.case-service-link {

  color: #ffffff;

  font-weight: 700;

  font-size: var(--site-content-font-size, 14px);

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  transition: gap var(--transition-fast);

}



.case-service-block:hover .case-service-link {

  gap: 0.85rem;

  color: var(--accent-gold);

}



/* --------------------------------------------------------------------------

   12. Enterprise Case Search Interactive Panel

   -------------------------------------------------------------------------- */

.search-panel-container {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-xl);

  box-shadow: var(--shadow-xl);

  padding: 2.5rem;

  margin-top: -3.5rem;

  position: relative;

  z-index: 20;

}



.search-tabs-nav {

  display: flex;

  gap: 0.5rem;

  border-bottom: 2px solid var(--border-subtle);

  padding-bottom: 0.5rem;

  margin-bottom: 1.75rem;

  overflow-x: auto;

}



.search-tab-btn {

  background: transparent;

  border: none;

  font-family: var(--font-family-heading);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: var(--text-muted);

  padding: 0.65rem 1.25rem;

  border-radius: var(--radius-sm);

  cursor: pointer;

  transition: all var(--transition-fast);

  white-space: nowrap;

}



.search-tab-btn:hover {

  color: var(--primary-600);

  background: var(--primary-50);

}



.search-tab-btn.active {

  color: var(--primary-600);

  background: var(--primary-50);

  border-bottom: 2px solid var(--primary-600);

}



.form-control-enterprise {

  height: 52px;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-md);

  padding: 0.75rem 1.25rem;

  font-size: var(--site-content-font-size, 14px);

  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);

}



.form-control-enterprise:focus {

  border-color: var(--primary-500);

  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);

}



.btn-search-primary {

  height: 52px;

  background: var(--primary-600);

  color: #ffffff;

  font-weight: 700;

  font-size: var(--site-content-font-size, 14px);

  border-radius: var(--radius-md);

  padding: 0 1.75rem;

  border: none;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.5rem;

  transition: all var(--transition-base);

  width: max-content !important;

}



.btn-search-primary:hover {

  background: var(--primary-700);

  color: #ffffff;

}



/* Interactive Search Results Card Simulation */

.search-results-preview {

  margin-top: 1.75rem;

  border-top: 1px dashed var(--border-subtle);

  padding-top: 1.5rem;

  display: none;

}



.search-results-preview.show {

  display: block;

  animation: fadeIn 300ms ease;

}



.result-card-item {

  background: var(--bg-subtle);

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-md);

  padding: 1.25rem 1.5rem;

  margin-bottom: 1rem;

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 1rem;

  transition: all var(--transition-fast);

}



.result-card-item:hover {

  background: #ffffff;

  border-color: var(--primary-400);

  box-shadow: var(--shadow-sm);

}



/* --------------------------------------------------------------------------

   13. Today's Cause List Section

   -------------------------------------------------------------------------- */

.cause-list-container {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-lg);

  box-shadow: var(--shadow-md);

  overflow: hidden;

}



.cause-list-header {

  background: var(--primary-950);

  color: #ffffff;

  padding: 1.25rem 1.75rem;

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  gap: 1rem;

}



.cause-item-row {

  padding: 1.25rem 1.75rem;

  border-bottom: 1px solid var(--border-subtle);

  transition: background-color var(--transition-fast);

}



.cause-item-row:last-child {

  border-bottom: none;

}



.cause-item-row:hover {

  background-color: var(--primary-50);

}



.badge-bench {

  background: rgba(37, 99, 235, 0.1);

  color: var(--primary-700);

  font-weight: 700;

  font-size: var(--site-content-font-size, 14px);

  padding: 0.35rem 0.65rem;

  border-radius: var(--radius-sm);

  border: 1px solid rgba(37, 99, 235, 0.2);

}



.badge-status-scheduled {

  background: rgba(16, 185, 129, 0.12);

  color: #065f46;

  font-weight: 700;

  font-size: var(--site-content-font-size, 14px);

  padding: 0.35rem 0.65rem;

  border-radius: var(--radius-sm);

}



.badge-status-passed {

  background: rgba(245, 158, 11, 0.12);

  color: #92400e;

  font-weight: 700;

  font-size: var(--site-content-font-size, 14px);

  padding: 0.35rem 0.65rem;

  border-radius: var(--radius-sm);

}



/* --------------------------------------------------------------------------

   14. Latest Orders & Judgments Section (Circulars / Notifications List)

   -------------------------------------------------------------------------- */

.doc-filter-pills {

  display: flex;

  gap: 0.75rem;

  flex-wrap: wrap;

  margin-bottom: 2.25rem;

}



.doc-pill-btn {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  padding: 0.45rem 1.35rem;

  border-radius: var(--radius-full);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: var(--text-muted);

  cursor: pointer;

  transition: all var(--transition-fast);

  box-shadow: var(--shadow-xs);

}



.doc-pill-btn:hover,

.doc-pill-btn.active {

  background: var(--primary-950);

  color: #ffffff;

  border-color: var(--primary-950);

  box-shadow: 0 4px 12px rgba(41, 19, 108, 0.25);

}



.document-list-wrap {

  display: flex;

  flex-direction: column;

  gap: 1rem;

}



.document-item-card {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-lg);

  padding: 1.25rem 1.75rem;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 1.5rem;

  transition: all var(--transition-smooth);

  box-shadow: var(--shadow-xs);

}



.document-item-card:hover {

  transform: translateY(-2px);

  border-color: var(--primary-400);

  box-shadow: var(--shadow-md);

}



.document-content-left {

  display: flex;

  align-items: center;

  gap: 1.25rem;

  flex: 1 1 auto;

  min-width: 0;

}



.document-icon-box {

  font-size: 2.2rem;

  color: #dc2626;

  display: flex;

  align-items: center;

  justify-content: center;

  flex-shrink: 0;

  width: 44px;

}



.document-info-wrap {

  flex: 1 1 auto;

  min-width: 0;

}



.document-badge-row {

  display: flex;

  align-items: center;

  gap: 0.65rem;

  margin-bottom: 0.35rem;

  flex-wrap: wrap;

}



.doc-badge-type {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  padding: 0.2rem 0.65rem;

  border-radius: var(--radius-sm);

  display: inline-flex;

  align-items: center;

}



.doc-badge-judgments,

.doc-badge-judgment {

  background: rgba(197, 154, 63, 0.15);

  color: #92400e;

  border: 1px solid rgba(197, 154, 63, 0.35);

}



.doc-badge-orders,

.doc-badge-order {

  background: var(--primary-50);

  color: var(--primary-700);

  border: 1px solid rgba(41, 19, 108, 0.2);

}



.doc-badge-daily {

  background: rgba(16, 185, 129, 0.12);

  color: #065f46;

  border: 1px solid rgba(16, 185, 129, 0.25);

}



.doc-case-no {

  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  color: var(--primary-600);

  letter-spacing: -0.01em;

}



.document-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: var(--text-main);

  margin-bottom: 0.25rem;

  line-height: 1.35;

  word-break: break-word;

}



.document-meta-sub {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.45;

}



.document-meta-divider {

  margin: 0 0.35rem;

  color: var(--border-light);

}



.document-action-right {

  display: flex;

  align-items: center;

  gap: 1.5rem;

  flex-shrink: 0;

  justify-content: flex-end;

}



.document-date-box {

  text-align: right;

  min-width: 110px;

}



.doc-date {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  color: var(--text-main);

  line-height: 1.25;

}



.doc-filesize {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-subtle);

}



.btn-view-order {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.4rem;

  padding: 0.42rem 1.15rem;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: var(--primary-600);

  background: #ffffff;

  border: 1.5px solid var(--primary-600);

  border-radius: var(--radius-sm);

  transition: all var(--transition-fast);

  white-space: nowrap;

}



.btn-view-order:hover {

  background: var(--primary-600);

  color: #ffffff;

  box-shadow: 0 4px 10px rgba(41, 19, 108, 0.2);

}



.btn-view-order i {

  transition: transform var(--transition-fast);

}



.btn-view-order:hover i {

  transform: translateX(3px);

}





/* --------------------------------------------------------------------------

   15. Notifications & Public Circulars

   -------------------------------------------------------------------------- */

.notification-item-row {

  background: #ffffff;

  border-bottom: 1px solid var(--border-subtle);

  padding: 1.25rem 0.5rem;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 1rem;

  transition: all var(--transition-fast);

}



.notification-item-row:hover {

  background-color: var(--bg-subtle);

  padding-left: 0.75rem;

}



.notification-item-row:last-child {

  border-bottom: none;

}



.notif-date-badge {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  color: var(--text-subtle);

  white-space: nowrap;

}



.notif-category {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  text-transform: uppercase;

  color: var(--primary-600);

  background: var(--primary-50);

  padding: 0.2rem 0.55rem;

  border-radius: var(--radius-sm);

}



/* --------------------------------------------------------------------------

   16. Benches & Leadership Section (Appellate Hierarchy - Executive Theme)

   -------------------------------------------------------------------------- */

.gov-leadership-section {

  position: relative;

  background: radial-gradient(ellipse at 50% 0%, rgba(37, 99, 235, 0.15) 0%, rgba(6, 14, 26, 0.98) 70%), #060e1a;

  border-top: 1px solid rgba(255, 255, 255, 0.08);

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);

  overflow: hidden;

}



.gov-leadership-section::before {

  content: '';

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  height: 1px;

  background: linear-gradient(90deg, transparent, rgba(197, 154, 63, 0.5), transparent);

}



.gov-leadership-section .section-heading-lg {

  color: #ffffff !important;

  font-weight: 800;

  letter-spacing: -0.02em;

}



.gov-leadership-section .section-lead {

  color: #cbd5e1 !important;

  font-size: var(--site-content-font-size, 14px);

}



.section-eyebrow-dark {

  color: #ffffff !important;

  background: rgba(255, 255, 255, 0.12) !important;

  border: 1px solid rgba(255, 255, 255, 0.28) !important;

}



.gov-leader-card {

  position: relative;

  background: linear-gradient(180deg, rgba(15, 23, 42, 0.96) 0%, rgba(10, 18, 34, 0.98) 100%);

  border: 1px solid rgba(255, 255, 255, 0.18);

  border-radius: 16px;

  overflow: hidden;

  height: 100%;

  display: flex;

  flex-direction: column;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);

  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);

  backdrop-filter: blur(12px);

}



.gov-leader-card:hover {

  transform: translateY(-8px);

  border-color: rgba(197, 154, 63, 0.65);

  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.7), 0 0 25px rgba(197, 154, 63, 0.2);

}



.leader-avatar-wrapper,

.gov-leader-img-wrap {

  position: relative;

  height: 270px;

  width: 100%;

  overflow: hidden;

  background: #0b172a;

}



.leader-avatar-img,

.gov-leader-img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: top center;

  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);

}



.gov-leader-card:hover .leader-avatar-img,

.gov-leader-card:hover .gov-leader-img {

  transform: scale(1.05);

}



.status-indicator-dot {

  position: absolute;

  top: 14px;

  right: 14px;

  width: 12px;

  height: 12px;

  border-radius: 50%;

  background: #10b981;

  border: 2px solid #0f172a;

  box-shadow: 0 0 8px rgba(16, 185, 129, 0.6);

  z-index: 2;

}



.leader-card-body,

.gov-leader-card-body {

  position: relative;

  z-index: 2;

  padding: 1.35rem 1.25rem 1.4rem;

  flex: 1 1 auto;

  display: flex;

  flex-direction: column;

}



.leader-name,

.gov-leader-name {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: #ffffff !important;

  margin-bottom: 0.3rem;

  line-height: 1.3;

}



.leader-designation,

.gov-leader-designation {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: var(--accent-gold) !important;

  margin-bottom: 0.3rem;

  line-height: 1.4;

}



.leader-zone,

.gov-leader-bench-tag {

  font-size: var(--site-content-font-size, 14px);

  color: #94a3b8 !important;

  margin-bottom: 0.75rem;

  font-weight: 500;

}



.leader-bio-preview {

  font-size: var(--site-content-font-size, 14px);

  color: #cbd5e1 !important;

  line-height: 1.55;

  margin-bottom: 1.25rem;

  flex-grow: 1;

}



.leader-cta-group {

  margin-top: auto;

  display: flex;

  flex-direction: column;

  gap: 0.45rem;

}



.btn-leader-profile {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.5rem;

  width: 100%;

  background: rgba(255, 255, 255, 0.08);

  border: 1px solid rgba(255, 255, 255, 0.22);

  color: #ffffff !important;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  padding: 0.58rem 1rem;

  border-radius: var(--radius-md);

  text-decoration: none;

  transition: all 0.25s ease;

  cursor: pointer;

}



.btn-leader-profile:hover {

  background: linear-gradient(135deg, rgba(197, 154, 63, 0.35) 0%, rgba(41, 19, 108, 0.5) 100%);

  border-color: var(--accent-gold);

  color: #ffffff !important;

  box-shadow: 0 4px 15px rgba(197, 154, 63, 0.25);

  transform: translateY(-2px);

}



.btn-leader-bench {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.4rem;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: #94a3b8 !important;

  text-decoration: none;

  padding: 0.25rem;

  transition: color 0.2s ease;

}



.btn-leader-bench:hover {

  color: var(--accent-gold) !important;

  text-decoration: underline;

}





/* Bench Jurisdiction Summary Banner */

.bench-jurisdiction-summary {

  background: rgba(15, 23, 42, 0.6);

  border: 1px solid rgba(255, 255, 255, 0.08);

  border-radius: 14px;

  padding: 1.25rem 1.5rem;

  backdrop-filter: blur(10px);

}



.bench-summary-item {

  display: flex;

  align-items: center;

  gap: 1rem;

}



.bench-summary-icon {

  width: 44px;

  height: 44px;

  border-radius: 10px;

  background: rgba(197, 154, 63, 0.15);

  border: 1px solid rgba(197, 154, 63, 0.3);

  display: flex;

  align-items: center;

  justify-content: center;

  color: var(--accent-gold);

  font-size: 1.25rem;

  flex-shrink: 0;

}



.bench-summary-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: #ffffff;

  margin-bottom: 0.15rem;

}



.bench-summary-desc {

  font-size: var(--site-content-font-size, 14px);

  color: rgba(255, 255, 255, 0.55);

  margin-bottom: 0;

}



/* --------------------------------------------------------------------------

   17. Litigants & Advocates Grid

   -------------------------------------------------------------------------- */

.resource-card {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-md);

  padding: 1.5rem;

  height: 100%;

  display: flex;

  flex-direction: column;

  transition: all var(--transition-base);

  box-shadow: var(--shadow-xs);

}



.resource-card:hover {

  border-color: var(--primary-600);

  box-shadow: var(--shadow-md);

  transform: translateY(-3px);

}



.resource-icon {

  font-size: 1.8rem;

  color: var(--primary-600);

  margin-bottom: 1rem;

}



/* --------------------------------------------------------------------------

   18. Digital Experience Accent Section (01, 02, 03)

   -------------------------------------------------------------------------- */

.digital-feature-box {

  padding: 2.5rem 2rem;

  background: rgba(255, 255, 255, 0.03);

  border: 1px solid rgba(255, 255, 255, 0.1);

  border-radius: var(--radius-lg);

  height: 100%;

  transition: all var(--transition-smooth);

}



.digital-feature-box:hover {

  background: rgba(255, 255, 255, 0.06);

  border-color: var(--accent-gold);

}



.digital-feature-num {

  font-family: var(--font-family-heading);

  font-size: 3rem;

  font-weight: 900;

  color: var(--accent-gold);

  line-height: 1;

  margin-bottom: 1.25rem;

  opacity: 0.9;

}



/* --------------------------------------------------------------------------

   19. Important Portals & Links (Government Ecosystem)

   -------------------------------------------------------------------------- */

#important-links {

  background-color: #ffffff;

  padding: 4.5rem 0;

}



#important-links .section-eyebrow {

  background: #ede9fe;

  color: #3b1d82;

  border: 1px solid rgba(59, 29, 130, 0.12);

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  letter-spacing: 0.08em;

  padding: 0.4rem 1.15rem;

  border-radius: 9999px;

  text-transform: uppercase;

  margin-bottom: 0.85rem;

}



#important-links .section-heading-lg {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 800;

  color: #0f172a;

  letter-spacing: -0.02em;

  margin-bottom: 2.5rem;

}



.portal-link-card {

  background: #ffffff;

  border: 1px solid #e2e8f0;

  border-radius: 12px;

  padding: 1.25rem 1.35rem;

  display: flex;

  align-items: center;

  gap: 1.15rem;

  text-decoration: none !important;

  color: #0f172a;

  transition: all 0.25s ease-in-out;

  height: 100%;

  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);

}



.portal-link-card:hover {

  border-color: #cbd5e1;

  box-shadow: 0 10px 20px -3px rgba(15, 23, 42, 0.07), 0 4px 6px -2px rgba(15, 23, 42, 0.03);

  transform: translateY(-2px);

  text-decoration: none !important;

}



.portal-emblem-wrap {

  width: 38px;

  height: 48px;

  display: flex;

  align-items: center;

  justify-content: center;

  flex-shrink: 0;

}



.portal-emblem-img {

  max-width: 100%;

  max-height: 46px;

  width: auto;

  height: auto;

  object-fit: contain;

  display: block;

}



.portal-info-wrap {

  display: flex;

  flex-direction: column;

  justify-content: center;

  min-width: 0;

  flex: 1;

}



.portal-card-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: #0f172a;

  line-height: 1.25;

  margin-bottom: 0.25rem;

  white-space: nowrap;

  overflow: hidden;

  text-overflow: ellipsis;

  transition: color 0.2s ease;

}



.portal-link-card:hover .portal-card-title {

  color: #29136C;

}



.portal-card-domain {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 400;

  color: #64748b;

  line-height: 1.2;

  white-space: nowrap;

  overflow: hidden;

  text-overflow: ellipsis;

}



/* --------------------------------------------------------------------------

   20. Editorial News & Regional Benches Cell

   -------------------------------------------------------------------------- */

.news-card-editorial,

.news-card {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-lg);

  overflow: hidden;

  height: 100%;

  display: flex;

  flex-direction: column;

  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;

  box-shadow: var(--shadow-sm);

}



.news-card-editorial:hover,

.news-card:hover {

  transform: translateY(-5px);

  box-shadow: var(--shadow-lg);

  border-color: var(--primary-400);

}



.news-visual-header {

  height: 180px;

  width: 100%;

  position: relative;

  overflow: hidden;

  background: #0f172a;

}



.news-visual-header img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.45s ease;

}



.news-card:hover .news-visual-header img,

.news-card-editorial:hover .news-visual-header img {

  transform: scale(1.04);

}



.news-body {

  padding: 1.5rem;

  display: flex;

  flex-direction: column;

  flex-grow: 1;

}



.news-date {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: var(--primary-600);

  margin-bottom: 0.4rem;

}



.news-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: var(--text-main);

  margin-bottom: 0.65rem;

  line-height: 1.35;

}



.news-excerpt {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.55;

  margin-bottom: 1.25rem;

  flex-grow: 1;

}



.news-contact-section {

  margin-top: auto;

  padding-top: 1rem;

  border-top: 1px solid var(--border-subtle);

  display: flex;

  flex-direction: column;

  gap: 0.35rem;

}



.news-contact-info {

  display: flex;

  flex-direction: column;

  gap: 0.35rem;

}



.news-contact-row {

  display: flex;

  align-items: center;

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.4;

}



.news-contact-row i {

  color: var(--primary-600);

  font-size: 0.85rem;

  width: 18px;

  flex-shrink: 0;

}



.news-contact-link {

  margin-top: 0.5rem;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  color: var(--primary-600);

  text-decoration: none;

  display: inline-flex;

  align-items: center;

  gap: 0.35rem;

  transition: all 0.2s ease;

}



.news-contact-link:hover {

  color: var(--primary-700);

  gap: 0.55rem;

}



/* --------------------------------------------------------------------------

   20.5. Media Gallery Section & Lightbox

   -------------------------------------------------------------------------- */

.gallery-filter-tabs {

  display: flex;

  gap: 0.5rem;

  margin-bottom: 2.25rem;

}



.gallery-tab-btn {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  padding: 0.45rem 1.15rem;

  border-radius: var(--radius-full);

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: var(--text-muted);

  cursor: pointer;

  transition: all var(--transition-fast);

  width: max-content !important;

}



.gallery-tab-btn:hover,

.gallery-tab-btn.active {

  background: var(--primary-950);

  color: #ffffff;

  border-color: var(--primary-950);

}



.gallery-card,

.gallery-card-modern {

  background: #ffffff;

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-lg);

  overflow: hidden;

  height: 100%;

  display: flex;

  flex-direction: column;

  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.35s ease;

  box-shadow: var(--shadow-sm);

  cursor: pointer;

  outline: none;

}



.gallery-card:hover,

.gallery-card-modern:hover {

  transform: translateY(-4px);

  box-shadow: 0 14px 28px -6px rgba(15, 23, 42, 0.12);

  border-color: var(--primary-400);

}



.gallery-card:focus-visible,

.gallery-card-modern:focus-visible {

  outline: 3px solid var(--primary-600);

  outline-offset: 2px;

}



.gallery-card-thumb-wrap,

.gallery-img-wrap {

  position: relative;

  height: 200px;

  width: 100%;

  overflow: hidden;

  background-color: #0b172a;

}



.gallery-card-thumb,

.gallery-img-wrap img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);

}



.gallery-card:hover .gallery-card-thumb,

.gallery-card-modern:hover .gallery-img-wrap img {

  transform: scale(1.04);

}



/* Remove zoom icon / overlay from gallery card presentation */

.btn-gallery-zoom,

.gallery-card-overlay,

.gallery-zoom-icon {

  display: none !important;

}



.gallery-card-body {

  padding: 1.25rem 1.25rem 1.4rem;

  display: flex;

  flex-direction: column;

  flex-grow: 1;

}



.gallery-card-category {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: var(--primary-600);

  margin-bottom: 0.4rem;

}



.gallery-card-title {

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: var(--text-main);

  line-height: 1.35;

  margin-bottom: 0.6rem;

  min-height: 2.8rem;

}



.gallery-card-caption {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.5;

  margin-bottom: 1rem;

  flex-grow: 1;

}



.gallery-card-date {

  margin-top: auto;

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  display: flex;

  align-items: center;

  gap: 0.35rem;

}



.gallery-action-link {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 700;

  color: var(--primary-600);

  display: inline-flex;

  align-items: center;

  gap: 0.4rem;

}



.gallery-card:hover .gallery-action-link,

.gallery-card-modern:hover .gallery-action-link {

  color: var(--primary-700);

  gap: 0.65rem;

}



/* --------------------------------------------------------------------------

   21. FAQ Accordion

   -------------------------------------------------------------------------- */

.accordion-corporate .accordion-item {

  border: 1px solid var(--border-subtle);

  border-radius: var(--radius-md) !important;

  margin-bottom: 0.85rem;

  overflow: hidden;

  box-shadow: var(--shadow-xs);

}



.accordion-corporate .accordion-button {

  font-family: var(--font-family-heading);

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: var(--text-main);

  background-color: #ffffff;

  padding: 1.25rem 1.5rem;

  box-shadow: none;

}



.accordion-corporate .accordion-button:not(.collapsed) {

  color: var(--primary-600);

  background-color: var(--primary-50);

}



.accordion-corporate .accordion-body {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-muted);

  line-height: 1.6;

  padding: 1.25rem 1.5rem;

  background-color: #ffffff;

}



/* --------------------------------------------------------------------------

   22. Premium Corporate Dark Footer

   -------------------------------------------------------------------------- */

.footer-corporate {

  background-color: var(--primary-950);

  color: var(--text-white-subtle);

  border-top: 1px solid rgba(255, 255, 255, 0.08);

  padding-top: 2.75rem;

  padding-bottom: 1.75rem;

}



.footer-corporate .footer-columns-row {

  margin-bottom: 0.75rem;

}



/* Grid layout for Desktop: Col 1 expanded, Cols 2, 3, 4 shifted right with consistent spacing */

@media (min-width: 992px) {

  .footer-corporate .footer-columns-row {

    display: grid;

    grid-template-columns: minmax(0, 2.5fr) minmax(0, 1fr) minmax(0, 1.05fr) minmax(0, 1.05fr);

    column-gap: 2.75rem;

    row-gap: 2rem;

    align-items: start;

    margin-left: 0;

    margin-right: 0;

  }



  .footer-corporate .footer-columns-row > .footer-col {

    width: 100% !important;

    max-width: 100% !important;

    padding-left: 0 !important;

    padding-right: 0 !important;

    flex: none !important;

  }



  .footer-corporate .footer-column-title {

    margin-top: 0.4rem;

  }

}



/* Tablet Grid: Col 1 full width, Cols 2, 3, 4 in 3 balanced columns */

@media (min-width: 768px) and (max-width: 991.98px) {

  .footer-corporate .footer-columns-row {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    column-gap: 2rem;

    row-gap: 2rem;

    align-items: start;

    margin-left: 0;

    margin-right: 0;

  }



  .footer-corporate .footer-col-identity {

    grid-column: 1 / -1;

  }



  .footer-corporate .footer-columns-row > .footer-col {

    width: 100% !important;

    max-width: 100% !important;

    padding-left: 0 !important;

    padding-right: 0 !important;

    flex: none !important;

  }

}



/* Mobile Grid: 2 columns, then single column on phones */

@media (max-width: 767.98px) {

  .footer-corporate .footer-columns-row {

    display: grid;

    grid-template-columns: 1fr 1fr;

    column-gap: 1.5rem;

    row-gap: 1.75rem;

    margin-left: 0;

    margin-right: 0;

  }



  .footer-corporate .footer-col-identity,

  .footer-corporate .footer-col-connect {

    grid-column: 1 / -1;

  }



  .footer-corporate .footer-columns-row > .footer-col {

    width: 100% !important;

    max-width: 100% !important;

    padding-left: 0 !important;

    padding-right: 0 !important;

    flex: none !important;

  }

}



@media (max-width: 575.98px) {

  .footer-corporate .footer-columns-row {

    grid-template-columns: 1fr;

    row-gap: 1.5rem;

  }



  .footer-corporate .footer-columns-row > .footer-col {

    grid-column: auto !important;

  }

}



.footer-corporate .footer-brand-title {

  font-family: var(--font-family-heading);

  font-size: var(--site-title-font-size, 16px);

  font-weight: 800;

  color: #ffffff;

  letter-spacing: -0.02em;

  margin-top: 0;

  margin-bottom: 0.35rem;

  line-height: 1.25;

}



.footer-corporate .footer-column-title {

  font-family: var(--font-family-heading);

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  text-transform: uppercase;

  letter-spacing: 0.08em;

  color: #ffffff;

  margin-top: 0.4rem;

  margin-bottom: 1.5rem;

  line-height: 1.25;

}



.footer-corporate .footer-brand-heading-wrap {

  align-items: flex-start;

}



.footer-corporate .footer-brand-heading-wrap #emblemLogo {

  flex-shrink: 0;

  margin-top: 0;

}



/* Contact Details: Phone on line 1, Email directly below on line 2 */

.footer-corporate .footer-contact-item {

  display: flex;

  align-items: flex-start;

  gap: 0.5rem;

  line-height: 1.5;

  color: var(--text-white-subtle);

  font-size: var(--site-content-font-size, 14px);

}



.footer-corporate .footer-contact-item i {

  flex-shrink: 0;

  margin-top: 0.15rem;

  font-size: 0.95rem;

}



.footer-corporate .footer-contact-phone {

  margin-bottom: 0.45rem !important;

}



.footer-corporate .footer-contact-email {

  margin-bottom: 0 !important;

}



.footer-corporate .footer-address-link,

.footer-corporate .footer-phone-link,

.footer-corporate .footer-email-link {

  color: var(--text-white-subtle);

  text-decoration: none;

  transition: color var(--transition-fast);

}



.footer-corporate .footer-address-link {

  display: inline-block;

  line-height: 1.45;

}



.footer-corporate .footer-address-link:hover,

.footer-corporate .footer-address-link:focus,

.footer-corporate .footer-phone-link:hover,

.footer-corporate .footer-phone-link:focus,

.footer-corporate .footer-email-link:hover,

.footer-corporate .footer-email-link:focus {

  color: var(--accent-gold);

  text-decoration: underline;

}



.footer-corporate .footer-links {

  list-style: none;

  padding: 0;

  margin: 0;

}



.footer-corporate .footer-links li {

  margin-bottom: 0.75rem;

}



.footer-corporate .footer-links li:last-child {

  margin-bottom: 0;

}



.footer-corporate .footer-links a {

  color: var(--text-white-subtle);

  font-size: var(--site-content-font-size, 14px);

  transition: all var(--transition-fast);

  display: inline-flex;

  align-items: center;

  gap: 0.4rem;

  text-decoration: none;

}



.footer-corporate .footer-links a:hover,

.footer-corporate .footer-links a:focus {

  color: var(--accent-gold);

  transform: translateX(3px);

}



.footer-corporate .footer-sublinks {

  margin-top: 0.4rem;

  margin-bottom: 0.2rem;

  padding-left: 0.85rem;

  list-style: none;

}



.footer-corporate .footer-sublinks li {

  margin-bottom: 0.35rem;

}



.footer-corporate .footer-sublinks a {

  font-size: var(--site-content-font-size, 14px);

  opacity: 0.88;

}



/* SSL & WCAG Information: Left-aligned immediately above horizontal divider */

.footer-corporate .footer-security-badges-bar {

  display: flex;

  justify-content: flex-start;

  align-items: center;

  margin-top: 1.25rem;

  margin-bottom: 0.85rem;

  width: 100%;

}



.footer-corporate .footer-security-badges,

.footer-corporate .footer-badges-strip {

  display: inline-flex;

  justify-content: flex-start;

  align-items: center;

  gap: 0.75rem;

  flex-wrap: wrap;

  margin: 0;

}



.footer-corporate .compliance-badge {

  display: inline-flex;

  align-items: center;

  gap: 0.45rem;

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.14);

  padding: 0.28rem 0.75rem;

  border-radius: var(--radius-sm);

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-white-subtle);

  letter-spacing: 0.02em;

  font-weight: 500;

}



/* Bottom Bar: Horizontal Divider + Centered Policy Links & Credits */

.footer-corporate .footer-bottom-bar,

.footer-corporate .footer-bottom-section {

  border-top: 1px solid rgba(255, 255, 255, 0.12);

  margin-top: 0;

  padding-top: 0.65rem;

  text-align: center;

  display: flex;

  flex-direction: column;

  align-items: center;

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-light);

}



/* Tier 2: Policy Links in a Centered Row */

.footer-corporate .footer-policy-nav {

  margin-bottom: 0.85rem;

  width: 100%;

}



.footer-corporate .footer-policy-links {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-wrap: wrap;

  gap: 0.75rem;

  font-size: var(--site-content-font-size, 14px);

}



.footer-corporate .footer-policy-link {

  color: rgba(255, 255, 255, 0.65);

  text-decoration: none;

  transition: color var(--transition-fast), background-color var(--transition-fast);

  padding: 0.2rem 0.4rem;

  border-radius: 4px;

}



.footer-corporate .footer-policy-link:hover {

  color: var(--accent-gold);

  text-decoration: underline;

}



.footer-corporate .footer-policy-link:focus-visible {

  outline: 2px solid var(--accent-gold);

  outline-offset: 2px;

  color: #ffffff;

  background: rgba(255, 255, 255, 0.08);

}



.footer-corporate .footer-policy-separator {

  color: rgba(255, 255, 255, 0.25);

  font-size: var(--site-content-font-size, 14px);

  user-select: none;

}



/* Tier 3 & 4: Website Credit Text */

.footer-corporate .footer-credits-wrap {

  font-size: var(--site-content-font-size, 14px);

  color: var(--text-light);

  line-height: 1.5;

  max-width: 960px;

  margin: 0 auto;

}



.footer-corporate .footer-credit-line {

  margin: 0;

  text-align: center;

  word-break: normal;

  overflow-wrap: break-word;

}



.footer-corporate .footer-credit-managed {

  color: var(--text-light);

  margin-bottom: 0.3rem;

}



.footer-corporate .footer-credit-nic {

  color: var(--text-light);

}



@media (max-width: 767.98px) {

  .footer-corporate {

    padding-top: 2rem;

    padding-bottom: 1.5rem;

  }

  .footer-corporate .footer-columns-row {

    margin-bottom: 0.75rem;

  }

  .footer-corporate .footer-bottom-bar,

  .footer-corporate .footer-bottom-section {

    margin-top: 0;

    padding-top: 0.65rem;

  }

  .footer-corporate .footer-policy-separator {

    display: none;

  }

  .footer-corporate .footer-policy-links {

    gap: 0.5rem 1rem;

  }

}



/* --------------------------------------------------------------------------

   23. Floating Action & Modals

   -------------------------------------------------------------------------- */

.btn-back-to-top {

  position: fixed;

  bottom: 25px;

  right: 25px;

  width: 46px;

  height: 46px;

  border-radius: 50%;

  background: var(--primary-600);

  color: #ffffff;

  border: none;

  box-shadow: var(--shadow-lg);

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 1.2rem;

  cursor: pointer;

  opacity: 0;

  visibility: hidden;

  transform: translateY(10px);

  transition: all var(--transition-base);

  z-index: 1000;

}



.btn-back-to-top.show {

  opacity: 1;

  visibility: visible;

  transform: translateY(0);

}



.btn-back-to-top:hover {

  background: var(--primary-700);

  transform: translateY(-3px);

}



/* Modal Customization */

.modal-content-corporate {

  border-radius: var(--radius-lg);

  border: 1px solid var(--border-subtle);

  box-shadow: var(--shadow-xl);

  overflow: hidden;

}



.modal-header-corporate {

  background: var(--primary-950);

  color: #ffffff;

  padding: 1.25rem 1.75rem;

  border-bottom: none;

}



/* Animations */

@keyframes fadeIn {

  from {

    opacity: 0;

    transform: translateY(8px);

  }



  to {

    opacity: 1;

    transform: translateY(0);

  }

}



@keyframes fadeInDown {

  from {

    opacity: 0;

    transform: translateY(-8px);

  }



  to {

    opacity: 1;

    transform: translateY(0);

  }

}



/* --------------------------------------------------------------------------

   24. Responsive Media Queries

   -------------------------------------------------------------------------- */

@media (max-width: 991.98px) {

  .hero-corporate {

    padding-top: 3.5rem;

    padding-bottom: 4rem;

  }



  .stat-item {

    border-right: none;

    border-bottom: 1px solid var(--border-subtle);

  }



  .stat-item:last-child {

    border-bottom: none;

  }



  .search-panel-container {

    margin-top: 0;

    padding: 1.5rem;

  }



  .section-padding {

    padding-top: 4rem;

    padding-bottom: 4rem;

  }

}



@media (max-width: 767.98px) {

  .document-item-card {

    flex-direction: column;

    align-items: flex-start;

    gap: 1rem;

    padding: 1.25rem 1.25rem;

  }



  .document-content-left {

    width: 100%;

    align-items: flex-start;

  }



  .document-action-right {

    width: 100%;

    justify-content: space-between;

    border-top: 1px solid var(--border-subtle);

    padding-top: 0.85rem;

    margin-top: 0.25rem;

  }



  .document-date-box {

    text-align: left;

  }



  .doc-filter-pills {

    justify-content: flex-start !important;

    overflow-x: auto;

    flex-wrap: nowrap;

    padding-bottom: 0.5rem;

    -webkit-overflow-scrolling: touch;

  }



  .doc-pill-btn {

    white-space: nowrap;

  }

}



@media (max-width: 575.98px) {

  .brand-title {

    font-size: var(--site-title-font-size, 16px);

  }



  .hero-title {

    font-size: var(--site-title-font-size, 16px);

  }



  .hero-cta-group {

    flex-direction: column;

    width: 100%;

  }



  .btn-hero-primary,

  .btn-hero-secondary {

    width: 100%;

    justify-content: center;

  }

}



/* Prefers Reduced Motion */

@media (prefers-reduced-motion: reduce) {

  * {

    animation-duration: 0.01ms !important;

    animation-iteration-count: 1 !important;

    transition-duration: 0.01ms !important;

    scroll-behavior: auto !important;

  }



  .gallery-card,

  .gallery-card:hover,

  .gallery-card-thumb,

  .gallery-card:hover .gallery-card-thumb,

  .gov-leader-card,

  .gov-leader-card:hover,

  .leader-avatar-img,

  .gov-leader-card:hover .leader-avatar-img,

  .news-card,

  .news-card:hover,

  .news-visual-header img,

  .news-card:hover .news-visual-header img,

  .document-item-card,

  .document-item-card:hover {

    transform: none !important;

    transition: none !important;

  }

}



/* ==========================================================================

   STATISTICS / DIGITAL FOOTPRINT

   ========================================================================== */

.stats-section {

  color: #FFFFFF;

  padding: 60px 0;

  position: relative;

  text-align: center; /* Centers all child text elements */

}



.stat-box {

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.12);

  border-radius: var(--gov-radius-md);

  padding: 26px 20px;

  text-align: center; /* Ensures content within each box stays centered */

  transition: all 0.2s;

}



.stat-box:hover {

  background: rgba(255, 255, 255, 0.1);

  transform: translateY(-3px);

  border-color: rgba(255, 153, 51, 0.4);

}



.stat-icon {

  font-size: 2rem;

  color: var(--gov-accent-saffron);

  margin-bottom: 12px;

}



.stat-number {

  font-size: 2.3rem;

  font-weight: 800;

  color: #FFFFFF;

  margin-bottom: 4px;

  font-family: var(--font-heading);

  text-align: center;

  display: flow-root;

}



.stat-label {

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  color: #CBD5E1;

  line-height: 1.35;

  text-align: center;

  margin-bottom: 0px;

}



/* Container */

.programmes {

    display: flex;

    height: 100vh;

    overflow: hidden;

    border-radius: 24px;

}



/* Box */

.prog-box {

    position: relative;

    flex: 1;

    cursor: pointer;

    transition: all .6s ease;

    overflow: hidden;

    border-right: 16px solid #fff;

}



.prog-box:last-child {

    border-right: none;

}



/* Shrink others on hover */

.programmes:hover .prog-box {

    flex: .8;

}



/* Expand active */

.programmes .prog-box:hover {

    flex: 2;

}



/* Image */

.prog-box img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform .8s ease;

}



.prog-box:hover img {

    transform: scale(1.1);

}



/* Overlay */

.overlay {

    position: absolute;

    inset: 0;

    background: #000;

    opacity: .65;

    transition: .6s;

    border-radius: 24px;

}



.prog-box:hover .overlay {

    opacity: .5;

}



/* Vertical Text */

.vertical-text {

    position: absolute;

    left: 50%;

    top: 50%;

    transform: translate(-50%, -50%) rotate(-90deg);

    color: #fff;

    font-weight: 600;

    letter-spacing: 2px;

    transition: .5s;

    white-space: nowrap;

    font-size: 25px;

}



.prog-box:hover .vertical-text {

    opacity: 0;

}



/* Content */

.content {

    position: absolute;

    left: 60px;

    bottom: 60px;

    color: #fff;

    max-width: 320px;

    opacity: 0;

    transform: translateY(40px);

    transition: .6s;

}



.prog-box:hover .content {

    opacity: 1;

    transform: translateY(0);

}



.content .number {

    display: block;

    font-size: var(--site-content-font-size, 14px);

    font-weight: 600;

    letter-spacing: 1px;

    opacity: 0.85;

    margin-bottom: 4px;

}



.content h2 {

    font-size: var(--site-title-font-size, 16px);

    margin: 4px 0 16px 0;

    color: #fff;

    font-weight: 700;

}



.content a {

    color: #fff;

    text-decoration: none;

    font-size: var(--site-content-font-size, 14px);

    letter-spacing: 1px;

    display: inline-flex;

    align-items: center;

    gap: 6px;

    padding: 6px 0;

    transition: color 0.3s ease, transform 0.3s ease;

}



.content a:hover,

.content a:focus {

    color: var(--accent-gold, #d4af37);

    transform: translateX(4px);

    text-decoration: underline;

}



/* Card styling */

.project-card {

    position: relative;

    border-radius: 24px;

    overflow: hidden;

    aspect-ratio: 4/3;

    margin-bottom: 1.5rem;



    transform: translateY(0) scale(1);

    transition:

        transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),

        box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);

}



/* Hover lift */

.project-card:hover {

    transform: translateY(-8px) scale(1.02);

    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);

}



/* Image */

.project-card img {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition:

        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),

        filter 0.6s ease;

    z-index: 1;

}



/* Smooth zoom */

.project-card:hover img {

    transform: scale(1.08);

    filter: brightness(0.85);

}



/* Overlay */

.project-overlay {

    position: absolute;

    inset: 0;

    display: flex;

    flex-direction: column;

    justify-content: flex-end;

    padding: 16px;



    background: -webkit-gradient(linear, left bottom, left top, from(rgb(12, 30, 33)), to(rgba(12, 30, 33, 0)));

    background: linear-gradient(0deg, rgb(12, 30, 33) 0%, rgba(12, 30, 33, 0) 100%);



    transition: background 0.5s ease;

    z-index: 2;

}



/* Smooth gradient morph */

.project-card:hover .project-overlay {

    background: linear-gradient(0deg,

            rgba(15, 87, 87, 0.95) 0%,

            rgba(45, 134, 134, 0.7) 100%);

}



/* Icon */

.project-icon {

    color: var(--white);

    font-size: 3rem;



    position: absolute;

    top: 50%;

    left: 50%;

    transform: translate(-50%, -50%) scale(0.9);



    opacity: 0.25;

    transition:

        transform 0.5s ease,

        opacity 0.5s ease;



    z-index: 3;

}



/* Icon animation */

.project-card:hover .project-icon {

    transform: translate(-50%, -50%) scale(1);

    opacity: 0.4;

}



/* Text */

.project-content h4 {

    color: var(--white);

    font-size: var(--site-title-font-size, 16px);

    margin-bottom: 6px;

    font-weight: 600;

}



/* Description hidden initially */

.project-content p {

    display: none;

    opacity: 0;

    transform: translateY(12px);



    color: rgba(255, 255, 255, 0.9);

    font-size: var(--site-content-font-size, 14px);

    margin: 0;



    transition: opacity 0.4s ease, transform 0.4s ease;

    will-change: transform, opacity;

}



/* On hover, show description */

.project-card:hover .project-content p {

    display: block;

    opacity: 1;

    transform: translateY(0);

}



/* Video Box */

.video-box {

    width: 100%;

    height: 100%;

    border-radius: 24px;

    overflow: hidden;

}



.video-box video {

    width: 100%;

    height: 100%;

    object-fit: cover;

    border-radius: 24px;

}



/* =====================================================

   REUSABLE INNER PAGE STYLING - COMPETENT AUTHORITY

   ===================================================== */

.inner-page-banner {

  position: relative;

  background-size: cover !important;

  background-position: center !important;

  padding: 2.25rem 0 !important;

  box-shadow: inset 0 -2px 10px rgba(0, 0, 0, 0.25);

}



.inner-page-banner .breadcrumb {

  --bs-breadcrumb-divider: '›';

  --bs-breadcrumb-divider-color: rgba(255, 255, 255, 0.55);

  font-size: var(--site-content-font-size, 14px);

}



.inner-page-banner .breadcrumb-item {

  color: rgba(255, 255, 255, 0.8);

}



.inner-page-banner .breadcrumb-item a {

  color: rgba(255, 255, 255, 0.8);

  text-decoration: none;

  transition: color 0.2s ease;

}



.inner-page-banner .breadcrumb-item a:hover {

  color: #d4af37;

  text-decoration: underline !important;

}



.inner-page-banner .breadcrumb-item.active {

  color: #ffffff;

  font-weight: 500;

}



.inner-page-main {

  background-color: #ffffff;

  padding-top: 2rem !important;

  padding-bottom: 4rem !important;

  min-height: 500px;

}



.highlighted-region:empty,

.highlighted-region:has([data-drupal-messages-fallback].hidden),

.highlighted-region:has(.hidden:only-child) {

  display: none !important;

  margin: 0 !important;

  padding: 0 !important;

}



.highlighted-region:has(.messages) {

  margin-bottom: 1.5rem !important;

}



.inner-page-content-box {

  background: transparent !important;

  border: none !important;

  border-radius: 0 !important;

  box-shadow: none !important;

  padding: 0 !important;

}



/* Prose formatting for dynamic body content */

.content-body-prose {

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.75;

  color: #334155;

}



.content-body-prose h2 {

  color: #061a33;

  font-weight: 700;

  font-size: var(--site-title-font-size, 16px);

  margin-top: 1.75rem;

  margin-bottom: 0.85rem;

  padding-bottom: 0.5rem;

  border-bottom: 2px solid #e2e8f0;

}



.content-body-prose h3 {

  color: #002b66;

  font-weight: 600;

  font-size: var(--site-title-font-size, 16px);

  margin-top: 1.5rem;

  margin-bottom: 0.75rem;

}



.content-body-prose h4 {

  color: #334155;

  font-weight: 600;

  font-size: var(--site-title-font-size, 16px);

  margin-top: 1.25rem;

  margin-bottom: 0.5rem;

}



.content-body-prose p {

  margin-bottom: 1.25rem;

}



.content-body-prose ul,

.content-body-prose ol {

  padding-left: 1.5rem;

  margin-bottom: 1.25rem;

}



.content-body-prose li {

  margin-bottom: 0.5rem;

}



.content-body-prose blockquote {

  border-left: 4px solid #d4af37;

  padding: 1rem 1.25rem;

  margin: 1.5rem 0;

  background-color: #f1f5f9;

  border-radius: 0 8px 8px 0;

  font-style: italic;

  color: #475569;

}



.content-body-prose table {

  width: 100%;

  margin-bottom: 1.5rem;

  border-collapse: collapse;

}



.content-body-prose table th,

.content-body-prose table td {

  padding: 0.75rem 1rem;

  border: 1px solid #e2e8f0;

}



.content-body-prose table th {

  background-color: #f8fafc;

  color: #061a33;

  font-weight: 600;

}



/* Image styling */

.inner-page-media-card img,

.inner-page-full-image img {

  border-radius: 12px;

  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.07);

}



.image-caption {

  font-size: var(--site-content-font-size, 14px);

  color: #64748b;

}



/* Document download cards */

.document-download-card {

  background: #f8fafc;

  border: 1px solid #e2e8f0;

  border-radius: 10px;

  transition: all 0.2s ease-in-out;

}



.document-download-card:hover {

  background: #ffffff;

  border-color: #d4af37;

  box-shadow: 0 6px 16px rgba(6, 26, 51, 0.12);

  transform: translateY(-2px);

}



/* Responsive adjustments */

@media (max-width: 768px) {

  .inner-page-banner {

    padding: 2.5rem 0;

  }

  .inner-page-banner .page-title {

    font-size: var(--site-title-font-size, 16px) !important;

  }

  .inner-page-content-box {

    padding: 0 !important;

  }

  .inner-page-media-card {

    position: static !important;

    margin-bottom: 1.5rem;

  }

}



.text-navy {

  color: #061a33 !important;

}



.hover-lift {

  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;

}



.hover-lift:hover {

  transform: translateY(-3px);

  box-shadow: 0 10px 25px -5px rgba(6, 26, 51, 0.08), 0 8px 10px -6px rgba(6, 26, 51, 0.04) !important;

  border-color: #cbd5e1 !important;

}



/* ==========================================================================

   Jurisdiction Page Dynamic Components (Phases 6, 7)

   ========================================================================== */

.jurisdiction-intro-lead p,
.jurisdiction-intro-lead .lead {
  font-size: 1.15rem;
  font-weight: 500;
  line-height: 1.75;
  color: #1e293b;
}

.jurisdiction-map-section {
  width: 100%;
}

.jurisdiction-records-grid .jurisdiction-entry-card {
  border-left: 4px solid var(--primary-600, #29136C) !important;
  background-color: #ffffff;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.jurisdiction-records-grid .jurisdiction-entry-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1) !important;
}

.jurisdiction-entry-card {

  border-left: 4px solid var(--primary-600, #29136C) !important;

  background-color: #ffffff;

}



.jurisdiction-number-badge {

  background-color: var(--primary-600, #29136C) !important;

  box-shadow: 0 2px 6px rgba(41, 19, 108, 0.25);

}



.jurisdiction-authority-title {

  font-size: var(--site-title-font-size, 16px);

  color: #061a33;

}



.jurisdiction-desc-label {

  color: #64748b;

  font-size: var(--site-content-font-size, 14px);

}



.jurisdiction-desc-text {

  color: #334155;

}



.jurisdiction-map-card {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  cursor: pointer;
}

.jurisdiction-map-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12) !important;
}

.jurisdiction-map-img {
  max-height: 560px;
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
  margin: 0 auto;
  transform: none !important;
  transition: none !important;
}

.jurisdiction-map-img:hover {
  transform: none !important;
}

.jurisdiction-map-card .image-caption {
  border-top: none !important;
  margin-top: 0.5rem !important;
  padding-top: 0 !important;
}



.jurisdiction-rule-card {

  background-color: #f8fafc;

  border-left: 4px solid var(--accent-gold, #c59a3f) !important;

}



@media (max-width: 991px) {

  .jurisdiction-map-card {

    position: static !important;

    margin-top: 1.5rem;

  }

}



/* ==========================================================================

   Official Message Page Components (Phases 8, 9)

   ========================================================================== */

.official-letterhead-card {

  border-top: 4px solid var(--accent-gold, #c59a3f) !important;

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);

  background-color: #ffffff;

}



.official-emblem-badge {

  color: var(--primary-600, #29136C);

}



.letterhead-titles {

  line-height: 1.5;

}



.letterhead-address {

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.6;

}



.letterhead-contact-details {

  font-size: var(--site-content-font-size, 14px);

  color: #475569;

}



.official-letterhead-divider {

  border-color: var(--accent-gold, #c59a3f) !important;

  opacity: 0.85;

}



.official-message-title-wrapper h2 {

  font-family: var(--font-family-heading, 'Poppins', sans-serif);

  letter-spacing: 3px;

  text-decoration: underline;

  text-underline-offset: 6px;

  border-bottom: none !important;

}



.message-paragraph {

  color: #1e293b;

  text-align: justify;

}



.signatory-block {

  min-width: 240px;

}



.signatory-line {

  line-height: 1.4;

}



/* ==========================================================================

   About Forfeiture Page Components (Sections A through M)

   ========================================================================== */

.forfeiture-page-container {

  font-family: var(--font-family-base, 'Poppins', sans-serif);

}



.forfeiture-header-block {

  border-left: 4px solid var(--primary-600, #29136C) !important;

  background-color: #ffffff;

  transition: all 0.25s ease;

}



.forfeiture-main-title {

  color: var(--primary-900, #130048);

  letter-spacing: -0.2px;

  text-align: center;

}



.forfeiture-image-card {

  background-color: #ffffff;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);

  transition: transform 0.25s ease, box-shadow 0.25s ease;

}



.forfeiture-image-card:hover {

  transform: translateY(-2px);

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.09);

}



.forfeiture-featured-image {

  max-width: 100%;

  height: auto;

  border-radius: var(--radius-md, 8px);

}



.forfeiture-section-item {

  position: relative;

  background: transparent;

  border: none;

  box-shadow: none;

  padding: 0;

}



.freezing-sub-item {

  position: relative;

}



@media (max-width: 767.98px) {

  .forfeiture-header-block {

    padding: 1.25rem !important;

  }



  .forfeiture-intro-lead-wrapper p,

  .forfeiture-section-item p,

  .freezing-sub-body {

    text-align: left !important;

    font-size: var(--site-content-font-size, 14px) !important;

    line-height: 1.75 !important;

  }

}



/* ==========================================================================

   Official Document Download Cards (Acts, Rules, Related Laws)

   ========================================================================== */

.official-doc-cards-stack {

  max-width: 100%;

}



.official-doc-card {

  background-color: #ffffff;

  border-left: 5px solid #29136C !important;

  border-radius: 12px;

  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);

  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;

}



.official-doc-card:hover {

  transform: translateY(-2px);

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);

}



.doc-pdf-icon-wrapper {

  width: 52px;

  height: 52px;

  background-color: #fef2f2;

  color: #dc2626;

  border: 1px solid #fee2e2;

  transition: all 0.2s ease;

}



.official-doc-card:hover .doc-pdf-icon-wrapper {

  background-color: #fee2e2;

  transform: scale(1.04);

}



.doc-card-title {

  color: var(--primary-900, #130048);

  font-family: var(--font-family-heading, 'Poppins', sans-serif);

  line-height: 1.35;

  letter-spacing: -0.2px;

}



.btn-download-pdf {

  background: linear-gradient(135deg, #f97316 0%, #dc2626 100%);

  color: #ffffff !important;

  border: none;

  font-size: var(--site-content-font-size, 14px);

  font-weight: 600;

  letter-spacing: 0.3px;

  transition: all 0.25s ease;

  white-space: nowrap;

}



.btn-download-pdf:hover {

  background: linear-gradient(135deg, #ea580c 0%, #b91c1c 100%);

  color: #ffffff !important;

  transform: translateY(-1px);

  box-shadow: 0 4px 14px rgba(220, 38, 38, 0.35);

}



.btn-download-pdf:focus-visible {

  outline: 3px solid #f97316;

  outline-offset: 2px;

}



@media (max-width: 575.98px) {

  .official-doc-card {

    flex-direction: column;

    align-items: flex-start !important;

  }

  .doc-card-right {

    width: 100%;

  }

  .btn-download-pdf {

    width: 100%;

    justify-content: center;

  }

}



/* Official Letterhead Emblem */

.official-emblem-badge {

  display: flex;

  justify-content: center;

  align-items: center;

}



.official-emblem-img {

  height: 80px;

  width: auto;

  max-width: 100%;

  display: inline-block;

  object-fit: contain;

  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.05));

}



/* ==========================================================================

   RTI Page Styling (Organisation, Accordion Manuals, Documents Table)

   ========================================================================== */

.rti-page-wrapper {

  max-width: 100%;

}



.rti-intro-heading-card {

  border-left: 4px solid #29136C !important;

}



.rti-org-card {

  transition: transform 0.2s ease, box-shadow 0.2s ease;

}



.rti-accordion .accordion-item {

  border-color: rgba(0, 0, 0, 0.08) !important;

  background-color: #ffffff;

  transition: all 0.25s ease;

}



.rti-accordion .accordion-item:hover {

  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);

}



.rti-accordion .accordion-button {

  background-color: #ffffff;

  color: var(--primary-900, #130048);

  font-family: var(--font-family-heading, 'Poppins', sans-serif);

  font-size: var(--site-title-font-size, 16px);

  letter-spacing: -0.2px;

  box-shadow: none !important;

  transition: background-color 0.2s ease, color 0.2s ease;

}



.rti-accordion .accordion-button:not(.collapsed) {

  background-color: #f8fafc;

  color: #29136C;

  border-bottom: 1px solid #e2e8f0;

}



.rti-accordion .accordion-button::after {

  display: none !important;

}



.rti-accordion .manual-accordion-arrow {

  font-size: 1.1rem;

  color: #64748b;

  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.25s ease;

}



.rti-accordion .accordion-button:not(.collapsed) .manual-accordion-arrow {

  transform: rotate(90deg);

  color: #29136C;

}



.rti-accordion .accordion-button:focus-visible {

  outline: 3px solid #29136C;

  outline-offset: -3px;

}



.rti-accordion .accordion-body {

  background-color: #ffffff;

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.75;

}



.rti-table-controls .form-select:focus,

.rti-table-controls .form-control:focus,

.circulars-table-controls .form-select:focus,

.circulars-table-controls .form-control:focus {

  border-color: #29136C;

  box-shadow: 0 0 0 0.25rem rgba(41, 19, 108, 0.15);

}



.rti-documents-table thead th,

.circulars-documents-table thead th {

  background-color: #f8fafc;

  border-bottom: 2px solid #e2e8f0;

  font-size: var(--site-content-font-size, 14px);

  letter-spacing: 0.5px;

  text-transform: uppercase;

}



.rti-documents-table tbody tr,

.circulars-documents-table tbody tr {

  transition: background-color 0.15s ease;

}



.rti-documents-table tbody tr:hover,

.circulars-documents-table tbody tr:hover {

  background-color: rgba(41, 19, 108, 0.02);

}



.manual-content-block ol.manual-list li {

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.75;

}



/* Document Tables Pagination Controls (RTI, Circulars, Auction, Cause List, Vacancies) */

.rti-pagination .page-item,

.circulars-pagination .page-item,

.auction-pagination .page-item,

.cause-list-pagination .page-item,

.vacancies-pagination .page-item {

  margin: 0 2px;

}



.rti-pagination .page-link,

.circulars-pagination .page-link,

.auction-pagination .page-link,

.cause-list-pagination .page-link,

.vacancies-pagination .page-link {

  color: #29136C;

  background-color: #ffffff;

  border: 1px solid #dee2e6;

  border-radius: 6px !important;

  font-weight: 600;

  font-size: var(--site-content-font-size, 14px);

  padding: 0.35rem 0.75rem;

  transition: all 0.2s ease;

  box-shadow: none;

}



.rti-pagination .page-link:hover,

.circulars-pagination .page-link:hover,

.auction-pagination .page-link:hover,

.cause-list-pagination .page-link:hover,

.vacancies-pagination .page-link:hover {

  background-color: #f1f5f9;

  border-color: #cbd5e1;

  color: #130048;

}



.rti-pagination .page-item.active .page-link,

.circulars-pagination .page-item.active .page-link,

.auction-pagination .page-item.active .page-link,

.cause-list-pagination .page-item.active .page-link,

.vacancies-pagination .page-item.active .page-link {

  background-color: #29136C !important;

  border-color: #29136C !important;

  color: #ffffff !important;

  box-shadow: 0 2px 6px rgba(41, 19, 108, 0.25);

}



.rti-pagination .page-item.disabled .page-link,

.circulars-pagination .page-item.disabled .page-link,

.auction-pagination .page-item.disabled .page-link,

.cause-list-pagination .page-item.disabled .page-link,

.vacancies-pagination .page-item.disabled .page-link {

  color: #94a3b8;

  background-color: #f8fafc;

  border-color: #e2e8f0;

  cursor: not-allowed;

  pointer-events: none;

  opacity: 0.7;

}



.rti-pagination .page-link:focus-visible,

.circulars-pagination .page-link:focus-visible,

.auction-pagination .page-link:focus-visible,

.cause-list-pagination .page-link:focus-visible,

.vacancies-pagination .page-link:focus-visible {

  outline: 2px solid #29136C;

  outline-offset: 2px;

}



.auction-pagination .page-item.disabled .page-link.border-0,

.cause-list-pagination .page-item.disabled .page-link.border-0,

.vacancies-pagination .page-item.disabled .page-link.border-0 {

  background-color: transparent !important;

  border-color: transparent !important;

  color: #94a3b8 !important;

}



/* ==========================================================================

   Landmark Judgements Document Cards & Layout

   ========================================================================== */

.judgement-pdf-icon-wrapper {

  width: 40px;

  height: 40px;

  min-width: 40px;

  min-height: 40px;

  background-color: #fef2f2;

  color: #dc2626;

  border: 1px solid #fee2e2;

  border-radius: 8px;

  display: flex;

  align-items: center;

  justify-content: center;

  flex-shrink: 0;

  transition: all 0.2s ease;

}



.judgement-pdf-icon-wrapper i {

  font-size: 32px;

  line-height: 1;

  width: 32px;

  height: 32px;

  display: flex;

  align-items: center;

  justify-content: center;

}



.official-doc-card:hover .judgement-pdf-icon-wrapper {

  background-color: #fee2e2;

  transform: scale(1.05);

}



.empty-category-notice {

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.6;

  background-color: #f8fafc;

  color: #475569;

}



/* ==========================================================================

   Proceedings Page — Dynamic Cards (SAFEMA, NDPSA, PBPTA)

   ========================================================================== */

.proceedings-cards-wrapper {

  margin-top: 1rem;

}



.proceedings-card {

  background-color: #ffffff;

  border: 1px solid #e5e7eb;

  border-radius: 20px;

  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);

  padding: 2.75rem 2rem 2.25rem;

  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1);

  min-height: 290px;

}



.proceedings-card:hover {

  transform: translateY(-4px);

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);

}



.proceedings-card-icon-wrap {

  height: 64px;

  min-height: 64px;

  display: flex;

  align-items: center;

  justify-content: center;

}



.proceedings-svg-icon {

  width: 54px;

  height: 54px;

  display: inline-block;

  transition: transform 0.2s ease;

}



.proceedings-card:hover .proceedings-svg-icon {

  transform: scale(1.05);

}



.proceedings-card-title {

  font-family: var(--font-family-heading, 'Poppins', sans-serif);

  font-size: var(--site-title-font-size, 16px);

  font-weight: 700;

  color: #0b1329;

  letter-spacing: -0.015em;

  line-height: 1.3;

  margin-top: 0.75rem;

  margin-bottom: 0.5rem;

}



.proceedings-card-desc {

  font-size: var(--site-content-font-size, 14px);

  color: #64748b;

  line-height: 1.55;

  margin-bottom: 1.75rem;

  min-height: 48px;

}



.proceedings-btn {

  background-color: #080e1e !important;

  color: #ffffff !important;

  border-radius: 50px !important;

  padding: 0.65rem 1.65rem !important;

  font-size: var(--site-content-font-size, 14px) !important;

  font-weight: 600 !important;

  border: 1px solid transparent !important;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 0.35rem;

  transition: all 0.2s ease !important;

  text-decoration: none !important;

}



.proceedings-btn:hover,

.proceedings-btn:focus {

  background-color: #152244 !important;

  color: #ffffff !important;

  transform: translateY(-2px);

  box-shadow: 0 6px 16px rgba(8, 14, 30, 0.28) !important;

}



.proceedings-btn i {

  display: inline-block;

  font-size: 0.85rem;

  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);

  transform-origin: center center;

}



.proceedings-btn:hover i,

.proceedings-btn:focus i,

.proceedings-card:hover .proceedings-btn i {

  transform: rotate(45deg);

}



.text-orange {

  color: #e65100 !important;

}



@media (max-width: 991.98px) {

  .proceedings-card {

    padding: 2.25rem 1.5rem 2rem;

  }

}



@media (max-width: 575.98px) {

  .proceedings-card {

    padding: 2rem 1.25rem 1.75rem;

    border-radius: 16px;

  }

  .proceedings-card-desc {

    min-height: auto;

    margin-bottom: 1.25rem;

  }

}



/* ==========================================================================

   Overview Page - Citizen's Charter Cards

   ========================================================================== */

.citizen-charter-section .charter-card-header,

.citizen-charter-section .card .d-flex {

  display: flex !important;

  align-items: center !important;

  gap: 1rem !important;

  margin-bottom: 1rem !important;

}



.citizen-charter-section .charter-icon-box,

.citizen-charter-section .card .d-inline-flex {

  width: 48px !important;

  height: 48px !important;

  min-width: 48px !important;

  max-width: 48px !important;

  min-height: 48px !important;

  max-height: 48px !important;

  flex: 0 0 48px !important;

  aspect-ratio: 1 / 1 !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

  align-self: center !important;

  border-radius: 12px !important;

  background-color: rgba(13, 110, 253, 0.12) !important;

  color: #0d6efd !important;

  font-size: 1.35rem !important;

  line-height: 1 !important;

  box-sizing: border-box !important;

}



.citizen-charter-section .charter-icon-box i,

.citizen-charter-section .card .d-inline-flex i,

.citizen-charter-section .card .bi {

  font-size: 1.35rem !important;

  line-height: 1 !important;

  display: inline-flex !important;

  align-items: center !important;

  justify-content: center !important;

}



.citizen-charter-section .charter-card-title,

.citizen-charter-section .card h3,

.citizen-charter-section .card .h5 {

  margin: 0 !important;

  margin-bottom: 0 !important;

  padding: 0 !important;

  align-self: center !important;

  line-height: 1.35 !important;

  font-size: var(--site-title-font-size, 16px) !important;

  font-weight: 700 !important;

  color: #0a2540 !important;

  flex: 1 1 auto !important;

}



/* === ACCESSIBILITY UNIFIED SUITE === */

/* Accessibility suite inlined below */



/* =========================================================================

   ACCESSIBILITY STYLESHEET (UNIFIED ACROSS ALL 4 SITES)

   - Skip to Main Content target styling & focus indicators

   - 5-Level Font Resizing (-2, -1, 0, +1, +2) excluding Topbar & Header

   - High Contrast Dark Palette (#121212, #1E1E1E, #252525, #F5F5F5)

   ========================================================================= */



/* -------------------------------------------------------------------------

   1. SKIP TO MAIN CONTENT TARGET & ACCESSIBLE FOCUS

   ------------------------------------------------------------------------- */

#main-content,

#mainContent,

main[tabindex="-1"] {

  scroll-margin-top: 110px !important;

  outline: none !important;

}



#main-content:focus,

#mainContent:focus,

main[tabindex="-1"]:focus {

  outline: 3px dashed #ffc107 !important;

  outline-offset: 4px !important;

}



/* Skip Link Target Styling - Preserve native theme appearance */

#main-content,

#mainContent,

main[tabindex="-1"] {

  scroll-margin-top: 120px !important;

  outline: none !important;

}



/* Ensure hidden skip links become accessible when focused via keyboard Tab */

.visually-hidden-focusable:focus,

.visually-hidden:focus {

  position: absolute !important;

  z-index: 100000 !important;

  clip: auto !important;

  clip-path: none !important;

  width: auto !important;

  height: auto !important;

  overflow: visible !important;

}



/* Universal Visible Focus Indicator */

:focus-visible {

  outline: 3px solid #ffc107 !important;

  outline-offset: 2px !important;

}



/* -------------------------------------------------------------------------

   2. FONT RESIZE SCALING (-2, -1, 0, +1, +2)

   CRITICAL: Topbar, Header, Logo, and Navigation Menus ARE STRICTLY EXCLUDED

   ------------------------------------------------------------------------- */

.gov-top-header,

.top-utility-bar,

.gov-utility-bar,

.utility-controls,

.topbar,

.main-header,

header[role="banner"],

.navbar,

.nav-menu,

.navbar-nav,

.offcanvas,

#mobileNavOffcanvas,

.main-nav,

.gov-brand-box,

.brand-wrapper,

.header-emblem,

.campaign-logo-img,

.site-logo {

  zoom: 1 !important;

}



/* Zoom scaling applied only to Main Content & Footer */

:is(body.font-scale-m2, html.font-scale-m2) :is(#main-content, main, .main-content, .inner-page-main, footer, .gov-footer, .main-footer, .site-footer) {

  zoom: 0.88;

}

:is(body.font-scale-m1, html.font-scale-m1) :is(#main-content, main, .main-content, .inner-page-main, footer, .gov-footer, .main-footer, .site-footer) {

  zoom: 0.94;

}

:is(body.font-scale-0, html.font-scale-0) :is(#main-content, main, .main-content, .inner-page-main, footer, .gov-footer, .main-footer, .site-footer) {

  zoom: 1;

}

:is(body.font-scale-p1, html.font-scale-p1) :is(#main-content, main, .main-content, .inner-page-main, footer, .gov-footer, .main-footer, .site-footer) {

  zoom: 1.06;

}

:is(body.font-scale-p2, html.font-scale-p2) :is(#main-content, main, .main-content, .inner-page-main, footer, .gov-footer, .main-footer, .site-footer) {

  zoom: 1.12;

}



/* Font button active states */

.gov-font-btn.active,

.text-resize-btn.active,

.btn-acc.active,

.accessibility-btn.active,

.font-size-btn.active {

  background-color: #0b2545 !important;

  color: #ffc107 !important;

  font-weight: 700 !important;

  border-color: #ffc107 !important;

}



/* -------------------------------------------------------------------------

   3. HIGH CONTRAST DARK MODE PALETTE & COMPREHENSIVE THEME OVERRIDES

   Target: Competent Authority & Administrator (CAA) Website

   Theme: dor_competent

   Main background: #121212

   Cards / surfaces: #1E1E1E

   Elevated / modals: #222222 / #262626

   Primary text: #F5F5F5

   Secondary text: #D0D0D0

   Muted text: #94A3B8 / #CBD5E1

   Borders: #383838 / #475569

   Accents & Links: #60A5FA / #FFC107 / #FDE047

   ------------------------------------------------------------------------- */



/* HTML & Body Base */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) {

  background-color: #121212 !important;

  color: #f5f5f5 !important;

}



/* =========================================================================

   A. HEADER & TOPBAR (GOVERNMENT UTILITY STRIP & NAVBAR)

   ========================================================================= */



/* Top Utility Strip */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gov-utility-strip {

  background-color: #0a0a0a !important;

  border-bottom: 1px solid #383838 !important;

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gov-brand-links span {

  color: #f5f5f5 !important;

  opacity: 1 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gov-brand-links a {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gov-brand-links a:hover {

  color: #93c5fd !important;

}



/* Accessibility Font-Size Adjuster Buttons */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accessibility-btn-group {

  background: #1a1a1a !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-acc {

  color: #f5f5f5 !important;

  background: transparent !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-acc:hover {

  background: #333333 !important;

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-acc.active {

  background: #ffc107 !important;

  color: #000000 !important;

  font-weight: 700 !important;

}



/* Contrast & Accessibility Toggles */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-theme-toggle,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) #btn-contrast-toggle {

  background: #ffc107 !important;

  color: #000000 !important;

  border: 1px solid #ffc107 !important;

  font-weight: 600 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-theme-toggle:hover,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) #btn-contrast-toggle:hover {

  background: #ffcd39 !important;

  color: #000000 !important;

}



/* Language Switcher & Official Login Link */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .lang-switch {

  background: #1a1a1a !important;

  color: #fde047 !important;

  border: 1px solid #854d0e !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .lang-switch:hover {

  background: #fde047 !important;

  color: #000000 !important;

}



/* Global Search Trigger in Header Strip */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-search-trigger {

  background: #1a1a1a !important;

  color: #f5f5f5 !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-search-trigger:hover {

  background: #333333 !important;

  color: #ffc107 !important;

  border-color: #ffc107 !important;

}



/* Main Navigation Header */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .main-header {

  background-color: #161616 !important;

  border-bottom: 1px solid #383838 !important;

}



/* Brand Identity in Dark Mode */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .navbar-brand-wrapper {

  background: transparent !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .emblem-light {

  display: none !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .emblem-dark {

  display: block !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dept-title-main {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dept-title-sub {

  color: #e2e8f0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dept-title-meta {

  color: #cbd5e1 !important;

}



/* Mobile Toggler & Offcanvas Drawer */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .navbar-toggler {

  color: #ffffff !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .navbar-toggler-icon {

  filter: invert(1) brightness(2) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .offcanvas {

  background-color: #1a1a1a !important;

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .offcanvas-header {

  border-bottom: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .offcanvas-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .offcanvas .btn-close {

  filter: invert(1) brightness(1.5) !important;

}



/* Navigation Links */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .navbar-nav .nav-link {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .navbar-nav .nav-link:hover,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .navbar-nav .nav-link.active,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .navbar-nav .nav-link:focus {

  color: #ffc107 !important;

}



/* Dropdown Menus & Submenus */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-menu {

  background-color: #222222 !important;

  border: 1px solid #383838 !important;

  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item:hover,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item:focus,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item.active {

  background-color: #333333 !important;

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-divider {

  border-top-color: #383838 !important;

}



/* Multi-Level Submenus */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-submenu > .dropdown-submenu-menu {

  background-color: #262626 !important;

  border: 1px solid #383838 !important;

  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.7) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-submenu-toggle {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-submenu:hover > .dropdown-submenu-toggle,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-submenu:focus-within > .dropdown-submenu-toggle {

  background-color: #333333 !important;

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .submenu-arrow {

  color: #cbd5e1 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .office-name {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item.office-link:hover .office-name,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item.office-link:focus .office-name {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item.office-pending {

  color: #888888 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-item i.text-primary,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .dropdown-submenu-toggle i.text-primary,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .office-link i.text-primary {

  color: #60a5fa !important;

}



/* =========================================================================

   B. HOMEPAGE SECTIONS

   ========================================================================= */



/* Section Containers & Backgrounds */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) section,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .section-padding,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .bg-theme-subtle,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .bg-theme-white,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .bg-light,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .bg-white {

  background-color: #121212 !important;

  color: #f5f5f5 !important;

}



/* Section Headings, Eyebrows & Lead Text */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .section-eyebrow,
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .section-eyebrow,
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #important-links .section-eyebrow {
  background: #1e1e1e !important;
  background-color: #1e1e1e !important;
  color: #fde047 !important;
  border: 1px solid #854d0e !important;
}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .section-heading-lg {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .section-lead {

  color: #cbd5e1 !important;

}



/* 1. Hero Highlights Slider (.tribunal-hero-slider) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .slide-title {

  color: #ffffff !important;

  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .slide-desc {

  color: #e2e8f0 !important;

  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .slide-badge {

  background: rgba(18, 18, 18, 0.85) !important;

  color: #fde047 !important;

  border: 1px solid #854d0e !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .ctrl-icon-box {

  background: #1e1e1e !important;

  color: #ffffff !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .custom-carousel-ctrl:hover .ctrl-icon-box {

  background: #ffc107 !important;

  color: #000000 !important;

}



/* 2. News Ticker Strip (.news-ticker-strip) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-ticker-strip {

  background-color: #181818 !important;

  border-top: 1px solid #383838 !important;

  border-bottom: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .ticker-label-badge {

  background: #252525 !important;

  color: #ffc107 !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .ticker-item-link {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .ticker-item-link:hover {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .ticker-date-tag {

  background: #262626 !important;

  color: #fde047 !important;

  border: 1px solid #475569 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-ticker-ctrl {

  background: #252525 !important;

  color: #f5f5f5 !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-ticker-ctrl:hover {

  background: #333333 !important;

  color: #ffc107 !important;

}



/* 3. About Section (#about-tribunal) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .about-tab-content-area,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .about-tab-pane {

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .about-tab-pane p {

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .about-tab-pane strong {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .about-tab-btn {

  background-color: #1e1e1e !important;

  color: #cbd5e1 !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .about-tab-btn:hover {

  background-color: #2a2a2a !important;

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .about-tab-btn.active {

  background-color: #ffc107 !important;

  color: #000000 !important;

  border-color: #ffc107 !important;

  font-weight: 700 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .leader-dual-card,
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-card {
  background: #1e1e1e !important;
  background-color: #1e1e1e !important;
  border: 1px solid #383838 !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6) !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .leader-dual-img-wrap,
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-img-wrap {
  background: #111827 !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .leader-dual-body,
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-body {
  background: transparent !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-badge {
  background: #252525 !important;
  color: #fde047 !important;
  border: 1px solid #854d0e !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-name {
  color: #ffffff !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-role {
  color: #fde047 !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-desc {
  color: #d1d5db !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-link {
  color: #60a5fa !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .leader-dual-link:hover {
  color: #93c5fd !important;
}



/* 4. Statistics & Numbers (#hero.hero-corporate) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .hero-corporate,
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #hero {
  background: #141414 !important;
  background-color: #141414 !important;
  background-image: none !important;
  border-top: 1px solid #2e2e2e !important;
  border-bottom: 1px solid #2e2e2e !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .hero-corporate::before,
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #hero::before {
  display: none !important;
  background-image: none !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .stat-counter-box {
  background: #1e1e1e !important;
  border: 1px solid #333333 !important;
  border-radius: 10px !important;
  padding: 1.25rem 1rem !important;
  width: 100% !important;
}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .stat-number {

  color: #fde047 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .stat-label {

  color: #f5f5f5 !important;

}



/* 5. Regional Benches Cell (#news-section) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-card {

  background-color: #1e1e1e !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-date {

  color: #fde047 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-excerpt {

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-contact-row {

  color: #cbd5e1 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-contact-row i {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-contact-link {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .news-contact-link:hover {

  color: #93c5fd !important;

}



/* 6. Circulars / Notifications List (#orders-section) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-pill-btn {

  background-color: #1e1e1e !important;

  color: #cbd5e1 !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-pill-btn:hover {

  background-color: #2a2a2a !important;

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-pill-btn.active {

  background-color: #2563eb !important;

  color: #ffffff !important;

  border-color: #2563eb !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .document-item-card {

  background-color: #1e1e1e !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-badge-type {

  background-color: #252525 !important;

  color: #ffc107 !important;

  border: 1px solid #475569 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .document-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .document-meta-sub {

  color: #cbd5e1 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .document-meta-sub strong {

  color: #fde047 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-case-no {

  color: #94a3b8 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-date {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-filesize {

  color: #94a3b8 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-view-order {

  background-color: #252525 !important;

  color: #60a5fa !important;

  border: 1px solid #475569 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-view-order:hover {

  background-color: #2563eb !important;

  color: #ffffff !important;

  border-color: #2563eb !important;

}



/* 7. Legal Framework / Forfeiture Law (#services-grid) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .prog-box {

  border-right: 16px solid #121212 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .prog-box .content h2 {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .prog-box .vertical-text {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .prog-explore-link {

  color: #fde047 !important;

  border-bottom-color: #fde047 !important;

}



/* 8. Benches & Leadership (#benches-section) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gov-leader-card {

  background-color: #1e1e1e !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .leader-name {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .leader-designation {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .leader-zone {

  color: #fde047 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .leader-bio-preview {

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-leader-profile {

  background-color: #252525 !important;

  color: #ffffff !important;

  border: 1px solid #475569 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-leader-profile:hover {

  background-color: #383838 !important;

  color: #ffc107 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-leader-bench {

  background-color: transparent !important;

  color: #fde047 !important;

  border: 1px solid #854d0e !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .btn-leader-bench:hover {

  background-color: #fde047 !important;

  color: #000000 !important;

}



/* 9. Media & Photo Gallery (#media-gallery-section) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gallery-card {

  background-color: #1e1e1e !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gallery-card-category {

  color: #fde047 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gallery-card-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gallery-card-date {

  color: #94a3b8 !important;

}



/* 10. Frequently Asked Questions (#faq-section) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accordion-item {

  background-color: #1e1e1e !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accordion-button {

  background-color: #1e1e1e !important;

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accordion-button:not(.collapsed) {

  background-color: #252525 !important;

  color: #ffc107 !important;

  border-bottom: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accordion-button::after {

  filter: invert(1) brightness(1.5) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accordion-body {

  background-color: #1e1e1e !important;

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accordion-body a {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .accordion-body a:hover {

  color: #93c5fd !important;

}



/* 11. Important Portals & Links (#important-links) */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .portal-link-card {

  background-color: #1e1e1e !important;

  border: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .portal-link-card:hover {

  border-color: #ffc107 !important;

  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.5) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .portal-card-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .portal-card-domain {

  color: #60a5fa !important;

}



/* Important Links Emblems in Dark Mode */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .portal-emblem-img {

  filter: brightness(0) invert(1) !important;

  opacity: 0.95 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .portal-emblem-img.emblem-dark {

  display: block !important;

  filter: none !important;

  opacity: 1 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .portal-emblem-img.emblem-light {

  display: none !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .official-emblem-img {

  filter: brightness(0) invert(1) !important;

  opacity: 0.95 !important;

}



/* =========================================================================

   C. FOOTER

   ========================================================================= */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-corporate,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) footer {

  background-color: #0c0c0c !important;

  color: #d0d0d0 !important;

  border-top: 2px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-corporate h2,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-corporate h3,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-corporate h4,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-corporate h5,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-heading,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-desc,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-contact-row {

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-corporate a,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-links li a {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-corporate a:hover,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-links li a:hover {

  color: #93c5fd !important;

  text-decoration: underline !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-bottom {

  background-color: #060606 !important;

  border-top: 1px solid #282828 !important;

  color: #94a3b8 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-bottom-links a {

  color: #94a3b8 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .footer-bottom-links a:hover {

  color: #ffffff !important;

}



/* =========================================================================

   D. ALL MODALS (14 PORTAL MODALS)

   ========================================================================= */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-content,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-content-corporate {

  background-color: #1e1e1e !important;

  color: #f5f5f5 !important;

  border: 1px solid #383838 !important;

  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8) !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-header,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-header-corporate {

  background-color: #181818 !important;

  border-bottom: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-body {

  background-color: #1e1e1e !important;

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-body .bg-white,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-body .bg-light {

  background-color: #252525 !important;

  border-color: #383838 !important;

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-footer {

  background-color: #181818 !important;

  border-top: 1px solid #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-body label,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-body .form-label {

  color: #cbd5e1 !important;

}



/* Document Preview Simulator Inside Modal */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-body .text-dark {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .modal-body .text-muted {

  color: #cbd5e1 !important;

}



/* =========================================================================

   E. INNER PAGES, BREADCRUMBS & ARTICLE LAYOUTS

   ========================================================================= */



/* Inner Page Banner */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .inner-page-banner {

  background: linear-gradient(135deg, #0e0e0e 0%, #1a1a1a 100%) !important;

  border-bottom: 3px solid #ffc107 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .page-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .page-subtitle {

  color: #cbd5e1 !important;

}



/* Breadcrumbs */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .breadcrumb-item a {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .breadcrumb-item a:hover {

  color: #93c5fd !important;

  text-decoration: underline !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .breadcrumb-item.active {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .breadcrumb-item + .breadcrumb-item::before {

  color: #64748b !important;

}



/* Inner Page Main Content Boxes */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .inner-page-content-box,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .inner-page-sidebar {

  background-color: #1e1e1e !important;

  border-color: #383838 !important;

  color: #f5f5f5 !important;

}



/* Dynamic Jurisdiction Layout */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .jurisdiction-entry-card {

  background-color: #1e1e1e !important;

  border-color: #383838 !important;

  border-left-color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .jurisdiction-authority-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .jurisdiction-desc-label {

  color: #fde047 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .jurisdiction-desc-text {

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .jurisdiction-map-card {

  background-color: #1e1e1e !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .jurisdiction-rule-card {

  background-color: #181818 !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rule-content {

  color: #d0d0d0 !important;

}



/* Official Message Presentation */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .official-letterhead-card {

  background-color: #1e1e1e !important;

  border-color: #383838 !important;

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .letterhead-titles,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .letterhead-address,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .letterhead-contact-details,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .message-paragraph {

  color: #d0d0d0 !important;

}



/* Forfeiture Law Pages & Components */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .forfeiture-page-container,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .forfeiture-header-block,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .forfeiture-image-card,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .official-doc-card,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .charter-card-header {

  background-color: #1e1e1e !important;

  border-color: #383838 !important;

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .forfeiture-main-title,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .doc-card-title,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .charter-card-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .official-doc-card {

  border-left: 5px solid #60a5fa !important;

}



/* Proceedings Cards */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .proceedings-card {

  background-color: #1e1e1e !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .proceedings-card-title {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .proceedings-card-desc {

  color: #d0d0d0 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .proceedings-card-icon-wrap {

  background-color: #252525 !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .proceedings-btn {

  background-color: #2563eb !important;

  color: #ffffff !important;

}



/* RTI Page & Cards */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-intro-heading-card,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-org-card,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-accordion .accordion-item,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-accordion .accordion-button,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-accordion .accordion-body {

  background-color: #1e1e1e !important;

  border-color: #383838 !important;

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-accordion .accordion-button {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-accordion .accordion-button:not(.collapsed) {

  color: #ffc107 !important;

  background-color: #252525 !important;

}



/* Content Prose Elements */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .content-body-prose h1,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .content-body-prose h2,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .content-body-prose h3,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .content-body-prose h4 {

  color: #ffffff !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .content-body-prose p,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .content-body-prose li {

  color: #d0d0d0 !important;

}



/* =========================================================================

   F. TABLES, FORMS, BADGES & PAGINATION

   ========================================================================= */



/* Tables */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) table,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .table,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .gov-table,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .circulars-documents-table,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-documents-table {

  background-color: #1e1e1e !important;

  color: #f5f5f5 !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) table thead,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .table thead,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) table th,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .table th {

  background-color: #252525 !important;

  color: #ffffff !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) table td,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .table td {

  background-color: #1e1e1e !important;

  color: #d0d0d0 !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) table tbody tr:nth-of-type(even) td,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .table tbody tr:nth-of-type(even) td {

  background-color: #181818 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) table tbody tr:hover td,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .table tbody tr:hover td {

  background-color: #2a2a2a !important;

  color: #ffffff !important;

}



/* Form Inputs */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) input[type="text"],

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) input[type="search"],

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) input[type="email"],

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) input[type="password"],

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) input[type="date"],

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) select,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) textarea,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .form-control,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .form-select {

  background-color: #1a1a1a !important;

  color: #f5f5f5 !important;

  border-color: #475569 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) input::placeholder,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) textarea::placeholder {

  color: #888888 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) input:focus,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) select:focus,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) textarea:focus {

  border-color: #60a5fa !important;

  box-shadow: 0 0 0 0.25rem rgba(96, 165, 250, 0.25) !important;

}



/* Badges & Pagination */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .badge:not(.bg-warning):not(.bg-danger):not(.bg-success):not(.bg-primary) {

  background-color: #252525 !important;

  color: #f5f5f5 !important;

  border: 1px solid #475569 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .pagination .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .vacancies-pagination .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .cause-list-pagination .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .auction-pagination .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .circulars-pagination .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-pagination .page-link {

  background-color: #1e1e1e !important;

  color: #f5f5f5 !important;

  border-color: #383838 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .pagination .page-item.active .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .vacancies-pagination .page-item.active .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .cause-list-pagination .page-item.active .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .auction-pagination .page-item.active .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .circulars-pagination .page-item.active .page-link,

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .rti-pagination .page-item.active .page-link {

  background-color: #2563eb !important;

  border-color: #2563eb !important;

  color: #ffffff !important;

}



/* =========================================================================

   G. CRITICAL UTILITY & COLOR OVERRIDES IN DARK MODE

   ========================================================================= */



/* Crucial: Override .text-navy which is otherwise hardcoded to #061a33 !important */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .text-navy {

  color: #f5f5f5 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .text-secondary {

  color: #cbd5e1 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .text-muted {

  color: #cbd5e1 !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .text-dark {

  color: #f5f5f5 !important;

}



/* General Link Styling in Dark Mode */

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) a:not(.btn):not(.badge):not(.nav-link):not(.dropdown-item) {

  color: #60a5fa !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) a:not(.btn):not(.badge):not(.nav-link):not(.dropdown-item):hover {

  color: #93c5fd !important;

  text-decoration: underline !important;

}



/* =========================================================================

   H. PRESERVE ALL GOVERNMENT ASSETS, LOGOS, AND PHOTOS WITHOUT INVERSION

   ========================================================================= */

img,

picture,

svg:not(.bi):not(.gov-flag-icon),

video,

canvas,

iframe {

  filter: none !important;

}





/* =========================================================================

   GLOBAL STANDARDIZED TYPOGRAPHY SUITE (COMPETENT AUTHORITY & ADMINISTRATOR - CAA)

   Strict Standards:

     --site-title-font-size: 16px   -> All titles, headings, and title-like elements

     --site-content-font-size: 14px -> All respective content, descriptions, and text

   Applies across Desktop, Tablet, Mobile, Light & Dark themes, and Drupal dynamic content.

   ========================================================================= */



/* 1. Base Typography & Font Family */

html,

body {

  font-family: 'Poppins', sans-serif;

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.5;

}



/* 2. All Titles and Headings (16px) */

h1, h2, h3, h4, h5, h6,

.h1, .h2, .h3, .h4, .h5, .h6 {

  font-family: 'Poppins', sans-serif;

  font-size: var(--site-title-font-size, 16px);

  line-height: 1.35;

}



/* Homepage Section Headings and Subtitles */

.section-eyebrow,

.section-heading-lg,

.section-title,

.sec-title,

.sec-heading h2,

#important-links .section-heading-lg,

#important-links .section-eyebrow {

  font-size: var(--site-title-font-size, 16px);

}



/* Hero Section Headings and Titles */

.slide-title,

.hero-title,

.brand-title,

.dept-title-main,

.dept-title-sub {

  font-size: var(--site-title-font-size, 16px);

}



/* Inner-page Titles */

.page-title,

h1.page-title,

.inner-page-banner h1,

.inner-page-banner .page-title,

.forfeiture-main-title,

.jurisdiction-authority-title,

.official-message-heading {

  font-size: var(--site-title-font-size, 16px);

}



/* Section and Subsection Headings */

.content-body-prose h1,

.content-body-prose h2,

.content-body-prose h3,

.content-body-prose h4,

.content-body-prose h5,

.content-body-prose h6,

.forfeiture-section-item h3,

.forfeiture-section-item h4,

.freezing-sub-item h4,

.official-message-title-wrapper h2,

.letterhead-line {

  font-size: var(--site-title-font-size, 16px);

}



/* About Us Headings & Leadership */

.leader-dual-name,

.leader-name,

.gov-leader-name,

.about-card h3 {

  font-size: var(--site-title-font-size, 16px);

}



/* Forfeiture Law Card Titles (Acts, Rules, Related Laws, Landmark Judgements) */

.content h2,

.project-content h4,

.service-card-title,

.area-card-title,

.case-service-title,

.proceedings-card-title,

.citizen-charter-section .charter-card-title,

.citizen-charter-section .card h3,

.citizen-charter-section .card .h5 {

  font-size: var(--site-title-font-size, 16px);

}



/* Related Offices Headings & Cards */

.news-title,

.document-title,

.gallery-card-title,

.portal-card-title,

.bench-summary-title {

  font-size: var(--site-title-font-size, 16px);

}



/* Table Section Headings, Sidebar Headings & Footer Headings */

.footer-corporate .footer-brand-title,

.footer-corporate .footer-column-title,

.sidebar-heading,

.table caption,

.table th,

thead th,

.card-header,

.card-title {

  font-size: var(--site-title-font-size, 16px);

}



/* Navigation Dropdown Section Titles & Accordions */

.nav-dropdown .dropdown-header,

.dropdown-menu .dropdown-header,

.accordion-button,

.accordion-corporate .accordion-button,

.rti-accordion .accordion-button,

.modal-title,

.offcanvas-title {

  font-size: var(--site-title-font-size, 16px);

}





/* 3. All Respective Content and Descriptive Text (14px) */

/* Paragraphs and Descriptions */

p,

.section-lead,

.slide-desc,

.hero-description,

.page-subtitle,

.content-body-prose,

.content-body-prose p,

.content-body-prose li,

.jurisdiction-desc-text,

.rule-content,

.message-paragraph,

.forfeiture-intro-lead-wrapper p,

.forfeiture-section-item p,

.freezing-sub-body,

.rti-statutory-subtitle,

.empty-category-notice,

.proceedings-card-desc {

  font-size: var(--site-content-font-size, 14px);

  line-height: 1.6;

}



/* Card Descriptions & Supporting Text */

.service-card-desc,

.area-card-desc,

.case-service-desc,

.leader-dual-desc,

.leader-bio-preview,

.news-excerpt,

.gallery-card-caption,

.bench-summary-desc,

.portal-card-domain,

.about-tab-pane,

.accordion-body,

.accordion-corporate .accordion-body,

.rti-accordion .accordion-body {

  font-size: var(--site-content-font-size, 14px);

}



/* Breadcrumb Text */

.breadcrumb,

.breadcrumb-item,

.breadcrumb-item a,

.breadcrumbs-wrapper,

.inner-page-banner .breadcrumb {

  font-size: var(--site-content-font-size, 14px);

}



/* Navigation, Dropdowns & Menus */

.navbar-nav .nav-link,

.dropdown-item,

.dropdown-submenu-menu .dropdown-item,

.nav-menu > li > a,

.nav-dropdown a,

.gov-utility-strip,

.gov-utility-strip a,

.dept-title-meta {

  font-size: var(--site-content-font-size, 14px);

}



/* Form Controls, Inputs, Placeholders, Labels & Helper Text */

input,

select,

textarea,

label,

.form-label,

.form-control,

.form-select,

.form-control-enterprise,

.form-text,

.search-tab-btn,

.search-input {

  font-size: var(--site-content-font-size, 14px);

}



/* Buttons and Action Links */

button,

.btn,

.btn-hero-primary,

.btn-hero-secondary,

.btn-header-cta,

.btn-view-order,

.btn-download-pdf,

.btn-leader-profile,

.btn-leader-bench,

.btn-search-primary,

.service-card-action,

.case-service-link,

.news-contact-link,

.gallery-action-link,

.prog-explore-link,

.proceedings-btn,

.leader-dual-link,

.about-tab-btn,

.doc-pill-btn,

.gallery-tab-btn,

.btn-acc,

.btn-theme-toggle,

.btn-ticker-ctrl {

  font-size: var(--site-content-font-size, 14px);

}



/* Table Headers and Table Data */

table,

.table,

table td,

.table td,

table th,

.table th,

.rti-documents-table td,

.rti-documents-table th,

.circulars-documents-table td,

.circulars-documents-table th {

  font-size: var(--site-content-font-size, 14px);

}



/* List Items and Nested Lists */

ul li,

ol li,

.list-group-item,

.manual-content-block ol.manual-list li {

  font-size: var(--site-content-font-size, 14px);

}



/* Metadata, Dates, and Supporting Information */

.text-muted,

.text-secondary,

.meta,

.date,

.doc-date,

.doc-filesize,

.news-date,

.gallery-card-date,

.ticker-date-tag,

.ticker-item-link,

.ticker-label-badge,

.slide-badge,

.hero-trust-badge,

.seal-pill,

.hero-mini-stat-label,

.stat-label,

.leader-dual-badge,

.leader-dual-role,

.leader-designation,

.gov-leader-designation,

.leader-zone,

.gov-leader-bench-tag,

.badge-bench,

.badge-status-scheduled,

.badge-status-passed,

.doc-badge-type,

.doc-case-no,

.document-meta-sub,

.notif-date-badge,

.notif-category,

.gallery-card-category,

.image-caption,

.jurisdiction-desc-label,

.official-message-date,

.official-message-closing,

.news-contact-row,

.news-contact-row span {

  font-size: var(--site-content-font-size, 14px);

}



/* Footer Contact Details, Email, Address, Links & Credits */

.footer-corporate,

.footer-corporate p,

.footer-corporate .footer-contact-item,

.footer-corporate .footer-links a,

.footer-corporate .footer-sublinks a,

.footer-corporate .compliance-badge,

.footer-corporate .footer-bottom-bar,

.footer-corporate .footer-policy-links,

.footer-corporate .footer-policy-links a,

.footer-corporate .footer-credits-wrap,

.letterhead-address,

.letterhead-contact-details,

.letterhead-contact-details span,

.letterhead-contact-details a {

  font-size: var(--site-content-font-size, 14px);

}



/* Error Messages, Validation & Notifications */

.alert,

.messages,

.messages--error,

.messages--status,

.messages--warning,

.invalid-feedback,

.valid-feedback,

.pagination .page-link,

.rti-pagination .page-link,

.circulars-pagination .page-link,

.auction-pagination .page-link,

.cause-list-pagination .page-link,

.vacancies-pagination .page-link {

  font-size: var(--site-content-font-size, 14px);

}



/* 4. Responsive Enforcement (Desktop, Tablet, Mobile) */

@media (max-width: 1199.98px), (max-width: 991.98px), (max-width: 767.98px), (max-width: 575.98px) {

  h1, h2, h3, h4, h5, h6,

  .h1, .h2, .h3, .h4, .h5, .h6,

  .section-eyebrow,

  .section-heading-lg,

  .section-title,

  .sec-title,

  .slide-title,

  .hero-title,

  .brand-title,

  .dept-title-main,

  .dept-title-sub,

  .page-title,

  h1.page-title,

  .inner-page-banner h1,

  .inner-page-banner .page-title,

  .forfeiture-main-title,

  .jurisdiction-authority-title,

  .leader-dual-name,

  .leader-name,

  .gov-leader-name,

  .service-card-title,

  .area-card-title,

  .case-service-title,

  .proceedings-card-title,

  .news-title,

  .document-title,

  .gallery-card-title,

  .portal-card-title,

  .bench-summary-title,

  .accordion-button,

  .accordion-corporate .accordion-button,

  .rti-accordion .accordion-button,

  .footer-corporate .footer-brand-title,

  .footer-corporate .footer-column-title,

  .citizen-charter-section .charter-card-title,

  .citizen-charter-section .card h3,

  .citizen-charter-section .card .h5,

  .content h2,

  .project-content h4 {

    font-size: var(--site-title-font-size, 16px) !important;

  }



  p,

  .section-lead,

  .slide-desc,

  .hero-description,

  .page-subtitle,

  .content-body-prose,

  .content-body-prose p,

  .jurisdiction-desc-text,

  .rule-content,

  .message-paragraph,

  .forfeiture-intro-lead-wrapper p,

  .forfeiture-section-item p,

  .freezing-sub-body,

  .rti-statutory-subtitle,

  .service-card-desc,

  .leader-dual-desc,

  .news-excerpt,

  .gallery-card-caption,

  .bench-summary-desc,

  .accordion-body,

  .footer-corporate .footer-contact-item,

  .footer-corporate .footer-links a,

  .footer-corporate .footer-policy-links,

  .navbar-nav .nav-link,

  .dropdown-item,

  .breadcrumb-item,

  .dept-title-meta {

    font-size: var(--site-content-font-size, 14px) !important;

  }

}





/* ==========================================================================

   About Section: Full-Height Image Card Aligned With Eyebrow (Top) & Tabs (Bottom)

   ========================================================================== */

#about-tribunal .about-leadership-wrap {

  min-height: 280px;

}



#about-tribunal .section-eyebrow {

  white-space: nowrap !important;

  letter-spacing: 0.04em !important;

  font-size: 0.82rem !important;

  line-height: 1.4 !important;

  max-width: 100%;

  margin-top: 0 !important;

}



@media (min-width: 992px) {
  #about-tribunal .row {
    align-items: stretch !important;
    --bs-gutter-x: 3.5rem !important;
  }

  #about-tribunal .about-content-col {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    height: 100% !important;
    padding-right: 0.5rem !important;
  }

  #about-tribunal .about-tab-content-area {
    flex-grow: 0 !important;
    margin-bottom: 1.25rem !important;
  }

  #about-tribunal .about-tab-pane p:empty,
  #about-tribunal .about-tab-pane p:last-child:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #about-tribunal .about-tab-pane p:last-child {
    margin-bottom: 0 !important;
  }

  #about-tribunal .about-tabs-nav {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  #about-tribunal .about-leadership-col {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding-left: 1.75rem !important;
  }

  #about-tribunal .about-leadership-wrap {
    min-height: 280px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    gap: 0 !important;
    margin: 0 !important;
    width: 100% !important;
  }

  #about-tribunal .leader-dual-card {
    height: 100% !important;
    min-height: 280px !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    border-radius: var(--radius-lg, 12px) !important;
    overflow: hidden !important;
    margin: 0 !important;
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.07) !important;
  }

  #about-tribunal .leader-dual-img-wrap {
    position: relative !important;
    width: 200px !important;
    min-width: 180px !important;
    max-width: 210px !important;
    flex: 0 0 36% !important;
    align-self: stretch !important;
    height: 100% !important;
    min-height: 280px !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
    display: block !important;
    background: #0f172a !important;
  }

  #about-tribunal .leader-dual-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    display: block !important;
  }

  #about-tribunal .leader-dual-body {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    padding: 1.5rem 1.75rem 1.5rem 1.75rem !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
}

@media (min-width: 576px) and (max-width: 991.98px) {
  #about-tribunal .about-leadership-col {
    margin-top: 2rem !important;
    padding-left: 0 !important;
  }

  #about-tribunal .about-leadership-wrap {
    min-height: auto !important;
    width: 100% !important;
  }

  #about-tribunal .leader-dual-card {
    min-height: 240px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    border-radius: var(--radius-lg, 12px) !important;
    overflow: hidden !important;
  }

  #about-tribunal .leader-dual-img-wrap {
    position: relative !important;
    width: 180px !important;
    min-width: 180px !important;
    flex: 0 0 180px !important;
    align-self: stretch !important;
    height: 100% !important;
    min-height: 240px !important;
    overflow: hidden !important;
    background: #0f172a !important;
  }

  #about-tribunal .leader-dual-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    display: block !important;
  }

  #about-tribunal .leader-dual-body {
    padding: 1.35rem 1.5rem !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    flex: 1 1 auto !important;
  }
}

@media (max-width: 575.98px) {
  #about-tribunal .about-leadership-col {
    margin-top: 1.5rem !important;
    padding-left: 0 !important;
  }

  #about-tribunal .about-leadership-wrap {
    min-height: auto !important;
    width: 100% !important;
  }

  #about-tribunal .leader-dual-card {
    display: flex !important;
    flex-direction: column !important;
    min-height: auto !important;
    border-radius: var(--radius-lg, 12px) !important;
    overflow: hidden !important;
  }

  #about-tribunal .leader-dual-img-wrap {
    position: relative !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 220px !important;
    min-height: 220px !important;
    flex: none !important;
    overflow: hidden !important;
    background: #0f172a !important;
  }

  #about-tribunal .leader-dual-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    display: block !important;
  }

  #about-tribunal .leader-dual-body {
    padding: 1.25rem !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

/* ==========================================================================
   About Tribunal & Presiding Authority: Dark Contrast Mode Explicit Overrides
   ========================================================================== */
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .leader-dual-card {
  background: #1e1e1e !important;
  background-color: #1e1e1e !important;
  border: 1px solid #383838 !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6) !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .leader-dual-img-wrap {
  background: #111827 !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .leader-dual-body {
  background: transparent !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) #about-tribunal .section-eyebrow {
  background: #1e1e1e !important;
  background-color: #1e1e1e !important;
  color: #fde047 !important;
  border: 1px solid #854d0e !important;
}

/* ==========================================================================

   Header Office Location Dynamic Pill

   ========================================================================== */

.dept-title-meta-wrap {

  display: inline-flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 0.5rem;

}



.header-office-pill {

  display: inline-flex;

  align-items: center;

  gap: 0.35rem;

  font-family: var(--font-family-base, 'Poppins', sans-serif);

  font-size: 0.72rem;

  font-weight: 600;

  line-height: 1;

  text-transform: uppercase;

  letter-spacing: 0.5px;

  padding: 0.22rem 0.65rem;

  border-radius: 50rem;

  background: #eff6ff;

  color: #29136C;

  border: 1px solid #c7d2fe;

  box-shadow: 0 1px 2px rgba(41, 19, 108, 0.06);

  white-space: nowrap;

  vertical-align: middle;

}



.header-office-pill::before {

  content: "";

  display: inline-block;

  width: 5px;

  height: 5px;

  border-radius: 50%;

  background-color: #2563eb;

}



@media (max-width: 575.98px) {

  .header-office-pill {

    font-size: 0.65rem;

    padding: 0.18rem 0.5rem;

  }

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .header-office-pill {

  background: rgba(255, 255, 255, 0.15) !important;

  color: #ffffff !important;

  border-color: rgba(255, 255, 255, 0.4) !important;

  box-shadow: none !important;

}



:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast) .header-office-pill::before {

  background-color: #f59e0b !important;

}



/* ==========================================================================

   Header Navigation Single-Line & Responsive Container Spacing

   ========================================================================== */

.main-header .navbar-nav .nav-link,

.main-header .navbar-nav .nav-item,

.main-header .navbar-nav > li > a,

.main-header .navbar-nav span {

  white-space: nowrap !important;

  word-break: keep-all !important;

}



@media (min-width: 992px) and (max-width: 1399.98px) {

  .main-header .container,

  .gov-utility-strip .container {

    max-width: 100% !important;

    padding-left: clamp(1rem, 2.5vw, 2.5rem) !important;

    padding-right: clamp(1rem, 2.5vw, 2.5rem) !important;

  }

  .navbar-nav .nav-link {

    padding: 0.5rem 0.35rem !important;

  }

}

/* ==========================================================================
   DYNAMIC ORGANISATION CHART STYLING
   ========================================================================== */

.org-chart-presentation-wrapper {
  width: 100%;
}

.org-chart-main-card {
  background-color: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
}

.org-chart-emblem-container {
  display: flex;
  justify-content: center;
  align-items: center;
}

.org-chart-emblem-image {
  height: 84px;
  width: auto;
  max-width: 120px;
  object-fit: contain;
}

.org-chart-main-title {
  color: #1e293b;
  font-size: 1.45rem;
  letter-spacing: 0.5px;
}

.org-chart-dept-name {
  color: #475569;
  font-size: 1.1rem;
}

.org-chart-govt-name {
  color: #64748b;
  font-size: 0.98rem;
}

/* Organisation Tree Hierarchy */
.org-tree-diagram {
  position: relative;
  width: 100%;
}

.org-central-authority-level {
  position: relative;
  margin-bottom: 0;
}

.org-central-box {
  background: linear-gradient(135deg, #1e40af 0%, #2563eb 100%);
  border: 1px solid #1e3a8a;
  border-radius: 12px;
  padding: 0.85rem 2.5rem;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.25);
  min-width: 290px;
  max-width: 90%;
  display: inline-block;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.org-central-box:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(37, 99, 235, 0.35);
}

.org-central-text {
  font-size: 1.15rem;
  letter-spacing: 0.3px;
  color: #ffffff;
}

/* Vertical stem from central card down */
.org-vertical-stem {
  width: 2px;
  height: 36px;
  background-color: #2563eb;
  margin: 0 auto;
}

/* Branches level */
.org-branches-level {
  position: relative;
  width: 100%;
}

/* Desktop Horizontal Connector Bar */
@media (min-width: 992px) {
  .org-horizontal-bar {
    position: absolute;
    top: 0;
    left: 12.5%;
    right: 12.5%;
    height: 2px;
    background-color: #2563eb;
    z-index: 1;
  }

  .org-card-drop-stem {
    width: 2px;
    height: 36px;
    background-color: #2563eb;
    margin: 0 auto;
    flex-shrink: 0;
  }
}

@media (max-width: 991.98px) {
  .org-card-drop-stem {
    display: none !important;
  }
}

/* Office Cards */
.org-office-card {
  background-color: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 14px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.org-office-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 28px rgba(37, 99, 235, 0.15);
  border-color: #93c5fd;
}

.org-office-media {
  height: 180px;
  background-color: #f8fafc;
  overflow: hidden;
  position: relative;
}

.org-office-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.org-office-card:hover .org-office-image {
  transform: scale(1.05);
}

.org-office-heading {
  color: #1e3a8a;
  font-size: 1rem;
  line-height: 1.45;
  transition: color 0.2s ease;
}

.org-office-card:hover .org-office-heading {
  color: #2563eb;
}

.org-office-visit-pill .badge {
  font-size: 0.75rem;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

/* Dark mode adjustments */
:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-chart-main-card {
  background: #141414 !important;
  border-color: #2e2e2e !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5) !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-chart-emblem-image {
  filter: brightness(0) invert(1) !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-chart-main-title {
  color: #f8fafc !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-chart-dept-name {
  color: #cbd5e1 !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-chart-govt-name {
  color: #94a3b8 !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-central-box {
  background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 100%) !important;
  border-color: #60a5fa !important;
  box-shadow: 0 4px 18px rgba(37, 99, 235, 0.4) !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) :is(.org-vertical-stem, .org-horizontal-bar, .org-card-drop-stem) {
  background-color: #60a5fa !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-office-card {
  background-color: #1e1e1e !important;
  border-color: #333333 !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-office-card:hover {
  border-color: #60a5fa !important;
  box-shadow: 0 8px 24px rgba(96, 165, 250, 0.25) !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-office-media {
  background-color: #262626 !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-office-heading {
  color: #93c5fd !important;
}

:is(body.dark-contrast, body.high-contrast, html.dark-contrast, html.high-contrast, body.dark-mode, html[data-theme="dark"]) .org-office-visit-pill .badge {
  background-color: #1e3a8a !important;
  color: #bfdbfe !important;
}

