:root {
  /* Soft, minimal luxury palette */
  --color-bg: #fef3e7;          /* light peach background */
  --color-surface: #ffffff;     /* cards */
  --color-border: rgba(15, 23, 42, 0.06);
  --color-shadow: rgba(15, 23, 42, 0.06);
  --color-text: #020617;        /* near‑black */
  --color-muted: #6b7280;       /* muted slate */
  --color-primary: #b45309;     /* accent – overridden per org */
  --color-primary-soft: #9a3412;
  --color-accent-gold: #f59e0b; /* legacy gold-peach accent */
  --color-nav-bg: radial-gradient(circle at top left, #ffe4d6 0, #fed7aa 45%, #fdba74 100%);
  --color-nav-border: rgba(148, 163, 184, 0.35);
  --color-nav-text: #111827;
}

body {
  background: radial-gradient(circle at top left, #fff7ed 0, #fef3e7 45%, #fde2cf 100%);
  color: var(--color-text);
  font-family: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.navbar.brandbar {
  background: var(--color-nav-bg) !important;
  border-bottom: 1px solid var(--color-nav-border);
  backdrop-filter: blur(18px);
  position: relative;
  z-index: 1100; /* ensure dropdowns sit above page content */
}
.navbar.brandbar .container-fluid {
  max-width: 1040px;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
.navbar.brandbar .navbar-brand {
  font-weight: 600;
  color: var(--color-nav-text) !important;
}
.navbar.brandbar .navbar-brand .brand-title {
  font-size: 1.15rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: inherit;
}
.navbar.brandbar .nav-link {
  color: var(--color-nav-text) !important;
  font-size: 0.92rem;
}
.navbar.brandbar .nav-link:hover,
.navbar.brandbar .nav-link:focus {
  color: var(--color-primary) !important;
}
.navbar.brandbar .navbar-text {
  color: var(--color-nav-text) !important;
  font-size: 0.9rem;
}
.navbar.brandbar .btn {
  border-radius: 999px;
  font-size: 0.85rem;
}
.navbar.brandbar .btn-outline-primary {
  border-color: rgba(148, 163, 184, 0.6);
  color: var(--color-nav-text) !important;
}
.navbar.brandbar .btn-outline-primary:hover,
.navbar.brandbar .btn-outline-primary:focus {
  border-color: var(--color-primary);
  color: var(--color-primary) !important;
  background-color: transparent;
}

/* Make the mobile/toggler icon visible on peach nav */
.navbar.brandbar .navbar-toggler {
  border-color: rgba(248, 250, 252, 0.5);
}
.navbar.brandbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(248,250,252,0.9)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Subtle label inside the dropdown for language section */
.dropdown-submenu-label {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.navbar.brandbar .dropdown-menu {
  border-radius: 0.75rem;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.25);
  border: 1px solid rgba(148, 163, 184, 0.4);
  background-color: #ffffff;
  z-index: 1200;
  max-height: calc(100vh - 80px);
  overflow-y: auto;
}

/* Nested language dropdown inside main menu */
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu > .dropdown-menu-inner {
  display: none;
  position: static;
  margin-top: 0.35rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  border-radius: 0.75rem;
  background-color: #fff7ed;
  max-height: calc(70vh);
  overflow-y: auto;
}

.dropdown-submenu.show > .dropdown-menu-inner,
.dropdown-submenu > .dropdown-menu-inner.show {
  display: block;
}

.dropdown-submenu .dropdown-item {
  border-radius: 999px;
}

.dropdown-caret {
  font-size: 0.8rem;
}

main.container-xl {
  max-width: 1040px;
}

.card {
  border: 1px solid var(--color-border);
  box-shadow: 0 18px 45px var(--color-shadow);
  background: linear-gradient(145deg, #ffffff 0, #f9f5ee 40%, #ffffff 100%);
  border-radius: 1.1rem;
}

.card-header {
  border-bottom: 1px solid rgba(148, 163, 184, 0.3);
  font-weight: 600;
}

.card-form {
  border-radius: 1.1rem;
  padding: 1.75rem;
}

h1, h2, h3 {
  margin-top: 0.75rem;
  font-family: "Playfair Display", "DM Sans", system-ui, -apple-system, "Segoe UI", serif;
}

h1 {
  font-size: 2rem;
}

.lead-intro {
  font-size: 0.98rem;
  color: var(--color-muted);
}

.btn + .btn {
  margin-left: 0.5rem;
}

footer.app-footer {
  color: var(--color-muted);
  font-size: 0.9rem;
}

.table {
  border-radius: 0.9rem;
  overflow: hidden;
}

.table thead th {
  border-bottom-width: 1px;
  background-color: rgba(15, 23, 42, 0.02);
}

.list-group-item {
  border-color: rgba(148, 163, 184, 0.35);
}

.btn-primary {
  background: radial-gradient(
    circle at top left,
    var(--color-primary) 0,
    color-mix(in srgb, var(--color-primary) 80%, #facc15 20%) 35%,
    color-mix(in srgb, var(--color-primary) 70%, #eab308 30%) 70%,
    color-mix(in srgb, var(--color-primary) 85%, #7c2d12 15%) 100%
  );
  border-color: transparent;
  color: #111827;
  font-weight: 500;
  border-radius: 999px;
  padding-inline: 1.3rem;
}
.btn-primary:hover,
.btn-primary:focus {
  background: radial-gradient(
    circle at top left,
    color-mix(in srgb, var(--color-primary) 70%, #fbbf24 30%) 0,
    color-mix(in srgb, var(--color-primary) 75%, #eab308 25%) 40%,
    color-mix(in srgb, var(--color-primary) 90%, #7c2d12 10%) 100%
  );
  border-color: transparent;
  color: #020617;
}

.btn-outline-secondary {
  border-radius: 999px;
}

.badge.bg-success,
.badge.bg-secondary {
  border-radius: 999px;
}

.table thead th {
  border-bottom-width: 1px;
}
