/*fern-site-stylesheet*/@font-face {
    font-family: 'Roboto';
    src: url('/_fern-files/docs.amniscient.com/f5aed9b6d973f6f54dc1467ac52165b0ddcabf85bccc996bf2a04903e61e55fe/assets/Roboto.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Roboto';
    src: url('/_fern-files/docs.amniscient.com/f8ab3c0c9a79f7c9869adcef4f199ef72e0381fa6c32a233deb5bdc391b4a2b5/assets/Roboto-Bold.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

:root {
  --header-height: 80px;
  --header-height-real: 80px;
  --mobile-header-height-real: 64px;
  --content-width: 640px;
  --sidebar-width: 288px;
  --page-width: 1344px;
  --logo-height: 33px;
  --font-body: 'Roboto', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-heading: 'Roboto', 'Roboto', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-code: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
}

:root {
  --typography-body-font-family: var(--font-body);
  --typography-heading-font-family: var(--font-heading);
  --typography-code-font-family: var(--font-code);
}


.light, :root {
  --accent-1: #fcfdfe;
  --accent-2: #f6faff;
  --accent-3: #ebf3fe;
  --accent-4: #dcebff;
  --accent-5: #cbe1ff;
  --accent-6: #b6d4ff;
  --accent-7: #9ec2f6;
  --accent-8: #7ba9ec;
  --accent-9: #0053b3;
  --accent-10: #0043a1;
  --accent-11: #1862c3;
  --accent-12: #13305a;

  --accent-a1: #0055aa03;
  --accent-a2: #0072ff09;
  --accent-a3: #0066f314;
  --accent-a4: #006eff23;
  --accent-a5: #006cff34;
  --accent-a6: #0069ff49;
  --accent-a7: #005fe861;
  --accent-a8: #0059db84;
  --accent-a9: #0053b3;
  --accent-a10: #0043a1;
  --accent-a11: #0052bde7;
  --accent-a12: #001f4dec;

  --accent-contrast: #fff;
  --accent-surface: #f4f9ffcc;
  --accent-indicator: #0053b3;
  --accent-track: #0053b3;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --accent-1: oklch(99.4% 0.0014 257.6);
      --accent-2: oklch(98.3% 0.0078 257.6);
      --accent-3: oklch(96.1% 0.0167 257.6);
      --accent-4: oklch(93.5% 0.0328 257.6);
      --accent-5: oklch(90.3% 0.0496 257.6);
      --accent-6: oklch(86.3% 0.0693 257.6);
      --accent-7: oklch(80.7% 0.0843 257.6);
      --accent-8: oklch(73% 0.1099 257.6);
      --accent-9: oklch(46.1% 0.1676 257.6);
      --accent-10: oklch(40.7% 0.1676 257.6);
      --accent-11: oklch(51% 0.1676 257.6);
      --accent-12: oklch(31.3% 0.083 257.6);

      --accent-a1: color(display-p3 0.0235 0.349 0.6745 / 0.012);
      --accent-a2: color(display-p3 0.0196 0.3882 0.8784 / 0.032);
      --accent-a3: color(display-p3 0.0078 0.3725 0.898 / 0.075);
      --accent-a4: color(display-p3 0.0078 0.3804 0.9412 / 0.126);
      --accent-a5: color(display-p3 0.0078 0.3569 0.9412 / 0.189);
      --accent-a6: color(display-p3 0.0039 0.3451 0.9412 / 0.263);
      --accent-a7: color(display-p3 0.0039 0.3137 0.8588 / 0.353);
      --accent-a8: color(display-p3 0.0039 0.2902 0.8039 / 0.479);
      --accent-a9: color(display-p3 0 0.2196 0.6314 / 0.871);
      --accent-a10: color(display-p3 0 0.1804 0.5647 / 0.902);
      --accent-a11: color(display-p3 0 0.2353 0.6824 / 0.812);
      --accent-a12: color(display-p3 0 0.0902 0.2667 / 0.899);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.9608 0.9765 0.9961 / 0.8);
      --accent-indicator: oklch(46.1% 0.1676 257.6);
      --accent-track: oklch(46.1% 0.1676 257.6);
    }
  }
}


