@charset "UTF-8";
/*----------------------------------------------------------

    Theme Name: Dead Robots
    Theme URI: https://www.deadrobots.me
    Description: Dead Robots branded theme
    Author: Shye Strange
    Author URI: https://www.deadrobots.me
    Version: 0.2

-----------------------------------------------------------------------------------*/
/*!
 * Customised and extended from Bootstrap  v5.3.1 (https://getbootstrap.com/).
 * Copyright 2011-2023 The Bootstrap Authors.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE).
 * Copyright 2025 Dead Robots.
 * Licensed All rights reserved.
 */

/* Requires variables.css */

/*
Resets
Basics
Basic Layout
 - Containers
 - Flex Grid
 - Gutters
 - Column Bottom
 - Flex Helper Classes
 - Stack Layouts
 - Gaps
 - Wrapper
 - Sections
 - Content
Layout Utilities
 - Align
 - Float
 - Overflow
 - Display Styles
 - Position Utility Classes
 - X/Y Positioning Classes
 - Width and Height
 - Max-width Utility Classes (2 different)
 - Height Utility Classes
 - Margin Utility Classes
 - Padding Utility Classes
 - Fixed Position
 - Visibility
 - Opacity Helper Classes
 - translate
 - Rotation Utility Classes
 - Misc Utility Helpers
Cards
Typography
- Font Families
- Headings
- Text Size
- Font Styles
- Letter Spacing
- Text Utility
- Typography Responsive
- Text Underline Offset
- Text Colors
- Text Color Utility Classes
- Text Background
- Text Opacity
Lists
- Lists Basic Styles
- List Styling
Links
- Links Basic Styles
- Link colors
- Link Underline Offset
- Link Underline Color
- Link Opacity
- Icon Links
- Link Styling
Borders
- Border Utility Classes
- Border Size Override Helper
- Border Styling
- Border Colors
- Border Opacity
Rounded Corners
Backgrounds
- Background color Utilities
- Background colors
- Background opacity
- Background Image (empyty)
- Background Position
- Background Sizes
- Background Utility
Image Styles
- Basic Image Styles
Media Utilities
- Object fit
- Object Positions
- Iframe Styles
- Aspect Ratio
Page Elements
- Lazy Loading
- Progress Bar
- Horizontal Line
- Quotes & Blockquotes
- Code Block
- List Groups



Navigation


*/



/* ----------------------------------------------------------------
-------------------------------------------------------------------

  					           **** Resets ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

*,
*::before,
*::after {
    box-sizing: border-box;
}

@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: auto;
    }
}

body {
    margin: 0;
    font-family: var(--dr-primary-font);
    font-size: var(--dr-body-font-size);
    font-weight: var(--dr-body-font-weight);
    line-height: var(--dr-body-line-height);
    color: var(--dr-body-color);
    text-align: var(--dr-body-text-align);
    background-color: var(--dr-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: var(--dr-border-width) solid;
    opacity: 0.25;
}

h6,
.h6,
h5,
.h5,
h4,
.h4,
h3,
.h3,
h2,
.h2,
h1,
.h1 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-weight: 500;
    line-height: 1.2;
    color: var(--dr-heading-color);
}

h1,
.h1 {
    font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) {

    h1,
    .h1 {
        font-size: 2.5rem;
    }
}

h2,
.h2 {
    font-size: calc(1.325rem + 0.9vw);
}

@media (min-width: 1200px) {

    h2,
    .h2 {
        font-size: 2rem;
    }
}

h3,
.h3 {
    font-size: calc(1.3rem + 0.6vw);
}

@media (min-width: 1200px) {

    h3,
    .h3 {
        font-size: 1.75rem;
    }
}

h4,
.h4 {
    font-size: calc(1.275rem + 0.3vw);
}

@media (min-width: 1200px) {

    h4,
    .h4 {
        font-size: 1.5rem;
    }
}

h5,
.h5 {
    font-size: 1.25rem;
}

h6,
.h6 {
    font-size: 1rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[title] {
    text-decoration: underline dotted;
    cursor: help;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol,
ul {
    padding-left: 2rem;
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0;
}

dt {
    font-weight: 700;
}

dd {
    margin-bottom: 0.5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small,
.small {
    font-size: 0.875em;
}

mark,
.mark {
    padding: 0.1875em;
    background-color: var(--dr-highlight-bg);
}

sub,
sup {
    position: relative;
    font-size: 0.75em;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

a {
    color: rgba(var(--dr-link-color-rgb), var(--dr-link-opacity, 1));
    text-decoration: var(--dr-link-decoration);
}

a:hover {
    --dr-link-color-rgb: var(--dr-link-hover-color-rgb);
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}

pre,
code,
kbd,
samp {
    font-family: var(--dr-monospace-font);
    font-size: 1em;
}

kbd {
    padding: 0.1875rem 0.375rem;
    font-size: 0.875em;
    color: var(--dr-body-bg);
    background-color: var(--dr-body-color);
    border-radius: 0.25rem;
}

kbd kbd {
    padding: 0;
    font-size: 1em;
}

pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: 0.875em;
}

pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
}

code {
    font-size: 0.875em;
    color: var(--dr-code-color);
    word-wrap: break-word;
}

a>code {
    color: inherit;
}

figure {
    margin: 0 0 1rem;
}

img,
svg {
    vertical-align: middle;
}

table {
    caption-side: bottom;
    border-collapse: collapse;
}

caption {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: var(--dr-text-muted);
    text-align: left;
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
}

label {
    display: inline-block;
}

button {
    border-radius: 0;
}

button:focus:not(:focus-visible) {
    outline: 0;
}

input,
button,
select,
optgroup,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button,
select {
    text-transform: none;
}

[role=button] {
    cursor: pointer;
}

select {
    word-wrap: normal;
}

select:disabled {
    opacity: 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;
}

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;
}

::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

textarea {
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: calc(1.275rem + 0.3vw);
    line-height: inherit;
}

@media (min-width: 1200px) {
    legend {
        font-size: 1.5rem;
    }
}

legend+* {
    clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
    padding: 0;
}

::-webkit-inner-spin-button {
    height: auto;
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

rtl:raw: [type="tel"],
[type="url"],
[type="email"],
[type="number"] {
    direction: ltr;
}

::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
    padding: 0;
}

::file-selector-button {
    font: inherit;
    -webkit-appearance: button;
}

output {
    display: inline-block;
}

iframe {
    border: 0;
}

summary {
    display: list-item;
    cursor: pointer;
}

progress {
    vertical-align: baseline;
}

[hidden] {
    display: none !important;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

  					**** Basics ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

p,
pre,
ul,
ol,
dl,
dd,
blockquote,
address,
table,
fieldset,
form {
    margin-bottom: 30px;
}

small,
.small {
    font-size: var(--dr-font-size-small);
    --dr-font-size-small: calc(var(--dr-body-font-size) * 0.875);
}

dl,
dt,
dd,
ol,
ul,
li {
    margin: 0;
    padding: 0;
}

em {
    font-family: var(--dr-secondary-font);
}

::selection {
    background: var(--dr-themecolor);
    color: var(--dr-body-bg);
    text-shadow: none;
}

::-moz-selection {
    background: var(--dr-themecolor);
    color: var(--dr-body-bg);
    text-shadow: none;
}

::-webkit-selection {
    background: var(--dr-themecolor);
    color: var(--dr-body-bg);
    text-shadow: none;
}

:active,
:focus {
    outline: none !important;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

  			             **** Basic Layout ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Containers
-----------------------------------------------------------------*/

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
    width: 100%;
    padding-right: calc(var(--dr-gutter-x) * 0.5);
    padding-left: calc(var(--dr-gutter-x) * 0.5);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {

    .container-sm,
    .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {

    .container-md,
    .container-sm,
    .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {

    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {

    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 1140px;
    }
}

@media (min-width: 1400px) {

    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 1320px;
    }
}

[class*=col-]:not([class*=sticky-]):not([class*=position-]) {
    position: relative;
}

/* ----------------------------------------------------------------
  Flex Grid
-----------------------------------------------------------------*/

.row {
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--dr-gutter-y));
    margin-right: calc(-0.5 * var(--dr-gutter-x));
    margin-left: calc(-0.5 * var(--dr-gutter-x));
}

.row>* {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--dr-gutter-x) * 0.5);
    padding-left: calc(var(--dr-gutter-x) * 0.5);
    margin-top: var(--dr-gutter-y);
}

.col {
    flex: 1 0 0%;
}

.row-cols-auto>* {
    flex: 0 0 auto;
    width: auto;
}

.row-cols-1>* {
    flex: 0 0 auto;
    width: 100%;
}

.row-cols-2>* {
    flex: 0 0 auto;
    width: 50%;
}

.row-cols-3>* {
    flex: 0 0 auto;
    width: 33.3333333333%;
}

.row-cols-4>* {
    flex: 0 0 auto;
    width: 25%;
}

.row-cols-5>* {
    flex: 0 0 auto;
    width: 20%;
}

.row-cols-6>* {
    flex: 0 0 auto;
    width: 16.6666666667%;
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
}

.col-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
}

.col-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-3 {
    flex: 0 0 auto;
    width: 25%;
}

.col-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
}

.col-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
}

.col-6 {
    flex: 0 0 auto;
    width: 50%;
}

.col-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
}

.col-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
}

.col-9 {
    flex: 0 0 auto;
    width: 75%;
}

.col-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
}

.col-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
}

.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

.col-1-5 {
    flex: 0 0 auto;
    width: 20%;
}

.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%;
}

/* ------ Responsive ------*/

@media (min-width: 576px) {
    .col-sm {
        flex: 1 0 0%;
    }

    .row-cols-sm-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-sm-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-sm-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-sm-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-sm-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-sm-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-sm-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .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%;
    }

    .col-sm-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }

    .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%;
    }

    .row-cols-md-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-md-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-md-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-md-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-md-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-md-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-md-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .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%;
    }

    .col-md-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }

    .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%;
    }

    .row-cols-lg-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-lg-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-lg-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-lg-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-lg-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-lg-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-lg-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .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%;
    }

    .col-lg-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }

    .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: 1200px) {
    .col-xl {
        flex: 1 0 0%;
    }

    .row-cols-xl-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-xl-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-xl-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-xl-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-xl-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-xl-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-xl-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .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%;
    }

    .col-xl-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }

    .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%;
    }

    .row-cols-xxl-auto>* {
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-xxl-1>* {
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-xxl-2>* {
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-xxl-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-xxl-4>* {
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-xxl-5>* {
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-xxl-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-xxl-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .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%;
    }

    .col-xxl-1-5 {
        flex: 0 0 auto;
        width: 20%;
    }

    .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%;
    }
}

/* ----------------------------------------------------------------
  Gutters
-----------------------------------------------------------------*/

[class*=gutter-] {
    --dr-gutters: var(--dr-gutter-x);
    margin-right: calc(var(--dr-gutters) * -0.5);
    margin-left: calc(var(--dr-gutters) * -0.5);
    margin-top: calc(var(--dr-gutters) * -1);
}

[class*=gutter-]>.col,
[class*=gutter-]>[class*=col-] {
    padding-right: calc(var(--dr-gutters) * 0.5);
    padding-left: calc(var(--dr-gutters) * 0.5);
    margin-top: var(--dr-gutters);
}

.g-0,
.gx-0 {
    --dr-gutter-x: 0;
}

.g-0,
.gy-0 {
    --dr-gutter-y: 0;
}

.g-1,
.gx-1 {
    --dr-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
    --dr-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
    --dr-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
    --dr-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
    --dr-gutter-x: 1rem;
}

.g-3,
.gy-3 {
    --dr-gutter-y: 1rem;
}

.g-4,
.gx-4 {
    --dr-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
    --dr-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
    --dr-gutter-x: 3rem;
}

.g-5,
.gy-5 {
    --dr-gutter-y: 3rem;
}

.g-6,
.gx-6 {
    --dr-gutter-x: 5rem;
}

.g-6,
.gy-6 {
    --dr-gutter-y: 5rem;
}

/* ------ Responsive ------*/

/* -------- SM -------- */
@media (min-width: var(--dr-breakpoint-sm)) {

    .g-sm-0,
    .gx-sm-0 {
        --dr-gutter-x: 0;
    }

    .g-sm-0,
    .gy-sm-0 {
        --dr-gutter-y: 0;
    }

    .g-sm-1,
    .gx-sm-1 {
        --dr-gutter-x: 0.25rem;
    }

    .g-sm-1,
    .gy-sm-1 {
        --dr-gutter-y: 0.25rem;
    }

    .g-sm-2,
    .gx-sm-2 {
        --dr-gutter-x: 0.5rem;
    }

    .g-sm-2,
    .gy-sm-2 {
        --dr-gutter-y: 0.5rem;
    }

    .g-sm-3,
    .gx-sm-3 {
        --dr-gutter-x: 1rem;
    }

    .g-sm-3,
    .gy-sm-3 {
        --dr-gutter-y: 1rem;
    }

    .g-sm-4,
    .gx-sm-4 {
        --dr-gutter-x: 1.5rem;
    }

    .g-sm-4,
    .gy-sm-4 {
        --dr-gutter-y: 1.5rem;
    }

    .g-sm-5,
    .gx-sm-5 {
        --dr-gutter-x: 3rem;
    }

    .g-sm-5,
    .gy-sm-5 {
        --dr-gutter-y: 3rem;
    }

    .g-sm-6,
    .gx-sm-6 {
        --dr-gutter-x: 5rem;
    }

    .g-sm-6,
    .gy-sm-6 {
        --dr-gutter-y: 5rem;
    }
}

/* -------- MD -------- */
@media (min-width: var(--dr-breakpoint-md)) {

    .g-md-0,
    .gx-md-0 {
        --dr-gutter-x: 0;
    }

    .g-md-0,
    .gy-md-0 {
        --dr-gutter-y: 0;
    }

    .g-md-1,
    .gx-md-1 {
        --dr-gutter-x: 0.25rem;
    }

    .g-md-1,
    .gy-md-1 {
        --dr-gutter-y: 0.25rem;
    }

    .g-md-2,
    .gx-md-2 {
        --dr-gutter-x: 0.5rem;
    }

    .g-md-2,
    .gy-md-2 {
        --dr-gutter-y: 0.5rem;
    }

    .g-md-3,
    .gx-md-3 {
        --dr-gutter-x: 1rem;
    }

    .g-md-3,
    .gy-md-3 {
        --dr-gutter-y: 1rem;
    }

    .g-md-4,
    .gx-md-4 {
        --dr-gutter-x: 1.5rem;
    }

    .g-md-4,
    .gy-md-4 {
        --dr-gutter-y: 1.5rem;
    }

    .g-md-5,
    .gx-md-5 {
        --dr-gutter-x: 3rem;
    }

    .g-md-5,
    .gy-md-5 {
        --dr-gutter-y: 3rem;
    }

    .g-md-6,
    .gx-md-6 {
        --dr-gutter-x: 5rem;
    }

    .g-md-6,
    .gy-md-6 {
        --dr-gutter-y: 5rem;
    }
}

/* -------- LG -------- */
@media (min-width: var(--dr-breakpoint-lg)) {

    .g-lg-0,
    .gx-lg-0 {
        --dr-gutter-x: 0;
    }

    .g-lg-0,
    .gy-lg-0 {
        --dr-gutter-y: 0;
    }

    .g-lg-1,
    .gx-lg-1 {
        --dr-gutter-x: 0.25rem;
    }

    .g-lg-1,
    .gy-lg-1 {
        --dr-gutter-y: 0.25rem;
    }

    .g-lg-2,
    .gx-lg-2 {
        --dr-gutter-x: 0.5rem;
    }

    .g-lg-2,
    .gy-lg-2 {
        --dr-gutter-y: 0.5rem;
    }

    .g-lg-3,
    .gx-lg-3 {
        --dr-gutter-x: 1rem;
    }

    .g-lg-3,
    .gy-lg-3 {
        --dr-gutter-y: 1rem;
    }

    .g-lg-4,
    .gx-lg-4 {
        --dr-gutter-x: 1.5rem;
    }

    .g-lg-4,
    .gy-lg-4 {
        --dr-gutter-y: 1.5rem;
    }

    .g-lg-5,
    .gx-lg-5 {
        --dr-gutter-x: 3rem;
    }

    .g-lg-5,
    .gy-lg-5 {
        --dr-gutter-y: 3rem;
    }

    .g-lg-6,
    .gx-lg-6 {
        --dr-gutter-x: 5rem;
    }

    .g-lg-6,
    .gy-lg-6 {
        --dr-gutter-y: 5rem;
    }
}

/* -------- XL -------- */
@media (min-width: var(--dr-breakpoint-xl)) {

    .g-xl-0,
    .gx-xl-0 {
        --dr-gutter-x: 0;
    }

    .g-xl-0,
    .gy-xl-0 {
        --dr-gutter-y: 0;
    }

    .g-xl-1,
    .gx-xl-1 {
        --dr-gutter-x: 0.25rem;
    }

    .g-xl-1,
    .gy-xl-1 {
        --dr-gutter-y: 0.25rem;
    }

    .g-xl-2,
    .gx-xl-2 {
        --dr-gutter-x: 0.5rem;
    }

    .g-xl-2,
    .gy-xl-2 {
        --dr-gutter-y: 0.5rem;
    }

    .g-xl-3,
    .gx-xl-3 {
        --dr-gutter-x: 1rem;
    }

    .g-xl-3,
    .gy-xl-3 {
        --dr-gutter-y: 1rem;
    }

    .g-xl-4,
    .gx-xl-4 {
        --dr-gutter-x: 1.5rem;
    }

    .g-xl-4,
    .gy-xl-4 {
        --dr-gutter-y: 1.5rem;
    }

    .g-xl-5,
    .gx-xl-5 {
        --dr-gutter-x: 3rem;
    }

    .g-xl-5,
    .gy-xl-5 {
        --dr-gutter-y: 3rem;
    }

    .g-xl-6,
    .gx-xl-6 {
        --dr-gutter-x: 5rem;
    }

    .g-xl-6,
    .gy-xl-6 {
        --dr-gutter-y: 5rem;
    }
}

/* -------- XXL -------- */
@media (min-width: var(--dr-breakpoint-xxl)) {

    .g-xxl-0,
    .gx-xxl-0 {
        --dr-gutter-x: 0;
    }

    .g-xxl-0,
    .gy-xxl-0 {
        --dr-gutter-y: 0;
    }

    .g-xxl-1,
    .gx-xxl-1 {
        --dr-gutter-x: 0.25rem;
    }

    .g-xxl-1,
    .gy-xxl-1 {
        --dr-gutter-y: 0.25rem;
    }

    .g-xxl-2,
    .gx-xxl-2 {
        --dr-gutter-x: 0.5rem;
    }

    .g-xxl-2,
    .gy-xxl-2 {
        --dr-gutter-y: 0.5rem;
    }

    .g-xxl-3,
    .gx-xxl-3 {
        --dr-gutter-x: 1rem;
    }

    .g-xxl-3,
    .gy-xxl-3 {
        --dr-gutter-y: 1rem;
    }

    .g-xxl-4,
    .gx-xxl-4 {
        --dr-gutter-x: 1.5rem;
    }

    .g-xxl-4,
    .gy-xxl-4 {
        --dr-gutter-y: 1.5rem;
    }

    .g-xxl-5,
    .gx-xxl-5 {
        --dr-gutter-x: 3rem;
    }

    .g-xxl-5,
    .gy-xxl-5 {
        --dr-gutter-y: 3rem;
    }

    .g-xxl-6,
    .gx-xxl-6 {
        --dr-gutter-x: 5rem;
    }

    .g-xxl-6,
    .gy-xxl-6 {
        --dr-gutter-y: 5rem;
    }
}

/* ----------------------------------------------------------------
  column Bottom Padding Margin
-----------------------------------------------------------------*/
[class*=col-mb-] {
    margin-bottom: calc(var(--dr-col-mb) * -1);
}

[class*=col-mb-]>.col,
[class*=col-mb-]>[class*=col-] {
    padding-bottom: var(--dr-col-mb);
}

.col-mb-30 {
    --dr-col-mb: 30px;
}

.col-mb-50 {
    --dr-col-mb: 50px;
}

.col-mb-80 {
    --dr-col-mb: 80px;
}

@media (min-width: 576px) {
    .col-mb-sm-30 {
        --dr-col-mb: 30px;
    }

    .col-mb-sm-50 {
        --dr-col-mb: 50px;
    }

    .col-mb-sm-80 {
        --dr-col-mb: 80px;
    }
}

@media (min-width: 768px) {
    .col-mb-md-30 {
        --dr-col-mb: 30px;
    }

    .col-mb-md-50 {
        --dr-col-mb: 50px;
    }

    .col-mb-md-80 {
        --dr-col-mb: 80px;
    }
}

@media (min-width: 992px) {
    .col-mb-lg-30 {
        --dr-col-mb: 30px;
    }

    .col-mb-lg-50 {
        --dr-col-mb: 50px;
    }

    .col-mb-lg-80 {
        --dr-col-mb: 80px;
    }
}

@media (min-width: 1200px) {
    .col-mb-xl-30 {
        --dr-col-mb: 30px;
    }

    .col-mb-xl-50 {
        --dr-col-mb: 50px;
    }

    .col-mb-xl-80 {
        --dr-col-mb: 80px;
    }
}

@media (min-width: 1400px) {
    .col-mb-xxl-30 {
        --dr-col-mb: 30px;
    }

    .col-mb-xxl-50 {
        --dr-col-mb: 50px;
    }

    .col-mb-xxl-80 {
        --dr-col-mb: 80px;
    }
}

/* ----------------------------------------------------------------
  Flex Helper Classes
-----------------------------------------------------------------*/

.flex-fill {
    flex: 1 1 auto !important;
}

.flex-row {
    flex-direction: row !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    flex-direction: column-reverse !important;
}

.flex-grow-0 {
    flex-grow: 0 !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    flex-shrink: 1 !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.flex-nowrap {
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !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;
}

.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;
}

/* -------- SM -------- */
@media (min-width: var(--dr-breakpoint-sm)) {
    .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;
    }

    .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;
    }
}

/* -------- MD -------- */
@media (min-width: var(--dr-breakpoint-md)) {
    .flex-md-fill {
        flex: 1 1 auto !important;
    }

    .flex-md-row {
        flex-direction: row !important;
    }

    .flex-md-column {
        flex-direction: column !important;
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-md-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-md-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-md-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-md-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-md-wrap {
        flex-wrap: wrap !important;
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !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;
    }

    .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;
    }
}

/* -------- LG -------- */
@media (min-width: var(--dr-breakpoint-lg)) {

    /* Flex Helper Classes */
    .flex-lg-fill {
        flex: 1 1 auto !important;
    }

    .flex-lg-row {
        flex-direction: row !important;
    }

    .flex-lg-column {
        flex-direction: column !important;
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-lg-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-lg-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important;
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !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;
    }

    .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;
    }
}

/* -------- XL -------- */
@media (min-width: var(--dr-breakpoint-xl)) {
    .flex-xl-fill {
        flex: 1 1 auto !important;
    }

    .flex-xl-row {
        flex-direction: row !important;
    }

    .flex-xl-column {
        flex-direction: column !important;
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-xl-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-xl-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important;
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-xl-start {
        justify-content: flex-start !important;
    }

    .justify-content-xl-end {
        justify-content: flex-end !important;
    }

    .justify-content-xl-center {
        justify-content: center !important;
    }

    .justify-content-xl-between {
        justify-content: space-between !important;
    }

    .justify-content-xl-around {
        justify-content: space-around !important;
    }

    .justify-content-xl-evenly {
        justify-content: space-evenly !important;
    }

    .align-items-xl-start {
        align-items: flex-start !important;
    }

    .align-items-xl-end {
        align-items: flex-end !important;
    }

    .align-items-xl-center {
        align-items: center !important;
    }

    .align-items-xl-baseline {
        align-items: baseline !important;
    }

    .align-items-xl-stretch {
        align-items: stretch !important;
    }

    .align-content-xl-start {
        align-content: flex-start !important;
    }

    .align-content-xl-end {
        align-content: flex-end !important;
    }

    .align-content-xl-center {
        align-content: center !important;
    }

    .align-content-xl-between {
        align-content: space-between !important;
    }

    .align-content-xl-around {
        align-content: space-around !important;
    }

    .align-content-xl-stretch {
        align-content: stretch !important;
    }

    .align-self-xl-auto {
        align-self: auto !important;
    }

    .align-self-xl-start {
        align-self: flex-start !important;
    }

    .align-self-xl-end {
        align-self: flex-end !important;
    }

    .align-self-xl-center {
        align-self: center !important;
    }

    .align-self-xl-baseline {
        align-self: baseline !important;
    }

    .align-self-xl-stretch {
        align-self: stretch !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;
    }
}

/* -------- XXL -------- */
@media (min-width: var(--dr-breakpoint-xxl)) {
    .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;
    }

    .align-self-xxl-auto {
        align-self: auto !important;
    }

    .align-self-xxl-start {
        align-self: flex-start !important;
    }

    .align-self-xxl-end {
        align-self: flex-end !important;
    }

    .align-self-xxl-center {
        align-self: center !important;
    }

    .align-self-xxl-baseline {
        align-self: baseline !important;
    }

    .align-self-xxl-stretch {
        align-self: stretch !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;
    }
}

/* ----------------------------------------------------------------
            Stack layouts
-----------------------------------------------------------------*/

.hstack {
    display: flex;
    flex-direction: row;
    align-items: center;
    align-self: stretch;
}

.vstack {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-self: stretch;
}

/* ----------------------------------------------------------------
            Gaps
-----------------------------------------------------------------*/

.gap-0 {
    gap: 0 !important;
}

.gap-1 {
    gap: 0.25rem !important;
}

.gap-2 {
    gap: 0.5rem !important;
}

.gap-3 {
    gap: 1rem !important;
}

.gap-4 {
    gap: 1.5rem !important;
}

.gap-5 {
    gap: 3rem !important;
}

.gap-6 {
    gap: 5rem !important;
}

.row-gap-0 {
    row-gap: 0 !important;
}

.row-gap-1 {
    row-gap: 0.25rem !important;
}

.row-gap-2 {
    row-gap: 0.5rem !important;
}

.row-gap-3 {
    row-gap: 1rem !important;
}

.row-gap-4 {
    row-gap: 1.5rem !important;
}

.row-gap-5 {
    row-gap: 3rem !important;
}

.row-gap-6 {
    row-gap: 5rem !important;
}

.column-gap-0 {
    column-gap: 0 !important;
}

.column-gap-1 {
    column-gap: 0.25rem !important;
}

.column-gap-2 {
    column-gap: 0.5rem !important;
}

.column-gap-3 {
    column-gap: 1rem !important;
}

.column-gap-4 {
    column-gap: 1.5rem !important;
}

.column-gap-5 {
    column-gap: 3rem !important;
}

.column-gap-6 {
    column-gap: 5rem !important;
}

/* -------- SM -------- */
@media (min-width: var(--dr-breakpoint-sm)) {
    .gap-sm-0 {
        gap: 0 !important;
    }

    .gap-sm-1 {
        gap: 0.25rem !important;
    }

    .gap-sm-2 {
        gap: 0.5rem !important;
    }

    .gap-sm-3 {
        gap: 1rem !important;
    }

    .gap-sm-4 {
        gap: 1.5rem !important;
    }

    .gap-sm-5 {
        gap: 3rem !important;
    }

    .gap-sm-6 {
        gap: 5rem !important;
    }

    .row-gap-sm-0 {
        row-gap: 0 !important;
    }

    .row-gap-sm-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-sm-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-sm-3 {
        row-gap: 1rem !important;
    }

    .row-gap-sm-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-sm-5 {
        row-gap: 3rem !important;
    }

    .row-gap-sm-6 {
        row-gap: 5rem !important;
    }

    .column-gap-sm-0 {
        column-gap: 0 !important;
    }

    .column-gap-sm-1 {
        column-gap: 0.25rem !important;
    }

    .column-gap-sm-2 {
        column-gap: 0.5rem !important;
    }

    .column-gap-sm-3 {
        column-gap: 1rem !important;
    }

    .column-gap-sm-4 {
        column-gap: 1.5rem !important;
    }

    .column-gap-sm-5 {
        column-gap: 3rem !important;
    }

    .column-gap-sm-6 {
        column-gap: 5rem !important;
    }
}

/* -------- MD -------- */
@media (min-width: var(--dr-breakpoint-md)) {
    .gap-md-0 {
        gap: 0 !important;
    }

    .gap-md-1 {
        gap: 0.25rem !important;
    }

    .gap-md-2 {
        gap: 0.5rem !important;
    }

    .gap-md-3 {
        gap: 1rem !important;
    }

    .gap-md-4 {
        gap: 1.5rem !important;
    }

    .gap-md-5 {
        gap: 3rem !important;
    }

    .gap-md-6 {
        gap: 5rem !important;
    }

    .row-gap-md-0 {
        row-gap: 0 !important;
    }

    .row-gap-md-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-md-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-md-3 {
        row-gap: 1rem !important;
    }

    .row-gap-md-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-md-5 {
        row-gap: 3rem !important;
    }

    .row-gap-md-6 {
        row-gap: 5rem !important;
    }

    .column-gap-md-0 {
        column-gap: 0 !important;
    }

    .column-gap-md-1 {
        column-gap: 0.25rem !important;
    }

    .column-gap-md-2 {
        column-gap: 0.5rem !important;
    }

    .column-gap-md-3 {
        column-gap: 1rem !important;
    }

    .column-gap-md-4 {
        column-gap: 1.5rem !important;
    }

    .column-gap-md-5 {
        column-gap: 3rem !important;
    }

    .column-gap-md-6 {
        column-gap: 5rem !important;
    }
}

/* -------- LG -------- */
@media (min-width: var(--dr-breakpoint-lg)) {
    .gap-lg-0 {
        gap: 0 !important;
    }

    .gap-lg-1 {
        gap: 0.25rem !important;
    }

    .gap-lg-2 {
        gap: 0.5rem !important;
    }

    .gap-lg-3 {
        gap: 1rem !important;
    }

    .gap-lg-4 {
        gap: 1.5rem !important;
    }

    .gap-lg-5 {
        gap: 3rem !important;
    }

    .gap-lg-6 {
        gap: 5rem !important;
    }

    .row-gap-lg-0 {
        row-gap: 0 !important;
    }

    .row-gap-lg-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-lg-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-lg-3 {
        row-gap: 1rem !important;
    }

    .row-gap-lg-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-lg-5 {
        row-gap: 3rem !important;
    }

    .row-gap-lg-6 {
        row-gap: 5rem !important;
    }

    .column-gap-lg-0 {
        column-gap: 0 !important;
    }

    .column-gap-lg-1 {
        column-gap: 0.25rem !important;
    }

    .column-gap-lg-2 {
        column-gap: 0.5rem !important;
    }

    .column-gap-lg-3 {
        column-gap: 1rem !important;
    }

    .column-gap-lg-4 {
        column-gap: 1.5rem !important;
    }

    .column-gap-lg-5 {
        column-gap: 3rem !important;
    }

    .column-gap-lg-6 {
        column-gap: 5rem !important;
    }
}

/* -------- XL -------- */
@media (min-width: var(--dr-breakpoint-xl)) {
    .gap-xl-0 {
        gap: 0 !important;
    }

    .gap-xl-1 {
        gap: 0.25rem !important;
    }

    .gap-xl-2 {
        gap: 0.5rem !important;
    }

    .gap-xl-3 {
        gap: 1rem !important;
    }

    .gap-xl-4 {
        gap: 1.5rem !important;
    }

    .gap-xl-5 {
        gap: 3rem !important;
    }

    .gap-xl-6 {
        gap: 5rem !important;
    }

    .row-gap-xl-0 {
        row-gap: 0 !important;
    }

    .row-gap-xl-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-xl-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-xl-3 {
        row-gap: 1rem !important;
    }

    .row-gap-xl-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-xl-5 {
        row-gap: 3rem !important;
    }

    .row-gap-xl-6 {
        row-gap: 5rem !important;
    }

    .column-gap-xl-0 {
        column-gap: 0 !important;
    }

    .column-gap-xl-1 {
        column-gap: 0.25rem !important;
    }

    .column-gap-xl-2 {
        column-gap: 0.5rem !important;
    }

    .column-gap-xl-3 {
        column-gap: 1rem !important;
    }

    .column-gap-xl-4 {
        column-gap: 1.5rem !important;
    }

    .column-gap-xl-5 {
        column-gap: 3rem !important;
    }

    .column-gap-xl-6 {
        column-gap: 5rem !important;
    }
}

/* -------- XXL -------- */
@media (min-width: var(--dr-breakpoint-xxl)) {
    .gap-xxl-0 {
        gap: 0 !important;
    }

    .gap-xxl-1 {
        gap: 0.25rem !important;
    }

    .gap-xxl-2 {
        gap: 0.5rem !important;
    }

    .gap-xxl-3 {
        gap: 1rem !important;
    }

    .gap-xxl-4 {
        gap: 1.5rem !important;
    }

    .gap-xxl-5 {
        gap: 3rem !important;
    }

    .gap-xxl-6 {
        gap: 5rem !important;
    }

    .row-gap-xxl-0 {
        row-gap: 0 !important;
    }

    .row-gap-xxl-1 {
        row-gap: 0.25rem !important;
    }

    .row-gap-xxl-2 {
        row-gap: 0.5rem !important;
    }

    .row-gap-xxl-3 {
        row-gap: 1rem !important;
    }

    .row-gap-xxl-4 {
        row-gap: 1.5rem !important;
    }

    .row-gap-xxl-5 {
        row-gap: 3rem !important;
    }

    .row-gap-xxl-6 {
        row-gap: 5rem !important;
    }

    .column-gap-xxl-0 {
        column-gap: 0 !important;
    }

    .column-gap-xxl-1 {
        column-gap: 0.25rem !important;
    }

    .column-gap-xxl-2 {
        column-gap: 0.5rem !important;
    }

    .column-gap-xxl-3 {
        column-gap: 1rem !important;
    }

    .column-gap-xxl-4 {
        column-gap: 1.5rem !important;
    }

    .column-gap-xxl-5 {
        column-gap: 3rem !important;
    }

    .column-gap-xxl-6 {
        column-gap: 5rem !important;
    }
}

/* ----------------------------------------------------------------
  Wrapper
-----------------------------------------------------------------*/

#wrapper {
    position: relative;
    float: none;
    width: 100%;
    margin: 0 auto;
    background-color: var(--dr-body-bg);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

@media (min-width: 1200px) {
    body:not(.stretched) #wrapper {
        max-width: 1200px;
    }
}

@media (min-width: 1400px) {
    body:not(.stretched) #wrapper {
        max-width: 1400px;
    }
}

.stretched #wrapper {
    width: 100%;
    margin: 0;
    box-shadow: none;
}

/* ----------------------------------------------------------------
  Sections
-----------------------------------------------------------------*/

.section {
    position: relative;
    width: 100%;
    margin: var(--dr-section-margin) 0;
    padding: var(--dr-section-padding) 0;
    background-color: var(--dr-section-bg);
    overflow: hidden;
}

.section .container {
    z-index: 2;
}

.section .container+.video-wrap {
    z-index: 1;
}

/* ---------- Parallax Section -----------*/

.parallax {
    --dr-parallax-height: calc(1px * (var(--dr-scroll-height) + ((var(--dr-parallax-ratio) * 100))));
    --dr-parallax-factor: -1px;
    --dr-parallax-value: calc(var(--dr-parallax-factor) * var(--dr-parallax-ratio) * var(--dr-scroll-percent));
    overflow: hidden;
    will-change: transform;
    position: relative;
}

.parallax-bg {
    position: absolute !important;
    z-index: -1;
    left: 0;
    top: 0;
    max-width: none !important;
    width: var(--dr-parallax-width) !important;
    height: var(--dr-parallax-height) !important;
    object-fit: cover;
    transform: translate3d(0px, var(--dr-parallax-value), 0px);
    transition: transform 0.1s linear;
    will-change: transform;
}

.parallax[data-parallax-to=bottom] {
    --dr-parallax-factor: 1px;
}

.parallax[data-parallax-to=bottom] .parallax-bg {
    top: auto;
    bottom: 0;
}

.parallax[data-parallax-direction=horizontal] {
    --dr-parallax-width: calc(1px * (var(--dr-scroll-width) + ((var(--dr-parallax-ratio) * 100))));
    --dr-parallax-height: 100%;
}

.parallax[data-parallax-direction=horizontal] .parallax-bg {
    transform: translate3d(var(--dr-parallax-value), 0px, 0px);
}

.parallax[data-parallax-direction=horizontal][data-parallax-to=right] {
    --dr-parallax-factor: 1px;
}

.parallax[data-parallax-direction=horizontal][data-parallax-to=right] .parallax-bg {
    left: auto;
    right: 0;
}

.mobile-parallax,
.video-placeholder {
    background-size: cover !important;
    background-attachment: scroll !important;
    background-position: center center !important;
}

.revealer-image {
    position: relative;
    bottom: -100px;
    transition: bottom 0.3s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .revealer-image {
        transition: none;
    }
}

.section:hover .revealer-image {
    bottom: -50px;
}

/* ----------------------------------------------------------------
  Content
-----------------------------------------------------------------*/
#content {
    position: relative;
    background-color: var(--dr-body-bg);
}

.content-wrap {
    position: relative;
    padding: var(--dr-content-padding) 0;
    overflow: hidden;
}

.content-wrap .container {
    position: relative;
}

.content-wrap p {
    line-height: var(--dr-line-height-content);
}

.grid-container,
.grid-inner {
    position: relative;
    overflow: hidden;
    will-change: transform;
}

.grid-inner {
    width: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.grid-container {
    transition: height 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {
    .grid-container {
        transition: none;
    }
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Layout Utilities ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  							Align
-----------------------------------------------------------------*/

.align-baseline {
    vertical-align: baseline !important;
}

.align-top {
    vertical-align: top !important;
}

.align-middle {
    vertical-align: middle !important;
}

.align-bottom {
    vertical-align: bottom !important;
}

.align-text-bottom {
    vertical-align: text-bottom !important;
}

.align-text-top {
    vertical-align: text-top !important;
}


/* ----------------------------------------------------------------
  							Float
-----------------------------------------------------------------*/

.float-start {
    float: left !important;
}

.float-end {
    float: right !important;
}

.float-none {
    float: none !important;
}

/* -------- SM -------- */
@media (min-width: var(--dr-breakpoint-sm)) {
    .float-sm-start {
        float: left !important;
    }

    .float-sm-end {
        float: right !important;
    }

    .float-sm-none {
        float: none !important;
    }
}

/* -------- MD -------- */
@media (min-width: var(--dr-breakpoint-md)) {}

.float-md-start {
    float: left !important;
}

.float-md-end {
    float: right !important;
}

.float-md-none {
    float: none !important;
}

/* -------- LG -------- */
@media (min-width: var(--dr-breakpoint-lg)) {
    .float-lg-start {
        float: left !important;
    }

    .float-lg-end {
        float: right !important;
    }

    .float-lg-none {
        float: none !important;
    }
}

/* -------- XL -------- */
@media (min-width: var(--dr-breakpoint-xl)) {
    .float-xl-start {
        float: left !important;
    }

    .float-xl-end {
        float: right !important;
    }

    .float-xl-none {
        float: none !important;
    }
}

/* -------- XXL -------- */
@media (min-width: var(--dr-breakpoint-xxl)) {
    .float-xxl-start {
        float: left !important;
    }

    .float-xxl-end {
        float: right !important;
    }

    .float-xxl-none {
        float: none !important;
    }
}

/* ----------------------------------------------------------------
  Overflow
-----------------------------------------------------------------*/

.overflow-auto {
    overflow: auto !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.overflow-visible {
    overflow: visible !important;
}

.overflow-scroll {
    overflow: scroll !important;
}

.overflow-x-auto {
    overflow-x: auto !important;
}

.overflow-x-hidden {
    overflow-x: hidden !important;
}

.overflow-x-visible {
    overflow-x: visible !important;
}

.overflow-x-scroll {
    overflow-x: scroll !important;
}

.overflow-y-auto {
    overflow-y: auto !important;
}

.overflow-y-hidden {
    overflow-y: hidden !important;
}

.overflow-y-visible {
    overflow-y: visible !important;
}

.overflow-y-scroll {
    overflow-y: scroll !important;
}

/* ----------------------------------------------------------------
  Display Styles
-----------------------------------------------------------------*/

.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;
}

/* -------- SM -------- */
@media (min-width: var(--dr-breakpoint-sm)) {
    .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;
    }
}

/* -------- MD -------- */
@media (min-width: var(--dr-breakpoint-md)) {
    .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;
    }
}

/* -------- LG -------- */
@media (min-width: var(--dr-breakpoint-lg)) {

    /* Display Helper Classes */
    .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;
    }
}

/* -------- XL -------- */
@media (min-width: var(--dr-breakpoint-xl)) {
    .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;
    }
}

/* -------- XXL -------- */
@media (min-width: var(--dr-breakpoint-xxl)) {
    .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;
    }
}

/* ----------------------------------------------------------------
  Position Utility Classes
-----------------------------------------------------------------*/

.position-static {
    position: static !important;
}

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}

.position-sticky {
    position: sticky !important;
}

.top-0 {
    top: 0 !important;
}

.top-50 {
    top: 50% !important;
}

.top-100 {
    top: 100% !important;
}

.bottom-0 {
    bottom: 0 !important;
}

.bottom-50 {
    bottom: 50% !important;
}

.bottom-100 {
    bottom: 100% !important;
}

.start-0 {
    left: 0 !important;
}

.start-50 {
    left: 50% !important;
}

.start-100 {
    left: 100% !important;
}

.end-0 {
    right: 0 !important;
}

.end-50 {
    right: 50% !important;
}

.end-100 {
    right: 100% !important;
}

.translate-middle {
    transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
    transform: translateX(-50%) !important;
}

.translate-middle-y {
    transform: translateY(-50%) !important;
}

/* -------- SM -------- */
@media (min-width: var(--dr-breakpoint-sm)) {
    .position-sm-static {
        position: static !important;
    }

    .position-sm-relative {
        position: relative !important;
    }

    .position-sm-absolute {
        position: absolute !important;
    }

    .position-sm-fixed {
        position: fixed !important;
    }

    .position-sm-sticky {
        position: sticky !important;
    }
}

/* -------- MD -------- */
@media (min-width: var(--dr-breakpoint-md)) {
    .position-md-static {
        position: static !important;
    }

    .position-md-relative {
        position: relative !important;
    }

    .position-md-absolute {
        position: absolute !important;
    }

    .position-md-fixed {
        position: fixed !important;
    }

    .position-md-sticky {
        position: sticky !important;
    }
}

/* -------- LG -------- */
@media (min-width: var(--dr-breakpoint-lg)) {
    .position-lg-static {
        position: static !important;
    }

    .position-lg-relative {
        position: relative !important;
    }

    .position-lg-absolute {
        position: absolute !important;
    }

    .position-lg-fixed {
        position: fixed !important;
    }

    .position-lg-sticky {
        position: sticky !important;
    }
}

/* -------- XL -------- */
@media (min-width: var(--dr-breakpoint-xl)) {
    .position-xl-static {
        position: static !important;
    }

    .position-xl-relative {
        position: relative !important;
    }

    .position-xl-absolute {
        position: absolute !important;
    }

    .position-xl-fixed {
        position: fixed !important;
    }

    .position-xl-sticky {
        position: sticky !important;
    }
}

/* -------- XXL -------- */
@media (min-width: var(--dr-breakpoint-xxl)) {
    .position-xxl-static {
        position: static !important;
    }

    .position-xxl-relative {
        position: relative !important;
    }

    .position-xxl-absolute {
        position: absolute !important;
    }

    .position-xxl-fixed {
        position: fixed !important;
    }

    .position-xxl-sticky {
        position: sticky !important;
    }
}

/* ----------------------------------------------------------------
  X/Y Positioning Classes
-----------------------------------------------------------------*/
.pos-x-start {
    left: 0 !important;
    right: auto !important;
}

.pos-x-end {
    left: auto !important;
    right: 0 !important;
}

.pos-x-center {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
}

.pos-y-start {
    top: 0 !important;
    bottom: auto !important;
}

.pos-y-end {
    top: auto !important;
    bottom: 0 !important;
}

.pos-y-center {
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
}

.pos-x-center.pos-y-center {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}

/* ----------------------------------------------------------------
  Width and Height
-----------------------------------------------------------------*/

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.w-auto {
    width: auto !important;
}

.mw-100 {
    max-width: 100% !important;
}

.vw-100 {
    width: 100vw !important;
}

.min-vw-100 {
    min-width: 100vw !important;
}

.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}

.h-75 {
    height: 75% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

.mh-100 {
    max-height: 100% !important;
}

.vh-100 {
    height: 100vh !important;
}

.min-vh-100 {
    min-height: 100vh !important;
}

/* ----------------------------------------------------------------
  Max-width Utility Classes
-----------------------------------------------------------------*/
.mw-xs {
    max-width: 38rem !important;
}

.mw-sm {
    max-width: 48rem !important;
}

.mw-md {
    max-width: 64rem !important;
}

.mw-lg {
    max-width: 80rem !important;
}

.mw-xl {
    max-width: 90rem !important;
}

.mw-xxl {
    max-width: 100rem !important;
}

/* ----------------------------------------------------------------
  Max-width Utility Classes
-----------------------------------------------------------------*/
.align-wide-lg {
    margin-left: calc(50% - 480px) !important;
    margin-right: calc(50% - 480px) !important;
    max-width: 960px !important;
    width: 960px !important;
}

.align-wide-xl {
    margin-left: calc(50% - 570px) !important;
    margin-right: calc(50% - 570px) !important;
    max-width: 1140px !important;
    width: 1140px !important;
}

.align-wide-xxl {
    margin-left: calc(50% - 660px) !important;
    margin-right: calc(50% - 660px) !important;
    max-width: 1320px !important;
    width: 1320px !important;
}

@media (max-width: 575.98px) {

    .align-wide-lg,
    .align-wide-xl,
    .align-wide-xxl {
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        max-width: 100vw !important;
        width: 100vw !important;
    }
}

.align-full {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    max-width: 100vw !important;
    width: 100vw !important;
}

@media (max-width: 575.98px) {

    .align-wide-lg,
    .align-wide-xl,
    .align-wide-xxl {
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        max-width: 100vw !important;
        width: 100vw !important;
    }
}

/* ----------------------------------------------------------------
  Height Utility Classes
-----------------------------------------------------------------*/
.min-vh-100 {
    min-height: 100vh !important;
}

.vh-100 {
    height: 100vh !important;
}

.max-vh-100 {
    max-height: 100vh !important;
}

.h-100 {
    height: 100% !important;
}

.min-vh-90 {
    min-height: 90vh !important;
}

.vh-90 {
    height: 90vh !important;
}

.max-vh-90 {
    max-height: 90vh !important;
}

.h-90 {
    height: 90% !important;
}

.min-vh-75 {
    min-height: 75vh !important;
}

.vh-75 {
    height: 75vh !important;
}

.max-vh-75 {
    max-height: 75vh !important;
}

.h-75 {
    height: 75% !important;
}

.min-vh-60 {
    min-height: 60vh !important;
}

.vh-60 {
    height: 60vh !important;
}

.max-vh-60 {
    max-height: 60vh !important;
}

.h-60 {
    height: 60% !important;
}

.min-vh-50 {
    min-height: 50vh !important;
}

.vh-50 {
    height: 50vh !important;
}

.max-vh-50 {
    max-height: 50vh !important;
}

.h-50 {
    height: 50% !important;
}

.min-vh-40 {
    min-height: 40vh !important;
}

.vh-40 {
    height: 40vh !important;
}

.max-vh-40 {
    max-height: 40vh !important;
}

.h-40 {
    height: 40% !important;
}

.min-vh-25 {
    min-height: 25vh !important;
}

.vh-25 {
    height: 25vh !important;
}

.max-vh-25 {
    max-height: 25vh !important;
}

.h-25 {
    height: 25% !important;
}

.min-vh-0 {
    min-height: 0vh !important;
}

.vh-0 {
    height: 0vh !important;
}

.max-vh-0 {
    max-height: 0vh !important;
}

.h-0 {
    height: 0% !important;
}

.max-vh-none {
    max-height: none !important;
}

.h-auto {
    height: auto !important;
}

@media (min-width: 576px) {
    .min-vh-sm-100 {
        min-height: 100vh !important;
    }

    .vh-sm-100 {
        height: 100vh !important;
    }

    .max-vh-sm-100 {
        max-height: 100vh !important;
    }

    .h-sm-100 {
        height: 100% !important;
    }

    .min-vh-sm-90 {
        min-height: 90vh !important;
    }

    .vh-sm-90 {
        height: 90vh !important;
    }

    .max-vh-sm-90 {
        max-height: 90vh !important;
    }

    .h-sm-90 {
        height: 90% !important;
    }

    .min-vh-sm-75 {
        min-height: 75vh !important;
    }

    .vh-sm-75 {
        height: 75vh !important;
    }

    .max-vh-sm-75 {
        max-height: 75vh !important;
    }

    .h-sm-75 {
        height: 75% !important;
    }

    .min-vh-sm-60 {
        min-height: 60vh !important;
    }

    .vh-sm-60 {
        height: 60vh !important;
    }

    .max-vh-sm-60 {
        max-height: 60vh !important;
    }

    .h-sm-60 {
        height: 60% !important;
    }

    .min-vh-sm-50 {
        min-height: 50vh !important;
    }

    .vh-sm-50 {
        height: 50vh !important;
    }

    .max-vh-sm-50 {
        max-height: 50vh !important;
    }

    .h-sm-50 {
        height: 50% !important;
    }

    .min-vh-sm-40 {
        min-height: 40vh !important;
    }

    .vh-sm-40 {
        height: 40vh !important;
    }

    .max-vh-sm-40 {
        max-height: 40vh !important;
    }

    .h-sm-40 {
        height: 40% !important;
    }

    .min-vh-sm-25 {
        min-height: 25vh !important;
    }

    .vh-sm-25 {
        height: 25vh !important;
    }

    .max-vh-sm-25 {
        max-height: 25vh !important;
    }

    .h-sm-25 {
        height: 25% !important;
    }

    .min-vh-sm-0 {
        min-height: 0vh !important;
    }

    .vh-sm-0 {
        height: 0vh !important;
    }

    .max-vh-sm-0 {
        max-height: 0vh !important;
    }

    .h-sm-0 {
        height: 0% !important;
    }

    .max-vh-sm-none {
        max-height: none !important;
    }

    .h-sm-auto {
        height: auto !important;
    }
}

@media (min-width: 768px) {
    .min-vh-md-100 {
        min-height: 100vh !important;
    }

    .vh-md-100 {
        height: 100vh !important;
    }

    .max-vh-md-100 {
        max-height: 100vh !important;
    }

    .h-md-100 {
        height: 100% !important;
    }

    .min-vh-md-90 {
        min-height: 90vh !important;
    }

    .vh-md-90 {
        height: 90vh !important;
    }

    .max-vh-md-90 {
        max-height: 90vh !important;
    }

    .h-md-90 {
        height: 90% !important;
    }

    .min-vh-md-75 {
        min-height: 75vh !important;
    }

    .vh-md-75 {
        height: 75vh !important;
    }

    .max-vh-md-75 {
        max-height: 75vh !important;
    }

    .h-md-75 {
        height: 75% !important;
    }

    .min-vh-md-60 {
        min-height: 60vh !important;
    }

    .vh-md-60 {
        height: 60vh !important;
    }

    .max-vh-md-60 {
        max-height: 60vh !important;
    }

    .h-md-60 {
        height: 60% !important;
    }

    .min-vh-md-50 {
        min-height: 50vh !important;
    }

    .vh-md-50 {
        height: 50vh !important;
    }

    .max-vh-md-50 {
        max-height: 50vh !important;
    }

    .h-md-50 {
        height: 50% !important;
    }

    .min-vh-md-40 {
        min-height: 40vh !important;
    }

    .vh-md-40 {
        height: 40vh !important;
    }

    .max-vh-md-40 {
        max-height: 40vh !important;
    }

    .h-md-40 {
        height: 40% !important;
    }

    .min-vh-md-25 {
        min-height: 25vh !important;
    }

    .vh-md-25 {
        height: 25vh !important;
    }

    .max-vh-md-25 {
        max-height: 25vh !important;
    }

    .h-md-25 {
        height: 25% !important;
    }

    .min-vh-md-0 {
        min-height: 0vh !important;
    }

    .vh-md-0 {
        height: 0vh !important;
    }

    .max-vh-md-0 {
        max-height: 0vh !important;
    }

    .h-md-0 {
        height: 0% !important;
    }

    .max-vh-md-none {
        max-height: none !important;
    }

    .h-md-auto {
        height: auto !important;
    }
}

@media (min-width: 992px) {
    .min-vh-lg-100 {
        min-height: 100vh !important;
    }

    .vh-lg-100 {
        height: 100vh !important;
    }

    .max-vh-lg-100 {
        max-height: 100vh !important;
    }

    .h-lg-100 {
        height: 100% !important;
    }

    .min-vh-lg-90 {
        min-height: 90vh !important;
    }

    .vh-lg-90 {
        height: 90vh !important;
    }

    .max-vh-lg-90 {
        max-height: 90vh !important;
    }

    .h-lg-90 {
        height: 90% !important;
    }

    .min-vh-lg-75 {
        min-height: 75vh !important;
    }

    .vh-lg-75 {
        height: 75vh !important;
    }

    .max-vh-lg-75 {
        max-height: 75vh !important;
    }

    .h-lg-75 {
        height: 75% !important;
    }

    .min-vh-lg-60 {
        min-height: 60vh !important;
    }

    .vh-lg-60 {
        height: 60vh !important;
    }

    .max-vh-lg-60 {
        max-height: 60vh !important;
    }

    .h-lg-60 {
        height: 60% !important;
    }

    .min-vh-lg-50 {
        min-height: 50vh !important;
    }

    .vh-lg-50 {
        height: 50vh !important;
    }

    .max-vh-lg-50 {
        max-height: 50vh !important;
    }

    .h-lg-50 {
        height: 50% !important;
    }

    .min-vh-lg-40 {
        min-height: 40vh !important;
    }

    .vh-lg-40 {
        height: 40vh !important;
    }

    .max-vh-lg-40 {
        max-height: 40vh !important;
    }

    .h-lg-40 {
        height: 40% !important;
    }

    .min-vh-lg-25 {
        min-height: 25vh !important;
    }

    .vh-lg-25 {
        height: 25vh !important;
    }

    .max-vh-lg-25 {
        max-height: 25vh !important;
    }

    .h-lg-25 {
        height: 25% !important;
    }

    .min-vh-lg-0 {
        min-height: 0vh !important;
    }

    .vh-lg-0 {
        height: 0vh !important;
    }

    .max-vh-lg-0 {
        max-height: 0vh !important;
    }

    .h-lg-0 {
        height: 0% !important;
    }

    .max-vh-lg-none {
        max-height: none !important;
    }

    .h-lg-auto {
        height: auto !important;
    }
}

@media (min-width: 1200px) {
    .min-vh-xl-100 {
        min-height: 100vh !important;
    }

    .vh-xl-100 {
        height: 100vh !important;
    }

    .max-vh-xl-100 {
        max-height: 100vh !important;
    }

    .h-xl-100 {
        height: 100% !important;
    }

    .min-vh-xl-90 {
        min-height: 90vh !important;
    }

    .vh-xl-90 {
        height: 90vh !important;
    }

    .max-vh-xl-90 {
        max-height: 90vh !important;
    }

    .h-xl-90 {
        height: 90% !important;
    }

    .min-vh-xl-75 {
        min-height: 75vh !important;
    }

    .vh-xl-75 {
        height: 75vh !important;
    }

    .max-vh-xl-75 {
        max-height: 75vh !important;
    }

    .h-xl-75 {
        height: 75% !important;
    }

    .min-vh-xl-60 {
        min-height: 60vh !important;
    }

    .vh-xl-60 {
        height: 60vh !important;
    }

    .max-vh-xl-60 {
        max-height: 60vh !important;
    }

    .h-xl-60 {
        height: 60% !important;
    }

    .min-vh-xl-50 {
        min-height: 50vh !important;
    }

    .vh-xl-50 {
        height: 50vh !important;
    }

    .max-vh-xl-50 {
        max-height: 50vh !important;
    }

    .h-xl-50 {
        height: 50% !important;
    }

    .min-vh-xl-40 {
        min-height: 40vh !important;
    }

    .vh-xl-40 {
        height: 40vh !important;
    }

    .max-vh-xl-40 {
        max-height: 40vh !important;
    }

    .h-xl-40 {
        height: 40% !important;
    }

    .min-vh-xl-25 {
        min-height: 25vh !important;
    }

    .vh-xl-25 {
        height: 25vh !important;
    }

    .max-vh-xl-25 {
        max-height: 25vh !important;
    }

    .h-xl-25 {
        height: 25% !important;
    }

    .min-vh-xl-0 {
        min-height: 0vh !important;
    }

    .vh-xl-0 {
        height: 0vh !important;
    }

    .max-vh-xl-0 {
        max-height: 0vh !important;
    }

    .h-xl-0 {
        height: 0% !important;
    }

    .max-vh-xl-none {
        max-height: none !important;
    }

    .h-xl-auto {
        height: auto !important;
    }
}

@media (min-width: 1400px) {
    .min-vh-xxl-100 {
        min-height: 100vh !important;
    }

    .vh-xxl-100 {
        height: 100vh !important;
    }

    .max-vh-xxl-100 {
        max-height: 100vh !important;
    }

    .h-xxl-100 {
        height: 100% !important;
    }

    .min-vh-xxl-90 {
        min-height: 90vh !important;
    }

    .vh-xxl-90 {
        height: 90vh !important;
    }

    .max-vh-xxl-90 {
        max-height: 90vh !important;
    }

    .h-xxl-90 {
        height: 90% !important;
    }

    .min-vh-xxl-75 {
        min-height: 75vh !important;
    }

    .vh-xxl-75 {
        height: 75vh !important;
    }

    .max-vh-xxl-75 {
        max-height: 75vh !important;
    }

    .h-xxl-75 {
        height: 75% !important;
    }

    .min-vh-xxl-60 {
        min-height: 60vh !important;
    }

    .vh-xxl-60 {
        height: 60vh !important;
    }

    .max-vh-xxl-60 {
        max-height: 60vh !important;
    }

    .h-xxl-60 {
        height: 60% !important;
    }

    .min-vh-xxl-50 {
        min-height: 50vh !important;
    }

    .vh-xxl-50 {
        height: 50vh !important;
    }

    .max-vh-xxl-50 {
        max-height: 50vh !important;
    }

    .h-xxl-50 {
        height: 50% !important;
    }

    .min-vh-xxl-40 {
        min-height: 40vh !important;
    }

    .vh-xxl-40 {
        height: 40vh !important;
    }

    .max-vh-xxl-40 {
        max-height: 40vh !important;
    }

    .h-xxl-40 {
        height: 40% !important;
    }

    .min-vh-xxl-25 {
        min-height: 25vh !important;
    }

    .vh-xxl-25 {
        height: 25vh !important;
    }

    .max-vh-xxl-25 {
        max-height: 25vh !important;
    }

    .h-xxl-25 {
        height: 25% !important;
    }

    .min-vh-xxl-0 {
        min-height: 0vh !important;
    }

    .vh-xxl-0 {
        height: 0vh !important;
    }

    .max-vh-xxl-0 {
        max-height: 0vh !important;
    }

    .h-xxl-0 {
        height: 0% !important;
    }

    .max-vh-xxl-none {
        max-height: none !important;
    }

    .h-xxl-auto {
        height: auto !important;
    }
}

/* ----------------------------------------------------------------
  Margin Utility Classes
-----------------------------------------------------------------*/

.m-0 {
    margin: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.m-6 {
    margin: 5rem !important;
}

.m-auto {
    margin: auto !important;
}

.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.mx-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
}

.mx-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.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-6 {
    margin-right: 5rem !important;
    margin-left: 5rem !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: 0.25rem !important;
    margin-bottom: 0.25rem !important;
}

.my-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.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-6 {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
}

.my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

.mt-2 {
    margin-top: 0.5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mt-5 {
    margin-top: 3rem !important;
}

.mt-6 {
    margin-top: 5rem !important;
}

.mt-auto {
    margin-top: auto !important;
}

.me-0 {
    margin-right: 0 !important;
}

.me-1 {
    margin-right: 0.25rem !important;
}

.me-2 {
    margin-right: 0.5rem !important;
}

.me-3 {
    margin-right: 1rem !important;
}

.me-4 {
    margin-right: 1.5rem !important;
}

.me-5 {
    margin-right: 3rem !important;
}

.me-6 {
    margin-right: 5rem !important;
}

.me-auto {
    margin-right: auto !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-1 {
    margin-bottom: 0.25rem !important;
}

.mb-2 {
    margin-bottom: 0.5rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.mb-4 {
    margin-bottom: 1.5rem !important;
}

.mb-5 {
    margin-bottom: 3rem !important;
}

.mb-6 {
    margin-bottom: 5rem !important;
}

.mb-auto {
    margin-bottom: auto !important;
}

.ms-0 {
    margin-left: 0 !important;
}

.ms-1 {
    margin-left: 0.25rem !important;
}

.ms-2 {
    margin-left: 0.5rem !important;
}

.ms-3 {
    margin-left: 1rem !important;
}

.ms-4 {
    margin-left: 1.5rem !important;
}

.ms-5 {
    margin-left: 3rem !important;
}

.ms-6 {
    margin-left: 5rem !important;
}

.ms-auto {
    margin-left: auto !important;
}

/* ----------------------------------------------------------------
  Padding Utility Classes
-----------------------------------------------------------------*/

.p-0 {
    padding: 0 !important;
}

.p-1 {
    padding: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.p-6 {
    padding: 5rem !important;
}

.px-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.px-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
}

.px-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.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;
}

.px-6 {
    padding-right: 5rem !important;
    padding-left: 5rem !important;
}

.py-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.py-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
}

.py-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.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;
}

.py-6 {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-1 {
    padding-top: 0.25rem !important;
}

.pt-2 {
    padding-top: 0.5rem !important;
}

.pt-3 {
    padding-top: 1rem !important;
}

.pt-4 {
    padding-top: 1.5rem !important;
}

.pt-5 {
    padding-top: 3rem !important;
}

.pt-6 {
    padding-top: 5rem !important;
}

.pe-0 {
    padding-right: 0 !important;
}

.pe-1 {
    padding-right: 0.25rem !important;
}

.pe-2 {
    padding-right: 0.5rem !important;
}

.pe-3 {
    padding-right: 1rem !important;
}

.pe-4 {
    padding-right: 1.5rem !important;
}

.pe-5 {
    padding-right: 3rem !important;
}

.pe-6 {
    padding-right: 5rem !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-1 {
    padding-bottom: 0.25rem !important;
}

.pb-2 {
    padding-bottom: 0.5rem !important;
}

.pb-3 {
    padding-bottom: 1rem !important;
}

.pb-4 {
    padding-bottom: 1.5rem !important;
}

.pb-5 {
    padding-bottom: 3rem !important;
}

.pb-6 {
    padding-bottom: 5rem !important;
}

.ps-0 {
    padding-left: 0 !important;
}

.ps-1 {
    padding-left: 0.25rem !important;
}

.ps-2 {
    padding-left: 0.5rem !important;
}

.ps-3 {
    padding-left: 1rem !important;
}

.ps-4 {
    padding-left: 1.5rem !important;
}

.ps-5 {
    padding-left: 3rem !important;
}

.ps-6 {
    padding-left: 5rem !important;
}

/* ----------------------------------------------------------------
  Margin and Padding Responsive
-----------------------------------------------------------------*/

/* -------- SM -------- */
@media (min-width: var(--dr-breakpoint-sm)) {
    .m-sm-0 {
        margin: 0 !important;
    }

    .m-sm-1 {
        margin: 0.25rem !important;
    }

    .m-sm-2 {
        margin: 0.5rem !important;
    }

    .m-sm-3 {
        margin: 1rem !important;
    }

    .m-sm-4 {
        margin: 1.5rem !important;
    }

    .m-sm-5 {
        margin: 3rem !important;
    }

    .m-sm-6 {
        margin: 5rem !important;
    }

    .m-sm-auto {
        margin: auto !important;
    }

    .mx-sm-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-sm-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-sm-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-sm-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-sm-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-sm-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-sm-6 {
        margin-right: 5rem !important;
        margin-left: 5rem !important;
    }

    .mx-sm-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-sm-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-sm-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-sm-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-sm-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-sm-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-sm-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-sm-6 {
        margin-top: 5rem !important;
        margin-bottom: 5rem !important;
    }

    .my-sm-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-sm-0 {
        margin-top: 0 !important;
    }

    .mt-sm-1 {
        margin-top: 0.25rem !important;
    }

    .mt-sm-2 {
        margin-top: 0.5rem !important;
    }

    .mt-sm-3 {
        margin-top: 1rem !important;
    }

    .mt-sm-4 {
        margin-top: 1.5rem !important;
    }

    .mt-sm-5 {
        margin-top: 3rem !important;
    }

    .mt-sm-6 {
        margin-top: 5rem !important;
    }

    .mt-sm-auto {
        margin-top: auto !important;
    }

    .me-sm-0 {
        margin-right: 0 !important;
    }

    .me-sm-1 {
        margin-right: 0.25rem !important;
    }

    .me-sm-2 {
        margin-right: 0.5rem !important;
    }

    .me-sm-3 {
        margin-right: 1rem !important;
    }

    .me-sm-4 {
        margin-right: 1.5rem !important;
    }

    .me-sm-5 {
        margin-right: 3rem !important;
    }

    .me-sm-6 {
        margin-right: 5rem !important;
    }

    .me-sm-auto {
        margin-right: auto !important;
    }

    .mb-sm-0 {
        margin-bottom: 0 !important;
    }

    .mb-sm-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-sm-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-sm-3 {
        margin-bottom: 1rem !important;
    }

    .mb-sm-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-sm-5 {
        margin-bottom: 3rem !important;
    }

    .mb-sm-6 {
        margin-bottom: 5rem !important;
    }

    .mb-sm-auto {
        margin-bottom: auto !important;
    }

    .ms-sm-0 {
        margin-left: 0 !important;
    }

    .ms-sm-1 {
        margin-left: 0.25rem !important;
    }

    .ms-sm-2 {
        margin-left: 0.5rem !important;
    }

    .ms-sm-3 {
        margin-left: 1rem !important;
    }

    .ms-sm-4 {
        margin-left: 1.5rem !important;
    }

    .ms-sm-5 {
        margin-left: 3rem !important;
    }

    .ms-sm-6 {
        margin-left: 5rem !important;
    }

    .ms-sm-auto {
        margin-left: auto !important;
    }

    .p-sm-0 {
        padding: 0 !important;
    }

    .p-sm-1 {
        padding: 0.25rem !important;
    }

    .p-sm-2 {
        padding: 0.5rem !important;
    }

    .p-sm-3 {
        padding: 1rem !important;
    }

    .p-sm-4 {
        padding: 1.5rem !important;
    }

    .p-sm-5 {
        padding: 3rem !important;
    }

    .p-sm-6 {
        padding: 5rem !important;
    }

    .px-sm-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-sm-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-sm-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-sm-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-sm-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-sm-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .px-sm-6 {
        padding-right: 5rem !important;
        padding-left: 5rem !important;
    }

    .py-sm-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-sm-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-sm-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-sm-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-sm-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-sm-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .py-sm-6 {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .pt-sm-0 {
        padding-top: 0 !important;
    }

    .pt-sm-1 {
        padding-top: 0.25rem !important;
    }

    .pt-sm-2 {
        padding-top: 0.5rem !important;
    }

    .pt-sm-3 {
        padding-top: 1rem !important;
    }

    .pt-sm-4 {
        padding-top: 1.5rem !important;
    }

    .pt-sm-5 {
        padding-top: 3rem !important;
    }

    .pt-sm-6 {
        padding-top: 5rem !important;
    }

    .pe-sm-0 {
        padding-right: 0 !important;
    }

    .pe-sm-1 {
        padding-right: 0.25rem !important;
    }

    .pe-sm-2 {
        padding-right: 0.5rem !important;
    }

    .pe-sm-3 {
        padding-right: 1rem !important;
    }

    .pe-sm-4 {
        padding-right: 1.5rem !important;
    }

    .pe-sm-5 {
        padding-right: 3rem !important;
    }

    .pe-sm-6 {
        padding-right: 5rem !important;
    }

    .pb-sm-0 {
        padding-bottom: 0 !important;
    }

    .pb-sm-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-sm-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-sm-3 {
        padding-bottom: 1rem !important;
    }

    .pb-sm-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-sm-5 {
        padding-bottom: 3rem !important;
    }

    .pb-sm-6 {
        padding-bottom: 5rem !important;
    }

    .ps-sm-0 {
        padding-left: 0 !important;
    }

    .ps-sm-1 {
        padding-left: 0.25rem !important;
    }

    .ps-sm-2 {
        padding-left: 0.5rem !important;
    }

    .ps-sm-3 {
        padding-left: 1rem !important;
    }

    .ps-sm-4 {
        padding-left: 1.5rem !important;
    }

    .ps-sm-5 {
        padding-left: 3rem !important;
    }

    .ps-sm-6 {
        padding-left: 5rem !important;
    }
}

/* -------- MD -------- */
@media (min-width: var(--dr-breakpoint-md)) {
    .m-md-0 {
        margin: 0 !important;
    }

    .m-md-1 {
        margin: 0.25rem !important;
    }

    .m-md-2 {
        margin: 0.5rem !important;
    }

    .m-md-3 {
        margin: 1rem !important;
    }

    .m-md-4 {
        margin: 1.5rem !important;
    }

    .m-md-5 {
        margin: 3rem !important;
    }

    .m-md-6 {
        margin: 5rem !important;
    }

    .m-md-auto {
        margin: auto !important;
    }

    .mx-md-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-md-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-md-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-md-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-md-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-md-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-md-6 {
        margin-right: 5rem !important;
        margin-left: 5rem !important;
    }

    .mx-md-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-md-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-md-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-md-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-md-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-md-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-md-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-md-6 {
        margin-top: 5rem !important;
        margin-bottom: 5rem !important;
    }

    .my-md-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-md-0 {
        margin-top: 0 !important;
    }

    .mt-md-1 {
        margin-top: 0.25rem !important;
    }

    .mt-md-2 {
        margin-top: 0.5rem !important;
    }

    .mt-md-3 {
        margin-top: 1rem !important;
    }

    .mt-md-4 {
        margin-top: 1.5rem !important;
    }

    .mt-md-5 {
        margin-top: 3rem !important;
    }

    .mt-md-6 {
        margin-top: 5rem !important;
    }

    .mt-md-auto {
        margin-top: auto !important;
    }

    .me-md-0 {
        margin-right: 0 !important;
    }

    .me-md-1 {
        margin-right: 0.25rem !important;
    }

    .me-md-2 {
        margin-right: 0.5rem !important;
    }

    .me-md-3 {
        margin-right: 1rem !important;
    }

    .me-md-4 {
        margin-right: 1.5rem !important;
    }

    .me-md-5 {
        margin-right: 3rem !important;
    }

    .me-md-6 {
        margin-right: 5rem !important;
    }

    .me-md-auto {
        margin-right: auto !important;
    }

    .mb-md-0 {
        margin-bottom: 0 !important;
    }

    .mb-md-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-md-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-md-3 {
        margin-bottom: 1rem !important;
    }

    .mb-md-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-md-5 {
        margin-bottom: 3rem !important;
    }

    .mb-md-6 {
        margin-bottom: 5rem !important;
    }

    .mb-md-auto {
        margin-bottom: auto !important;
    }

    .ms-md-0 {
        margin-left: 0 !important;
    }

    .ms-md-1 {
        margin-left: 0.25rem !important;
    }

    .ms-md-2 {
        margin-left: 0.5rem !important;
    }

    .ms-md-3 {
        margin-left: 1rem !important;
    }

    .ms-md-4 {
        margin-left: 1.5rem !important;
    }

    .ms-md-5 {
        margin-left: 3rem !important;
    }

    .ms-md-6 {
        margin-left: 5rem !important;
    }

    .ms-md-auto {
        margin-left: auto !important;
    }

    .p-md-0 {
        padding: 0 !important;
    }

    .p-md-1 {
        padding: 0.25rem !important;
    }

    .p-md-2 {
        padding: 0.5rem !important;
    }

    .p-md-3 {
        padding: 1rem !important;
    }

    .p-md-4 {
        padding: 1.5rem !important;
    }

    .p-md-5 {
        padding: 3rem !important;
    }

    .p-md-6 {
        padding: 5rem !important;
    }

    .px-md-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-md-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-md-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-md-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-md-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-md-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .px-md-6 {
        padding-right: 5rem !important;
        padding-left: 5rem !important;
    }

    .py-md-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-md-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-md-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-md-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-md-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-md-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .py-md-6 {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .pt-md-0 {
        padding-top: 0 !important;
    }

    .pt-md-1 {
        padding-top: 0.25rem !important;
    }

    .pt-md-2 {
        padding-top: 0.5rem !important;
    }

    .pt-md-3 {
        padding-top: 1rem !important;
    }

    .pt-md-4 {
        padding-top: 1.5rem !important;
    }

    .pt-md-5 {
        padding-top: 3rem !important;
    }

    .pt-md-6 {
        padding-top: 5rem !important;
    }

    .pe-md-0 {
        padding-right: 0 !important;
    }

    .pe-md-1 {
        padding-right: 0.25rem !important;
    }

    .pe-md-2 {
        padding-right: 0.5rem !important;
    }

    .pe-md-3 {
        padding-right: 1rem !important;
    }

    .pe-md-4 {
        padding-right: 1.5rem !important;
    }

    .pe-md-5 {
        padding-right: 3rem !important;
    }

    .pe-md-6 {
        padding-right: 5rem !important;
    }

    .pb-md-0 {
        padding-bottom: 0 !important;
    }

    .pb-md-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-md-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-md-3 {
        padding-bottom: 1rem !important;
    }

    .pb-md-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-md-5 {
        padding-bottom: 3rem !important;
    }

    .pb-md-6 {
        padding-bottom: 5rem !important;
    }

    .ps-md-0 {
        padding-left: 0 !important;
    }

    .ps-md-1 {
        padding-left: 0.25rem !important;
    }

    .ps-md-2 {
        padding-left: 0.5rem !important;
    }

    .ps-md-3 {
        padding-left: 1rem !important;
    }

    .ps-md-4 {
        padding-left: 1.5rem !important;
    }

    .ps-md-5 {
        padding-left: 3rem !important;
    }

    .ps-md-6 {
        padding-left: 5rem !important;
    }
}

/* -------- LG -------- */
@media (min-width: var(--dr-breakpoint-lg)) {
    .m-lg-0 {
        margin: 0 !important;
    }

    .m-lg-1 {
        margin: 0.25rem !important;
    }

    .m-lg-2 {
        margin: 0.5rem !important;
    }

    .m-lg-3 {
        margin: 1rem !important;
    }

    .m-lg-4 {
        margin: 1.5rem !important;
    }

    .m-lg-5 {
        margin: 3rem !important;
    }

    .m-lg-6 {
        margin: 5rem !important;
    }

    .m-lg-auto {
        margin: auto !important;
    }

    .mx-lg-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-lg-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-lg-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-lg-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-lg-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-lg-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-lg-6 {
        margin-right: 5rem !important;
        margin-left: 5rem !important;
    }

    .mx-lg-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-lg-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-lg-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-lg-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-lg-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-lg-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-lg-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-lg-6 {
        margin-top: 5rem !important;
        margin-bottom: 5rem !important;
    }

    .my-lg-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-lg-0 {
        margin-top: 0 !important;
    }

    .mt-lg-1 {
        margin-top: 0.25rem !important;
    }

    .mt-lg-2 {
        margin-top: 0.5rem !important;
    }

    .mt-lg-3 {
        margin-top: 1rem !important;
    }

    .mt-lg-4 {
        margin-top: 1.5rem !important;
    }

    .mt-lg-5 {
        margin-top: 3rem !important;
    }

    .mt-lg-6 {
        margin-top: 5rem !important;
    }

    .mt-lg-auto {
        margin-top: auto !important;
    }

    .me-lg-0 {
        margin-right: 0 !important;
    }

    .me-lg-1 {
        margin-right: 0.25rem !important;
    }

    .me-lg-2 {
        margin-right: 0.5rem !important;
    }

    .me-lg-3 {
        margin-right: 1rem !important;
    }

    .me-lg-4 {
        margin-right: 1.5rem !important;
    }

    .me-lg-5 {
        margin-right: 3rem !important;
    }

    .me-lg-6 {
        margin-right: 5rem !important;
    }

    .me-lg-auto {
        margin-right: auto !important;
    }

    .mb-lg-0 {
        margin-bottom: 0 !important;
    }

    .mb-lg-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-lg-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-lg-3 {
        margin-bottom: 1rem !important;
    }

    .mb-lg-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-lg-5 {
        margin-bottom: 3rem !important;
    }

    .mb-lg-6 {
        margin-bottom: 5rem !important;
    }

    .mb-lg-auto {
        margin-bottom: auto !important;
    }

    .ms-lg-0 {
        margin-left: 0 !important;
    }

    .ms-lg-1 {
        margin-left: 0.25rem !important;
    }

    .ms-lg-2 {
        margin-left: 0.5rem !important;
    }

    .ms-lg-3 {
        margin-left: 1rem !important;
    }

    .ms-lg-4 {
        margin-left: 1.5rem !important;
    }

    .ms-lg-5 {
        margin-left: 3rem !important;
    }

    .ms-lg-6 {
        margin-left: 5rem !important;
    }

    .ms-lg-auto {
        margin-left: auto !important;
    }

    .p-lg-0 {
        padding: 0 !important;
    }

    .p-lg-1 {
        padding: 0.25rem !important;
    }

    .p-lg-2 {
        padding: 0.5rem !important;
    }

    .p-lg-3 {
        padding: 1rem !important;
    }

    .p-lg-4 {
        padding: 1.5rem !important;
    }

    .p-lg-5 {
        padding: 3rem !important;
    }

    .p-lg-6 {
        padding: 5rem !important;
    }

    .px-lg-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-lg-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-lg-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-lg-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-lg-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-lg-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .px-lg-6 {
        padding-right: 5rem !important;
        padding-left: 5rem !important;
    }

    .py-lg-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-lg-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-lg-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-lg-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-lg-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-lg-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .py-lg-6 {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .pt-lg-0 {
        padding-top: 0 !important;
    }

    .pt-lg-1 {
        padding-top: 0.25rem !important;
    }

    .pt-lg-2 {
        padding-top: 0.5rem !important;
    }

    .pt-lg-3 {
        padding-top: 1rem !important;
    }

    .pt-lg-4 {
        padding-top: 1.5rem !important;
    }

    .pt-lg-5 {
        padding-top: 3rem !important;
    }

    .pt-lg-6 {
        padding-top: 5rem !important;
    }

    .pe-lg-0 {
        padding-right: 0 !important;
    }

    .pe-lg-1 {
        padding-right: 0.25rem !important;
    }

    .pe-lg-2 {
        padding-right: 0.5rem !important;
    }

    .pe-lg-3 {
        padding-right: 1rem !important;
    }

    .pe-lg-4 {
        padding-right: 1.5rem !important;
    }

    .pe-lg-5 {
        padding-right: 3rem !important;
    }

    .pe-lg-6 {
        padding-right: 5rem !important;
    }

    .pb-lg-0 {
        padding-bottom: 0 !important;
    }

    .pb-lg-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-lg-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-lg-3 {
        padding-bottom: 1rem !important;
    }

    .pb-lg-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-lg-5 {
        padding-bottom: 3rem !important;
    }

    .pb-lg-6 {
        padding-bottom: 5rem !important;
    }

    .ps-lg-0 {
        padding-left: 0 !important;
    }

    .ps-lg-1 {
        padding-left: 0.25rem !important;
    }

    .ps-lg-2 {
        padding-left: 0.5rem !important;
    }

    .ps-lg-3 {
        padding-left: 1rem !important;
    }

    .ps-lg-4 {
        padding-left: 1.5rem !important;
    }

    .ps-lg-5 {
        padding-left: 3rem !important;
    }

    .ps-lg-6 {
        padding-left: 5rem !important;
    }
}

/* -------- XL -------- */
@media (min-width: var(--dr-breakpoint-xl)) {
    .m-xl-0 {
        margin: 0 !important;
    }

    .m-xl-1 {
        margin: 0.25rem !important;
    }

    .m-xl-2 {
        margin: 0.5rem !important;
    }

    .m-xl-3 {
        margin: 1rem !important;
    }

    .m-xl-4 {
        margin: 1.5rem !important;
    }

    .m-xl-5 {
        margin: 3rem !important;
    }

    .m-xl-6 {
        margin: 5rem !important;
    }

    .m-xl-auto {
        margin: auto !important;
    }

    .mx-xl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-xl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-xl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-xl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-xl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-xl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-xl-6 {
        margin-right: 5rem !important;
        margin-left: 5rem !important;
    }

    .mx-xl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-xl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-xl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-xl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-xl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-xl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-xl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-xl-6 {
        margin-top: 5rem !important;
        margin-bottom: 5rem !important;
    }

    .my-xl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-xl-0 {
        margin-top: 0 !important;
    }

    .mt-xl-1 {
        margin-top: 0.25rem !important;
    }

    .mt-xl-2 {
        margin-top: 0.5rem !important;
    }

    .mt-xl-3 {
        margin-top: 1rem !important;
    }

    .mt-xl-4 {
        margin-top: 1.5rem !important;
    }

    .mt-xl-5 {
        margin-top: 3rem !important;
    }

    .mt-xl-6 {
        margin-top: 5rem !important;
    }

    .mt-xl-auto {
        margin-top: auto !important;
    }

    .me-xl-0 {
        margin-right: 0 !important;
    }

    .me-xl-1 {
        margin-right: 0.25rem !important;
    }

    .me-xl-2 {
        margin-right: 0.5rem !important;
    }

    .me-xl-3 {
        margin-right: 1rem !important;
    }

    .me-xl-4 {
        margin-right: 1.5rem !important;
    }

    .me-xl-5 {
        margin-right: 3rem !important;
    }

    .me-xl-6 {
        margin-right: 5rem !important;
    }

    .me-xl-auto {
        margin-right: auto !important;
    }

    .mb-xl-0 {
        margin-bottom: 0 !important;
    }

    .mb-xl-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-xl-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-xl-3 {
        margin-bottom: 1rem !important;
    }

    .mb-xl-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-xl-5 {
        margin-bottom: 3rem !important;
    }

    .mb-xl-6 {
        margin-bottom: 5rem !important;
    }

    .mb-xl-auto {
        margin-bottom: auto !important;
    }

    .ms-xl-0 {
        margin-left: 0 !important;
    }

    .ms-xl-1 {
        margin-left: 0.25rem !important;
    }

    .ms-xl-2 {
        margin-left: 0.5rem !important;
    }

    .ms-xl-3 {
        margin-left: 1rem !important;
    }

    .ms-xl-4 {
        margin-left: 1.5rem !important;
    }

    .ms-xl-5 {
        margin-left: 3rem !important;
    }

    .ms-xl-6 {
        margin-left: 5rem !important;
    }

    .ms-xl-auto {
        margin-left: auto !important;
    }

    .p-xl-0 {
        padding: 0 !important;
    }

    .p-xl-1 {
        padding: 0.25rem !important;
    }

    .p-xl-2 {
        padding: 0.5rem !important;
    }

    .p-xl-3 {
        padding: 1rem !important;
    }

    .p-xl-4 {
        padding: 1.5rem !important;
    }

    .p-xl-5 {
        padding: 3rem !important;
    }

    .p-xl-6 {
        padding: 5rem !important;
    }

    .px-xl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-xl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-xl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-xl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-xl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-xl-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .px-xl-6 {
        padding-right: 5rem !important;
        padding-left: 5rem !important;
    }

    .py-xl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-xl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-xl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-xl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-xl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-xl-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .py-xl-6 {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .pt-xl-0 {
        padding-top: 0 !important;
    }

    .pt-xl-1 {
        padding-top: 0.25rem !important;
    }

    .pt-xl-2 {
        padding-top: 0.5rem !important;
    }

    .pt-xl-3 {
        padding-top: 1rem !important;
    }

    .pt-xl-4 {
        padding-top: 1.5rem !important;
    }

    .pt-xl-5 {
        padding-top: 3rem !important;
    }

    .pt-xl-6 {
        padding-top: 5rem !important;
    }

    .pe-xl-0 {
        padding-right: 0 !important;
    }

    .pe-xl-1 {
        padding-right: 0.25rem !important;
    }

    .pe-xl-2 {
        padding-right: 0.5rem !important;
    }

    .pe-xl-3 {
        padding-right: 1rem !important;
    }

    .pe-xl-4 {
        padding-right: 1.5rem !important;
    }

    .pe-xl-5 {
        padding-right: 3rem !important;
    }

    .pe-xl-6 {
        padding-right: 5rem !important;
    }

    .pb-xl-0 {
        padding-bottom: 0 !important;
    }

    .pb-xl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-xl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-xl-3 {
        padding-bottom: 1rem !important;
    }

    .pb-xl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-xl-5 {
        padding-bottom: 3rem !important;
    }

    .pb-xl-6 {
        padding-bottom: 5rem !important;
    }

    .ps-xl-0 {
        padding-left: 0 !important;
    }

    .ps-xl-1 {
        padding-left: 0.25rem !important;
    }

    .ps-xl-2 {
        padding-left: 0.5rem !important;
    }

    .ps-xl-3 {
        padding-left: 1rem !important;
    }

    .ps-xl-4 {
        padding-left: 1.5rem !important;
    }

    .ps-xl-5 {
        padding-left: 3rem !important;
    }

    .ps-xl-6 {
        padding-left: 5rem !important;
    }
}

/* -------- XXL -------- */
@media (min-width: var(--dr-breakpoint-xxl)) {
    .m-xxl-0 {
        margin: 0 !important;
    }

    .m-xxl-1 {
        margin: 0.25rem !important;
    }

    .m-xxl-2 {
        margin: 0.5rem !important;
    }

    .m-xxl-3 {
        margin: 1rem !important;
    }

    .m-xxl-4 {
        margin: 1.5rem !important;
    }

    .m-xxl-5 {
        margin: 3rem !important;
    }

    .m-xxl-6 {
        margin: 5rem !important;
    }

    .m-xxl-auto {
        margin: auto !important;
    }

    .mx-xxl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-xxl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-xxl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-xxl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-xxl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-xxl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }

    .mx-xxl-6 {
        margin-right: 5rem !important;
        margin-left: 5rem !important;
    }

    .mx-xxl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-xxl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-xxl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-xxl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-xxl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-xxl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-xxl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }

    .my-xxl-6 {
        margin-top: 5rem !important;
        margin-bottom: 5rem !important;
    }

    .my-xxl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-xxl-0 {
        margin-top: 0 !important;
    }

    .mt-xxl-1 {
        margin-top: 0.25rem !important;
    }

    .mt-xxl-2 {
        margin-top: 0.5rem !important;
    }

    .mt-xxl-3 {
        margin-top: 1rem !important;
    }

    .mt-xxl-4 {
        margin-top: 1.5rem !important;
    }

    .mt-xxl-5 {
        margin-top: 3rem !important;
    }

    .mt-xxl-6 {
        margin-top: 5rem !important;
    }

    .mt-xxl-auto {
        margin-top: auto !important;
    }

    .me-xxl-0 {
        margin-right: 0 !important;
    }

    .me-xxl-1 {
        margin-right: 0.25rem !important;
    }

    .me-xxl-2 {
        margin-right: 0.5rem !important;
    }

    .me-xxl-3 {
        margin-right: 1rem !important;
    }

    .me-xxl-4 {
        margin-right: 1.5rem !important;
    }

    .me-xxl-5 {
        margin-right: 3rem !important;
    }

    .me-xxl-6 {
        margin-right: 5rem !important;
    }

    .me-xxl-auto {
        margin-right: auto !important;
    }

    .mb-xxl-0 {
        margin-bottom: 0 !important;
    }

    .mb-xxl-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-xxl-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-xxl-3 {
        margin-bottom: 1rem !important;
    }

    .mb-xxl-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-xxl-5 {
        margin-bottom: 3rem !important;
    }

    .mb-xxl-6 {
        margin-bottom: 5rem !important;
    }

    .mb-xxl-auto {
        margin-bottom: auto !important;
    }

    .ms-xxl-0 {
        margin-left: 0 !important;
    }

    .ms-xxl-1 {
        margin-left: 0.25rem !important;
    }

    .ms-xxl-2 {
        margin-left: 0.5rem !important;
    }

    .ms-xxl-3 {
        margin-left: 1rem !important;
    }

    .ms-xxl-4 {
        margin-left: 1.5rem !important;
    }

    .ms-xxl-5 {
        margin-left: 3rem !important;
    }

    .ms-xxl-6 {
        margin-left: 5rem !important;
    }

    .ms-xxl-auto {
        margin-left: auto !important;
    }

    .p-xxl-0 {
        padding: 0 !important;
    }

    .p-xxl-1 {
        padding: 0.25rem !important;
    }

    .p-xxl-2 {
        padding: 0.5rem !important;
    }

    .p-xxl-3 {
        padding: 1rem !important;
    }

    .p-xxl-4 {
        padding: 1.5rem !important;
    }

    .p-xxl-5 {
        padding: 3rem !important;
    }

    .p-xxl-6 {
        padding: 5rem !important;
    }

    .px-xxl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-xxl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-xxl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-xxl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-xxl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-xxl-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .px-xxl-6 {
        padding-right: 5rem !important;
        padding-left: 5rem !important;
    }

    .py-xxl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-xxl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-xxl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-xxl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-xxl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-xxl-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .py-xxl-6 {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important;
    }

    .pt-xxl-0 {
        padding-top: 0 !important;
    }

    .pt-xxl-1 {
        padding-top: 0.25rem !important;
    }

    .pt-xxl-2 {
        padding-top: 0.5rem !important;
    }

    .pt-xxl-3 {
        padding-top: 1rem !important;
    }

    .pt-xxl-4 {
        padding-top: 1.5rem !important;
    }

    .pt-xxl-5 {
        padding-top: 3rem !important;
    }

    .pt-xxl-6 {
        padding-top: 5rem !important;
    }

    .pe-xxl-0 {
        padding-right: 0 !important;
    }

    .pe-xxl-1 {
        padding-right: 0.25rem !important;
    }

    .pe-xxl-2 {
        padding-right: 0.5rem !important;
    }

    .pe-xxl-3 {
        padding-right: 1rem !important;
    }

    .pe-xxl-4 {
        padding-right: 1.5rem !important;
    }

    .pe-xxl-5 {
        padding-right: 3rem !important;
    }

    .pe-xxl-6 {
        padding-right: 5rem !important;
    }

    .pb-xxl-0 {
        padding-bottom: 0 !important;
    }

    .pb-xxl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-xxl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-xxl-3 {
        padding-bottom: 1rem !important;
    }

    .pb-xxl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-xxl-5 {
        padding-bottom: 3rem !important;
    }

    .pb-xxl-6 {
        padding-bottom: 5rem !important;
    }

    .ps-xxl-0 {
        padding-left: 0 !important;
    }

    .ps-xxl-1 {
        padding-left: 0.25rem !important;
    }

    .ps-xxl-2 {
        padding-left: 0.5rem !important;
    }

    .ps-xxl-3 {
        padding-left: 1rem !important;
    }

    .ps-xxl-4 {
        padding-left: 1.5rem !important;
    }

    .ps-xxl-5 {
        padding-left: 3rem !important;
    }

    .ps-xxl-6 {
        padding-left: 5rem !important;
    }
}

/* ----------------------------------------------------------------
  Fixed Position
-----------------------------------------------------------------*/

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
}

.sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
}

.sticky-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
}

@media (min-width: 576px) {
    .sticky-sm-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-sm-bottom {
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 768px) {
    .sticky-md-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-md-bottom {
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 992px) {
    .sticky-lg-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-lg-bottom {
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 1200px) {
    .sticky-xl-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-xl-bottom {
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 1400px) {
    .sticky-xxl-top {
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-xxl-bottom {
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

/* ----------------------------------------------------------------
  Visability
-----------------------------------------------------------------*/

.visible {
    visibility: visible !important;
}

.invisible {
    visibility: hidden !important;
}

.z-n1 {
    z-index: -1 !important;
}

.z-0 {
    z-index: 0 !important;
}

.z-1 {
    z-index: 1 !important;
}

.z-2 {
    z-index: 2 !important;
}

.z-3 {
    z-index: 3 !important;
}

.z-4 {
    z-index: 4 !important;
}

.z-5 {
    z-index: 5 !important;
}

.z-6 {
    z-index: 6 !important;
}

.z-7 {
    z-index: 7 !important;
}

.z-8 {
    z-index: 8 !important;
}

.z-9 {
    z-index: 9 !important;
}

.z-10 {
    z-index: 10 !important;
}

.z-auto {
    z-index: auto !important;
}

/* ----------------------------------------------------------------
  Opacity Helper Classes
-----------------------------------------------------------------*/

.opacity-0 {
    opacity: 0 !important;
}

.opacity-25 {
    opacity: 0.25 !important;
}

.opacity-50 {
    opacity: 0.5 !important;
}

.opacity-75 {
    opacity: 0.75 !important;
}

.opacity-100 {
    opacity: 1 !important;
}

.opacity-100-hover:hover {
    opacity: 1 !important;
}



/* ----------------------------------------------------------------
  translate
-----------------------------------------------------------------*/
.translate-y-sm,
.h-translate-y-sm:hover {
    transform: translateY(-3px) !important;
}

.translate-y,
.h-translate-y:hover {
    transform: translateY(-6px) !important;
}

.translate-y-lg,
.h-translate-y-lg:hover {
    transform: translateY(-10px) !important;
}

.translate-x-sm,
.h-translate-x-sm:hover {
    transform: translateX(-3px) !important;
}

.translate-x,
.h-translate-x:hover {
    transform: translateX(-6px) !important;
}

.translate-x-lg,
.h-translate-x-lg:hover {
    transform: translateX(-10px) !important;
}

.translate-x-n-sm,
.h-translate-x-n-sm:hover {
    transform: translateX(3px) !important;
}

.translate-x-n,
.h-translate-x-n:hover {
    transform: translateX(6px) !important;
}

.translate-x-n-lg,
.h-translate-x-n-lg:hover {
    transform: translateX(10px) !important;
}

.scale-sm,
.h-scale-sm:hover {
    transform: scale(1.025) !important;
}

.scale,
.h-scale:hover {
    transform: scale(1.05) !important;
}

.scale-lg,
.h-scale-lg:hover {
    transform: scale(1.1) !important;
}

.scale-n-sm,
.h-scale-n-sm:hover {
    transform: scale(0.975) !important;
}

.scale-n,
.h-scale-n:hover {
    transform: scale(0.95) !important;
}

.scale-n-lg,
.h-scale-n-lg:hover {
    transform: scale(0.9) !important;
}

.transform-ts {
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media (prefers-reduced-motion: reduce) {
    .transform-ts {
        transition: none;
    }
}

/* ----------------------------------------------------------------
  Rotation Utility Classes
-----------------------------------------------------------------*/
.rotate-0 {
    transform: rotate(0deg) !important;
}

.h-rotate-0:hover {
    transform: rotate(0deg) !important;
}

.rotate-15 {
    transform: rotate(15deg) !important;
}

.h-rotate-15:hover {
    transform: rotate(15deg) !important;
}

.rotate-n15 {
    transform: rotate(-15deg) !important;
}

.h-rotate-n15:hover {
    transform: rotate(-15deg) !important;
}

.rotate-30 {
    transform: rotate(30deg) !important;
}

.h-rotate-30:hover {
    transform: rotate(30deg) !important;
}

.rotate-n30 {
    transform: rotate(-30deg) !important;
}

.h-rotate-n30:hover {
    transform: rotate(-30deg) !important;
}

.rotate-45 {
    transform: rotate(45deg) !important;
}

.h-rotate-45:hover {
    transform: rotate(45deg) !important;
}

.rotate-n45 {
    transform: rotate(-45deg) !important;
}

.h-rotate-n45:hover {
    transform: rotate(-45deg) !important;
}

.rotate-60 {
    transform: rotate(60deg) !important;
}

.h-rotate-60:hover {
    transform: rotate(60deg) !important;
}

.rotate-n60 {
    transform: rotate(-60deg) !important;
}

.h-rotate-n60:hover {
    transform: rotate(-60deg) !important;
}

.rotate-75 {
    transform: rotate(75deg) !important;
}

.h-rotate-75:hover {
    transform: rotate(75deg) !important;
}

.rotate-n75 {
    transform: rotate(-75deg) !important;
}

.h-rotate-n75:hover {
    transform: rotate(-75deg) !important;
}

.rotate-90 {
    transform: rotate(90deg) !important;
}

.h-rotate-90:hover {
    transform: rotate(90deg) !important;
}

.rotate-n90 {
    transform: rotate(-90deg) !important;
}

.h-rotate-n90:hover {
    transform: rotate(-90deg) !important;
}

.rotate-105 {
    transform: rotate(105deg) !important;
}

.h-rotate-105:hover {
    transform: rotate(105deg) !important;
}

.rotate-n105 {
    transform: rotate(-105deg) !important;
}

.h-rotate-n105:hover {
    transform: rotate(-105deg) !important;
}

.rotate-120 {
    transform: rotate(120deg) !important;
}

.h-rotate-120:hover {
    transform: rotate(120deg) !important;
}

.rotate-n120 {
    transform: rotate(-120deg) !important;
}

.h-rotate-n120:hover {
    transform: rotate(-120deg) !important;
}

.rotate-135 {
    transform: rotate(135deg) !important;
}

.h-rotate-135:hover {
    transform: rotate(135deg) !important;
}

.rotate-n135 {
    transform: rotate(-135deg) !important;
}

.h-rotate-n135:hover {
    transform: rotate(-135deg) !important;
}

.rotate-150 {
    transform: rotate(150deg) !important;
}

.h-rotate-150:hover {
    transform: rotate(150deg) !important;
}

.rotate-n150 {
    transform: rotate(-150deg) !important;
}

.h-rotate-n150:hover {
    transform: rotate(-150deg) !important;
}

.rotate-165 {
    transform: rotate(165deg) !important;
}

.h-rotate-165:hover {
    transform: rotate(165deg) !important;
}

.rotate-n165 {
    transform: rotate(-165deg) !important;
}

.h-rotate-n165:hover {
    transform: rotate(-165deg) !important;
}

.rotate-180 {
    transform: rotate(180deg) !important;
}

.h-rotate-180:hover {
    transform: rotate(180deg) !important;
}

.rotate-n180 {
    transform: rotate(-180deg) !important;
}

.h-rotate-n180:hover {
    transform: rotate(-180deg) !important;
}

.rotate-195 {
    transform: rotate(195deg) !important;
}

.h-rotate-195:hover {
    transform: rotate(195deg) !important;
}

.rotate-n195 {
    transform: rotate(-195deg) !important;
}

.h-rotate-n195:hover {
    transform: rotate(-195deg) !important;
}

.rotate-210 {
    transform: rotate(210deg) !important;
}

.h-rotate-210:hover {
    transform: rotate(210deg) !important;
}

.rotate-n210 {
    transform: rotate(-210deg) !important;
}

.h-rotate-n210:hover {
    transform: rotate(-210deg) !important;
}

.rotate-225 {
    transform: rotate(225deg) !important;
}

.h-rotate-225:hover {
    transform: rotate(225deg) !important;
}

.rotate-n225 {
    transform: rotate(-225deg) !important;
}

.h-rotate-n225:hover {
    transform: rotate(-225deg) !important;
}

.rotate-240 {
    transform: rotate(240deg) !important;
}

.h-rotate-240:hover {
    transform: rotate(240deg) !important;
}

.rotate-n240 {
    transform: rotate(-240deg) !important;
}

.h-rotate-n240:hover {
    transform: rotate(-240deg) !important;
}

.rotate-255 {
    transform: rotate(255deg) !important;
}

.h-rotate-255:hover {
    transform: rotate(255deg) !important;
}

.rotate-n255 {
    transform: rotate(-255deg) !important;
}

.h-rotate-n255:hover {
    transform: rotate(-255deg) !important;
}

.rotate-270 {
    transform: rotate(270deg) !important;
}

.h-rotate-270:hover {
    transform: rotate(270deg) !important;
}

.rotate-n270 {
    transform: rotate(-270deg) !important;
}

.h-rotate-n270:hover {
    transform: rotate(-270deg) !important;
}

.rotate-285 {
    transform: rotate(285deg) !important;
}

.h-rotate-285:hover {
    transform: rotate(285deg) !important;
}

.rotate-n285 {
    transform: rotate(-285deg) !important;
}

.h-rotate-n285:hover {
    transform: rotate(-285deg) !important;
}

.rotate-300 {
    transform: rotate(300deg) !important;
}

.h-rotate-300:hover {
    transform: rotate(300deg) !important;
}

.rotate-n300 {
    transform: rotate(-300deg) !important;
}

.h-rotate-n300:hover {
    transform: rotate(-300deg) !important;
}

.rotate-315 {
    transform: rotate(315deg) !important;
}

.h-rotate-315:hover {
    transform: rotate(315deg) !important;
}

.rotate-n315 {
    transform: rotate(-315deg) !important;
}

.h-rotate-n315:hover {
    transform: rotate(-315deg) !important;
}

.rotate-330 {
    transform: rotate(330deg) !important;
}

.h-rotate-330:hover {
    transform: rotate(330deg) !important;
}

.rotate-n330 {
    transform: rotate(-330deg) !important;
}

.h-rotate-n330:hover {
    transform: rotate(-330deg) !important;
}

.rotate-345 {
    transform: rotate(345deg) !important;
}

.h-rotate-345:hover {
    transform: rotate(345deg) !important;
}

.rotate-n345 {
    transform: rotate(-345deg) !important;
}

.h-rotate-n345:hover {
    transform: rotate(-345deg) !important;
}

.rotate-360 {
    transform: rotate(360deg) !important;
}

.h-rotate-360:hover {
    transform: rotate(360deg) !important;
}

.rotate-n360 {
    transform: rotate(-360deg) !important;
}

.h-rotate-n360:hover {
    transform: rotate(-360deg) !important;
}

/* ----------------------------------------------------------------
  Misc Utility Helpers
-----------------------------------------------------------------*/

.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;
    }
}

.collapsing.collapse-horizontal {
    width: 0;
    height: auto;
    transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing.collapse-horizontal {
        transition: none;
    }
}

.transition-all {
    transition: all var(--dr-transitions);
}

.overflow-visible {
    overflow: visible !important;
}

.clear {
    clear: both;
    display: block;
    font-size: 0px;
    height: 0px;
    line-height: 0;
    width: 100%;
    overflow: hidden;
}

.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

.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;
}

.vr {
    display: inline-block;
    align-self: stretch;
    width: var(--dr-border-width);
    min-height: 1em;
    background-color: currentcolor;
    opacity: 0.25;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

  					**** Typography ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Font Families
-----------------------------------------------------------------*/
.font-body {
    font-family: var(--dr-body-font);
}

.font-primary {
    font-family: var(--dr-primary-font);
}

.font-heading {
    font-family: var(--dr-heading-font);
}

.font-secondary {
    font-family: var(--dr-secondary-font);
}

.font-monospace {
    font-family: var(--dr-monospace-font) !important;
}

/* ----------------------------------------------------------------
  Headings
-----------------------------------------------------------------*/

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    color: var(--dr-heading-color);
    font-weight: var(--dr-headings-font-weight);
    line-height: var(--dr-line-height-base);
    margin: 0 0 30px 0;
    font-family: var(--dr-heading-font);
}

h5,
.h5,
h6,
.h6 {
    font-weight: bold;
    margin-bottom: 20px;
}

h1,
.h1 {
    font-size: var(--dr-font-size-h1);
}

h2,
.h2 {
    font-size: var(--dr-font-size-h2);
}

h3,
.h3 {
    font-size: var(--dr-font-size-h3);
}

h4,
.h4 {
    font-size: var(--dr-font-size-h4);
}

h5,
.h5 {
    font-size: var(--dr-font-size-h5);
}

h6,
.h6 {
    font-size: var(--dr-font-size-h6);
}

@media (max-width: 767.98px) {

    h1,
    .h1 {
        font-size: 1.75rem;
    }

    h2,
    .h2 {
        font-size: 1.5rem;
    }

    h3,
    .h3 {
        font-size: 1.25rem;
    }

    h4,
    .h4 {
        font-size: 1rem;
    }
}

h1>span:not(.nocolor):not(.badge),
.h1>span:not(.nocolor):not(.badge),
h2>span:not(.nocolor):not(.badge),
.h2>span:not(.nocolor):not(.badge),
h3>span:not(.nocolor):not(.badge),
.h3>span:not(.nocolor):not(.badge),
h4>span:not(.nocolor):not(.badge),
.h4>span:not(.nocolor):not(.badge),
h5>span:not(.nocolor):not(.badge),
.h5>span:not(.nocolor):not(.badge),
h6>span:not(.nocolor):not(.badge),
.h6>span:not(.nocolor):not(.badge) {
    color: var(--dr-themecolor);
}



/* ----------------------------------------------------------------
  Text Display
-----------------------------------------------------------------*/

.lead {
    font-size: 1.25rem;
    font-weight: 300;
}

.display-1 {
    font-size: calc(1.625rem + 4.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-1 {
        font-size: 5rem;
    }
}

.display-2 {
    font-size: calc(1.575rem + 3.9vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-2 {
        font-size: 4.5rem;
    }
}

.display-3 {
    font-size: calc(1.525rem + 3.3vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-3 {
        font-size: 4rem;
    }
}

.display-4 {
    font-size: calc(1.475rem + 2.7vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-4 {
        font-size: 3.5rem;
    }
}

.display-5 {
    font-size: calc(1.425rem + 2.1vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-5 {
        font-size: 3rem;
    }
}

.display-6 {
    font-size: calc(1.375rem + 1.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-6 {
        font-size: 2.5rem;
    }
}

/* ----------------------------------------------------------------
  Font Size
-----------------------------------------------------------------*/

.fs-1 {
    font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
    font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
    font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
    font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
    font-size: 1.25rem !important;
}

.fs-6 {
    font-size: 1rem !important;
}

@media (min-width: 1200px) {
    .fs-1 {
        font-size: 2.5rem !important;
    }

    .fs-2 {
        font-size: 2rem !important;
    }

    .fs-3 {
        font-size: 1.75rem !important;
    }

    .fs-4 {
        font-size: 1.5rem !important;
    }
}

/* ----------------------------------------------------------------
  Text Sizing Utility
-----------------------------------------------------------------*/
.text-smaller {
    font-size: 80% !important;
}

.text-small,
.small,
.text-small small {
    font-size: 90% !important;
}

.text-medium {
    font-size: 112.5% !important;
}

.text-larger {
    font-size: 120% !important;
}

/* ----------------------------------------------------------------
  Text Sizes Utility Classes
-----------------------------------------------------------------*/
.text-size-xs {
    font-size: 0.875rem !important;
}

.text-size-sm {
    font-size: 1rem !important;
}

.text-size-md {
    font-size: 1.5rem !important;
}

.text-size-lg {
    font-size: 2rem !important;
}

.text-size-xl {
    font-size: calc(1rem + 2.25vw) !important;
}

.text-size-xxl {
    font-size: calc(1rem + 3.5vw) !important;
}

/* ----------------------------------------------------------------
  Font Styles
-----------------------------------------------------------------*/

.fst-italic {
    font-style: italic !important;
}

.fst-normal {
    font-style: normal !important;
}

.fw-lighter {
    font-weight: lighter !important;
}

.fw-extralight {
    font-weight: 100 !important;
}

.fw-light {
    font-weight: 300 !important;
}

.fw-normal {
    font-weight: 400 !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-semibold {
    font-weight: 600 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-bolder {
    font-weight: bolder !important;
}

.lh-1 {
    line-height: 1 !important;
}

.lh-sm {
    line-height: 1.25 !important;
}

.lh-base {
    line-height: 1.5 !important;
}

.lh-lg {
    line-height: 2 !important;
}

.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;
}

@media (min-width: 576px) {
    .text-sm-start {
        text-align: left !important;
    }

    .text-sm-end {
        text-align: right !important;
    }

    .text-sm-center {
        text-align: center !important;
    }
}

@media (min-width: 768px) {
    .text-md-start {
        text-align: left !important;
    }

    .text-md-end {
        text-align: right !important;
    }

    .text-md-center {
        text-align: center !important;
    }
}

@media (min-width: 992px) {
    .text-lg-start {
        text-align: left !important;
    }

    .text-lg-end {
        text-align: right !important;
    }

    .text-lg-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .text-xl-start {
        text-align: left !important;
    }

    .text-xl-end {
        text-align: right !important;
    }

    .text-xl-center {
        text-align: center !important;
    }
}

@media (min-width: 1400px) {
    .text-xxl-start {
        text-align: left !important;
    }

    .text-xxl-end {
        text-align: right !important;
    }

    .text-xxl-center {
        text-align: center !important;
    }
}

/* ----------------------------------------------------------------
  Letter Spacing
-----------------------------------------------------------------*/
.ls-0 {
    letter-spacing: 0px !important;
}

.ls-n-0 {
    letter-spacing: 0px !important;
}

.ls-1 {
    letter-spacing: 1px !important;
}

.ls-n-1 {
    letter-spacing: -1px !important;
}

.ls-2 {
    letter-spacing: 2px !important;
}

.ls-n-2 {
    letter-spacing: -2px !important;
}

.ls-3 {
    letter-spacing: 3px !important;
}

.ls-n-3 {
    letter-spacing: -3px !important;
}

.ls-4 {
    letter-spacing: 4px !important;
}

.ls-n-4 {
    letter-spacing: -4px !important;
}

.ls-5 {
    letter-spacing: 5px !important;
}

.ls-n-5 {
    letter-spacing: -5px !important;
}

/* ----------------------------------------------------------------
      Text Utility Classes
-----------------------------------------------------------------*/

.text-transform-none {
    text-transform: none !important;
}

.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* ----------------------------------------------------------------
  User Interaction
-----------------------------------------------------------------*/
/* used to automatically select all the text in an element when a user clicks on it */

.user-select-all {
    user-select: all !important;
}

.user-select-auto {
    user-select: auto !important;
}

.user-select-none {
    user-select: none !important;
}

.pe-none {
    pointer-events: none !important;
}

.pe-auto {
    pointer-events: auto !important;
}

/* ----------------------------------------------------------------
  Text Underline Offset
-----------------------------------------------------------------*/
.text-underline-offset-0 {
    text-underline-offset: 0px !important;
}

.text-underline-offset-1 {
    text-underline-offset: 1px !important;
}

.text-underline-offset-2 {
    text-underline-offset: 2px !important;
}

.text-underline-offset-3 {
    text-underline-offset: 3px !important;
}

.text-underline-offset-4 {
    text-underline-offset: 4px !important;
}

.text-underline-offset-5 {
    text-underline-offset: 5px !important;
}

.text-underline-offset-6 {
    text-underline-offset: 6px !important;
}

.text-underline-offset-7 {
    text-underline-offset: 7px !important;
}

.text-underline-offset-8 {
    text-underline-offset: 8px !important;
}

.text-underline-offset-auto {
    text-underline-offset: auto !important;
}

/* ----------------------------------------------------------------
  Text Colors
-----------------------------------------------------------------*/

/* Light */
.text-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-light-rgb), var(--dr-text-opacity)) !important;
}

.text-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Dark */
.text-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Mid Dark */
.text-mid-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-mid-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Mid Light Dark */
.text-mid-light-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-light-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-mid-light-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-light-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Light Dark */
.text-light-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-light-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-light-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-light-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Mid Dark Light */
.text-mid-dark-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-dark-light-rgb), var(--dr-text-opacity)) !important;
}

.text-mid-dark-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-dark-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Mid Light Dark Light */
.text-mid-light-dark-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-light-dark-light-rgb), var(--dr-text-opacity)) !important;
}

.text-mid-light-dark-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-mid-light-dark-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Light Dark Light */
.text-light-dark-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-light-dark-light-rgb), var(--dr-text-opacity)) !important;
}

.text-light-dark-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-light-dark-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Primary Dark */
.text-primary-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-primary-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Primary */
.text-primary {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-rgb), var(--dr-text-opacity)) !important;
}

.text-primary-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Primary Mid Light */
.text-primary-mid-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-mid-light-rgb), var(--dr-text-opacity)) !important;
}

.text-primary-mid-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-mid-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Primary Light */
.text-primary-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-light-rgb), var(--dr-text-opacity)) !important;
}

.text-primary-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Secomdary Dark */
.text-secondary-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-secondary-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Secomdary */
.text-secondary {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-rgb), var(--dr-text-opacity)) !important;
}

.text-secondary-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Secomdary Mid Light */
.text-secondary-mid-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-mid-light-rgb), var(--dr-text-opacity)) !important;
}

.text-secondary-mid-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-mid-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Secomdary Light */
.text-secondary-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-light-rgb), var(--dr-text-opacity)) !important;
}

.text-secondary-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-secondary-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Tertiary Dark */
.text-tertiary-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-tertiary-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Tertiary */
.text-tertiary {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-rgb), var(--dr-text-opacity)) !important;
}

.text-tertiary-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Tertiary Mid Light */
.text-tertiary-mid-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-mid-light-rgb), var(--dr-text-opacity)) !important;
}

.text-tertiary-mid-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-mid-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Tertiary Light */
.text-tertiary-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-light-rgb), var(--dr-text-opacity)) !important;
}

.text-tertiary-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-tertiary-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Success Dark */
.text-success-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-success-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Success */
.text-success {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-rgb), var(--dr-text-opacity)) !important;
}

.text-success-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Success Mid Light */
.text-success-mid-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-mid-light-rgb), var(--dr-text-opacity)) !important;
}

.text-success-mid-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-mid-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Success Light */
.text-success-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-light-rgb), var(--dr-text-opacity)) !important;
}

.text-success-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-success-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Info Dark */
.text-info-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-info-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Info */
.text-info {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-rgb), var(--dr-text-opacity)) !important;
}

.text-info-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Info Mid Light */
.text-info-mid-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-mid-light-rgb), var(--dr-text-opacity)) !important;
}

.text-info-mid-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-mid-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* info Light */
.text-info-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-light-rgb), var(--dr-text-opacity)) !important;
}

.text-info-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-info-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Warning Dark */
.text-warning-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-warning-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Warning */
.text-warning {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-rgb), var(--dr-text-opacity)) !important;
}

.text-warning-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Warning Mid Light */
.text-warning-mid-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-mid-light-rgb), var(--dr-text-opacity)) !important;
}

.text-warning-mid-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-mid-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Warning Light */
.text-warning-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-light-rgb), var(--dr-text-opacity)) !important;
}

.text-warning-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-warning-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Danger Dark */
.text-danger-dark {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-danger-dark-rgb), var(--dr-text-opacity)) !important;
}

.text-danger-dark-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-danger-dark-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Danger */
.text-danger {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-danger-rgb), var(--dr-text-opacity)) !important;
}

.text-danger-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-danger-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Danger Mid Light */
.text-danger-mid-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-danger-mid-light-rgb), var(--dr-text-opacity)) !important;
}

.text-danger-mid-light-grey,
{
--dr-text-opacity: 1;
color: rgba(var(--dr-danger-mid-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* Danger Light */
.text-danger-light {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-danger-light-rgb), var(--dr-text-opacity)) !important;
}

.text-danger-light-grey {
    --dr-text-opacity: 1;
    color: rgba(var(--dr-danger-light-grey-rgb), var(--dr-text-opacity)) !important;
}

/* ----------------------------------------------------------------
  Text Color Utility Classes
-----------------------------------------------------------------*/
.text-ts {
    transition: color var(--dr-transitions);
}

@media (prefers-reduced-motion: reduce) {
    .text-ts {
        transition: none;
    }
}

/* ----------------------------------------------------------------
  Text Shadow
-----------------------------------------------------------------*/

/* Need to add text shadow helpers / variables */

.text-shadow-none {
    text-shadow: none !important;
}

/* ----------------------------------------------------------------
  Text Background
-----------------------------------------------------------------*/

/* ----- Text Background Padding? ----- */

/* Light */
.text-bg-light {
    background-color: RGBA(var(--dr-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Dark */
.text-bg-dark {
    background-color: RGBA(var(--dr-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Mid Dark */
.text-bg-mid-dark {
    background-color: RGBA(var(--dr-mid-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Mid Light Dark */
.text-bg-mid-light-dark {
    background-color: RGBA(var(--dr-mid-light-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Light Dark */
.text-bg-light-dark {
    background-color: RGBA(var(--dr-dark-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Mid Dark Light */
.text-bg-mid-dark-light {
    background-color: RGBA(var(--dr-mid-dark-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Mid Light Dark Light */
.text-bg-mid-light-dark-light {
    background-color: RGBA(var(--dr-mid-light-dark-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Light Dark Light */
.text-bg-dark-light {
    background-color: RGBA(var(--dr-dark-lightrgb), var(--bs-bg-opacity, 1)) !important;
}

/* Primary Dark */
.text-bg-primary-dark {
    background-color: RGBA(var(--dr-primary-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Primary */
.text-bg-primary {
    background-color: RGBA(var(--dr-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Primary Mid Light */
.text-bg-primary-mid-light {
    background-color: RGBA(var(--dr-primary-mid-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Primary Light */
.text-bg-primary-light {
    background-color: RGBA(var(--dr-primary-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Secomdary Dark */
.text-bg-secondary-dark {
    background-color: RGBA(var(--dr-secondary-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Secomdary */
.text-bg-secondary {
    background-color: RGBA(var(--dr-secondary-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Secomdary Mid Light */
.text-bg-secondary-mid-light {
    background-color: RGBA(var(--dr-secondary-mid-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Secomdary Light */
.text-bg-secondary-light {
    background-color: RGBA(var(--dr-secondary-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Tertiary Dark */
.text-bg-tertiary-dark {
    background-color: RGBA(var(--dr-tertiary-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Tertiary */
.text-bg-tertiary {
    background-color: RGBA(var(--dr-tertiary-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Tertiary Mid Light */
.text-bg-tertiary-mid-light {
    background-color: RGBA(var(--dr-tertiary-mid-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Tertiary Light */
.text-bg-tertiary-light {
    background-color: RGBA(var(--dr-tertiary-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Success Dark */
.text-bg-success-dark {
    background-color: RGBA(var(--dr-success-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Success */
.text-bg-success {
    background-color: RGBA(var(--dr-success-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Success Mid Light */
.text-bg-success-mid-light {
    background-color: RGBA(var(--dr-success-mid-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Success Light */
.text-bg-success-light {
    background-color: RGBA(var(--dr-success-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Info Dark */
.text-bg-info-dark {
    background-color: RGBA(var(--dr-info-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Info */
.text-bg-info {
    background-color: RGBA(var(--dr-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Info Mid Light */
.text-bg-info-mid-light {
    background-color: RGBA(var(--dr-info-mid-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* info Light */
.text-bg-info-light {
    background-color: RGBA(var(--dr-info-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Warning Dark */
.text-bg-warning-dark {
    background-color: RGBA(var(--dr-warning-darkrgb), var(--bs-bg-opacity, 1)) !important;
}

/* Warning */
.text-bg-warning {
    background-color: RGBA(var(--dr-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Warning Mid Light */
.text-bg-warning-mid-light {
    background-color: RGBA(var(--dr-warning-mid-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Warning Light */
.text-bg-warning-light {
    background-color: RGBA(var(--dr-warning-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Danger Dark */
.text-bg-danger-dark {
    background-color: RGBA(var(--dr-danger-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Danger */
.text-bg-danger {
    background-color: RGBA(var(--dr-danger-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* Danger Mid Light */
.text-bg-danger-mid-light {
    background-color: RGBA(var(--dr-danger-mid-lightrgb), var(--bs-bg-opacity, 1)) !important;
}

/* Danger Light */
.text-bg-danger-light {
    background-color: RGBA(var(--dr-danger-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* ----------------------------------------------------------------
 			Text Opacity
-----------------------------------------------------------------*/

.text-opacity-25 {
    --dr-text-opacity: 0.25;
}

.text-opacity-50 {
    --dr-text-opacity: 0.5;
}

.text-opacity-75 {
    --dr-text-opacity: 0.75;
}

.text-opacity-100 {
    --dr-text-opacity: 1;
}

.text-opacity-50 {
    --dr-text-opacity:
}

/* Colour / Opacity Reset */
.text-reset {
    --dr-text-opacity: 1;
    color: inherit !important;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                        **** Lists ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Lists Basic Styles
-----------------------------------------------------------------*/

.list-unstyled {
    padding-left: 0;
    list-style: none;
}

.list-inline {
    padding-left: 0;
    list-style: none;
}

.list-inline-item {
    display: inline-block;
}

.list-inline-item:not(:last-child) {
    margin-right: 0.5rem;
}

.initialism {
    font-size: 0.875em;
    text-transform: uppercase;
}

/* ----------------------------------------------------------------
  List Styling
-----------------------------------------------------------------*/
/* FAQ List */
.faqlist li {
    margin-bottom: 5px;
    font-size: 1rem;
}

.faqlist li a {
    color: var(--dr-link-color);
}

.faqlist li a:hover {
    color: var(--dr-link-hover-color) !important;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                        **** LINKS ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Links Basic Styles
-----------------------------------------------------------------*/

a {
    color: var(--dr-link-color);
}

a:not(.btn-link):not(.text-decoration-underline):not(.more-link) {
    text-decoration: none !important;
}

a:hover {
    color: var(--dr-link-hover-color);
}

a img {
    border: none;
}

.link {
    position: relative;
    cursor: pointer;
    white-space: nowrap;
}

.link::before,
.link::after {
    position: absolute;
    width: 100%;
    height: 1px;
    background: currentColor;
    top: 100%;
    left: 0;
    pointer-events: none;
}

.link::before {
    content: '';
    /* show by default */
}

.stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
}

/* ----------------------------------------------------------------
  Link colors
-----------------------------------------------------------------*/
/* Do I need grey? /*
/* Light */
.link-light {
    color: RGBA(var(--dr-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-light:hover,
.link-light:focus {
    color: RGBA(var(--dr-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Dark */
.link-dark {
    color: RGBA(var(--dr-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-dark:hover,
.link-dark:focus {
    color: RGBA(var(--dr-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Mid Dark */
.link-mid-dark {
    color: RGBA(var(--dr-mid-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-mid-dark:hover,
.link-mid-dark:focus {
    color: RGBA(var(--dr-mid-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Mid Light Dark */
.link-mid-light-dark {
    color: RGBA(var(--dr-mid-light-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-light-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-mid-light-dark:hover,
.link-mid-light-dark:focus {
    color: RGBA(var(--dr-mid-light-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-light-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Light Dark */
.link-light-dark {
    color: RGBA(var(--dr-light-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-light-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-light-dark:hover,
.link-light-dark:focus {
    color: RGBA(var(--dr-light-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-light-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Mid Dark Light */
.link-mid-dark-light {
    color: RGBA(var(--dr-mid-dark-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-dark-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-mid-dark-light:hover,
.link-mid-dark-light:focus {
    color: RGBA(var(--dr-mid-dark-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-dark-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Mid Light Dark Light */
.link-mid-light-dark-light {
    color: RGBA(var(--dr-mid-light-dark-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-light-dark-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-mid-light-dark-light:hover,
.link-mid-light-dark-light:focus {
    color: RGBA(var(--dr-mid-light-dark-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-mid-light-dark-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Light Dark Light */
.link-light-dark-light {
    color: RGBA(var(--dr-light-dark-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-light-dark-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-light-dark-light:hover,
.link-light-dark-light:focus {
    color: RGBA(var(--dr-light-dark-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-light-dark-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Primary Dark */
.link-primary-dark {
    color: RGBA(var(--dr-primary-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-primary-dark:hover,
.link-primary-dark:focus {
    color: RGBA(var(--dr-primary-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Primary */
.link-primary {
    color: RGBA(var(--dr-primary-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-primary:hover,
.link-primary:focus {
    color: RGBA(var(--dr-primary-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Primary Mid Light */
.link-primary-mid-light {
    color: RGBA(var(--dr-primary-mid-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-mid-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-primary-mid-light:hover,
.link-primary-mid-light:focus {
    color: RGBA(var(--dr-primary-mid-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-mid-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Primary Light */
.link-primary-light {
    color: RGBA(var(--dr-primary-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-primary-light:hover,
.link-primary-light:focus {
    color: RGBA(var(--dr-primary-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-primary-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Secomdary Dark */
.link-secondary-dark {
    color: RGBA(var(--dr-secondary-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-secondary-dark:hover,
.link-secondary-dark:focus {
    color: RGBA(var(--dr-secondary-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Secomdary */
.link-secondary {
    color: RGBA(var(--dr-secondary-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-secondary:hover,
.link-secondary:focus {
    color: RGBA(var(--dr-secondary-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Secomdary Mid Light */
.link-secondary-mid-light {
    color: RGBA(var(--dr-secondary-mid-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-mid-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-secondary-mid-light:hover,
.link-secondary-mid-light:focus {
    color: RGBA(var(--dr-secondary-mid-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-mid-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Secomdary Light */
.link-secondary-light {
    color: RGBA(var(--dr-secondary-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-secondary-light:hover,
.link-secondary-light:focus {
    color: RGBA(var(--dr-secondary-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-secondary-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Tertiary Dark */
.link-tertiary-dark {
    color: RGBA(var(--dr-tertiary-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-tertiary-dark:hover,
.link-tertiary-dark:focus {
    color: RGBA(var(--dr-tertiary-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Tertiary */
.link-tertiary {
    color: RGBA(var(--dr-tertiary-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-tertiary:hover,
.link-tertiary:focus {
    color: RGBA(var(--dr-tertiary-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Tertiary Mid Light */
.link-tertiary-mid-light {
    color: RGBA(var(--dr-tertiary-mid-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-mid-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-tertiary-mid-light:hover,
.link-tertiary-mid-light:focus {
    color: RGBA(var(--dr-tertiary-mid-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-mid-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Tertiary Light */
.link-tertiary-light {
    color: RGBA(var(--dr-tertiary-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-tertiary-light:hover,
.link-tertiary-light:focus {
    color: RGBA(var(--dr-tertiary-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-tertiary-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Success Dark */
.link-success-dark {
    color: RGBA(var(--dr-success-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-success-dark:hover,
.link-success-dark:focus {
    color: RGBA(var(--dr-success-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Success */
.link-success {
    color: RGBA(var(--dr-success-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-success:hover,
.link-success:focus {
    color: RGBA(var(--dr-success-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Success Mid Light */
.link-success-mid-light {
    color: RGBA(var(--dr-success-mid-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-mid-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-success-mid-light:hover,
.link-success-mid-light:focus {
    color: RGBA(var(--dr-success-mid-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-mid-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Success Light */
.link-success-light {
    color: RGBA(var(--dr-success-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-success-light:hover,
.link-success-light:focus {
    color: RGBA(var(--dr-success-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-success-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Info Dark */
.link-info-dark {
    color: RGBA(var(--dr-info-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-info-dark:hover,
.link-info-dark:focus {
    color: RGBA(var(--dr-info-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Info */
.link-info {
    color: RGBA(var(--dr-info-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-info:hover,
.link-info:focus {
    color: RGBA(var(--dr-info-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Info Mid Light */
.link-info-mid-light {
    color: RGBA(var(--dr-info-mid-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-mid-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-info-mid-light:hover,
.link-info-mid-light:focus {
    color: RGBA(var(--dr-info-mid-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-mid-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* info Light */
.link-info-light {
    color: RGBA(var(--dr-info-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-info-light:hover,
.link-info-light:focus {
    color: RGBA(var(--dr-info-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-info-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Warning Dark */
.link-warning-dark {
    color: RGBA(var(--dr-warning-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-warning-dark:hover,
.link-warning-dark:focus {
    color: RGBA(var(--dr-warning-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Warning */
.link-warning {
    color: RGBA(var(--dr-warning-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-warning:hover,
.link-warning:focus {
    color: RGBA(var(--dr-warning-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Warning Mid Light */
.link-warning-mid-light {
    color: RGBA(var(--dr-warning-mid-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-mid-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-warning-mid-light:hover,
.link-warning-mid-light:focus {
    color: RGBA(var(--dr-warning-mid-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-mid-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Warning Light */
.link-warning-light {
    color: RGBA(var(--dr-warning-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-warning-light:hover,
.link-warning-light:focus {
    color: RGBA(var(--dr-warning-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-warning-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Danger Dark */
.link-danger-dark {
    color: RGBA(var(--dr-danger-dark-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-dark-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-danger-dark:hover. .link-danger-dark:focus {
    color: RGBA(var(--dr-danger-dark-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-dark-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Danger */
.link-danger {
    color: RGBA(var(--dr-danger-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-danger:hover,
.link-danger:focus {
    color: RGBA(var(--dr-danger-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Danger Mid Light */
.link-danger-mid-light {
    color: RGBA(var(--dr-danger-mid-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-mid-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-danger-mid-light:hover,
.link-danger-mid-light:focus {
    color: RGBA(var(--dr-danger-mid-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-mid-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* Danger Light */
.link-danger-light {
    color: RGBA(var(--dr-danger-light-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-light-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

.link-danger-light:hover,
.link-danger-light:focus {
    color: RGBA(var(--dr-danger-light-h-rgb), var(--dr-link-opacity, 1)) !important;
    text-decoration-color: RGBA(var(--dr-danger-light-h-rgb), var(--dr-link-underline-opacity, 1)) !important;
}

/* ----------------------------------------------------------------
  Link Underline Offset
-----------------------------------------------------------------*/

.link-offset-1 {
    text-underline-offset: 0.125em !important;
}

.link-offset-1-hover:hover {
    text-underline-offset: 0.125em !important;
}

.link-offset-2 {
    text-underline-offset: 0.25em !important;
}

.link-offset-2-hover:hover {
    text-underline-offset: 0.25em !important;
}

.link-offset-3 {
    text-underline-offset: 0.375em !important;
}

.link-offset-3-hover:hover {
    text-underline-offset: 0.375em !important;
}

/* ----------------------------------------------------------------
  Link Underline Color
-----------------------------------------------------------------*/

/* Do I need to add grey and hover? /*

/* Light */
.link-underline-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Dark */
.link-underline-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Mid Dark */
.link-underline-mid-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-mid-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Mid Light Dark */
.link-underline-mid-light-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-mid-light-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Light Dark */
.link-underline-light-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-light-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Mid Dark Light */
.link-underline-mid-dark-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-mid-dark-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Mid Light Dark Light */
.link-underline-mid-light-dark-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-mid-light-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Light Dark Light */
.link-underline-light-dark-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-light-dark-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Primary Dark */
.link-underline-primary-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-primary-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Primary */
.link-underline-primary {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-primary-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Primary Mid Light */
.link-underline-primary-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-primary-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Primary Light */
.link-underline-primary-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-primary-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Secomdary Dark */
.link-underline-secondary-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-secondary-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Secomdary */
.link-underline-secondary {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-econdary-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Secomdary Mid Light */
.link-underline-secondary-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-secondary-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Secomdary Light */
.link-underline-secondary-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-secondary-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Tertiary Dark */
.link-underline-tertiary-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-tertiary-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Tertiary */
.link-underline-tertiary {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-tertiary-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Tertiary Mid Light */
.link-underline-tertiary-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-tertiary-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Tertiary Light */
.link-underline-tertiary-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-tertiary-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Success Dark */
.link-underline-success-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-success-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Success */
.link-underline-success {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-success-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Success Mid Light */
.link-underline-success-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-success-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Success Light */
.link-underline-success-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-success-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Info Dark */
.link-underline-info-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-info-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Info */
.link-underline-info {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-info-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Info Mid Light */
.link-underline-info-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-info-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* info Light */
.link-underline-info-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-info-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Warning Dark */
.link-underline-warning-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-warning-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Warning */
.link-underline-warning {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-warning-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Warning Mid Light */
.link-underline-warning-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-warning-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Warning Light */
.link-underline-warning-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-warning-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Danger Dark */
.link-underline-danger-dark {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-danger-dark-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Danger */
.link-underline-danger {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-danger-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Danger Mid Light */
.link-underline-danger-mid-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-danger-mid-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* Danger Light */
.link-underline-danger-light {
    --dr-link-underline-opacity: 1;
    text-decoration-color: rgba(var(--dr-danger-light-rgb), var(--dr-link-underline-opacity)) !important;
}

/* ----------------------------------------------------------------
  Link Opacity
-----------------------------------------------------------------*/

.link-opacity-10 {
    --dr-link-opacity: 0.1;
}

.link-opacity-10-hover:hover {
    --dr-link-opacity: 0.1;
}

.link-opacity-25 {
    --dr-link-opacity: 0.25;
}

.link-opacity-25-hover:hover {
    --dr-link-opacity: 0.25;
}

.link-opacity-50 {
    --dr-link-opacity: 0.5;
}

.link-opacity-50-hover:hover {
    --dr-link-opacity: 0.5;
}

.link-opacity-75 {
    --dr-link-opacity: 0.75;
}

.link-opacity-75-hover:hover {
    --dr-link-opacity: 0.75;
}

.link-opacity-100 {
    --dr-link-opacity: 1;
}

/* Link Underline Opacity */

.link-opacity-100-hover:hover {
    --dr-link-opacity: 1;
}


.link-underline-opacity-0 {
    --dr-link-underline-opacity: 0;
}

.link-underline-opacity-0-hover:hover {
    --dr-link-underline-opacity: 0;
}

.link-underline-opacity-10 {
    --dr-link-underline-opacity: 0.1;
}

.link-underline-opacity-10-hover:hover {
    --dr-link-underline-opacity: 0.1;
}

.link-underline-opacity-25 {
    --dr-link-underline-opacity: 0.25;
}

.link-underline-opacity-25-hover:hover {
    --dr-link-underline-opacity: 0.25;
}

.link-underline-opacity-50 {
    --dr-link-underline-opacity: 0.5;
}

.link-underline-opacity-50-hover:hover {
    --dr-link-underline-opacity: 0.5;
}

.link-underline-opacity-75 {
    --dr-link-underline-opacity: 0.75;
}

.link-underline-opacity-75-hover:hover {
    --dr-link-underline-opacity: 0.75;
}

.link-underline-opacity-100 {
    --dr-link-underline-opacity: 1;
}

.link-underline-opacity-100-hover:hover {
    --dr-link-underline-opacity: 1;
}

/* ----------------------------------------------------------------
  Icon Links
-----------------------------------------------------------------*/

.icon-link {
    display: inline-flex;
    gap: 0.375rem;
    align-items: center;
    text-decoration-color: rgba(var(--dr-link-color-rgb), var(--dr-link-opacity, 0.5));
    text-underline-offset: 0.25em;
    backface-visibility: hidden;
}

.icon-link>.icon {
    flex-shrink: 0;
    width: 1em;
    height: 1em;
    fill: currentcolor;
    transition: 0.2s ease-in-out transform;
}

@media (prefers-reduced-motion: reduce) {
    .icon-link>.icon {
        transition: none;
    }
}

/* -- what is this? Where is the var referencing? --*/

.icon-link-hover:hover>.icon,
.icon-link-hover:focus-visible>.icon {
    transform: var(--dr-icon-link-transform, translate3d(0.25em, 0, 0));
}

/* ----------------------------------------------------------------
  Link Styling
-----------------------------------------------------------------*/

.link-1::before {
    height: 2px;
    transform-origin: 100% 50%;
    transform: scale3d(0, 1, 1);
    transition: transform 0.3s;
}

.link-1:hover::before {
    height: 2px;
    transform-origin: 0% 50%;
    transform: scale3d(1, 1, 1);
}

/* Link 6 */
.link-6 {
    font-size: 1.3rem;
}

.link-6::before {
    transform-origin: 50% 100%;
    transition: clip-path 0.3s, transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
    clip-path: polygon(0% 0%, 0% 100%, 0 100%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%, 100% 100%, 100% 0%);
}

.link-6:hover::before {
    transform: translate3d(0, 2px, 0) scale3d(1.08, 3, 1);
    clip-path: polygon(0% 0%, 0% 100%, 50% 100%, 50% 0, 50% 0, 50% 100%, 50% 100%, 0 100%, 100% 100%, 100% 0%);
}

.link-6 span {
    display: inline-block;
    transition: transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
}

.link-6:hover span {
    transform: translate3d(0, -2px, 0);
}

/* Link 15 */
.link-15 {
    font-weight: bold;
}

.link-15::before {
    height: 3px;
    border-radius: 20px;
    transform: scale3d(1, 1, 1);
    transition: transform 0.2s, opacity 0.2s;
    transition-timing-function: cubic-bezier(0.2, 0.57, 0.67, 1.53);
}

.link-15:hover::before {
    transition-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
    transition-duration: 0.4s;
    opacity: 1;
    transform: scale3d(1.2, 0.1, 1);
}

.link-15 span {
    transform: translate3d(0, -4px, 0);
    display: inline-block;
    transition: transform 0.2s 0.05s cubic-bezier(0.2, 0.57, 0.67, 1.53);
}

.link-15:hover span {
    transform: translate3d(0, 0, 0);
    transition-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
    transition-duration: 0.4s;
    transition-delay: 0s;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Borders ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Border Utility Classes
-----------------------------------------------------------------*/

.border {
    border: var(--dr-border-width) var(--dr-border-style) var(--dr-border-color) !important;
}

.border-0 {
    border: 0 !important;
}

.border-top {
    border-top: var(--dr-border-width) var(--dr-border-style) var(--dr-border-color) !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border-end,
.border-right {
    border-right: var(--dr-border-width) var(--dr-border-style) var(--dr-border-color) !important;
}

.border-end-0,
.border-right-0 {
    border-right: 0 !important;
}

.border-bottom {
    border-bottom: var(--dr-border-width) var(--dr-border-style) var(--dr-border-color) !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.border-start,
.border-left {
    border-left: var(--dr-border-width) var(--dr-border-style) var(--dr-border-color) !important;
}

.border-start-0,
.border-left-0 {
    border-left: 0 !important;
}

/* ----------------------------------------------------------------
  Border Size Override Helper
-----------------------------------------------------------------*/

.border-0,
.border-width-0,
.h-border-width-0:hover {
    border-width: 0px !important;
}

.border-1,
.border-width-1,
.h-border-width-1:hover {
    border-width: 1px !important;
}

.border-2,
.border-width-2,
.h-border-width-2:hover {
    border-width: 2px !important;
}

.border-3,
.border-width-3,
.h-border-width-3:hover {
    border-width: 3px !important;
}

.border-4,
.border-width-4,
.h-border-width-4:hover {
    border-width: 4px !important;
}

.border-5,
.border-width-5,
.h-border-width-5:hover {
    border-width: 5px !important;
}

.border-6,
.border-width-6,
.h-border-width-6:hover {
    border-width: 6px !important;
}

.border-7,
.border-width-7,
.h-border-width-7:hover {
    border-width: 7px !important;
}

.border-8,
.border-width-8,
.h-border-width-8:hover {
    border-width: 8px !important;
}

.border-9,
.border-width-9,
.h-border-width-9:hover {
    border-width: 9px !important;
}

.border-10,
.border-width-10,
.h-border-width-10:hover {
    border-width: 10px !important;
}

/* ----------------------------------------------------------------
  Border Styling
-----------------------------------------------------------------*/

.border-dotted {
    border-style: dotted !important;
}

.border-dashed {
    border-style: dashed !important;
}

.border-solid {
    border-style: solid !important;
}

.border-double {
    border-style: double !important;
}


/* ----------------------------------------------------------------
  Border Colors
-----------------------------------------------------------------*/

.border-transparent {
    border-color: transparent !important;
}

/* Light */
.border-light,
.h-border-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-light-rgb), var(--dr-border-opacity)) !important;
}

/* Dark */
.border-dark,
.h-border-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Mid Dark */
.border-mid-dark,
.h-border-mid-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-mid-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Mid Light Dark */
.border-mid-light-dark,
.h-border-mid-light-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-mid-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Light Dark */
.border-light-dark,
.h-border-light-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-light-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Mid Dark Light */
.border-mid-dark-light,
.h-border-mid-dark-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-mid-dark-light-rgb), var(--dr-border-opacity)) !important;
}

/* Mid Light Dark Light */
.border-mid-light-dark-light,
.h-border-mid-light-dark-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-mid-light-dark-light-rgb), var(--dr-border-opacity)) !important;
}

/* Light Dark Light */
.border-light-dark-light,
.h-border-light-dark-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-light-dark-light-rgb), var(--dr-border-opacity)) !important;
}

/* Primary Dark */
.border-primary-dark,
.h-border-primary-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-primary-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Primary */
.border-primary,
.h-border-primary:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-primary-rgb), var(--dr-border-opacity)) !important;
}

/* Primary Mid Light */
.border-primary-mid-light,
.h-border-primary-mid-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-primary-mid-light-rgb), var(--dr-border-opacity)) !important;
}

/* Primary Light */
.border-primary-light,
.h-border-primary-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-primary-light-rgb), var(--dr-border-opacity)) !important;
}

/* Secomdary Dark */
.border-secondary-dark,
.h-border-secondary-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-secondary-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Secomdary */
.border-secondary,
.h-border-secondary:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-secondary-rgb), var(--dr-border-opacity)) !important;
}

/* Secomdary Mid Light */
.border-secondary-mid-light,
.h-border-secondary-mid-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-secondary-mid-light-rgb), var(--dr-border-opacity)) !important;
}

/* Secomdary Light */
.border-secondary-light,
.h-border-secondary-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-secondary-light-rgb), var(--dr-border-opacity)) !important;
}

/* Tertiary Dark */
.border-tertiary-dark,
.h-border-tertiary-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-tertiary-rgb), var(--dr-border-opacity)) !important;
}

/* Tertiary */
.border-tertiary,
.h-border-tertiary:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-tertiary-rgb), var(--dr-border-opacity)) !important;
}

/* Tertiary Mid Light */
.border-tertiary-mid-light,
.h-border-tertiary-mid-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-tertiary-mid-light-rgb), var(--dr-border-opacity)) !important;
}

/* Tertiary Light */
.border-tertiary-light,
.h-border-tertiary-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-tertiary-ligh-rgb), var(--dr-border-opacity)) !important;
}

/* Success Dark */
.border-success-dark,
.h-border-success-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-success-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Success */
.border-success,
.h-border-success:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-success-rgb), var(--dr-border-opacity)) !important;
}

/* Success Mid Light */
.border-success-mid-light,
.h-border-success-mid-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-success-mid-light-rgb), var(--dr-border-opacity)) !important;
}

/* Success Light */
.border-success-light,
.h-border-success-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-success-light-rgb), var(--dr-border-opacity)) !important;
}

/* Info Dark */
.border-info-dark,
.h-border-info-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-info-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Info */
.border-info,
.h-border-info:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-info-rgb), var(--dr-border-opacity)) !important;
}

/* Info Mid Light */
.border-info-mid-light,
.h-border-info-mid-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-info-mid-light-rgb), var(--dr-border-opacity)) !important;
}

/* info Light */
.border-info-light,
.h-border-info-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-info-light-rgb), var(--dr-border-opacity)) !important;
}

/* Warning Dark */
.border-warning-dark,
.h-border-warning-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-warning-dark-rgb), var(--dr-border-opacity)) !important;
}

/* Warning */
.border-warning,
.h-border-warning:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-warning-rgb), var(--dr-border-opacity)) !important;
}

/* Warning Mid Light */
.border-warning-mid-light,
.h-border-warning-mid-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-warning-mid-light-rgb), var(--dr-border-opacity)) !important;
}

/* Warning Light */
.border-warning-light,
.h-border-warning-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-warning-light-rgb), var(--dr-border-opacity)) !important;
}

/* Danger Dark */
.border-danger-dark,
.h-border-danger-dark:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-danger-rgb), var(--dr-border-opacity)) !important;
}

/* Danger */
.border-danger,
.h-border-danger:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-danger-rgb), var(--dr-border-opacity)) !important;
}

/* Danger Mid Light */
.border-danger-mid-light,
.h-border-danger-mid-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-danger-mid-light-rgb), var(--dr-border-opacity)) !important;
}

/* Danger Light */
.border-danger-light,
.h-border-danger-light:hover {
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-danger-light-rgb), var(--dr-border-opacity)) !important;
}

/* ----------------------------------------------------------------
  Border Opacity
-----------------------------------------------------------------*/

.border-opacity-10 {
    --dr-border-opacity: 0.1;
}

.border-opacity-25 {
    --dr-border-opacity: 0.25;
}

.border-opacity-50 {
    --dr-border-opacity: 0.5;
}

.border-opacity-75 {
    --dr-border-opacity: 0.75;
}

.border-opacity-100 {
    --dr-border-opacity: 1;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Rounded Corners ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

.rounded-none,
.rounded-0 {
    border-radius: 0 !important;
}

.rounded-extra-small,
.rounded-1 {
    border-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-smaller,
.rounded-2 {
    border-radius: var(--dr-border-radius-smaller) !important;
}

.rounded-small,
.rounded-3 {
    border-radius: var(--dr-border-radius-small) !important;
}

.rounded,
.rounded-4 {
    border-radius: var(--dr-border-radius) !important;
}

.rounded-5,
.rounded-large {
    border-radius: var(--dr-border-radius-large) !important;
}

.rounded-4,
.rounded-larger {
    border-radius: var(--dr-border-radius-larger) !important;
}

.rounded-5,
.rounded-extra-large {
    border-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-circle {
    border-radius: 50% !important;
}

.rounded-pill {
    border-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Top ----- */

.rounded-top-none,
.rounded-top-0 {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.rounded-top-extra-small,
.rounded-top-1 {
    border-top-left-radius: var(--dr-border-radius-extra-small) !important;
    border-top-right-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-top-smaller,
.rounded-top-2 {
    border-top-left-radius: var(--dr-border-smaller) !important;
    border-top-right-radius: var(--dr-border-smaller) !important;
}

.rounded-top-small,
.rounded-top-3 {
    border-top-left-radius: var(--dr-border-radius-small) !important;
    border-top-right-radius: var(--dr-border-radius-small) !important;
}

.rounded-top,
.rounded-top-4 {
    border-top-left-radius: var(--dr-border-radius) !important;
    border-top-right-radius: var(--dr-border-radius) !important;
}

.rounded-top-large,
.rounded-top-5 {
    border-top-left-radius: var(--dr-border-radius-large) !important;
    border-top-right-radius: var(--dr-border-radius-large) !important;
}

.rounded-top-larger,
.rounded-top-6 {
    border-top-left-radius: var(--dr-border-radius-large) !important;
    border-top-right-radius: var(--dr-border-radius-large) !important;
}

.rounded-top-extra-large,
.rounded-top-7 {
    border-top-left-radius: var(--dr-border-radius-extra-large) !important;
    border-top-right-radius: var(--dr-border-extra-large) !important;
}

.rounded-top-circle {
    border-top-left-radius: 50% !important;
    border-top-right-radius: 50% !important;
}

.rounded-top-pill {
    border-top-left-radius: var(--dr-border-radius-pill) !important;
    border-top-right-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Right ----- */


.rounded-right-none,
.rounded-end-0 {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.rounded-right-extra-small,
.rounded-end-1 {
    border-top-right-radius: var(--dr-border-radius-extra-small) !important;
    border-bottom-right-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-right-smaller,
.rounded-end-2 {
    border-top-right-radius: var(--dr-border-radius-smaller) !important;
    border-bottom-right-radius: var(--dr-border-radius-smaller) !important;
}

.rounded-right-small,
.rounded-end-3 {
    border-top-right-radius: var(--dr-border-radius-small) !important;
    border-bottom-right-radius: var(--dr-border-radius-small) !important;
}

.rounded-right,
.rounded-end,
.rounded-end-4 {
    border-top-right-radius: var(--dr-border-radius) !important;
    border-bottom-right-radius: var(--dr-border-radius) !important;
}

.rounded-right-large,
.rounded-end-5 {
    border-top-right-radius: var(--dr-border-radius-large) !important;
    border-bottom-right-radius: var(--dr-border-radius-large) !important;
}

.rounded-right-larger,
.rounded-end-6 {
    border-top-right-radius: var(--dr-border-radius-larger) !important;
    border-bottom-right-radius: var(--dr-border-radius-larger) !important;
}

.rounded-right-extra-large,
.rounded-end-7 {
    border-top-right-radius: var(--dr-border-radius-extra-large) !important;
    border-bottom-right-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-right-circle,
.rounded-end-circle {
    border-top-right-radius: 50% !important;
    border-bottom-right-radius: 50% !important;
}

.rounded-right-pill,
.rounded-end-pill {
    border-top-right-radius: var(--dr-border-radius-pill) !important;
    border-bottom-right-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Bottom ----- */

.rounded-bottom-none,
.rounded-bottom-0 {
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.rounded-bottom-extra-small,
.rounded-bottom-1 {
    border-bottom-right-radius: var(--dr-border-radius-extra-small) !important;
    border-bottom-left-radius: var(--dr-border-radius-sm) !important;
}

.rounded-bottom-smaller,
.rounded-bottom-2 {
    border-bottom-right-radius: var(--dr-border-radius-smaller) !important;
    border-bottom-left-radius: var(--dr-border-radius-smaller) !important;
}

.rounded-bottom-small,
.rounded-bottom-3 {
    border-bottom-right-radius: var(--dr-border-radius-small) !important;
    border-bottom-left-radius: var(--dr-border-radius-small) !important;
}

.rounded-bottom,
.rounded-bottom-4 {
    border-bottom-right-radius: var(--dr-border-radius-xl) !important;
    border-bottom-left-radius: var(--dr-border-radius-xl) !important;
}

.rounded-bottom-large,
.rounded-bottom-5 {
    border-bottom-right-radius: var(--dr-border-radius-large) !important;
    border-bottom-left-radius: var(--dr-border-radius-large) !important;
}

.rounded-bottom-larger,
.rounded-bottom-5 {
    border-bottom-right-radius: var(--dr-border-radius-larger) !important;
    border-bottom-left-radius: var(--dr-border-radius-larger) !important;
}

.rounded-bottom-extra-large,
.rounded-bottom-5 {
    border-bottom-right-radius: var(--dr-border-radius-extra-large) !important;
    border-bottom-left-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-bottom-circle {
    border-bottom-right-radius: 50% !important;
    border-bottom-left-radius: 50% !important;
}

.rounded-bottom-pill {
    border-bottom-right-radius: var(--dr-border-radius-pill) !important;
    border-bottom-left-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Left ----- */

.rounded-left,
.rounded-start-0 {
    border-bottom-left-radius: 0 !important;
    border-top-left-radius: 0 !important;
}

.rounded-left-extra-small,
.rounded-start-1 {
    border-bottom-left-radius: var(--dr-border-radius-extra-small) !important;
    border-top-left-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-left-smaller,
.rounded-start-2 {
    border-bottom-left-radius: var(--dr-border-smaller) !important;
    border-top-left-radius: var(--dr-border-smaller) !important;
}

.rounded-left-small,
.rounded-start-3 {
    border-bottom-left-radius: var(--dr-border-radius-small) !important;
    border-top-left-radius: var(--dr-border-radius-small) !important;
}

.rounded-left,
.rounded-start,
.rounded-start-4 {
    border-bottom-left-radius: var(--dr-border-radius-xl) !important;
    border-top-left-radius: var(--dr-border-radius-xl) !important;
}

.rounded-left-large,
.rounded-start-5 {
    border-bottom-left-radius: var(--dr-border-radius-large) !important;
    border-top-left-radius: var(--dr-border-radius-large) !important;
}

.rounded-left-larger,
.rounded-start-5 {
    border-bottom-left-radius: var(--dr-border-radius-larger) !important;
    border-top-left-radius: var(--dr-border-radius-larger) !important;
}

.rounded-left-extra-large,
.rounded-start-5 {
    border-bottom-left-radius: var(--dr-border-radius-extra-large) !important;
    border-top-left-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-left-circle,
.rounded-start-circle {
    border-bottom-left-radius: 50% !important;
    border-top-left-radius: 50% !important;
}

.rounded-left-pill,
.rounded-start-pill {
    border-bottom-left-radius: var(--dr-border-radius-pill) !important;
    border-top-left-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Top Right ----- */

.rounded-top-right-none,
.rounded-top-right-0 {
    border-top-right-radius: 0 !important;
}

.rounded-top-right-extra-small {
    border-top-right-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-top-right-smaller {
    border-top-right-radius: var(--dr-border-radius-smaller) !important;
}

.rounded-top-right-small {
    border-top-right-radius: var(--dr-border-radius-small) !important;
}

.rounded-top-right {
    border-top-right-radius: var(--dr-border-radius) !important;
}

.rounded-top-right-large {
    border-top-right-radius: var(--dr-border-radius-large) !important;
}

.rounded-top-right-larger {
    border-top-right-radius: var(--dr-border-radius-larger) !important;
}

.rounded-top-right-extra-large {
    border-top-right-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-top-right-circle {
    border-top-right-radius: 50% !important;
}

.rounded-top-right-pill {
    border-top-right-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Bottom Right ----- */

.rounded-bottom-right-none,
.rounded-bottom-right-0 {
    border-bottom-right-radius: 0 !important;
}

.rounded-bottom-right-extra-small {
    border-bottom-right-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-bottom-right-smaller {
    border-bottom-right-radius: var(--dr-border-radius-smaller) !important;
}

.rounded-bottom-right-small {
    border-bottom-right-radius: var(--dr-border-radius-small) !important;
}

.rounded-bottom-right {
    border-bottom-right-radius: var(--dr-border-radius) !important;
}

.rounded-bottom-right-large {
    border-bottom-right-radius: var(--dr-border-radius-large) !important;
}

.rounded-bottom-right-larger {
    border-bottom-right-radius: var(--dr-border-radius-larger) !important;
}

.rounded-bottom-right-extra-large {
    border-bottom-right-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-bottom-right-circle {
    border-bottom-right-radius: 50% !important;
}

.rounded-bottom-right-pill {
    border-bottom-right-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Bottom Left ----- */

.rounded-bottom-left-none,
.rounded-bottom-left-0 {
    border-bottom-left-radius: 0 !important;
}

.rounded-bottom-left-extra-small {
    border-bottom-left-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-bottom-left-smaller {
    border-bottom-left-radius: var(--dr-border-radius-smaller) !important;
}

.rounded-bottom-left-small {
    border-bottom-left-radius: var(--dr-border-radius-small) !important;
}

.rounded-bottom-left {
    border-bottom-left-radius: var(--dr-border-radius) !important;
}

.rounded-bottom-left-large {
    border-bottom-left-radius: var(--dr-border-radius-large) !important;
}

.rounded-bottom-left-larger {
    border-bottom-left-radius: var(--dr-border-radius-larger) !important;
}

.rounded-bottom-left-extra-large {
    border-bottom-left-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-bottom-left-circle {
    border-bottom-left-radius: 50% !important;
}

.rounded-bottom-left-pill {
    border-bottom-left-radius: var(--dr-border-radius-pill) !important;
}

/* ----- Rounded Top Left ----- */

.rounded-top-left-none,
.rounded-top-left-0 {
    border-top-left-radius: 0 !important;
}

.rounded-top-left-extra-small {
    border-top-left-radius: var(--dr-border-radius-extra-small) !important;
}

.rounded-top-left-smaller {
    border-top-left-radius: var(--dr-border-radius-smaller) !important;
}

.rounded-top-left-small {
    border-top-left-radius: var(--dr-border-radius-small) !important;
}

.rounded-top-left {
    border-top-left-radius: var(--dr-border-radius) !important;
}

.rounded-top-left-large {
    border-top-left-radius: var(--dr-border-radius-large) !important;
}

.rounded-top-left-larger {
    border-top-left-radius: var(--dr-border-radius-larger) !important;
}

.rounded-top-left-extra-large {
    border-top-left-radius: var(--dr-border-radius-extra-large) !important;
}

.rounded-top-left-circle {
    border-top-left-radius: 50% !important;
}

.rounded-top-left-pill {
    border-top-left-radius: var(--dr-border-radius-pill) !important;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                        **** Backgrounds ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Background color Utilities
-----------------------------------------------------------------*/
.bg-ts {
    transition: background-color var(--dr-transitions);
}

@media (prefers-reduced-motion: reduce) {
    .bg-ts {
        transition: none;
    }
}

.h-bg-color:hover {
    background-color: var(--dr-themecolor) !important;
}

.h-nobg:hover {
    background-color: transparent !important;
}

/* ----------------------------------------------------------------
  Background colors
-----------------------------------------------------------------*/

/* Light */
.bg-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-light:hover {
    background-color: var(--dr-light-h) !important;
}

/* Dark */
.bg-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-dark:hover {
    background-color: var(--dr-dark-h) !important;
}

/* Mid Dark */
.bg-mid-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-mid-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-mid-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-mid-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-mid-dark:hover {
    background-color: var(--dr-mid-dark-h) !important;
}

/* Mid Light Dark */
.bg-mid-light-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-mid-light-dark-rgb), var(--dr-bg-opacity)) !important;
}

/* Light Dark */
.bg-light-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-light-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-light-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-light-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-light-dark:hover {
    background-color: var(--dr-light-dark-h) !important;
}

/* Mid Dark Light */
.bg-mid-dark-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-mid-dark-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-mid-dark-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-mid-dark-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-mid-dark-light:hover {
    background-color: var(--dr-mid-dark-light-h) !important;
}

/* Mid Light Dark Light */
.bg-mid-light-dark-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-mid-light-dark-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg--mid-light-dark-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-mid-light-dark-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-mid-light-dark-light:hover {
    background-color: var(--dr-mid-light-dark-light-h) !important;
}

/* Light Dark Light */
.bg-light-dark-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-light-dark-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-light-dark-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-light-dark-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-light-dark-light:hover {
    background-color: var(--dr-light-dark-light-h) !important;
}

/* Primary Dark */
.bg-primary-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-primary-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-primary-dark:hover {
    background-color: var(--dr-primary-dark-h) !important;
}

/* Primary */
.bg-primary {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-rgb), var(--dr-bg-opacity)) !important;
}

.bg-primary-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-primary:hover {
    background-color: var(--dr-primary-h) !important;
}

/* Primary Mid Light */
.bg-primary-mid-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-mid-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-primary-mid-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-mid-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-primary-mid-light:hover {
    background-color: var(--dr-primary-mid-light-h) !important;
}

/* Primary Light */
.bg-primary-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-primary-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-primary-light:hover {
    background-color: var(--dr-primary-light-h) !important;
}

/* Secomdary Dark */
.bg-secondary-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-rgb), var(--dr-bg-opacity)) !important;
}

.bg-secondary-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-secondary-dark:hover {
    background-color: var(--dr-secondary-h) !important;
}

/* Secomdary */
.bg-secondary {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-rgb), var(--dr-bg-opacity)) !important;
}

.bg-secondary-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-secondary:hover {
    background-color: var(--dr-secondary-h) !important;
}

/* Secomdary Mid Light */
.bg-secondary-mid-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-mid-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-secondary-mid-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-mid-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-secondary-mid-light:hover {
    background-color: var(--dr-secondary-mid-light-h) !important;
}

/* Secomdary Light */
.bg-secondary-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-secondary-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-secondary-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-secondary-light:hover {
    background-color: var(--dr-secondary-light-h) !important;
}

/* Tertiary Dark */
.bg-tertiary-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-tertiary-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-tertiary-dark {
    --dr-bg-opacity: 1;
    background-color: var(--dr-tertiary-dark-h) !important;
}

/* Tertiary */
.bg-tertiary {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-rgb), var(--dr-bg-opacity)) !important;
}

.bg-tertiary-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-tertiary {
    --dr-bg-opacity: 1;
    background-color: var(--dr-tertiary-h) !important;
}

/* Tertiary Mid Light */
.bg-tertiary-mid-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-mid-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-tertiary-mid-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-mid-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-tertiary-mid-light {
    --dr-bg-opacity: 1;
    background-color: var(--dr-tertiary-mid-light-h) !important;
}

/* Tertiary Light */
.bg-tertiary-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-tertiary-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-tertiary-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-tertiary-light {
    --dr-bg-opacity: 1;
    background-color: var(--dr-tertiary-light-h) !important;
}

/* Success Dark */
.bg-success-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-success-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-success-dark:hover {
    background-color: var(--dr-success-dark-h) !important;
}

/* Success */
.bg-success {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-rgb), var(--dr-bg-opacity)) !important;
}

.bg-success-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-success:hover {
    background-color: var(--dr-success-h) !important;
}

/* Success Mid Light */
.bg-success-mid-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-mid-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-success-mid-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-mid-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-success-mid-light:hover {
    background-color: var(--dr-success-mid-light-h) !important;
}

/* Success Light */
.bg-success-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-success-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-success-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-success-light:hover {
    background-color: var(--dr-success-light-h) !important;
}

/* Info Dark */
.bg-info-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-info-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-info-dark:hover {
    background-color: var(--dr-info-dark-h) !important;
}

/* Info */
.bg-info {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-rgb), var(--dr-bg-opacity)) !important;
}

.bg-info-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-info:hover {
    background-color: var(--dr-info-h) !important;
}

/* Info Mid Light */
.bg-info-mid-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-mid-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-info-mid-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-mid-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-info-mid-light:hover {
    background-color: var(--dr-info-mid-light-h) !important;
}

/* info Light */
.bg-info-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-info-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-info-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-info-light:hover {
    background-color: var(--dr-info-light-h) !important;
}

/* Warning Dark */
.bg-warning-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-warning-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-warning-dark:hover {
    background-color: var(--dr-warning-dark-h) !important;
}

/* Warning */
.bg-warning {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-rgb), var(--dr-bg-opacity)) !important;
}

.bg-warning-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-warning:hover {
    background-color: var(--dr-warning-h) !important;
}

/* Warning Mid Light */
.bg-warning-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-mid-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-warning-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-mid-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-warning:hover {
    background-color: var(--dr-warning-light-h) !important;
}

/* Warning Light */
.bg-warning-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-warning-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-warning-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-warning:hover {
    background-color: var(--dr-warning-light-h) !important;
}

/* Danger Dark */
.bg-danger-dark {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-dark-rgb), var(--dr-bg-opacity)) !important;
}

.bg-danger-dark-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-dark-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-danger:hover {
    background-color: var(--dr-danger-dark-h) !important;
}

/* Danger */
.bg-danger {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-rgb), var(--dr-bg-opacity)) !important;
}

.bg-danger-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-danger:hover {
    background-color: var(--dr-danger-h) !important;
}

/* Danger Mid Light */
.bg-danger-mid-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-mid-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-danger-mid-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-mid-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-danger-mid-light:hover {
    background-color: var(--dr-danger-mid-light-h) !important;
}

/* Danger Light */
.bg-danger-light {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-light-rgb), var(--dr-bg-opacity)) !important;
}

.bg-danger-light-grey {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-danger-light-grey-rgb), var(--dr-bg-opacity)) !important;
}

.h-bg-danger-light:hover {
    background-color: var(--dr-danger-light-h) !important;
}


/* ----------------------------------------------------------------
  Background gradients
-----------------------------------------------------------------*/

.bg-gradient-dark-dark,
.gradient-dark-dark,
.h-bg-gradient-dark-dark,
.h-gradient-dark-dark {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-dark-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-dark-dark)) !important;
}

.bg-gradient-dark-dark-light,
.gradient-dark-dark-light,
.h-bg-gradient-dark-dark-light,
.h-gradient-dark-dark-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-dark-dark-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-dark-dark-light)) !important;
}

.bg-gradient-dark-mid-dark,
.gradient-dark-mid-dark,
.h-bg-gradient-dark-mid-dark,
.h-gradient-dark-mid-dark {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-dark-mid-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-dark-mid-dark)) !important;
}

.bg-gradient-dark-mid-light,
.gradient-dark-mid-light,
.h-bg-gradient-dark-mid-light,
.h-gradient-dark-mid-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-dark-mid-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-dark-mid-light)) !important;
}

.bg-gradient-dark-light-light,
.gradient-dark-light-light,
.h-bg-gradient-dark-light-light,
.h-gradient-dark-light-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-dark-light-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-dark-light-light)) !important;
}

.bg-gradient-dark-light,
.gradient-dark-light,
.h-bg-gradient-dark-light,
.h-gradient-dark-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-dark-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-dark-light)) !important;
}

/* Primary */
.bg-gradient-primary-dark,
.gradient-primary-dark,
.h-bg-gradient-primary-dark,
.h-gradient-primary-dark {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-primary-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-primary-dark)) !important;
}

.bg-gradient-primary-mid,
.gradient-primary-mid,
.h-bg-gradient-primary-mid,
.h-gradient-primary-mid {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-primary-mid)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-primary-mid)) !important;
}

.bg-gradient-primary-light,
.gradient-primary-light,
.h-bg-gradient-primary-light,
.h-gradient-primary-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-primary-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-primary-light)) !important;
}

/* secondary */
.bg-gradient-secondary-dark,
.gradient-secondary-dark,
.h-bg-gradient-secondary-dark,
.h-gradient-secondary-dark {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-secondary-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-secondary-dark)) !important;
}

.bg-gradient-secondary-mid,
.gradient-secondary-mid,
.h-bg-gradient-secondary-mid,
.h-gradient-secondary-mid {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-secondary-mid)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-secondary-mid)) !important;
}

.bg-gradient-secondary-light,
.gradient-secondary-light,
.h-bg-gradient-secondary-light,
.h-gradient-secondary-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-secondary-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-secondary-light)) !important;
}

/* tertiary */
.bg-gradient-tertiary-dark,
.gradient-tertiary-dark,
.h-bg-gradient-tertiary-dark,
.h-gradient-tertiary-dark {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-tertiary-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-tertiary-dark)) !important;
}

.bg-gradient-tertiary-mid,
.gradient-tertiary-mid,
.h-bg-gradient-tertiary-mid,
.h-gradient-tertiary-mid {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-tertiary-mid)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-tertiary-mid)) !important;
}

.bg-gradient-tertiary-light,
.gradient-tertiary-light,
.h-bg-gradient-tertiary-light,
.h-gradient-tertiary-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-tertiary-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-tertiary-light)) !important;
}

/* success */
.bg-gradient-success-dark,
.gradient-success-dark,
.h-bg-gradient-success-dark,
.h-gradient-tertiary-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-success-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-success-dark)) !important;
}

.bg-gradient-success-mid,
.gradient-success-mid,
.h-bg-gradient-success-mid,
.h-gradient-success-mid {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-success-mid)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-success-mid)) !important;
}

.bg-gradient-success-light,
.gradient-success-light,
.h-bg-gradient-success-light,
.h-gradient-success-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-success-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-success-light)) !important;
}

/* info */
.bg-gradient-info-dark,
.gradient-info-dark,
.h-bg-gradient-info-dark,
.h-gradient-info-dark {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-info-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-info-dark)) !important;
}

.bg-gradient-info-mid,
.gradient-info-mid,
.h-bg-gradient-info-mid,
.h-gradient-info-mid {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-info-mid)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-info-mid)) !important;
}

.bg-gradient-info-light,
.gradient-info-light,
.h-bg-gradient-info-light,
.h-gradient-info-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-info-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-info-light)) !important;
}

/* warning */
.bg-gradient-warning-dark,
.gradient-warning-dark,
.h-bg-gradient-warning-dark,
.h-gradient-warning-dark {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-warning-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-warning-dark)) !important;
}

.bg-gradient-warning-mid,
.gradient-warning-mid,
.h-bg-gradient-warning-mid,
h.gradient-warning-mid {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-warning-mid)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-warning-mid)) !important;
}

.bg-gradient-warning-light,
.gradient-warning-light,
.h-bg-gradient-warning-light,
.h-gradient-warning-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-warning-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-warning-light)) !important;
}

/* danger */
.bg-gradient-danger-dark,
.gradient-danger-dark,
.h-bg-gradient-danger-dark,
.h-gradient-warning-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-danger-dark)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-danger-dark)) !important;
}

.bg-gradient-danger-mid,
.gradient-danger-mid,
.h-bg-gradient-danger-mid,
.h-gradient-danger-mid {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-danger-mid)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-danger-mid)) !important;
}

.bg-gradient-danger-light,
.gradient-danger-light,
.h-bg-gradient-danger-light,
.h-gradient-danger-light {
    background-image: -webkit-linear-gradient(to top, var(--dr-bg-gradient-danger-light)) !important;
    background-image: linear-gradient(to top, var(--dr-bg-gradient-danger-light)) !important;
}

[class*=bg-gradient-]:hover {
    filter: brightness(110%);
}

/* ----------------------------------------------------------------
  Background opacity
-----------------------------------------------------------------*/

.bg-opacity-10 {
    --dr-bg-opacity: 0.1;
}

.bg-opacity-20 {
    --bs-bg-opacity: 0.2;
}

.bg-opacity-25 {
    --dr-bg-opacity: 0.25;
}

.bg-opacity-40 {
    --bs-bg-opacity: 0.4;
}

.bg-opacity-50 {
    --dr-bg-opacity: 0.5;
}

.bg-opacity-60 {
    --bs-bg-opacity: 0.6;
}

.bg-opacity-75 {
    --dr-bg-opacity: 0.75;
}

.bg-opacity-90 {
    --bs-bg-opacity: 0.9;
}

.bg-opacity-100 {
    --dr-bg-opacity: 1;
}

/* ----------------------------------------------------------------
  Background Image
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
  Background Position
-----------------------------------------------------------------*/

.bg-bottom {
    background-position: bottom !important;
}

.bg-center {
    background-position: center !important;
}

.bg-left {
    background-position: left !important;
}

.bg-left-bottom {
    background-position: left bottom !important;
}

.bg-left-top {
    background-position: left top !important;
}

.bg-right {
    background-position: right !important;
}

.bg-right-bottom {
    background-position: right bottom !important;
}

.bg-right-top {
    background-position: right top !important;
}

.bg-top {
    background-position: top !important;
}

@media (min-width: 576px) {
    .bg-sm-bottom {
        background-position: bottom !important;
    }

    .bg-sm-center {
        background-position: center !important;
    }

    .bg-sm-left {
        background-position: left !important;
    }

    .bg-sm-left-bottom {
        background-position: left bottom !important;
    }

    .bg-sm-left-top {
        background-position: left top !important;
    }

    .bg-sm-right {
        background-position: right !important;
    }

    .bg-sm-right-bottom {
        background-position: right bottom !important;
    }

    .bg-sm-right-top {
        background-position: right top !important;
    }

    .bg-sm-top {
        background-position: top !important;
    }
}

@media (min-width: 768px) {
    .bg-md-bottom {
        background-position: bottom !important;
    }

    .bg-md-center {
        background-position: center !important;
    }

    .bg-md-left {
        background-position: left !important;
    }

    .bg-md-left-bottom {
        background-position: left bottom !important;
    }

    .bg-md-left-top {
        background-position: left top !important;
    }

    .bg-md-right {
        background-position: right !important;
    }

    .bg-md-right-bottom {
        background-position: right bottom !important;
    }

    .bg-md-right-top {
        background-position: right top !important;
    }

    .bg-md-top {
        background-position: top !important;
    }
}

@media (min-width: 992px) {
    .bg-lg-bottom {
        background-position: bottom !important;
    }

    .bg-lg-center {
        background-position: center !important;
    }

    .bg-lg-left {
        background-position: left !important;
    }

    .bg-lg-left-bottom {
        background-position: left bottom !important;
    }

    .bg-lg-left-top {
        background-position: left top !important;
    }

    .bg-lg-right {
        background-position: right !important;
    }

    .bg-lg-right-bottom {
        background-position: right bottom !important;
    }

    .bg-lg-right-top {
        background-position: right top !important;
    }

    .bg-lg-top {
        background-position: top !important;
    }
}

@media (min-width: 1200px) {
    .bg-xl-bottom {
        background-position: bottom !important;
    }

    .bg-xl-center {
        background-position: center !important;
    }

    .bg-xl-left {
        background-position: left !important;
    }

    .bg-xl-left-bottom {
        background-position: left bottom !important;
    }

    .bg-xl-left-top {
        background-position: left top !important;
    }

    .bg-xl-right {
        background-position: right !important;
    }

    .bg-xl-right-bottom {
        background-position: right bottom !important;
    }

    .bg-xl-right-top {
        background-position: right top !important;
    }

    .bg-xl-top {
        background-position: top !important;
    }
}

@media (min-width: 1400px) {
    .bg-xxl-bottom {
        background-position: bottom !important;
    }

    .bg-xxl-center {
        background-position: center !important;
    }

    .bg-xxl-left {
        background-position: left !important;
    }

    .bg-xxl-left-bottom {
        background-position: left bottom !important;
    }

    .bg-xxl-left-top {
        background-position: left top !important;
    }

    .bg-xxl-right {
        background-position: right !important;
    }

    .bg-xxl-right-bottom {
        background-position: right bottom !important;
    }

    .bg-xxl-right-top {
        background-position: right top !important;
    }

    .bg-xxl-top {
        background-position: top !important;
    }
}

/* ----------------------------------------------------------------
  Background Sizes
-----------------------------------------------------------------*/
.bg-auto {
    background-size: auto !important;
}

.bg-contain {
    background-size: contain !important;
}

.bg-cover {
    background-size: cover !important;
}

/* ----------------------------------------------------------------
  Background Utility
-----------------------------------------------------------------*/

.bg-transparent {
    --dr-bg-opacity: 1;
    background-color: transparent !important;
}

.bg-clip {
    border: 1rem solid transparent;
    -moz-background-clip: padding;
    -webkit-background-clip: padding;
    background-clip: padding-box;
    transform: translate3d(0, 0, 0);
}

.bg-clip-sm {
    border-width: 0.5rem;
}

.bg-clip-lg {
    border-width: 2rem;
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                  **** Color Blocks ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/


.color-block-primary {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-dark-rgb), var(--dr-bg-opacity)) !important;
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-light-rgb), var(--dr-text-opacity)) !important;
    border: var(--dr-border-width) var(--dr-border-style) var(--dr-info-light-rgb) !important;
    transition: all var(--dr-transitions);
}

.color-block-primary:hover {
    --dr-bg-opacity: 1;
    background-color: rgba(var(--dr-primary-dark-h-rbg), var(--dr-bg-opacity)) !important;
    --dr-text-opacity: 1;
    color: rgba(var(--dr-primary-light-h-rgb), var(--dr-text-opacity)) !important;
    --dr-border-opacity: 1;
    border-color: rgba(var(--dr-primary-dark-h-rgb)) !important;
}



/* ----------------------------------------------------------------
-------------------------------------------------------------------

                        **** Image Styles ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Basic Image Styles
-----------------------------------------------------------------*/

img {
    max-width: 100%;
}

.img-fluid {
    max-width: 100%;
    height: auto;
}

.img-thumbnail {
    padding: 0.25rem;
    background-color: var(--dr-body-bg);
    border: var(--dr-border-width) solid var(--dr-border-color);
    border-radius: var(--dr-border-radius);
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

.figure-img {
    margin-bottom: 0.5rem;
    line-height: 1;
}

.figure-caption {
    font-size: 0.875em;
    color: var(--dr-text-muted);
}

/* ----------------------------------------------------------------
  Image Effects
-----------------------------------------------------------------*/

/* ------ Image scale ------ */
.imagescale,
.imagescalein {
    display: block;
    overflow: hidden;
}

.imagescale img,
.imagescalein img {
    -webkit-transform: scale(var(--dr-img-scale-ratio));
    transform: scale(var(--dr-img-scale-ratio));
    transform-origin: var(--dr-img-scale-position);
    transition: all 1s ease;
}

@media (prefers-reduced-motion: reduce) {

    .imagescale img,
    .imagescalein img {
        transition: none;
    }
}

.imagescale:hover,
.imagescalein:hover {
    --dr-img-scale-ratio: var(--dr-img-scale-default);
}

.imagescalein {
    --dr-img-scale-ratio: var(--dr-img-scale-default);
}

.imagescalein:hover {
    --dr-img-scale-ratio: var(--dr-img-scale-ratio);
}

/* ------ Greyscale Filter ------ */
.grayscale,
.grayscale-out:hover {
    --dr-gray-filter: brightness(80%) grayscale(1);
    filter: var(--dr-gray-filter);
    -webkit-filter: var(--dr-gray-filter);
    -moz-filter: var(--dr-gray-filter);
    -o-filter: var(--dr-gray-filter);
    -ms-filter: var(--dr-gray-filter);
    transition: 1s filter ease;
}

@media (prefers-reduced-motion: reduce) {

    .grayscale,
    .grayscale-out:hover {
        transition: none;
    }
}

.grayscale-out,
.grayscale:hover {
    --dr-gray-filter: brightness(100%) grayscale(0);
    transition: 1s filter ease;
}

@media (prefers-reduced-motion: reduce) {

    .grayscale-out,
    .grayscale:hover {
        transition: none;
    }
}

.bganimate {
    -webkit-animation: BgAnimated 30s infinite linear 30s infinite linear;
    animation: BgAnimated 30s infinite linear 30s infinite linear;
}

@-webkit-keyframes BgAnimated {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 0 400px;
    }
}

@keyframes BgAnimated {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 0 400px;
    }
}



/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Media Utilities ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Object fit
-----------------------------------------------------------------*/

.object-contain,
.object-fit-contain {
    object-fit: contain !important;
}

.object-cover,
.object-fit-cover {
    object-fit: cover !important;
}

.object-fill,
.object-fit-fill {
    object-fit: fill !important;
}

.object-scale-down,
.object-fit-scale {
    object-fit: scale-down !important;
}

.object-none,
.object-fit-none {
    object-fit: none !important;
}

/* -------- SM -------- */
@media (min-width: 576px) {

    /* Object Fit Utility Classes */
    .object-contain-sm,
    .object-fit-sm-contain {
        object-fit: contain !important;
    }

    .object-cover-sm,
    .object-fit-sm-cover {
        object-fit: cover !important;
    }

    .object-fill-sm,
    .object-fit-sm-fill {
        object-fit: fill !important;
    }

    .object-scale-down-sm,
    .object-fit-sm-scale {
        object-fit: scale-down !important;
    }

    .object-none-sm,
    .object-fit-sm-none {
        object-fit: none !important;
    }
}

/* -------- MD -------- */
@media (min-width: 768px) {

    .object-contain-md,
    .object-fit-md-contain {
        object-fit: contain !important;
    }

    .object-cover-md,
    .object-fit-md-cover {
        object-fit: cover !important;
    }

    .object-fill-md,
    .object-fit-md-fill {
        object-fit: fill !important;
    }

    .object-scale-down-md,
    .object-fit-md-scale {
        object-fit: scale-down !important;
    }

    .object-none-md,
    .object-fit-md-none {
        object-fit: none !important;
    }
}

/* -------- LG -------- */
@media (min-width: 992px) {

    .object-contain-lg,
    .object-fit-lg-contain {
        object-fit: contain !important;
    }

    .object-cover-lg,
    .object-fit-lg-cover {
        object-fit: cover !important;
    }

    .object-fill-lg,
    .object-fit-lg-fill {
        object-fit: fill !important;
    }

    .object-scale-down-lg,
    .object-fit-lg-scale {
        object-fit: scale-down !important;
    }

    .object-none-lg,
    .object-fit-lg-none {
        object-fit: none !important;
    }
}

/* -------- XL -------- */
@media (min-width: 1200px) {

    .object-contain-xl,
    .object-fit-xl-contain {
        object-fit: contain !important;
    }

    .object-cover-xl,
    .object-fit-xl-cover {
        object-fit: cover !important;
    }

    .object-fill-xl,
    .object-fit-xl-fill {
        object-fit: fill !important;
    }

    .object-scale-down-xl,
    .object-fit-xl-scale {
        object-fit: scale-down !important;
    }

    .object-none-xl,
    .object-fit-xl-none {
        object-fit: none !important;
    }
}

/* -------- XXL -------- */
@media (min-width: 1400px) {

    .object-contain-xxl,
    .object-fit-xxl-contain {
        object-fit: contain !important;
    }

    .object-cover-xxl,
    .object-fit-xxl-cover {
        object-fit: cover !important;
    }

    .object-fill-xxl,
    .object-fit-xxl-fill {
        object-fit: fill !important;
    }

    .object-scale-down-xxl,
    .object-fit-xxl-scale {
        object-fit: scale-down !important;
    }

    .object-none-xxl,
    .object-fit-xxl-none {
        object-fit: none !important;
    }
}

/* ----------------------------------------------------------------
  Object Positions
-----------------------------------------------------------------*/

.object-bottom {
    object-position: bottom !important;
}

.object-center {
    object-position: center !important;
}

.object-left {
    object-position: left !important;
}

.object-left-bottom {
    object-position: left bottom !important;
}

.object-left-top {
    object-position: left top !important;
}

.object-right {
    object-position: right !important;
}

.object-right-bottom {
    object-position: right bottom !important;
}

.object-right-top {
    object-position: right top !important;
}

.object-top {
    object-position: top !important;
}

/* ----------------------------------------------------------------
  Iframe Styles
-----------------------------------------------------------------*/

iframe {
    width: 100%;
    border: 0 !important;
    overflow: hidden !important;
}

/* ----------------------------------------------------------------
  Aspect Ratio
-----------------------------------------------------------------*/

.ratio {
    position: relative;
    width: 100%;
}

.ratio::before {
    display: block;
    padding-top: var(--dr-aspect-ratio);
    content: "";
}

.ratio>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ratio-1x1 {
    --dr-aspect-ratio: 100%;
}

.ratio-4x3 {
    --dr-aspect-ratio: 75%;
}

.ratio-16x9 {
    --dr-aspect-ratio: 56.25%;
}

.ratio-21x9 {
    --dr-aspect-ratio: 42.8571428571%;
}

.header-stick
/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Layout Blocks ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
                            Cards
-----------------------------------------------------------------*/

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: var(--dr-card-height);
    color: var(--dr-body-color);
    word-wrap: break-word;
    background-color: var(--dr-card-bg);
    background-clip: border-box;
    border: var(--dr-card-border-width) solid var(--dr-card-border-color);
    border-radius: var(--dr-card-border-radius);
}

.card>hr {
    margin-right: 0;
    margin-left: 0;
}

.card>.list-group {
    border-top: inherit;
    border-bottom: inherit;
}

.card>.list-group:first-child {
    border-top-width: 0;
    border-top-left-radius: var(--dr-card-inner-border-radius);
    border-top-right-radius: var(--dr-card-inner-border-radius);
}

.card>.list-group:last-child {
    border-bottom-width: 0;
    border-bottom-right-radius: var(--dr-card-inner-border-radius);
    border-bottom-left-radius: var(--dr-card-inner-border-radius);
}

.card>.card-header+.list-group,
.card>.list-group+.card-footer {
    border-top: 0;
}

.card-body {
    flex: 1 1 auto;
    padding: var(--dr-card-spacer-y) var(--dr-card-spacer-x);
    color: var(--dr-card-color);
}

.card-title {
    margin-bottom: var(--dr-card-title-spacer-y);
    color: var(--dr-card-title-color);
}

.card-subtitle {
    margin-top: calc(-0.5 * var(--dr-card-title-spacer-y));
    margin-bottom: 0;
    color: var(--dr-card-subtitle-color);
}

.card-text:last-child {
    margin-bottom: 0;
}

.card-link+.card-link {
    margin-left: var(--dr-card-spacer-x);
}

.card-header {
    padding: var(--dr-card-cap-padding-y) var(--dr-card-cap-padding-x);
    margin-bottom: 0;
    color: var(--dr-card-cap-color);
    background-color: var(--dr-card-cap-bg);
    border-bottom: var(--dr-card-border-width) solid var(--dr-card-border-color);
}

.card-header:first-child {
    border-radius: var(--dr-card-inner-border-radius) var(--dr-card-inner-border-radius) 0 0;
}

.card-footer {
    padding: var(--dr-card-cap-padding-y) var(--dr-card-cap-padding-x);
    color: var(--dr-card-cap-color);
    background-color: var(--dr-card-cap-bg);
    border-top: var(--dr-card-border-width) solid var(--dr-card-border-color);
}

.card-footer:last-child {
    border-radius: 0 0 var(--dr-card-inner-border-radius) var(--dr-card-inner-border-radius);
}

.card-header-tabs {
    margin-right: calc(-0.5 * var(--dr-card-cap-padding-x));
    margin-bottom: calc(-1 * var(--dr-card-cap-padding-y));
    margin-left: calc(-0.5 * var(--dr-card-cap-padding-x));
    border-bottom: 0;
}

.card-header-tabs .nav-link.active {
    background-color: var(--dr-card-bg);
    border-bottom-color: var(--dr-card-bg);
}

.card-header-pills {
    margin-right: calc(-0.5 * var(--dr-card-cap-padding-x));
    margin-left: calc(-0.5 * var(--dr-card-cap-padding-x));
}

.card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: var(--dr-card-img-overlay-padding);
    border-radius: var(--dr-card-inner-border-radius);
}

.card-img,
.card-img-top,
.card-img-bottom {
    width: 100%;
}

.card-img,
.card-img-top {
    border-top-left-radius: var(--dr-card-inner-border-radius);
    border-top-right-radius: var(--dr-card-inner-border-radius);
}

.card-img,
.card-img-bottom {
    border-bottom-right-radius: var(--dr-card-inner-border-radius);
    border-bottom-left-radius: var(--dr-card-inner-border-radius);
}

.card-group>.card {
    margin-bottom: var(--dr-card-group-margin);
}

@media (min-width: 576px) {
    .card-group {
        display: flex;
        flex-flow: row wrap;
    }

    .card-group>.card {
        flex: 1 0 0%;
        margin-bottom: 0;
    }

    .card-group>.card+.card {
        margin-left: 0;
        border-left: 0;
    }

    .card-group>.card:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .card-group>.card:not(:last-child) .card-img-top,
    .card-group>.card:not(:last-child) .card-header {
        border-top-right-radius: 0;
    }

    .card-group>.card:not(:last-child) .card-img-bottom,
    .card-group>.card:not(:last-child) .card-footer {
        border-bottom-right-radius: 0;
    }

    .card-group>.card:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .card-group>.card:not(:first-child) .card-img-top,
    .card-group>.card:not(:first-child) .card-header {
        border-top-left-radius: 0;
    }

    .card-group>.card:not(:first-child) .card-img-bottom,
    .card-group>.card:not(:first-child) .card-footer {
        border-bottom-left-radius: 0;
    }
}

/* ---------- Card Columns -----------*/

@media (max-width: 575.98px) {
    .card-columns {
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3;
        -webkit-column-gap: 1.25rem;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1;
    }

    .card-columns.grid-2 {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }

    .card-columns>* {
        display: inline-block;
        width: 100%;
    }
}

/* ----------------------------------------------------------------
                         Feature Boxes
-----------------------------------------------------------------*/

.feature-box {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--dr-featured-box-padding-x));
    margin-right: calc(-1 * var(--dr-featured-box-padding-x));
}

.feature-box:first-child {
    margin-top: 0;
}

.fbox-icon {
    width: calc(var(--dr-featured-box-icon) + var(--dr-featured-box-padding-x) * 2);
    height: var(--dr-featured-box-icon);
    padding: 0 var(--dr-featured-box-padding-x);
}

.fbox-icon a,
.fbox-icon i,
.fbox-icon img {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    color: inherit;
}

.fbox-icon i,
.fbox-icon img {
    border-radius: 50%;
    border: var(--dr-featured-box-border-width) solid var(--dr-featured-box-border-color);
    background-color: var(--dr-featured-box-icon-bg-color);
    color: var(--dr-featured-box-icon-color);
}

.fbox-icon i {
    font-style: normal;
    font-size: var(--dr-featured-box-icon-size);
    line-height: var(--dr-featured-box-icon);
    text-align: center;
}

.fbox-content {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
    padding: 0 var(--dr-featured-box-padding-x);
}

.fbox-content h3,
.fbox-content .h3 {
    font-size: var(--dr-featured-box-font-size);
    font-weight: var(--dr-featured-box-font-weight);
    font-family: var(--dr-primary-font);
    text-transform: var(--dr-featured-box-font-tt);
    margin-bottom: 0;
    color: var(--dr-featured-box-heading-color);
}

.fbox-content p {
    margin-top: 0.5rem;
    margin-bottom: 0px;
    color: var(--dr-featured-box-paragraph-color);
}

.fbox-content .before-heading {
    font-size: calc(var(--dr-featured-box-font-size) / 1.142);
}

.fbox-content-sm h3,
.fbox-content-sm .h3,
.fbox-content-sm p {
    font-size: calc(var(--dr-featured-box-font-size) / 1.142);
}

.fbox-content-sm .before-heading {
    font-size: calc(var(--dr-featured-box-font-size) / 1.333);
}

.fbox-content-lg h3,
.fbox-content-lg .h3 {
    font-size: calc(var(--dr-featured-box-font-size) * 1.25);
}

.fbox-content-lg p {
    font-size: calc(var(--dr-featured-box-font-size) * 1.25);
    margin-top: 0.75rem;
}

.fbox-content-lg .before-heading {
    font-size: var(--dr-featured-box-font-size);
}

.fbox-sm {
    --dr-featured-box-padding-x: var(--dr-featured-box-padding-x-sm);
    --dr-featured-box-icon: var(--dr-featured-box-icon-sm);
    --dr-featured-box-icon-size: var(--dr-featured-box-icon-size-sm);
}

.fbox-lg {
    --dr-featured-box-icon: var(--dr-featured-box-icon-lg);
    --dr-featured-box-icon-size: var(--dr-featured-box-icon-size-lg);
}

.fbox-xl {
    --dr-featured-box-icon: var(--dr-featured-box-icon-xl);
    --dr-featured-box-icon-size: var(--dr-featured-box-icon-size-xl);
}

/* -------Fbox bg and border -------- */
.fbox-content-bg .fbox-content,
.fbox-item-bg,
.fbox-content-border .fbox-content,
.fbox-item-border {
    padding: 2rem 2rem 2rem 2rem;
    border-radius: var(--dr-border-radius);
}

.fbox-content-border .fbox-content,
.fbox-item-border {
    border: 1px solid var(--dr-featured-box-border-color);
}

.fbox-content-bg .fbox-content,
.fbox-item-bg {
    background-color: var(--dr-featured-box-bg-color);
}

.fbox-content-border .fbox-content,
.fbox-item-border {
    background-color: transparent !important;
}

.fbox-item-bg,
.fbox-item-border {
    padding: 2rem 2rem 2rem 0;
}

.fbox-content-bg .fbox-content,
.fbox-content-border .fbox-content {}

.fbox-content-bg .fbox-icon,
.fbox-content-border .fbox-icon {}

/* ---------- Fbox Square -----------*/

.fbox-icon-square .fbox-icon {
    border-radius: var(--dr-featured-box-square-corners) !important;
}

.fbox-icon-square .fbox-icon i,
.fbox-icon-square .fbox-icon img {
    border-radius: var(--dr-featured-box-square-corners) !important;
}

.fbox-icon-square .fbox-lg {
    --dr-featured-box-square-corners: calc(var(--dr-featured-box-square-corners) / 0.75);
}

.fbox-icon-square .fbox-xl {
    --dr-featured-box-square-corners: calc(var(--dr-featured-box-square-corners) * 2);
}

/* ---------- Fbox Icon Border -----------*/

.fbox-icon-border .fbox-icon i {}

.fbox-icon-border .fbox-icon i,
.fbox-icon-border .fbox-icon img {
    border: var(--dr-featured-box-border-width) solid var(--dr-featured-box-border-color);
    border-radius: 50%;
    border-color: var(--dr-featured-box-border-color);
    background-color: transparent !important;
    color: var(--dr-featured-box-border-color);
}

.fbox-icon-border.fbox-icon-square .fbox-icon i,
.fbox-icon-border.fbox-icon-square .fbox-icon img {
    border-radius: var(--dr-featured-box-square-corners) !important;
}

.fbox-icon img {
    padding: 0.75rem;
}

/* ---------- Fbox plain -----------*/

.fbox-icon-plain .fbox-icon {
    border: none !important;
    height: auto !important;
}

.fbox-icon-plain .fbox-icon i,
.fbox-icon-plain .fbox-icon img {
    border: none;
    background-color: transparent;
    color: var(--dr-featured-box-icon-color);
    border-radius: 0;
}

.fbox-icon-plain .fbox-icon i {
    font-size: var(--dr-featured-box-plain-font-size);
    line-height: 1;
}

.fbox-icon-plain .fbox-icon img {
    height: auto;
    padding: 0.25rem;
}

.fbox-icon-plain.fbox-image .fbox-icon {
    width: auto;
}

.fbox-icon-plain.fbox-image .fbox-icon img {
    width: auto;
    display: inline-block;
}

.fbox-icon-plain.fbox-sm .fbox-icon i {
    font-size: calc(var(--dr-featured-box-plain-font-size) / 1.5);
}

.fbox-icon-plain.fbox-lg .fbox-icon i {
    font-size: calc(var(--dr-featured-box-plain-font-size) * 1.5);
}

.fbox-icon-plain.fbox-xl .fbox-icon i {
    font-size: calc(var(--dr-featured-box-plain-font-size) * 2);
}

/* ---------- Fbox center -----------*/

.fbox-center {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

.fbox-center .fbox-icon {
    margin-bottom: 1.5rem;
}

.fbox-content h3+.fbox-icon,
.fbox-content .h3+.fbox-icon {
    margin-top: 1.5rem;
    margin-bottom: 0 !important;
}

.fbox-content h3 span.subtitle,
.fbox-content .h3 span.subtitle {
    display: block;
    margin-top: 5px;
    color: var(--dr-featured-box-heading-color);
    font-weight: 300;
    text-transform: none;
}

/* -------Fbox center bg and border -------- */
.fbox-item-bg.fbox-center,
.fbox-item-border.fbox-center {
    margin-top: 2rem;
    margin-left: 0;
    margin-right: 0;
    padding: 0 2rem 2rem 2rem;
}

.fbox-item-bg.fbox-center .fbox-icon,
.fbox-item-border.fbox-center .fbox-icon {
    margin-top: -2rem;
    background-color: transparent;
}

.fbox-item-bg.fbox-center .fbox-lg,
.fbox-item-border.fbox-center .fbox-lg {
    margin-top: 3rem;
}

.fbox-item-bg.fbox-center .fbox-lg .fbox-icon,
.fbox-item-border.fbox-center .fbox-lg .fbox-icon {
    margin-top: -3rem;
}

.fbox-item-bg.fbox-center .fbox-xl,
.fbox-item-border.fbox-center .fbox-xl {
    margin-top: 4rem;
}

.fbox-item-bg.fbox-center .fbox-xl .fbox-icon,
.fbox-item-border.fbox-center .fbox-xl .fbox-icon {
    margin-top: -4rem;
}

/* -------Media Feature Box -------- */
.media-box {
    padding: 0;
    margin-left: 0;
    margin-right: 0;
    -ms-flex-direction: column;
    flex-direction: column;
}

.media-box .fbox-media {
    margin: 0 0 1.5rem;
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}

.media-box .fbox-media a,
.media-box .fbox-media img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}

.media-box .fbox-media iframe {
    display: block;
}

.media-box p {
    margin-top: 1rem;
}

.media-box .fbox-content {
    -ms-flex-preferred-size: auto;
}

/* -------Media box bg and border -------- */

.media-box.fbox-item-bg .fbox-media,
.media-box.fbox-item-border .fbox-media,
.media-box.fbox-content-bg .fbox-media,
.media-box.fbox-content-border .fbox-media {
    margin: 0 0 0;
}

.media-box.fbox-item-bg .fbox-media img,
.media-box.fbox-item-border .fbox-media img,
.media-box.fbox-content-bg .fbox-media img,
.media-box.fbox-content-border .fbox-media img {
    border-radius: var(--dr-border-radius) var(--dr-border-radius) 0 0;
}

.media-box.fbox-item-bg .fbox-content,
.media-box.fbox-item-border .fbox-content,
.media-box.fbox-content-bg .fbox-content,
.media-box.fbox-content-border .fbox-content {
    padding: 1.5rem;
    background-color: var(--dr-featured-box-bg-color);
    border: 1px solid var(--dr-featured-box-border-color);
    border-top: 0;
    border-radius: 0 0 var(--dr-border-radius) var(--dr-border-radius);
}

/* -------Fbox effects -------- */



/* -------Fbox Colours -------- */

/*default*/
.feature-box {
    --dr-featured-box-color: var(--dr-danger);
    --dr-featured-box-icon-color: var(--dr-mid-light-dark);
    --dr-featured-box-border-color: var(--dr-mid-light-dark-light);
    --dr-featured-box-icon-bg-color: var(--dr-mid-light-dark-light);
    --dr-featured-box-bg-color: var(--dr-mid-light-dark);
    --dr-featured-box-heading-color: var(--dr-light-dark-light);
    --dr-featured-box-paragraph-color: var(--dr-mid-light-dark-light);
}

.feature-box.fbox-primary {
    --dr-featured-box-color: var(--dr-primary);
    --dr-featured-box-icon-color: var(--dr-primary-light);
    --dr-featured-box-border-color: var(--dr-primary);
    --dr-featured-box-icon-bg-color: var(--dr-primary);
    --dr-featured-box-bg-color: var(--dr-primary-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}


/*

.feature-box.fbox-light {
    --dr-featured-box-color: var(--dr-light);
    --dr-featured-box-icon-color: var(--dr-dark);
    --dr-featured-box-border-color: var(--dr-light);
    --dr-featured-box-bg-color: var(--dr-light);
    --dr-featured-box-heading-color: var(--dr-light);
    --dr-featured-box-paragraph-color: var(--dr-light-dark-grey-rgb);
}

.feature-box.fbox-dark {
    --dr-featured-box-color: var(--dr-dark);
    --dr-featured-box-icon-color: var(--dr-light);
    --dr-featured-box-border-color: var(--dr-dark);
    --dr-featured-box-bg-color: var(--dr-dark);
    --dr-featured-box-heading-color: var(--dr-dark);
    --dr-featured-box-paragraph-color: var(--dr-dark);
}

.feature-box.fbox-mid-dark {
    --dr-featured-box-color: var(--dr-mid-dark);
    --dr-featured-box-icon-color: var(--dr-light);
    --dr-featured-box-border-color: var(--dr-mid-dark);
    --dr-featured-box-bg-color: var(--dr-mid-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-mid-light-dark {
    --dr-featured-box-color: var(--dr-mid-light-dark);
    --dr-featured-box-icon-color: var(--dr-light);
    --dr-featured-box-border-color: var(--dr-mid-light-dark);
    --dr-featured-box-bg-color: var(--dr-mid-light-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-light-dark {
    --dr-featured-box-color: var(--dr-light-dark);
    --dr-featured-box-icon-color: var(--dr-light);
    --dr-featured-box-border-color: var(--dr-light-dark);
    --dr-featured-box-bg-color: var(--dr-light-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-mid-dark-light {
    --dr-featured-box-color: var(--dr-mid-dark-light);
    --dr-featured-box-icon-color: var(--dr-light);
    --dr-featured-box-border-color: var(--dr-mid-dark-light);
    --dr-featured-box-bg-color: var(--dr-mid-dark-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-mid-light-dark-light {
    --dr-featured-box-color: var(--dr-mid-light-dark-light);
    --dr-featured-box-icon-color: var(--dr-dark);
    --dr-featured-box-border-color: var(--dr-mid-light-dark-light);
    --dr-featured-box-bg-color: var(--dr-mid-light-dark-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-light-dark-light {
    --dr-featured-box-color: var(--dr-light-dark-light);
    --dr-featured-box-icon-color: var(--dr-dark);
    --dr-featured-box-border-color: var(--dr-light-dark-light);
    --dr-featured-box-bg-color: var(--dr-light-dark-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-primary-dark {
    --dr-featured-box-color: var(--dr-primary-dark);
    --dr-featured-box-icon-color: var(--dr-primary-light);
    --dr-featured-box-border-color: var(--dr-primary-dark);
    --dr-featured-box-bg-color: var(--dr-primary-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-primary {
    --dr-featured-box-color: var(--dr-primary);
    --dr-featured-box-icon-color: var(--dr-primary-light);
    --dr-featured-box-border-color: var(--dr-primary);
    --dr-featured-box-bg-color: var(--dr-primary);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-primary-mid-light {
    --dr-featured-box-color: var(--dr-primary-mid-light);
    --dr-featured-box-icon-color: var(--dr-primary-dark);
    --dr-featured-box-border-color: var(--dr-primary-mid-light);
    --dr-featured-box-bg-color: var(--dr-primary-mid-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-primary-light {
    --dr-featured-box-color: var(--dr-primary-light);
    --dr-featured-box-icon-color: var(--dr-primary-dark);
    --dr-featured-box-border-color: var(--dr-primary-light);
    --dr-featured-box-bg-color: var(--dr-primary-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-secondary-dark {
    --dr-featured-box-color: var(--dr-secondary-dark);
    --dr-featured-box-icon-color: var(--dr-secondary-light);
    --dr-featured-box-border-color: var(--dr-secondary-dark);
    --dr-featured-box-bg-color: var(--dr-secondary-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-secondary {
    --dr-featured-box-color: var(--dr-secondary);
    --dr-featured-box-icon-color: var(--dr-secondary-light);
    --dr-featured-box-border-color: var(--dr-secondary);
    --dr-featured-box-bg-color: var(--dr-secondary);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-secondary-mid-light {
    --dr-featured-box-color: var(--dr-secondary-mid-light);
    --dr-featured-box-icon-color: var(--dr-secondary-dark);
    --dr-featured-box-border-color: var(--dr-secondary-mid-light);
    --dr-featured-box-bg-color: var(--dr-secondary-mid-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-secondary-light {
    --dr-featured-box-color: var(--dr-secondary-light);
    --dr-featured-box-icon-color: var(--dr-secondary-dark);
    --dr-featured-box-border-color: var(--dr-secondary-light);
    --dr-featured-box-bg-color: var(--dr-secondary-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-tertiary-dark {
    --dr-featured-box-color: var(--dr-tertiary-dark);
    --dr-featured-box-icon-color: var(--dr-tertiary-light);
    --dr-featured-box-border-color: var(--dr-tertiary-dark);
    --dr-featured-box-bg-color: var(--dr-tertiary-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-tertiary {
    --dr-featured-box-color: var(--dr-tertiary);
    --dr-featured-box-icon-color: var(--dr-tertiary-light);
    --dr-featured-box-border-color: var(--dr-tertiary);
    --dr-featured-box-bg-color: var(--dr-tertiary);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-tertiary-mid-light {
    --dr-featured-box-color: var(--dr-tertiary-mid-light);
    --dr-featured-box-icon-color: var(--dr-tertiary-dark);
    --dr-featured-box-border-color: var(--dr-tertiary-mid-light);
    --dr-featured-box-bg-color: var(--dr-tertiary-mid-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-tertiary-light {
    --dr-featured-box-color: var(--dr-tertiary-light);
    --dr-featured-box-icon-color: var(--dr-tertiary-dark);
    --dr-featured-box-border-color: var(--dr-tertiary-light);
    --dr-featured-box-bg-color: var(--dr-tertiary-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-success-dark {
    --dr-featured-box-color: var(--dr-success-dark);
    --dr-featured-box-icon-color: var(--dr-success-light);
    --dr-featured-box-border-color: var(--dr-success-dark);
    --dr-featured-box-bg-color: var(--dr-success-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-success {
    --dr-featured-box-color: var(--dr-success);
    --dr-featured-box-icon-color: var(--dr-success-light);
    --dr-featured-box-border-color: var(--dr-success);
    --dr-featured-box-bg-color: var(--dr-success);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-success-mid-light {
    --dr-featured-box-color: var(--dr-success-mid-light);
    --dr-featured-box-icon-color: var(--dr-success-dark);
    --dr-featured-box-border-color: var(--dr-success-mid-light);
    --dr-featured-box-bg-color: var(--dr-success-mid-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-success-light {
    --dr-featured-box-color: var(--dr-success-light);
    --dr-featured-box-icon-color: var(--dr-success-dark);
    --dr-featured-box-border-color: var(--dr-success-light);
    --dr-featured-box-bg-color: var(--dr-success-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-info-dark {
    --dr-featured-box-color: var(--dr-info-dark);
    --dr-featured-box-icon-color: var(--dr-info-light);
    --dr-featured-box-border-color: var(--dr-info-dark);
    --dr-featured-box-bg-color: var(--dr-info-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-info {
    --dr-featured-box-color: var(--dr-info);
    --dr-featured-box-icon-color: var(--dr-info-light);
    --dr-featured-box-border-color: var(--dr-info);
    --dr-featured-box-bg-color: var(--dr-info);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-info-mid-light {
    --dr-featured-box-color: var(--dr-info-mid-light);
    --dr-featured-box-icon-color: var(--dr-info-dark);
    --dr-featured-box-border-color: var(--dr-info-mid-light);
    --dr-featured-box-bg-color: var(--dr-info-mid-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-info-light {
    --dr-featured-box-color: var(--dr-info-light);
    --dr-featured-box-icon-color: var(--dr-info-dark);
    --dr-featured-box-border-color: var(--dr-info-light);
    --dr-featured-box-bg-color: var(--dr-info-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-warning-dark {
    --dr-featured-box-color: var(--dr-warning-dark);
    --dr-featured-box-icon-color: var(--dr-warning-light);
    --dr-featured-box-border-color: var(--dr-warning-dark);
    --dr-featured-box-bg-color: var(--dr-warning-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-warning {
    --dr-featured-box-color: var(--dr-warning);
    --dr-featured-box-icon-color: var(--dr-warning-light);
    --dr-featured-box-border-color: var(--dr-warning);
    --dr-featured-box-bg-color: var(--dr-warning);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-warning-mid-light {
    --dr-featured-box-color: var(--dr-warning-mid-light);
    --dr-featured-box-icon-color: var(--dr-warning-dark);
    --dr-featured-box-border-color: var(--dr-warning-mid-light);
    --dr-featured-box-bg-color: var(--dr-warning-mid-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-warning-light {
    --dr-featured-box-color: var(--dr-warning-light);
    --dr-featured-box-icon-color: var(--dr-warning-dark);
    --dr-featured-box-border-color: var(--dr-warning-light);
    --dr-featured-box-bg-color: var(--dr-warning-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-danger-dark {
    --dr-featured-box-color: var(--dr-danger-dark);
    --dr-featured-box-icon-color: var(--dr-danger-light);
    --dr-featured-box-border-color: var(--dr-danger-dark);
    --dr-featured-box-bg-color: var(--dr-danger-dark);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-danger {
    --dr-featured-box-color: var(--dr-danger);
    --dr-featured-box-icon-color: var(--dr-danger-light);
    --dr-featured-box-border-color: var(--dr-danger);
    --dr-featured-box-bg-color: var(--dr-danger);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-danger-mid-light {
    --dr-featured-box-color: var(--dr-danger-mid-light);
    --dr-featured-box-icon-color: var(--dr-danger-dark);
    --dr-featured-box-border-color: var(--dr-danger-mid-light);
    --dr-featured-box-bg-color: var(--dr-danger-mid-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

.feature-box.fbox-danger-light {
    --dr-featured-box-color: var(--dr-danger-light);
    --dr-featured-box-icon-color: var(--dr-danger-dark);
    --dr-featured-box-border-color: var(--dr-danger-light);
    --dr-featured-box-bg-color: var(--dr-danger-light);
    --dr-featured-box-heading-color: var(--dr-);
    --dr-featured-box-paragraph-color: var(--dr-);
}

*/

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Page Elements ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  P
-----------------------------------------------------------------*/




/* ----------------------------------------------------------------
  Badges
-----------------------------------------------------------------*/

.badge {
    display: inline-block;
    padding: var(--dr-badge-padding-y) var(--dr-badge-padding-x);
    font-size: var(--dr-aspect-ratio-badge-font-size);
    font-weight: var(--dr-badge-font-weight);
    line-height: 1;
    color: var(--dr-badge-color);
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: var(--dr-badge-border-radius);
}

.badge:empty {
    display: none;
}

.btn .badge,
.button .badge {
    position: relative;
    top: -1px;
}











/* ----------------------------------------------------------------
  Page Title
-----------------------------------------------------------------*/
#page-title,
.page-title {
    position: relative;
    padding: var(--dr-page-title-padding) 0;
    background-color: var(--dr-page-title-bg);
    border-bottom: 1px solid var(--dr-page-title-border-color);
}

@media (max-width: 767.98px) {

    #page-title,
    .page-title {
        --dr-page-title-padding: 3rem;
        text-align: center;
    }
}

.page-title-row {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

@media (min-width: 768px) {
    .page-title-row {
        flex-direction: row;
        justify-content: space-between;
        align-items: end;
    }
}

.page-title-content {
    text-align: center;
}

@media (min-width: 768px) {
    .page-title-content {
        text-align: left;
    }
}

.page-title-content h1,
.page-title-content .h1 {
    padding: 0;
    margin: 0;
    line-height: 1;
    font-weight: var(--dr-page-title-font-weight);
    color: var(--dr-page-title-color);
    font-size: var(--dr-page-title-font-size);
    letter-spacing: var(--dr-page-title-spacing);
}

@media (max-width: 767.98px) {

    .page-title-content h1,
    .page-title-content .h1 {
        font-size: calc(1.5rem + 1.25vw);
        line-height: 1.5;
    }
}

.page-title-content span {
    display: block;
    margin-top: 1rem;
    color: var(--dr-page-title-subtitle-color);
    font-size: var(--dr-page-title-subtitle-size);
}




/* ----------------------------------------------------------------
  Lazy Loading
-----------------------------------------------------------------*/
.lazy {
    opacity: 0;
}

.lazy:not(.initial) {
    transition: opacity 1s;
}

@media (prefers-reduced-motion: reduce) {
    .lazy:not(.initial) {
        transition: none;
    }
}

.lazy.initial,
.lazy-loaded,
.lazy-error {
    opacity: 1;
}

img.lazy {
    max-width: 100%;
    height: auto;
}

img.lazy:not([src]) {
    visibility: hidden;
}

/* ----------------------------------------------------------------
  Progress Bar
-----------------------------------------------------------------*/

@keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem;
    }
}


.progress,
.progress-stacked {
    display: flex;
    height: var(--dr-progress-height);
    overflow: hidden;
    font-size: var(--dr-progress-font-size);
    background-color: var(--dr-progress-bg);
    border-radius: var(--dr-progress-border-radius);
}

.progress-bar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    color: var(--dr-progress-bar-color);
    text-align: center;
    white-space: nowrap;
    background-color: var(--dr-progress-bar-bg);
    transition: var(--dr-progress-bar-transition);
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar {
        transition: none;
    }
}

.progress-bar-striped {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-size: var(--dr-progress-height) var(--dr-progress-height);
}

.progress-stacked>.progress {
    overflow: visible;
}

.progress-stacked>.progress>.progress-bar {
    width: 100%;
}

.progress-bar-animated {
    animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
        animation: none;
    }
}

/* ----------------------------------------------------------------
  Horizontal Line
-----------------------------------------------------------------*/

.line,
.double-line {
    clear: both;
    position: relative;
    width: 100%;
    margin: var(--dr-section-margin) 0;
    border-top: 1px solid var(--dr-border-color);
}

.line.line-sm {
    margin: calc(var(--dr-section-margin) * 0.5) 0;
}

span.middot {
    display: inline-block;
    margin: 0 5px;
}

.double-line {
    border-top: 3px double rgba(var(--dr-border-color), 0.1);
}

/* ----------------------------------------------------------------
  Quotes & Blockquotes
-----------------------------------------------------------------*/

blockquote,
.blockquote {
    padding: 10px 20px;
    margin: 0 0 20px;
    font-family: var(--dr-secondary-font);
    font-size: var(--dr-font-size-h4);
    border-left: 5px solid var(--dr-light-dark-light);
}

blockquote p,
.blockquote p {
    color: var(--dr-primary-light);
}

/* .blockquote > :last-child {
  margin-bottom: 0;
} */

.blockquote-footer {
    font-family: var(--dr-secondary-font);
    margin-top: -1rem;
    margin-bottom: 0;
    font-size: 0.875em;
    color: var(--dr-light-dark-light);
}

blockquote.float-start {
    max-width: 300px;
    margin: 5px 20px 10px 0;
    padding-right: 0;
}

blockquote.float-end {
    max-width: 300px;
    margin: 5px 0 10px 20px;
    padding-left: 0;
}

.blockquote-reverse {
    padding-right: 15px;
    padding-left: 0;
    border-right: 5px solid var(--dr-light-dark-light);
    border-left: 0;
    text-align: right;
}

.blockquote-icon>* {
    position: absolute;
    left: -1.125rem;
    top: -3px;
    width: 1.75rem;
    height: 1.75rem;
    z-index: 1;
}

.blockquote-icon>*:nth-child(2) {
    margin-left: 0.5rem;
    opacity: 0.4;
    z-index: 0;
}

.quote {
    border: none !important;
    position: relative;
}

.quote p {
    position: relative;
    text-align: center;
    z-index: 10;
}

.quote::before,
.quote::after {
    font-family: "Font Awesome 6 Pro";
    display: inline-flex;
    align-self: center;
    justify-self: center;
    line-height: inherit;
    position: absolute;
    width: var(--dr-quote-icon-size);
    height: var(--dr-quote-icon-size);
    line-height: var(--dr-quote-icon-size);
    font-size: calc(var(--dr-quote-icon-size) - 6px);
    color: var(--dr-mid-light-dark);
}

.quote::before {
    content: "\f10d";
    top: -24px;
    left: 0;
}

.quote::after {
    content: "\f10e";
    bottom: 10px;
    right: 0;
}

.quote.reverse .blockquote-footer {
    text-align: right;
    margin-right: calc(var(--dr-quote-icon-size) - 6px);
}

/* ----------------------------------------------------------------
  Code Block
-----------------------------------------------------------------*/
/* create variables */

.codeblock-container figure {
    position: relative;
}

.codeblock-container figcaption {
    position: absolute;
    top: 1.3rem;
    left: 1.3rem;
    font-size: small;
}

.codeblock-container pre>code {
    display: block;
    padding: 1rem;
    padding-top: 2.5rem;
    font-size: 80%;
    word-wrap: normal;
}

/* PrismJS 1.29.0
https://prismjs.com/download.html#themes=prism-tomorrow&languages=markup+css+clike+javascript+dart+docker+markdown+nginx+python+sql */
code[class*=language-],
pre[class*=language-] {
    color: #e4dcc9;
    background: 0 0;
    font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
    /* font-family: var(--dr-monospace-font); */
    font-size: 1em;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    line-height: 1.5;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}

pre[class*="language-"] {
    padding: 1em;
    margin: 0.5em 0;
    overflow: auto;
}

:not(pre)>code[class*="language-"],
pre[class*="language-"] {
    background: #0f1114;
}

:not(pre)>code[class*="language-"] {
    padding: 0.1em;
    border-radius: 0.3em;
    white-space: normal;
}

/* need to do theme colour variables */
.token.block-comment,
.token.cdata,
.token.comment,
.token.doctype,
.token.prolog {
    color: #999;
}

.token.punctuation {
    color: #e4dcc9;
}

.token.attr-name,
.token.deleted,
.token.namespace,
.token.tag {
    color: #e2777a;
}

.token.function-name {
    color: #6196cc;
}

.token.boolean,
.token.function,
.token.number {
    color: #f08d49;
}

.token.class-name,
.token.constant,
.token.property,
.token.symbol {
    color: #f8c555;
}

.token.atrule,
.token.builtin,
.token.important,
.token.keyword,
.token.selector {
    color: #cc99cd;
}

.token.attr-value,
.token.char,
.token.regex,
.token.string,
.token.variable {
    color: #7ec699;
}

.token.entity,
.token.operator,
.token.url {
    color: #67cdcc;
}

.token.bold,
.token.important {
    font-weight: 700;
}

.token.italic {
    font-style: italic;
}

.token.entity {
    cursor: help;
}

.token.inserted {
    color: green;
}

/* ----------------------------------------------------------------
  List Groups
-----------------------------------------------------------------*/

.list-group {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    border-radius: var(--dr-list-group-border-radius);
}

.list-group-numbered {
    list-style-type: none;
    counter-reset: section;
}

.list-group-numbered>.list-group-item::before {
    content: counters(section, ".") ". ";
    counter-increment: section;
}

.list-group-item-action {
    width: 100%;
    color: var(--dr-list-group-action-color);
    text-align: inherit;
    cursor: pointer;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
    z-index: 1;
    color: var(--dr-list-group-action-hover-color);
    text-decoration: none;
    background-color: var(--dr-list-group-action-hover-bg);
}

.list-group-item-action:active {
    color: var(--dr-list-group-action-active-color);
    background-color: var(--dr-list-group-action-active-bg);
}

.list-group-item {
    position: relative;
    display: block;
    padding: var(--dr-list-group-item-padding-y) var(--dr-list-group-item-padding-x);
    color: var(--dr-list-group-color);
    text-decoration: none;
    background-color: var(--dr-list-group-bg);
    border: var(--dr-list-group-border-width) solid var(--dr-list-group-border-color);
}

.list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
}

.list-group-item.disabled,
.list-group-item:disabled {
    color: var(--dr-list-group-disabled-color);
    pointer-events: none;
    text-decoration: line-through;
    background-color: var(--dr-list-group-disabled-bg);
}

.list-group-item.active {
    z-index: 2;
    color: var(--dr-list-group-active-color);
    background-color: var(--dr-list-group-active-bg);
    border-color: var(--dr-list-group-active-border-color);
}

.list-group-item+.list-group-item {
    border-top-width: 0;
}

.list-group-item+.list-group-item.active {
    margin-top: calc(-1 * var(--dr-list-group-border-width));
    border-top-width: var(--dr-list-group-border-width);
}

.list-group-horizontal {
    flex-direction: row;
}

.list-group-horizontal>.list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--dr-list-group-border-radius);
    border-top-right-radius: 0;
}

.list-group-horizontal>.list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--dr-list-group-border-radius);
    border-bottom-left-radius: 0;
}

.list-group-horizontal>.list-group-item.active {
    margin-top: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item {
    border-top-width: var(--dr-list-group-border-width);
    border-left-width: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item.active {
    margin-left: calc(-1 * var(--dr-list-group-border-width));
    border-left-width: var(--dr-list-group-border-width);
}

@media (min-width: 576px) {
    .list-group-horizontal-sm {
        flex-direction: row;
    }

    .list-group-horizontal-sm>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--dr-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-sm>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--dr-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-sm>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-sm>.list-group-item+.list-group-item {
        border-top-width: var(--dr-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-sm>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--dr-list-group-border-width));
        border-left-width: var(--dr-list-group-border-width);
    }
}

@media (min-width: 768px) {
    .list-group-horizontal-md {
        flex-direction: row;
    }

    .list-group-horizontal-md>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--dr-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-md>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--dr-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-md>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-md>.list-group-item+.list-group-item {
        border-top-width: var(--dr-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-md>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--dr-list-group-border-width));
        border-left-width: var(--dr-list-group-border-width);
    }
}

@media (min-width: 992px) {
    .list-group-horizontal-lg {
        flex-direction: row;
    }

    .list-group-horizontal-lg>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--dr-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-lg>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--dr-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-lg>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-lg>.list-group-item+.list-group-item {
        border-top-width: var(--dr-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-lg>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--dr-list-group-border-width));
        border-left-width: var(--dr-list-group-border-width);
    }
}

@media (min-width: 1200px) {
    .list-group-horizontal-xl {
        flex-direction: row;
    }

    .list-group-horizontal-xl>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--dr-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-xl>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--dr-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-xl>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-xl>.list-group-item+.list-group-item {
        border-top-width: var(--dr-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-xl>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--dr-list-group-border-width));
        border-left-width: var(--dr-list-group-border-width);
    }
}

@media (min-width: 1400px) {
    .list-group-horizontal-xxl {
        flex-direction: row;
    }

    .list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child) {
        border-bottom-left-radius: var(--dr-list-group-border-radius);
        border-top-right-radius: 0;
    }

    .list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child) {
        border-top-right-radius: var(--dr-list-group-border-radius);
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-xxl>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-xxl>.list-group-item+.list-group-item {
        border-top-width: var(--dr-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-xxl>.list-group-item+.list-group-item.active {
        margin-left: calc(-1 * var(--dr-list-group-border-width));
        border-left-width: var(--dr-list-group-border-width);
    }
}

.list-group-flush {
    border-radius: 0;
}

.list-group-flush>.list-group-item {
    border-width: 0 0 var(--dr-list-group-border-width);
}

.list-group-flush>.list-group-item:last-child {
    border-bottom-width: 0;
}

.list-group-item-mid-dark {
    --dr-list-group-color: var(--dr-light);
    --dr-list-group-bg: var(--dr-mid-dark);
    --dr-list-group-border-color: var(--dr-mid-dark);
    --dr-list-group-action-hover-color: var(--dr-light);
    --dr-list-group-action-hover-bg: var(--dr-mid-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-mid-dark);
    --dr-list-group-active-color: var(--dr-primary-bg-subtle);
    --dr-list-group-active-bg: var(--dr-mid-dark);
    --dr-list-group-active-border-color: var(--dr-primary-text-emphasis);
}

.list-group-item-mid-light-dark {
    --dr-list-group-color: var(--dr-light);
    --dr-list-group-bg: var(--dr-mid-light-dark);
    --dr-list-group-border-color: var(--dr-mid-light-dark);
    --dr-list-group-action-hover-color: var(--dr-light);
    --dr-list-group-action-hover-bg: var(--dr-mid-light-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-mid-light-dark);
    --dr-list-group-active-color: var(--dr-primary-bg-subtle);
    --dr-list-group-active-bg: var(--dr-mid-light-dark);
    --dr-list-group-active-border-color: var(--dr-primary-text-emphasis);
}

.list-group-item-light-dark {
    --dr-list-group-color: var(--dr-light);
    --dr-list-group-bg: var(--dr-light-dark);
    --dr-list-group-border-color: var(--dr-light-dark);
    --dr-list-group-action-hover-color: var(--dr-light);
    --dr-list-group-action-hover-bg: var(--dr-light-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-slight-dark);
    --dr-list-group-active-color: var(--dr-bg-muted-subtle);
    --dr-list-group-active-bg: var(--dr-light-dark);
    --dr-list-group-active-border-color: var(--dr-secondary-text-emphasis);
}

.list-group-item-mid-dark-light {
    --dr-list-group-color: var(--dr-light);
    --dr-list-group-bg: var(--dr-mid-dark-light);
    --dr-list-group-border-color: var(--dr-mid-dark-light);
    --dr-list-group-action-hover-color: var(--dr-light);
    --dr-list-group-action-hover-bg: var(--dr-mid-dark-light-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-mid-dark-light);
    --dr-list-group-active-color: var(--dr-success-bg-subtle);
    --dr-list-group-active-bg: var(--dr-success-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-success-text-emphasis);
}

.list-group-item-mid-light-dark-light {
    --dr-list-group-color: var(--dr-light);
    --dr-list-group-bg: var(--dr-mid-light-dark-light);
    --dr-list-group-border-color: var(--dr-mid-light-dark-light);
    --dr-list-group-action-hover-color: var(--dr-light);
    --dr-list-group-action-hover-bg: var(--dr-mid-light-dark-light-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-mid-light-dark-light);
    --dr-list-group-active-color: var(--dr-info-bg-subtle);
    --dr-list-group-active-bg: var(--dr-mid-light-dark-light);
    --dr-list-group-active-border-color: var(--dr-info-text-emphasis);
}

.list-group-item-light-dark-light {
    --dr-list-group-color: var(--dr-light);
    --dr-list-group-bg: var(--dr-light-dark-light);
    --dr-list-group-border-color: var(--dr-light-dark-light);
    --dr-list-group-action-hover-color: var(--dr-light);
    --dr-list-group-action-hover-bg: var(--dr-light-dark-light-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-warning-border-subtle);
    --dr-list-group-active-color: var(--dr-warning-bg-subtle);
    --dr-list-group-active-bg: var(--dr-light-dark-light);
    --dr-list-group-active-border-color: var(--dr-warning-text-emphasis);
}

.list-group-item-primary-dark {
    --dr-list-group-color: var(--dr-primary-light);
    --dr-list-group-bg: var(--dr-primary-dark);
    --dr-list-group-border-color: var(--dr-primary-dark);
    --dr-list-group-action-hover-color: var(--dr-primary-light);
    --dr-list-group-action-hover-bg: var(--dr-primary-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-danger-border-subtle);
    --dr-list-group-active-color: var(--dr-danger-bg-subtle);
    --dr-list-group-active-bg: var(--dr-danger-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-danger-text-emphasis);
}

.list-group-item-primary {
    --dr-list-group-color: var(--dr-primary-light);
    --dr-list-group-bg: var(--dr-primary);
    --dr-list-group-border-color: var(--dr-primary);
    --dr-list-group-action-hover-color: var(--dr-primary-light);
    --dr-list-group-action-hover-bg: var(--dr-primary-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-light-border-subtle);
    --dr-list-group-active-color: var(--dr-light-bg-subtle);
    --dr-list-group-active-bg: var(--dr-light-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-light-text-emphasis);
}

.list-group-item-secondary-dark {
    --dr-list-group-color: var(--dr-secondary-light);
    --dr-list-group-bg: var(--dr-secondary-dark);
    --dr-list-group-border-color: var(--dr-secondary-dark);
    --dr-list-group-action-hover-color: var(--dr-secondary-light);
    --dr-list-group-action-hover-bg: var(--dr-secondary-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-dark-border-subtle);
    --dr-list-group-active-color: var(--dr-dark-bg-subtle);
    --dr-list-group-active-bg: var(--dr-dark-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-dark-text-emphasis);
}

.list-group-item-secondary {
    --dr-list-group-color: var(--dr-secondary-light);
    --dr-list-group-bg: var(--dr-secondary);
    --dr-list-group-border-color: var(--dr-secondary);
    --dr-list-group-action-hover-color: var(--dr-secondary-light);
    --dr-list-group-action-hover-bg: var(--dr-secondary-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-primary-border-subtle);
    --dr-list-group-active-color: var(--dr-primary-bg-subtle);
    --dr-list-group-active-bg: var(--dr-primary-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-primary-text-emphasis);
}

.list-group-item-tertiary-dark {
    --dr-list-group-color: var(--dr-tertiary-light);
    --dr-list-group-bg: var(--dr-tertiary-dark);
    --dr-list-group-border-color: var(--dr-tertiary-dark);
    --dr-list-group-action-hover-color: var(--dr-tertiary-light);
    --dr-list-group-action-hover-bg: var(--dr-tertiary-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-primary-border-subtle);
    --dr-list-group-active-color: var(--dr-primary-bg-subtle);
    --dr-list-group-active-bg: var(--dr-primary-dark);
    --dr-list-group-active-border-color: var(--dr-primary-text-emphasis);
}

.list-group-item-tertiary {
    --dr-list-group-color: var(--dr-tertiary-light);
    --dr-list-group-bg: var(--dr-tertiary);
    --dr-list-group-border-color: var(--dr-tertiary);
    --dr-list-group-action-hover-color: var(--dr-tertiary-light);
    --dr-list-group-action-hover-bg: var(--dr-tertiary-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-primary-border-subtle);
    --dr-list-group-active-color: var(--dr-primary-bg-subtle);
    --dr-list-group-active-bg: var(--dr-primary-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-primary-text-emphasis);
}

.list-group-item-success-dark {
    --dr-list-group-color: var(--dr-success-light);
    --dr-list-group-bg: var(--dr-success-dark);
    --dr-list-group-border-color: var(--dr-success-dark);
    --dr-list-group-action-hover-color: var(--dr-success-light);
    --dr-list-group-action-hover-bg: var(--dr-success-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-secondary-border-subtle);
    --dr-list-group-active-color: var(--dr-bg-muted-subtle);
    --dr-list-group-active-bg: var(--dr-secondary-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-secondary-text-emphasis);
}

.list-group-item-success {
    --dr-list-group-color: var(--dr-success-light);
    --dr-list-group-bg: var(--dr-success);
    --dr-list-group-border-color: var(--dr-success);
    --dr-list-group-action-hover-color: var(--dr-success-light);
    --dr-list-group-action-hover-bg: var(--dr-success-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-success-border-subtle);
    --dr-list-group-active-color: var(--dr-success-bg-subtle);
    --dr-list-group-active-bg: var(--dr-success-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-success-text-emphasis);
}

.list-group-item-info-dark {
    --dr-list-group-color: var(--dr-info-light);
    --dr-list-group-bg: var(--dr-info-dark);
    --dr-list-group-border-color: var(--dr-info-dark);
    --dr-list-group-action-hover-color: var(--dr-info-light);
    --dr-list-group-action-hover-bg: var(--dr-info-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-info-border-subtle);
    --dr-list-group-active-color: var(--dr-info-bg-subtle);
    --dr-list-group-active-bg: var(--dr-info-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-info-text-emphasis);
}

.list-group-item-info {
    --dr-list-group-color: var(--dr-info-light);
    --dr-list-group-bg: var(--dr-info);
    --dr-list-group-border-color: var(--dr-info);
    --dr-list-group-action-hover-color: var(--dr-info-light);
    --dr-list-group-action-hover-bg: var(--dr-info-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-warning-border-subtle);
    --dr-list-group-active-color: var(--dr-warning-bg-subtle);
    --dr-list-group-active-bg: var(--dr-warning-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-warning-text-emphasis);
}

.list-group-item-warning-dark {
    --dr-list-group-color: var(--dr-warning-light);
    --dr-list-group-bg: var(--dr-warning-dark);
    --dr-list-group-border-color: var(--dr-warning-dark);
    --dr-list-group-action-hover-color: var(--dr-warning-light);
    --dr-list-group-action-hover-bg: var(--dr-warning-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-danger-border-subtle);
    --dr-list-group-active-color: var(--dr-danger-bg-subtle);
    --dr-list-group-active-bg: var(--dr-danger-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-danger-text-emphasis);
}

.list-group-item-warning {
    --dr-list-group-color: var(--dr-warning-light);
    --dr-list-group-bg: var(--dr-warning);
    --dr-list-group-border-color: var(--dr-warning);
    --dr-list-group-action-hover-color: var(--dr-warning-light);
    --dr-list-group-action-hover-bg: var(--dr-warning-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-light-border-subtle);
    --dr-list-group-active-color: var(--dr-light-bg-subtle);
    --dr-list-group-active-bg: var(--dr-light-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-light-text-emphasis);
}

.list-group-item-danger-dark {
    --dr-list-group-color: var(--dr-danger-light);
    --dr-list-group-bg: var(--dr-danger-dark);
    --dr-list-group-border-color: var(--dr-danger-dark);
    --dr-list-group-action-hover-color: var(--dr-danger-light);
    --dr-list-group-action-hover-bg: var(--dr-danger-dark-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-dark-border-subtle);
    --dr-list-group-active-color: var(--dr-dark-bg-subtle);
    --dr-list-group-active-bg: var(--dr-dark-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-dark-text-emphasis);
}

.list-group-item-danger {
    --dr-list-group-color: var(--dr-danger-light);
    --dr-list-group-bg: var(--dr-danger);
    --dr-list-group-border-color: var(--dr-danger);
    --dr-list-group-action-hover-color: var(--dr-danger-light);
    --dr-list-group-action-hover-bg: var(--dr-danger-h);
    --dr-list-group-action-active-color: var(--dr-emphasis-color);
    --dr-list-group-action-active-bg: var(--dr-primary-border-subtle);
    --dr-list-group-active-color: var(--dr-primary-bg-subtle);
    --dr-list-group-active-bg: var(--dr-primary-text-emphasis);
    --dr-list-group-active-border-color: var(--dr-primary-text-emphasis);
}

/* ----------------------------------------------------------------
  Tooltip
-----------------------------------------------------------------*/

.tooltip {
    z-index: var(--bs-tooltip-zindex);
    display: block;
    margin: var(--bs-tooltip-margin);
    font-family: var(--dr-primary-font);
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    white-space: normal;
    word-spacing: normal;
    line-break: auto;
    font-size: var(--bs-tooltip-font-size);
    word-wrap: break-word;
    opacity: 0;
}

.tooltip.show {
    opacity: var(--bs-tooltip-opacity);
}

.tooltip .tooltip-arrow {
    display: block;
    width: var(--bs-tooltip-arrow-width);
    height: var(--bs-tooltip-arrow-height);
}

.tooltip .tooltip-arrow::before {
    position: absolute;
    content: "";
    border-color: transparent;
    border-style: solid;
}

.bs-tooltip-top .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
    bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}

.bs-tooltip-top .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
    top: -1px;
    border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
    border-top-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-end .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
    left: calc(-1 * var(--bs-tooltip-arrow-height));
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

.bs-tooltip-end .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
    right: -1px;
    border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
    border-right-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.bs-tooltip-bottom .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
    top: calc(-1 * var(--bs-tooltip-arrow-height));
}

.bs-tooltip-bottom .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
    bottom: -1px;
    border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
    border-bottom-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-start .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
    right: calc(-1 * var(--bs-tooltip-arrow-height));
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

.bs-tooltip-start .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
    left: -1px;
    border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
    border-left-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.tooltip-inner {
    max-width: var(--bs-tooltip-max-width);
    padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
    color: var(--bs-tooltip-color);
    text-align: center;
    background-color: var(--bs-tooltip-bg);
    border-radius: var(--bs-tooltip-border-radius);
}


















/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Tables ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
  Basic Table Styles
-----------------------------------------------------------------*/

.table {
    width: 100%;
    margin-bottom: 1rem;
    vertical-align: top;
    border-color: var(--dr-table-border-color);
}

.table> :not(caption)>*>* {
    padding: 0.5rem 0.5rem;
    color: var(--dr-table-color-state, var(--dr-table-color-type, var(--dr-table-color)));
    background-color: var(--dr-table-bg);
    border-bottom-width: var(--dr-border-width);
    box-shadow: inset 0 0 0 9999px var(--dr-table-bg-state, var(--dr-table-bg-type, var(--dr-table-accent-bg)));
}

.table>tbody {
    vertical-align: inherit;
}

.table>thead {
    vertical-align: bottom;
}

.table-group-divider {
    border-top: calc(var(--dr-border-width) * 2) solid currentcolor;
}

.caption-top {
    caption-side: top;
}

.table-sm> :not(caption)>*>* {
    padding: 0.25rem 0.25rem;
}

.table-bordered> :not(caption)>* {
    border-width: var(--dr-border-width) 0;
}

.table-bordered> :not(caption)>*>* {
    border-width: 0 var(--dr-border-width);
}

.table-borderless> :not(caption)>*>* {
    border-bottom-width: 0;
}

.table-borderless> :not(:first-child) {
    border-top-width: 0;
}

.table-striped>tbody>tr:nth-of-type(odd)>* {
    --dr-table-color-type: var(--dr-table-striped-color);
    --dr-table-bg-type: var(--dr-table-striped-bg);
}

.table-striped-columns> :not(caption)>tr> :nth-child(even) {
    --dr-table-color-type: var(--dr-table-striped-color);
    --dr-table-bg-type: var(--dr-table-striped-bg);
}

.table-active {
    --dr-table-color-state: var(--dr-table-active-color);
    --dr-table-bg-state: var(--dr-table-active-bg);
}

.table-hover>tbody>tr:hover>* {
    --dr-table-color-state: var(--dr-table-hover-color);
    --dr-table-bg-state: var(--dr-table-hover-bg);
}

/* ----------------------------------------------------------------
  Tables Responsive
-----------------------------------------------------------------*/

.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 575.98px) {
    .table-responsive-sm {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 767.98px) {
    .table-responsive-md {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 991.98px) {
    .table-responsive-lg {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 1199.98px) {
    .table-responsive-xl {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 1399.98px) {
    .table-responsive-xxl {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* ----------------------------------------------------------------
  Table Colours
-----------------------------------------------------------------*/




/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Forms ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/











/* ----------------------------------------------------------------
  Focus Rings
-----------------------------------------------------------------*/

/* need to do grey colours? */

.focus-ring:focus {
    outline: 0;
    box-shadow: var(--dr-focus-ring-x, 0) var(--dr-focus-ring-y, 0) var(--dr-focus-ring-blur, 0) var(--dr-focus-ring-width) var(--dr-focus-ring-color);
}

/* Light */
.focus-ring-light {
    --dr-focus-ring-color: rgba(var(--dr-light-rgb), var(--dr-focus-ring-opacity));
}

/* Dark */
.focus-ring-dark {
    --dr-focus-ring-color: rgba(var(--dr-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Mid Dark */
.focus-ring-mid-dark {
    --dr-focus-ring-color: rgba(var(--dr-mid-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Mid Light Dark */
.focus-ring-light-dark {
    --dr-focus-ring-color: rgba(var(--dr-light-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Light Dark */
.focus-ring-light-dark {
    --dr-focus-ring-color: rgba(var(--dr-light-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Mid Dark Light */
.focus-ring-dark-light {
    --dr-focus-ring-color: rgba(var(--dr-dark-light-rgb), var(--dr-focus-ring-opacity));
}

/* Mid Light Dark Light */
.focus-ring-mid-light-dark-light {
    --dr-focus-ring-color: rgba(var(--dr-mid-light-dark-light-rgb), var(--dr-focus-ring-opacity));
}

/* Light Dark Light */
.focus-ring-dark-light {
    --dr-focus-ring-color: rgba(var(--dr-dark-light-rgb), var(--dr-focus-ring-opacity));
}

/* Primary Dark */
.focus-ring-primary-dark {
    --dr-focus-ring-color: rgba(var(--dr-primary-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Primary */
.focus-ring-primary {
    --dr-focus-ring-color: rgba(var(--dr-primary-rgb), var(--dr-focus-ring-opacity));
}

/* Primary Mid Light */
.focus-ring-primary-mid-light {
    --dr-focus-ring-color: rgba(var(--dr-primary-mid-light-rgb), var(--dr-focus-ring-opacity));
}

/* Primary Light */
.focus-ring-primary-light {
    --dr-focus-ring-color: rgba(var(--dr-primary-light-rgb), var(--dr-focus-ring-opacity));
}

/* Secomdary Dark */
.focus-ring-secondary-dark {
    --dr-focus-ring-color: rgba(var(--dr-secondary-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Secomdary */
.focus-ring-secondary {
    --dr-focus-ring-color: rgba(var(--dr-secondary-rgb), var(--dr-focus-ring-opacity));
}

/* Secomdary Mid Light */
.focus-ring-secondary-mid-light {
    --dr-focus-ring-color: rgba(var(--dr-secondary-mid-light-rgb), var(--dr-focus-ring-opacity));
}

/* Secomdary Light */
.focus-ring-secondary-light {
    --dr-focus-ring-color: rgba(var(--dr-secondary-light-rgb), var(--dr-focus-ring-opacity));
}

/* Tertiary Dark */
.focus-ring-tertiary-dark {
    --dr-focus-ring-color: rgba(var(--dr-tertiary-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Tertiary */
.focus-ring-tertiary {
    --dr-focus-ring-color: rgba(var(--dr-tertiary-rgb), var(--dr-focus-ring-opacity));
}

/* Tertiary Mid Light */
.focus-ring-tertiary-mid-light {
    --dr-focus-ring-color: rgba(var(--dr-tertiary-mid-light-rgb), var(--dr-focus-ring-opacity));
}

/* Tertiary Light */
.focus-ring-tertiary-light {
    --dr-focus-ring-color: rgba(var(--dr-tertiary-light-rgb), var(--dr-focus-ring-opacity));
}

/* Success Dark */
.focus-ring-success-dark {
    --dr-focus-ring-color: rgba(var(--dr-success-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Success */
.focus-ring-success {
    --dr-focus-ring-color: rgba(var(--dr-success-rgb), var(--dr-focus-ring-opacity));
}

/* Success Mid Light */
.focus-ring-success-mid-light {
    --dr-focus-ring-color: rgba(var(--dr-success-mid-light-rgb), var(--dr-focus-ring-opacity));
}

/* Success Light */
.focus-ring-success-light {
    --dr-focus-ring-color: rgba(var(--dr-success-light-rgb), var(--dr-focus-ring-opacity));
}

/* Info Dark */
.focus-ring-info-dark {
    --dr-focus-ring-color: rgba(var(--dr-info-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Info */
.focus-ring-info {
    --dr-focus-ring-color: rgba(var(--dr-info-rgb), var(--dr-focus-ring-opacity));
}

/* Info Mid Light */
.focus-ring-info-mid-light {
    --dr-focus-ring-color: rgba(var(--dr-info-mid-light-rgb), var(--dr-focus-ring-opacity));
}

/* info Light */
.focus-ring-info-light {
    --dr-focus-ring-color: rgba(var(--dr-info-light-rgb), var(--dr-focus-ring-opacity));
}

/* Warning Dark */
.focus-ring-warning-dark {
    --dr-focus-ring-color: rgba(var(--dr-warning-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Warning */
.focus-ring-warning {
    --dr-focus-ring-color: rgba(var(--dr-warning-rgb), var(--dr-focus-ring-opacity));
}

/* Warning Mid Light */
.focus-ring-warning-mid-light {
    --dr-focus-ring-color: rgba(var(--dr-warning-rgb), var(--dr-focus-ring-opacity));
}

/* Warning Light */
.focus-ring-warning-light {
    --dr-focus-ring-color: rgba(var(--dr-warning-light-rgb), var(--dr-focus-ring-opacity));
}

/* Danger Dark */
.focus-ring-danger-dark {
    --dr-focus-ring-color: rgba(var(--dr-danger-dark-rgb), var(--dr-focus-ring-opacity));
}

/* Danger */
.focus-ring-danger {
    --dr-focus-ring-color: rgba(var(--dr-danger-rgb), var(--dr-focus-ring-opacity));
}

/* Danger Mid Light */
.focus-ring-danger-mid-light {
    --dr-focus-ring-color: rgba(var(--dr-danger-mid-light-rgb), var(--dr-focus-ring-opacity));
}

/* Danger Light */
.focus-ring-danger-light {
    --dr-focus-ring-color: rgba(var(--dr-danger-light-rgb), var(--dr-focus-ring-opacity));
}

/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Buttons ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/
.button,
.btn {
    display: inline-block;
    position: relative;
    cursor: pointer;
    outline: none;
    white-space: nowrap;
    margin: 5px;
    padding: var(--dr-btn-padding-y) var(--dr-btn-padding-x);
    font-size: var(--dr-btn-fontsize);
    line-height: var(--dr-btn-lineheight);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    user-select: none;
    background-color: var(--dr-btn-bg-color);
    color: var(--dr-btn-txt-color);
    font-weight: 500;
    border: var(--dr-btn-border-width) solid transparent;
    transition: all 0.2s ease-in-out;
}

.button-icon {
    padding: var(--dr-btn-padding-y) var(--dr-btn-padding-y);
}

.button:hover,
.button-success:hover {
    background-color: var(--dr-btn-hover-bg);
    color: var(--dr-btn-txt-color);
    transition: all 0.2s ease-in-out;
}

.btn:hover {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
}

@media (prefers-reduced-motion: reduce) {

    .button,
    .btn {
        transition: none;
    }
}

/* .button, .btn[class*=bg-opacity-] {
  --dr-btn-bg-color: rgba(var(--dr-themecolor-rgb),var(--bs-bg-opacity, 1));
} */

.button i {
    position: relative;
    margin-right: 10px;
    width: 1rem;
    text-align: center;
}

.button.text-end i {
    margin: 0 0 0 10px;
}

@media (prefers-reduced-motion: reduce) {
    .button {
        transition: none;
    }
}

.button-icon i {
    margin-right: 0;
}

.button:hover,
.button-success:hover {
    background-color: var(--dr-btn-hover-bg);
    color: ;
}

.btn:hover {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
}




/* .button.button-dark:hover {
  background-color: var(--dr-btn-bg-color); */
}

.button-desc {
    text-align: left;
    font-family: var(--dr-body-font);
    font-weight: 500;
}

.button-desc span {
    display: block;
    margin-top: 0.75rem;
    font-size: 0.875rem;
    font-weight: 400;
    font-family: var(--dr-secondary-font);
    text-transform: none;
}

.button-desc i {
    font-size: 3.4285714286rem;
    width: 3.4285714286rem;
    text-align: center;
    margin-right: 12px;
}

.button-desc.text-end i {
    margin: 0 0 0 12px;
}

.button-desc div {
    display: inline-block;
}

.button-rounded {
    border-radius: var(--dr-btn-round-size);
}



.button.button-border {
    border: var(--dr-btn-border-width) solid var(--dr-btn-border-color);
    background: transparent;
    color: var(--dr-btn-border-color);
}

.button.button-border:hover {
    color: var(--dr-btn-txt-color);
}

.button.button-border.button-desc {
    line-height: 1;
}

.button.button-border:not(.button-fill):hover {
    background-color: var(--dr-btn-bg-color);

    border-color: transparent !important;
}

.button.button-border.button-border-thin {
    border-width: var(--dr-btn-border-thin-width);
}

.button.button-border.button-border-thick {
    border-width: var(--dr-btn-border-thick-width);
}



/* Buttons - 3D
-----------------------------------------------------------------*/
.button.button-3d {
    border-radius: 0.25rem;
    box-shadow: inset -4px -4px 0 rgba(0, 0, 0, 0.30);
    border: 0 !important;
    transition: all 0.2s ease-in-out;
}

.button.button-3d:hover {
    transition: all 0.2s ease-in-out;

}

/* Buttons - Icon Reveal
-----------------------------------------------------------------*/
.button.button-reveal {
    padding-left: 28px;
    padding-right: 28px;
    overflow: hidden;
}

.button.button-reveal i {
    display: block;
    position: absolute;
    top: 0;
    left: -32px;
    width: 32px;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    /* background-color: rgba(0, 0, 0, 0.1); */
}

.button.button-reveal.button-border i {
    top: -2px;
    height: calc(100% + var(--dr-btn-border-width) * 2);
}

.button.button-reveal.text-end i {
    left: auto;
    right: -32px;
}

.button.button-reveal span {
    display: inline-block;
    position: relative;
    left: 0;
}

.button.button-reveal.button-mini {
    padding-left: 17px;
    padding-right: 17px;
}

.button.button-reveal.button-mini i {
    left: -22px;
    width: 22px;
}

.button.button-reveal.button-mini.text-end i {
    left: auto;
    right: -22px;
}

.button.button-reveal.button-mini:hover span {
    left: 11px;
}

.button.button-reveal.button-mini.text-end:hover span {
    left: -11px;
}

.button.button-reveal.button-small {
    padding-left: 20px;
    padding-right: 20px;
}

.button.button-reveal.button-small i {
    left: -26px;
    width: 26px;
}

.button.button-reveal.button-small.text-end i {
    left: auto;
    right: -26px;
}

.button.button-reveal.button-small:hover span {
    left: 13px;
}

.button.button-reveal.button-small.text-end:hover span {
    left: -13px;
}

.button.button-reveal.button-large {
    padding-left: 32px;
    padding-right: 32px;
}

.button.button-reveal.button-large i {
    left: -38px;
    width: 38px;
}

.button.button-reveal.button-large.text-end i {
    left: auto;
    right: -38px;
}

.button.button-reveal.button-large:hover span {
    left: 19px;
}

.button.button-reveal.button-large.text-end:hover span {
    left: -19px;
}

.button.button-reveal.button-xlarge {
    padding-right: 40px;
    padding-left: 40px;
}

.button.button-reveal.button-xlarge i {
    left: -44px;
    width: 44px;
}

.button.button-reveal.button-xlarge.text-end i {
    left: auto;
    right: -44px;
}

.button.button-reveal.button-xlarge:hover span {
    left: 22px;
}

.button.button-reveal.button-xlarge.text-end:hover span {
    left: -22px;
}

.button.button-reveal:hover i {
    left: 0;
}

.button.button-reveal.text-end:hover i {
    left: auto;
    right: 0;
}

.button.button-reveal:hover span {
    left: 16px;
}

.button.button-reveal.text-end:hover span {
    left: -16px;
}

.button.button-reveal.button-light:hover {
    color: var(--dr-btn-bg-color-light);
}

.button-reveal i,
.button-reveal span {
    transition: left 0.3s ease, right 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {

    .button-reveal i,
    .button-reveal span {
        transition: none;
    }
}

/* .button-change used for icon buttons*/
.button-change {
    --height: 2.375rem;
    height: var(--height);
    line-height: calc(var(--height) - 2px) !important;
    border-bottom: 1px solid #222 !important;
    padding-top: 0;
    padding-bottom: 0;
    overflow: hidden;
    display: inline-flex;
    flex-direction: column-reverse;
}

.button-change.btn-sm {
    --height: 2rem;
}

.button-change.btn-lg {
    --height: 3rem;
}

.button-change span {
    position: relative;
    display: block;
    transition: transform .35s ease;
    transform: translate3d(0px, 0%, 0px);
    transform-style: preserve-3d;
}

.button-change:hover span {
    transform: translate3d(0px, 100%, 0px);

}

/* Buttons - Promo 100% Width
-----------------------------------------------------------------*/
.button.button-full {
    display: block;
    width: 100%;
    white-space: normal;
    margin: 0;
    height: auto;
    line-height: 1.6;
    padding: 30px 0;
    font-size: 2.14rem;
    font-weight: 300;
    text-transform: none;
    border-radius: 0;
}

.button.button-full.button-light {
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}

.button.button-full.button-light strong {
    border-bottom-color: var(--dr-btn-bg-color-dark);
}

.button.button-full.button-light:hover strong {
    border-bottom-color: var(--cnvs-contrast-200);
}

.button.button-full strong {
    font-weight: 700;
    border-bottom: 2px solid var(--cnvs-contrast-200);
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .button.button-full strong {
        transition: none;
    }
}

/* Buttons - Circle
-----------------------------------------------------------------*/
.button.button-circle {
    border-radius: 50rem;
}

/* Buttons - Flat
-----------------------------------------------------------------*/
.button-flat {
    --dr-btn-bg-color-flat: var(--dr-btn-bg-color);
    position: relative;
    background-color: #FFF;
    overflow: hidden;
    color: var(--dr-btn-bg-color-flat);
    border: 0;
}

.button-flat-border {
    border: var(--dr-btn-border-width) solid var(--dr-btn-bg-color-flat);
}

.button-flat::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--dr-btn-bg-color-flat);
    opacity: 0.1;
}

.button-flat:hover {
    background-color: var(--dr-btn-bg-color);
    color: #FFF;
}

/* Buttons - Action
-----------------------------------------------------------------*/
.button-action {
    border-radius: var(--dr-btn-action-radius);
    border: var(--dr-btn-action-border) solid var(--dr-btn-action-border-color);
}

.button-action span {
    position: relative;
    display: inline-block;
    padding-right: var(--dr-btn-action-padding-x);
    padding-left: calc(var(--dr-btn-action-padding-x) + 0.5rem);
    z-index: 1;
    transition: color var(--dr-btn-action-transition-speed) ease;
}

.button-action i {
    color: var(--dr-btn-action-icon-color);
    width: var(--dr-btn-action-width);
    height: 100%;
    margin: 0;
    z-index: 1;
    transition: transform var(--dr-btn-action-transition-speed) ease;
}

.button-action::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    background-color: var(--dr-btn-action-after-bg-color);
    color: #000;
    width: var(--dr-btn-action-width);
    height: 100%;
    text-align: center;
    border-radius: var(--dr-btn-action-radius);
    transition: width var(--dr-btn-action-transition-speed) ease, height var(--dr-btn-action-transition-speed) ease;
    will-change: width, height;
}

.button-action:hover {
    background-color: inherit;
}

.button-action:hover::after {
    width: 100%;
}

.button-action:hover i {
    transform: translateX(var(--dr-btn-action-icon-move));
}

.button-action:hover span {
    color: #000;
}

.button-action.button-large {
    --dr-btn-action-width: 3rem;
}

.button-action.button-xlarge {
    --dr-btn-action-border: 4px;
    --dr-btn-action-width: 3.5rem;
}

/* Buttons - Fill Effect
-----------------------------------------------------------------*/
.button-shadow {
    --dr-btn-shadow-size: 4px;
    --dr-btn-shadow-color: var(--dr-btn-bg-color);
    box-shadow: var(--dr-btn-shadow-size) var(--dr-btn-shadow-size) 0px 0px var(--dr-btn-shadow-color);
}

.button-shadow-dark {
    --dr-btn-shadow-color: var(--dr-dark);
}

.button-shadow-contrast {
    --dr-btn-shadow-color: var(--cnvs-contrast-900);
}

.button-shadow:not(.button-shadow-nohover):hover {
    box-shadow: none;
}

.button-shadow-effect:not(.button-shadow-nohover):hover {
    transform: translate3d(var(--dr-btn-shadow-size), var(--dr-btn-shadow-size), 0);
}

/* Buttons - Fill Effect
-----------------------------------------------------------------*/
.button.button-border.button-fill {
    overflow: hidden;
    transform-style: preserve-3d;
    -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
    -webkit-backface-visibility: hidden;
}

.button.button-border.button-fill span {
    position: relative;
}

.button.button-border.button-fill:hover {
    background: transparent !important;
    color: #fff;
}

.button.button-border.button-fill.button-light:hover {
    border-color: var(--dr-btn-bg-color-light) !important;
    color: var(--dr-btn-bg-color-dark) !important;
}

.button.button-border.button-fill.button-light ::before {
    background-color: var(--dr-btn-bg-color-light);
}

.button.button-border.button-fill::before {
    content: "";
    position: absolute;
    background-color: var(--cnvs-contrast-900);
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    transition: all 0.4s ease;
    -webkit-backface-visibility: hidden;
}

@media (prefers-reduced-motion: reduce) {
    .button.button-border.button-fill::before {
        transition: none;
    }
}

.button.button-border.button-fill::before ::before {
    width: 100%;
}

.button.button-border.button-fill.fill-from-right::before {
    left: auto;
    right: 0;
}

.button.button-border.button-fill:hover::before {
    width: 100%;
}

.button.button-border.button-fill.fill-from-top::before,
.button.button-border.button-fill.fill-from-bottom::before {
    transition: all 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {

    .button.button-border.button-fill.fill-from-top::before,
    .button.button-border.button-fill.fill-from-bottom::before {
        transition: none;
    }
}

.button.button-border.button-fill.fill-from-top::before {
    width: 100%;
    height: 0;
}

.button.button-border.button-fill.fill-from-top:hover::before {
    height: 100%;
}

.button.button-border.button-fill.fill-from-bottom::before {
    width: 100%;
    height: 0;
    top: auto;
    bottom: 0;
}

.button.button-border.button-fill.fill-from-bottom:hover::before {
    height: 100%;
}

/* Hero Video Play Event
---------------------------------------------------------------------------- */

.big-video-button {
    display: inline-block;
    width: var(--dr-big-video-button-size);
    height: var(--dr-big-video-button-size);
    line-height: var(--dr-big-video-button-size);
    border: var(--dr-big-video-button-border);
    border-radius: 50%;
    background-color: var(--dr-big-video-button-bg);
    color: var(--dr-big-video-button-color);
    font-size: 24px;
    text-align: center;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
    opacity: 1;
    -webkit-transition: opacity .3s ease;
    -o-transition: opacity .3s ease;
    transition: opacity .3s ease;
}

.big-video-button:hover {
    background-color: var(--dr-big-video-button-bg-h);
    border: var(--dr-big-video-button-border-h);
    color: var(--dr-big-video-button-color);
    /* opacity: 0.9; */
}

.big-video-button i:nth-of-type(1) {
    position: relative;
    left: 2px;
}

.big-video-button i:nth-of-type(2),
.big-video-button.video-played i:nth-of-type(1) {
    display: none;
}

.big-video-button.video-played i:nth-of-type(2) {
    display: block;
}

.big-video-button.video-played {
    opacity: 0.1;
}

#slider:hover .big-video-button.video-played {
    opacity: 1;
}

/* ----------------------------------------------------------------
  Button Colors
-----------------------------------------------------------------*/
/* Button Black */
.button-black {
    --dr-btn-bg-color: var(--dr-black);
    --dr-btn-txt-color: var(--dr-light);
}

.button-black:hover,
.button-black.button-3d:hover,
.button-black.button-reveal:hover,
.button-black.button-border:hover {
    --dr-btn-hover-bg: var(--dr-black-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-black.button-border.button-fill::before {
    background-color: var(--dr-black);
}

.button-black.button-action {
    --dr-btn-action-border-color: var(--dr-black);
}

.button-border.button-black {
    color: var(--dr-black);
    border-color: var(--dr-black);
}

/* Light */
.button-light,
.btn-light {
    --dr-btn-bg-color: var(--dr-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-light:hover,
.button-light.button-3d:hover,
.button-light.button-reveal:hover,
.button-light.button-border:hover,
.btn-light:hover,
.btn-light:active {
    --dr-btn-hover-bg: var(--dr-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-light.button-border.button-fill::before {
    background-color: var(--dr-light);
}

.button-light.button-action {
    --dr-btn-action-border-color: var(--dr-light);
}

.button-border.button-light {
    color: var(--dr-light);
    border-color: var(--dr-light);
}

/* Dark */
.button-dark,
.btn-dark {
    --dr-btn-bg-color: var(--dr-dark);
    --dr-btn-txt-color: var(--dr-light);
}

.button-dark:hover,
.button-dark.button-3d:hover,
.button-dark.button-reveal:hover,
.button-dark.button-border:hover,
.btn-dark:hover {
    --dr-btn-hover-bg: var(--dr-dark-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-button-border-hover-color: var(--dr-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-dark.button-border.button-fill::before {
    background-color: var(--dr-dark);
}

.button-dark.button-action {
    --dr-btn-action-border-color: var(--dr-dark);
}

.button-border.button-dark {
    color: var(--dr-dark);
    border-color: var(--dr-dark);
}

/* Mid Dark */
.button-mid-dark,
.btn-mid-dark {
    --dr-btn-bg-color: var(--dr-mid-dark);
    --dr-btn-txt-color: var(--dr-light);
}

.button-mid-dark:hover,
.button-mid-dark.button-3d:hover,
.button-mid-dark.button-reveal:hover,
.button-mid-dark.button-border:hover,
.btn-dark:hover {
    --dr-btn-hover-bg: var(--dr-mid-dark-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-button-border-hover-color: var(--dr-mid-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-mid-dark.button-border.button-fill::before {
    background-color: var(--dr-mid-dark);
}

.button-mid-dark.button-action {
    --dr-btn-action-border-color: var(--dr-mid-dark);
}

.button-border.button-mid-dark {
    color: var(--dr-mid-dark);
    border-color: var(--dr-mid-dark);
}

/* Mid Light Dark */
.button-mid-light-dark,
.btn-mid-light-dark {
    --dr-btn-bg-color: var(--dr-mid-light-dark);
    --dr-btn-txt-color: var(--dr-light);
}

.button-mid-light-dark:hover,
.button-mid-light-dark.button-3d:hover,
.button-mid-light-dark.button-reveal:hover,
.button-mid-light-dark.button-border:hover,
.btn-mid-light-dark:hover {
    --dr-btn-hover-bg: var(--dr-mid-light-dark-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-button-border-hover-color: var(--dr-mid-light-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-mid-light-dark.button-border.button-fill::before {
    background-color: var(--dr-mid-light-dark);
}

.button-mid-light-dark.button-action {
    --dr-btn-action-border-color: var(--dr-mid-light-dark);
}

.button-border.button-mid-light-dark {
    color: var(--dr-mid-light-dark);
    border-color: var(--dr-mid-light-dark);
}

/* Light Dark */
.button-light-dark,
.btn-light-dark {
    --dr-btn-bg-color: var(--dr-light-dark);
    --dr-btn-txt-color: var(--dr-light);
}

.button-light-dark:hover,
.button-light-dark.button-3d:hover,
.button-light-dark.button-reveal:hover,
.button-light-dark.button-border:hover,
.btn-light-dark:hover {
    --dr-btn-hover-bg: var(--dr-light-dark-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-button-border-hover-color: var(--dr-light-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-light-dark.button-border.button-fill::before {
    background-color: var(--dr-light-dark);
}

.button-light-dark.button-action {
    --dr-btn-action-border-color: var(--dr-light-dark);
}

.button-border.button-light-dark {
    color: var(--dr-light-dark);
    border-color: var(--dr-light-dark);
}

/* Mid Dark Light */
.button-mid-dark-light,
.btn-mid-dark-light {
    --dr-btn-bg-color: var(--dr-mid-dark-light);
    --dr-btn-txt-color: var(--dr-light);
}

.button-mid-dark-light:hover,
.button-mid-dark-light.button-3d:hover,
.button-mid-dark-light.button-reveal:hover,
.button-mid-dark-light.button-border:hover,
.btn-mid-dark-light:hover {
    --dr-btn-hover-bg: var(--dr-mid-dark-light-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-button-border-hover-color: var(--dr-mid-dark-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-mid-dark-light.button-border.button-fill::before {
    background-color: var(--dr-mid-dark-light);
}

.button-mid-dark-light.button-action {
    --dr-btn-action-border-color: var(--dr-mid-dark-light);
}

.button-border.button-mid-dark-light {
    color: var(--dr-mid-dark-light);
    border-color: var(--dr-mid-dark-light);
}

/* Mid Light Dark Light */
.button-mid-light-dark-light,
.btn-mid-light-dark-light {
    --dr-btn-bg-color: var(--dr-mid-light-dark-light);
    --dr-btn-txt-color: var(--dr-light);
}

.button-mid-light-dark-light:hover,
.button-mid-light-dark-light.button-3d:hover,
.button-mid-light-dark-light.button-reveal:hover,
.button-mid-light-dark-light.button-border:hover,
.btn-mid-light-dark-light:hover {
    --dr-btn-hover-bg: var(--dr-mid-light-dark-light-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-button-border-hover-color: var(--dr-mid-light-dark-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-mid-light-dark-light.button-border.button-fill::before {
    background-color: var(--dr-mid-light-dark-light);
}

.button-mid-light-dark-light.button-action {
    --dr-btn-action-border-color: var(--dr-mid-light-dark-light);
}

.button-border.button-mid-light-dark-light {
    color: var(--dr-mid-light-dark-light);
    border-color: var(--dr-mid-light-dark-light);
}

/* Light Dark Light */
.button-light-dark-light,
.btn-light-dark-light {
    --dr-btn-bg-color: var(--dr-light-dark-light);
    --dr-btn-txt-color: var(--dr-light);
}

.button-light-dark-light:hover,
.button-light-dark-light.button-3d:hover,
.button-light-dark-light.button-reveal:hover,
.button-light-dark-light.button-border:hover,
.btn-light-dark-light:hover {
    --dr-btn-hover-bg: var(--dr-light-dark-light-h) !important;
    --dr-btn-txt-color: var(--dr-light) !important;
    --dr-button-border-hover-color: var(--dr-light-dark-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-light-dark-light.button-border.button-fill::before {
    background-color: var(--dr-light-dark-light);
}

.button-light-dark-light.button-action {
    --dr-btn-action-border-color: var(--dr-light-dark-light);
}

.button-border.button-light-dark-light {
    color: var(--dr-light-dark-light);
    border-color: var(--dr-light-dark-light);
}

/* Primary Dark */
.button-primary-dark,
.btn-primary-dark {
    --dr-btn-bg-color: var(--dr-primary-dark);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-primary-dark:hover,
.btn-primary-dark:hover,
.button-primary-dark.button-3d:hover,
.button-primary-dark.button-reveal:hover,
.button-primary-dark.button-border:hover,
.btn-primary-dark:hover {
    --dr-btn-hover-bg: var(--dr-primary-dark-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-primary-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-primary-dark.button-border.button-fill::before {
    background-color: var(--dr-primary-dark);
}

.button-primary-dark.button-action {
    --dr-btn-action-border-color: var(---dr-primary-dark);
}

.button-border.button-primary-dark {
    color: var(--dr-primary-dark);
    border-color: var(--dr-primary-dark);
}

/* Primary */
.button-primary,
.btn-primary {
    --dr-btn-bg-color: var(--dr-primary);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-primary:hover,
.btn-primary:hover,
.button-primary.button-3d:hover,
.button-primary.button-reveal:hover,
.button-primary.button-border:hover,
.btn-primary:hover {
    --dr-btn-hover-bg: var(--dr-primary-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-primary-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-primary.button-border.button-fill::before {
    background-color: var(--dr-primary);
}

.button-primary.button-action {
    --dr-btn-action-border-color: var(---dr-primary);
}

.button-border.button-primary {
    color: var(--dr-primary);
    border-color: var(--dr-primary);
}

/* Primary Mid Light */
.button-primary-mid-light,
.btn-primary-mid-light {
    --dr-btn-bg-color: var(--dr-primary);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-primary-mid-light:hover,
.btn-primary-mid-light:hover,
.button-primary-mid-light.button-3d:hover,
.button-primary-mid-light.button-reveal:hover,
.button-primary-mid-light.button-border:hover,
.btn-primary-mid-light:hover {
    --dr-btn-hover-bg: var(--dr-primary-mid-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-primary-mid-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-primary-mid-light.button-border.button-fill::before {
    background-color: var(--dr-primary-mid-light);
}

.button-primary-mid-light.button-action {
    --dr-btn-action-border-color: var(---dr-primary-mid-light);
}

.button-border.button-primary-mid-light {
    color: var(--dr-primary-mid-light);
    border-color: var(--dr-primary-mid-light);
}

/* Primary Light */
.button-primary-light,
.btn-primary-light {
    --dr-btn-bg-color: var(--dr-primary-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-primary-light:hover,
.btn-primary-light:hover,
.button-primary-light.button-3d:hover,
.button-primary-light.button-reveal:hover,
.button-primary-light.button-border:hover,
.btn-primary-light:hover {
    --dr-btn-hover-bg: var(--dr-primary-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-primary-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-primary-light.button-border.button-fill::before {
    background-color: var(--dr-primary-light);
}

.button-primary-light.button-action {
    --dr-btn-action-border-color: var(---dr-primary-light);
}

.button-border.button-primary-light {
    color: var(--dr-primary-light);
    border-color: var(--dr-primary-light);
}

/* Secomdary Dark */
.button-secondary-dark,
.btn-secondary-dark {
    --dr-btn-bg-color: var(--dr-secondary-dark);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-secondary-dark:hover,
.button-secondary-dark.button-3d:hover,
.button-secondary-dark.button-reveal:hover,
.button-secondary-dark.button-border:hover,
.btn-secondary-dark:hover {
    --dr-btn-hover-bg: var(--dr-secondary-dark-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-secondary-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-secondary-dark.button-border.button-fill::before {
    background-color: var(--dr-secondary-dark);
}

.button-secondary-dark.button-action {
    --dr-btn-action-border-color: var(--dr-secondary-dark);
}

.button-border.button-secondary-dark {
    color: var(--dr-secondary-dark);
    border-color: var(--dr-secondary-dark);
}

/* Secondary */
.button-secondary,
.btn-secondary {
    --dr-btn-bg-color: var(--dr-secondary);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-secondary:hover,
.button-secondary.button-3d:hover,
.button-secondary.button-reveal:hover,
.button-secondary.button-border:hover,
.btn-secondary:hover {
    --dr-btn-hover-bg: var(--dr-secondary-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-secondary-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-secondary.button-border.button-fill::before {
    background-color: var(--dr-secondary);
}

.button-secondary.button-action {
    --dr-btn-action-border-color: var(--dr-secondary);
}

.button-border.button-secondary {
    color: var(--dr-secondary);
    border-color: var(--dr-secondary);
}

/* Secomdary Mid Light */
.button-secondary,
.btn-secondary {
    --dr-btn-bg-color: var(--dr-secondary);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-secondary:hover,
.button-secondary.button-3d:hover,
.button-secondary.button-reveal:hover,
.button-secondary.button-border:hover,
.btn-secondary:hover {
    --dr-btn-hover-bg: var(--dr-secondary-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-secondary-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-secondary.button-border.button-fill::before {
    background-color: var(--dr-secondary);
}

.button-secondary.button-action {
    --dr-btn-action-border-color: var(--dr-secondary);
}

.button-border.button-secondary {
    color: var(--dr-secondary);
    border-color: var(--dr-secondary);
}

/* Secomdary Light */
.button-secondary-light,
.btn-secondary-light {
    --dr-btn-bg-color: var(--dr-secondary-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-secondary-light:hover,
.button-secondary-light.button-3d:hover,
.button-secondary-light.button-reveal:hover,
.button-secondary-light.button-border:hover,
.btn-secondary-light:hover {
    --dr-btn-hover-bg: var(--dr-secondary-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-secondary-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-secondary-light.button-border.button-fill::before {
    background-color: var(--dr-secondary-light);
}

.button-secondary-light.button-action {
    --dr-btn-action-border-color: var(--dr-secondary-light);
}

.button-border.button-secondary-light {
    color: var(--dr-secondary-light);
    border-color: var(--dr-secondary-light);
}

/* Tertiary Dark */
.button-tertiary-dark,
.btn-tertiary-dark {
    --dr-btn-bg-color: var(--dr-tertiary-dark);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-tertiary-dark:hover,
.button-tertiary-dark.button-3d:hover,
.button-tertiary-dark.button-reveal:hover,
.button-tertiary-dark.button-border:hover,
.btn-tertiary-dark:hover {
    --dr-btn-hover-bg: var(--dr-tertiary-dark-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-tertiary-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-tertiary-dark.button-border.button-fill::before {
    background-color: var(--dr-tertiary-dark);
}

.button-tertiary-dark.button-action {
    --dr-btn-action-border-color: var(--dr-tertiary-dark);
}

.button-border.button-tertiary-dark {
    color: var(--dr-tertiary-dark);
    border-color: var(---dr-tertiary-dark);
}

/* Tertiary */
.button-tertiary,
.btn-tertiary {
    --dr-btn-bg-color: var(--dr-tertiary);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-tertiary:hover,
.button-tertiary.button-3d:hover,
.button-tertiary.button-reveal:hover,
.button-tertiary.button-border:hover,
.btn-tertiary:hover {
    --dr-btn-hover-bg: var(--dr-tertiary-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-tertiary-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-tertiary.button-border.button-fill::before {
    background-color: var(--dr-tertiary);
}

.button-tertiary.button-action {
    --dr-btn-action-border-color: var(--dr-tertiary);
}

.button-border.button-tertiary {
    color: var(--dr-tertiary);
    border-color: var(---dr-tertiary);
}

/* Tertiary Mid Light */
.button-tertiary-mid-light,
.btn-tertiary-mid-light {
    --dr-btn-bg-color: var(--dr-tertiary-mid-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-tertiary-mid-light:hover,
.button-tertiary-mid-light.button-3d:hover,
.button-tertiary-mid-light.button-reveal:hover,
.button-tertiary-mid-light.button-border:hover,
.btn-tertiary-mid-light:hover {
    --dr-btn-hover-bg: var(--dr-tertiary-mid-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-tertiary-mid-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-tertiary-mid-light.button-border.button-fill::before {
    background-color: var(--dr-tertiary-mid-light);
}

.button-tertiary-mid-light.button-action {
    --dr-btn-action-border-color: var(--dr-tertiary-mid-light);
}

.button-border.button-tertiary-mid-light {
    color: var(--dr-tertiary-mid-light);
    border-color: var(---dr-tertiary-mid-light);
}

/* Tertiary Light */
.button-tertiary-light,
.btn-tertiary-light {
    --dr-btn-bg-color: var(--dr-tertiary-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-tertiary-light:hover,
.button-tertiary-light.button-3d:hover,
.button-tertiary-light.button-reveal:hover,
.button-tertiary-light.button-border:hover,
.btn-tertiary-light:hover {
    --dr-btn-hover-bg: var(--dr-tertiary-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-tertiary-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-tertiary-light.button-border.button-fill::before {
    background-color: var(--dr-tertiary-light);
}

.button-tertiary-light.button-action {
    --dr-btn-action-border-color: var(--dr-tertiary-light);
}

.button-border.button-tertiary-light {
    color: var(--dr-tertiary-light);
    border-color: var(---dr-tertiary-light);
}

/* Success Dark */
.button-success-dark,
.btn-success-dark {
    --dr-btn-bg-color: var(--dr-success-dark);
    --dr-btn-txt-color: var(--dr-success);
}

.button-success-dark:hover,
.button-success-dark.button-3d:hover,
.button-success-dark.button-reveal:hover,
.button-success-dark.button-border:hover,
.btn-success-dark:hover {
    --dr-btn-hover-bg: var(--dr-success-dark-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-success-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-success-dark.button-border.button-fill::before {
    background-color: var(--dr-success-dark);
}

.button-success-dark.button-action {
    --dr-btn-action-border-color: var(--dr-success-dark);
}

.button-border.button-success-dark {
    color: var(--dr-success-dark);
    border-color: var(--dr-success-dark);
}

/* Success */
.button-success,
.btn-success {
    --dr-btn-bg-color: var(--dr-success);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-success:hover,
.button-success.button-3d:hover,
.button-success.button-reveal:hover,
.button-success.button-border:hover,
.btn-success:hover {
    --dr-btn-hover-bg: var(--dr-success-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-success-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-success.button-border.button-fill::before {
    background-color: var(--dr-success);
}

.button-success.button-action {
    --dr-btn-action-border-color: var(--dr-success);
}

.button-border.button-success {
    color: var(--dr-success);
    border-color: var(--dr-success);
}

/* Success Mid Light */
.button-success-mid-light,
.btn-success-mid-light {
    --dr-btn-bg-color: var(--dr-success-mid-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-success-mid-light:hover,
.button-success-mid-light.button-3d:hover,
.button-success-mid-light.button-reveal:hover,
.button-success-mid-light.button-border:hover,
.btn-success-mid-light:hover {
    --dr-btn-hover-bg: var(--dr-success-mid-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-success-mid-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-success-mid-light.button-border.button-fill::before {
    background-color: var(--dr-success-mid-light);
}

.button-success-mid-light.button-action {
    --dr-btn-action-border-color: var(--dr-success-mid-light);
}

.button-border.button-success-mid-light {
    color: var(--dr-success-mid-light);
    border-color: var(--dr-success-mid-light);
}

/* Success Light */
.button-success-light,
.btn-success-light {
    --dr-btn-bg-color: var(--dr-success-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-success-light:hover,
.button-success-light.button-3d:hover,
.button-success-light.button-reveal:hover,
.button-success-light.button-border:hover,
.btn-success-light:hover {
    --dr-btn-hover-bg: var(--dr-success-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-success-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-success-light.button-border.button-fill::before {
    background-color: var(--dr-success-light);
}

.button-success-light.button-action {
    --dr-btn-action-border-color: var(--dr-success-light);
}

.button-border.button-success-light {
    color: var(--dr-success-light);
    border-color: var(--dr-success-light);
}

/* Info Dark */
.button-info-dark,
.btn-info-dark {
    --dr-btn-bg-color: var(--dr-info-dark);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-info-dark:hover,
.button-info-dark.button-3d:hover,
.button-info-dark.button-reveal:hover,
.button-info-dark.button-border:hover,
.btn-info-dark:hover {
    --dr-btn-hover-bg: var(--dr-info-dark-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-info-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-info-dark.button-border.button-fill::before {
    background-color: var(--dr-info-dark);
}

.button-info-dark.button-action {
    --dr-btn-action-border-color: var(--dr-info-dark);
}

.button-border.button-info-dark {
    color: var(--dr-info-dark);
    border-color: var(--dr-info-dark);
}

/* Info */
.button-info,
.btn-info {
    --dr-btn-bg-color: var(--dr-info);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-info:hover,
.button-info.button-3d:hover,
.button-info.button-reveal:hover,
.button-info.button-border:hover,
.btn-info:hover {
    --dr-btn-hover-bg: var(--dr-info-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-info-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-info.button-border.button-fill::before {
    background-color: var(--dr-info);
}

.button-info.button-action {
    --dr-btn-action-border-color: var(--dr-info);
}

.button-border.button-info {
    color: var(--dr-info);
    border-color: var(--dr-info);
}

/* Info Mid Light */
.button-info-mid-light,
.btn-info {
    --dr-btn-bg-color: var(--dr-info-mid-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-info-mid-light:hover,
.button-info-mid-light.button-3d:hover,
.button-info-mid-light.button-reveal:hover,
.button-info-mid-light.button-border:hover,
.btn-info-mid-light:hover {
    --dr-btn-hover-bg: var(--dr-info-mid-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-info-mid-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-info-mid-light.button-border.button-fill::before {
    background-color: var(--dr-info-mid-light-mid-light);
}

.button-info-mid-light.button-action {
    --dr-btn-action-border-color: var(--dr-info-mid-light);
}

.button-border.button-info-mid-light {
    color: var(--dr-info);
    border-color: var(--dr-info-mid-light);
}

/* info Light */
.button-info-light,
.btn-info-light {
    --dr-btn-bg-color: var(--dr-info-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-info-light:hover,
.button-info-light.button-3d:hover,
.button-info-light.button-reveal:hover,
.button-info-light.button-border:hover,
.btn-info-light:hover {
    --dr-btn-hover-bg: var(--dr-info-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-info-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-info-light.button-border.button-fill::before {
    background-color: var(--dr-info-light);
}

.button-info-light.button-action {
    --dr-btn-action-border-color: var(--dr-info-light);
}

.button-border.button-info-light {
    color: var(--dr-info-light);
    border-color: var(--dr-info-light);
}

/* Warning Dark */
.button-warning-dark,
.btn-warning-dark {
    --dr-btn-bg-color: var(--dr-warning-dark);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-warning-dark:hover,
.button-warning-dark.button-3d:hover,
.button-warning-dark.button-reveal:hover,
.button-warning-dark.button-border:hover,
.btn-warning-dark:hover {
    --dr-btn-hover-bg: var(--dr-warning-dark-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-warning-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-warning-dark.button-border.button-fill::before {
    background-color: var(--dr-warning-dark);
}

.button-warning-dark.button-action {
    --dr-btn-action-border-color: var(--dr-warning-dark);
}

.button-border.button-warning-dark {
    color: var(--dr-warning-dark);
    border-color: var(--dr-warning-dark);
}

/* Warning */
.button-warning,
.btn-warning {
    --dr-btn-bg-color: var(--dr-warning);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-warning:hover,
.button-warning.button-3d:hover,
.button-warning.button-reveal:hover,
.button-warning.button-border:hover,
.btn-warning:hover {
    --dr-btn-hover-bg: var(--dr-warning-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-warning-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-warning.button-border.button-fill::before {
    background-color: var(--dr-warning);
}

.button-warning.button-action {
    --dr-btn-action-border-color: var(--dr-warning);
}

.button-border.button-warning {
    color: var(--dr-warning);
    border-color: var(--dr-warning);
}

/* Warning Mid Light */
.button-warning-mid-light,
.btn-warning-mid-light {
    --dr-btn-bg-color: var(--dr-warning-mid-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-warning-mid-light:hover,
.button-warning-mid-light.button-3d:hover,
.button-warning-mid-light.button-reveal:hover,
.button-warning-mid-light.button-border:hover,
.btn-warning-mid-light:hover {
    --dr-btn-hover-bg: var(--dr-warning-mid-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-warning-mid-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-warning-mid-light.button-border.button-fill::before {
    background-color: var(--dr-warning-mid-light);
}

.button-warning-mid-light.button-action {
    --dr-btn-action-border-color: var(--dr-warning-mid-light);
}

.button-border.button-warning-mid-light {
    color: var(--dr-warning-mid-light);
    border-color: var(--dr-warning-mid-light);
}

/* Warning Light */
.button-warning-light,
.btn-warning-light {
    --dr-btn-bg-color: var(--dr-warning);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-warning-light:hover,
.button-warning-light.button-3d:hover,
.button-warning-light.button-reveal:hover,
.button-warning-light.button-border:hover,
.btn-warning-light:hover {
    --dr-btn-hover-bg: var(--dr-warning-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-warning-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-warning-light.button-border.button-fill::before {
    background-color: var(--dr-warning-light);
}

.button-warning-light.button-action {
    --dr-btn-action-border-color: var(--dr-warning-light);
}

.button-border.button-warning-light {
    color: var(--dr-warning-light);
    border-color: var(--dr-warning-light);
}

/* Danger Dark */
.button-danger-dark,
.btn-danger-dark {
    --dr-btn-bg-color: var(--dr-danger-dark);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-danger-dark:hover,
.button-danger-dark.button-3d:hover,
.button-danger-dark.button-reveal:hover,
.button-danger-dark.button-border:hover,
.btn-danger-dark:hover {
    --dr-btn-hover-bg: var(--dr-danger-dark-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-danger-dark-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-danger-dark.button-border.button-fill::before {
    background-color: var(--dr-danger-dark);
}

.button-danger-dark.button-action {
    --dr-btn-action-border-color: var(--dr-danger-dark);
}

.button-border.button-danger-dark {
    color: var(--dr-danger-dark);
    border-color: var(--dr-danger-dark);
}

/* Danger */
.button-danger,
.btn-danger {
    --dr-btn-bg-color: var(--dr-danger);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-danger:hover,
.button-danger.button-3d:hover,
.button-danger.button-reveal:hover,
.button-danger.button-border:hover,
.btn-danger:hover {
    --dr-btn-hover-bg: var(--dr-danger-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-danger-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-danger.button-border.button-fill::before {
    background-color: var(--dr-danger);
}

.button-danger.button-action {
    --dr-btn-action-border-color: var(--dr-danger);
}

.button-border.button-danger {
    color: var(--dr-danger);
    border-color: var(--dr-danger);
}

/* Danger Mid Light */
.button-danger-mid-light,
.btn-danger-mid-light {
    --dr-btn-bg-color: var(--dr-danger-mid-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-danger-mid-light:hover,
.button-danger-mid-light.button-3d:hover,
.button-danger-mid-light.button-reveal:hover,
.button-danger-mid-light.button-border:hover,
.btn-danger-mid-light:hover {
    --dr-btn-hover-bg: var(--dr-danger-mid-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-danger-mid-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-danger-mid-light.button-border.button-fill::before {
    background-color: var(--dr-danger-mid-light);
}

.button-danger-mid-light.button-action {
    --dr-btn-action-border-color: var(--dr-danger-mid-light);
}

.button-border.button-danger-mid-light {
    color: var(--dr-danger-mid-light);
    border-color: var(--dr-danger-mid-light);
}

/* Danger Light */
.button-danger-light,
.btn-danger-light {
    --dr-btn-bg-color: var(--dr-danger-light);
    --dr-btn-txt-color: var(--dr-dark);
}

.button-danger-light:hover,
.button-danger-light.button-3d:hover,
.button-danger-light.button-reveal:hover,
.button-danger-light.button-border:hover,
.btn-danger-light:hover {
    --dr-btn-hover-bg: var(--dr-danger-light-h) !important;
    --dr-btn-txt-color: var(--dr-dark) !important;
    --dr-button-border-hover-color: var(--dr-danger-light-h);
    --dr-btn-txt-hover-color: var(--dr-btn-txt-color);
}

.button-danger-light.button-border.button-fill::before {
    background-color: var(--dr-danger-light);
}

.button-danger-light.button-action {
    --dr-btn-action-border-color: var(--dr-danger-light);
}

.button-border.button-danger-light {
    color: var(--dr-danger-light);
    border-color: var(--dr-danger-light);
}

/* ----------------------------------------------------------------
    Button utilities
-----------------------------------------------------------------*/
.button.menu-link.button-reveal {
    background-color: transparent;
    transition: all 0.2s ease-in-out;
}

.button.menu-link.button-reveal:hover {
    transition: all 0.2s ease-in-out;
}

.button[class*=gradient-] {
    border: 0;
}

.button.button-nohover:hover {
    opacity: inherit !important;
    background-color: inherit !important;
    color: inherit !important;
    border-color: inherit !important;
}


.button.disabled,
.button:disabled {
    opacity: 0.65 !important;
    pointer-events: none !important;
    text-decoration: line-through;
}

.button.menu-link.button-reveal {
    background-color: transparent;
    transition: all 0.2s ease-in-out;
}

.button.menu-link.button-reveal:hover {
    transition: all 0.2s ease-in-out;
}

.button[class*=gradient-] {
    border: 0;
}

/* Gradient button hover lighten */
.button[class*=gradient-]:hover {
    filter: brightness(110%);
}

.button.button-nohover:hover {
    opacity: inherit !important;
    background-color: inherit !important;
    color: inherit !important;
    border-color: inherit !important;
}


/* ----------------------------------------------------------------
-------------------------------------------------------------------

  					**** Dropdowns And Dropups ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/
.dropup,
.dropend,
.dropdown,
.dropstart,
.dropup-center,
.dropdown-center {
    position: relative;
}

.dropdown-toggle {
    white-space: nowrap;
}

.dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropdown-menu {
    position: absolute;
    z-index: var(--bs-dropdown-zindex);
    display: none;
    min-width: var(--bs-dropdown-min-width);
    padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
    margin: 0;
    font-size: var(--bs-dropdown-font-size);
    color: var(--bs-dropdown-color);
    text-align: left;
    list-style: none;
    background-color: var(--dr-dropdown-bg);
    background-clip: padding-box;
    border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
    border-radius: var(--bs-dropdown-border-radius);
}

.dropdown-menu[data-bs-popper] {
    top: 100%;
    left: 0;
    margin-top: var(--bs-dropdown-spacer);
}

.dropdown-menu-start {
    --bs-position: start;
}

.dropdown-menu-start[data-bs-popper] {
    right: auto;
    left: 0;
}

.dropdown-menu-end {
    --bs-position: end;
}

.dropdown-menu-end[data-bs-popper] {
    right: 0;
    left: auto;
}

@media (min-width: 576px) {
    .dropdown-menu-sm-start {
        --bs-position: start;
    }

    .dropdown-menu-sm-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-sm-end {
        --bs-position: end;
    }

    .dropdown-menu-sm-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 768px) {
    .dropdown-menu-md-start {
        --bs-position: start;
    }

    .dropdown-menu-md-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-md-end {
        --bs-position: end;
    }

    .dropdown-menu-md-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 992px) {
    .dropdown-menu-lg-start {
        --bs-position: start;
    }

    .dropdown-menu-lg-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-lg-end {
        --bs-position: end;
    }

    .dropdown-menu-lg-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1200px) {
    .dropdown-menu-xl-start {
        --bs-position: start;
    }

    .dropdown-menu-xl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xl-end {
        --bs-position: end;
    }

    .dropdown-menu-xl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1400px) {
    .dropdown-menu-xxl-start {
        --bs-position: start;
    }

    .dropdown-menu-xxl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xxl-end {
        --bs-position: end;
    }

    .dropdown-menu-xxl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

.dropup .dropdown-menu[data-bs-popper] {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: var(--bs-dropdown-spacer);
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0;
    border-right: 0.3em solid transparent;
    border-bottom: 0.3em solid;
    border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: var(--bs-dropdown-spacer);
}

.dropend .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0;
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
}

.dropend .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-toggle::after {
    vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: var(--bs-dropdown-spacer);
}

.dropstart .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
}

.dropstart .dropdown-toggle::after {
    display: none;
}

.dropstart .dropdown-toggle::before {
    display: inline-block;
    margin-right: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0.3em solid;
    border-bottom: 0.3em solid transparent;
}

.dropstart .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropstart .dropdown-toggle::before {
    vertical-align: 0;
}

.dropdown-divider {
    height: 0;
    margin: var(--bs-dropdown-divider-margin-y) 0;
    overflow: hidden;
    border-top: 1px solid var(--bs-dropdown-divider-bg);
    opacity: 1;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    clear: both;
    font-weight: 400;
    color: var(--bs-dropdown-link-color);
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
    border-radius: var(--bs-dropdown-item-border-radius, 0);
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: var(--bs-dropdown-link-hover-color);
    background-color: var(--bs-dropdown-link-hover-bg);
}

.dropdown-item.active,
.dropdown-item:active {
    color: var(--bs-dropdown-link-active-color);
    text-decoration: none;
    background-color: var(--bs-dropdown-link-active-bg);
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: var(--bs-dropdown-link-disabled-color);
    pointer-events: none;
    background-color: transparent;
    text-decoration: line-through;
}

.dropdown-menu.show {
    display: block;
}

.dropdown-header {
    display: block;
    padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
    margin-bottom: 0;
    font-size: 0.875rem;
    color: var(--bs-dropdown-header-color);
    white-space: nowrap;
}

.dropdown-item-text {
    display: block;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
    --bs-dropdown-color: #dee2e6;
    --dr-dropdown-bg: #343a40;
    --bs-dropdown-border-color: var(--bs-border-color-translucent);
    --bs-dropdown-box-shadow: ;
    --bs-dropdown-link-color: #dee2e6;
    --bs-dropdown-link-hover-color: #fff;
    --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
    --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: #0d6efd;
    --bs-dropdown-link-disabled-color: #adb5bd;
    --bs-dropdown-header-color: #adb5bd;
}














/* ----------------------------------------------------------------
-------------------------------------------------------------------

  					**** LS ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/









/* ----------------------------------------------------------------
-------------------------------------------------------------------

  					**** Header ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/
#header {
    position: relative;
}

#header-wrap {
    position: fixed;
    height: auto;
    z-index: 299;
    width: 100%;
    background-color: var(--dr-header-bg);
    border-bottom: 1px solid var(--dr-header-border-color);
    transition: height 0.2s ease 0s, background-color 0.3s ease 0s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

@media (prefers-reduced-motion: reduce) {
    #header-wrap {
        transition: none;
    }
}

.is-expanded-menu #top-bar+#header:not(.sticky-header) #header-wrap,
.is-expanded-menu #slider+#header:not(.sticky-header) #header-wrap,
.is-expanded-menu .floating-header:not(.sticky-header) #header-wrap,
.is-expanded-menu div+#header-wrap,
.is-expanded-menu .no-sticky #header-wrap,
.is-expanded-menu #header[data-sticky-offset]:not([data-sticky-offset=full]):not(.sticky-header) #header-wrap {
    position: absolute;
}

body.is-expanded-menu:not(.stretched) #header:not(.sticky-header) #header-wrap {
    position: absolute;
}

body:not(.is-expanded-menu) #header:not([data-mobile-sticky=true]) #header-wrap {
    position: relative;
}

body:not(.is-expanded-menu) #header:not([data-mobile-sticky=true]) .header-wrap-clone {
    display: none;
}

.header-wrap-clone {
    height: calc(var(--dr-header-height) + 1px);
}

.header-row {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}




.is-expanded-menu .header-row {
    position: initial;
}

.is-expanded-menu .header-size-sm {
    --dr-header-height: var(--dr-header-height-sm);
}

.is-expanded-menu .header-size-md {
    --dr-header-height: var(--dr-header-height-md);
}

.is-expanded-menu .header-size-lg {
    --dr-header-height: var(--dr-header-height-lg);
}

.is-expanded-menu #header.sticky-header-shrink {
    --dr-sticky-header-height: var(--dr-header-height-shrink);
}

.is-expanded-menu #header+.include-header {
    margin-top: calc(-1 * var(--dr-header-height) - 1px);
    display: inline-block;
    vertical-align: bottom;
    width: 100%;
}

.is-expanded-menu #header.transparent-header {
    --dr-header-bg: transparent;
    border-bottom: 0;
}

.is-expanded-menu #header.transparent-header:not(.sticky-header) #header-wrap {
    border-bottom: 1px solid transparent;
    z-index: 299;
}

.is-expanded-menu #header.transparent-header.floating-header {
    margin-top: var(--dr-header-floating-top-offset);
}

.is-expanded-menu #header.transparent-header.floating-header .container {
    padding: 0 var(--dr-header-floating-padding);
    background-color: var(--dr-header-floating-bg);
}

.is-expanded-menu #header.transparent-header.floating-header:not(.sticky-header) .container {
    position: relative;
}

#header.floating-header+.include-header {
    margin-top: calc(var(--dr-header-height) + var(--dr-header-floating-top-offset) - 2px);
}

.is-expanded-menu #header.transparent-header+.page-title-parallax.include-header .container {
    z-index: 5;
    padding-top: var(--dr-header-height);
}

.is-expanded-menu #header.transparent-header.semi-transparent {
    --dr-header-bg: rgba(var(--dr-invert-contrast-rgb), .7);
}

.is-expanded-menu #header.full-header:not(.transparent-header) {
    border-bottom-color: var(--dr-header-border-color);
}

.is-expanded-menu #header.full-header.transparent-header #header-wrap {
    border-bottom: 1px solid var(--dr-header-transparent-border-color);
}

.is-expanded-menu #slider+#header.transparent-header.full-header #header-wrap {
    border-top: 1px solid var(--dr-header-transparent-border-color);
    border-bottom: none;
}

.is-expanded-menu.stretched .full-header #header-wrap>.container {
    width: 100%;
    max-width: none;
    padding: 0 30px;
}

.is-expanded-menu .sub-menu-container,
.is-expanded-menu .mega-menu-content {
    transition: top 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu .sub-menu-container,
    .is-expanded-menu .mega-menu-content {
        transition: none;
    }
}

.is-expanded-menu .sticky-header #header-wrap {
    position: fixed;
    top: 0;
    left: 0;
    background-color: var(--dr-header-sticky-bg);
}

.is-expanded-menu .sticky-header.semi-transparent {
    --dr-header-sticky-bg: rgba(var(--dr-invert-contrast-rgb), 0.7);
}

.is-expanded-menu .sticky-header.full-header #header-wrap {
    border-bottom: 1px solid var(--dr-header-border-color);
}

.is-expanded-menu .sticky-header-shrink .style-3 .menu-container>.menu-item>.menu-link {
    --dr-primary-menu-padding-y: 19px;
    margin: 0;
    border-radius: 0;
}

.is-expanded-menu .sticky-header-shrink .style-4 .menu-container>.menu-item>.menu-link {
    --dr-primary-menu-padding-y: 8px;
    margin: 10px 0;
}

.is-expanded-menu .sticky-header-shrink .style-5 .menu-container>.menu-item:not(:first-child) {
    margin-left: 0;
}

.is-expanded-menu .sticky-header-shrink .style-5 .menu-container>.menu-item>.menu-link {
    line-height: 22px;
}

.is-expanded-menu .sticky-header-shrink .style-5 .menu-container>.menu-item>.menu-link>div {
    padding: 0;
}

.is-expanded-menu .sticky-header-shrink .style-5 .menu-container>.menu-item>.menu-link i:not(.sub-menu-indicator) {
    display: inline-block;
    width: 1rem;
    margin: 0 0.5rem 0 0;
    font-size: 0.875rem;
    line-height: 22px;
}

.is-expanded-menu .sticky-header-shrink .sub-title .menu-container>.menu-item>.menu-link {
    --dr-primary-menu-padding-y: 18px;
}

body:not(.is-expanded-menu) [data-mobile-sticky=true] .menu-container {
    max-height: 60vh;
    margin: 0 0 1rem;
    overflow-x: hidden;
    overflow-y: scroll;
}

body:not(.is-expanded-menu) .sticky-header #header-wrap {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 299;
    background-color: var(--dr-header-sticky-bg);
    border-bottom: var(--dr-primary-menu-submenu-border);
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
}

body:not(.is-expanded-menu) .sticky-header .header-wrap-clone {
    display: block;
}

body:not(.is-expanded-menu):not(.primary-menu-open) .dark.transparent-header-responsive,
body:not(.is-expanded-menu):not(.primary-menu-open) .transparent-header-responsive {
    background-color: transparent;
    border: none;
}

body:not(.is-expanded-menu):not(.primary-menu-open) .semi-transparent.transparent-header-responsive {
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 1;
}

/* ----------------------------------------------------------------
  Logo
-----------------------------------------------------------------*/
#logo {
    position: relative;
    display: flex;
    align-items: center;
    margin-right: auto;
    max-height: 100%;
}

#logo a {
    color: #000;
    font-family: var(--dr-primary-font);
    font-size: 36px;
    width: 100%;
}

#logo a [class^=logo-] {
    display: none;
}

#logo a .logo-default {
    display: flex;
}

#logo img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    margin-left: auto;
    margin-right: auto;
    transition: height 0.4s ease, padding 0.4s ease, margin 0.4s ease, opacity 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
    #logo img {
        transition: none;
    }
}

#header-wrap #logo img {
    height: var(--dr-header-height);
}

.is-expanded-menu .full-header #logo {
    padding-right: 30px;
    border-right: 1px solid var(--dr-header-border-color);
}

.is-expanded-menu #header.transparent-header.full-header #logo {
    border-right-color: var(--dr-header-transparent-border-color);
}

.is-expanded-menu #header.sticky-header-shrink #header-wrap #logo img {
    height: var(--dr-sticky-header-height);
}

/* ----------------------------------------------------------------
  Header Right Area
-----------------------------------------------------------------*/
.header-extras {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 0;
}

.header-extras li {
    display: flex;
    align-items: center;
    margin-left: 1.25rem;
    overflow: hidden;
    list-style: none;
}

.header-extras li:first-child {
    margin-left: 0;
}

.header-extras li .he-text {
    padding-left: 10px;
    font-weight: bold;
    font-size: 0.875rem;
}

.header-extras li .he-text span {
    display: block;
    font-weight: 400;
    color: var(--dr-themecolor);
}

/* ----------------------------------------------------------------
  Top Bar
-----------------------------------------------------------------*/
#top-bar {
    position: relative;
    border-bottom: var(--dr-topbar-border-size) solid var(--dr-topbar-border-color);
    font-size: var(--dr-topbar-font-size);
    background-color: var(--dr-topbar-bg);
}

/* Top Links
---------------------------------*/
.top-links {
    position: relative;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-positive: 0;
    flex-grow: 0;
    border-bottom: var(--dr-topbar-border-size) solid var(--dr-topbar-border-color);
}

@media (min-width: 768px) {
    .top-links {
        border-bottom: 0;
    }
}

.top-links-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    list-style: none;
    margin-bottom: 0;
}

.top-links-item {
    position: relative;
    border-left: var(--dr-topbar-border-size) solid var(--dr-topbar-border-color);
}

.top-links-item:first-child,
.top-links-sub-menu .top-links-item {
    border-left: 0 !important;
}

.top-links-item>a {
    display: block;
    padding: 12px;
    line-height: calc(var(--dr-topbar-height) - 24px);
    font-weight: var(--dr-topbar-font-weight);
    text-transform: var(--dr-topbar-font-transform);
    color: var(--dr-topbar-color);
}

.top-links-item>a>i {
    vertical-align: top;
}

.top-links-item>a>i.sub-menu-indicator {
    font-size: 0.75rem;
    margin: 0 0 0 0.375rem !important;
}

.top-links-item>a>i:first-child {
    margin-right: 3px;
}

.top-links-item.full-icon>a>i {
    top: 2px;
    font-size: 0.875rem;
    margin: 0;
}

.top-links-item:hover {
    background-color: var(--cnvs-contrast-200);
}

.top-links-sub-menu,
.top-links-section {
    position: absolute;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    list-style: none;
    z-index: -1;
    line-height: 1.5;
    background: var(--dr-topbar-bg);
    border: 0;
    top: 100%;
    left: -1px;
    width: 140px;
    margin-top: 10px;
    border: var(--dr-topbar-border-size) solid var(--dr-topbar-border-color);
    border-top: 1px solid var(--dr-themecolor);
    box-shadow: 0px 13px 42px 11px rgba(0, 0, 0, 0.05);
    transition: opacity 0.25s ease, margin 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {

    .top-links-sub-menu,
    .top-links-section {
        transition: none;
    }
}

.top-links:not(.on-click) .top-links-item:hover>.top-links-sub-menu,
.top-links:not(.on-click) .top-links-item:hover>.top-links-section,
.top-links.on-click .top-links-sub-menu,
.top-links.on-click .top-links-section {
    opacity: 1;
    visibility: visible;
    margin-top: 0;
    pointer-events: auto;
    z-index: 499;
}

.top-links.on-click .top-links-sub-menu,
.top-links.on-click .top-links-section {
    display: none;
}

.top-links-sub-menu .top-links-sub-menu {
    top: calc(-1 * var(--dr-topbar-border-size));
    left: 100%;
}

.top-links-sub-menu .top-links-item:not(:first-child) {
    border-top: var(--dr-topbar-border-size) solid rgba(var(--dr-contrast-rgb), 0.1);
}

.top-links-sub-menu .top-links-item:hover {
    background-color: var(--cnvs-contrast-100);
}

.top-links-sub-menu .top-links-item>a {
    display: flex;
    align-items: center;
    padding-top: var(--dr-topbar-submenu-padding);
    padding-bottom: var(--dr-topbar-submenu-padding);
    font-size: var(--dr-topbar-submenu-font-size);
    line-height: 20px;
}

.top-links-sub-menu .top-links-item>a>img {
    position: relative;
    width: 16px;
    height: 16px;
    margin-right: 0.5rem;
}

.top-links-sub-menu .top-links-item>a i.sub-menu-indicator {
    margin: 0 !important;
    position: absolute;
    top: 50%;
    left: auto;
    right: 10px;
    transform: translateY(-50%) rotate(-90deg);
}

.top-links-sub-menu.top-demo-lang .top-links-item>a>img {
    top: 4px;
    width: 16px;
    height: 16px;
}

.top-links-section {
    padding: 25px;
    left: 0;
    width: 280px;
}

.top-links-section.menu-pos-invert {
    left: auto;
    right: 0;
}

/* Top Social
-----------------------------------------------------------------*/
#top-social {
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    margin: 0;
}

#top-social li {
    position: relative;
    list-style: none;
    border-left: var(--dr-topbar-border-size) solid var(--dr-topbar-border-color);
}

#top-social li:first-child {
    border-left: 0 !important;
}

#top-social li .ts-icon,
#top-social li .ts-text {
    display: block;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    height: var(--dr-topbar-height);
    line-height: calc(var(--dr-topbar-height) - 1px);
}

#top-social li .ts-icon {
    width: 40px;
    text-align: center;
    font-size: 0.875rem;
}

#top-social li .ts-text {
    max-width: 0;
    white-space: nowrap;
    transition: all 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {
    #top-social li .ts-text {
        transition: none;
    }
}

#top-social li a:hover .ts-text {
    max-width: 200px;
    padding-right: 12px;
    transition: all 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {
    #top-social li a:hover .ts-text {
        transition: none;
    }
}

#top-social a {
    display: -ms-flexbox;
    display: flex;
    width: auto;
    overflow: hidden;
    font-weight: bold;
    color: var(--dr-topbar-social-icon-color);
}

#top-social a:hover {
    color: var(--bs-gray-100);
}

/* Top Login */
#top-login {
    margin-bottom: 0;
}

/* ----------------------------------------------------------------
Side Header
-----------------------------------------------------------------*/
.is-expanded-menu.side-header:not(.open-header) #wrapper {
    margin: 0 0 0 var(--dr-side-header-width) !important;
    width: auto !important;
}

.is-expanded-menu.side-header .container {
    padding-left: var(--dr-side-header-padding-gutters);
    padding-right: var(--dr-side-header-padding-gutters);
}

.is-expanded-menu.side-header #header {
    --dr-header-bg: var(--dr-side-header-bg);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: var(--dr-side-header-width);
    height: 100vh;
    border: none;
    border-right: 1px solid var(--dr-header-border-color);
    overflow: hidden;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.065);
}

.is-expanded-menu.side-header #header-wrap {
    position: relative;
    width: calc(var(--dr-side-header-width) + 40px);
    height: 100%;
    overflow-x: hidden;
    overflow-y: scroll;
    padding-right: 40px;
}

.is-expanded-menu.side-header #header-wrap>.container {
    width: var(--dr-side-header-width);
    max-width: none;
    padding: 0 var(--dr-side-header-padding-gutters);
    margin: 0 !important;
    min-height: 100%;
    display: flex;
}

.is-expanded-menu.side-header .header-wrap-clone {
    display: none;
}

.is-expanded-menu.side-header .header-row {
    flex-direction: column;
    flex-grow: 1 !important;
}

.is-expanded-menu.side-header #logo {
    margin: 3rem 0;
    width: 100%;
}

.is-expanded-menu.side-header #logo img {
    max-width: 100%;
}

.is-expanded-menu.side-header .header-misc {
    width: 100%;
    margin: 0;
}

.is-expanded-menu.side-header .primary-menu {
    margin-bottom: 30px;
    flex-grow: 0 !important;
    width: 100%;
}

.is-expanded-menu.side-header .primary-menu:not(.border-bottom-0)::after {
    margin-top: 40px;
}

.is-expanded-menu.side-header .menu-container {
    display: block;
    height: auto;
    width: 100%;
}

.is-expanded-menu .no-triggers .menu-container .sub-menu-trigger {
    display: none;
}

.is-expanded-menu.side-header .on-click .menu-item .sub-menu-trigger {
    display: block;
    top: 0;
    right: -5px;
    font-size: 10px;
}

.is-expanded-menu.side-header .primary-menu:not(.on-click) .text-center i.sub-menu-indicator {
    display: inline-block;
    position: relative;
    top: 2px;
    margin-left: 5px;
    transform: none;
}

.is-expanded-menu.side-header .primary-menu:not(.on-click) .text-center .sub-menu-container i.sub-menu-indicator {
    top: -1px;
}

.is-expanded-menu.side-header .menu-item {
    width: 100%;
}

.is-expanded-menu.side-header .menu-item:not(:first-child) {
    margin: 10px 0 0;
    border-top: 0;
}

.is-expanded-menu.side-header .menu-link {
    position: relative;
    padding: 5px 0 !important;
    margin: 0 !important;
}

.is-expanded-menu.side-header .sub-menu-container,
.is-expanded-menu.side-header .mega-menu-content {
    position: relative;
    width: 100% !important;
    background-color: transparent;
    box-shadow: none;
    border: none;
    height: auto;
    z-index: 1;
    top: 0;
    left: 0;
    margin: 5px 0;
    padding: 0 0 0 12px !important;
}

.is-expanded-menu.side-header .mega-menu-content {
    padding: 0 !important;
    margin-bottom: 0 !important;
}

.is-expanded-menu.side-header .mega-menu-column {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    border: none !important;
}

.is-expanded-menu.side-header .sub-menu-container .sub-menu-container {
    top: 0 !important;
    left: 0;
}

.is-expanded-menu.side-header .sub-menu-container.menu-pos-invert {
    left: 0;
    right: auto;
}

.is-expanded-menu.side-header .sub-menu-container .sub-menu-container.menu-pos-invert {
    right: auto;
}

.is-expanded-menu.side-header .sub-menu-container .menu-item {
    margin: 0;
    border: 0;
}

.is-expanded-menu.side-header .sub-menu-container .menu-item:first-child {
    border-top: 0;
}

.is-expanded-menu.side-header .menu-item:hover>.menu-link {
    background-color: transparent !important;
}

.is-expanded-menu.side-header .menu-container>.menu-item.sub-menu>.menu-link,
.is-expanded-menu.side-header .menu-container>.menu-item.sub-menu:hover>.menu-link {
    background-image: none !important;
}

.is-expanded-menu.side-header.open-header.push-wrapper {
    overflow-x: hidden;
}

.is-expanded-menu.side-header.open-header #header {
    left: calc(-1 * var(--dr-side-header-width));
}

.is-expanded-menu.side-header.open-header.side-header-open #header {
    left: 0;
}

.is-expanded-menu.side-header.open-header #wrapper {
    left: 0;
}

.is-expanded-menu.side-header.open-header.push-wrapper.side-header-open #wrapper {
    left: var(--dr-side-header-width);
}

.is-expanded-menu #header-trigger {
    display: none;
}

.is-expanded-menu.side-header.open-header #header-trigger {
    --dr-header-trigger-size: 2rem;
    --dr-header-trigger-offset: 1.5rem;
    display: block;
    position: fixed;
    cursor: pointer;
    top: var(--dr-header-trigger-offset);
    left: var(--dr-header-trigger-offset);
    z-index: 11;
    font-size: calc(var(--dr-header-trigger-size) * 0.5);
    width: var(--dr-header-trigger-size);
    height: var(--dr-header-trigger-size);
    line-height: calc(var(--dr-header-trigger-size) - 2px);
    background-color: var(--dr-header-bg);
    border: 1px solid rgba(var(--dr-contrast-rgb), 0.1);
    text-align: center;
    border-radius: 2px;
}

.is-expanded-menu.side-header.open-header.side-header-open #header-trigger {
    left: calc(var(--dr-side-header-width) + var(--dr-header-trigger-offset));
}

.is-expanded-menu.side-header.open-header #header-trigger i:nth-child(1),
.is-expanded-menu.side-header.open-header.side-header-open #header-trigger i:nth-child(2) {
    display: block;
}

.is-expanded-menu.side-header.open-header.side-header-open #header-trigger i:nth-child(1),
.is-expanded-menu.side-header.open-header #header-trigger i:nth-child(2) {
    display: none;
}

.is-expanded-menu.side-header.open-header #header,
.is-expanded-menu.side-header.open-header #header-trigger,
.is-expanded-menu.side-header.open-header.push-wrapper #wrapper {
    transition: left 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu.side-header.open-header #header,
    .is-expanded-menu.side-header.open-header #header-trigger,
    .is-expanded-menu.side-header.open-header.push-wrapper #wrapper {
        transition: none;
    }
}

.is-expanded-menu.side-header.side-header-right #header {
    left: auto;
    right: 0;
    border: none;
    border-left: 1px solid rgba(var(--dr-contrast-rgb), 0.1);
}

.is-expanded-menu.side-header.side-header-right:not(.open-header) #wrapper {
    margin: 0 var(--dr-side-header-width) 0 0 !important;
}

.is-expanded-menu.side-header.side-header-right.open-header #header {
    left: auto;
    right: calc(-1 * var(--dr-side-header-width));
}

.is-expanded-menu.side-header.side-header-right.open-header.side-header-open #header {
    left: auto;
    right: 0;
}

.is-expanded-menu.side-header.side-header-right.open-header.push-wrapper.side-header-open #wrapper {
    left: calc(-1 * var(--dr-side-header-width));
}

.is-expanded-menu.side-header.side-header-right.open-header #header-trigger {
    left: auto;
    right: var(--dr-header-trigger-offset);
}

.is-expanded-menu.side-header.side-header-right.open-header.side-header-open #header-trigger {
    left: auto;
    right: calc(var(--dr-side-header-width) + var(--dr-header-trigger-offset));
}

.is-expanded-menu.side-header.side-header-right.open-header #header,
.is-expanded-menu.side-header.side-header-right.open-header #header-trigger {
    transition: right 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu.side-header.side-header-right.open-header #header,
    .is-expanded-menu.side-header.side-header-right.open-header #header-trigger {
        transition: none;
    }
}

/* ----------------------------------------------------------------
  Mega Menu
-----------------------------------------------------------------*/
.mega-menu:not(.mega-menu-full) .mega-menu-content .container {
    max-width: none;
}

.is-expanded-menu .mega-menu {
    position: inherit;
}

.mega-menu-content {
    padding-left: 0;
}

.is-expanded-menu .primary-menu:not(.on-click) .mega-menu-content {
    display: flex;
}

.is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(.mega-menu) .sub-menu-container,
.is-expanded-menu .primary-menu:not(.on-click) .mega-menu-content {
    display: none;
    opacity: 0;
    margin-top: var(--dr-primary-menu-submenu-display-offset);
    z-index: -9999;
    pointer-events: none;
    transition: all calc(var(--dr-primary-menu-submenu-display-speed) * 0.75) ease;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(.mega-menu) .sub-menu-container,
    .is-expanded-menu .primary-menu:not(.on-click) .mega-menu-content {
        transition: none;
    }
}

.is-expanded-menu .primary-menu:not(.on-click) .menu-item.mega-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
    margin-top: 0;
    z-index: auto;
}

.is-expanded-menu .primary-menu:not(.on-click) .menu-item.mega-menu:hover>.mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
    pointer-events: auto;
}

.is-expanded-menu .primary-menu:not(.on-click) .menu-item:hover>.sub-menu-container,
.is-expanded-menu .primary-menu:not(.on-click) .menu-item:hover>.mega-menu-content {
    opacity: 1;
    visibility: visible;
    margin-top: 0;
    z-index: 399;
    pointer-events: auto;
    transition: opacity var(--dr-primary-menu-submenu-display-speed) ease, margin var(--dr-primary-menu-submenu-display-speed) ease;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:hover>.sub-menu-container,
    .is-expanded-menu .primary-menu:not(.on-click) .menu-item:hover>.mega-menu-content {
        transition: none;
    }
}

.is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(.menu-item-hover)>.sub-menu-container>*,
.is-expanded-menu .primary-menu:not(.on-click) .menu-item:not(.menu-item-hover)>.mega-menu-content>* {
    display: none;
}

.is-expanded-menu .primary-menu:not(.on-click) .menu-item.mega-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown)>* {
    display: block;
}

.is-expanded-menu .primary-menu:not(.on-click).primary-menu-init .menu-item:not(.mega-menu) .sub-menu-container,
.is-expanded-menu .primary-menu:not(.on-click).primary-menu-init .mega-menu-content {
    display: block;
}

.is-expanded-menu .with-arrows .menu-container>.menu-item>.menu-link div>i.sub-menu-indicator {
    display: inline-block;
}

body:not(.is-expanded-menu) .primary-menu {
    max-width: 100%;
}

body:not(.is-expanded-menu) .primary-menu>.container {
    max-width: none;
    padding: 0;
}

body:not(.is-expanded-menu) .mega-menu-content {
    border-top: none;
}

body:not(.is-expanded-menu) .mega-menu-content .sub-menu-container {
    border-top: var(--dr-primary-menu-submenu-border);
}

body:not(.is-expanded-menu) .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
    display: block !important;
}

body:not(.is-expanded-menu) .mega-menu-content .mega-menu-column {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-right: 0;
}

body:not(.is-expanded-menu) .mega-menu-column .widget {
    padding: 30px 0;
}

.mega-menu-content .mega-menu-column:first-child {
    border-top: 0;
}











/* Off Canvas Menu
-----------------------------------------------------------------*/
body:not(.is-expanded-menu) #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container {
    position: fixed;
    display: block;
    width: var(--dr-mobile-menu-off-canvas-width);
    height: 100%;
    height: 100vh;
    max-height: none !important;
    margin: 0 !important;
    left: 0 !important;
    top: 0 !important;
    padding: 35px 25px 60px !important;
    background-color: var(--dr-header-bg);
    border-right: 1px solid var(--dr-header-border-color) !important;
    overflow-y: scroll;
    transform: translate3d(calc(-1 * var(--dr-mobile-menu-off-canvas-width)), 0, 0);
    -webkit-backface-visibility: hidden;
    transform-style: preserve-3d;
    z-index: -1;
    transition: 0.3s ease-in-out, opacity 0.2s ease !important;
}

@media (prefers-reduced-motion: reduce) {
    body:not(.is-expanded-menu) #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container {
        transition: none;
    }
}

body:not(.is-expanded-menu) #header:not(.sticky-header) .mobile-menu-off-canvas .menu-container.d-block {
    z-index: 499;
    transform: translate3d(0, 0, 0);
}

body:not(.is-expanded-menu) #header:not(.sticky-header) .mobile-menu-off-canvas.from-right .menu-container {
    left: auto !important;
    right: 0;
    border-right: 0 !important;
    border-left: 1px solid var(--dr-header-border-color) !important;
    transform: translate3d(var(--dr-mobile-menu-off-canvas-width), 0);
}

/* Off Canvas Menu
-----------------------------------------------------------------*/
body:not(.is-expanded-menu) .mobile-menu-floating .menu-container {
    position: absolute;
    z-index: 99;
    width: 100%;
    min-height: 50vh;
    height: auto;
    max-height: 75vh !important;
    margin: 0 !important;
    left: 0 !important;
    top: calc(var(--dr-header-height) - 15%) !important;
    border: 1px solid rgba(var(--dr-contrast-rgb), 0.1);
    border-radius: 0.5rem;
    padding: 1rem 1.5rem !important;
    background-color: var(--dr-header-bg);
    overflow-y: auto;
    -webkit-backface-visibility: hidden;
    transition: opacity 0.3s ease;
}

/* Is expanded
-----------------------------------------------------------------*/
.is-expanded-menu .menu-container:not(.mobile-primary-menu) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.is-expanded-menu .full-header .primary-menu .menu-container {
    padding-right: 0.5rem;
    margin-right: 0.5rem;
    border-right: 1px solid var(--dr-header-border-color);
}

.is-expanded-menu .transparent-header.full-header .primary-menu .menu-container {
    border-right-color: var(--dr-header-transparent-border-color);
}

.is-expanded-menu .menu-container>.menu-item:not(:first-child) {
    margin-left: 2px;
}

.is-expanded-menu .sub-menu-container .sub-menu-container {
    list-style: none;
    top: -2px !important;
    left: 100%;
}

.is-expanded-menu .sub-menu-container.menu-pos-invert,
.is-expanded-menu .mega-menu-small .mega-menu-content.menu-pos-invert {
    left: auto;
    right: 0;
}

.is-expanded-menu .sub-menu-container .sub-menu-container.menu-pos-invert {
    right: 100%;
}

.is-expanded-menu .sub-menu-container .menu-item:not(:first-child) {
    border-top: 0;
}

.is-expanded-menu .sub-menu-container .menu-item>.menu-link {
    padding: var(--dr-primary-menu-submenu-padding-y) var(--dr-primary-menu-submenu-padding-x);
    font-weight: var(--dr-primary-menu-submenu-font-weight);
    text-transform: var(--dr-primary-menu-submenu-tt);
    border: 0;
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .is-expanded-menu .sub-menu-container .menu-item>.menu-link {
        transition: none;
    }
}

.is-expanded-menu .sub-menu-container .menu-item:hover>.menu-link {
    background-color: var(--dr-primary-menu-submenu-hover-bg);
    --dr-primary-menu-submenu-font-weight: var(--dr-primary-menu-submenu-hover-font-weight);
    padding-left: calc(var(--dr-primary-menu-submenu-padding-x) + var(--dr-primary-menu-submenu-hover-padding-offset));
}

.is-expanded-menu .sub-menu-container .menu-item:hover>.menu-link div {
    text-decoration: var(--dr-primary-menu-hover-text-decoration);
    text-underline-offset: var(--dr-primary-menu-hover-text-decoration-offset);
}

.is-expanded-menu .sub-menu-container .menu-item:hover>.menu-link,
.is-expanded-menu .sub-menu-container .menu-item.current>.menu-link {
    color: var(--dr-primary-menu-submenu-hover-color);
}

.is-expanded-menu .menu-link div>i.sub-menu-indicator {
    top: 0px;
    font-size: 0.75rem;
    margin: 0 0 0 0.1875rem;
    opacity: 0.9;
}

.is-expanded-menu .sub-menu-container .menu-link div>i.sub-menu-indicator,
.is-expanded-menu.side-header .primary-menu:not(.on-click) .menu-link i.sub-menu-indicator {
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    line-height: 1;
    margin: 0;
    transform: translateY(-50%) rotate(-90deg);
}

.is-expanded-menu .menu-item .sub-menu-trigger,
.is-expanded-menu.side-header .on-click .sub-menu-container .menu-link i.sub-menu-indicator:last-child {
    display: none;
}

.is-expanded-menu .mega-menu:not(.mega-menu-full) .mega-menu-content .container {
    max-width: none;
    padding: 0 calc(var(--bs-gutter-x) * 0.5) !important;
    margin: 0 auto !important;
}

.is-expanded-menu .mega-menu-content {
    margin: 0;
    width: 100%;
    max-width: none;
    left: 50%;
    transform: translateX(-50%);
}

.is-expanded-menu .mega-menu-full .mega-menu-content {
    width: 100%;
    left: 0;
    transform: none;
}

.is-expanded-menu .mega-menu-small {
    position: relative;
}

.is-expanded-menu .mega-menu-small .mega-menu-content {
    left: 0;
    width: var(--dr-mega-menu-width-sm);
    transform: none;
}

.is-expanded-menu .floating-header:not(.sticky-header) .mega-menu:not(.mega-menu-small) .mega-menu-content {
    max-width: 100%;
}

.is-expanded-menu .sub-menu-container .mega-menu {
    position: relative;
}

.is-expanded-menu .sub-menu-container .mega-menu-small .mega-menu-content {
    top: 0;
    left: 100%;
}

.is-expanded-menu .sub-menu-container .mega-menu-small .mega-menu-content.menu-pos-invert {
    left: auto;
    right: 100%;
}

.is-expanded-menu .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
    position: relative;
    display: block !important;
    visibility: visible !important;
    top: 0 !important;
    left: 0;
    min-width: inherit;
    height: auto !important;
    list-style: none;
    border: 0;
    box-shadow: none;
    background-color: transparent;
    opacity: 1 !important;
    z-index: auto;
}

.is-expanded-menu .mega-menu-content .sub-menu-container.mega-menu-dropdown {
    padding: 0.75rem 1.25rem;
    width: var(--dr-primary-menu-submenu-width);
}

.is-expanded-menu .mega-menu-column {
    display: block !important;
    padding-left: 0;
    padding-right: 0;
}

.is-expanded-menu .mega-menu:not(.mega-menu-small) .mega-menu-column {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.is-expanded-menu .mega-menu-content:not(.border-0) .sub-menu-container.mega-menu-column:not(:first-child) {
    border-left: var(--dr-primary-menu-submenu-border);
}

.is-expanded-menu .mega-menu .mega-menu-style-2 .mega-menu-column {
    padding: 1.75rem 1.5rem;
}

.is-expanded-menu .mega-menu-style-2 .mega-menu-title:not(:first-child) {
    margin-top: 1.5rem;
}

.is-expanded-menu .mega-menu-style-2 .mega-menu-title>.menu-link {
    --dr-primary-menu-submenu-tt: uppercase;
    --dr-primary-menu-submenu-font-weight: 700;
    --dr-primary-menu-submenu-hover-font-weight: 700;
    --dr-primary-menu-font: var(--dr-primary-font);
    font-size: calc(var(--dr-primary-menu-submenu-font-size) * 1.1);
    letter-spacing: 1px;
    margin-bottom: 0.5rem;
    color: var(--dr-primary-menu-submenu-color);
    padding: 0 !important;
    line-height: 1.3 !important;
}

.is-expanded-menu .mega-menu-style-2 .mega-menu-title:hover>.menu-link {
    --dr-primary-menu-submenu-hover-bg: transparent;
}

.is-expanded-menu .mega-menu-style-2 .mega-menu-title:hover>.menu-link div {
    text-decoration: none;
}

.is-expanded-menu .mega-menu-style-2 .mega-menu-title>.menu-link:hover {
    color: var(--dr-primary-menu-hover-color);
}

.is-expanded-menu .mega-menu-style-2 .sub-menu-container:not(.mega-menu-dropdown) .menu-item {
    border: 0;
}

.is-expanded-menu .mega-menu-style-2 .sub-menu-container:not(.mega-menu-dropdown) .menu-link {
    --dr-primary-menu-submenu-padding-x: 0.25rem;
    --dr-primary-menu-submenu-padding-y: 0.5rem;
    will-change: transform;
}

.is-expanded-menu .mega-menu-style-2 .sub-menu-container:not(.mega-menu-dropdown) .menu-item:not(.mega-menu-title):hover>.menu-link {
    --dr-primary-menu-submenu-hover-bg: rgba(var(--dr-contrast-rgb), 0.025);
    --dr-primary-menu-submenu-hover-padding-offset: 0.375rem;
    padding-right: 0.25rem;
    border-radius: 0.25rem;
}

.is-expanded-menu .on-click .sub-menu-container,
.is-expanded-menu .on-click .mega-menu-content {
    display: none;
    visibility: visible;
}

.is-expanded-menu .on-click .menu-item:not(.mega-menu-small) .mega-menu-content .sub-menu-container:not(.mega-menu-dropdown) {
    display: block;
}

.is-expanded-menu .style-2 #logo {
    margin-right: 1.5rem;
}

.is-expanded-menu .style-2 .primary-menu {
    margin-right: auto;
}

.is-expanded-menu .style-2.menu-center .primary-menu {
    margin-right: auto;
    margin-left: auto;
}

.is-expanded-menu .style-3 .menu-container>.menu-item>.menu-link {
    --dr-primary-menu-padding-y: 11px;
    margin: 28px 0;
    border-radius: 2px;
}

.is-expanded-menu .style-3 .menu-container>.menu-item:hover>.menu-link {
    background-color: var(--dr-primary-menu-submenu-hover-bg);
}

.is-expanded-menu .style-3 .menu-container>.menu-item.current>.menu-link {
    --dr-primary-menu-active-color: var(--dr-white);
    background-color: var(--dr-themecolor);
}

.is-expanded-menu .style-4 .menu-container>.menu-item>.menu-link {
    --dr-primary-menu-padding-y: 28px;
    margin: var(--dr-primary-menu-padding-y) 0;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 2px;
    border: 1px solid transparent;
}

.is-expanded-menu .style-4 .menu-container>.menu-item:hover>.menu-link {
    border-color: var(--dr-primary-menu-hover-color);
}

.is-expanded-menu .style-4 .menu-container>.menu-item.current>.menu-link {
    border-color: var(--dr-primary-menu-active-color);
}

.is-expanded-menu .style-5 .menu-container {
    padding-right: 10px;
    margin-right: 5px;
    border-right: 1px solid var(--dr-header-border-color);
}

.is-expanded-menu .style-5 .menu-container>.menu-item:not(:first-child) {
    margin-left: 15px;
}

.is-expanded-menu .style-5 .menu-container>.menu-item>.menu-link {
    --dr-primary-menu-padding-y: 27px;
    line-height: 1;
}

.is-expanded-menu .style-5 .menu-container>.menu-item>.menu-link i:not(.sub-menu-indicator) {
    display: block;
    width: auto;
    margin: 0 0 12px;
    font-size: 20px;
    line-height: 1;
    transition: all 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
    .is-expanded-menu .style-5 .menu-container>.menu-item>.menu-link i:not(.sub-menu-indicator) {
        transition: none;
    }
}

.is-expanded-menu .style-6 .menu-container>.menu-item>.menu-link {
    position: relative;
}

.is-expanded-menu .style-6 .menu-container>.menu-item>.menu-link::after,
.is-expanded-menu .style-6 .menu-container>.menu-item.current>.menu-link::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 2px;
    width: 0;
    border-top: 2px solid var(--dr-primary-menu-active-color);
    transition: width 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu .style-6 .menu-container>.menu-item>.menu-link::after,
    .is-expanded-menu .style-6 .menu-container>.menu-item.current>.menu-link::after {
        transition: none;
    }
}

.is-expanded-menu .style-6 .menu-container>.menu-item.current>.menu-link::after,
.is-expanded-menu .style-6 .menu-container>.menu-item:hover>.menu-link::after {
    width: 100%;
}

.is-expanded-menu .sub-title .menu-container>.menu-item {
    margin-left: 0;
}

.is-expanded-menu .sub-title .menu-container>.menu-item>.menu-link {
    --dr-header-height: 100px;
    --dr-primary-menu-padding-y: 32px;
    --dr-primary-menu-padding-x: 20px;
    position: relative;
    line-height: 14px;
}

.is-expanded-menu .sub-title .menu-container>.menu-item:not(:first-child)>.menu-link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    z-index: -2;
    width: 1px;
    height: 36px;
    background-color: var(--cnvs-contrast-200);
    transform: translateY(-50%);
}

.is-expanded-menu .sub-title .menu-container>.menu-item>.menu-link span {
    display: block;
    margin-top: 13px;
    line-height: 12px;
    font-size: 0.825rem;
    font-weight: 400;
    color: var(--cnvs-contrast-600);
    text-transform: capitalize;
}

.is-expanded-menu .sub-title .menu-container>.menu-item:hover>.menu-link,
.is-expanded-menu .sub-title .menu-container>.menu-item.current>.menu-link {
    color: #FFF;
}

.is-expanded-menu .sub-title .menu-container>.menu-item:hover>.menu-link span,
.is-expanded-menu .sub-title .menu-container>.menu-item.current>.menu-link span {
    color: var(--cnvs-contrast-200);
}

.is-expanded-menu .sub-title .menu-container>.menu-item:hover>.menu-link::after,
.is-expanded-menu .sub-title .menu-container>.menu-item.current>.menu-link::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: var(--dr-themecolor);
    border-top: 5px solid rgba(0, 0, 0, 0.1);
}











.is-expanded-menu.overlay-menu:not(.top-search-open) .primary-menu-trigger {
    display: flex;
    opacity: 1;
    pointer-events: auto;
    width: 30px;
    height: 30px;
    line-height: 30px;
}

.is-expanded-menu.overlay-menu .primary-menu-trigger {
    z-index: 599;
}

.is-expanded-menu.overlay-menu .primary-menu {
    --dr-primary-menu-font-size: 0.9375rem;
    position: fixed;
    top: 0;
    left: 0;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    width: 100%;
    height: 100%;
    height: 100vh;
    background-color: var(--dr-header-bg);
    background: rgba(255, 255, 255, 0.95);
}

.is-expanded-menu.overlay-menu .primary-menu>#overlay-menu-close {
    position: fixed;
    top: 25px;
    left: auto;
    right: 25px;
    width: 48px;
    height: 48px;
    line-height: 48px;
    font-size: 1.5rem;
    text-align: center;
    color: var(--cnvs-contrast-900);
}

.is-expanded-menu.overlay-menu .primary-menu,
.is-expanded-menu.overlay-menu .primary-menu>#overlay-menu-close {
    opacity: 0 !important;
    pointer-events: none;
    z-index: -2;
    -webkit-transform: translateY(-80px);
    transform: translateY(-80px);
    transition: opacity 0.4s ease, transform 0.45s ease !important;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu.overlay-menu .primary-menu,
    .is-expanded-menu.overlay-menu .primary-menu>#overlay-menu-close {
        transition: none;
    }
}

.is-expanded-menu.overlay-menu.primary-menu-open .primary-menu,
.is-expanded-menu.overlay-menu.primary-menu-open #overlay-menu-close {
    opacity: 1 !important;
    pointer-events: auto;
    z-index: 499;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: opacity 0.3s ease, transform 0.45s ease !important;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu.overlay-menu.primary-menu-open .primary-menu,
    .is-expanded-menu.overlay-menu.primary-menu-open #overlay-menu-close {
        transition: none;
    }
}

.is-expanded-menu.overlay-menu .primary-menu,
.is-expanded-menu.overlay-menu.primary-menu-open .primary-menu {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    transition: opacity 0.3s ease !important;
}

@media (prefers-reduced-motion: reduce) {

    .is-expanded-menu.overlay-menu .primary-menu,
    .is-expanded-menu.overlay-menu.primary-menu-open .primary-menu {
        transition: none;
    }
}

.is-expanded-menu.overlay-menu .primary-menu>.container {
    max-height: 90%;
    overflow-y: scroll;
}

.is-expanded-menu.overlay-menu .menu-container {
    display: -ms-flexbox !important;
    display: flex !important;
    flex-direction: column;
    max-width: 250px;
    padding: 0 !important;
    margin: 0 auto !important;
    border: 0 !important;
}

.is-expanded-menu.overlay-menu .menu-item {
    position: relative;
    width: 100%;
}

.is-expanded-menu.overlay-menu .menu-link {
    --dr-primary-menu-padding-y: 10px;
    --dr-primary-menu-padding-x: 0;
}

.is-expanded-menu.overlay-menu .sub-menu-container,
.is-expanded-menu.overlay-menu .mega-menu-content {
    display: none;
    position: relative;
    top: 0 !important;
    left: 0 !important;
    right: auto;
    width: 100% !important;
    max-width: 100%;
    box-shadow: none;
    background: transparent;
    border: 0;
    padding: 5px 0 !important;
    transform: translateX(0);
}

.is-expanded-menu.overlay-menu .mega-menu-content .sub-menu-container {
    padding: 5px 0 !important;
}

.is-expanded-menu.overlay-menu .mega-menu-title .sub-menu-container {
    padding-top: 0 !important;
}

.is-expanded-menu.overlay-menu .mega-menu-content .mega-menu-column {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
    border: 0 !important;
}

.is-expanded-menu.overlay-menu .sub-menu-container .menu-link {
    padding: 5px 0;
}

.is-expanded-menu.overlay-menu .sub-menu-container .menu-link i.sub-menu-indicator {
    position: relative;
    /*display: inline-block;*/
    display: none;
    top: -1px;
    left: 0;
    margin-left: 5px;
    transform: rotate(0deg);
}

.is-expanded-menu.overlay-menu .sub-menu-container .menu-item:hover>.menu-link {
    padding-left: 0;
    padding-right: 0;
    background: transparent;
}

.is-expanded-menu.overlay-menu .sub-menu-trigger {
    display: block;
    top: 5px;
}

.is-expanded-menu.overlay-menu .sub-menu-container .sub-menu-trigger {
    top: 0;
}

@media (max-width: 767.98px) {

    .side-push-panel #side-panel-trigger-close a,
    .side-push-panel #side-cart-panel-trigger-close a {
        display: block;
        position: absolute;
        z-index: 12;
        top: 0;
        left: auto;
        right: 0;
        width: 40px;
        height: 40px;
        font-size: 18px;
        line-height: 40px;
        color: var(--cnvs-contrast-900);
        text-align: center;
        background-color: rgba(0, 0, 0, 0.1);
        border-radius: 0 0 0 2px;
    }
}






/* ----------------------------------------------------------------
  Top Search
-----------------------------------------------------------------*/
.header-misc {
    position: initial;
    display: flex;
    align-items: center;
    margin-left: 15px;
}

.is-expanded-menu .header-misc {
    order: 6;
}

.header-misc-element,
.header-misc-icon {
    margin: 0 8px;
}

.header-misc-icon>a {
    display: flex;
    position: relative;
    width: calc(var(--dr-header-misc-icons-size) + 0.125rem);
    height: calc(var(--dr-header-misc-icons-size) + 0.125rem);
    font-size: calc(var(--dr-header-misc-icons-size));
    line-height: calc(var(--dr-header-misc-icons-size) + 0.125rem);
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--dr-header-misc-icons-color);
    transition: color 0.3s ease-in-out;
}

.header-misc-icon>a:hover {
    color: var(--dr-header-misc-icons-color-h);
}

@media (prefers-reduced-motion: reduce) {
    .header-misc-icon>a {
        transition: none;
    }
}

.header-misc-logo img {
    width: calc(var(--dr-header-misc-icons-size) + 0.125rem);
    height: calc(var(--dr-header-misc-icons-size) + 0.125rem);
}

.is-expanded-menu .header-misc:not([class*=order-]) {
    order: 6;
}

#top-search {
    transition: opacity 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
    #top-search {
        transition: none;
    }
}

#top-search a {
    z-index: 11;
}

#top-search a i {
    transition: opacity 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
    #top-search a i {
        transition: none;
    }
}

.top-search-open #top-search a i:nth-child(1),
#top-search a i:nth-child(2) {
    display: none;
}

.top-search-open #top-search a i:nth-child(2) {
    display: block;
    z-index: 11;
    /* font-size: 1.125rem; */
}

.top-search-form {
    opacity: 0;
    z-index: -2;
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0 auto;
    top: 0;
    left: 0;
    right: 0;
    transition: opacity 0.3s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .top-search-form {
        transition: none;
    }
}

.top-search-open .top-search-form {
    opacity: 1;
    z-index: 10;
    pointer-events: auto;
}

.top-search-form input {
    box-shadow: none !important;
    border-radius: 0;
    border: 0;
    outline: 0 !important;
    font-size: 1.175rem;
    padding: 10px 80px 10px 15px;
    height: 100%;
    background-color: transparent !important;
    color: var(--dr-header-misc-icons-color) !important;
    font-weight: 500;
    margin-top: 0 !important;
    font-family: var(--dr-primary-font);
}

@media (min-width: 992px) {
    .top-search-form input {
        font-size: var(--dr-top-search-font-size);
    }

    .full-header .top-search-form input,
    .container-fluid .top-search-form input,
    .container-sm .top-search-form input,
    .container-md .top-search-form input,
    .container-lg .top-search-form input,
    .container-xl .top-search-form input,
    .container-xxl .top-search-form input {
        padding-left: 30px;
    }

    .transparent-header:not(.sticky-header):not(.full-header):not(.floating-header) .top-search-form input {
        border-bottom: 2px solid var(--dr-header-transparent-border-color);
    }
}

.search-overlay .top-search-form {
    position: fixed;
    width: 100vw !important;
    height: 100vh;
    top: 0;
    left: 0;
    display: flex;
    background-color: var(--cnvs-contrast-0);
    align-items: center;
    justify-content: center;
}

.search-overlay .top-search-form input {
    max-width: 580px;
    margin: 0 auto;
    text-align: center;
    padding: 0 40px;
}

.top-search-form input::-moz-placeholder {
    color: var(--dr-top-search-placeholder);
    opacity: 1;
}

.top-search-form input:-ms-input-placeholder {
    color: var(--dr-top-search-placeholder);
    opacity: 1;
}

.top-search-form input::-webkit-input-placeholder {
    color: var(--dr-top-search-placeholder);
    opacity: 1;
}

.primary-menu .container .top-search-form input,
.sticky-header .top-search-form input {
    border: none !important;
}

/* Top Search Animation */
body:not(.top-search-open) .top-search-parent #logo,
body:not(.top-search-open) .top-search-parent .primary-menu,
body:not(.top-search-open) .top-search-parent .header-misc>*:not(#top-search),

body:not(.top-search-open) .top-search-parent .top-page-menu-item {
    opacity: 1;
    transition: padding 0.4s ease, margin 0.4s ease, opacity 0.2s 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {
    body:not(.top-search-open) .top-search-parent #logo,
    body:not(.top-search-open) .top-search-parent .primary-menu,
    body:not(.top-search-open) .top-search-parent .header-misc>*:not(#top-search),

    body:not(.top-search-open) .top-search-parent .top-page-menu-item {
        transition: none;
    }
}

.top-search-open .top-search-parent #logo,
.top-search-open .top-search-parent .primary-menu,
.top-search-open .top-search-parent .header-misc>*:not(#top-search),

.top-search-open .top-search-parent .top-page-menu-item {
    opacity: 0;
}

/* ----------------------------------------------------------------
  Top Cart
-----------------------------------------------------------------*/
.top-cart-number {
    --cnvs-top-cart-number-size: 1.125rem;
    display: block;
    position: absolute;
    top: -7px;
    left: auto;
    right: -8px;
    font-size: 1rem;
    color: var(--dr-light);
    width: var(--cnvs-top-cart-number-size);
    height: var(--cnvs-top-cart-number-size);
    line-height: var(--cnvs-top-cart-number-size);
    text-align: center;
    background-color: var(--dr-danger);
    opacity: 0.8;
    border-radius: 50%;
}

@media (min-width: 992px) {
    #top-cart {
        position: relative;
    }
}

.top-cart-content,
.top-account-content {
    position: fixed;
    top: 0;
    left: auto;
    width: 300px;
    background-color: var(--dr-primary-menu-submenu-bg);
    border: 0;
    box-shadow: 0px 20px 50px 10px rgba(0, 0, 0, 0.05);
    border-radius: 0.25rem;
    transition: all 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {

    .top-cart-content,
    .top-account-content {
        transition: none;
    }
}

@media (max-width: 991.98px) {

    .top-cart-content,
    .top-account-content {
        right: 0 !important;
        transform: translate3d(300px, 0, 0);
        height: 100vh;
        z-index: -1;
    }
}

@media (min-width: 992px) {

    .top-cart-content,
    .top-account-content {
        opacity: 0;
        position: absolute;
        width: 280px;
        /* border: 1px solid var(--dr-header-border-color); */
        border-top: 10px solid var(--dr-primary-light);
        top: calc(100% + 10px);
        right: -1rem;
        margin: -10000px 0 0;
        z-index: auto;
        transition: opacity 0.5s ease, top 0.4s ease;
    }
}

@media (min-width: 992px) and (prefers-reduced-motion: reduce) {

    .top-cart-content,
    .top-account-content {
        transition: none;
    }
}

.top-cart-title {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--dr-header-border-color);
}

.top-cart-title h4,
.top-cart-title .h4 {
    margin-bottom: 0;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.top-cart-items {
    padding: 1rem;
}

@media (min-width: 992px) {
    .top-cart-items {
        padding: 1rem;
    }
}

.top-cart-item,
.top-cart-action,
.top-cart-item-desc {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.top-cart-item {
    justify-content: flex-start;
}

.top-cart-item:not(:first-child) {
    padding-top: 1rem;
    margin-top: 1rem;
    border-top: 1px solid var(--dr-header-border-color);
}

.top-cart-item-image a,
.top-cart-item-image img {
    display: block;
    width: 60px;
    height: 60px;
}

.top-cart-item-image:hover {
    border-color: var(--dr-themecolor);
}

.top-cart-item-desc,
.top-cart-item-desc-title {
    padding-left: 1rem;
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

.top-cart-item-desc {
    align-items: flex-start;
}

.top-cart-item-desc-title {
    padding-left: 0;
}

.top-cart-item-desc a {
    display: block;
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: var(--cnvs-contrast-800);
    font-weight: 500;
    margin-bottom: 5px;
}

.top-cart-item-desc a:hover {
    color: var(--dr-themecolor);
}

.top-cart-item-price {
    font-size: 0.75rem;
    color: var(--dr-primary-menu-color);
}

.top-cart-item-quantity {
    padding-top: 5px;
    font-size: 0.75rem;
    line-height: 1.25rem;
    color: var(--dr-primary-menu-color);
}

.top-cart-action {
    align-items: center;
    padding: 1rem;
    border-top: 1px solid var(--dr-header-border-color);
}

.top-cart-action .top-checkout-price {
    font-size: 1.25rem;
    color: var(--dr-secondary-light);
    font-weight: 500;
}

@media (max-width: 991.98px) {

    .top-cart-open .top-cart-content,
    .top-account-open .top-account-content {
        transform: translate3d(0, 0, 0);
        z-index: 499;
    }
}

@media (min-width: 992px) {

    .top-cart-open .top-cart-content,
    .top-account-open .top-account-content {
        opacity: 1;
        z-index: 399;
        margin-top: 0;
    }
}






















/* ----------------------------------------------------------------
  Hamburger
-----------------------------------------------------------------*/
.cnvs-hamburger {
    display: block;
    position: relative;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    padding: 0;
    overflow: visible;
}

.cnvs-hamburger .cnvs-hamburger-box {
    width: var(--dr-hamburger-size);
    height: var(--dr-hamburger-size);
    display: block;
    position: relative;
}

.cnvs-hamburger .cnvs-hamburger-inner {
    display: block;
    top: 50%;
    margin-top: calc(-1 * var(--dr-hamburger-width) * 0.5);
    transition-duration: 0.075s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.cnvs-hamburger .cnvs-hamburger-inner,
.cnvs-hamburger .cnvs-hamburger-inner::before,
.cnvs-hamburger .cnvs-hamburger-inner::after {
    width: var(--dr-hamburger-size);
    height: var(--dr-hamburger-width);
    background-color: var(--dr-hamburger-color);
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
}

.cnvs-hamburger .cnvs-hamburger-inner::before,
.cnvs-hamburger .cnvs-hamburger-inner::after {
    content: "";
    display: block;
}

.cnvs-hamburger .cnvs-hamburger-inner::before {
    top: var(--dr-hamburger-offset);
    transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}

.cnvs-hamburger .cnvs-hamburger-inner::after {
    bottom: var(--dr-hamburger-offset);
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.primary-menu-trigger-active .cnvs-hamburger .cnvs-hamburger-inner {
    transform: rotate(45deg);
    transition-delay: 0.12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.primary-menu-trigger-active .cnvs-hamburger .cnvs-hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}

.primary-menu-trigger-active .cnvs-hamburger .cnvs-hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}







/* ----------------------------------------------------------------
-------------------------------------------------------------------

  			       **** Navigation ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/




/* ----------------------------------------------------------------
  Primary Menu
-----------------------------------------------------------------*/
.primary-menu {
    display: flex;
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
}

.is-expanded-menu .primary-menu {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    flex-grow: 0;
}

.primary-menu+.primary-menu {
    border-top: var(--dr-primary-menu-submenu-border);
}

.is-expanded-menu .primary-menu+.primary-menu {
    border-top: 0;
}

.primary-menu-trigger,
#page-menu-trigger {
    --cnvs-menu-trigger-gap: 0.75rem;
    display: flex;
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    padding: var(--cnvs-menu-trigger-gap);
    transition: opacity 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {

    .primary-menu-trigger,
    #page-menu-trigger {
        transition: none;
    }
}

.is-expanded-menu .primary-menu-trigger,
.is-expanded-menu #page-menu-trigger {
    display: none;
    opacity: 0;
    pointer-events: none;
    z-index: 0;
}

body:not(.top-search-open) .top-search-parent .primary-menu-trigger {
    opacity: 1;
    transition: opacity 0.2s 0.2s ease, top 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {
    body:not(.top-search-open) .top-search-parent .primary-menu-trigger {
        transition: none;
    }
}

.top-search-open .top-search-parent .primary-menu-trigger {
    opacity: 0;
}

.primary-menu-trigger .primary-menu-trigger-text {
    margin-left: 0.25rem;
}





.menu-container {
    display: none;
    list-style: none;
    margin: 0;
    width: 100%;
}

.menu-item {
    position: relative;
    transition: background 0.5s ease-in-out, color 0.5s ease-in-out;
}

.menu-item:not(:first-child) {
    border-top: var(--dr-primary-menu-submenu-border);
}

.is-expanded-menu .menu-item:not(:first-child) {
    border-top: 0;
}

.menu-item:hover {
    background-color: var(--dr-primary-menu-bg-hover-color);
}

.menu-item.current,
.menu-item.active {
    background-color: var(--dr-primary-menu-bg-active-color);
}

.menu-item:hover>.menu-link {
    color: var(--dr-primary-menu-hover-color);
}

.menu-item.current>.menu-link {
    color: var(--dr-primary-menu-active-color);
}

.menu-item .sub-menu-trigger {
    display: block;
    position: absolute;
    cursor: pointer;
    outline: none;
    border: none;
    background: none;
    padding: 0;
    top: 9px;
    right: 0;
    width: 32px;
    height: 32px;
    font-size: 12px;
    line-height: 32px;
    text-align: center;
    color: var(--dr-primary-menu-color);
    transition: transform 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
    .menu-item .sub-menu-trigger {
        transition: none;
    }
}

.is-expanded-menu .menu-item.menu-item-important>.menu-link>div::after {
    content: "";
    display: inline-block;
    position: relative;
    top: -0.25rem;
    left: 0.25rem;
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    background-color: var(--dr-danger);
}

.menu-link {
    --dr-primary-menu-padding-y: 14px;
    --dr-primary-menu-padding-x: 5px;
    display: block;
    line-height: 22px;
    padding: var(--dr-primary-menu-padding-y) var(--dr-primary-menu-padding-x);
    color: var(--dr-primary-menu-color);
    font-weight: var(--dr-primary-menu-font-weight);
    font-size: var(--dr-primary-menu-font-size);
    font-family: var(--dr-primary-menu-font);
    text-transform: var(--dr-primary-menu-tt);
    letter-spacing: var(--dr-primary-menu-ls);
}

.is-expanded-menu .menu-link {
    --dr-primary-menu-padding-y: calc(calc(var(--dr-sticky-header-height) - 22px) * 0.5);
    --dr-primary-menu-padding-x: 15px;
    transition: margin 0.4s ease, padding 0.4s ease;
}

@media (prefers-reduced-motion: reduce) {
    .is-expanded-menu .menu-link {
        transition: none;
    }
}

.menu-link span {
    display: none;
}

.menu-link i {
    position: relative;
    font-size: var(--dr-primary-menu-icon-size);
    width: var(--dr-primary-menu-icon-size);
    text-align: center;
    margin-right: 0.625rem;
    vertical-align: top;
}

.menu-link div>i.sub-menu-indicator {
    display: none;
}

.is-expanded-menu .menu-container>.menu-item-divider {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    height: 2.5rem;
    border-left: var(--dr-primary-menu-submenu-border);
}

.is-expanded-menu .sub-menu-container>.menu-item-divider {
    margin-top: 0.375rem;
    margin-bottom: 0.375rem;
    border-top: var(--dr-primary-menu-submenu-border);
}

.sub-menu-container,
.mega-menu-content {
    position: relative;
    padding-left: 15px;
    border-top: 1px solid var(--dr-header-border-color);
    list-style: none;
    margin-bottom: 0;
}

.is-expanded-menu .sub-menu-container,
.is-expanded-menu .mega-menu-content {
    position: absolute;
    visibility: hidden;
    background-color: var(--dr-primary-menu-submenu-bg);
    box-shadow: 0px 13px 42px 11px rgba(0, 0, 0, 0.05);
    border: var(--dr-primary-menu-submenu-border);
    border-top: var(--dr-primary-menu-submenu-top-border);
    z-index: 399;
    top: 100%;
    left: 0;
    padding: 0;
}

.is-expanded-menu .menu-container>.menu-item:not(.mega-menu) .sub-menu-container:not([class*=col-]):not([class=col]) {
    width: var(--dr-primary-menu-submenu-width);
}

.sub-menu-container .menu-item:not(:first-child) {
    border-top: var(--dr-primary-menu-submenu-border);
}

.sub-menu-container .menu-item>.menu-link {
    position: relative;
    padding: 10px 5px;
    font-size: var(--dr-primary-menu-submenu-font-size);
    font-weight: var(--dr-primary-menu-submenu-font-weight);
    color: var(--dr-primary-menu-submenu-color);
    letter-spacing: var(--dr-primary-menu-submenu-spacing);
    font-family: var(--dr-primary-menu-submenu-font);
}

.sub-menu-container .menu-item>.menu-link div {
    position: relative;
}

.sub-menu-container .menu-item:hover>.menu-link {
    --dr-primary-menu-submenu-font-weight: var(--dr-primary-menu-submenu-hover-font-weight);
}

.sub-menu-container .menu-item .sub-menu-trigger {
    top: 6px;
}

.sub-menu-container .sub-menu-trigger {
    font-size: 10px;
}















.rarpage-menu {
    z-index: 1199;
    position: fixed;
}


/* ----------------------------------------------------------------
    Page Menu
-----------------------------------------------------------------*/
#page-menu {
    position: relative;
}

#page-menu-wrap {
    position: absolute;
    z-index: 199;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 100%;
    color: var(--dr-page-submenu-txt-color);
    background-color: var(--dr-page-submenu-bg-color);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
}


#page-menu.has-side-menu.sticky-page-menu #page-menu-wrap {
    /* margin-left: var(--dr-side-header-width) + 40px; <-- not working */


}



@media (min-width: 576px) {}

@media (min-width: 768px) {}

@media (max-width: 992px) {
    .page-menu-row {
        width: 100%;
    }

}



@media (min-width: 992px) {
    #page-menu.has-side-menu.sticky-page-menu #page-menu-wrap {
        /* margin-left: var(--dr-side-header-width) + 40px; <-- not working */
        margin-left: 260px;
        width: calc(100% - var(--dr-side-header-width));
    }
}

@media (min-width: 1200px) {}

@media (min-width: 1400px) {}






#page-menu.sticky-page-menu #page-menu-wrap {
    position: fixed;
    /* box-shadow: 0 0 15px rgba(0, 0, 0, 0.3); */
}

body:not(.is-expanded-pagemenu) #page-menu {
    --dr-page-submenu-sticky-offset: 0;
}

body:not(.is-expanded-pagemenu) #header[data-mobile-sticky=true]~#page-menu {
    --dr-page-submenu-sticky-offset: var(--dr-header-height);
}

#page-menu.sticky-page-menu:not(.dots-menu) #page-menu-wrap {
    top: var(--dr-page-submenu-sticky-offset);
}

#page-menu-trigger {
    opacity: 1;
    pointer-events: auto;
    top: 0;
    margin-top: 0;
    left: auto;
    right: 15px;
    width: var(--dr-page-submenu-trigger);
    height: var(--dr-page-submenu-trigger);
    line-height: var(--dr-page-submenu-trigger);
    color: var(-rar-dark);
}

.page-menu-open #page-menu-trigger {
    background-color: rgba(0, 0, 0, 0.2);
}

.page-menu-row {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.page-menu-title {
    color: #FFF;
    font-size: 1.25rem;
    font-weight: 300;
    margin-right: auto;
}

.page-menu-title span {
    font-weight: 700;
}

.page-menu-nav {
    display: -ms-flex;
    display: flex;
    position: relative;
    width: 100%;
    top: 0;
    left: 0;
    background-color: transparent !important;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    flex-grow: 0;

    /* display: none;
  position: absolute;
  width: 200px;
  top: 100%;
  left: auto;
  right: 0;
  height: auto;
  background-color: var(--dr-themecolor); */
}

.is-expanded-pagemenu .page-menu-nav {
    display: -ms-flex;
    display: flex;
    position: relative;
    width: 100%;
    top: 0;
    left: 0;
    background-color: transparent !important;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    flex-grow: 0;
}

#page-menu.page-menu-open .page-menu-nav {
    display: block;
}

.page-menu-nav .page-menu-container {
    margin: 0;
    list-style: none;
    /* background-color: rgba(0, 0, 0, 0.2); */
}

.is-expanded-pagemenu .page-menu-nav .page-menu-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    list-style: none;
    background-color: transparent;
}

.page-menu-item {
    position: relative;
}

.page-menu-item>a {
    display: block;
    position: relative;
    line-height: 22px;
    padding: 11px 14px;
    color: var(--dr-black);
    font-size: var(--dr-page-submenu-link-size);

}

.is-expanded-pagemenu .page-menu-item>a {
    /* margin: var(--dr-page-submenu-link-marging-y) var(--dr-page-submenu-link-marging-x); */
    height: 100%;
    padding-top: auto;
    padding-bottom: auto;
    border-radius: var(--dr-page-submenu-link-rounded);
    transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .is-expanded-pagemenu .page-menu-item>a {
        transition: none;
    }
}

.page-menu-item>a .sub-menu-indicator {
    position: absolute;
    top: 50%;
    left: auto;
    right: 14px;
    transform: translateY(-50%);
}

.is-expanded-pagemenu .page-menu-item>a .sub-menu-indicator {
    position: relative;
    left: 0;
    right: 0;
    margin-left: 0.5rem;
    transform: none;
}

.page-menu-item:hover>a,
.page-menu-item.current>a {
    background-color: var(--dr-secondary-h);
}

.page-menu-sub-menu {
    display: none;
    background-color: var(--dr-menu-dropdown-bg);
    list-style: none;
    padding: 1px 10px 5px;
}

.page-menu-sub-menu>.page-menu-item>a {
    color: var(--dr-light);
}

.is-expanded-pagemenu .page-menu-sub-menu {
    display: none;
    position: absolute;
    list-style: none;
    width: var(--dr-page-submenu-dropdown-width);
    top: 100%;
    left: 0;
    padding: 0;
    background-color: var(--dr-menu-dropdown-bg);
}

.page-menu-item:hover>.page-menu-sub-menu {
    display: block;
}

.page-menu-sub-menu .page-menu-item>a {
    margin: 5px 0;
    padding-top: 3px;
    padding-bottom: 3px;
    border-radius: 0;
}

.is-expanded-pagemenu .page-menu-sub-menu .page-menu-item>a {
    height: auto;
    margin: 0;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 0;
}

.is-expanded-pagemenu .page-menu-sub-menu li:hover a,
.is-expanded-pagemenu .page-menu-sub-menu li.current a {
    background-color: rgba(0, 0, 0, 0.3);
}






















/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Functions ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/








/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Animations ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/






/* ----------------------------------------------------------------
-------------------------------------------------------------------

                    **** Icons ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/


/* ----------------------------------------------------------------
    Icon Font
-----------------------------------------------------------------*/

@font-face {
    font-family: 'dead-iconic';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url("/assets/icons/font/dead-iconic.woff2") format("woff2");
}

.icon {
    font-family: "dead-iconic";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    text-rendering: auto;
}

.dr-dead-robots::before {
    content: "\e000";
}

.dr-no-robots::before {
    content: "\e001";
}

.dr-skull::before {
    content: "\e002";
}

.dr-smiley-ghost::before {
    content: "\e003";
}

.dr-peace::before {
    content: "\e004";
}

.dr-star::before {
    content: "\e005";
}

.dr-puzzle-piece::before {
    content: "\e006";
}

.dr-death-potion::before {
    content: "\e007";
}

.dr-code-block::before {
    content: "\e008";
}

.dr-paint::before {
    content: "\e009";
}

.dr-briefcase::before {
    content: "\e00a";
}

.dr-phone::before {
    content: "\e00b";
}

.dr-plus::before {
    content: "\e00c";
}

.dr-minus::before {
    content: "\e00b";
}

.dr-times::before {
    content: "\e00e";
}

.dr-star-badge::before {
    content: "\e00f";
}

.dr-location-marker::before {
    content: "\e010";
}

.dr-power::before {
    content: "\e011";
}

.dr-magnify::before {
    content: "\e012";
}

.dr-cog::before {
    content: "\e013";
}

.dr-heart::before {
    content: "\e014";
}

.dr-cloud::before {
    content: "\e015";
}

.dr-love-potion::before {
    content: "\e016";
}

.dr-magnify-minus::before {
    content: "\e017";
}

.dr-magnify-plus::before {
    content: "\e018";
}

.dr-mobile::before {
    content: "\e019";
}

.dr-tablet::before {
    content: "\e01a";
}

.dr-desktop::before {
    content: "\e01b";
}

.dr-article::before {
    content: "\e01c";
}

.dr-project::before {
    content: "\e01d";
}

.dr-radio::before {
    content: "\e01e";
}

.dr-info-bubble::before {
    content: "\e01f";
}

.dr-tasks::before {
    content: "\e020";
}

.dr-trolly-empty::before {
    content: "\e021";
}

.dr-trolly-plus::before {
    content: "\e022";
}

.dr-trolly-full::before {
    content: "\e023";
}

.dr-basket-empty::before {
    content: "\e024";
}

.dr-basket-plus::before {
    content: "\e025";
}

.dr-basket-full::before {
    content: "\e026";
}

.dr-calendar-blank::before {
    content: "\e027";
}

.dr-calendar-dates::before {
    content: "\e028";
}

.dr-calendar-star::before {
    content: "\e029";
}

.dr-calendar-check::before {
    content: "\e02a";
}

.dr-calendar-edit::before {
    content: "\e02b";
}

.dr-check::before {
    content: "\e02c";
}

.dr-square-thin::before {
    content: "\e02d";
}

.dr-square-thick::before {
    content: "\e02e";
}

.dr-square-fill::before {
    content: "\e02f";
}

.dr-checkbox::before {
    content: "\e030";
}

.dr-circle-thin::before {
    content: "\e031";
}

.dr-circle-thick::before {
    content: "\e032";
}

.dr-circle-fill::before {
    content: "\e033";
}

.dr-arrow-up::before {
    content: "\e034";
}

.dr-arrow-right::before {
    content: "\e035";
}

.dr-arrow-down::before {
    content: "\e036";
}

.dr-arrow-left::before {
    content: "\e037";
}

.dr-cheveron-up::before {
    content: "\e038";
}

.dr-cheveron-right::before {
    content: "\e039";
}

.dr-cheveron-down::before {
    content: "\e03a";
}

.dr-cheveron-left::before {
    content: "\e03b";
}

.dr-chev-lite-up::before {
    content: "\e03c";
}

.dr-chev-lite-right::before {
    content: "\e03d";
}

.dr-chev-lite-down::before {
    content: "\e03e";
}

.dr-chev-lite-left::before {
    content: "\e03f";
}

.dr-arrow-up-top::before {
    content: "\e040";
}

.dr-arrow-up-bot::before {
    content: "\e041";
}

.dr-chev-lite-double-up::before {
    content: "\e042";
}

.dr-chev-lite-double-right::before {
    content: "\e043";
}

.dr-chev-lite-double-down::before {
    content: "\e044";
}

.dr-chev-lite-double-left::before {
    content: "\e045";
}

.dr-link::before {
    content: "\e046";
}

.dr-external-link::before {
    content: "\e047";
}

.dr-stream-tv::before {
    content: "\e048";
}

.dr-play::before {
    content: "\e049";
}

.dr-pause::before {
    content: "\e04a";
}

.dr-quote-left::before {
    content: "\e04b";
}

.dr-quote-right::before {
    content: "\e04c";
}

.dr-elipsis::before {
    content: "\e04d";
}

.dr-comment::before {
    content: "\e04e";
}

.dr-comments::before {
    content: "\e04f";
}

.dr-comment-dot::before {
    content: "\e050";
}

.dr-plectrum::before {
    content: "\e051";
}

.dr-plectrum-star::before {
    content: "\e052";
}

.dr-plectrum-skull::before {
    content: "\e053";
}

.dr-plectrum-spider::before {
    content: "\e054";
}

.dr-plectrum-top-hat::before {
    content: "\e055";
}

.dr-plectrum-heart::before {
    content: "\e056";
}

.dr-spider::before {
    content: "\e057";
}

.dr-spiderweb::before {
    content: "\e058";
}

.dr-acoustic-guitar::before {
    content: "\e059";
}

.dr-electric-guitar::before {
    content: "\e05a";
}

.dr-top-hat::before {
    content: "\e05b";
}

.dr-trash::before {
    content: "\e05c";
}

.dr-bars::before {
    content: "\e05d";
}

.dr-user::before {
    content: "\e05e";
}

.dr-user-id::before {
    content: "\e05f";
}

.dr-user-data::before {
    content: "\e060";
}

.dr-headphones::before {
    content: "\e061";
}

.dr-ghetto-blaster::before {
    content: "\e062";
}

.dr-speaker::before {
    content: "\e063";
}

.dr-compact-disk::before {
    content: "\e064";
}

.dr-vinyl-record::before {
    content: "\e065";
}

.dr-cassete::before {
    content: "\e066";
}

.dr-microphone::before {
    content: "\e067";
}

.dr-mic-alt::before {
    content: "\e068";
}

.dr-music-note::before {
    content: "\e069";
}

.dr-alien::before {
    content: "\e06a";
}

.dr-robot::before {
    content: "\e06b";
}

.dr-ufo::before {
    content: "\e06c";
}

.dr-ghost::before {
    content: "\e06d";
}

.dr-pumpkin::before {
    content: "\e06e";
}

.dr-bat::before {
    content: "\e06f";
}

.dr-lightbulb::before {
    content: "\e070";
}

.dr-accessibility::before {
    content: "\e071";
}

.dr-copyright::before {
    content: "\e072";
}

.dr-envelope::before {
    content: "\e073";
}

.dr-copy::before {
    content: "\e074";
}

.dr-atom::before {
    content: "\e075";
}

.dr-warning-triangle::before {
    content: "\e076";
}

.dr-edit::before {
    content: "\e077";
}

.dr-printer::before {
    content: "\e078";
}

.dr-pencil::before {
    content: "\e079";
}

.dr-paintbrush::before {
    content: "\e07a";
}

.dr-ballpoint-pen::before {
    content: "\e07b";
}

.dr-fountain-pen::before {
    content: "\e07c";
}

.dr-marker-pen::before {
    content: "\e07d";
}

.dr-question-mark::before {
    content: "\e07e";
}

.dr-question-circle::before {
    content: "\e07f";
}

.dr-question-square::before {
    content: "\e080";
}

.dr-reload::before {
    content: "\e081";
}

.dr-spinner-dots::before {
    content: "\e082";
}

.dr-note::before {
    content: "\e083";
}

.dr-notes::before {
    content: "\e084";
}

.dr-matrix-chat::before {
    content: "\e085";
}

.dr-matrix-chat-m::before {
    content: "\e086";
}

.dr-activitypub::before {
    content: "\e087";
}

.dr-fediverse::before {
    content: "\e088";
}

.dr-pleroma::before {
    content: "\e089";
}

.dr-mastodon::before {
    content: "\e08a";
}

.dr-peertube::before {
    content: "\e08b";
}

.dr-pixelfed::before {
    content: "\e08c";
}

.dr-loops-video::before {
    content: "\e08d";
}

.dr-gnusocial::before {
    content: "\e08e";
}

.dr-hubzilla::before {
    content: "\e08f";
}

.dr-funkwhale::before {
    content: "\e090";
}

.dr-lemmy::before {
    content: "\e091";
}

.dr-misskey::before {
    content: "\e092";
}

.dr-socialhome::before {
    content: "\e093";
}

.dr-mobilizon::before {
    content: "\e094";
}

.dr-friendica::before {
    content: "\e095";
}

.dr-mirlo::before {
    content: "\e096";
}

.dr-faircamp::before {
    content: "\e097";
}

.dr-nextcloud::before {
    content: "\e098";
}

.dr-forgejo::before {
    content: "\e099";
}

.dr-git::before {
    content: "\e09a";
}

.dr-creative-commons::before {
    content: "\e09b";
}








.dr-rocketchat::before {
    content: "\F1B7";
}



.dr-t-shirt::before {
    content: "\e085";
}

.dr-trousers::before {
    content: "\e086";
}


/* .dr-inward-strange-i::before {
  content: "\E01A"; }
.dr-inward-strange-e::before {
  content: "\E01E"; }
.dr-inward-strange-i-circle::before {
  content: "\E049"; }
.dr-inward-strange-e-circle::before {
  content: "\E052"; } */
/*.dr-plectrum-strange-i::before {
  content: "\F0D2"; }
.dr-plectrum-dead-robot::before {
  content: "\F0D3"; } */


/*.dr-github::before {
  content: "\F189"; }
.dr-bitcoin::before {
  content: "\20BF"; }
.dr-apple-icon::before {
  content: "\F18B"; }
.dr-spotify-lines::before {
  content: "\F18C"; }
.dr-amazon-music::before {
  content: "\F18D"; }
.dr-bandcamp-icon::before {
  content: "\F194"; }
.dr-deezer-icon::before {
  content: "\F198"; }
.dr-apple-music-icon::before {
  content: "\F19A"; }
.dr-paypal-icon::before {
  content: "\0212"; }
.dr-visa-card::before {
  content: "\F19E"; }
.dr-mastercard-card::before {
  content: "\F1A0"; }
.dr-discover-card::before {
  content: "\F1A1"; }
.dr-amex-card::before {
  content: "\F1A2"; }
.dr-paypal-card::before {
  content: "\F1A3"; }
.dr-stripe-card::before {
  content: "\F1A4"; }
.dr-mollie-card::before {
  content: "\F1A5"; }
.dr-jcb-card::before {
  content: "\F1A6"; }
.dr-diners-club-card::before {
  content: "\F1A7"; }
.dr-apple-pay-card::before {
  content: "\F1A8"; }
.dr-amazon-pay-card::before {
  content: "\F1A9"; }
.dr-g-pay-card::before {
  content: "\F1AA"; }
.dr-stripe::before {
  content: "\F1B4"; }
.dr-discord::before {
  content: "\F1B5"; } */


.dr-diaspora::before {
    content: "\F1D0";
}

.dr-::before {
    content: "\0103";
}







/* ----------------------------------------------------------------
-------------------------------------------------------------------

            **** Print Claases ****

-------------------------------------------------------------------
-----------------------------------------------------------------*/

@media print {
    .d-print-inline {
        display: inline !important;
    }

    .d-print-inline-block {
        display: inline-block !important;
    }

    .d-print-block {
        display: block !important;
    }

    .d-print-grid {
        display: grid !important;
    }

    .d-print-inline-grid {
        display: inline-grid !important;
    }

    .d-print-table {
        display: table !important;
    }

    .d-print-table-row {
        display: table-row !important;
    }

    .d-print-table-cell {
        display: table-cell !important;
    }

    .d-print-flex {
        display: flex !important;
    }

    .d-print-inline-flex {
        display: inline-flex !important;
    }

    .d-print-none {
        display: none !important;
    }
}
