@charset "UTF-8";
/* ============================================================
   CHEROENHAKA (NOTTOWAY) INDIAN TRIBE — CSS CUSTOM PROPERTIES
   cnt-global.css — :root token system

   PALETTE — named for the shield and the land:
   sand   · shield field / parchment backgrounds
   river  · the three rivers — Nottoway, Blackwater, Chowan
   clay   · the shield's red ring; clay-750 is the legacy site
            nav color, kept for continuity with the old site
   cedar / earth / bark / acorn · the wood browns (assigned
            roles below — see Layer 2; unassigned families stay
            on the bench until they earn a job)
   leaf   · autumn oak gold
   ember  · fire accent (decorative/large only at 500;
            text-safe from 600 up)

   ROLE ASSIGNMENTS (Layer 2 discipline):
   bark  = dark structure: body text, header, table heads
   earth = muted text (600+ for body-size)
   river = footer, headings, secondary buttons
   clay  = links, primary buttons, main nav (750)
   acorn = borders, wells (reserved)
   cedar = benched until needed
============================================================ */ 
:root {
  --color-river-100: #cdd6e0;
  --color-river-200: #9aadc0;
  --color-river-300: #6884a1;
  --color-river-400: #355b81;
  --color-river-500: #033262;
  --color-river-600: #02284e;
  --color-river-700: #021e3b;
  --color-river-800: #011427;
  --color-river-900: #010a14;
  
  --color-matchcoat-100: #D3D9E1;
  --color-matchcoat-200: #A7B3C4;
  --color-matchcoat-300: #7C8EA6;
  --color-matchcoat-400: #506889;
  --color-matchcoat-500: #24426B;
  --color-matchcoat-600: #1D3556;
  --color-matchcoat-700: #162840;
  --color-matchcoat-800: #0E1A2B;
  --color-matchcoat-900: #070D15;
  
  --color-warpaint-100: #e9d2d0;
  --color-warpaint-200: #d3a4a0;
  --color-warpaint-300: #bc7771;
  --color-warpaint-400: #a64941;
  --color-warpaint-500: #901c12;
  --color-warpaint-600: #73160e;
  --color-warpaint-700: #56110b;
  --color-warpaint-800: #3a0b07;
  --color-warpaint-900: #1d0604;
  
  --color-bloodroot-100: #ECD4D5;
  --color-bloodroot-200: #D8AAAA;
  --color-bloodroot-300: #C57F80;
  --color-bloodroot-400: #B15555;
  --color-bloodroot-500: #9E2A2B;
  --color-bloodroot-600: #7E2222;
  --color-bloodroot-700: #5F191A;
  --color-bloodroot-800: #3F1111;
  --color-bloodroot-900: #200809;
  
  --color-sand-100: #fef9f2;
  --color-sand-200: #fdf3e6;
  --color-sand-300: #fbeed9;
  --color-sand-400: #fae8cd;
  --color-sand-500: #f9e2c0;
  --color-sand-600: #c7b59a;
  --color-sand-700: #958873;
  --color-sand-800: #645a4d;
  --color-sand-900: #322d26;
  
  --color-shell-100: #FDFCFB;
  --color-shell-200: #FBFAF7;
  --color-shell-300: #F9F7F3;
  --color-shell-400: #F7F5EF;
  --color-shell-500: #F5F2EB;
  --color-shell-600: #C4C2BC;
  --color-shell-700: #93918D;
  --color-shell-800: #62615E;
  --color-shell-900: #31302F;
  
  --color-clay-100: #eddad4;
  --color-clay-200: #dbb5aa;
  --color-clay-300: #c8907f;
  --color-clay-400: #b66b55;
  --color-clay-500: #a4462a;
  --color-clay-600: #833822;
  --color-clay-700: #622a19;
  --color-clay-800: #421c11;
  --color-clay-900: #210e08;
  
  --color-ember-100: #f8ded4;
  --color-ember-200: #f2bea9;
  --color-ember-300: #eb9d7d;
  --color-ember-400: #e57d52;
  --color-ember-500: #de5c27;
  --color-ember-600: #b24a1f;
  --color-ember-700: #853717;
  --color-ember-800: #592510;
  --color-ember-900: #2c1208;
  
  --color-bark-100: #e1dbd5;
  --color-bark-200: #c3b6aa;
  --color-bark-300: #a49280;
  --color-bark-400: #866d55;
  --color-bark-500: #68492b;
  --color-bark-600: #533a22;
  --color-bark-700: #3e2c1a;
  --color-bark-800: #2a1d11;
  --color-bark-900: #150f09;
  
  --color-maize-100: #fcf1d1;
  --color-maize-200: #f9e2a4;
  --color-maize-300: #f5d476;
  --color-maize-400: #f2c549;
  --color-maize-500: #efb71b;
  --color-maize-600: #bf9216;
  --color-maize-700: #8f6e10;
  --color-maize-800: #60490b;
  --color-maize-900: #302505;
  
  --color-sage-100: #dcdfd5;
  --color-sage-200: #b9beac;
  --color-sage-300: #959e82;
  --color-sage-400: #727d59;
  --color-sage-500: #4f5d2f;
  --color-sage-600: #3f4a26;
  --color-sage-700: #2f381c;
  --color-sage-800: #202513;
  --color-sage-900: #101309;
  
  --color-autumn-100: #dfd2d0;
  --color-autumn-200: #c0a5a1;
  --color-autumn-300: #a07771;
  --color-autumn-400: #814a42;
  --color-autumn-500: #611d13;
  --color-autumn-600: #4e170f;
  --color-autumn-700: #3a110b;
  --color-autumn-800: #270c08;
  --color-autumn-900: #130604;
  
  --color-gray-100: #eeece9;
  --color-gray-200: #ddd9d3;
  --color-gray-300: #cdc7be;
  --color-gray-400: #bcb4a8;
  --color-gray-500: #aba192;
  --color-gray-600: #898175;
  --color-gray-700: #676158;
  --color-gray-800: #44403a;
  --color-gray-900: #22201d;
  
  --color-slate-100: #dee2e7;
  --color-slate-200: #bdc5cf;
  --color-slate-300: #9ba9b6;
  --color-slate-400: #7a8c9e;
  --color-slate-500: #596f86;
  --color-slate-600: #47596b;
  --color-slate-700: #354350;
  --color-slate-800: #242c36;
  --color-slate-900: #12161b;
  /* ── Utility ────────────────────────────────────────────────  */
  --color-white: #ffffff;
  --color-black: #000000;


  --color-page-bg: var(--color-sand-100);
  --color-surface: #fff;
  --color-surface-warm: var(--color-sand-200);
  --color-surface-muted: var(--color-gray-100);
  --color-surface-dark: var(--color-river-800);
  --color-surface-deep: var(--color-river-900);
  
  --color-content-border: #E6D8CA;
  --color-brand-primary: var(--color-autumn-500);
  --color-brand-primary-hover: var(--color-autumn-600);
  --color-focus: var(--color-autumn-500);

  /* Text */
  --color-text: var(--color-bark-900);
  --color-text-muted: var(--color-gray-700);
  --color-text-soft: var(--color-bark-700);
  --color-text-on-dark: var(--color-sand-100);
  --color-text-on-accent: #fff;
  --page-bg:               var(--color-sand-100);
  --text-body:             var(--color-bark-800);
  --text-content:          var(--color-bark-700);
  --text-heading:          var(--color-river-600);
  --text-heading-dark:     var(--color-bark-800);
  --text-on-dark:          var(--color-white);
  --text-muted:            #7D593D;
  --text-link:             var(--color-clay-600);
  --text-link-hover:       var(--color-clay-800);
  --text-nav-light:        var(--color-sand-200);
  --text-nav-accent:       var(--color-ember-300);
  --text-footer-para:      var(--color-river-200);
  --text-footer-accent:    var(--color-ember-300);
  
  --font-heading: "Alegreya SC", serif;
  --font-subheading: "Literata", Georgia, serif;
  --font-body: "Source Sans 3", sans-serif;
  --font-bodyAlt: "Alegreya Sans", sans-serif;
  /* ── Focus / Accessibility ──────────────────────────────────  */
  --focus-ring: var(--color-ember-600);
  --focus-selection-bg: var(--color-clay-500);
  /* ── Shadows ────────────────────────────────────────────────  */
  --text-shadow-hero: rgb(0, 0, 0) 1.6px 1.6px 3.2px;
  /* ── Logo width ────────────────────────────────────────────────  */
  --logo-badge-width: clamp(90px, 12vw, 145px);
  --shadow-color: 33 29 24;
}