.light, :root {
  --grayscale-1: #fdfcfd;
  --grayscale-2: #faf9fb;
  --grayscale-3: #f2eff3;
  --grayscale-4: #eae7ec;
  --grayscale-5: #e3dfe6;
  --grayscale-6: #dbd8e0;
  --grayscale-7: #d0cdd7;
  --grayscale-8: #bcbac7;
  --grayscale-9: #8e8c99;
  --grayscale-10: #84828e;
  --grayscale-11: #65636d;
  --grayscale-12: #211f26;

  --grayscale-a1: #55005503;
  --grayscale-a2: #2b005506;
  --grayscale-a3: #30004010;
  --grayscale-a4: #20003618;
  --grayscale-a5: #20003820;
  --grayscale-a6: #14003527;
  --grayscale-a7: #10003332;
  --grayscale-a8: #08003145;
  --grayscale-a9: #05001d73;
  --grayscale-a10: #0500197d;
  --grayscale-a11: #0400119c;
  --grayscale-a12: #020008e0;

  --grayscale-contrast: #000;
  --grayscale-surface: #ffffffcc;
  --grayscale-indicator: #8e8c99;
  --grayscale-track: #8e8c99;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --grayscale-1: color(display-p3 0.991 0.988 0.992);
      --grayscale-2: color(display-p3 0.98 0.976 0.984);
      --grayscale-3: color(display-p3 0.946 0.938 0.952);
      --grayscale-4: color(display-p3 0.915 0.906 0.925);
      --grayscale-5: color(display-p3 0.886 0.876 0.901);
      --grayscale-6: color(display-p3 0.856 0.846 0.875);
      --grayscale-7: color(display-p3 0.814 0.804 0.84);
      --grayscale-8: color(display-p3 0.735 0.728 0.777);
      --grayscale-9: color(display-p3 0.555 0.549 0.596);
      --grayscale-10: color(display-p3 0.514 0.508 0.552);
      --grayscale-11: color(display-p3 0.395 0.388 0.424);
      --grayscale-12: color(display-p3 0.128 0.122 0.147);

      --grayscale-a1: #55005503;
      --grayscale-a2: #2b005506;
      --grayscale-a3: #30004010;
      --grayscale-a4: #20003618;
      --grayscale-a5: #20003820;
      --grayscale-a6: #14003527;
      --grayscale-a7: #10003332;
      --grayscale-a8: #08003145;
      --grayscale-a9: #05001d73;
      --grayscale-a10: #0500197d;
      --grayscale-a11: #0400119c;
      --grayscale-a12: #020008e0;

      --grayscale-contrast: #000;
      --grayscale-surface: color(display-p3 1 1 1 / 80%);
      --grayscale-indicator: color(display-p3 0.555 0.549 0.596);
      --grayscale-track: color(display-p3 0.555 0.549 0.596);
    }
  }
}


.dark {
  --accent-1: #261f1d;
  --accent-2: #2d221e;
  --accent-3: #44271e;
  --accent-4: #592515;
  --accent-5: #672c1a;
  --accent-6: #753825;
  --accent-7: #8c4732;
  --accent-8: #b0583d;
  --accent-9: #f63;
  --accent-10: #f15924;
  --accent-11: #ff9c79;
  --accent-12: #ffdacc;

  --accent-a1: #f809001e;
  --accent-a2: #fb220025;
  --accent-a3: #fc37003d;
  --accent-a4: #fd2c0053;
  --accent-a5: #ff3d0061;
  --accent-a6: #fd550b70;
  --accent-a7: #fe682b88;
  --accent-a8: #ff723ead;
  --accent-a9: #ff6633;
  --accent-a10: #fe5c23f1;
  --accent-a11: #ff9c79;
  --accent-a12: #ffdacc;

  --accent-contrast: #fff;
  --accent-surface: #50220380;
  --accent-indicator: #f63;
  --accent-track: #f63;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --accent-1: oklch(24.7% 0.0119 37.98);
      --accent-2: oklch(26.4% 0.0188 37.98);
      --accent-3: oklch(30.6% 0.047 37.98);
      --accent-4: oklch(33.7% 0.0815 37.98);
      --accent-5: oklch(37.2% 0.0894 37.98);
      --accent-6: oklch(41.8% 0.0908 37.98);
      --accent-7: oklch(47.9% 0.099 37.98);
      --accent-8: oklch(56.1% 0.1217 37.98);
      --accent-9: oklch(69.8% 0.1973 37.98);
      --accent-10: oklch(66% 0.1973 37.98);
      --accent-11: oklch(80.1% 0.1679 37.98);
      --accent-12: oklch(92% 0.0518 37.98);

      --accent-a1: color(display-p3 1 0.0431 0 / 0.088);
      --accent-a2: color(display-p3 1 0.1647 0 / 0.113);
      --accent-a3: color(display-p3 1 0.2667 0 / 0.201);
      --accent-a4: color(display-p3 0.9961 0.2275 0 / 0.281);
      --accent-a5: color(display-p3 1 0.2941 0 / 0.335);
      --accent-a6: color(display-p3 1 0.3922 0.0824 / 0.39);
      --accent-a7: color(display-p3 1 0.4745 0.2118 / 0.482);
      --accent-a8: color(display-p3 1 0.5098 0.298 / 0.624);
      --accent-a9: color(display-p3 1 0.4667 0.2667 / 0.925);
      --accent-a10: color(display-p3 1 0.4314 0.2157 / 0.867);
      --accent-a11: color(display-p3 1 0.6627 0.5216 / 0.942);
      --accent-a12: color(display-p3 1 0.8784 0.8235 / 0.975);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.2824 0.1333 0.0235 / 0.5);
      --accent-indicator: oklch(69.8% 0.1973 37.98);
      --accent-track: oklch(69.8% 0.1973 37.98);
    }
  }
}


