html {
    scroll-behavior: smooth;
    width: 100%;
    overflow-x: hidden;
}

body {
    width: 100%;
    overflow-x: hidden;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
}

main {
    flex-grow: 1;

}

.section {
    width: 100%;
    padding: 2rem 0;
}

.container {
    max-width: 156rem;
    width: 100%;
    padding: 0 2rem;
    margin: 0 auto;
}

* {
    word-break: break-word;
}

/* === Randomized colors === */
:root,
[data-bs-theme=light] {
  --bs-btn-bg: #11afe2;
  --bs-btn-color: #000000;
  --bs-btn-border-color: #0097c9;
  --bs-btn-hover-bg: #0089ba;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-border-color: #0080b0;
  --bs-btn-active-bg: #0076a6;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-border-color: #006d9c;
  --bs-btn-disabled-bg: #d3d3d3;
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-border-color: #c2cbd1;
  --bs-btn-focus-shadow-rgb: 17, 175, 226;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-secondary-color: #000000;
  --bs-primary-rgb: 0, 107, 225;
  --bs-dark-rgb: 53, 18, 32;
  --bs-font-sans-serif: 'Segoe UI', sans-serif;
  --bs-body-font-family: 'Segoe UI', sans-serif;
  --bs-font-monospace: 'Monaco', monospace;
  --bs-decorative-font: 'Comic Sans MS', cursive, sans-serif;
  --bs-headings-font-family: 'Comic Sans MS', cursive, sans-serif;
  --white: #ffffff;
  --primary: #006be1;
  --primary-dark: #004ab8;
  --primary-light: #5590ff;
  --primary-bg: #6ea2ff;
  --secondary: #64cc5e;
  --secondary-dark: #38a439;
  --secondary-light: #8df584;
  --secondary-bg: #a2ff97;
  --accent: #007669;
  --accent-dark: #005247;
  --accent-light: #3d9c8d;
  --accent-bg: #52afa0;
  --success-color: #53c043;
  --success-light: #7de96a;
  --success-dark: #20981b;
  --success-bg: #92fe7d;
  --warning-color: #f2713e;
  --warning-light: #ff9862;
  --warning-dark: #c54b1b;
  --warning-bg: #ffac75;
  --danger-color: #a5315c;
  --danger-light: #cf5880;
  --danger-dark: #7c003b;
  --danger-bg: #e56c92;
  --info-color: #00a0aa;
  --info-light: #4cc8d2;
  --info-dark: #007a84;
  --info-bg: #64dce6;
  --neutral-50: #f9f9f9;
  --neutral-150: #e2e2e2;
  --neutral-250: #cccccc;
  --neutral-350: #b6b6b6;
  --neutral-450: #a0a0a0;
  --neutral-550: #8b8b8b;
  --neutral-650: #777777;
  --neutral-750: #636363;
  --neutral-850: #505050;
  --neutral-950: #3e3e3e;
  --neutral-1050: #2c2c2c;
  --gray-50: var(--neutral-50);
  --gray-150: var(--neutral-150);
  --gray-250: var(--neutral-250);
  --gray-350: var(--neutral-350);
  --gray-450: var(--neutral-450);
  --gray-550: var(--neutral-550);
  --gray-650: var(--neutral-650);
  --gray-750: var(--neutral-750);
  --gray-850: var(--neutral-850);
  --gray-950: var(--neutral-950);
  --gray-1050: var(--neutral-1050);
  --background-primary: var(--neutral-50);
  --background-secondary: var(--neutral-150);
  --background-tertiary: #ffffff;
  --background-dark: var(--neutral-950);
  --text-primary: #212529;
  --text-secondary: #495057;
  --text-tertiary: #6c757d;
  --text-light: #ffffff;
  --border-light: var(--neutral-200);
  --border-medium: var(--neutral-300);
  --border-dark: var(--neutral-400);
  --bs-primary: var(--primary);
  --bs-accent: var(--accent);
  --bs-accent-rgb: 0, 118, 105;
  --bs-secondary-rgb: 100, 204, 94;
  --bs-primary-bg: var(--primary-bg);
  --bs-white-10: rgba(255, 255, 255, 0.1);
}
