@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&display=swap');

body, p, h1, h2, h3, h4, h5, h6, a, div, li, button, input, textarea, label, blockquote, th, td,
span:not([class*="fa"]) {
    font-family: 'DM Sans', sans-serif !important;
}

.skip-to-content {
    visibility: hidden !important;
}

.hidden {
    display: none !important;
}

#WebFormPanel {
    display: none;
}

.form-control::placeholder {
    color: #e9ecef;
}

.form-control:disabled {
    background-color: #e9ecef !important;
    color: #6c757d;
    cursor: not-allowed;
    border: 1px solid #ced4da;
}

.single-column-choices {
    width: calc(100%);
}

div[data-depend] {
    display: none;
}

@media (min-width: 768px) {
    .single-column-choices {
        width: calc(50% + 12px);
    }
}

/* Animation keyframes for box-shadow */
@keyframes glow {
    0% {
        box-shadow: 0 0 10px 2px rgba(52, 152, 219, 0.5);
    }

    50% {
        box-shadow: 0 0 20px 4px rgba(52, 152, 219, 0.8);
    }

    100% {
        box-shadow: 0 0 10px 2px rgba(52, 152, 219, 0.5);
    }
}

/** Colours **/
:root {
    --color-general--bs-body-color: #212529;
    --color-general--bs-body-bg: #ffffff;
    --color-general--bs-border-color: #dee2e6;
    --color-general--bs-link-color: #007C91;
    --color-general--bs-link-hover-color: #00414c;
    --color-general--bs-code-color: #d63384;
    --color-general--bs-highlight-color: #212529;
    --color-general--bs-highlight-bg: #fff3cd;
    --color-general--bs-form-valid-color: #414b22;
    --color-general--bs-form-valid-border-color: #86a42a;
    --color-general--bs-form-invalid-color: #d53616;
    --color-general--bs-form-invalid-border-color: #d53616;

    --color-fixed--bs-blue: #0d6efd;
    --color-fixed--bs-indigo: #6610f2;
    --color-fixed--bs-purple: #6f42c1;
    --color-fixed--bs-pink: #d63384;
    --color-fixed--bs-red: #dc3545;
    --color-fixed--bs-orange: #fd7e14;
    --color-fixed--bs-yellow: #ffc107;
    --color-fixed--bs-green: #198754;
    --color-fixed--bs-teal: #20c997;
    --color-fixed--bs-cyan: #0dcaf0;
    --color-fixed--bs-black: #000000;
    --color-fixed--bs-white: #ffffff;

    --color-primary--bs-primary: #007c91;
    --color-primary--bs-primary-text-emphasis: #00414c;
    --color-primary--bs-primary-bg-subtle: #e6f6f8;
    --color-primary--bs-primary-border-subtle: #6ccdde;

    --color-secondary--bs-secondary: #6c757d;
    --color-secondary--bs-secondary-bg: #e9ecef;
    --color-secondary--bs-secondary-text-emphasis: #2b2f32;
    --color-secondary--bs-secondary-bg-subtle: #e2e3e5;
    --color-secondary--bs-secondary-border-subtle: #919598;

    --color-tertiary--bs-tertiary: #f8f9fa;
    --color-tertiary--bs-tertiary-color: #212529;

    --color-success--bs-success: #86a42a;
    --color-success--bs-success-text-emphasis: #414b22;
    --color-success--bs-success-bg-subtle: #dbe6ba;
    --color-success--bs-success-border-subtle: #c8dc8b;

    --color-danger--bs-danger: #d53616;
    --color-danger--bs-danger-text-emphasis: #58151c;
    --color-danger--bs-danger-bg-subtle: #f8d7da;
    --color-danger--bs-danger-border-subtle: #f1aeb5;

    --color-warning--bs-warning: #ebba00;
    --color-warning--bs-warning-text-emphasis: #664d03;
    --color-warning--bs-warning-bg-subtle: #fff3cd;
    --color-warning--bs-warning-border-subtle: #ffe69c;

    --color-info--bs-info: #0dcaf0;
    --color-info--bs-info-text-emphasis: #055160;
    --color-info--bs-info-bg-subtle: #cff4fc;
    --color-info--bs-info-border-subtle: #9eeaf9;

    --color-light--bs-light: #f8f9fa;
    --color-light--bs-light-text-emphasis: #495057;
    --color-light--bs-light-bg-subtle: #fcfcfd;
    --color-light--bs-light-border-subtle: #e9ecef;

    --color-dark--bs-dark: #212529;
    --color-dark--bs-dark-text-emphasis: #495057;
    --color-dark--bs-dark-bg-subtle: #ced4da;
    --color-dark--bs-dark-border-subtle: #adb5bd;

    --color-gray--bs-gray: #6c757d;
    --color-gray--bs-gray-dark: #343a40;
    --color-gray--bs-gray-100: #f8f9fa;
    --color-gray--bs-gray-200: #e9ecef;
    --color-gray--bs-gray-300: #dee2e6;
    --color-gray--bs-gray-400: #ced4da;
    --color-gray--bs-gray-500: #adb5bd;
    --color-gray--bs-gray-600: #6c757d;
    --color-gray--bs-gray-700: #495057;
    --color-gray--bs-gray-800: #343a40;
    --color-gray--bs-gray-100: #212529;

    --shadow--small: 0px 1px 2px 0px rgba(0, 0, 0, 0.15);
    --shadow--regular: 0px 4px 8px 0px rgba(0, 0, 0, 0.15);
    --shadow--large: 0px 8px 24px 0px rgba(0, 0, 0, 0.15);
}