.dark {
  --grayscale-1: #121113;
  --grayscale-2: #1a191b;
  --grayscale-3: #232225;
  --grayscale-4: #2b292d;
  --grayscale-5: #323035;
  --grayscale-6: #3c393f;
  --grayscale-7: #49474e;
  --grayscale-8: #625f69;
  --grayscale-9: #6f6d78;
  --grayscale-10: #7c7a85;
  --grayscale-11: #b5b2bc;
  --grayscale-12: #eeeef0;

  --grayscale-a1: #00000000;
  --grayscale-a2: #f5f4f609;
  --grayscale-a3: #ebeaf814;
  --grayscale-a4: #eee5f81d;
  --grayscale-a5: #efe6fe25;
  --grayscale-a6: #f1e6fd30;
  --grayscale-a7: #eee9ff40;
  --grayscale-a8: #eee7ff5d;
  --grayscale-a9: #eae6fd6e;
  --grayscale-a10: #ece9fd7c;
  --grayscale-a11: #f5f1ffb7;
  --grayscale-a12: #fdfdffef;

  --grayscale-contrast: #fff;
  --grayscale-surface: rgba(0, 0, 0, 0.05);
  --grayscale-indicator: #6f6d78;
  --grayscale-track: #6f6d78;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --grayscale-1: color(display-p3 0.07 0.067 0.074);
      --grayscale-2: color(display-p3 0.101 0.098 0.105);
      --grayscale-3: color(display-p3 0.138 0.134 0.144);
      --grayscale-4: color(display-p3 0.167 0.161 0.175);
      --grayscale-5: color(display-p3 0.196 0.189 0.206);
      --grayscale-6: color(display-p3 0.232 0.225 0.245);
      --grayscale-7: color(display-p3 0.286 0.277 0.302);
      --grayscale-8: color(display-p3 0.383 0.373 0.408);
      --grayscale-9: color(display-p3 0.434 0.428 0.467);
      --grayscale-10: color(display-p3 0.487 0.48 0.519);
      --grayscale-11: color(display-p3 0.707 0.7 0.735);
      --grayscale-12: color(display-p3 0.933 0.933 0.94);

      --grayscale-a1: #00000000;
      --grayscale-a2: #f5f4f609;
      --grayscale-a3: #ebeaf814;
      --grayscale-a4: #eee5f81d;
      --grayscale-a5: #efe6fe25;
      --grayscale-a6: #f1e6fd30;
      --grayscale-a7: #eee9ff40;
      --grayscale-a8: #eee7ff5d;
      --grayscale-a9: #eae6fd6e;
      --grayscale-a10: #ece9fd7c;
      --grayscale-a11: #f5f1ffb7;
      --grayscale-a12: #fdfdffef;

      --grayscale-contrast: #fff;
      --grayscale-surface: color(display-p3 0 0 0 / 5%);
      --grayscale-indicator: color(display-p3 0.434 0.428 0.467);
      --grayscale-track: color(display-p3 0.434 0.428 0.467);
    }
  }
}