@font-face {
  font-display: swap;
  font-family: 'Alegreya SC';
  font-style: normal;
  font-weight: 500;
  src: url('/css/fonts/alegreya-sans-sc-v26-latin-regular.woff2') format('woff2')
}
@font-face {
  font-display: swap;
  font-family: 'Alegreya SC';
  font-style: normal;
  font-weight: 700;
  src: url('/css/fonts/alegreya-sans-sc-v26-latin-700.woff2') format('woff2')
}
@font-face {
  font-display: swap;
  font-family: 'Literata';
  font-style: normal;
  font-weight: 700;
  src: url('/css/fonts/literata-v40-latin-700.woff2') format('woff2')
}
@font-face {
  font-display: swap;
  font-family: 'Literata';
  font-style: normal;
  font-weight: 400;
  src: url('/css/fonts/literata-v40-latin-regular.woff2') format('woff2')
}
@font-face {
  font-display: swap;
  font-family: 'Literata';
  font-style: italic;
  font-weight: 400;
  src: url('/css/fonts/literata-v40-latin-italic.woff2') format('woff2')
}
@font-face {
  font-display: swap;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  src: url('/css/fonts/source-sans-3-v19-latin-regular.woff2') format('woff2')
}
@font-face {
  font-display: swap;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 600;
  src: url('/css/fonts/source-sans-3-v19-latin-600.woff2') format('woff2')
}
@font-face {
  font-display: swap;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 700;
  src: url('/css/fonts/source-sans-3-v19-latin-700.woff2') format('woff2')
}
/* alegreya-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Alegreya Sans';
  font-style: normal;
  font-weight: 400;
  src: url('/css/fonts/alegreya-sans-v28-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* alegreya-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Alegreya Sans';
  font-style: normal;
  font-weight: 500;
  src: url('/css/fonts/alegreya-sans-v28-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* alegreya-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Alegreya Sans';
  font-style: normal;
  font-weight: 700;
  src: url('/css/fonts/alegreya-sans-v28-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
@media(prefers-reduced-motion:no-preference) {
  html {
    scroll-behavior: smooth
  }
}
*, *::before, *::after {
  box-sizing: border-box
}
html {
  height: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  scroll-padding-top: 150px;
}
img, svg, video, canvas {
  max-width: 100%;
  height: auto;
  vertical-align: middle
}
button, input, select, optgroup, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  margin: 0
}
button, select {
  text-transform: none
}
button, [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}
button:not(:disabled), [type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled) {
  cursor: pointer
}
[role="button"] {
  cursor: pointer
}
textarea {
  resize: vertical
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0
}
legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  line-height: inherit;
  font-size: calc(1.275rem + 0.3vw)
}
::selection {
  background: var(--focus-selection-bg);
  color: #fff;
}
a {
  color: var(--text-link);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color .2s ease;
}
a:hover, a:focus-visible {
  color: var(--text-link-hover);
  text-decoration: none;
}
a:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 3px;
  border-radius: 2px;
}
@media(min-width:1180px) {
  legend {
    font-size: 1.5rem
  }
}
legend + * {
  clear: left
}
::-moz-focus-inner {
  padding: 0;
  border-style: none
}
table {
  caption-side: bottom;
  border-collapse: collapse
}
caption {
  padding-top: .5rem;
  padding-bottom: .5rem;
  color: var(--text-muted);
  text-align: left
}
thead, tbody, tfoot, tr, td, th {
  border-color: inherit;
  border-style: solid;
  border-width: 0
}
th {
  text-align: inherit;
  text-align: -webkit-match-parent
}
ol, ul {
  padding-left: 2rem;
  margin-top: 0;
  margin-bottom: 1rem
}
dl {
  margin-top: 0;
  margin-bottom: 1rem
}
ol ol, ul ul, ol ul, ul ol {
  margin-bottom: 0
}
dt {
  font-weight: 700;
  color: var(--color-bark-700);
}
dd {
  margin-bottom: .5rem;
  margin-left: 0
}
abbr[title] {
  text-decoration: underline dotted;
  cursor: help;
  text-decoration-skip-ink: none
}
address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit
}
label {
  display: inline-block
}
.img-fluid {
  max-width: 100%;
  height: auto
}
.img-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.img-rounded {
  border-radius: 4px;
}
.img-circle {
  border-radius: 50%;
}
.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}
.collapse:not(.show) {
  display: none;
}
.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
a, button {
  text-decoration: none;
  transition: color .25s ease, background-color .25s ease, border-color .25s ease, box-shadow .25s ease
}
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important
}
:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 3px
}
:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none
}
@supports not selector(:focus-visible) {
  :focus {
    outline: 3px solid var(--focus-ring);
    outline-offset: 3px
  }
}
*, *::before, *::after {
  box-sizing: border-box
}
html {
  height: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: #fff0;
  scroll-padding-top: 150px
}
img, svg, video, canvas {
  max-width: 100%;
  height: auto;
  vertical-align: middle
}
button, input, select, optgroup, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  margin: 0
}
button, select {
  text-transform: none
}
button, [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}
button:not(:disabled), [type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled) {
  cursor: pointer
}
[role="button"] {
  cursor: pointer
}
textarea {
  resize: vertical
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0
}
legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  line-height: inherit;
  font-size: clamp(1.25rem, 3vw, 1.5rem)
}
a {
  color: var(--color-ember-700);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color .2s ease
}
a:hover, a:focus-visible {
  color: var(--color-ember-700);
  text-decoration: none
}
a:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 3px;
  border-radius: 2px
}
@media(min-width:1180px) {
  legend {
    font-size: 1.5rem
  }
}
legend + * {
  clear: left
}
::-moz-focus-inner {
  padding: 0;
  border-style: none
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}
[type=search]::-webkit-search-cancel-button {
  cursor: pointer;
  filter: grayscale(1)
}
[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display: none !important
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button
}
::file-selector-button {
  font: inherit;
  -webkit-appearance: button
}
table {
  caption-side: bottom;
  border-collapse: collapse
}
caption {
  padding-top: .5rem;
  padding-bottom: .5rem;
  color: #ccc;
  text-align: left
}
thead, tbody, tfoot, tr, td, th {
  border-color: inherit;
  border-style: solid;
  border-width: 0
}
th {
  text-align: inherit;
  text-align: -webkit-match-parent
}
ol, ul {
  padding-left: 2rem;
  margin-top: 0;
  margin-bottom: 1rem
}
dl {
  margin-top: 0;
  margin-bottom: 1rem
}
ol ol, ul ul, ol ul, ul ol {
  margin-bottom: 0
}
dt {
  font-weight: 700;
  color: var(--color-ember-700)
}
dd {
  margin-bottom: .5rem;
  margin-left: 0
}
abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none
}
address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit
}
label {
  display: inline-block
}
.img-fluid {
  max-width: 100%;
  height: auto
}
.img-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block
}
.img-contain {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block
}
.img-rounded {
  border-radius: 4px
}
.img-circle {
  border-radius: 50%
}
.img-shadow {
  box-shadow: 0 2px 8px rgb(0 0 0 / .15)
}
.fade {
  transition: opacity 0.15s linear
}
.float-right, .float-end {
  float: right
}
.float-left, .float-start {
  float: left
}
@media (prefers-reduced-motion:reduce) {
  .fade {
    transition: none
  }
}
.fade:not(.show) {
  opacity: 0
}
.collapse:not(.show) {
  display: none
}
.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease
}
@media (prefers-reduced-motion:reduce) {
  .collapsing {
    transition: none
  }
}
.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease
}
@media (prefers-reduced-motion:reduce) {
  .collapsing.collapse-horizontal {
    transition: none
  }
}
a, button {
  text-decoration: none;
  transition: color .25s ease, background-color .25s ease, border-color .25s ease, box-shadow .25s ease
}
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important
}
:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 3px
}
:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none
}
@supports not selector(:focus-visible) {
  :focus {
    outline: 3px solid var(--focus-ring);
    outline-offset: 3px
  }
}
body.has-sticky-header {
  padding-top: var(--header-height, 80px)
}
h1, h2, h3, h4, h5, h6, p {
  margin: 0
}
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: 500
}
.text-start {
  text-align: left !important
}
.text-end {
  text-align: right !important
}
.text-center {
  text-align: center !important
}
.text-decoration-none {
  text-decoration: none !important
}
.text-decoration-underline {
  text-decoration: underline !important
}
.text-decoration-line-through {
  text-decoration: line-through !important
}
.text-lowercase {
  text-transform: lowercase !important
}
.text-uppercase {
  text-transform: uppercase !important
}
.text-capitalize {
  text-transform: capitalize !important
}
.text-wrap {
  white-space: normal !important
}
.text-nowrap {
  white-space: nowrap !important
}
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important
}
.text-underline {
  text-decoration: underline !important
}
.text-border-bottom-teal {
  border-bottom: 2px solid var(--color-ember-300)
}
.amaranth {
  font-family: var(--font-amaranth) !important
}
.amaranth-bold {
  font-family: var(--font-amaranth) !important;
  font-weight: 700
}
.sr-only, .visually-hidden, .visually-hidden-focusable:not(:focus):not(:focus-within) {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important
}
.visually-hidden:not(caption), .visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important
}
.visually-hidden *, .visually-hidden-focusable:not(:focus):not(:focus-within) * {
  overflow: hidden !important
}
.icon {
  width: 1em;
  height: 1em;
  fill: currentColor;
  vertical-align: middle;
  transition: fill .2s ease-in-out
}
.white {
  color: var(--color-white) !important
}
.btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: .25em .25em;
  color: #000;
  background: #fff0 url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: .25rem;
  opacity: .5
}
.container, .container-fluid, .container-xxl, .container-xl, .container-lg, .container-md, .container-sm {
  --gutter-x: 1.5rem;
  --gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--gutter-x) * .5);
  padding-left: calc(var(--gutter-x) * .5);
  margin-right: auto;
  margin-left: auto
}
@media(min-width:576px) {
  .container-sm, .container {
    max-width: 100%
  }
}
@media(min-width:768px) {
  .container-md, .container-sm, .container {
    max-width: 100%
  }
}
@media(min-width:992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px
  }
}
@media(min-width:1180px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 100%;
    padding: 0 2rem
  }
}
@media (min-width:992px) {
  .container, .container-lg, .container-md, .container-sm {
    max-width: 960px
  }
}
@media (min-width:1180px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 100%
  }
}
@media (min-width:1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1360px
  }
}
@media(min-width:1500px) {
  .container {
    max-width: 1440px
  }
}
@media(min-width:1600px) {
  .container {
    max-width: 1500px
  }
}
@media(min-width:1700px) {
  .container {
    max-width: 1600px
  }
}
:root {
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1180px;
  --breakpoint-xxl: 1400px
}
.row {
  --gutter-x: 1.5rem;
  --gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--gutter-y));
  margin-right: calc(-0.5 * var(--gutter-x));
  margin-left: calc(-0.5 * var(--gutter-x))
}
.row > * {
  box-sizing: border-box;
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--gutter-x) * .5);
  padding-left: calc(var(--gutter-x) * .5);
  margin-top: var(--gutter-y)
}
.col {
  flex: 1 0 0%
}
.col-12 {
  flex: 0 0 auto;
  width: 100%
}
.offset-1 {
  margin-left: 8.33333333%
}
.offset-2 {
  margin-left: 16.66666667%
}
.offset-3 {
  margin-left: 25%
}
.offset-4 {
  margin-left: 33.33333333%
}
.offset-5 {
  margin-left: 41.66666667%
}
.offset-6 {
  margin-left: 50%
}
.offset-7 {
  margin-left: 58.33333333%
}
.offset-8 {
  margin-left: 66.66666667%
}
.offset-9 {
  margin-left: 75%
}
.offset-10 {
  margin-left: 83.33333333%
}
.offset-11 {
  margin-left: 91.66666667%
}
.g-0, .gx-0 {
  --gutter-x: 0
}
.g-0, .gy-0 {
  --gutter-y: 0
}
.g-1, .gx-1 {
  --gutter-x: .25rem
}
.g-1, .gy-1 {
  --gutter-y: .25rem
}
.g-2, .gx-2 {
  --gutter-x: .5rem
}
.g-2, .gy-2 {
  --gutter-y: .5rem
}
.g-3, .gx-3 {
  --gutter-x: 1rem
}
.g-3, .gy-3 {
  --gutter-y: 1rem
}
.g-4, .gx-4 {
  --gutter-x: 1.5rem
}
.g-4, .gy-4 {
  --gutter-y: 1.5rem
}
.g-5, .gx-5 {
  --gutter-x: 3rem
}
.g-5, .gy-5 {
  --gutter-y: 3rem
}
@media(min-width:576px) {
  .col-sm {
    flex: 1 0 0%
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%
  }
  .offset-sm-0 {
    margin-left: 0
  }
  .offset-sm-1 {
    margin-left: 8.33333333%
  }
  .offset-sm-2 {
    margin-left: 16.66666667%
  }
  .offset-sm-3 {
    margin-left: 25%
  }
  .offset-sm-4 {
    margin-left: 33.33333333%
  }
  .offset-sm-5 {
    margin-left: 41.66666667%
  }
  .offset-sm-6 {
    margin-left: 50%
  }
  .offset-sm-7 {
    margin-left: 58.33333333%
  }
  .offset-sm-8 {
    margin-left: 66.66666667%
  }
  .offset-sm-9 {
    margin-left: 75%
  }
  .offset-sm-10 {
    margin-left: 83.33333333%
  }
  .offset-sm-11 {
    margin-left: 91.66666667%
  }
}
@media(min-width:768px) {
  .col-md {
    flex: 1 0 0%
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%
  }
  .offset-md-0 {
    margin-left: 0
  }
  .offset-md-1 {
    margin-left: 8.33333333%
  }
  .offset-md-2 {
    margin-left: 16.66666667%
  }
  .offset-md-3 {
    margin-left: 25%
  }
  .offset-md-4 {
    margin-left: 33.33333333%
  }
  .offset-md-5 {
    margin-left: 41.66666667%
  }
  .offset-md-6 {
    margin-left: 50%
  }
  .offset-md-7 {
    margin-left: 58.33333333%
  }
  .offset-md-8 {
    margin-left: 66.66666667%
  }
  .offset-md-9 {
    margin-left: 75%
  }
  .offset-md-10 {
    margin-left: 83.33333333%
  }
  .offset-md-11 {
    margin-left: 91.66666667%
  }
}
@media(min-width:992px) {
  .col-lg {
    flex: 1 0 0%
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%
  }
  .offset-lg-0 {
    margin-left: 0
  }
  .offset-lg-1 {
    margin-left: 8.33333333%
  }
  .offset-lg-2 {
    margin-left: 16.66666667%
  }
  .offset-lg-3 {
    margin-left: 25%
  }
  .offset-lg-4 {
    margin-left: 33.33333333%
  }
  .offset-lg-5 {
    margin-left: 41.66666667%
  }
  .offset-lg-6 {
    margin-left: 50%
  }
  .offset-lg-7 {
    margin-left: 58.33333333%
  }
  .offset-lg-8 {
    margin-left: 66.66666667%
  }
  .offset-lg-9 {
    margin-left: 75%
  }
  .offset-lg-10 {
    margin-left: 83.33333333%
  }
  .offset-lg-11 {
    margin-left: 91.66666667%
  }
}
@media(min-width:1180px) {
  .col-xl {
    flex: 1 0 0%
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%
  }
  .offset-xl-0 {
    margin-left: 0
  }
  .offset-xl-1 {
    margin-left: 8.33333333%
  }
  .offset-xl-2 {
    margin-left: 16.66666667%
  }
  .offset-xl-3 {
    margin-left: 25%
  }
  .offset-xl-4 {
    margin-left: 33.33333333%
  }
  .offset-xl-5 {
    margin-left: 41.66666667%
  }
  .offset-xl-6 {
    margin-left: 50%
  }
  .offset-xl-7 {
    margin-left: 58.33333333%
  }
  .offset-xl-8 {
    margin-left: 66.66666667%
  }
  .offset-xl-9 {
    margin-left: 75%
  }
  .offset-xl-10 {
    margin-left: 83.33333333%
  }
  .offset-xl-11 {
    margin-left: 91.66666667%
  }
}
@media(min-width:1400px) {
  .col-xxl {
    flex: 1 0 0%
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66666667%
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333333%
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66666667%
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%
  }
  .offset-xxl-0 {
    margin-left: 0
  }
  .offset-xxl-1 {
    margin-left: 8.33333333%
  }
  .offset-xxl-2 {
    margin-left: 16.66666667%
  }
  .offset-xxl-3 {
    margin-left: 25%
  }
  .offset-xxl-4 {
    margin-left: 33.33333333%
  }
  .offset-xxl-5 {
    margin-left: 41.66666667%
  }
  .offset-xxl-6 {
    margin-left: 50%
  }
  .offset-xxl-7 {
    margin-left: 58.33333333%
  }
  .offset-xxl-8 {
    margin-left: 66.66666667%
  }
  .offset-xxl-9 {
    margin-left: 75%
  }
  .offset-xxl-10 {
    margin-left: 83.33333333%
  }
  .offset-xxl-11 {
    margin-left: 91.66666667%
  }
}
.order-first {
  order: -1 !important
}
.order-0 {
  order: 0 !important
}
.order-1 {
  order: 1 !important
}
.order-2 {
  order: 2 !important
}
.order-3 {
  order: 3 !important
}
.order-4 {
  order: 4 !important
}
.order-5 {
  order: 5 !important
}
.order-last {
  order: 6 !important
}
.order-sm-first {
  order: -1 !important
}
.order-sm-0 {
  order: 0 !important
}
.order-sm-1 {
  order: 1 !important
}
.order-sm-2 {
  order: 2 !important
}
.order-sm-3 {
  order: 3 !important
}
.order-sm-4 {
  order: 4 !important
}
.order-sm-5 {
  order: 5 !important
}
.order-sm-last {
  order: 6 !important
}
.order-md-first {
  order: -1 !important
}
.order-md-0 {
  order: 0 !important
}
.order-md-1 {
  order: 1 !important
}
.order-md-2 {
  order: 2 !important
}
.order-md-3 {
  order: 3 !important
}
.order-md-4 {
  order: 4 !important
}
.order-md-5 {
  order: 5 !important
}
.order-md-last {
  order: 6 !important
}
.order-lg-first {
  order: -1 !important
}
.order-lg-0 {
  order: 0 !important
}
.order-lg-1 {
  order: 1 !important
}
.order-lg-2 {
  order: 2 !important
}
.order-lg-3 {
  order: 3 !important
}
.order-lg-4 {
  order: 4 !important
}
.order-lg-5 {
  order: 5 !important
}
.order-lg-last {
  order: 6 !important
}
.order-xl-first {
  order: -1 !important
}
.order-xl-0 {
  order: 0 !important
}
.order-xl-1 {
  order: 1 !important
}
.order-xl-2 {
  order: 2 !important
}
.order-xl-3 {
  order: 3 !important
}
.order-xl-4 {
  order: 4 !important
}
.order-xl-5 {
  order: 5 !important
}
.order-xl-last {
  order: 6 !important
}
.order-xxl-first {
  order: -1 !important
}
.order-xxl-0 {
  order: 0 !important
}
.order-xxl-1 {
  order: 1 !important
}
.order-xxl-2 {
  order: 2 !important
}
.order-xxl-3 {
  order: 3 !important
}
.order-xxl-4 {
  order: 4 !important
}
.order-xxl-5 {
  order: 5 !important
}
.order-xxl-last {
  order: 6 !important
}
.d-inline {
  display: inline !important
}
.d-inline-block {
  display: inline-block !important
}
.d-block {
  display: block !important
}
.d-grid {
  display: grid !important
}
.d-inline-grid {
  display: inline-grid !important
}
.d-table {
  display: table !important
}
.d-table-row {
  display: table-row !important
}
.d-table-cell {
  display: table-cell !important
}
.d-flex {
  display: flex !important
}
.d-inline-flex {
  display: inline-flex !important
}
.d-none {
  display: none !important
}
.flex-fill {
  flex: 1 1 auto !important
}
.flex-row {
  flex-direction: row !important
}
.flex-column {
  flex-direction: column !important
}
.justify-content-start {
  justify-content: flex-start !important
}
.justify-content-end {
  justify-content: flex-end !important
}
.justify-content-center {
  justify-content: center !important
}
.justify-content-between {
  justify-content: space-between !important
}
.justify-content-around {
  justify-content: space-around !important
}
.justify-content-evenly {
  justify-content: space-evenly !important
}
.align-items-start {
  align-items: flex-start !important
}
.align-items-end {
  align-items: flex-end !important
}
.align-items-center {
  align-items: center !important
}
.align-items-baseline {
  align-items: baseline !important
}
.align-items-stretch {
  align-items: stretch !important
}
.align-content-start {
  align-content: flex-start !important
}
.align-content-end {
  align-content: flex-end !important
}
.align-content-center {
  align-content: center !important
}
.align-content-between {
  align-content: space-between !important
}
.align-content-around {
  align-content: space-around !important
}
.align-content-stretch {
  align-content: stretch !important
}
.align-self-auto {
  align-self: auto !important
}
.align-self-start {
  align-self: flex-start !important
}
.align-self-end {
  align-self: flex-end !important
}
.align-self-center {
  align-self: center !important
}
.align-self-baseline {
  align-self: baseline !important
}
.align-self-stretch {
  align-self: stretch !important
}
.m-1 {
  margin: .25rem !important
}
.m-2 {
  margin: .5rem !important
}
.m-3 {
  margin: 1rem !important
}
.m-4 {
  margin: 1.5rem !important
}
.m-5 {
  margin: 3rem !important
}
.m-auto {
  margin: auto !important
}
.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important
}
.mx-1 {
  margin-right: .25rem !important;
  margin-left: .25rem !important
}
.mx-2 {
  margin-right: .5rem !important;
  margin-left: .5rem !important
}
.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important
}
.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important
}
.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important
}
.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important
}
.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important
}
.my-1 {
  margin-top: .25rem !important;
  margin-bottom: .25rem !important
}
.my-2 {
  margin-top: .5rem !important;
  margin-bottom: .5rem !important
}
.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important
}
.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important
}
.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important
}
.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important
}
.mt-0 {
  margin-top: 0 !important
}
.mt-1 {
  margin-top: .25rem !important
}
.mt-2 {
  margin-top: .5rem !important
}
.mt-3 {
  margin-top: 1rem !important
}
.mt-4 {
  margin-top: 1.5rem !important
}
.mt-5 {
  margin-top: 2rem !important
}
.mt-6 {
  margin-top: 2.5rem !important
}
.mt-7 {
  margin-top: 3rem !important
}
.mt-8 {
  margin-top: 3.5rem !important
}
.mt-9 {
  margin-top: 4rem !important
}
.mt-auto {
  margin-top: auto !important
}
.me-0 {
  margin-right: 0 !important
}
.me-1 {
  margin-right: .25rem !important
}
.me-2 {
  margin-right: .5rem !important
}
.me-3 {
  margin-right: 1rem !important
}
.me-4 {
  margin-right: 1.5rem !important
}
.me-5 {
  margin-right: 3rem !important
}
.me-auto {
  margin-right: auto !important
}
.mb-0 {
  margin-bottom: 0 !important
}
.mb-1 {
  margin-bottom: .25rem !important
}
.mb-2 {
  margin-bottom: .5rem !important
}
.mb-3 {
  margin-bottom: 1rem !important
}
.mb-4 {
  margin-bottom: 1.5rem !important
}
.mb-5 {
  margin-bottom: 2rem !important
}
.mb-6 {
  margin-bottom: 2.5rem !important
}
.mb-7 {
  margin-bottom: 3rem !important
}
.mb-8 {
  margin-bottom: 4rem !important
}
.mb-9 {
  margin-bottom: 5rem !important
}
.mb-auto {
  margin-bottom: auto !important
}
.ms-0 {
  margin-left: 0 !important
}
.ms-1 {
  margin-left: .25rem !important
}
.ms-2 {
  margin-left: .5rem !important
}
.ms-3 {
  margin-left: 1rem !important
}
.ms-4 {
  margin-left: 1.5rem !important
}
.ms-5 {
  margin-left: 3rem !important
}
.ms-auto {
  margin-left: auto !important
}
.p-0 {
  padding: 0 !important
}
.p-1 {
  padding: .25rem !important
}
.p-2 {
  padding: .5rem !important
}
.p-3 {
  padding: 1rem !important
}
.p-4 {
  padding: 1.5rem !important
}
.p-5 {
  padding: 3rem !important
}
.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important
}
.px-1 {
  padding-right: .25rem !important;
  padding-left: .25rem !important
}
.px-2 {
  padding-right: .5rem !important;
  padding-left: .5rem !important
}
.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important
}
.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important
}
.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important
}
.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important
}
.py-1 {
  padding-top: .25rem !important;
  padding-bottom: .25rem !important
}
.py-2 {
  padding-top: .5rem !important;
  padding-bottom: .5rem !important
}
.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important
}
.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important
}
.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important
}
.pt-0 {
  padding-top: 0 !important
}
.pt-1 {
  padding-top: .25rem !important
}
.pt-2 {
  padding-top: .5rem !important
}
.pt-3 {
  padding-top: 1rem !important
}
.pt-4 {
  padding-top: 1.5rem !important
}
.pt-5 {
  padding-top: 3rem !important
}
.pe-0 {
  padding-right: 0 !important
}
.pe-1 {
  padding-right: .25rem !important
}
.pe-2 {
  padding-right: .5rem !important
}
.pe-3 {
  padding-right: 1rem !important
}
.pe-4 {
  padding-right: 1.5rem !important
}
.pe-5 {
  padding-right: 3rem !important
}
.pb-0 {
  padding-bottom: 0 !important
}
.pb-1 {
  padding-bottom: .25rem !important
}
.pb-2 {
  padding-bottom: .5rem !important
}
.pb-3 {
  padding-bottom: 1rem !important
}
.pb-4 {
  padding-bottom: 1.5rem !important
}
.pb-5 {
  padding-bottom: 3rem !important
}
.ps-0 {
  padding-left: 0 !important
}
.ps-1 {
  padding-left: .25rem !important
}
.ps-2 {
  padding-left: .5rem !important
}
.ps-3 {
  padding-left: 1rem !important
}
.ps-4 {
  padding-left: 1.5rem !important
}
.ps-5 {
  padding-left: 3rem !important
}
@media(min-width:576px) {
  .d-sm-inline {
    display: inline !important
  }
  .d-sm-inline-block {
    display: inline-block !important
  }
  .d-sm-block {
    display: block !important
  }
  .d-sm-grid {
    display: grid !important
  }
  .d-sm-inline-grid {
    display: inline-grid !important
  }
  .d-sm-table {
    display: table !important
  }
  .d-sm-table-row {
    display: table-row !important
  }
  .d-sm-table-cell {
    display: table-cell !important
  }
  .d-sm-flex {
    display: flex !important
  }
  .d-sm-inline-flex {
    display: inline-flex !important
  }
  .d-sm-none {
    display: none !important
  }
  .flex-sm-fill {
    flex: 1 1 auto !important
  }
  .flex-sm-row {
    flex-direction: row !important
  }
  .flex-sm-column {
    flex-direction: column !important
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important
  }
  .justify-content-sm-start {
    justify-content: flex-start !important
  }
  .justify-content-sm-end {
    justify-content: flex-end !important
  }
  .justify-content-sm-center {
    justify-content: center !important
  }
  .justify-content-sm-between {
    justify-content: space-between !important
  }
  .justify-content-sm-around {
    justify-content: space-around !important
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly !important
  }
  .align-items-sm-start {
    align-items: flex-start !important
  }
  .align-items-sm-end {
    align-items: flex-end !important
  }
  .align-items-sm-center {
    align-items: center !important
  }
  .align-items-sm-baseline {
    align-items: baseline !important
  }
  .align-items-sm-stretch {
    align-items: stretch !important
  }
  .align-content-sm-start {
    align-content: flex-start !important
  }
  .align-content-sm-end {
    align-content: flex-end !important
  }
  .align-content-sm-center {
    align-content: center !important
  }
  .align-content-sm-between {
    align-content: space-between !important
  }
  .align-content-sm-around {
    align-content: space-around !important
  }
  .align-content-sm-stretch {
    align-content: stretch !important
  }
  .align-self-sm-auto {
    align-self: auto !important
  }
  .align-self-sm-start {
    align-self: flex-start !important
  }
  .align-self-sm-end {
    align-self: flex-end !important
  }
  .align-self-sm-center {
    align-self: center !important
  }
  .align-self-sm-baseline {
    align-self: baseline !important
  }
  .align-self-sm-stretch {
    align-self: stretch !important
  }
}
@media(min-width:768px) {
  .d-md-inline {
    display: inline !important
  }
  .d-md-inline-block {
    display: inline-block !important
  }
  .d-md-block {
    display: block !important
  }
  .d-md-grid {
    display: grid !important
  }
  .d-md-inline-grid {
    display: inline-grid !important
  }
  .d-md-table {
    display: table !important
  }
  .d-md-table-row {
    display: table-row !important
  }
  .d-md-table-cell {
    display: table-cell !important
  }
  .d-md-flex {
    display: flex !important
  }
  .d-md-inline-flex {
    display: inline-flex !important
  }
  .d-md-none {
    display: none !important
  }
  .flex-md-fill {
    flex: 1 1 auto !important
  }
  .flex-md-row {
    flex-direction: row !important
  }
  .flex-md-column {
    flex-direction: column !important
  }
  .justify-content-md-start {
    justify-content: flex-start !important
  }
  .justify-content-md-end {
    justify-content: flex-end !important
  }
  .justify-content-md-center {
    justify-content: center !important
  }
  .justify-content-md-between {
    justify-content: space-between !important
  }
  .justify-content-md-around {
    justify-content: space-around !important
  }
  .justify-content-md-evenly {
    justify-content: space-evenly !important
  }
  .align-items-md-start {
    align-items: flex-start !important
  }
  .align-items-md-end {
    align-items: flex-end !important
  }
  .align-items-md-center {
    align-items: center !important
  }
  .align-items-md-baseline {
    align-items: baseline !important
  }
  .align-items-md-stretch {
    align-items: stretch !important
  }
  .align-content-md-start {
    align-content: flex-start !important
  }
  .align-content-md-end {
    align-content: flex-end !important
  }
  .align-content-md-center {
    align-content: center !important
  }
  .align-content-md-between {
    align-content: space-between !important
  }
  .align-content-md-around {
    align-content: space-around !important
  }
  .align-content-md-stretch {
    align-content: stretch !important
  }
  .align-self-md-auto {
    align-self: auto !important
  }
  .align-self-md-start {
    align-self: flex-start !important
  }
  .align-self-md-end {
    align-self: flex-end !important
  }
  .align-self-md-center {
    align-self: center !important
  }
  .align-self-md-baseline {
    align-self: baseline !important
  }
  .align-self-md-stretch {
    align-self: stretch !important
  }
}
@media(min-width:992px) {
  .d-lg-inline {
    display: inline !important
  }
  .d-lg-inline-block {
    display: inline-block !important
  }
  .d-lg-block {
    display: block !important
  }
  .d-lg-grid {
    display: grid !important
  }
  .d-lg-inline-grid {
    display: inline-grid !important
  }
  .d-lg-table {
    display: table !important
  }
  .d-lg-table-row {
    display: table-row !important
  }
  .d-lg-table-cell {
    display: table-cell !important
  }
  .d-lg-flex {
    display: flex !important
  }
  .d-lg-inline-flex {
    display: inline-flex !important
  }
  .d-lg-none {
    display: none !important
  }
  .flex-lg-fill {
    flex: 1 1 auto !important
  }
  .justify-content-lg-start {
    justify-content: flex-start !important
  }
  .justify-content-lg-end {
    justify-content: flex-end !important
  }
  .justify-content-lg-center {
    justify-content: center !important
  }
  .justify-content-lg-between {
    justify-content: space-between !important
  }
  .justify-content-lg-around {
    justify-content: space-around !important
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly !important
  }
  .align-items-lg-start {
    align-items: flex-start !important
  }
  .align-items-lg-end {
    align-items: flex-end !important
  }
  .align-items-lg-center {
    align-items: center !important
  }
  .align-items-lg-baseline {
    align-items: baseline !important
  }
  .align-items-lg-stretch {
    align-items: stretch !important
  }
  .align-content-lg-start {
    align-content: flex-start !important
  }
  .align-content-lg-end {
    align-content: flex-end !important
  }
  .align-content-lg-center {
    align-content: center !important
  }
  .align-content-lg-between {
    align-content: space-between !important
  }
  .align-content-lg-around {
    align-content: space-around !important
  }
  .align-content-lg-stretch {
    align-content: stretch !important
  }
  .align-self-lg-auto {
    align-self: auto !important
  }
  .align-self-lg-start {
    align-self: flex-start !important
  }
  .align-self-lg-end {
    align-self: flex-end !important
  }
  .align-self-lg-center {
    align-self: center !important
  }
  .align-self-lg-baseline {
    align-self: baseline !important
  }
  .align-self-lg-stretch {
    align-self: stretch !important
  }
}
@media(min-width:1180px) {
  .d-xl-inline {
    display: inline !important
  }
  .d-xl-inline-block {
    display: inline-block !important
  }
  .d-xl-block {
    display: block !important
  }
  .d-xl-grid {
    display: grid !important
  }
  .d-xl-inline-grid {
    display: inline-grid !important
  }
  .d-xl-table {
    display: table !important
  }
  .d-xl-table-row {
    display: table-row !important
  }
  .d-xl-table-cell {
    display: table-cell !important
  }
  .d-xl-flex {
    display: flex !important
  }
  .d-xl-inline-flex {
    display: inline-flex !important
  }
  .d-xl-none {
    display: none !important
  }
  .flex-xl-fill {
    flex: 1 1 auto !important
  }
  .flex-xl-row {
    flex-direction: row !important
  }
  .flex-xl-column {
    flex-direction: column !important
  }
}
@media(min-width:1400px) {
  .d-xxl-inline {
    display: inline !important
  }
  .d-xxl-inline-block {
    display: inline-block !important
  }
  .d-xxl-block {
    display: block !important
  }
  .d-xxl-grid {
    display: grid !important
  }
  .d-xxl-inline-grid {
    display: inline-grid !important
  }
  .d-xxl-table {
    display: table !important
  }
  .d-xxl-table-row {
    display: table-row !important
  }
  .d-xxl-table-cell {
    display: table-cell !important
  }
  .d-xxl-flex {
    display: flex !important
  }
  .d-xxl-inline-flex {
    display: inline-flex !important
  }
  .d-xxl-none {
    display: none !important
  }
  .flex-xxl-fill {
    flex: 1 1 auto !important
  }
  .flex-xxl-row {
    flex-direction: row !important
  }
  .flex-xxl-column {
    flex-direction: column !important
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important
  }
  .flex-xxl-grow-0 {
    flex-grow: 0 !important
  }
  .flex-xxl-grow-1 {
    flex-grow: 1 !important
  }
  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important
  }
  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important
  }
  .justify-content-xxl-center {
    justify-content: center !important
  }
  .justify-content-xxl-between {
    justify-content: space-between !important
  }
  .justify-content-xxl-around {
    justify-content: space-around !important
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly !important
  }
  .align-items-xxl-start {
    align-items: flex-start !important
  }
  .align-items-xxl-end {
    align-items: flex-end !important
  }
  .align-items-xxl-center {
    align-items: center !important
  }
  .align-items-xxl-baseline {
    align-items: baseline !important
  }
  .align-items-xxl-stretch {
    align-items: stretch !important
  }
  .align-content-xxl-start {
    align-content: flex-start !important
  }
  .align-content-xxl-end {
    align-content: flex-end !important
  }
  .align-content-xxl-center {
    align-content: center !important
  }
  .align-content-xxl-between {
    align-content: space-between !important
  }
  .align-content-xxl-around {
    align-content: space-around !important
  }
  .align-content-xxl-stretch {
    align-content: stretch !important
  }
}
.gap-0 {
  gap: 0 !important
}
.gap-1 {
  gap: .25rem !important
}
.gap-2 {
  gap: .5rem !important
}
.gap-3 {
  gap: 1rem !important
}
.gap-4 {
  gap: 1.5rem !important
}
.gap-5 {
  gap: 3rem !important
}
.row-gap-0 {
  row-gap: 0 !important
}
.row-gap-1 {
  row-gap: .25rem !important
}
.row-gap-2 {
  row-gap: .5rem !important
}
.row-gap-3 {
  row-gap: 1rem !important
}
.row-gap-4 {
  row-gap: 1.5rem !important
}
.row-gap-5 {
  row-gap: 3rem !important
}
.column-gap-0 {
  -moz-column-gap: 0 !important;
  column-gap: 0 !important
}
.column-gap-1 {
  -moz-column-gap: .25rem !important;
  column-gap: .25rem !important
}
.column-gap-2 {
  -moz-column-gap: .5rem !important;
  column-gap: .5rem !important
}
.column-gap-3 {
  -moz-column-gap: 1rem !important;
  column-gap: 1rem !important
}
.column-gap-4 {
  -moz-column-gap: 1.5rem !important;
  column-gap: 1.5rem !important
}
.column-gap-5 {
  -moz-column-gap: 3rem !important;
  column-gap: 3rem !important
}
body {
  background-color: var(--page-bg);
  color: var(--text-body);
  font-family: var(--font-body);
  font-size: clamp(1.02rem, 0.9vw + 0.85rem, 1.15rem);
  letter-spacing: 0.01rem;
  line-height: 1.6;
  margin: 0
}
h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}
h1, h2 {
  font-family: var(--font-heading);
  font-weight: 700;
}
h3, h4 {
  font-family: var(--font-subheading);
  font-weight: 700;
}
h5, h6 {
  font-family: var(--font-body);
  font-weight: 700;
}
.text-start {
  text-align: left !important
}
.text-end {
  text-align: right !important
}
.text-center {
  text-align: center !important
}
.text-decoration-none {
  text-decoration: none !important
}
.text-decoration-underline {
  text-decoration: underline !important
}
.text-uppercase {
  text-transform: uppercase !important
}
.text-capitalize {
  text-transform: capitalize !important
}
.sr-only, .visually-hidden, .visually-hidden-focusable:not(:focus):not(:focus-within) {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important
}
.visually-hidden:not(caption), .visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important
}
.icon {
  width: 1em;
  height: 1em;
  fill: currentColor;
  vertical-align: middle;
  transition: fill .2s ease-in-out
}
.container, .container-fluid, .container-xxl, .container-xl, .container-lg, .container-md, .container-sm {
  --gutter-x: 1.5rem;
  --gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--gutter-x) * .5);
  padding-left: calc(var(--gutter-x) * .5);
  margin-right: auto;
  margin-left: auto
}
@media (min-width:576px) {
  .container, .container-sm {
    max-width: 540px
  }
}
@media (min-width:768px) {
  .container, .container-md, .container-sm {
    max-width: 720px
  }
}
@media (min-width:992px) {
  .container, .container-lg, .container-md, .container-sm {
    max-width: 960px
  }
}
@media (min-width:1180px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1140px
  }
}
@media (min-width:1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1320px
  }
}
/* =============================================================
   SKIP LINK
============================================================= */
.skip-link {
  position: absolute;
  top: -60px;
  left: 0;
  z-index: 9999;
  padding: 0.5rem 1rem;
  background: var(--color-clay-600);
  color: #fff;
  font-weight: 600;
  border-radius: 0 0 4px 4px;
  text-decoration: none;
  transition: top 0.1s;
}
.skip-link:focus, .skip-link:focus-visible {
  top: 0;
}
/* ── 3. Header: utility bar ─────────────────────────────────── */
.tribal-header {
  color: var(--color-sand-100);
}
.header--utility {
	padding: 0.4rem 0;
	background: var(--color-river-700);
	background: var(--color-shell-500);
	/* background: #000; */
}
.header--utility-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  padding: .5rem 0;
}
.header--quick-links {
  display: none;
}
.header--quick-links a {
	color: var(--color-bark-800);
	font-size: 0.8rem;
	font-weight: 500;
	text-decoration: none;
	transition: color var(--transition, 0.3s ease);
}
.header--quick-links a:hover,
.header--quick-links a:focus-visible {
  color: var(--color-maize-300);
}
/* ── 4. Header: main bar + logo ─────────────────────────────── */
.header--main {
	background: var(--color-clay-700);
	/* border-top: 1px solid var(--color-river-900); */
	padding: 1rem 0;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
	position: relative;
	z-index: 999;
	background: var(--color-bark-700);
}
body.nav-open {
  overflow: hidden;
}
@media (min-width: 1180px) {
  body.nav-open {
    overflow: auto;
  }
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  padding: 0;
}
.tribal-header {
	font-family: var(--font-heading);
	color: var(--color-matchcoat-100);
	font-weight: 600;
	line-height: 1;
	font-size: 1rem;
}
.header-logo {
  flex-shrink: 0;
  padding: 0;
}
.header-logo a {
  display: block;
  text-decoration: none;
}
.header--logo {
	display: block;
	height: auto;
	width: var(--logo-badge-width);
	position: absolute;
	top: -45px;
	z-index: 1000;
}
/* ── Tall-logo badge treatment ────────────────────────────────
   For the dreamcatcher mark (tall, 4 hanging feathers).
   Add .header-logo--badge to .header-logo: the mark anchors to
   the header bar and its feathers hang down over the page like
   a crest/seal. Tune width + top once the real asset exists.
── */
.header-logo--badge {
  position: relative;
  width: var(--logo-badge-width);
  ;
  min-height: 1px;
}
@media (min-width: 1180px) {
  .header-logo--badge .header--logo {
    position: absolute;
    top: -75px;
    left: 0;
    z-index: 1000;
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, .25));
  }
}
/* ── Hamburger button ─────────────────────────────────────── */
.nav-toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: transparent;
  border: navajowhite;
  border-radius: 6px;
  color: #ffffff;
  padding: 0.65rem 1rem;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  line-height: 1;
  transition: background 0.15s ease;
  flex-shrink: 0;
}
.nav-toggle[aria-expanded="true"] {
  background: var(--color-clay-900);
}
.nav-toggle--label {
  display: block;
  line-height: 1;
}
.nav-toggle--icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.nav-toggle .icon-close {
  display: none;
}
.nav-toggle[aria-expanded="true"] .icon-menu {
  display: none;
}
.nav-toggle[aria-expanded="true"] .icon-close {
  display: block;
}
.nav-toggle:hover {
  background: var(--color-clay-900);
}
.nav-toggle:focus-visible {
  outline: 2px solid var(--color-ember-300);
  outline-offset: 2px;
}
/* ── Mobile action row ────────────────────────────────────── */
.mobile-enrollment {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.75rem 1.25rem 2rem;
  background: var(--color-clay-900);
}
.mobile-enrollment .enroll-btn {
  justify-content: center;
  text-align: center;
  padding: 0.85rem 1.25rem;
  font-size: 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.5);
  color: #ffffff;
  border-radius: 4px;
  background: transparent;
}
.mobile-enrollment .enroll-btn:hover, .mobile-enrollment .enroll-btn:focus-visible {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}
.mobile-enrollment .enroll-btn--apply {
  background: var(--color-ember-600);
  border-color: var(--color-ember-600);
}
.mobile-enrollment .enroll-btn--apply:hover, .mobile-enrollment .enroll-btn--apply:focus-visible {
  background: var(--color-ember-500);
  border-color: var(--color-ember-500);
}
/* =============================================================
   MAIN NAV — SHELL
   Rust bar (clay-750, carried over from the previous site for
   visual continuity through the redesign).
============================================================= */
.main-nav {
  position: fixed;
  top: var(--header-height, 68px);
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 399;
  overflow-y: auto;
  padding-top: 0;
  transform: translateX(-100%);
  transition: transform 0.3s ease;
  /*background: var(--color-clay-700);*/
}
.main-nav.is-open {
  transform: translateX(0);
}
.main-nav .container {
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 100%;
  padding: 0;
}
.main-nav--list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.main-nav--item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.main-nav--link {
  display: block;
  width: 100%;
  padding: clamp(1.2rem, 2.5vw, 1.3rem) clamp(1rem, 3vw, 1.5rem);
  font-family: var(--font-body);
  font-size: clamp(1.1rem, 4vw, 1.25rem);
  font-weight: 600;
  color: #ffffff;
  text-decoration: none;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  line-height: 1.5;
  transition: background 0.15s ease, color 0.15s ease;
}
.main-nav--link:hover, .main-nav--link:focus-visible {
  background-color: var(--color-clay-800);
  color: var(--color-ember-300);
  outline: none;
  text-decoration: none;
}
.main-nav--dropdown-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding-right: clamp(1.25rem, 3vw, 1.75rem);
}
.main-nav--dropdown-toggle[aria-expanded="true"] {
  background-color: var(--color-clay-800);
}
.dropdown-chevron {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.main-nav--item.is-open .dropdown-chevron {
  transform: rotate(180deg);
}
/* ── Mobile dropdown panels (inline collapse) ────────────── */
.main-nav--dropdown {
  position: static;
  display: none;
  opacity: 1;
  visibility: visible;
  pointer-events: none;
  transform: none;
  box-shadow: none;
  border: none;
  border-radius: 0;
  background: var(--color-sand-100);
  min-width: 0;
  width: 100%;
  padding: 0;
  transition: none;
}
.main-nav--item.is-open > .main-nav--dropdown {
  display: block;
  pointer-events: auto;
}
.main-nav--dropdown .main-nav--dropdown-link {
  display: block;
  color: var(--color-clay-700);
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  font-size: clamp(1rem, 4vw, 1.25rem);
  padding: 1rem 0 1rem 1.5rem;
  text-decoration: none;
  transition: color 0.1s, border-color 0.1s;
  line-height: 1.35;
}
.main-nav--dropdown li:last-child .main-nav--dropdown-link {
  border-bottom: none;
}
.main-nav--dropdown .main-nav--dropdown-link:hover, .main-nav--dropdown .main-nav--dropdown-link:focus-visible {
  background: var(--color-sand-100);
  color: var(--color-clay-800);
}
/* =============================================================
   DESKTOP NAV (≥ 1180px)
============================================================= */
@media (min-width: 1180px) {
  .nav-toggle {
    display: none;
  }
  .header--quick-links {
    display: flex;
    align-items: center;
    gap: 1.25rem;
  }
  .header--utility-inner {
    align-items: center;
    flex-direction: row;
    justify-content: flex-end;
    flex-wrap: nowrap;
    padding: 0.2rem 0 0.3rem;
  }
  .header-inner {
    padding: 0;
    align-items: center;
    justify-content: space-between;
  }
  .mobile-enrollment {
    display: none;
  }
  .main-nav {
    position: relative;
    top: 0;
    transform: none;
    transition: none;
    overflow: visible;
    padding-top: 0;
  }
  .main-nav .container {
    display: flex;
    align-items: stretch;
    max-width: 100%;
  }
  .main-nav--list {
    display: flex !important;
    flex-direction: row;
    align-items: stretch;
    justify-content: flex-start;
    height: 100%;
    width: 100%;
  }
  .main-nav--item {
    position: relative;
    display: flex;
    align-items: stretch;
    border-bottom: none;
  }
  .main-nav--link {
    display: flex;
    align-items: center;
    padding: 2.5rem 2rem 1.5rem;
    font-size: clamp(0.95rem, 1vw, 1rem);
    font-weight: 500;
    border: none;
    text-align: center;
    white-space: nowrap;
    line-height: normal;
    border-radius: 0;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
    justify-content: center;
    gap: .35rem;
    position: relative;
  }
  .main-nav--link:hover, .main-nav--link:focus-visible {
    color: var(--color-ember-100);
    background: var(--color-clay-900);
  }
  .main-nav--link.is-active {
    background: var(--color-clay-800);
    box-shadow: inset 0 -3px 0 var(--color-ember-400);
  }
  .main-nav--item.is-open > .main-nav--dropdown-toggle, .main-nav--dropdown-toggle[aria-expanded="true"] {
    color: var(--color-clay-100);
    background: var(--color-clay-900);
  }
  .main-nav--dropdown {
    position: absolute;
    left: 0;
    top: 100%;
    display: block;
    min-width: 260px;
    width: max-content;
    max-width: 320px;
    padding: 0.5rem 0;
    list-style: none;
    background: var(--color-sand-100);
    border-bottom: 3px solid var(--color-clay-500);
    border-radius: 0 0 6px 6px;
    box-shadow: 0 12px 40px rgba(23, 15, 11, 0.22), 0 2px 8px rgba(23, 15, 11, 0.10);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
  }
  .main-nav--item.is-open > .main-nav--dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0ms;
  }
  .main-nav--dropdown .main-nav--dropdown-link {
    display: block;
    padding: 0.75rem 1rem;
    color: var(--color-bark-800);
    text-decoration: none;
    font-size: .9rem;
    border-bottom: 1px solid var(--color-sand-300);
    transition: background 0.1s ease, color 0.1s ease, margin 0.1s ease;
    line-height: 1.4;
  }
  .main-nav--dropdown li:last-child .main-nav--dropdown-link {
    border-bottom: none;
  }
  .main-nav--dropdown .main-nav--dropdown-link:hover, .main-nav--dropdown .main-nav--dropdown-link:focus-visible {
    background: var(--color-sand-300);
    color: var(--color-clay-800);
    outline: none;
    margin-left: 4px;
  }
  .main-nav--dropdown .main-nav--dropdown-link:focus-visible {
    outline: 2px solid var(--color-clay-600);
    outline-offset: -2px;
  }
}
/* ── 9. Footer: main ─────────────────────────────────────────
   The rivers close every page — footer runs on the river family.
── */
.footer--main {
  background-color: var(--color-river-800);
  padding: 2rem 0 2.5rem;
}
.footer--logo-link {
  display: inline-block;
  text-decoration: none;
}
.footer--logo {
  height: 48px;
  width: auto;
}
.footer--address {
  color: var(--color-river-100);
  font-size: .95rem;
  line-height: 1.6;
}
.footer--social {
  display: flex;
  gap: 1rem;
}
.footer--social a {
  color: var(--color-river-300);
  font-size: 1.25rem;
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer--social a:hover, .footer--social a:focus-visible {
  color: var(--text-footer-accent);
}
.footer--donate-btn {
  display: inline-block;
}
.footer--col-heading {
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-sand-200);
  margin-bottom: 1rem;
}
.footer--nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer--nav-list li {
  margin-bottom: 0.5rem;
}
.footer--nav-list a {
  color: var(--text-footer-para);
  font-size: 0.875rem;
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer--nav-list a:hover, .footer--nav-list a:focus-visible {
  color: var(--text-footer-accent);
  text-decoration: none;
}
/* ── 10. Footer: bottom bar ──────────────────────────────────── */
.footer--bottom {
  background-color: var(--color-river-900);
  padding: 1rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.footer--copyright {
  color: var(--color-river-300);
  font-size: 0.8rem;
  margin: 0;
}
.footer--legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: flex-end;
}
.footer--legal-links a {
  color: var(--color-river-300);
  font-size: 0.8rem;
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer--legal-links a:hover, .footer--legal-links a:focus-visible {
  color: var(--text-footer-accent);
}
@media (max-width: 767.98px) {
  .footer--legal-links {
    justify-content: flex-start;
    margin-top: 0.5rem;
  }
}

.footer--main {
  color: var(--color-sand-200);
  background: var(--color-bark-900);
}

.footer--address {
  color: var(--color-gray-300);
}

.footer--col-heading {
  color: var(--color-maize-300);
}

.footer--nav-list a {
  color: var(--color-sand-200);
}

.footer--nav-list a:hover {
  color: var(--color-maize-300);
}

.footer--social a {
  color: var(--color-sand-200);
}

.footer--social a:hover {
  color: var(--color-maize-400);
}

.footer--bottom {
  color: var(--color-gray-300);
  background: var(--color-bark-900);
  border-top: 1px solid var(--color-bark-700);
}

.footer--legal-links a {
  color: var(--color-gray-300);
}

.footer--legal-links a:hover {
  color: var(--color-sand-100);
}
.scrollup {
  position: fixed;
  right: 20px;
  bottom: 15px;
  background: var(--color-clay-700);
  cursor: pointer;
  border: 2px solid var(--color-ember-300);
  color: #fff;
  padding: 10px 15px;
  font-size: 1.5rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, background .25s ease;
  z-index: 999;
}
.scrollup .icon {
  width: .9em;
  height: .9em;
  fill: currentColor;
  vertical-align: middle;
}
.scrollup.visible {
  opacity: 1;
  pointer-events: auto
}
.scrollup:hover {
  background: var(--color-clay-900)
}