.dark-theme {
    --color-general--bs-body-color: #dee2e6;
    --color-general--bs-body-bg: #212529;
    --color-general--bs-border-color: #495057;
    --color-general--bs-link-color: #219AAE;
    --color-general--bs-link-hover-color: #7ce3f4;
    --color-general--bs-code-color: #e685b5;
    --color-general--bs-highlight-color: #dee2e6;
    --color-general--bs-highlight-bg: #664d03;
    --color-general--bs-form-valid-color: #cde581;
    --color-general--bs-form-valid-border-color: #cde581;
    --color-general--bs-form-invalid-color: #ea868f;
    --color-general--bs-form-invalid-border-color: #ea868f;

    --color-fixed--bs-blue: #6ea8fe;
    --color-fixed--bs-indigo: #9461fb;
    --color-fixed--bs-purple: #c29ffa;
    --color-fixed--bs-pink: #ea868f;
    --color-fixed--bs-red: #feb272;
    --color-fixed--bs-orange: #feb272;
    --color-fixed--bs-yellow: #ffe69c;
    --color-fixed--bs-green: #79dfc1;
    --color-fixed--bs-teal: #79dfc1;
    --color-fixed--bs-cyan: #0dcaf0;
    --color-fixed--bs-black: #000000;
    --color-fixed--bs-white: #ffffff;

    --color-primary--bs-primary: #007c91;
    --color-primary--bs-primary-text-emphasis: #53cfe4;
    --color-primary--bs-primary-bg-subtle: #01363e;
    --color-primary--bs-primary-border-subtle: #008399;

    --color-secondary--bs-secondary: #a8b0b7;
    --color-secondary--bs-secondary-bg: #343a40;
    --color-secondary--bs-secondary-text-emphasis: #a7acb1;
    --color-secondary--bs-secondary-bg-subtle: #161719;
    --color-secondary--bs-secondary-border-subtle: #97A0AA;

    --color-tertiary--bs-tertiary: #2b3035;
    --color-tertiary--bs-tertiary-color: #dee2e6;

    --color-success--bs-success: #86a42a;
    --color-success--bs-success-text-emphasis: #cde581;
    --color-success--bs-success-bg-subtle: #243000;
    --color-success--bs-success-border-subtle: #475e01;

    --color-danger--bs-danger: #d53616;
    --color-danger--bs-danger-text-emphasis: #ea868f;
    --color-danger--bs-danger-bg-subtle: #2c0b0e;
    --color-danger--bs-danger-border-subtle: #842029;

    --color-warning--bs-warning: #ebba00;
    --color-warning--bs-warning-text-emphasis: #ffda6a;
    --color-warning--bs-warning-bg-subtle: #332701;
    --color-warning--bs-warning-border-subtle: #997404;

    --color-info--bs-warning: #0dcaf0;
    --color-info--bs-info-text-emphasis: #6edff6;
    --color-info--bs-info-bg-subtle: #032830;
    --color-info--bs-info-border-subtle: #087990;

    --color-light--bs-warning: #f8f9fa;
    --color-light--bs-light-text-emphasis: #f8f9fa;
    --color-light--bs-light-bg-subtle: #343a40;
    --color-light--bs-light-border-subtle: #495057;

    --color-dark--bs-dark: #ffffff;
    --color-dark--bs-dark-text-emphasis: #dee2e6;
    --color-dark--bs-dark-bg-subtle: #1a1d20;
    --color-dark--bs-dark-border-subtle: #343a40;

    --color-gray--bs-gray: #6c757d;
    --color-gray--bs-gray-dark: #343a40;
    --color-gray--bs-gray-100: #212529;
    --color-gray--bs-gray-200: #343a40;
    --color-gray--bs-gray-300: #6c757d;
    --color-gray--bs-gray-400: #adb5bd;
    --color-gray--bs-gray-500: #ced4da;
    --color-gray--bs-gray-600: #ffffff;
    --color-gray--bs-gray-700: #dee2e6;
    --color-gray--bs-gray-800: #e9ecef;
    --color-gray--bs-gray-100: #f8f9fa;
}