.light, :root {
  color-scheme: light;
  --accent: rgba(0, 83, 179, 1);
  --background: rgba(255, 255, 255, 1);
  --border: rgba(188, 205, 216, 1);
  --sidebar-background: rgba(255, 255, 255, 1);
  --header-background: rgba(255, 255, 255, 1);
  --card-background: initial;
  --theme-color: #fff;
}

.dark {
  color-scheme: dark;
  --accent: rgba(255, 102, 51, 1);
  --background: rgba(10, 34, 58, 1);
  --border: rgba(0, 73, 132, 1);
  --sidebar-background: rgba(10, 34, 58, 1);
  --header-background: rgba(10, 34, 58, 1);
  --card-background: initial;
  --theme-color: #0a223a;
}

.fern-logo-container {
    margin-right: 15px;
}

body#fern-docs .fern-header-logo-container {
    margin-right: 15px;
}

:not(.fern-page-actions) > .fern-button {
    border-radius: 8px !important;
}

.fern-collapse-with-button {
    border-radius: 8px !important;
}

.fern-header .fern-button.fern-button:not(.disabled).filled {
    padding-right: .75rem !important;
}

:is(.dark) .fern-button:not(.disabled).filled .fern-button-text {
    color: #0a223a !important;
}

:is(.dark) .fern-button:not(.disabled).filled svg {
    color: #0a223a !important;
}

:is(.dark) .fern-button:not(.disabled).filled {
    background: radial-gradient(160.44% 453.93% at 148.25% -75.68%, #FE8B4C 0%, #C74630 100%);
}

.fern-button:not(.disabled).filled svg {
    display: none;
}

.fern-header-right-menu button.fern-button.filled svg {
    display: block;
}

.fern-header-right-menu button.fern-button.fern-button:not(.disabled).filled {
    padding-right: .5rem !important;
}

.fern-button:not(.disabled).filled .fern-button-text {
    color: white !important;
}

.fern-button:not(.disabled).filled:hover .fern-button-text {
    color: white !important;
}
.fern-button:not(.disabled).filled:focus-within .fern-button-text {
    color: white !important; outline: none;
}

.fern-button:not(.disabled).filled:hover svg {
    color: white !important;
}
.fern-button:not(.disabled).filled:focus-within svg {
    color: white !important; outline: none;
}

.fern-header .fern-button:not(.disabled).minimal:hover {
    background-color: unset;
}
.fern-header .fern-button:not(.disabled).minimal:focus-visible {
    background-color: unset; outline: none;
}

/* VERSION DROP-DOWN BUTTON */
.fern-header-content .flex.max-w-32 {
    max-width: 100%; /* Previously 8rem, setting to 100% allows it to expand  */
}

.fern-card {
    border-width: 1px !important;
    box-shadow: none !important;
}

:is(.dark) .fern-card {
    border-color: #3da6ea !important;
}

:is(.light) .fern-card {
    border-color: #BCCDD8 !important;
}

.fern-sidebar-link-container[data-state=active] .fern-sidebar-link {
    background-color: unset;
}

body#fern-docs .fern-sidebar-link {
    background-color: unset;
    font-weight: 400 !important;
}

body#fern-docs .fern-sidebar-link[data-state=active] span {
    font-weight: 400 !important;
}

.fern-header-tab-button .font-medium {
    font-weight: 400 !important;
}

body#fern-docs .fern-header-tabs span {
    font-weight: 400 !important;
}

.fern-header-tab-button[data-state=active] .font-medium {
    font-weight: 500 !important;
}

body#fern-docs .fern-header-tabs a[aria-selected="true"] span {
    font-weight: 500 !important;
}

:is(.dark) .fern-header-tab-button[data-state=active] {
    color: white !important;
}

:is(.dark) body#fern-docs .fern-header-tabs a[aria-selected="true"] {
    color: white !important;
}

:is(.light) .fern-header-tab-button[data-state=active] {
    color: #163656 !important;
}

:is(.light) body#fern-docs .fern-header-tabs a[aria-selected="true"] {
    color: #163656 !important;
}

:is(.dark) .fern-header-tab-button[data-state=active]:after {
    background-color: rgba(61, 166, 234, 1) !important;
}

:is(.dark) body#fern-docs .fern-header-tabs a[data-state=active]:after {
    background-color: rgba(61, 166, 234, 1) !important;
}

:is(.light) .fern-header-tab-button[data-state=active]:after {
    background-color: #163656 !important;
}

:is(.light) body#fern-docs .fern-header-tabs a[data-state=active]:after {
    background-color: #163656 !important;
}

:is(.dark) .fern-header {
    border-color: #3499DA !important;
}

:is(.dark) body#fern-docs .fern-header-content {
    border-color: #3499DA !important;
}

:is(.light) .fern-header {
    border-color: #BCCDD8 !important;
}

:is(.light) body#fern-docs .fern-header-content {
    border-color: #BCCDD8 !important;
}

.fern-sidebar-group .mt-6 {
    margin-left: 8px;
    margin-right: 8px;
    margin-bottom: 8px;
    padding-bottom: 8px;
}

:is(.dark) .fern-sidebar-group .mt-6 {
    border-bottom: 1px solid #004984;
}

:is(.dark) body#fern-docs #fern-sidebar .fern-sidebar-group .fern-sidebar-group:nth-child(2):not(.fern-collapsible) {
    border-bottom: 1px solid #004984;
}

:is(.light) .fern-sidebar-group .mt-6 {
    border-bottom: 1px solid #BCCDD8;
}

:is(.light) body#fern-docs #fern-sidebar .fern-sidebar-group .fern-sidebar-group:nth-child(2):not(.fern-collapsible) {
    border-bottom: 1px solid #BCCDD8;
}

:is(.dark) .fern-sidebar-link-container[data-state=active] {
    color: #3DA6EA;
}

:is(.dark) body#fern-docs .fern-sidebar-link[data-state=active] {
    color: #3DA6EA;
}

:is(.light) .fern-sidebar-link-container[data-state=active] {
    color: #0A6EC7;
}

:is(.light) body#fern-docs .fern-sidebar-link[data-state=active] {
    color: #0A6EC7;
}

.fern-sidebar-link-container {
    min-height: 28px;
}

.fern-sidebar-link-content {
    padding-bottom: .25rem;
    padding-top: .25rem;
}

button[data-testid="version-dropdown"] {
    color: white !important;
}

button[data-testid="version-dropdown"] svg {
    color: white !important;
}

.fern-search-bar {
    background-color: white !important;
    color: #505C67 !important;
}

#fern-search-button {
    background-color: white !important;
    color: #505C67 !important;
    text-shadow: none !important;
    font-weight: 400 !important;
    
    --tw-ring-color: var(--border);
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
    --tw-ring-inset: inset;
}

.fern-search-bar .search-placeholder span {
    color: #505C67 !important;
    text-shadow: none !important;
}

#fern-search-button .lucide-search {
    color: #505C67 !important;
}

.keyboard-shortcut-hint {
    text-shadow: none !important;
}

:is(.dark) .keyboard-shortcut-hint {
    color: #505C67 !important;
    background-color: white !important;
    border-color: #505C67 !important;
    --tw-ring-color: #505C67 !important;
}

:is(.dark) .fern-kbd {
    color: #505C67 !important;
    background-color: white !important;
    border-color: #505C67 !important;
    --tw-ring-color: #505C67 !important;
    text-shadow: none !important;
}

:is(.light) .keyboard-shortcut-hint {
    color: #505C67 !important;
    border-color: #BCCDD8 !important;
    --tw-ring-color: #BCCDD8 !important;
    text-shadow: none !important;
}

:is(.light) .fern-kbd {
    color: #505C67 !important;
    border-color: #BCCDD8 !important;
    --tw-ring-color: #BCCDD8 !important;
}

:is(.dark) .fern-button.outlined {
    --tw-ring-color: #FF6633 !important;
    color: white !important;
}

:is(.light) .fern-button.outlined {
    --tw-ring-color: #0A6EC7 !important;
    color: #163656 !important;
}

:is(.dark) .fern-button.outlined svg {
    color: white !important;
}

:is(.light) .fern-button.outlined svg {
    color: #163656 !important;
}

.fern-button.outlined:hover {
    background-color: rgba(var(--accent), 15%) !important;
}
.fern-button.outlined:focus-visible {
    background-color: rgba(var(--accent), 15%) !important; outline: none;
}