p {
    color: var(--color-general--bs-body-color) !important;
    font-size: 16px !important;
}

strong {
    font-weight: bold !important;
}

a {
    font-size: 16px !important;
    color: var(--color-general--bs-link-color) !important;
    text-decoration: none;
    font-weight: 500 !important;
}

a:hover {
    font-size: 16px !important;
    color: var(--color-general--bs-link-hover-color) !important;
    text-decoration: underline;
}
/** End Colours **/

/** Typography **/
.typo-display--1 {
    font-size: 80px !important;
    font-weight: 300;
}

.typo-display--2 {
    font-size: 72px !important;
    font-weight: 300;
}

.typo-display--3 {
    font-size: 64px !important;
    font-weight: 300;
}

.typo-display--4 {
    font-size: 56px !important;
    font-weight: 300;
}

.typo-display--5 {
    font-size: 48px !important;
    font-weight: 300;
}

.typo-display--6 {
    font-size: 40px !important;
    font-weight: 300;
}

h1,h2,h3 {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

.typo-heading--1 {
    font-weight: 600;
    font-size: 40px !important;
}

.typo-heading--2 {
    font-weight: 600;
    font-size: 32px !important;
}

.typo-heading--3 {
    font-weight: 600;
    font-size: 26px !important;
}

.typo-heading--4 {
    font-weight: 600;
    font-size: 22px !important;
}

.typo-heading--5 {
    font-weight: 600;
    font-size: 18px !important;
}

.typo-heading--6 {
    font-weight: 600;
    font-size: 16px !important;
}

.typo-lead {
    font-weight: 400;
    font-size: 24px !important;
    line-height: 36px;
    color: #6c757d !important;
}

.typo-body-large-reg {
    font-size: 20px !important;
    font-weight: 300;
    line-height: 32px;
}

.typo-body-large-med {
    font-size: 20px !important;
    font-weight: 500;
    line-height: 32px;
}

.typo-body-large-bold {
    font-size: 20px !important;
    font-weight: 700;
    line-height: 32px;
}

.typo-body-default-reg {
    font-size: 16px !important;
    font-weight: 300;
    line-height: 26px;
}

.typo-body-default-med {
    font-size: 16px !important;
    font-weight: 500;
    line-height: 26px;
}

.typo-body-default-bold {
    font-size: 16px !important;
    font-weight: 700;
    line-height: 26px;
}

.typo-body-small-reg {
    font-size: 14px !important;
    font-weight: 300;
    line-height: 20px;
}

.typo-body-small-med {
    font-size: 14px !important;
    font-weight: 500;
    line-height: 20px;
}

.typo-body-small-bold {
    font-size: 14px !important;
    font-weight: 700;
    line-height: 20px;
}

.typo-link-large {
    font-size: 20px !important;
    font-weight: 600;
    text-decoration: underline;
    color: #007c91;
    line-height: 32px;
}

.typo-link-default {
    font-size: 16px !important;
    font-weight: 600;
    text-decoration: underline;
    color: #007c91;
    line-height: 26px;
}

.typo-link-small {
    font-size: 14px !important;
    font-weight: 600;
    text-decoration: underline;
    color: #007c91;
    line-height: 20px;
}
/** End Typography **/

/** Spacing classes **/
/* Margin top */
.margin-top-0 { margin-top: 0px !important; }
.margin-top-4 { margin-top: 4px !important; }
.margin-top-8 { margin-top: 8px !important; }
.margin-top-16 { margin-top: 16px !important; }
.margin-top-24 { margin-top: 24px !important; }
.margin-top-32 { margin-top: 32px !important; }
.margin-top-40 { margin-top: 40px !important; }
.margin-top-48 { margin-top: 48px !important; }

/* Margin bottom */
.margin-bottom-0 { margin-bottom: 0px !important; }
.margin-bottom-4 { margin-bottom: 4px !important; }
.margin-bottom-8 { margin-bottom: 8px !important; }
.margin-bottom-16 { margin-bottom: 16px !important; }
.margin-bottom-24 { margin-bottom: 24px !important; }
.margin-bottom-32 { margin-bottom: 32px !important; }
.margin-bottom-40 { margin-bottom: 40px !important; }
.margin-bottom-48 { margin-bottom: 48px !important; }

/* Margin left */
.margin-left-0 { margin-left: 0px !important; }
.margin-left-4 { margin-left: 4px !important; }
.margin-left-8 { margin-left: 8px !important; }
.margin-left-16 { margin-left: 16px !important; }
.margin-left-24 { margin-left: 24px !important; }
.margin-left-32 { margin-left: 32px !important; }
.margin-left-40 { margin-left: 40px !important; }
.margin-left-48 { margin-left: 48px !important; }

/* Margin right */
.margin-right-0 { margin-right: 0px !important; }
.margin-right-4 { margin-right: 4px !important; }
.margin-right-8 { margin-right: 8px !important; }
.margin-right-16 { margin-right: 16px !important; }
.margin-right-24 { margin-right: 24px !important; }
.margin-right-32 { margin-right: 32px !important; }
.margin-right-40 { margin-right: 40px !important; }
.margin-right-48 { margin-right: 48px !important; }

/* Margin Y (top + bottom) */
.margin-y-0 { margin-top: 0px !important; margin-bottom: 0px !important; }
.margin-y-4 { margin-top: 4px !important; margin-bottom: 4px !important; }
.margin-y-8 { margin-top: 8px !important; margin-bottom: 8px !important; }
.margin-y-16 { margin-top: 16px !important; margin-bottom: 16px !important; }
.margin-y-24 { margin-top: 24px !important; margin-bottom: 24px !important; }
.margin-y-32 { margin-top: 32px !important; margin-bottom: 32px !important; }
.margin-y-40 { margin-top: 40px !important; margin-bottom: 40px !important; }
.margin-y-48 { margin-top: 48px !important; margin-bottom: 48px !important; }

/* Margin X (left + right) */
.margin-x-0 { margin-left: 0px !important; margin-right: 0px !important; }
.margin-x-4 { margin-left: 4px !important; margin-right: 4px !important; }
.margin-x-8 { margin-left: 8px !important; margin-right: 8px !important; }
.margin-x-16 { margin-left: 16px !important; margin-right: 16px !important; }
.margin-x-24 { margin-left: 24px !important; margin-right: 24px !important; }
.margin-x-32 { margin-left: 32px !important; margin-right: 32px !important; }
.margin-x-40 { margin-left: 40px !important; margin-right: 40px !important; }
.margin-x-48 { margin-left: 48px !important; margin-right: 48px !important; }


/* Padding top */
.padding-top-0 { padding-top: 0px !important; }
.padding-top-4 { padding-top: 4px !important; }
.padding-top-8 { padding-top: 8px !important; }
.padding-top-16 { padding-top: 16px !important; }
.padding-top-24 { padding-top: 24px !important; }
.padding-top-32 { padding-top: 32px !important; }
.padding-top-40 { padding-top: 40px !important; }
.padding-top-48 { padding-top: 48px !important; }

/* Padding bottom */
.padding-bottom-0 { padding-bottom: 0px !important; }
.padding-bottom-4 { padding-bottom: 4px !important; }
.padding-bottom-8 { padding-bottom: 8px !important; }
.padding-bottom-16 { padding-bottom: 16px !important; }
.padding-bottom-24 { padding-bottom: 24px !important; }
.padding-bottom-32 { padding-bottom: 32px !important; }
.padding-bottom-40 { padding-bottom: 40px !important; }
.padding-bottom-48 { padding-bottom: 48px !important; }

/* Padding left */
.padding-left-0 { padding-left: 0px !important; }
.padding-left-4 { padding-left: 4px !important; }
.padding-left-8 { padding-left: 8px !important; }
.padding-left-16 { padding-left: 16px !important; }
.padding-left-24 { padding-left: 24px !important; }
.padding-left-32 { padding-left: 32px !important; }
.padding-left-40 { padding-left: 40px !important; }
.padding-left-48 { padding-left: 48px !important; }

/* Padding right */
.padding-right-0 { padding-right: 0px !important; }
.padding-right-4 { padding-right: 4px !important; }
.padding-right-8 { padding-right: 8px !important; }
.padding-right-16 { padding-right: 16px !important; }
.padding-right-24 { padding-right: 24px !important; }
.padding-right-32 { padding-right: 32px !important; }
.padding-right-40 { padding-right: 40px !important; }
.padding-right-48 { padding-right: 48px !important; }

/* Padding Y (top + bottom) */
.padding-y-0 { padding-top: 0px !important; padding-bottom: 0px !important; }
.padding-y-4 { padding-top: 4px !important; padding-bottom: 4px !important; }
.padding-y-8 { padding-top: 8px !important; padding-bottom: 8px !important; }
.padding-y-16 { padding-top: 16px !important; padding-bottom: 16px !important; }
.padding-y-24 { padding-top: 24px !important; padding-bottom: 24px !important; }
.padding-y-32 { padding-top: 32px !important; padding-bottom: 32px !important; }
.padding-y-40 { padding-top: 40px !important; padding-bottom: 40px !important; }
.padding-y-48 { padding-top: 48px !important; padding-bottom: 48px !important; }

/* Padding X (left + right) */
.padding-x-0 { padding-left: 0px !important; padding-right: 0px !important; }
.padding-x-4 { padding-left: 4px !important; padding-right: 4px !important; }
.padding-x-8 { padding-left: 8px !important; padding-right: 8px !important; }
.padding-x-16 { padding-left: 16px !important; padding-right: 16px !important; }
.padding-x-24 { padding-left: 24px !important; padding-right: 24px !important; }
.padding-x-32 { padding-left: 32px !important; padding-right: 32px !important; }
.padding-x-40 { padding-left: 40px !important; padding-right: 40px !important; }
.padding-x-48 { padding-left: 48px !important; padding-right: 48px !important; }

.w-1208 {
    width: 1208px !important;
}