:is(.dark) .bg-tag-default-soft {
    background-color: #163656 !important;
}

:is(.light) .bg-tag-default-soft {
    background-color: #EBF0F3 !important;
}

:is(.light) .fern-header {
    background: linear-gradient(90deg, #FFFFFF 0%, #E1EDFA 100%) !important;
}

:is(.light) body#fern-docs .fern-header-content {
    background: linear-gradient(90deg, #FFFFFF 0%, #E1EDFA 100%) !important;
}

.fern-accordion li {
    list-style-position: outside;
}

/* Hide the border line that is a sibling of the "Built with Fern" footer link */
#builtwithfern ~ div.bg-border-default {
    display: none !important;
}

body#fern-docs footer.fern-layout-footer div.bg-border-default {
    display: none !important;
}

:is(.dark) body#fern-docs .fern-header-content {
    border-bottom: 1px solid #004984;
}

:is(.light) body#fern-docs .fern-header-content {
    border-bottom: 1px solid #BCCDD8;
}
/* 1. FONT IMPORT */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');

/* 2. ROOT & LAYOUT DEFAULTS */
#fern-footer {
  --color-main-blue: #163659;
  --color-secondary-blue: #9AC9F2;
  --color-orange: #FF6633;
  
  background-color: var(--color-main-blue);
  color: #ffffff;
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  display: block;
  width: 100%;
  position: relative;
  box-sizing: border-box;
}

/* 3. MAIN CONTENT CONTAINER */
#footer-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 60px 132px; 
  gap: 20px;
  box-sizing: border-box;
}

/* Widened Logo Column with cropping prevention */
#bounding-box { 
  width: 30% !important; 
  min-width: 250px !important; 
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: flex-start;
  overflow: visible !important;
}

#footer-column-2, #footer-column-3, #footer-column-4 {
  flex: 1;
  min-width: 180px;
}

/* 4. TYPOGRAPHY & SECTION SPACING */
.footer-heading {
  color: var(--color-orange) !important;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  display: block;
  margin-bottom: 5px !important; /* Tight to content below */
  margin-top: 45px !important;    /* Space from content above */
}

/* Remove margin for top headings */
#footer-row > div > .footer-heading:first-child {
  margin-top: 0px !important;
}

.footer-text {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-text li {
  margin-bottom: 10px;
}

/* All links locked to 14px Roboto */
#fern-footer a {
  font-family: 'Roboto', sans-serif !important;
  font-size: 14px !important;
  color: #ffffff !important;
  text-decoration: none;
  transition: color 0.2s ease;
}

#fern-footer a:hover {
  color: var(--color-secondary-blue) !important;
}
#fern-footer a:focus-visible {
  color: var(--color-secondary-blue) !important; outline: none;
}

/* 5. BOTTOM BAR (Copyright & Legal) */
#footer-bottom {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 30px 132px !important; 
  width: 100% !important;
  box-sizing: border-box !important;
}

#footer-copyright {
  flex: 1 !important;
  text-align: left !important;
}

.ending-text {
  font-size: 14px !important;
  color: rgba(255, 255, 255, 0.7) !important;
  width: auto !important;
}

.ending-link-container {
  flex: 1 !important;
  display: flex !important;
  justify-content: flex-end !important;
  gap: 30px !important;
}

/* Bottom links color */
.ending-link-container a {
  color: var(--color-secondary-blue) !important;
  white-space: nowrap !important;
}

/* 6. LOGO STYLING */
#logo-styling {
  width: 100% !important;
  max-width: 230px !important;
}

#logo-styling svg {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  overflow: visible !important; /* Essential to prevent cropping */
}

.social-icons-row img {
  width: 28px;
  height: 28px;
}

/* 7. RESPONSIVE MOBILE FIXES */
@media screen and (max-width: 1300px) {

  #footer-row, #footer-bottom {
    padding-left: 60px !important;
    padding-right: 60px !important;
  }

}

@media screen and (max-width: 1000px) {

  #footer-row { flex-direction: column; padding: 40px 30px !important; }
  #footer-bottom { flex-direction: column-reverse !important; padding: 30px 30px !important; gap: 20px !important; }
  .ending-link-container { justify-content: center !important; }
  #bounding-box { width: 100% !important; margin-bottom: 40px; }

}